@etherisc/gif-next 0.0.2-299fe4a-464 → 0.0.2-2b7ffff-531
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +192 -7
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +1 -1
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +176 -23
- package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +4 -0
- package/artifacts/contracts/components/Distribution.sol/Distribution.json +618 -0
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +129 -23
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +152 -0
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +74 -181
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +55 -177
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/components/Pool.sol/Pool.json +455 -60
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/components/Product.sol/Product.json +540 -70
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +4 -0
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +66 -0
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +4 -0
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +24 -0
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +4 -0
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +42 -0
- package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +1 -1
- package/artifacts/contracts/experiment/errors/Require.sol/Require.json +2 -2
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +1 -1
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +2 -2
- package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/A.sol/A.json +2 -2
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +2 -2
- package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +2 -2
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +2 -2
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +2 -2
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +1 -1
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +2 -2
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +1 -1
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +2 -2
- package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.dbg.json +4 -0
- package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.json +101 -0
- package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.dbg.json +4 -0
- package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.json +1132 -0
- package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.dbg.json +4 -0
- package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.json +1082 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +479 -1748
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +480 -0
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +2418 -1167
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +917 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1388 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +891 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +492 -0
- package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +540 -0
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +4 -0
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +113 -0
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +429 -0
- package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/{module/lifecycle/ILifecycle.sol/ILifecycleModule.json → base/ILifecycle.sol/ILifecycle.json} +10 -77
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +502 -0
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +169 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +211 -0
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.json +10 -0
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{access/IAccess.sol/IAccess.json → IRisk.sol/IRisk.json} +2 -2
- package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{pool/IPoolModule.sol/IPool.json → ISetup.sol/ISetup.json} +2 -2
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{treasury/ITreasury.sol → ITreasury.sol}/ITreasury.json +1 -1
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +393 -85
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +716 -0
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +448 -0
- package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.json +182 -80
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/{ComponentServiceBase.sol/ComponentServiceBase.json → IDistributionService.sol/IDistributionService.json} +209 -63
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +240 -55
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +330 -56
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +430 -74
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +460 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +186 -12
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +485 -37
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +853 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +34 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +597 -122
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1237 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +525 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +410 -0
- package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +107 -0
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +127 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +117 -37
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
- package/artifacts/contracts/{instance/service → shared}/IService.sol/IService.json +180 -59
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +60 -19
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +158 -0
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +349 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +190 -37
- package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.dbg.json +4 -0
- package/artifacts/contracts/{instance/InstanceBase.sol/InstanceBase.json → shared/RegisterableUpgradable.sol/RegisterableUpgradable.json} +209 -80
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
- package/artifacts/contracts/{instance/service/ServiceBase.sol/ServiceBase.json → shared/Service.sol/Service.json} +227 -59
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +96 -0
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +83 -19
- package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
- package/artifacts/contracts/test/TestFee.sol/TestFee.json +30 -6
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +204 -36
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +44 -10
- package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
- package/artifacts/contracts/test/TestService.sol/TestService.json +277 -84
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +91 -53
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +14 -18
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +106 -50
- package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +4 -0
- package/artifacts/contracts/test/Usdc.sol/USDC.json +376 -0
- package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +2 -2
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +104 -0
- package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +4 -0
- package/artifacts/contracts/types/Fee.sol/FeeLib.json +257 -0
- package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +4 -0
- package/artifacts/contracts/types/Key32.sol/Key32Lib.json +125 -0
- package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/NftId.sol/NftIdLib.json +65 -4
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +4 -0
- package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +100 -0
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
- package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +4 -0
- package/artifacts/contracts/types/Referral.sol/ReferralLib.json +123 -0
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +4 -0
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +86 -0
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +4 -0
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +156 -0
- package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +15 -2
- package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +4 -0
- package/artifacts/contracts/types/UFixed.sol/MathLib.json +10 -0
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +4 -0
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +479 -0
- package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/types/Version.sol/VersionLib.json +101 -2
- package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/types/Version.sol/VersionPartLib.json +22 -3
- package/contracts/components/BaseComponent.sol +26 -24
- package/contracts/components/Distribution.sol +160 -0
- package/contracts/components/IBaseComponent.sol +9 -3
- package/contracts/components/IDistributionComponent.sol +44 -0
- package/contracts/components/IPoolComponent.sol +14 -9
- package/contracts/components/IProductComponent.sol +25 -9
- package/contracts/components/Pool.sol +98 -29
- package/contracts/components/Product.sol +212 -32
- package/contracts/experiment/cloning/Cloner.sol +47 -0
- package/contracts/instance/AccessManagedSimple.sol +115 -0
- package/contracts/instance/AccessManagerSimple.sol +692 -0
- package/contracts/instance/IAccessManagerSimple.sol +391 -0
- package/contracts/instance/IInstance.sol +29 -40
- package/contracts/instance/IInstanceService.sol +30 -0
- package/contracts/instance/Instance.sol +426 -45
- package/contracts/instance/InstanceAccessManager.sol +288 -0
- package/contracts/instance/InstanceReader.sol +306 -0
- package/contracts/instance/InstanceService.sol +182 -0
- package/contracts/instance/InstanceServiceManager.sol +56 -0
- package/contracts/instance/base/ComponentServiceBase.sol +124 -0
- package/contracts/instance/base/IInstanceBase.sol +23 -0
- package/contracts/instance/base/IKeyValueStore.sol +49 -0
- package/contracts/instance/base/ILifecycle.sol +30 -0
- package/contracts/instance/base/KeyValueStore.sol +172 -0
- package/contracts/instance/{module/lifecycle/LifecycleModule.sol → base/Lifecycle.sol} +51 -40
- package/contracts/instance/module/IAccess.sol +38 -0
- package/contracts/instance/module/IBundle.sol +20 -0
- package/contracts/instance/module/IDistribution.sol +39 -0
- package/contracts/instance/module/IPolicy.sol +45 -0
- package/contracts/instance/module/IRisk.sol +11 -0
- package/contracts/instance/module/ISetup.sol +44 -0
- package/contracts/instance/module/ITreasury.sol +23 -0
- package/contracts/instance/service/ComponentOwnerService.sol +246 -103
- package/contracts/instance/service/DistributionService.sol +87 -0
- package/contracts/instance/service/DistributionServiceManager.sol +53 -0
- package/contracts/instance/service/IComponentOwnerService.sol +1 -3
- package/contracts/instance/service/IDistributionService.sol +12 -0
- package/contracts/instance/service/IPoolService.sol +8 -1
- package/contracts/instance/service/IProductService.sol +56 -7
- package/contracts/instance/service/PoolService.sol +138 -43
- package/contracts/instance/service/PoolServiceManager.sol +53 -0
- package/contracts/registry/ChainNft.sol +80 -37
- package/contracts/registry/IRegistry.sol +62 -25
- package/contracts/registry/IRegistryService.sol +33 -0
- package/contracts/registry/ITransferInterceptor.sol +6 -0
- package/contracts/registry/Registry.sol +375 -267
- package/contracts/registry/RegistryService.sol +399 -0
- package/contracts/registry/RegistryServiceManager.sol +80 -0
- package/contracts/registry/TokenRegistry.sol +111 -0
- package/contracts/shared/ContractDeployerLib.sol +72 -0
- package/contracts/shared/ERC165.sol +6 -2
- package/contracts/shared/INftOwnable.sol +22 -0
- package/contracts/shared/IRegisterable.sol +8 -15
- package/contracts/{instance/service → shared}/IService.sol +3 -3
- package/contracts/shared/IVersionable.sol +56 -12
- package/contracts/shared/NftOwnable.sol +136 -0
- package/contracts/shared/ProxyManager.sol +94 -0
- package/contracts/shared/Registerable.sol +63 -59
- package/contracts/shared/RegisterableUpgradable.sol +16 -0
- package/contracts/shared/Service.sol +55 -0
- package/contracts/shared/TokenHandler.sol +27 -0
- package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
- package/contracts/shared/Versionable.sol +112 -57
- package/contracts/test/TestFee.sol +4 -4
- package/contracts/test/TestRegisterable.sol +5 -6
- package/contracts/test/TestRoleId.sol +2 -2
- package/contracts/test/TestService.sol +6 -17
- package/contracts/test/TestVersion.sol +4 -7
- package/contracts/test/TestVersionable.sol +2 -5
- package/contracts/test/Usdc.sol +26 -0
- package/contracts/types/DistributorType.sol +55 -0
- package/contracts/types/Fee.sol +44 -20
- package/contracts/types/Key32.sol +50 -0
- package/contracts/types/NftId.sol +16 -1
- package/contracts/types/NumberId.sol +52 -0
- package/contracts/types/ObjectType.sol +51 -14
- package/contracts/types/Referral.sol +85 -0
- package/contracts/types/RiskId.sol +43 -0
- package/contracts/types/RoleId.sol +64 -11
- package/contracts/types/StateId.sol +12 -2
- package/contracts/types/Timestamp.sol +7 -3
- package/contracts/types/UFixed.sol +144 -25
- package/contracts/types/Version.sol +42 -26
- package/package.json +7 -3
- package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
- package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
- package/artifacts/contracts/instance/IServiceLinked.sol/IServiceLinked.dbg.json +0 -4
- package/artifacts/contracts/instance/IServiceLinked.sol/IServiceLinked.json +0 -50
- package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
- package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -276
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -276
- package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -188
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.json +0 -188
- package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycle.json +0 -134
- package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/lifecycle/LifecycleModule.sol/LifecycleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/lifecycle/LifecycleModule.sol/LifecycleModule.json +0 -221
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -261
- package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -261
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -149
- package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -149
- package/artifacts/contracts/instance/module/product/IProductModule.sol/IProductModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/product/IProductModule.sol/IProductModule.json +0 -10
- package/artifacts/contracts/instance/module/product/ProductModule.sol/ProductModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/product/ProductModule.sol/ProductModule.json +0 -10
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -538
- package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
- package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -538
- package/artifacts/contracts/instance/service/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/service/IService.sol/IService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -685
- package/artifacts/contracts/instance/service/ServiceBase.sol/ServiceBase.dbg.json +0 -4
- package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
- package/artifacts/contracts/registry/IChainNft.sol/IChainNft.json +0 -452
- package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
- package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.json +0 -24
- package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
- package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
- package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
- package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -387
- package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
- package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -393
- package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
- package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.json +0 -453
- package/contracts/experiment/statemachine/README.md +0 -112
- package/contracts/instance/IInstanceLinked.sol +0 -8
- package/contracts/instance/IServiceLinked.sol +0 -12
- package/contracts/instance/InstanceBase.sol +0 -74
- package/contracts/instance/module/access/Access.sol +0 -149
- package/contracts/instance/module/access/IAccess.sol +0 -53
- package/contracts/instance/module/bundle/BundleModule.sol +0 -228
- package/contracts/instance/module/bundle/IBundle.sol +0 -53
- package/contracts/instance/module/component/ComponentModule.sol +0 -104
- package/contracts/instance/module/component/IComponent.sol +0 -53
- package/contracts/instance/module/lifecycle/ILifecycle.sol +0 -47
- package/contracts/instance/module/policy/IPolicy.sol +0 -60
- package/contracts/instance/module/policy/PolicyModule.sol +0 -84
- package/contracts/instance/module/pool/IPoolModule.sol +0 -41
- package/contracts/instance/module/pool/PoolModule.sol +0 -87
- package/contracts/instance/module/product/IProductModule.sol +0 -6
- package/contracts/instance/module/product/ProductModule.sol +0 -8
- package/contracts/instance/module/treasury/ITreasury.sol +0 -104
- package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
- package/contracts/instance/module/treasury/TreasuryModule.sol +0 -148
- package/contracts/instance/service/ComponentServiceBase.sol +0 -41
- package/contracts/instance/service/ProductService.sol +0 -358
- package/contracts/instance/service/ServiceBase.sol +0 -39
- package/contracts/registry/IChainNft.sol +0 -21
- package/contracts/registry/IRegistryLinked.sol +0 -8
- package/contracts/shared/IOwnable.sol +0 -6
- package/contracts/test/TestPool.sol +0 -22
- package/contracts/test/TestProduct.sol +0 -44
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
"contractName": "PoolService",
|
|
4
4
|
"sourceName": "contracts/instance/service/PoolService.sol",
|
|
5
5
|
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "ObjectType",
|
|
10
|
+
"name": "componentType",
|
|
11
|
+
"type": "uint8"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"name": "ComponentTypeInvalid",
|
|
15
|
+
"type": "error"
|
|
16
|
+
},
|
|
6
17
|
{
|
|
7
18
|
"inputs": [
|
|
8
19
|
{
|
|
@@ -12,12 +23,116 @@
|
|
|
12
23
|
},
|
|
13
24
|
{
|
|
14
25
|
"internalType": "NftId",
|
|
15
|
-
"name": "
|
|
26
|
+
"name": "nftId",
|
|
16
27
|
"type": "uint96"
|
|
17
28
|
}
|
|
18
29
|
],
|
|
19
|
-
"
|
|
20
|
-
"type": "
|
|
30
|
+
"name": "ErrorAlreadyLinked",
|
|
31
|
+
"type": "error"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"inputs": [
|
|
35
|
+
{
|
|
36
|
+
"internalType": "address",
|
|
37
|
+
"name": "contractAddress",
|
|
38
|
+
"type": "address"
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
"name": "ErrorContractNotRegistered",
|
|
42
|
+
"type": "error"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"inputs": [
|
|
46
|
+
{
|
|
47
|
+
"internalType": "address",
|
|
48
|
+
"name": "account",
|
|
49
|
+
"type": "address"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"name": "ErrorNotOwner",
|
|
53
|
+
"type": "error"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"inputs": [
|
|
57
|
+
{
|
|
58
|
+
"internalType": "address",
|
|
59
|
+
"name": "registryAddress",
|
|
60
|
+
"type": "address"
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"name": "ErrorNotRegistry",
|
|
64
|
+
"type": "error"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"inputs": [
|
|
68
|
+
{
|
|
69
|
+
"internalType": "address",
|
|
70
|
+
"name": "registryAddress",
|
|
71
|
+
"type": "address"
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
"name": "ErrorRegisterableNotRegistry",
|
|
75
|
+
"type": "error"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"inputs": [],
|
|
79
|
+
"name": "ErrorRegistryAddressZero",
|
|
80
|
+
"type": "error"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"inputs": [
|
|
84
|
+
{
|
|
85
|
+
"internalType": "address",
|
|
86
|
+
"name": "registry",
|
|
87
|
+
"type": "address"
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
"name": "ErrorRegistryAlreadyInitialized",
|
|
91
|
+
"type": "error"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"inputs": [],
|
|
95
|
+
"name": "ErrorRegistryNotInitialized",
|
|
96
|
+
"type": "error"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"inputs": [
|
|
100
|
+
{
|
|
101
|
+
"internalType": "RoleId",
|
|
102
|
+
"name": "expected",
|
|
103
|
+
"type": "uint64"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"internalType": "address",
|
|
107
|
+
"name": "caller",
|
|
108
|
+
"type": "address"
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"name": "ExpectedRoleMissing",
|
|
112
|
+
"type": "error"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"inputs": [],
|
|
116
|
+
"name": "InvalidInitialization",
|
|
117
|
+
"type": "error"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"inputs": [],
|
|
121
|
+
"name": "NotInitializing",
|
|
122
|
+
"type": "error"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"anonymous": false,
|
|
126
|
+
"inputs": [
|
|
127
|
+
{
|
|
128
|
+
"indexed": false,
|
|
129
|
+
"internalType": "uint64",
|
|
130
|
+
"name": "version",
|
|
131
|
+
"type": "uint64"
|
|
132
|
+
}
|
|
133
|
+
],
|
|
134
|
+
"name": "Initialized",
|
|
135
|
+
"type": "event"
|
|
21
136
|
},
|
|
22
137
|
{
|
|
23
138
|
"anonymous": false,
|
|
@@ -41,7 +156,7 @@
|
|
|
41
156
|
"type": "address"
|
|
42
157
|
}
|
|
43
158
|
],
|
|
44
|
-
"name": "
|
|
159
|
+
"name": "LogVersionableInitialized",
|
|
45
160
|
"type": "event"
|
|
46
161
|
},
|
|
47
162
|
{
|
|
@@ -58,21 +173,16 @@
|
|
|
58
173
|
"type": "function"
|
|
59
174
|
},
|
|
60
175
|
{
|
|
61
|
-
"inputs": [
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
"name": "implementation",
|
|
65
|
-
"type": "address"
|
|
66
|
-
},
|
|
176
|
+
"inputs": [],
|
|
177
|
+
"name": "REGISTERABLE_LOCATION_V1",
|
|
178
|
+
"outputs": [
|
|
67
179
|
{
|
|
68
|
-
"internalType": "
|
|
69
|
-
"name": "
|
|
70
|
-
"type": "
|
|
180
|
+
"internalType": "bytes32",
|
|
181
|
+
"name": "",
|
|
182
|
+
"type": "bytes32"
|
|
71
183
|
}
|
|
72
184
|
],
|
|
73
|
-
"
|
|
74
|
-
"outputs": [],
|
|
75
|
-
"stateMutability": "nonpayable",
|
|
185
|
+
"stateMutability": "view",
|
|
76
186
|
"type": "function"
|
|
77
187
|
},
|
|
78
188
|
{
|
|
@@ -82,9 +192,26 @@
|
|
|
82
192
|
"name": "owner",
|
|
83
193
|
"type": "address"
|
|
84
194
|
},
|
|
195
|
+
{
|
|
196
|
+
"components": [
|
|
197
|
+
{
|
|
198
|
+
"internalType": "UFixed",
|
|
199
|
+
"name": "fractionalFee",
|
|
200
|
+
"type": "uint256"
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
"internalType": "uint256",
|
|
204
|
+
"name": "fixedFee",
|
|
205
|
+
"type": "uint256"
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"internalType": "struct Fee",
|
|
209
|
+
"name": "fee",
|
|
210
|
+
"type": "tuple"
|
|
211
|
+
},
|
|
85
212
|
{
|
|
86
213
|
"internalType": "uint256",
|
|
87
|
-
"name": "
|
|
214
|
+
"name": "stakingAmount",
|
|
88
215
|
"type": "uint256"
|
|
89
216
|
},
|
|
90
217
|
{
|
|
@@ -111,8 +238,50 @@
|
|
|
111
238
|
},
|
|
112
239
|
{
|
|
113
240
|
"inputs": [],
|
|
114
|
-
"name": "
|
|
241
|
+
"name": "getInitialInfo",
|
|
115
242
|
"outputs": [
|
|
243
|
+
{
|
|
244
|
+
"components": [
|
|
245
|
+
{
|
|
246
|
+
"internalType": "NftId",
|
|
247
|
+
"name": "nftId",
|
|
248
|
+
"type": "uint96"
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"internalType": "NftId",
|
|
252
|
+
"name": "parentNftId",
|
|
253
|
+
"type": "uint96"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"internalType": "ObjectType",
|
|
257
|
+
"name": "objectType",
|
|
258
|
+
"type": "uint8"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"internalType": "bool",
|
|
262
|
+
"name": "isInterceptor",
|
|
263
|
+
"type": "bool"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"internalType": "address",
|
|
267
|
+
"name": "objectAddress",
|
|
268
|
+
"type": "address"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"internalType": "address",
|
|
272
|
+
"name": "initialOwner",
|
|
273
|
+
"type": "address"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"internalType": "bytes",
|
|
277
|
+
"name": "data",
|
|
278
|
+
"type": "bytes"
|
|
279
|
+
}
|
|
280
|
+
],
|
|
281
|
+
"internalType": "struct IRegistry.ObjectInfo",
|
|
282
|
+
"name": "",
|
|
283
|
+
"type": "tuple"
|
|
284
|
+
},
|
|
116
285
|
{
|
|
117
286
|
"internalType": "bytes",
|
|
118
287
|
"name": "data",
|
|
@@ -122,6 +291,32 @@
|
|
|
122
291
|
"stateMutability": "view",
|
|
123
292
|
"type": "function"
|
|
124
293
|
},
|
|
294
|
+
{
|
|
295
|
+
"inputs": [],
|
|
296
|
+
"name": "getInitializedVersion",
|
|
297
|
+
"outputs": [
|
|
298
|
+
{
|
|
299
|
+
"internalType": "uint64",
|
|
300
|
+
"name": "",
|
|
301
|
+
"type": "uint64"
|
|
302
|
+
}
|
|
303
|
+
],
|
|
304
|
+
"stateMutability": "view",
|
|
305
|
+
"type": "function"
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"inputs": [],
|
|
309
|
+
"name": "getInstanceService",
|
|
310
|
+
"outputs": [
|
|
311
|
+
{
|
|
312
|
+
"internalType": "contract InstanceService",
|
|
313
|
+
"name": "",
|
|
314
|
+
"type": "address"
|
|
315
|
+
}
|
|
316
|
+
],
|
|
317
|
+
"stateMutability": "view",
|
|
318
|
+
"type": "function"
|
|
319
|
+
},
|
|
125
320
|
{
|
|
126
321
|
"inputs": [],
|
|
127
322
|
"name": "getMajorVersion",
|
|
@@ -154,7 +349,7 @@
|
|
|
154
349
|
"outputs": [
|
|
155
350
|
{
|
|
156
351
|
"internalType": "NftId",
|
|
157
|
-
"name": "
|
|
352
|
+
"name": "",
|
|
158
353
|
"type": "uint96"
|
|
159
354
|
}
|
|
160
355
|
],
|
|
@@ -167,33 +362,20 @@
|
|
|
167
362
|
"outputs": [
|
|
168
363
|
{
|
|
169
364
|
"internalType": "address",
|
|
170
|
-
"name": "
|
|
365
|
+
"name": "",
|
|
171
366
|
"type": "address"
|
|
172
367
|
}
|
|
173
368
|
],
|
|
174
369
|
"stateMutability": "view",
|
|
175
370
|
"type": "function"
|
|
176
371
|
},
|
|
177
|
-
{
|
|
178
|
-
"inputs": [],
|
|
179
|
-
"name": "getParentNftId",
|
|
180
|
-
"outputs": [
|
|
181
|
-
{
|
|
182
|
-
"internalType": "NftId",
|
|
183
|
-
"name": "nftId",
|
|
184
|
-
"type": "uint96"
|
|
185
|
-
}
|
|
186
|
-
],
|
|
187
|
-
"stateMutability": "view",
|
|
188
|
-
"type": "function"
|
|
189
|
-
},
|
|
190
372
|
{
|
|
191
373
|
"inputs": [],
|
|
192
374
|
"name": "getRegistry",
|
|
193
375
|
"outputs": [
|
|
194
376
|
{
|
|
195
377
|
"internalType": "contract IRegistry",
|
|
196
|
-
"name": "
|
|
378
|
+
"name": "",
|
|
197
379
|
"type": "address"
|
|
198
380
|
}
|
|
199
381
|
],
|
|
@@ -202,15 +384,15 @@
|
|
|
202
384
|
},
|
|
203
385
|
{
|
|
204
386
|
"inputs": [],
|
|
205
|
-
"name": "
|
|
387
|
+
"name": "getRegistryService",
|
|
206
388
|
"outputs": [
|
|
207
389
|
{
|
|
208
|
-
"internalType": "
|
|
390
|
+
"internalType": "contract IRegistryService",
|
|
209
391
|
"name": "",
|
|
210
|
-
"type": "
|
|
392
|
+
"type": "address"
|
|
211
393
|
}
|
|
212
394
|
],
|
|
213
|
-
"stateMutability": "
|
|
395
|
+
"stateMutability": "view",
|
|
214
396
|
"type": "function"
|
|
215
397
|
},
|
|
216
398
|
{
|
|
@@ -285,15 +467,15 @@
|
|
|
285
467
|
"name": "activatedBy",
|
|
286
468
|
"type": "address"
|
|
287
469
|
},
|
|
288
|
-
{
|
|
289
|
-
"internalType": "Blocknumber",
|
|
290
|
-
"name": "activatedIn",
|
|
291
|
-
"type": "uint32"
|
|
292
|
-
},
|
|
293
470
|
{
|
|
294
471
|
"internalType": "Timestamp",
|
|
295
472
|
"name": "activatedAt",
|
|
296
473
|
"type": "uint40"
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
"internalType": "Blocknumber",
|
|
477
|
+
"name": "activatedIn",
|
|
478
|
+
"type": "uint32"
|
|
297
479
|
}
|
|
298
480
|
],
|
|
299
481
|
"internalType": "struct IVersionable.VersionInfo",
|
|
@@ -304,6 +486,29 @@
|
|
|
304
486
|
"stateMutability": "view",
|
|
305
487
|
"type": "function"
|
|
306
488
|
},
|
|
489
|
+
{
|
|
490
|
+
"inputs": [
|
|
491
|
+
{
|
|
492
|
+
"internalType": "address",
|
|
493
|
+
"name": "implementation",
|
|
494
|
+
"type": "address"
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"internalType": "address",
|
|
498
|
+
"name": "activatedBy",
|
|
499
|
+
"type": "address"
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
"internalType": "bytes",
|
|
503
|
+
"name": "data",
|
|
504
|
+
"type": "bytes"
|
|
505
|
+
}
|
|
506
|
+
],
|
|
507
|
+
"name": "initialize",
|
|
508
|
+
"outputs": [],
|
|
509
|
+
"stateMutability": "nonpayable",
|
|
510
|
+
"type": "function"
|
|
511
|
+
},
|
|
307
512
|
{
|
|
308
513
|
"inputs": [
|
|
309
514
|
{
|
|
@@ -312,7 +517,7 @@
|
|
|
312
517
|
"type": "uint24"
|
|
313
518
|
}
|
|
314
519
|
],
|
|
315
|
-
"name": "
|
|
520
|
+
"name": "isInitialized",
|
|
316
521
|
"outputs": [
|
|
317
522
|
{
|
|
318
523
|
"internalType": "bool",
|
|
@@ -325,19 +530,79 @@
|
|
|
325
530
|
},
|
|
326
531
|
{
|
|
327
532
|
"inputs": [],
|
|
533
|
+
"name": "linkToRegisteredNftId",
|
|
534
|
+
"outputs": [],
|
|
535
|
+
"stateMutability": "nonpayable",
|
|
536
|
+
"type": "function"
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"inputs": [
|
|
540
|
+
{
|
|
541
|
+
"internalType": "address",
|
|
542
|
+
"name": "componentAddress",
|
|
543
|
+
"type": "address"
|
|
544
|
+
}
|
|
545
|
+
],
|
|
328
546
|
"name": "register",
|
|
329
547
|
"outputs": [
|
|
330
548
|
{
|
|
331
549
|
"internalType": "NftId",
|
|
332
|
-
"name": "
|
|
550
|
+
"name": "componentNftId",
|
|
551
|
+
"type": "uint96"
|
|
552
|
+
}
|
|
553
|
+
],
|
|
554
|
+
"stateMutability": "nonpayable",
|
|
555
|
+
"type": "function"
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
"inputs": [
|
|
559
|
+
{
|
|
560
|
+
"internalType": "NftId",
|
|
561
|
+
"name": "bundleNftId",
|
|
333
562
|
"type": "uint96"
|
|
563
|
+
},
|
|
564
|
+
{
|
|
565
|
+
"components": [
|
|
566
|
+
{
|
|
567
|
+
"internalType": "UFixed",
|
|
568
|
+
"name": "fractionalFee",
|
|
569
|
+
"type": "uint256"
|
|
570
|
+
},
|
|
571
|
+
{
|
|
572
|
+
"internalType": "uint256",
|
|
573
|
+
"name": "fixedFee",
|
|
574
|
+
"type": "uint256"
|
|
575
|
+
}
|
|
576
|
+
],
|
|
577
|
+
"internalType": "struct Fee",
|
|
578
|
+
"name": "fee",
|
|
579
|
+
"type": "tuple"
|
|
334
580
|
}
|
|
335
581
|
],
|
|
582
|
+
"name": "setBundleFee",
|
|
583
|
+
"outputs": [],
|
|
336
584
|
"stateMutability": "nonpayable",
|
|
337
585
|
"type": "function"
|
|
338
586
|
},
|
|
339
587
|
{
|
|
340
588
|
"inputs": [
|
|
589
|
+
{
|
|
590
|
+
"components": [
|
|
591
|
+
{
|
|
592
|
+
"internalType": "UFixed",
|
|
593
|
+
"name": "fractionalFee",
|
|
594
|
+
"type": "uint256"
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
"internalType": "uint256",
|
|
598
|
+
"name": "fixedFee",
|
|
599
|
+
"type": "uint256"
|
|
600
|
+
}
|
|
601
|
+
],
|
|
602
|
+
"internalType": "struct Fee",
|
|
603
|
+
"name": "poolFee",
|
|
604
|
+
"type": "tuple"
|
|
605
|
+
},
|
|
341
606
|
{
|
|
342
607
|
"components": [
|
|
343
608
|
{
|
|
@@ -396,20 +661,47 @@
|
|
|
396
661
|
],
|
|
397
662
|
"stateMutability": "view",
|
|
398
663
|
"type": "function"
|
|
664
|
+
},
|
|
665
|
+
{
|
|
666
|
+
"inputs": [
|
|
667
|
+
{
|
|
668
|
+
"internalType": "address",
|
|
669
|
+
"name": "implementation",
|
|
670
|
+
"type": "address"
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"internalType": "address",
|
|
674
|
+
"name": "activatedBy",
|
|
675
|
+
"type": "address"
|
|
676
|
+
},
|
|
677
|
+
{
|
|
678
|
+
"internalType": "bytes",
|
|
679
|
+
"name": "data",
|
|
680
|
+
"type": "bytes"
|
|
681
|
+
}
|
|
682
|
+
],
|
|
683
|
+
"name": "upgrade",
|
|
684
|
+
"outputs": [],
|
|
685
|
+
"stateMutability": "nonpayable",
|
|
686
|
+
"type": "function"
|
|
399
687
|
}
|
|
400
688
|
],
|
|
401
|
-
"bytecode": "0x60e06040523480156200001157600080fd5b5060405162003e4238038062003e42833981810160405281019062000037919062000b69565b8181818181816200006e7f01ffc9a700000000000000000000000000000000000000000000000000000000620003c860201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620000e0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000d79062000c11565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f06ecd8ef000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040162000171919062000c70565b602060405180830381865afa1580156200018f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b5919062000cca565b620001f7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001ee9062000d4c565b60405180910390fd5b806bffffffffffffffffffffffff1660a0816bffffffffffffffffffffffff168152505060805173ffffffffffffffffffffffffffffffffffffffff1663e74d052f60a0516040518263ffffffff1660e01b81526004016200025a919062000db1565b602060405180830381865afa15801562000278573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029e919062000cca565b620002e0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002d79062000e44565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050620003457f3bf74c8e00000000000000000000000000000000000000000000000000000000620003c860201b60201c565b50506200035a6000336200043460201b60201c565b6200038b7fda30978800000000000000000000000000000000000000000000000000000000620003c860201b60201c565b50505050620003c07f763f0d3000000000000000000000000000000000000000000000000000000000620003c860201b60201c565b505062001236565b6001600080837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000620004466200078260201b60201c565b90506200045981620007cf60201b60201c565b156200049c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004939062000edc565b60405180910390fd5b600060028054905011156200054e57600060026001600280549050620004c3919062000f37565b81548110620004d757620004d662000f72565b5b90600052602060002090600a91828204019190066003029054906101000a900462ffffff1690506200050a82826200088f565b6200054c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005439062001017565b60405180910390fd5b505b60028190806001815401808255809150506001900390600052602060002090600a91828204019190066003029091909190916101000a81548162ffffff021916908362ffffff1602179055506040518060a001604052808262ffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff168152602001620005f8620008a660201b60201c565b63ffffffff16815260200162000613620008be60201b60201c565b64ffffffffff16815250600160008362ffffff1662ffffff16815260200190815260200160002060008201518160000160006101000a81548162ffffff021916908362ffffff16021790555060208201518160000160036101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060608201518160010160146101000a81548163ffffffff021916908363ffffffff16021790555060808201518160010160186101000a81548164ffffffffff021916908364ffffffffff1602179055509050507f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d4419818484604051620007759392919062001092565b60405180910390a1505050565b6000620007ca6200079a6003620008d660201b60201c565b620007ac6000620008d660201b60201c565b620007be6000620008d660201b60201c565b620008e060201b60201c565b905090565b600080600160008462ffffff1662ffffff16815260200190815260200160002060010160149054906101000a900463ffffffff1663ffffffff1673__$5f476116ae21c5294e0c0761c07efa7e1c$__636effeac490916040518263ffffffff1660e01b815260040162000843919062001118565b602060405180830381865af415801562000861573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000887919062001166565b119050919050565b60008162ffffff168362ffffff1611905092915050565b6000620008b94362000aa260201b60201c565b905090565b6000620008d14262000aac60201b60201c565b905090565b6000819050919050565b6000808460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401620009219190620011de565b602060405180830381865af41580156200093f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000965919062001166565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401620009a79190620011de565b602060405180830381865af4158015620009c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009eb919062001166565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b815260040162000a2d9190620011de565b602060405180830381865af415801562000a4b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a71919062001166565b905080600883901b601085901b62000a8a9190620011fb565b62000a969190620011fb565b93505050509392505050565b6000819050919050565b6000819050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ae88262000abb565b9050919050565b62000afa8162000adb565b811462000b0657600080fd5b50565b60008151905062000b1a8162000aef565b92915050565b60006bffffffffffffffffffffffff82169050919050565b62000b438162000b20565b811462000b4f57600080fd5b50565b60008151905062000b638162000b38565b92915050565b6000806040838503121562000b835762000b8262000ab6565b5b600062000b938582860162000b09565b925050602062000ba68582860162000b52565b9150509250929050565b600082825260208201905092915050565b7f4552524f523a5247422d3031303a52454749535452595f5a45524f0000000000600082015250565b600062000bf9601b8362000bb0565b915062000c068262000bc1565b602082019050919050565b6000602082019050818103600083015262000c2c8162000bea565b9050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b62000c6a8162000c33565b82525050565b600060208201905062000c87600083018462000c5f565b92915050565b60008115159050919050565b62000ca48162000c8d565b811462000cb057600080fd5b50565b60008151905062000cc48162000c99565b92915050565b60006020828403121562000ce35762000ce262000ab6565b5b600062000cf38482850162000cb3565b91505092915050565b7f4552524f523a5247422d3031313a4e4f545f5245474953545259000000000000600082015250565b600062000d34601a8362000bb0565b915062000d418262000cfc565b602082019050919050565b6000602082019050818103600083015262000d678162000d25565b9050919050565b6000819050919050565b600062000d9962000d9362000d8d8462000b20565b62000d6e565b62000b20565b9050919050565b62000dab8162000d78565b82525050565b600060208201905062000dc8600083018462000da0565b92915050565b7f4552524f523a5247422d3031323a504152454e545f4e4f545f5245474953544560008201527f5245440000000000000000000000000000000000000000000000000000000000602082015250565b600062000e2c60238362000bb0565b915062000e398262000dce565b604082019050919050565b6000602082019050818103600083015262000e5f8162000e1d565b9050919050565b7f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f414360008201527f5449564154454400000000000000000000000000000000000000000000000000602082015250565b600062000ec460278362000bb0565b915062000ed18262000e66565b604082019050919050565b6000602082019050818103600083015262000ef78162000eb5565b9050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000f448262000efe565b915062000f518362000efe565b925082820390508181111562000f6c5762000f6b62000f08565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160008201527f53494e4700000000000000000000000000000000000000000000000000000000602082015250565b600062000fff60248362000bb0565b91506200100c8262000fa1565b604082019050919050565b60006020820190508181036000830152620010328162000ff0565b9050919050565b600062ffffff82169050919050565b600062001069620010636200105d8462001039565b62000d6e565b62001039565b9050919050565b6200107b8162001048565b82525050565b6200108c8162000adb565b82525050565b6000606082019050620010a9600083018662001070565b620010b8602083018562001081565b620010c7604083018462001081565b949350505050565b600063ffffffff82169050919050565b600062001100620010fa620010f484620010cf565b62000d6e565b620010cf565b9050919050565b6200111281620010df565b82525050565b60006020820190506200112f600083018462001107565b92915050565b620011408162000efe565b81146200114c57600080fd5b50565b600081519050620011608162001135565b92915050565b6000602082840312156200117f576200117e62000ab6565b5b60006200118f848285016200114f565b91505092915050565b600060ff82169050919050565b6000620011c6620011c0620011ba8462001198565b62000d6e565b62001198565b9050919050565b620011d881620011a5565b82525050565b6000602082019050620011f56000830184620011cd565b92915050565b6000620012088262000efe565b9150620012158362000efe565b925082820190508082111562001230576200122f62000f08565b5b92915050565b60805160a05160c051612ba46200129e60003960006109c50152600061066d0152600081816105ca015281816108490152818161087101528181610913015281816109ee01528181610c1e015281816113dd0152818161154001526116300152612ba46000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80635ab1bd53116100ad578063a3f4df7e11610071578063a3f4df7e146102fe578063b6b412ba1461031c578063b88da75914610338578063c08b1f8a14610368578063cde749f41461039857610121565b80635ab1bd531461026a578063644c45e014610288578063893d20e8146102a6578063946dfcfe146102c45780639555c4db146102e257610121565b806317d7de7c116100f457806317d7de7c146101c25780631aa3a008146101e057806331b62a3b146101fe5780633bc5de301461021c5780634d459c901461023a57610121565b806301ffc9a7146101265780630abd8434146101565780630d8e6e2c1461018657806315dae03e146101a4575b600080fd5b610140600480360381019061013b91906118b4565b6103b6565b60405161014d91906118fc565b60405180910390f35b610170600480360381019061016b9190611952565b61041d565b60405161017d91906118fc565b60405180910390f35b61018e6104d8565b60405161019b91906119ba565b60405180910390f35b6101ac610505565b6040516101b99190611a13565b60405180910390f35b6101ca610514565b6040516101d79190611abe565b60405180910390f35b6101e8610551565b6040516101f59190611b29565b60405180910390f35b610206610669565b6040516102139190611b29565b60405180910390f35b610224610691565b6040516102319190611b99565b60405180910390f35b610254600480360381019061024f9190611952565b6106a8565b6040516102619190611cf6565b60405180910390f35b610272610845565b60405161027f9190611d66565b60405180910390f35b61029061086d565b60405161029d9190611b29565b60405180910390f35b6102ae61090e565b6040516102bb9190611d90565b60405180910390f35b6102cc610a8d565b6040516102d99190611dc4565b60405180910390f35b6102fc60048036038101906102f79190611e0b565b610a9a565b005b610306610aa8565b6040516103139190611abe565b60405180910390f35b61033660048036038101906103319190611f78565b610ae1565b005b610352600480360381019061034d9190611fb8565b610b71565b60405161035f91906119ba565b60405180910390f35b610382600480360381019061037d919061204a565b610bfa565b60405161038f9190611b29565b60405180910390f35b6103a0610db5565b6040516103ad91906120e1565b60405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b600080600160008462ffffff1662ffffff16815260200190815260200160002060010160149054906101000a900463ffffffff1663ffffffff1673__$5f476116ae21c5294e0c0761c07efa7e1c$__636effeac490916040518263ffffffff1660e01b815260040161048f919061210b565b602060405180830381865af41580156104ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d0919061213b565b119050919050565b60006105006104e76003610ea9565b6104f16000610ea9565b6104fb6000610ea9565b610eb3565b905090565b600061050f611062565b905090565b60606040518060400160405280600b81526020017f506f6f6c53657276696365000000000000000000000000000000000000000000815250905090565b600061055b61090e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bf906121b4565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634420e486306040518263ffffffff1660e01b81526004016106219190611d90565b6020604051808303816000875af1158015610640573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106649190612200565b905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b606060405180602001604052806000815250905090565b6106b061175a565b6106b98261041d565b6106f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ef90612279565b60405180910390fd5b600160008362ffffff1662ffffff1681526020019081526020016000206040518060a00160405290816000820160009054906101000a900462ffffff1662ffffff1662ffffff1681526020016000820160039054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016001820160189054906101000a900464ffffffffff1664ffffffffff1664ffffffffff16815250509050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e306040518263ffffffff1660e01b81526004016108c89190611d90565b602060405180830381865afa1580156108e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109099190612200565b905090565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e306040518263ffffffff1660e01b815260040161096a9190611d90565b602060405180830381865afa158015610987573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ab9190612200565b90506109be816109b9611073565b611078565b156109ec577f0000000000000000000000000000000000000000000000000000000000000000915050610a8a565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663df33330b826040518263ffffffff1660e01b8152600401610a459190611b29565b602060405180830381865afa158015610a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8691906122ae565b9150505b90565b6000600280549050905090565b610aa482826110a1565b5050565b6040518060400160405280600b81526020017f506f6f6c5365727669636500000000000000000000000000000000000000000081525081565b600080610af4610aef6113bf565b6113d0565b915091508073ffffffffffffffffffffffffffffffffffffffff166393865aec836000015186866040518463ffffffff1660e01b8152600401610b399392919061234a565b600060405180830381600087803b158015610b5357600080fd5b505af1158015610b67573d6000803e3d6000fd5b5050505050505050565b60006002805490508210610bba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb1906123cd565b60405180910390fd5b60028281548110610bce57610bcd6123ed565b5b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000806000610c0f610c0a6113bf565b6113d0565b915091506000826000015190507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef14b5e82610c616116e1565b8c6040518463ffffffff1660e01b8152600401610c8093929190612442565b6020604051808303816000875af1158015610c9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cc39190612200565b93508173ffffffffffffffffffffffffffffffffffffffff16630591087485838b8b8b8b6040518763ffffffff1660e01b8152600401610d08969594939291906124c8565b600060405180830381600087803b158015610d2257600080fd5b505af1158015610d36573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff16639845743785838b6040518463ffffffff1660e01b8152600401610d7793929190612524565b600060405180830381600087803b158015610d9157600080fd5b505af1158015610da5573d6000803e3d6000fd5b5050505050505095945050505050565b60003073ffffffffffffffffffffffffffffffffffffffff16630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e269190612570565b62ffffff1673__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63c9e66e2990916040518263ffffffff1660e01b8152600401610e6391906125ac565b602060405180830381865af4158015610e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea491906125f3565b905090565b6000819050919050565b6000808460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610ef2919061262f565b602060405180830381865af4158015610f0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f33919061213b565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610f73919061262f565b602060405180830381865af4158015610f90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb4919061213b565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610ff4919061262f565b602060405180830381865af4158015611011573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611035919061213b565b905080600883901b601085901b61104c9190612679565b6110569190612679565b93505050509392505050565b600061106e60286116f2565b905090565b600090565b6000816bffffffffffffffffffffffff16836bffffffffffffffffffffffff1614905092915050565b60006110ab6104d8565b90506110b68161041d565b156110f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ed9061271f565b60405180910390fd5b6000600280549050111561119d5760006002600160028054905061111a919061273f565b8154811061112b5761112a6123ed565b5b90600052602060002090600a91828204019190066003029054906101000a900462ffffff16905061115c82826116fc565b61119b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611192906127e5565b60405180910390fd5b505b60028190806001815401808255809150506001900390600052602060002090600a91828204019190066003029091909190916101000a81548162ffffff021916908362ffffff1602179055506040518060a001604052808262ffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff16815260200161123f611713565b63ffffffff168152602001611252611723565b64ffffffffff16815250600160008362ffffff1662ffffff16815260200190815260200160002060008201518160000160006101000a81548162ffffff021916908362ffffff16021790555060208201518160000160036101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060608201518160010160146101000a81548163ffffffff021916908363ffffffff16021790555060808201518160010160186101000a81548164ffffffffff021916908364ffffffffff1602179055509050507f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d44198184846040516113b293929190612805565b60405180910390a1505050565b60006113cb60826116f2565b905090565b6113d86117c7565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e336040518263ffffffff1660e01b81526004016114349190611d90565b602060405180830381865afa158015611451573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114759190612200565b9050806bffffffffffffffffffffffff1673__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__6330b8415f90916040518263ffffffff1660e01b81526004016114be919061284b565b602060405180830381865af41580156114db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ff9190612892565b61153e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115359061290b565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a48f42e0826040518263ffffffff1660e01b81526004016115979190611b29565b600060405180830381865afa1580156115b4573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906115dd9190612ab9565b92506115ed836040015185611733565b61162c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162390612b4e565b60405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a48f42e085602001516040518263ffffffff1660e01b815260040161168b9190611b29565b600060405180830381865afa1580156116a8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116d19190612ab9565b6060015190508092505050915091565b60006116ed60d26116f2565b905090565b6000819050919050565b60008162ffffff168362ffffff1611905092915050565b600061171e43611746565b905090565b600061172e42611750565b905090565b60008160ff168360ff1614905092915050565b6000819050919050565b6000819050919050565b6040518060a00160405280600062ffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600063ffffffff168152602001600064ffffffffff1681525090565b6040518060c0016040528060006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600060ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6118918161185c565b811461189c57600080fd5b50565b6000813590506118ae81611888565b92915050565b6000602082840312156118ca576118c9611852565b5b60006118d88482850161189f565b91505092915050565b60008115159050919050565b6118f6816118e1565b82525050565b600060208201905061191160008301846118ed565b92915050565b600062ffffff82169050919050565b61192f81611917565b811461193a57600080fd5b50565b60008135905061194c81611926565b92915050565b60006020828403121561196857611967611852565b5b60006119768482850161193d565b91505092915050565b6000819050919050565b60006119a461199f61199a84611917565b61197f565b611917565b9050919050565b6119b481611989565b82525050565b60006020820190506119cf60008301846119ab565b92915050565b600060ff82169050919050565b60006119fd6119f86119f3846119d5565b61197f565b6119d5565b9050919050565b611a0d816119e2565b82525050565b6000602082019050611a286000830184611a04565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a68578082015181840152602081019050611a4d565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a9082611a2e565b611a9a8185611a39565b9350611aaa818560208601611a4a565b611ab381611a74565b840191505092915050565b60006020820190508181036000830152611ad88184611a85565b905092915050565b60006bffffffffffffffffffffffff82169050919050565b6000611b13611b0e611b0984611ae0565b61197f565b611ae0565b9050919050565b611b2381611af8565b82525050565b6000602082019050611b3e6000830184611b1a565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b6b82611b44565b611b758185611b4f565b9350611b85818560208601611a4a565b611b8e81611a74565b840191505092915050565b60006020820190508181036000830152611bb38184611b60565b905092915050565b611bc481611989565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bf582611bca565b9050919050565b611c0581611bea565b82525050565b600063ffffffff82169050919050565b6000611c36611c31611c2c84611c0b565b61197f565b611c0b565b9050919050565b611c4681611c1b565b82525050565b600064ffffffffff82169050919050565b6000611c78611c73611c6e84611c4c565b61197f565b611c4c565b9050919050565b611c8881611c5d565b82525050565b60a082016000820151611ca46000850182611bbb565b506020820151611cb76020850182611bfc565b506040820151611cca6040850182611bfc565b506060820151611cdd6060850182611c3d565b506080820151611cf06080850182611c7f565b50505050565b600060a082019050611d0b6000830184611c8e565b92915050565b6000611d2c611d27611d2284611bca565b61197f565b611bca565b9050919050565b6000611d3e82611d11565b9050919050565b6000611d5082611d33565b9050919050565b611d6081611d45565b82525050565b6000602082019050611d7b6000830184611d57565b92915050565b611d8a81611bea565b82525050565b6000602082019050611da56000830184611d81565b92915050565b6000819050919050565b611dbe81611dab565b82525050565b6000602082019050611dd96000830184611db5565b92915050565b611de881611bea565b8114611df357600080fd5b50565b600081359050611e0581611ddf565b92915050565b60008060408385031215611e2257611e21611852565b5b6000611e3085828601611df6565b9250506020611e4185828601611df6565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611e8882611a74565b810181811067ffffffffffffffff82111715611ea757611ea6611e50565b5b80604052505050565b6000611eba611848565b9050611ec68282611e7f565b919050565b600080fd5b611ed981611dab565b8114611ee457600080fd5b50565b600081359050611ef681611ed0565b92915050565b611f0581611dab565b8114611f1057600080fd5b50565b600081359050611f2281611efc565b92915050565b600060408284031215611f3e57611f3d611e4b565b5b611f486040611eb0565b90506000611f5884828501611ee7565b6000830152506020611f6c84828501611f13565b60208301525092915050565b60008060808385031215611f8f57611f8e611852565b5b6000611f9d85828601611f28565b9250506040611fae85828601611f28565b9150509250929050565b600060208284031215611fce57611fcd611852565b5b6000611fdc84828501611f13565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261200a57612009611fe5565b5b8235905067ffffffffffffffff81111561202757612026611fea565b5b60208301915083600182028301111561204357612042611fef565b5b9250929050565b60008060008060006080868803121561206657612065611852565b5b600061207488828901611df6565b955050602061208588828901611f13565b945050604061209688828901611f13565b935050606086013567ffffffffffffffff8111156120b7576120b6611857565b5b6120c388828901611ff4565b92509250509295509295909350565b6120db816119e2565b82525050565b60006020820190506120f660008301846120d2565b92915050565b61210581611c1b565b82525050565b600060208201905061212060008301846120fc565b92915050565b60008151905061213581611efc565b92915050565b60006020828403121561215157612150611852565b5b600061215f84828501612126565b91505092915050565b7f4552524f523a5247422d3030313a4e4f545f4f574e4552000000000000000000600082015250565b600061219e601783611a39565b91506121a982612168565b602082019050919050565b600060208201905081810360008301526121cd81612191565b9050919050565b6121dd81611ae0565b81146121e857600080fd5b50565b6000815190506121fa816121d4565b92915050565b60006020828403121561221657612215611852565b5b6000612224848285016121eb565b91505092915050565b7f4552524f523a56524e2d3032303a56455253494f4e5f554e4b4e4f574e000000600082015250565b6000612263601d83611a39565b915061226e8261222d565b602082019050919050565b6000602082019050818103600083015261229281612256565b9050919050565b6000815190506122a881611ddf565b92915050565b6000602082840312156122c4576122c3611852565b5b60006122d284828501612299565b91505092915050565b60006122f66122f16122ec84611dab565b61197f565b611dab565b9050919050565b612306816122db565b82525050565b61231581611dab565b82525050565b60408201600082015161233160008501826122fd565b506020820151612344602085018261230c565b50505050565b600060a08201905061235f6000830186611b1a565b61236c602083018561231b565b612379606083018461231b565b949350505050565b7f4552524f523a56524e2d3031303a494e4445585f544f4f5f4c41524745000000600082015250565b60006123b7601d83611a39565b91506123c282612381565b602082019050919050565b600060208201905081810360008301526123e6816123aa565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b50565b600061242c600083611b4f565b91506124378261241c565b600082019050919050565b60006080820190506124576000830186611b1a565b6124646020830185611a04565b6124716040830184611d81565b81810360608301526124828161241f565b9050949350505050565b82818337600083830152505050565b60006124a78385611b4f565b93506124b483858461248c565b6124bd83611a74565b840190509392505050565b600060a0820190506124dd6000830189611b1a565b6124ea6020830188611b1a565b6124f76040830187611db5565b6125046060830186611db5565b818103608083015261251781848661249b565b9050979650505050505050565b60006060820190506125396000830186611b1a565b6125466020830185611b1a565b6125536040830184611db5565b949350505050565b60008151905061256a81611926565b92915050565b60006020828403121561258657612585611852565b5b60006125948482850161255b565b91505092915050565b6125a681611989565b82525050565b60006020820190506125c1600083018461259d565b92915050565b6125d0816119d5565b81146125db57600080fd5b50565b6000815190506125ed816125c7565b92915050565b60006020828403121561260957612608611852565b5b6000612617848285016125de565b91505092915050565b612629816119e2565b82525050565b60006020820190506126446000830184612620565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061268482611dab565b915061268f83611dab565b92508282019050808211156126a7576126a661264a565b5b92915050565b7f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f414360008201527f5449564154454400000000000000000000000000000000000000000000000000602082015250565b6000612709602783611a39565b9150612714826126ad565b604082019050919050565b60006020820190508181036000830152612738816126fc565b9050919050565b600061274a82611dab565b915061275583611dab565b925082820390508181111561276d5761276c61264a565b5b92915050565b7f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160008201527f53494e4700000000000000000000000000000000000000000000000000000000602082015250565b60006127cf602483611a39565b91506127da82612773565b604082019050919050565b600060208201905081810360008301526127fe816127c2565b9050919050565b600060608201905061281a60008301866119ab565b6128276020830185611d81565b6128346040830184611d81565b949350505050565b61284581611af8565b82525050565b6000602082019050612860600083018461283c565b92915050565b61286f816118e1565b811461287a57600080fd5b50565b60008151905061288c81612866565b92915050565b6000602082840312156128a8576128a7611852565b5b60006128b68482850161287d565b91505092915050565b7f4552524f525f434f4d504f4e454e545f554e4b4e4f574e000000000000000000600082015250565b60006128f5601783611a39565b9150612900826128bf565b602082019050919050565b60006020820190508181036000830152612924816128e8565b9050919050565b612934816119d5565b811461293f57600080fd5b50565b6000815190506129518161292b565b92915050565b600080fd5b600067ffffffffffffffff82111561297757612976611e50565b5b61298082611a74565b9050602081019050919050565b60006129a061299b8461295c565b611eb0565b9050828152602081018484840111156129bc576129bb612957565b5b6129c7848285611a4a565b509392505050565b600082601f8301126129e4576129e3611fe5565b5b81516129f484826020860161298d565b91505092915050565b600060c08284031215612a1357612a12611e4b565b5b612a1d60c0611eb0565b90506000612a2d848285016121eb565b6000830152506020612a41848285016121eb565b6020830152506040612a5584828501612942565b6040830152506060612a6984828501612299565b6060830152506080612a7d84828501612299565b60808301525060a082015167ffffffffffffffff811115612aa157612aa0611ecb565b5b612aad848285016129cf565b60a08301525092915050565b600060208284031215612acf57612ace611852565b5b600082015167ffffffffffffffff811115612aed57612aec611857565b5b612af9848285016129fd565b91505092915050565b7f4f424a4543545f545950455f494e56414c494400000000000000000000000000600082015250565b6000612b38601383611a39565b9150612b4382612b02565b602082019050919050565b60006020820190508181036000830152612b6781612b2b565b905091905056fea2646970667358221220d1eb2793cb22bb551a155b0f850a3e8096b94a1e3dfe84928e91022181025b2b64736f6c63430008140033",
|
|
402
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c80635ab1bd53116100ad578063a3f4df7e11610071578063a3f4df7e146102fe578063b6b412ba1461031c578063b88da75914610338578063c08b1f8a14610368578063cde749f41461039857610121565b80635ab1bd531461026a578063644c45e014610288578063893d20e8146102a6578063946dfcfe146102c45780639555c4db146102e257610121565b806317d7de7c116100f457806317d7de7c146101c25780631aa3a008146101e057806331b62a3b146101fe5780633bc5de301461021c5780634d459c901461023a57610121565b806301ffc9a7146101265780630abd8434146101565780630d8e6e2c1461018657806315dae03e146101a4575b600080fd5b610140600480360381019061013b91906118b4565b6103b6565b60405161014d91906118fc565b60405180910390f35b610170600480360381019061016b9190611952565b61041d565b60405161017d91906118fc565b60405180910390f35b61018e6104d8565b60405161019b91906119ba565b60405180910390f35b6101ac610505565b6040516101b99190611a13565b60405180910390f35b6101ca610514565b6040516101d79190611abe565b60405180910390f35b6101e8610551565b6040516101f59190611b29565b60405180910390f35b610206610669565b6040516102139190611b29565b60405180910390f35b610224610691565b6040516102319190611b99565b60405180910390f35b610254600480360381019061024f9190611952565b6106a8565b6040516102619190611cf6565b60405180910390f35b610272610845565b60405161027f9190611d66565b60405180910390f35b61029061086d565b60405161029d9190611b29565b60405180910390f35b6102ae61090e565b6040516102bb9190611d90565b60405180910390f35b6102cc610a8d565b6040516102d99190611dc4565b60405180910390f35b6102fc60048036038101906102f79190611e0b565b610a9a565b005b610306610aa8565b6040516103139190611abe565b60405180910390f35b61033660048036038101906103319190611f78565b610ae1565b005b610352600480360381019061034d9190611fb8565b610b71565b60405161035f91906119ba565b60405180910390f35b610382600480360381019061037d919061204a565b610bfa565b60405161038f9190611b29565b60405180910390f35b6103a0610db5565b6040516103ad91906120e1565b60405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b600080600160008462ffffff1662ffffff16815260200190815260200160002060010160149054906101000a900463ffffffff1663ffffffff1673__$5f476116ae21c5294e0c0761c07efa7e1c$__636effeac490916040518263ffffffff1660e01b815260040161048f919061210b565b602060405180830381865af41580156104ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d0919061213b565b119050919050565b60006105006104e76003610ea9565b6104f16000610ea9565b6104fb6000610ea9565b610eb3565b905090565b600061050f611062565b905090565b60606040518060400160405280600b81526020017f506f6f6c53657276696365000000000000000000000000000000000000000000815250905090565b600061055b61090e565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bf906121b4565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634420e486306040518263ffffffff1660e01b81526004016106219190611d90565b6020604051808303816000875af1158015610640573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106649190612200565b905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b606060405180602001604052806000815250905090565b6106b061175a565b6106b98261041d565b6106f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ef90612279565b60405180910390fd5b600160008362ffffff1662ffffff1681526020019081526020016000206040518060a00160405290816000820160009054906101000a900462ffffff1662ffffff1662ffffff1681526020016000820160039054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016001820160189054906101000a900464ffffffffff1664ffffffffff1664ffffffffff16815250509050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e306040518263ffffffff1660e01b81526004016108c89190611d90565b602060405180830381865afa1580156108e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109099190612200565b905090565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e306040518263ffffffff1660e01b815260040161096a9190611d90565b602060405180830381865afa158015610987573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ab9190612200565b90506109be816109b9611073565b611078565b156109ec577f0000000000000000000000000000000000000000000000000000000000000000915050610a8a565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663df33330b826040518263ffffffff1660e01b8152600401610a459190611b29565b602060405180830381865afa158015610a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8691906122ae565b9150505b90565b6000600280549050905090565b610aa482826110a1565b5050565b6040518060400160405280600b81526020017f506f6f6c5365727669636500000000000000000000000000000000000000000081525081565b600080610af4610aef6113bf565b6113d0565b915091508073ffffffffffffffffffffffffffffffffffffffff166393865aec836000015186866040518463ffffffff1660e01b8152600401610b399392919061234a565b600060405180830381600087803b158015610b5357600080fd5b505af1158015610b67573d6000803e3d6000fd5b5050505050505050565b60006002805490508210610bba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb1906123cd565b60405180910390fd5b60028281548110610bce57610bcd6123ed565b5b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000806000610c0f610c0a6113bf565b6113d0565b915091506000826000015190507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635ef14b5e82610c616116e1565b8c6040518463ffffffff1660e01b8152600401610c8093929190612442565b6020604051808303816000875af1158015610c9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cc39190612200565b93508173ffffffffffffffffffffffffffffffffffffffff16630591087485838b8b8b8b6040518763ffffffff1660e01b8152600401610d08969594939291906124c8565b600060405180830381600087803b158015610d2257600080fd5b505af1158015610d36573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff16639845743785838b6040518463ffffffff1660e01b8152600401610d7793929190612524565b600060405180830381600087803b158015610d9157600080fd5b505af1158015610da5573d6000803e3d6000fd5b5050505050505095945050505050565b60003073ffffffffffffffffffffffffffffffffffffffff16630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e269190612570565b62ffffff1673__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63c9e66e2990916040518263ffffffff1660e01b8152600401610e6391906125ac565b602060405180830381865af4158015610e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea491906125f3565b905090565b6000819050919050565b6000808460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610ef2919061262f565b602060405180830381865af4158015610f0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f33919061213b565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610f73919061262f565b602060405180830381865af4158015610f90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb4919061213b565b905060008460ff1673__$9dab98ad7ae1a426029e5739f922230a41$__63ac43d83490916040518263ffffffff1660e01b8152600401610ff4919061262f565b602060405180830381865af4158015611011573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611035919061213b565b905080600883901b601085901b61104c9190612679565b6110569190612679565b93505050509392505050565b600061106e60286116f2565b905090565b600090565b6000816bffffffffffffffffffffffff16836bffffffffffffffffffffffff1614905092915050565b60006110ab6104d8565b90506110b68161041d565b156110f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ed9061271f565b60405180910390fd5b6000600280549050111561119d5760006002600160028054905061111a919061273f565b8154811061112b5761112a6123ed565b5b90600052602060002090600a91828204019190066003029054906101000a900462ffffff16905061115c82826116fc565b61119b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611192906127e5565b60405180910390fd5b505b60028190806001815401808255809150506001900390600052602060002090600a91828204019190066003029091909190916101000a81548162ffffff021916908362ffffff1602179055506040518060a001604052808262ffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff16815260200161123f611713565b63ffffffff168152602001611252611723565b64ffffffffff16815250600160008362ffffff1662ffffff16815260200190815260200160002060008201518160000160006101000a81548162ffffff021916908362ffffff16021790555060208201518160000160036101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060608201518160010160146101000a81548163ffffffff021916908363ffffffff16021790555060808201518160010160186101000a81548164ffffffffff021916908364ffffffffff1602179055509050507f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d44198184846040516113b293929190612805565b60405180910390a1505050565b60006113cb60826116f2565b905090565b6113d86117c7565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d272ac1e336040518263ffffffff1660e01b81526004016114349190611d90565b602060405180830381865afa158015611451573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114759190612200565b9050806bffffffffffffffffffffffff1673__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__6330b8415f90916040518263ffffffff1660e01b81526004016114be919061284b565b602060405180830381865af41580156114db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ff9190612892565b61153e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115359061290b565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a48f42e0826040518263ffffffff1660e01b81526004016115979190611b29565b600060405180830381865afa1580156115b4573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906115dd9190612ab9565b92506115ed836040015185611733565b61162c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162390612b4e565b60405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a48f42e085602001516040518263ffffffff1660e01b815260040161168b9190611b29565b600060405180830381865afa1580156116a8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906116d19190612ab9565b6060015190508092505050915091565b60006116ed60d26116f2565b905090565b6000819050919050565b60008162ffffff168362ffffff1611905092915050565b600061171e43611746565b905090565b600061172e42611750565b905090565b60008160ff168360ff1614905092915050565b6000819050919050565b6000819050919050565b6040518060a00160405280600062ffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600063ffffffff168152602001600064ffffffffff1681525090565b6040518060c0016040528060006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600060ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6118918161185c565b811461189c57600080fd5b50565b6000813590506118ae81611888565b92915050565b6000602082840312156118ca576118c9611852565b5b60006118d88482850161189f565b91505092915050565b60008115159050919050565b6118f6816118e1565b82525050565b600060208201905061191160008301846118ed565b92915050565b600062ffffff82169050919050565b61192f81611917565b811461193a57600080fd5b50565b60008135905061194c81611926565b92915050565b60006020828403121561196857611967611852565b5b60006119768482850161193d565b91505092915050565b6000819050919050565b60006119a461199f61199a84611917565b61197f565b611917565b9050919050565b6119b481611989565b82525050565b60006020820190506119cf60008301846119ab565b92915050565b600060ff82169050919050565b60006119fd6119f86119f3846119d5565b61197f565b6119d5565b9050919050565b611a0d816119e2565b82525050565b6000602082019050611a286000830184611a04565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a68578082015181840152602081019050611a4d565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a9082611a2e565b611a9a8185611a39565b9350611aaa818560208601611a4a565b611ab381611a74565b840191505092915050565b60006020820190508181036000830152611ad88184611a85565b905092915050565b60006bffffffffffffffffffffffff82169050919050565b6000611b13611b0e611b0984611ae0565b61197f565b611ae0565b9050919050565b611b2381611af8565b82525050565b6000602082019050611b3e6000830184611b1a565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b6b82611b44565b611b758185611b4f565b9350611b85818560208601611a4a565b611b8e81611a74565b840191505092915050565b60006020820190508181036000830152611bb38184611b60565b905092915050565b611bc481611989565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bf582611bca565b9050919050565b611c0581611bea565b82525050565b600063ffffffff82169050919050565b6000611c36611c31611c2c84611c0b565b61197f565b611c0b565b9050919050565b611c4681611c1b565b82525050565b600064ffffffffff82169050919050565b6000611c78611c73611c6e84611c4c565b61197f565b611c4c565b9050919050565b611c8881611c5d565b82525050565b60a082016000820151611ca46000850182611bbb565b506020820151611cb76020850182611bfc565b506040820151611cca6040850182611bfc565b506060820151611cdd6060850182611c3d565b506080820151611cf06080850182611c7f565b50505050565b600060a082019050611d0b6000830184611c8e565b92915050565b6000611d2c611d27611d2284611bca565b61197f565b611bca565b9050919050565b6000611d3e82611d11565b9050919050565b6000611d5082611d33565b9050919050565b611d6081611d45565b82525050565b6000602082019050611d7b6000830184611d57565b92915050565b611d8a81611bea565b82525050565b6000602082019050611da56000830184611d81565b92915050565b6000819050919050565b611dbe81611dab565b82525050565b6000602082019050611dd96000830184611db5565b92915050565b611de881611bea565b8114611df357600080fd5b50565b600081359050611e0581611ddf565b92915050565b60008060408385031215611e2257611e21611852565b5b6000611e3085828601611df6565b9250506020611e4185828601611df6565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611e8882611a74565b810181811067ffffffffffffffff82111715611ea757611ea6611e50565b5b80604052505050565b6000611eba611848565b9050611ec68282611e7f565b919050565b600080fd5b611ed981611dab565b8114611ee457600080fd5b50565b600081359050611ef681611ed0565b92915050565b611f0581611dab565b8114611f1057600080fd5b50565b600081359050611f2281611efc565b92915050565b600060408284031215611f3e57611f3d611e4b565b5b611f486040611eb0565b90506000611f5884828501611ee7565b6000830152506020611f6c84828501611f13565b60208301525092915050565b60008060808385031215611f8f57611f8e611852565b5b6000611f9d85828601611f28565b9250506040611fae85828601611f28565b9150509250929050565b600060208284031215611fce57611fcd611852565b5b6000611fdc84828501611f13565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261200a57612009611fe5565b5b8235905067ffffffffffffffff81111561202757612026611fea565b5b60208301915083600182028301111561204357612042611fef565b5b9250929050565b60008060008060006080868803121561206657612065611852565b5b600061207488828901611df6565b955050602061208588828901611f13565b945050604061209688828901611f13565b935050606086013567ffffffffffffffff8111156120b7576120b6611857565b5b6120c388828901611ff4565b92509250509295509295909350565b6120db816119e2565b82525050565b60006020820190506120f660008301846120d2565b92915050565b61210581611c1b565b82525050565b600060208201905061212060008301846120fc565b92915050565b60008151905061213581611efc565b92915050565b60006020828403121561215157612150611852565b5b600061215f84828501612126565b91505092915050565b7f4552524f523a5247422d3030313a4e4f545f4f574e4552000000000000000000600082015250565b600061219e601783611a39565b91506121a982612168565b602082019050919050565b600060208201905081810360008301526121cd81612191565b9050919050565b6121dd81611ae0565b81146121e857600080fd5b50565b6000815190506121fa816121d4565b92915050565b60006020828403121561221657612215611852565b5b6000612224848285016121eb565b91505092915050565b7f4552524f523a56524e2d3032303a56455253494f4e5f554e4b4e4f574e000000600082015250565b6000612263601d83611a39565b915061226e8261222d565b602082019050919050565b6000602082019050818103600083015261229281612256565b9050919050565b6000815190506122a881611ddf565b92915050565b6000602082840312156122c4576122c3611852565b5b60006122d284828501612299565b91505092915050565b60006122f66122f16122ec84611dab565b61197f565b611dab565b9050919050565b612306816122db565b82525050565b61231581611dab565b82525050565b60408201600082015161233160008501826122fd565b506020820151612344602085018261230c565b50505050565b600060a08201905061235f6000830186611b1a565b61236c602083018561231b565b612379606083018461231b565b949350505050565b7f4552524f523a56524e2d3031303a494e4445585f544f4f5f4c41524745000000600082015250565b60006123b7601d83611a39565b91506123c282612381565b602082019050919050565b600060208201905081810360008301526123e6816123aa565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b50565b600061242c600083611b4f565b91506124378261241c565b600082019050919050565b60006080820190506124576000830186611b1a565b6124646020830185611a04565b6124716040830184611d81565b81810360608301526124828161241f565b9050949350505050565b82818337600083830152505050565b60006124a78385611b4f565b93506124b483858461248c565b6124bd83611a74565b840190509392505050565b600060a0820190506124dd6000830189611b1a565b6124ea6020830188611b1a565b6124f76040830187611db5565b6125046060830186611db5565b818103608083015261251781848661249b565b9050979650505050505050565b60006060820190506125396000830186611b1a565b6125466020830185611b1a565b6125536040830184611db5565b949350505050565b60008151905061256a81611926565b92915050565b60006020828403121561258657612585611852565b5b60006125948482850161255b565b91505092915050565b6125a681611989565b82525050565b60006020820190506125c1600083018461259d565b92915050565b6125d0816119d5565b81146125db57600080fd5b50565b6000815190506125ed816125c7565b92915050565b60006020828403121561260957612608611852565b5b6000612617848285016125de565b91505092915050565b612629816119e2565b82525050565b60006020820190506126446000830184612620565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061268482611dab565b915061268f83611dab565b92508282019050808211156126a7576126a661264a565b5b92915050565b7f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f414360008201527f5449564154454400000000000000000000000000000000000000000000000000602082015250565b6000612709602783611a39565b9150612714826126ad565b604082019050919050565b60006020820190508181036000830152612738816126fc565b9050919050565b600061274a82611dab565b915061275583611dab565b925082820390508181111561276d5761276c61264a565b5b92915050565b7f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160008201527f53494e4700000000000000000000000000000000000000000000000000000000602082015250565b60006127cf602483611a39565b91506127da82612773565b604082019050919050565b600060208201905081810360008301526127fe816127c2565b9050919050565b600060608201905061281a60008301866119ab565b6128276020830185611d81565b6128346040830184611d81565b949350505050565b61284581611af8565b82525050565b6000602082019050612860600083018461283c565b92915050565b61286f816118e1565b811461287a57600080fd5b50565b60008151905061288c81612866565b92915050565b6000602082840312156128a8576128a7611852565b5b60006128b68482850161287d565b91505092915050565b7f4552524f525f434f4d504f4e454e545f554e4b4e4f574e000000000000000000600082015250565b60006128f5601783611a39565b9150612900826128bf565b602082019050919050565b60006020820190508181036000830152612924816128e8565b9050919050565b612934816119d5565b811461293f57600080fd5b50565b6000815190506129518161292b565b92915050565b600080fd5b600067ffffffffffffffff82111561297757612976611e50565b5b61298082611a74565b9050602081019050919050565b60006129a061299b8461295c565b611eb0565b9050828152602081018484840111156129bc576129bb612957565b5b6129c7848285611a4a565b509392505050565b600082601f8301126129e4576129e3611fe5565b5b81516129f484826020860161298d565b91505092915050565b600060c08284031215612a1357612a12611e4b565b5b612a1d60c0611eb0565b90506000612a2d848285016121eb565b6000830152506020612a41848285016121eb565b6020830152506040612a5584828501612942565b6040830152506060612a6984828501612299565b6060830152506080612a7d84828501612299565b60808301525060a082015167ffffffffffffffff811115612aa157612aa0611ecb565b5b612aad848285016129cf565b60a08301525092915050565b600060208284031215612acf57612ace611852565b5b600082015167ffffffffffffffff811115612aed57612aec611857565b5b612af9848285016129fd565b91505092915050565b7f4f424a4543545f545950455f494e56414c494400000000000000000000000000600082015250565b6000612b38601383611a39565b9150612b4382612b02565b602082019050919050565b60006020820190508181036000830152612b6781612b2b565b905091905056fea2646970667358221220d1eb2793cb22bb551a155b0f850a3e8096b94a1e3dfe84928e91022181025b2b64736f6c63430008140033",
|
|
689
|
+
"bytecode": "0x60806040523480156200001157600080fd5b50620000546301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b600280546001600160a01b031916331790556200007062000076565b6200012a565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000c75760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001275780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6135ed806200013a6000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c806382678766116100c3578063b88da7591161007c578063b88da75914610486578063caf4e3d414610499578063cc9fc59a146104a1578063cde749f4146104a9578063cf7a1d77146104c3578063e3458d53146104d657600080fd5b806382678766146103e7578063893d20e8146103fa578063946dfcfe14610402578063a3f4df7e14610429578063a745e3df14610453578063b3c650151461046657600080fd5b80634420e486116101155780634420e486146102405780634d459c901461026b5780634f421333146103845780635ab1bd5314610397578063636450f5146103bc578063644c45e0146103cf57600080fd5b806301ffc9a71461015d5780630d8e6e2c1461019f5780630fec111c146101bb578063138461e0146101d157806317d7de7c146101db5780631eff4b221461020b575b600080fd5b61018a61016b366004612857565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b6101a76104e9565b60405162ffffff9091168152602001610196565b6101c3610573565b604051610196929190612951565b6101d96106c6565b005b60408051808201909152600b81526a506f6f6c5365727669636560a81b60208201525b604051610196919061297f565b6102327f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610196565b61025361024e3660046129a7565b6108e8565b6040516001600160601b039091168152602001610196565b6103276102793660046129d5565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915260008051602061359883398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610196565b61018a6103923660046129d5565b610c4f565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610196565b6101d96103ca366004612b0d565b610d02565b600154600160a01b90046001600160601b0316610253565b6101d96103f5366004612b43565b610f9d565b6103a4611112565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed90154610232565b6101fe6040518060400160405280600b81526020016a506f6f6c5365727669636560a81b81525081565b6101d9610461366004612bb0565b61122c565b61046e611386565b6040516001600160401b039091168152602001610196565b6101a7610494366004612c54565b6113a7565b6103a46113f8565b6103a46114b3565b6104b161152b565b60405160ff9091168152602001610196565b6101d96104d1366004612bb0565b6115ae565b6102536104e4366004612c6d565b6116b7565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af415801561054a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e9190612d15565b905090565b61057b612819565b606060007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e001604052806105c76001546001600160601b03600160a01b9091041690565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a00161060f611112565b6001600160a01b0316815260200182600101805461062c90612d32565b80601f016020809104026020016040519081016040528092919081815260200182805461065890612d32565b80156106a55780601f1061067a576101008083540402835291602001916106a5565b820191906000526020600020905b81548152906001019060200180831161068857829003601f168201915b50505050508152506040518060200160405280600081525092509250509091565b6001546040516330b8415f60e01b8152600160a01b9091046001600160601b0316600482015273__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074c9190612d81565b15610793576001546040516316322c0f60e31b81526001600160a01b0382166004820152600160a01b9091046001600160601b031660248201526044015b60405180910390fd5b6001546001600160a01b03166107bc5760405163cf29926160e01b815260040160405180910390fd5b60015460405163c3c5a54760e01b81523060048201819052916001600160a01b03169063c3c5a54790602401602060405180830381865afa158015610805573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108299190612d81565b610851576040516372657a5160e01b81526001600160a01b038216600482015260240161078a565b600154604051636939560f60e11b81526001600160a01b0383811660048301529091169063d272ac1e90602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190612da7565b600160146101000a8154816001600160601b0302191690836001600160601b0316021790555050565b60008180826108f6826119a8565b60ff8116600090815260036020908152604080832054815163379ed74560e21b815291519495506001600160401b0316933393926001600160a01b0388169263de7b5d1492600480830193928290030181865afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190612dc4565b90506109896114b3565b6001600160a01b0316639c12c9c78385846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fb9190612da7565b6040516001600160e01b031960e086901b1681526001600160a01b0390931660048401526001600160401b0390911660248301526001600160601b03166044820152606401602060405180830381865afa158015610a5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a819190612d81565b610ab8576040516351302f8160e01b81526001600160401b03841660048201526001600160a01b038316602482015260440161078a565b33886000610ac5826119a8565b90506000610ad16113f8565b9050610adb612819565b6060610aef8460785b60ff90811691161490565b15610b7757604051638fbc2d8160e01b81526001600160a01b0386811660048301528781166024830152841690638fbc2d81906044015b6000604051808303816000875af1158015610b45573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b6d9190810190612ef8565b9092509050610c21565b610b8284606e610ae4565b15610bbd57604051635d96628960e01b81526001600160a01b0386811660048301528781166024830152841690635d96628990604401610b26565b610bc884608c610ae4565b15610c0357604051637286e5e560e01b81526001600160a01b0386811660048301528781166024830152841690637286e5e590604401610b26565b60405163062839b560e01b815260ff8516600482015260240161078a565b81519c506000610c3083611a1d565b9050610c3d8e8383611abf565b50505050505050505050505050919050565b60008060008051602061359883398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610cd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cfb9190612f5b565b1192915050565b600080610d0f608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d779190612dc4565b8351604051634793b4ab60e01b81526001600160601b0388166004820152919250906000906001600160a01b03841690634793b4ab90602401600060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610df59190810190612fb9565b80516040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610e53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e779190612d81565b610ec35760405162461bcd60e51b815260206004820152601c60248201527f4552524f523a504c532d3031303a42554e444c455f554e4b4e4f574e00000000604482015260640161078a565b80516001600160601b03808416911614610f2a5760405162461bcd60e51b815260206004820152602260248201527f4552524f523a504c532d3031313a42554e444c455f504f4f4c5f4d49534d4154604482015261086960f31b606482015260840161078a565b602081018690526040516307f8b57360e31b81526001600160a01b03851690633fc5ab9890610f62908a90859060ff90600401613138565b600060405180830381600087803b158015610f7c57600080fd5b505af1158015610f90573d6000803e3d6000fd5b5050505050505050505050565b600080610faa608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110129190612dc4565b83516040516355e343a960e01b81526001600160601b0382166004820152919250906000906001600160a01b038416906355e343a99060240161016060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108d919061316d565b606081018990526080810188905260a08101879052604051635ea7f02760e11b81529091506001600160a01b0385169063bd4fe04e906110d6908590859060ff906004016132a4565b600060405180830381600087803b1580156110f057600080fd5b505af1158015611104573d6000803e3d6000fd5b505050505050505050505050565b6001546040516330b8415f60e01b8152600160a01b9091046001600160601b0316600482015260009073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015611177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119b9190612d81565b1561121c57600154604051631c5da14d60e11b8152600160a01b82046001600160601b031660048201526001600160a01b03909116906338bb429a906024015b602060405180830381865afa1580156111f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e9190612dc4565b506002546001600160a01b031690565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61124e6104e9565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561128e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b291906132e9565b6000805160206135788339815191528054600160401b900460ff16806112e5575080546001600160401b03808416911610155b156113035760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b17815561132e8585611df2565b61133783612091565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b600061056e600080516020613578833981519152546001600160401b031690565b600060008051602061359883398151915260010182815481106113cc576113cc613306565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b60008061140d6001546001600160a01b031690565b6001600160a01b031663a3bcd81d61142361152b565b604080516001600160e01b031960e085901b1681526004810191909152600f60448201526e52656769737472795365727669636560881b606482015260ff9091166024820152608401602060405180830381865afa158015611489573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ad9190612dc4565b92915050565b60006114c76001546001600160a01b031690565b6001600160a01b031663a3bcd81d6114dd61152b565b604080516001600160e01b031960e085901b1681526004810191909152600f60448201526e496e7374616e63655365727669636560881b606482015260ff90911660248201526084016111db565b60006115356104e9565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af415801561158a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e919061331c565b6000805160206135788339815191528054600160401b810460ff1615906001600160401b03166000811580156115e15750825b90506000826001600160401b031660011480156115fd5750303b155b90508115801561160b575080155b156116295760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561165357845460ff60401b1916600160401b1785555b61165d8888611df2565b6116678787612099565b83156116ad57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b600080806116c5608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611709573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172d9190612dc4565b90506000836000015190506000604051806101200160405280836001600160601b0316815260200173__$a23651848365a6a5ca15f07b4331037f48$__632bd182d36040518163ffffffff1660e01b81526004016040805180830381865af415801561179d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c19190613339565b815260200189898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250938552505050602082018d90526040820152606081018c9052608081018b905260a001611823600090565b64ffffffffff1681526000602090910152905061183e6113f8565b6001600160a01b031663c2bf08c86040518060e0016040528061185f600090565b6001600160601b03168152602001856001600160601b0316815260200161188460dc90565b60ff16815260200160001515815260200160006001600160a01b031681526020018f6001600160a01b03168152602001846040516020016118c59190613355565b6040516020818303038152906040528152506040518263ffffffff1660e01b81526004016118f39190613368565b6020604051808303816000875af1158015611912573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119369190612da7565b604051633038d34760e11b81529096506001600160a01b03851690636071a68e90611967908990859060040161337b565b600060405180830381600087803b15801561198157600080fd5b505af1158015611995573d6000803e3d6000fd5b5050505050505050509695505050505050565b600080826001600160a01b0316630fec111c6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156119e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a119190810190612ef8565b50604001519392505050565b600080611a326001546001600160a01b031690565b60208401516040516305247a1760e51b81526001600160601b0390911660048201529091506000906001600160a01b0383169063a48f42e090602401600060405180830381865afa158015611a8b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ab3919081019061339d565b60800151949350505050565b600082806020019051810190611ad5919061316d565b6040516357f9680560e01b81529091506001600160a01b038316906357f9680590611b0690879085906004016133d1565b600060405180830381600087803b158015611b2057600080fd5b505af11580156116ad573d6000803e3d6000fd5b611b3c612819565b600154604051636939560f60e11b815233600482015260009182916001600160a01b039091169063d272ac1e90602401602060405180830381865afa158015611b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bad9190612da7565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015611c08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2c9190612d81565b611c785760405162461bcd60e51b815260206004820152601760248201527f4552524f525f434f4d504f4e454e545f554e4b4e4f574e000000000000000000604482015260640161078a565b6001546001600160a01b03166040516305247a1760e51b81526001600160601b03831660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015611cd3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfb919081019061339d565b9250611d1183604001518560ff90811691161490565b611d535760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b604482015260640161078a565b6000611d676001546001600160a01b031690565b60208501516040516305247a1760e51b81526001600160601b0390911660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015611dbc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611de4919081019061339d565b608001519395939450505050565b611dfa6121ee565b6000805160206135988339815191526000611e2a600080516020613578833981519152546001600160401b031690565b90506000611e366104e9565b9050816001600160401b0316600103611e635760028301805462ffffff191662ffffff8316179055611eb1565b600283015462ffffff90811690821611611eb15760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640161078a565b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015611f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f8991906133ef565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906113779083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6101586121ee565b6000805160206135788339815191528054600160401b810460ff1615906001600160401b03166000811580156120cc5750825b90506000826001600160401b031660011480156120e85750303b155b9050811580156120f6575080155b156121145760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561213e57845460ff60401b1916600160401b1785555b600086806020019051810190612154919061340a565b600480546001600160a01b039093166001600160a01b031990931683179055915061217f9082612227565b61218f631b4612f160e31b61237d565b61219e6209196b60e61b61237d565b5083156121e557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b60008051602061357883398151915254600160401b900460ff1661222557604051631afcd79f60e31b815260040160405180910390fd5b565b61223182826123a2565b61223961242b565b606e60005260036020527f0de2b21138735878e0660eef23d1131fad23d66157bfa1c473a82b60c5169926805467ffffffffffffffff19166001600160401b039290921691909117905561228b6124a4565b608c60005260036020527f83339eadc78535e76a031a9a544cf6fa252296becf88992d49fad5f832544a38805467ffffffffffffffff19166001600160401b03929092169190911790556122dd6124e0565b607860005260036020527fe372c44748f4c2908ae7c0a1dc553464478b0394f70953faecd55173b039317c805467ffffffffffffffff19166001600160401b039290921691909117905561232f61251b565b608260005260036020527fc3d073881ce0daff4d900012573fe3b8d5b283519b2f509e59d1b978e7cf0fc5805467ffffffffffffffff19166001600160401b03929092169190911790555050565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b60006123cc60408051808201909152600b81526a506f6f6c5365727669636560a81b602082015290565b6123d461152b565b6040516020016123e5929190613444565b6040516020818303038152906040529050600061240184612556565b905060006124148583603c8488886125c1565b612424631b4612f160e31b61237d565b5050505050565b6040516368aebf7b60e01b8152610190600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024015b602060405180830381865af4158015612480573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e91906132e9565b6040516368aebf7b60e01b815261012c600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b6040516368aebf7b60e01b81526064600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b6040516368aebf7b60e01b815260c8600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b604051636939560f60e11b81526001600160a01b0382166004820181905260009163d272ac1e90602401602060405180830381865afa15801561259d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ad9190612da7565b6126026301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b61260c828761268d565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b8615150217815590506001810161267c83826134b8565b506121e56303fb044760e21b61237d565b600280546001600160a01b0319166001600160a01b0384161790556126b1816126b5565b5050565b6001546001600160a01b0316156126ee5760015460405163fcdbf2d960e01b81526001600160a01b03909116600482015260240161078a565b6001600160a01b0381166127155760405163f5c4d07d60e01b815260040160405180910390fd5b806001600160a01b03163b60000361274b5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161078a565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e14a543960e01b60048201526301ffc9a790602401602060405180830381865afa9250505080156127c5575060408051601f3d908101601f191682019092526127c291810190612d81565b60015b6127ed5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161078a565b806126b15760405163fdeac91f60e01b81526001600160a01b038316600482015260240161078a565b50565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60006020828403121561286957600080fd5b81356001600160e01b03198116811461288157600080fd5b9392505050565b60005b838110156128a357818101518382015260200161288b565b50506000910152565b600081518084526128c4816020860160208601612888565b601f01601f19169290920160200192915050565b60006001600160601b038083511684528060208401511660208501525060ff6040830151166040840152606082015115156060840152608082015160018060a01b0380821660808601528060a08501511660a0860152505060c082015160e060c085015261294960e08501826128ac565b949350505050565b60408152600061296460408301856128d8565b828103602084015261297681856128ac565b95945050505050565b60208152600061288160208301846128ac565b6001600160a01b038116811461281657600080fd5b6000602082840312156129b957600080fd5b813561288181612992565b62ffffff8116811461281657600080fd5b6000602082840312156129e757600080fd5b8135612881816129c4565b6001600160601b038116811461281657600080fd5b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715612a3f57612a3f612a07565b60405290565b60405160e081016001600160401b0381118282101715612a3f57612a3f612a07565b60405161012081016001600160401b0381118282101715612a3f57612a3f612a07565b60405161010081016001600160401b0381118282101715612a3f57612a3f612a07565b604051601f8201601f191681016001600160401b0381118282101715612ad557612ad5612a07565b604052919050565b600060408284031215612aef57600080fd5b612af7612a1d565b9050813581526020820135602082015292915050565b60008060608385031215612b2057600080fd5b8235612b2b816129f2565b9150612b3a8460208501612add565b90509250929050565b600080600060c08486031215612b5857600080fd5b612b628585612add565b9250612b718560408601612add565b9150612b808560808601612add565b90509250925092565b60006001600160401b03821115612ba257612ba2612a07565b50601f01601f191660200190565b600080600060608486031215612bc557600080fd5b8335612bd081612992565b92506020840135612be081612992565b915060408401356001600160401b03811115612bfb57600080fd5b8401601f81018613612c0c57600080fd5b8035612c1f612c1a82612b89565b612aad565b818152876020838501011115612c3457600080fd5b816020840160208301376000602083830101528093505050509250925092565b600060208284031215612c6657600080fd5b5035919050565b60008060008060008060c08789031215612c8657600080fd5b8635612c9181612992565b9550612ca08860208901612add565b9450606087013593506080870135925060a08701356001600160401b0380821115612cca57600080fd5b818901915089601f830112612cde57600080fd5b813581811115612ced57600080fd5b8a6020828501011115612cff57600080fd5b6020830194508093505050509295509295509295565b600060208284031215612d2757600080fd5b8151612881816129c4565b600181811c90821680612d4657607f821691505b602082108103612d6657634e487b7160e01b600052602260045260246000fd5b50919050565b80518015158114612d7c57600080fd5b919050565b600060208284031215612d9357600080fd5b61288182612d6c565b8051612d7c816129f2565b600060208284031215612db957600080fd5b8151612881816129f2565b600060208284031215612dd657600080fd5b815161288181612992565b60ff8116811461281657600080fd5b8051612d7c81612de1565b8051612d7c81612992565b600082601f830112612e1757600080fd5b8151612e25612c1a82612b89565b818152846020838601011115612e3a57600080fd5b612949826020830160208701612888565b600060e08284031215612e5d57600080fd5b612e65612a45565b9050612e7082612d9c565b8152612e7e60208301612d9c565b6020820152612e8f60408301612df0565b6040820152612ea060608301612d6c565b6060820152612eb160808301612dfb565b6080820152612ec260a08301612dfb565b60a082015260c08201516001600160401b03811115612ee057600080fd5b612eec84828501612e06565b60c08301525092915050565b60008060408385031215612f0b57600080fd5b82516001600160401b0380821115612f2257600080fd5b612f2e86838701612e4b565b93506020850151915080821115612f4457600080fd5b50612f5185828601612e06565b9150509250929050565b600060208284031215612f6d57600080fd5b5051919050565b600060408284031215612f8657600080fd5b612f8e612a1d565b9050815181526020820151602082015292915050565b805164ffffffffff81168114612d7c57600080fd5b600060208284031215612fcb57600080fd5b81516001600160401b0380821115612fe257600080fd5b908301906101408286031215612ff757600080fd5b612fff612a67565b61300883612d9c565b81526130178660208501612f74565b602082015260608301518281111561302e57600080fd5b61303a87828601612e06565b6040830152506080830151606082015260a0830151608082015260c083015160a082015260e083015160c08201526101009150613078828401612fa4565b60e082015261308a6101208401612fa4565b91810191909152949350505050565b80516001600160601b0316825260006101406020838101518051868301529081015160408601525060408301518160608601526130d8828601826128ac565b91505060608301516080850152608083015160a085015260a083015160c085015260c083015160e085015260e083015161010061311d8187018364ffffffffff169052565b84015164ffffffffff81166101208701529050509392505050565b6001600160601b038416815260606020820152600061315a6060830185613099565b905060ff83166040830152949350505050565b6000610160828403121561318057600080fd5b613188612a8a565b61319183612d9c565b815261319f60208401612dfb565b6020820152604083015160408201526131bb8460608501612f74565b60608201526131cd8460a08501612f74565b60808201526131df8460e08501612f74565b60a08201526131f16101208401612d6c565b60c08201526132036101408401612dfb565b60e08201529392505050565b80516001600160601b031682526020808201516001600160a01b0390811682850152604080840151908501526060808401518051918601919091529182015160808501526080830151805160a0860152602081015160c0860152915060a0830151805160e08601526020810151610100860152915060c083015115156101208501528060e08401511661014085015250505050565b6001600160601b03841681526101a081016132c2602083018561320f565b60ff8316610180830152949350505050565b6001600160401b038116811461281657600080fd5b6000602082840312156132fb57600080fd5b8151612881816132d4565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561332e57600080fd5b815161288181612de1565b60006040828403121561334b57600080fd5b6128818383612f74565b6020815260006128816020830184613099565b60208152600061288160208301846128d8565b6001600160601b03831681526040602082015260006129496040830184613099565b6000602082840312156133af57600080fd5b81516001600160401b038111156133c557600080fd5b61294984828501612e4b565b6001600160601b03831681526101808101612881602083018461320f565b60006020828403121561340157600080fd5b61288182612fa4565b6000806040838503121561341d57600080fd5b825161342881612992565b602084015190925061343981612992565b809150509250929050565b60408152600061345760408301856128ac565b905060ff831660208301529392505050565b601f8211156134b357600081815260208120601f850160051c810160208610156134905750805b601f850160051c820191505b818110156134af5782815560010161349c565b5050505b505050565b81516001600160401b038111156134d1576134d1612a07565b6134e5816134df8454612d32565b84613469565b602080601f83116001811461351a57600084156135025750858301515b600019600386901b1c1916600185901b1785556134af565b600085815260208120601f198616915b828110156135495788860151825594840194600190910190840161352a565b50858210156135675787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122062a20d06f1ee80f74c295ac834ffa9bdcf6cd62b2530766172cb435fa9ddd49364736f6c63430008140033",
|
|
690
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c806382678766116100c3578063b88da7591161007c578063b88da75914610486578063caf4e3d414610499578063cc9fc59a146104a1578063cde749f4146104a9578063cf7a1d77146104c3578063e3458d53146104d657600080fd5b806382678766146103e7578063893d20e8146103fa578063946dfcfe14610402578063a3f4df7e14610429578063a745e3df14610453578063b3c650151461046657600080fd5b80634420e486116101155780634420e486146102405780634d459c901461026b5780634f421333146103845780635ab1bd5314610397578063636450f5146103bc578063644c45e0146103cf57600080fd5b806301ffc9a71461015d5780630d8e6e2c1461019f5780630fec111c146101bb578063138461e0146101d157806317d7de7c146101db5780631eff4b221461020b575b600080fd5b61018a61016b366004612857565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b6101a76104e9565b60405162ffffff9091168152602001610196565b6101c3610573565b604051610196929190612951565b6101d96106c6565b005b60408051808201909152600b81526a506f6f6c5365727669636560a81b60208201525b604051610196919061297f565b6102327f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610196565b61025361024e3660046129a7565b6108e8565b6040516001600160601b039091168152602001610196565b6103276102793660046129d5565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915260008051602061359883398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610196565b61018a6103923660046129d5565b610c4f565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610196565b6101d96103ca366004612b0d565b610d02565b600154600160a01b90046001600160601b0316610253565b6101d96103f5366004612b43565b610f9d565b6103a4611112565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed90154610232565b6101fe6040518060400160405280600b81526020016a506f6f6c5365727669636560a81b81525081565b6101d9610461366004612bb0565b61122c565b61046e611386565b6040516001600160401b039091168152602001610196565b6101a7610494366004612c54565b6113a7565b6103a46113f8565b6103a46114b3565b6104b161152b565b60405160ff9091168152602001610196565b6101d96104d1366004612bb0565b6115ae565b6102536104e4366004612c6d565b6116b7565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af415801561054a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e9190612d15565b905090565b61057b612819565b606060007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e001604052806105c76001546001600160601b03600160a01b9091041690565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a00161060f611112565b6001600160a01b0316815260200182600101805461062c90612d32565b80601f016020809104026020016040519081016040528092919081815260200182805461065890612d32565b80156106a55780601f1061067a576101008083540402835291602001916106a5565b820191906000526020600020905b81548152906001019060200180831161068857829003601f168201915b50505050508152506040518060200160405280600081525092509250509091565b6001546040516330b8415f60e01b8152600160a01b9091046001600160601b0316600482015273__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074c9190612d81565b15610793576001546040516316322c0f60e31b81526001600160a01b0382166004820152600160a01b9091046001600160601b031660248201526044015b60405180910390fd5b6001546001600160a01b03166107bc5760405163cf29926160e01b815260040160405180910390fd5b60015460405163c3c5a54760e01b81523060048201819052916001600160a01b03169063c3c5a54790602401602060405180830381865afa158015610805573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108299190612d81565b610851576040516372657a5160e01b81526001600160a01b038216600482015260240161078a565b600154604051636939560f60e11b81526001600160a01b0383811660048301529091169063d272ac1e90602401602060405180830381865afa15801561089b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bf9190612da7565b600160146101000a8154816001600160601b0302191690836001600160601b0316021790555050565b60008180826108f6826119a8565b60ff8116600090815260036020908152604080832054815163379ed74560e21b815291519495506001600160401b0316933393926001600160a01b0388169263de7b5d1492600480830193928290030181865afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190612dc4565b90506109896114b3565b6001600160a01b0316639c12c9c78385846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fb9190612da7565b6040516001600160e01b031960e086901b1681526001600160a01b0390931660048401526001600160401b0390911660248301526001600160601b03166044820152606401602060405180830381865afa158015610a5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a819190612d81565b610ab8576040516351302f8160e01b81526001600160401b03841660048201526001600160a01b038316602482015260440161078a565b33886000610ac5826119a8565b90506000610ad16113f8565b9050610adb612819565b6060610aef8460785b60ff90811691161490565b15610b7757604051638fbc2d8160e01b81526001600160a01b0386811660048301528781166024830152841690638fbc2d81906044015b6000604051808303816000875af1158015610b45573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b6d9190810190612ef8565b9092509050610c21565b610b8284606e610ae4565b15610bbd57604051635d96628960e01b81526001600160a01b0386811660048301528781166024830152841690635d96628990604401610b26565b610bc884608c610ae4565b15610c0357604051637286e5e560e01b81526001600160a01b0386811660048301528781166024830152841690637286e5e590604401610b26565b60405163062839b560e01b815260ff8516600482015260240161078a565b81519c506000610c3083611a1d565b9050610c3d8e8383611abf565b50505050505050505050505050919050565b60008060008051602061359883398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610cd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cfb9190612f5b565b1192915050565b600080610d0f608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d779190612dc4565b8351604051634793b4ab60e01b81526001600160601b0388166004820152919250906000906001600160a01b03841690634793b4ab90602401600060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610df59190810190612fb9565b80516040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610e53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e779190612d81565b610ec35760405162461bcd60e51b815260206004820152601c60248201527f4552524f523a504c532d3031303a42554e444c455f554e4b4e4f574e00000000604482015260640161078a565b80516001600160601b03808416911614610f2a5760405162461bcd60e51b815260206004820152602260248201527f4552524f523a504c532d3031313a42554e444c455f504f4f4c5f4d49534d4154604482015261086960f31b606482015260840161078a565b602081018690526040516307f8b57360e31b81526001600160a01b03851690633fc5ab9890610f62908a90859060ff90600401613138565b600060405180830381600087803b158015610f7c57600080fd5b505af1158015610f90573d6000803e3d6000fd5b5050505050505050505050565b600080610faa608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110129190612dc4565b83516040516355e343a960e01b81526001600160601b0382166004820152919250906000906001600160a01b038416906355e343a99060240161016060405180830381865afa158015611069573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108d919061316d565b606081018990526080810188905260a08101879052604051635ea7f02760e11b81529091506001600160a01b0385169063bd4fe04e906110d6908590859060ff906004016132a4565b600060405180830381600087803b1580156110f057600080fd5b505af1158015611104573d6000803e3d6000fd5b505050505050505050505050565b6001546040516330b8415f60e01b8152600160a01b9091046001600160601b0316600482015260009073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015611177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119b9190612d81565b1561121c57600154604051631c5da14d60e11b8152600160a01b82046001600160601b031660048201526001600160a01b03909116906338bb429a906024015b602060405180830381865afa1580156111f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e9190612dc4565b506002546001600160a01b031690565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61124e6104e9565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561128e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b291906132e9565b6000805160206135788339815191528054600160401b900460ff16806112e5575080546001600160401b03808416911610155b156113035760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b17815561132e8585611df2565b61133783612091565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b600061056e600080516020613578833981519152546001600160401b031690565b600060008051602061359883398151915260010182815481106113cc576113cc613306565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b60008061140d6001546001600160a01b031690565b6001600160a01b031663a3bcd81d61142361152b565b604080516001600160e01b031960e085901b1681526004810191909152600f60448201526e52656769737472795365727669636560881b606482015260ff9091166024820152608401602060405180830381865afa158015611489573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ad9190612dc4565b92915050565b60006114c76001546001600160a01b031690565b6001600160a01b031663a3bcd81d6114dd61152b565b604080516001600160e01b031960e085901b1681526004810191909152600f60448201526e496e7374616e63655365727669636560881b606482015260ff90911660248201526084016111db565b60006115356104e9565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af415801561158a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e919061331c565b6000805160206135788339815191528054600160401b810460ff1615906001600160401b03166000811580156115e15750825b90506000826001600160401b031660011480156115fd5750303b155b90508115801561160b575080155b156116295760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561165357845460ff60401b1916600160401b1785555b61165d8888611df2565b6116678787612099565b83156116ad57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b600080806116c5608c611b34565b915091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611709573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172d9190612dc4565b90506000836000015190506000604051806101200160405280836001600160601b0316815260200173__$a23651848365a6a5ca15f07b4331037f48$__632bd182d36040518163ffffffff1660e01b81526004016040805180830381865af415801561179d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c19190613339565b815260200189898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250938552505050602082018d90526040820152606081018c9052608081018b905260a001611823600090565b64ffffffffff1681526000602090910152905061183e6113f8565b6001600160a01b031663c2bf08c86040518060e0016040528061185f600090565b6001600160601b03168152602001856001600160601b0316815260200161188460dc90565b60ff16815260200160001515815260200160006001600160a01b031681526020018f6001600160a01b03168152602001846040516020016118c59190613355565b6040516020818303038152906040528152506040518263ffffffff1660e01b81526004016118f39190613368565b6020604051808303816000875af1158015611912573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119369190612da7565b604051633038d34760e11b81529096506001600160a01b03851690636071a68e90611967908990859060040161337b565b600060405180830381600087803b15801561198157600080fd5b505af1158015611995573d6000803e3d6000fd5b5050505050505050509695505050505050565b600080826001600160a01b0316630fec111c6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156119e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a119190810190612ef8565b50604001519392505050565b600080611a326001546001600160a01b031690565b60208401516040516305247a1760e51b81526001600160601b0390911660048201529091506000906001600160a01b0383169063a48f42e090602401600060405180830381865afa158015611a8b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ab3919081019061339d565b60800151949350505050565b600082806020019051810190611ad5919061316d565b6040516357f9680560e01b81529091506001600160a01b038316906357f9680590611b0690879085906004016133d1565b600060405180830381600087803b158015611b2057600080fd5b505af11580156116ad573d6000803e3d6000fd5b611b3c612819565b600154604051636939560f60e11b815233600482015260009182916001600160a01b039091169063d272ac1e90602401602060405180830381865afa158015611b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bad9190612da7565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015611c08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2c9190612d81565b611c785760405162461bcd60e51b815260206004820152601760248201527f4552524f525f434f4d504f4e454e545f554e4b4e4f574e000000000000000000604482015260640161078a565b6001546001600160a01b03166040516305247a1760e51b81526001600160601b03831660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015611cd3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611cfb919081019061339d565b9250611d1183604001518560ff90811691161490565b611d535760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b604482015260640161078a565b6000611d676001546001600160a01b031690565b60208501516040516305247a1760e51b81526001600160601b0390911660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015611dbc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611de4919081019061339d565b608001519395939450505050565b611dfa6121ee565b6000805160206135988339815191526000611e2a600080516020613578833981519152546001600160401b031690565b90506000611e366104e9565b9050816001600160401b0316600103611e635760028301805462ffffff191662ffffff8316179055611eb1565b600283015462ffffff90811690821611611eb15760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640161078a565b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015611f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f8991906133ef565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906113779083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6101586121ee565b6000805160206135788339815191528054600160401b810460ff1615906001600160401b03166000811580156120cc5750825b90506000826001600160401b031660011480156120e85750303b155b9050811580156120f6575080155b156121145760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561213e57845460ff60401b1916600160401b1785555b600086806020019051810190612154919061340a565b600480546001600160a01b039093166001600160a01b031990931683179055915061217f9082612227565b61218f631b4612f160e31b61237d565b61219e6209196b60e61b61237d565b5083156121e557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b60008051602061357883398151915254600160401b900460ff1661222557604051631afcd79f60e31b815260040160405180910390fd5b565b61223182826123a2565b61223961242b565b606e60005260036020527f0de2b21138735878e0660eef23d1131fad23d66157bfa1c473a82b60c5169926805467ffffffffffffffff19166001600160401b039290921691909117905561228b6124a4565b608c60005260036020527f83339eadc78535e76a031a9a544cf6fa252296becf88992d49fad5f832544a38805467ffffffffffffffff19166001600160401b03929092169190911790556122dd6124e0565b607860005260036020527fe372c44748f4c2908ae7c0a1dc553464478b0394f70953faecd55173b039317c805467ffffffffffffffff19166001600160401b039290921691909117905561232f61251b565b608260005260036020527fc3d073881ce0daff4d900012573fe3b8d5b283519b2f509e59d1b978e7cf0fc5805467ffffffffffffffff19166001600160401b03929092169190911790555050565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b60006123cc60408051808201909152600b81526a506f6f6c5365727669636560a81b602082015290565b6123d461152b565b6040516020016123e5929190613444565b6040516020818303038152906040529050600061240184612556565b905060006124148583603c8488886125c1565b612424631b4612f160e31b61237d565b5050505050565b6040516368aebf7b60e01b8152610190600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024015b602060405180830381865af4158015612480573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e91906132e9565b6040516368aebf7b60e01b815261012c600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b6040516368aebf7b60e01b81526064600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b6040516368aebf7b60e01b815260c8600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401612463565b604051636939560f60e11b81526001600160a01b0382166004820181905260009163d272ac1e90602401602060405180830381865afa15801561259d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ad9190612da7565b6126026301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b61260c828761268d565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b8615150217815590506001810161267c83826134b8565b506121e56303fb044760e21b61237d565b600280546001600160a01b0319166001600160a01b0384161790556126b1816126b5565b5050565b6001546001600160a01b0316156126ee5760015460405163fcdbf2d960e01b81526001600160a01b03909116600482015260240161078a565b6001600160a01b0381166127155760405163f5c4d07d60e01b815260040160405180910390fd5b806001600160a01b03163b60000361274b5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161078a565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e14a543960e01b60048201526301ffc9a790602401602060405180830381865afa9250505080156127c5575060408051601f3d908101601f191682019092526127c291810190612d81565b60015b6127ed5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161078a565b806126b15760405163fdeac91f60e01b81526001600160a01b038316600482015260240161078a565b50565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60006020828403121561286957600080fd5b81356001600160e01b03198116811461288157600080fd5b9392505050565b60005b838110156128a357818101518382015260200161288b565b50506000910152565b600081518084526128c4816020860160208601612888565b601f01601f19169290920160200192915050565b60006001600160601b038083511684528060208401511660208501525060ff6040830151166040840152606082015115156060840152608082015160018060a01b0380821660808601528060a08501511660a0860152505060c082015160e060c085015261294960e08501826128ac565b949350505050565b60408152600061296460408301856128d8565b828103602084015261297681856128ac565b95945050505050565b60208152600061288160208301846128ac565b6001600160a01b038116811461281657600080fd5b6000602082840312156129b957600080fd5b813561288181612992565b62ffffff8116811461281657600080fd5b6000602082840312156129e757600080fd5b8135612881816129c4565b6001600160601b038116811461281657600080fd5b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715612a3f57612a3f612a07565b60405290565b60405160e081016001600160401b0381118282101715612a3f57612a3f612a07565b60405161012081016001600160401b0381118282101715612a3f57612a3f612a07565b60405161010081016001600160401b0381118282101715612a3f57612a3f612a07565b604051601f8201601f191681016001600160401b0381118282101715612ad557612ad5612a07565b604052919050565b600060408284031215612aef57600080fd5b612af7612a1d565b9050813581526020820135602082015292915050565b60008060608385031215612b2057600080fd5b8235612b2b816129f2565b9150612b3a8460208501612add565b90509250929050565b600080600060c08486031215612b5857600080fd5b612b628585612add565b9250612b718560408601612add565b9150612b808560808601612add565b90509250925092565b60006001600160401b03821115612ba257612ba2612a07565b50601f01601f191660200190565b600080600060608486031215612bc557600080fd5b8335612bd081612992565b92506020840135612be081612992565b915060408401356001600160401b03811115612bfb57600080fd5b8401601f81018613612c0c57600080fd5b8035612c1f612c1a82612b89565b612aad565b818152876020838501011115612c3457600080fd5b816020840160208301376000602083830101528093505050509250925092565b600060208284031215612c6657600080fd5b5035919050565b60008060008060008060c08789031215612c8657600080fd5b8635612c9181612992565b9550612ca08860208901612add565b9450606087013593506080870135925060a08701356001600160401b0380821115612cca57600080fd5b818901915089601f830112612cde57600080fd5b813581811115612ced57600080fd5b8a6020828501011115612cff57600080fd5b6020830194508093505050509295509295509295565b600060208284031215612d2757600080fd5b8151612881816129c4565b600181811c90821680612d4657607f821691505b602082108103612d6657634e487b7160e01b600052602260045260246000fd5b50919050565b80518015158114612d7c57600080fd5b919050565b600060208284031215612d9357600080fd5b61288182612d6c565b8051612d7c816129f2565b600060208284031215612db957600080fd5b8151612881816129f2565b600060208284031215612dd657600080fd5b815161288181612992565b60ff8116811461281657600080fd5b8051612d7c81612de1565b8051612d7c81612992565b600082601f830112612e1757600080fd5b8151612e25612c1a82612b89565b818152846020838601011115612e3a57600080fd5b612949826020830160208701612888565b600060e08284031215612e5d57600080fd5b612e65612a45565b9050612e7082612d9c565b8152612e7e60208301612d9c565b6020820152612e8f60408301612df0565b6040820152612ea060608301612d6c565b6060820152612eb160808301612dfb565b6080820152612ec260a08301612dfb565b60a082015260c08201516001600160401b03811115612ee057600080fd5b612eec84828501612e06565b60c08301525092915050565b60008060408385031215612f0b57600080fd5b82516001600160401b0380821115612f2257600080fd5b612f2e86838701612e4b565b93506020850151915080821115612f4457600080fd5b50612f5185828601612e06565b9150509250929050565b600060208284031215612f6d57600080fd5b5051919050565b600060408284031215612f8657600080fd5b612f8e612a1d565b9050815181526020820151602082015292915050565b805164ffffffffff81168114612d7c57600080fd5b600060208284031215612fcb57600080fd5b81516001600160401b0380821115612fe257600080fd5b908301906101408286031215612ff757600080fd5b612fff612a67565b61300883612d9c565b81526130178660208501612f74565b602082015260608301518281111561302e57600080fd5b61303a87828601612e06565b6040830152506080830151606082015260a0830151608082015260c083015160a082015260e083015160c08201526101009150613078828401612fa4565b60e082015261308a6101208401612fa4565b91810191909152949350505050565b80516001600160601b0316825260006101406020838101518051868301529081015160408601525060408301518160608601526130d8828601826128ac565b91505060608301516080850152608083015160a085015260a083015160c085015260c083015160e085015260e083015161010061311d8187018364ffffffffff169052565b84015164ffffffffff81166101208701529050509392505050565b6001600160601b038416815260606020820152600061315a6060830185613099565b905060ff83166040830152949350505050565b6000610160828403121561318057600080fd5b613188612a8a565b61319183612d9c565b815261319f60208401612dfb565b6020820152604083015160408201526131bb8460608501612f74565b60608201526131cd8460a08501612f74565b60808201526131df8460e08501612f74565b60a08201526131f16101208401612d6c565b60c08201526132036101408401612dfb565b60e08201529392505050565b80516001600160601b031682526020808201516001600160a01b0390811682850152604080840151908501526060808401518051918601919091529182015160808501526080830151805160a0860152602081015160c0860152915060a0830151805160e08601526020810151610100860152915060c083015115156101208501528060e08401511661014085015250505050565b6001600160601b03841681526101a081016132c2602083018561320f565b60ff8316610180830152949350505050565b6001600160401b038116811461281657600080fd5b6000602082840312156132fb57600080fd5b8151612881816132d4565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561332e57600080fd5b815161288181612de1565b60006040828403121561334b57600080fd5b6128818383612f74565b6020815260006128816020830184613099565b60208152600061288160208301846128d8565b6001600160601b03831681526040602082015260006129496040830184613099565b6000602082840312156133af57600080fd5b81516001600160401b038111156133c557600080fd5b61294984828501612e4b565b6001600160601b03831681526101808101612881602083018461320f565b60006020828403121561340157600080fd5b61288182612fa4565b6000806040838503121561341d57600080fd5b825161342881612992565b602084015190925061343981612992565b809150509250929050565b60408152600061345760408301856128ac565b905060ff831660208301529392505050565b601f8211156134b357600081815260208120601f850160051c810160208610156134905750805b601f850160051c820191505b818110156134af5782815560010161349c565b5050505b505050565b81516001600160401b038111156134d1576134d1612a07565b6134e5816134df8454612d32565b84613469565b602080601f83116001811461351a57600084156135025750858301515b600019600386901b1c1916600185901b1785556134af565b600085815260208120601f198616915b828110156135495788860151825594840194600190910190840161352a565b50858210156135675787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122062a20d06f1ee80f74c295ac834ffa9bdcf6cd62b2530766172cb435fa9ddd49364736f6c63430008140033",
|
|
403
691
|
"linkReferences": {
|
|
404
692
|
"contracts/types/Blocknumber.sol": {
|
|
405
693
|
"BlocknumberLib": [
|
|
406
694
|
{
|
|
407
695
|
"length": 20,
|
|
408
|
-
"start":
|
|
409
|
-
}
|
|
696
|
+
"start": 3543
|
|
697
|
+
}
|
|
698
|
+
]
|
|
699
|
+
},
|
|
700
|
+
"contracts/types/Fee.sol": {
|
|
701
|
+
"FeeLib": [
|
|
410
702
|
{
|
|
411
703
|
"length": 20,
|
|
412
|
-
"start":
|
|
704
|
+
"start": 6289
|
|
413
705
|
}
|
|
414
706
|
]
|
|
415
707
|
},
|
|
@@ -417,41 +709,63 @@
|
|
|
417
709
|
"NftIdLib": [
|
|
418
710
|
{
|
|
419
711
|
"length": 20,
|
|
420
|
-
"start":
|
|
712
|
+
"start": 2088
|
|
713
|
+
},
|
|
714
|
+
{
|
|
715
|
+
"length": 20,
|
|
716
|
+
"start": 3923
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
"length": 20,
|
|
720
|
+
"start": 4727
|
|
721
|
+
},
|
|
722
|
+
{
|
|
723
|
+
"length": 20,
|
|
724
|
+
"start": 7432
|
|
421
725
|
}
|
|
422
726
|
]
|
|
423
727
|
},
|
|
424
|
-
"contracts/types/
|
|
425
|
-
"
|
|
728
|
+
"contracts/types/RoleId.sol": {
|
|
729
|
+
"RoleIdLib": [
|
|
426
730
|
{
|
|
427
731
|
"length": 20,
|
|
428
|
-
"start":
|
|
429
|
-
}
|
|
430
|
-
],
|
|
431
|
-
"VersionPartLib": [
|
|
732
|
+
"start": 9599
|
|
733
|
+
},
|
|
432
734
|
{
|
|
433
735
|
"length": 20,
|
|
434
|
-
"start":
|
|
736
|
+
"start": 9720
|
|
435
737
|
},
|
|
436
738
|
{
|
|
437
739
|
"length": 20,
|
|
438
|
-
"start":
|
|
740
|
+
"start": 9779
|
|
439
741
|
},
|
|
440
742
|
{
|
|
441
743
|
"length": 20,
|
|
442
|
-
"start":
|
|
443
|
-
}
|
|
744
|
+
"start": 9838
|
|
745
|
+
}
|
|
746
|
+
]
|
|
747
|
+
},
|
|
748
|
+
"contracts/types/Timestamp.sol": {
|
|
749
|
+
"TimestampLib": [
|
|
444
750
|
{
|
|
445
751
|
"length": 20,
|
|
446
|
-
"start":
|
|
752
|
+
"start": 8293
|
|
753
|
+
}
|
|
754
|
+
]
|
|
755
|
+
},
|
|
756
|
+
"contracts/types/Version.sol": {
|
|
757
|
+
"VersionLib": [
|
|
758
|
+
{
|
|
759
|
+
"length": 20,
|
|
760
|
+
"start": 1610
|
|
447
761
|
},
|
|
448
762
|
{
|
|
449
763
|
"length": 20,
|
|
450
|
-
"start":
|
|
764
|
+
"start": 4968
|
|
451
765
|
},
|
|
452
766
|
{
|
|
453
767
|
"length": 20,
|
|
454
|
-
"start":
|
|
768
|
+
"start": 5770
|
|
455
769
|
}
|
|
456
770
|
]
|
|
457
771
|
}
|
|
@@ -461,7 +775,15 @@
|
|
|
461
775
|
"BlocknumberLib": [
|
|
462
776
|
{
|
|
463
777
|
"length": 20,
|
|
464
|
-
"start":
|
|
778
|
+
"start": 3229
|
|
779
|
+
}
|
|
780
|
+
]
|
|
781
|
+
},
|
|
782
|
+
"contracts/types/Fee.sol": {
|
|
783
|
+
"FeeLib": [
|
|
784
|
+
{
|
|
785
|
+
"length": 20,
|
|
786
|
+
"start": 5975
|
|
465
787
|
}
|
|
466
788
|
]
|
|
467
789
|
},
|
|
@@ -469,29 +791,63 @@
|
|
|
469
791
|
"NftIdLib": [
|
|
470
792
|
{
|
|
471
793
|
"length": 20,
|
|
472
|
-
"start":
|
|
794
|
+
"start": 1774
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
"length": 20,
|
|
798
|
+
"start": 3609
|
|
799
|
+
},
|
|
800
|
+
{
|
|
801
|
+
"length": 20,
|
|
802
|
+
"start": 4413
|
|
803
|
+
},
|
|
804
|
+
{
|
|
805
|
+
"length": 20,
|
|
806
|
+
"start": 7118
|
|
473
807
|
}
|
|
474
808
|
]
|
|
475
809
|
},
|
|
476
|
-
"contracts/types/
|
|
477
|
-
"
|
|
810
|
+
"contracts/types/RoleId.sol": {
|
|
811
|
+
"RoleIdLib": [
|
|
812
|
+
{
|
|
813
|
+
"length": 20,
|
|
814
|
+
"start": 9285
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
"length": 20,
|
|
818
|
+
"start": 9406
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
"length": 20,
|
|
822
|
+
"start": 9465
|
|
823
|
+
},
|
|
478
824
|
{
|
|
479
825
|
"length": 20,
|
|
480
|
-
"start":
|
|
826
|
+
"start": 9524
|
|
481
827
|
}
|
|
482
|
-
]
|
|
483
|
-
|
|
828
|
+
]
|
|
829
|
+
},
|
|
830
|
+
"contracts/types/Timestamp.sol": {
|
|
831
|
+
"TimestampLib": [
|
|
832
|
+
{
|
|
833
|
+
"length": 20,
|
|
834
|
+
"start": 7979
|
|
835
|
+
}
|
|
836
|
+
]
|
|
837
|
+
},
|
|
838
|
+
"contracts/types/Version.sol": {
|
|
839
|
+
"VersionLib": [
|
|
484
840
|
{
|
|
485
841
|
"length": 20,
|
|
486
|
-
"start":
|
|
842
|
+
"start": 1296
|
|
487
843
|
},
|
|
488
844
|
{
|
|
489
845
|
"length": 20,
|
|
490
|
-
"start":
|
|
846
|
+
"start": 4654
|
|
491
847
|
},
|
|
492
848
|
{
|
|
493
849
|
"length": 20,
|
|
494
|
-
"start":
|
|
850
|
+
"start": 5456
|
|
495
851
|
}
|
|
496
852
|
]
|
|
497
853
|
}
|