@etherisc/gif-next 0.0.2-f2b0fa2-473 → 0.0.2-f2df3e2-873
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +75 -14
- package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
- package/artifacts/contracts/components/Component.sol/Component.json +842 -0
- package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/components/Distribution.sol/Distribution.json +954 -219
- package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +4 -0
- package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → components/IComponent.sol/IComponent.json} +303 -164
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +848 -31
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +864 -49
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +682 -9
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/components/Pool.sol/Pool.json +849 -247
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/components/Product.sol/Product.json +637 -224
- package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
- package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +778 -0
- package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +4 -0
- package/artifacts/contracts/instance/{AccessManagedSimple.sol/AccessManagedSimple.json → Cloneable.sol/Cloneable.json} +91 -2
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +2444 -184
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +368 -156
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +1033 -1216
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +593 -180
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +357 -211
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +653 -216
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +392 -75
- package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +4 -0
- package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +256 -0
- package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +4 -0
- package/artifacts/contracts/instance/base/{ComponentServiceBase.sol/ComponentServiceBase.json → ComponentService.sol/ComponentService.json} +276 -150
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +40 -10
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +71 -45
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +1060 -0
- package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +681 -0
- package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +1266 -0
- package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +725 -0
- package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +1040 -0
- package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +685 -0
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +1774 -0
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +793 -0
- package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +627 -0
- package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +686 -0
- package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +602 -0
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +804 -160
- package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +937 -0
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +437 -154
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +90 -391
- package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +1511 -0
- package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +741 -0
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +1237 -0
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +661 -0
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +840 -0
- package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +653 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +373 -61
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +223 -229
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +333 -188
- package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +285 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +227 -330
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +304 -138
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +559 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +498 -0
- package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +40 -29
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +129 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +21 -34
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/{experiment/inheritance/IB.sol/IB.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +18 -20
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +86 -172
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +120 -27
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +248 -0
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +294 -61
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +129 -51
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +84 -0
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +191 -163
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +2 -152
- package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
- package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +129 -51
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +6 -6
- package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
- package/artifacts/contracts/test/TestService.sol/TestService.json +210 -214
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +8 -190
- package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
- package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
- package/artifacts/contracts/types/Amount.sol/AmountLib.json +185 -0
- 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/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
- package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +179 -0
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/types/Fee.sol/FeeLib.json +40 -9
- package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/types/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +26 -3
- package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +1 -1
- 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/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
- package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +209 -0
- package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/types/Referral.sol/ReferralLib.json +23 -4
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
- package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -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 +38 -7
- package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/types/UFixed.sol/MathLib.json +2 -2
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +2 -2
- package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -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/Component.sol +253 -0
- package/contracts/components/Distribution.sol +204 -86
- package/contracts/components/IComponent.sol +76 -0
- package/contracts/components/IDistributionComponent.sol +44 -16
- package/contracts/components/IPoolComponent.sol +88 -37
- package/contracts/components/IProductComponent.sol +10 -5
- package/contracts/components/Pool.sol +224 -181
- package/contracts/components/Product.sol +249 -175
- package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +13 -0
- package/contracts/instance/BundleManager.sol +126 -0
- package/contracts/instance/Cloneable.sol +51 -0
- package/contracts/instance/IInstance.sol +88 -14
- package/contracts/instance/IInstanceService.sol +54 -3
- package/contracts/instance/Instance.sol +155 -281
- package/contracts/instance/InstanceAccessManager.sol +414 -175
- package/contracts/instance/InstanceReader.sol +67 -30
- package/contracts/instance/InstanceService.sol +431 -55
- package/contracts/instance/InstanceServiceManager.sol +11 -13
- package/contracts/instance/ObjectManager.sol +82 -0
- package/contracts/instance/base/ComponentService.sol +121 -0
- package/contracts/instance/base/KeyValueStore.sol +13 -5
- package/contracts/instance/base/Lifecycle.sol +23 -6
- package/contracts/instance/module/IAccess.sol +36 -20
- package/contracts/instance/module/IBundle.sol +8 -4
- package/contracts/instance/module/IComponents.sol +41 -0
- package/contracts/instance/module/IDistribution.sol +2 -0
- package/contracts/instance/module/IPolicy.sol +41 -9
- package/contracts/instance/module/ISetup.sol +9 -19
- package/contracts/instance/service/ApplicationService.sol +355 -0
- package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
- package/contracts/instance/service/BundleService.sol +436 -0
- package/contracts/instance/service/BundleServiceManager.sol +51 -0
- package/contracts/instance/service/ClaimService.sol +239 -0
- package/contracts/instance/service/ClaimServiceManager.sol +35 -0
- package/contracts/instance/service/DistributionService.sol +431 -0
- package/contracts/instance/service/DistributionServiceManager.sol +51 -0
- package/contracts/instance/service/IApplicationService.sol +78 -0
- package/contracts/instance/service/IBundleService.sol +96 -0
- package/contracts/instance/service/IClaimService.sol +92 -0
- package/contracts/instance/service/IDistributionService.sol +87 -0
- package/contracts/instance/service/IPolicyService.sol +137 -0
- package/contracts/instance/service/IPoolService.sol +79 -17
- package/contracts/instance/service/IProductService.sol +6 -73
- package/contracts/instance/service/PolicyService.sol +541 -0
- package/contracts/instance/service/PolicyServiceManager.sol +54 -0
- package/contracts/instance/service/PoolService.sol +303 -0
- package/contracts/instance/service/PoolServiceManager.sol +51 -0
- package/contracts/instance/service/ProductService.sol +210 -0
- package/contracts/instance/service/ProductServiceManager.sol +54 -0
- package/contracts/registry/ChainNft.sol +9 -1
- package/contracts/registry/IRegistry.sol +52 -8
- package/contracts/registry/IRegistryService.sol +47 -14
- package/contracts/registry/ITransferInterceptor.sol +1 -0
- package/contracts/registry/Registry.sol +270 -226
- package/contracts/registry/RegistryAccessManager.sol +216 -0
- package/contracts/registry/RegistryService.sol +111 -268
- package/contracts/registry/RegistryServiceManager.sol +24 -26
- package/contracts/registry/ReleaseManager.sol +324 -0
- package/contracts/registry/TokenRegistry.sol +116 -0
- package/contracts/shared/ERC165.sol +14 -8
- package/contracts/shared/INftOwnable.sol +11 -10
- package/contracts/shared/IPolicyHolder.sol +26 -0
- package/contracts/shared/IRegisterable.sol +4 -6
- package/contracts/shared/IRegistryLinked.sol +12 -0
- package/contracts/shared/IService.sol +5 -4
- package/contracts/shared/IVersionable.sol +4 -47
- package/contracts/shared/NftOwnable.sol +67 -83
- package/contracts/shared/PolicyHolder.sol +81 -0
- package/contracts/shared/ProxyManager.sol +100 -25
- package/contracts/shared/Registerable.sol +16 -31
- package/contracts/shared/RegistryLinked.sol +48 -0
- package/contracts/shared/Service.sol +42 -24
- package/contracts/shared/TokenHandler.sol +11 -5
- package/contracts/shared/Versionable.sol +4 -92
- package/contracts/test/TestRegisterable.sol +1 -1
- package/contracts/test/TestService.sol +4 -3
- package/contracts/types/Amount.sol +65 -0
- package/contracts/types/Blocknumber.sol +1 -0
- package/contracts/types/ClaimId.sol +75 -0
- package/contracts/types/DistributorType.sol +2 -2
- package/contracts/types/Fee.sol +13 -5
- package/contracts/types/NftId.sol +8 -0
- package/contracts/types/NftIdSet.sol +26 -24
- package/contracts/types/ObjectType.sol +11 -6
- package/contracts/types/PayoutId.sol +82 -0
- package/contracts/types/Referral.sol +4 -0
- package/contracts/types/RoleId.sol +26 -11
- package/contracts/types/Seconds.sol +54 -0
- package/contracts/types/StateId.sol +11 -2
- package/contracts/types/Timestamp.sol +18 -13
- package/contracts/types/UFixed.sol +1 -0
- package/contracts/types/Version.sol +5 -1
- package/package.json +3 -3
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -314
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -267
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
- package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
- package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
- package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
- package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
- package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
- package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
- package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.dbg.json +0 -4
- package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.dbg.json +0 -4
- package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.json +0 -1119
- package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.dbg.json +0 -4
- package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.json +0 -1082
- package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -827
- package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.dbg.json +0 -4
- package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.json +0 -442
- package/contracts/components/BaseComponent.sol +0 -86
- package/contracts/components/IBaseComponent.sol +0 -24
- package/contracts/experiment/cloning/Cloner.sol +0 -47
- package/contracts/experiment/errors/Require.sol +0 -38
- package/contracts/experiment/errors/Revert.sol +0 -44
- package/contracts/experiment/inheritance/A.sol +0 -53
- package/contracts/experiment/inheritance/B.sol +0 -28
- package/contracts/experiment/inheritance/C.sol +0 -34
- package/contracts/experiment/inheritance/IA.sol +0 -13
- package/contracts/experiment/inheritance/IB.sol +0 -10
- package/contracts/experiment/inheritance/IC.sol +0 -12
- package/contracts/experiment/statemachine/Dummy.sol +0 -27
- package/contracts/experiment/statemachine/ISM.sol +0 -25
- package/contracts/experiment/statemachine/SM.sol +0 -57
- package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
- package/contracts/experiment/types/TypeA.sol +0 -47
- package/contracts/experiment/types/TypeB.sol +0 -29
- package/contracts/instance/AccessManagedSimple.sol +0 -114
- package/contracts/instance/AccessManagerSimple.sol +0 -682
- package/contracts/instance/IAccessManagerSimple.sol +0 -391
- package/contracts/instance/base/ComponentServiceBase.sol +0 -49
- package/contracts/instance/base/IInstanceBase.sol +0 -23
- package/contracts/instance/service/ComponentOwnerService.sol +0 -317
- package/contracts/instance/service/IComponentOwnerService.sol +0 -20
- package/contracts/shared/RegisterableUpgradable.sol +0 -16
@@ -3,17 +3,6 @@
|
|
3
3
|
"contractName": "InstanceAccessManager",
|
4
4
|
"sourceName": "contracts/instance/InstanceAccessManager.sol",
|
5
5
|
"abi": [
|
6
|
-
{
|
7
|
-
"inputs": [
|
8
|
-
{
|
9
|
-
"internalType": "address",
|
10
|
-
"name": "accessManager",
|
11
|
-
"type": "address"
|
12
|
-
}
|
13
|
-
],
|
14
|
-
"stateMutability": "nonpayable",
|
15
|
-
"type": "constructor"
|
16
|
-
},
|
17
6
|
{
|
18
7
|
"inputs": [
|
19
8
|
{
|
@@ -54,13 +43,18 @@
|
|
54
43
|
},
|
55
44
|
{
|
56
45
|
"inputs": [
|
46
|
+
{
|
47
|
+
"internalType": "address",
|
48
|
+
"name": "caller",
|
49
|
+
"type": "address"
|
50
|
+
},
|
57
51
|
{
|
58
52
|
"internalType": "RoleId",
|
59
53
|
"name": "roleId",
|
60
54
|
"type": "uint64"
|
61
55
|
}
|
62
56
|
],
|
63
|
-
"name": "
|
57
|
+
"name": "ErrorIAccessCallerIsNotRoleAdmin",
|
64
58
|
"type": "error"
|
65
59
|
},
|
66
60
|
{
|
@@ -71,7 +65,7 @@
|
|
71
65
|
"type": "uint64"
|
72
66
|
}
|
73
67
|
],
|
74
|
-
"name": "
|
68
|
+
"name": "ErrorIAccessRoleIdDoesNotExist",
|
75
69
|
"type": "error"
|
76
70
|
},
|
77
71
|
{
|
@@ -82,7 +76,7 @@
|
|
82
76
|
"type": "uint64"
|
83
77
|
}
|
84
78
|
],
|
85
|
-
"name": "
|
79
|
+
"name": "ErrorIAccessRoleIdExists",
|
86
80
|
"type": "error"
|
87
81
|
},
|
88
82
|
{
|
@@ -91,14 +85,9 @@
|
|
91
85
|
"internalType": "RoleId",
|
92
86
|
"name": "roleId",
|
93
87
|
"type": "uint64"
|
94
|
-
},
|
95
|
-
{
|
96
|
-
"internalType": "ShortString",
|
97
|
-
"name": "name",
|
98
|
-
"type": "bytes32"
|
99
88
|
}
|
100
89
|
],
|
101
|
-
"name": "
|
90
|
+
"name": "ErrorIAccessRoleIdTooBig",
|
102
91
|
"type": "error"
|
103
92
|
},
|
104
93
|
{
|
@@ -109,7 +98,7 @@
|
|
109
98
|
"type": "uint64"
|
110
99
|
}
|
111
100
|
],
|
112
|
-
"name": "
|
101
|
+
"name": "ErrorIAccessRoleIdTooSmall",
|
113
102
|
"type": "error"
|
114
103
|
},
|
115
104
|
{
|
@@ -120,7 +109,7 @@
|
|
120
109
|
"type": "uint64"
|
121
110
|
}
|
122
111
|
],
|
123
|
-
"name": "
|
112
|
+
"name": "ErrorIAccessRoleNameEmpty",
|
124
113
|
"type": "error"
|
125
114
|
},
|
126
115
|
{
|
@@ -129,20 +118,19 @@
|
|
129
118
|
"internalType": "RoleId",
|
130
119
|
"name": "roleId",
|
131
120
|
"type": "uint64"
|
132
|
-
}
|
133
|
-
],
|
134
|
-
"name": "ErrorRoleIdTooBig",
|
135
|
-
"type": "error"
|
136
|
-
},
|
137
|
-
{
|
138
|
-
"inputs": [
|
121
|
+
},
|
139
122
|
{
|
140
123
|
"internalType": "RoleId",
|
141
|
-
"name": "
|
124
|
+
"name": "existingRoleId",
|
142
125
|
"type": "uint64"
|
126
|
+
},
|
127
|
+
{
|
128
|
+
"internalType": "ShortString",
|
129
|
+
"name": "name",
|
130
|
+
"type": "bytes32"
|
143
131
|
}
|
144
132
|
],
|
145
|
-
"name": "
|
133
|
+
"name": "ErrorIAccessRoleNameExists",
|
146
134
|
"type": "error"
|
147
135
|
},
|
148
136
|
{
|
@@ -153,52 +141,47 @@
|
|
153
141
|
"type": "uint64"
|
154
142
|
},
|
155
143
|
{
|
156
|
-
"internalType": "
|
157
|
-
"name": "
|
158
|
-
"type": "
|
144
|
+
"internalType": "enum IAccess.Type",
|
145
|
+
"name": "rtype",
|
146
|
+
"type": "uint8"
|
159
147
|
}
|
160
148
|
],
|
161
|
-
"name": "
|
149
|
+
"name": "ErrorIAccessRoleTypeInvalid",
|
162
150
|
"type": "error"
|
163
151
|
},
|
164
152
|
{
|
165
153
|
"inputs": [
|
166
154
|
{
|
167
|
-
"internalType": "
|
168
|
-
"name": "
|
169
|
-
"type": "
|
170
|
-
},
|
171
|
-
{
|
172
|
-
"internalType": "bool",
|
173
|
-
"name": "isCustom",
|
174
|
-
"type": "bool"
|
155
|
+
"internalType": "address",
|
156
|
+
"name": "target",
|
157
|
+
"type": "address"
|
175
158
|
},
|
176
159
|
{
|
177
|
-
"internalType": "
|
178
|
-
"name": "
|
179
|
-
"type": "
|
160
|
+
"internalType": "address",
|
161
|
+
"name": "targetAuthority",
|
162
|
+
"type": "address"
|
180
163
|
}
|
181
164
|
],
|
182
|
-
"name": "
|
165
|
+
"name": "ErrorIAccessTargetAuthorityInvalid",
|
183
166
|
"type": "error"
|
184
167
|
},
|
185
168
|
{
|
186
169
|
"inputs": [
|
187
170
|
{
|
188
|
-
"internalType": "
|
189
|
-
"name": "
|
190
|
-
"type": "
|
171
|
+
"internalType": "address",
|
172
|
+
"name": "target",
|
173
|
+
"type": "address"
|
191
174
|
}
|
192
175
|
],
|
193
|
-
"name": "
|
176
|
+
"name": "ErrorIAccessTargetDoesNotExist",
|
194
177
|
"type": "error"
|
195
178
|
},
|
196
179
|
{
|
197
180
|
"inputs": [
|
198
181
|
{
|
199
|
-
"internalType": "
|
200
|
-
"name": "
|
201
|
-
"type": "
|
182
|
+
"internalType": "address",
|
183
|
+
"name": "target",
|
184
|
+
"type": "address"
|
202
185
|
},
|
203
186
|
{
|
204
187
|
"internalType": "ShortString",
|
@@ -206,18 +189,7 @@
|
|
206
189
|
"type": "bytes32"
|
207
190
|
}
|
208
191
|
],
|
209
|
-
"name": "
|
210
|
-
"type": "error"
|
211
|
-
},
|
212
|
-
{
|
213
|
-
"inputs": [
|
214
|
-
{
|
215
|
-
"internalType": "RoleId",
|
216
|
-
"name": "roleId",
|
217
|
-
"type": "uint64"
|
218
|
-
}
|
219
|
-
],
|
220
|
-
"name": "ErrorSetLockedForNonexstentRole",
|
192
|
+
"name": "ErrorIAccessTargetExists",
|
221
193
|
"type": "error"
|
222
194
|
},
|
223
195
|
{
|
@@ -228,12 +200,7 @@
|
|
228
200
|
"type": "address"
|
229
201
|
}
|
230
202
|
],
|
231
|
-
"name": "
|
232
|
-
"type": "error"
|
233
|
-
},
|
234
|
-
{
|
235
|
-
"inputs": [],
|
236
|
-
"name": "ErrorTargetAddressZero",
|
203
|
+
"name": "ErrorIAccessTargetNameEmpty",
|
237
204
|
"type": "error"
|
238
205
|
},
|
239
206
|
{
|
@@ -243,13 +210,18 @@
|
|
243
210
|
"name": "target",
|
244
211
|
"type": "address"
|
245
212
|
},
|
213
|
+
{
|
214
|
+
"internalType": "address",
|
215
|
+
"name": "existingTarget",
|
216
|
+
"type": "address"
|
217
|
+
},
|
246
218
|
{
|
247
219
|
"internalType": "ShortString",
|
248
220
|
"name": "name",
|
249
221
|
"type": "bytes32"
|
250
222
|
}
|
251
223
|
],
|
252
|
-
"name": "
|
224
|
+
"name": "ErrorIAccessTargetNameExists",
|
253
225
|
"type": "error"
|
254
226
|
},
|
255
227
|
{
|
@@ -260,7 +232,7 @@
|
|
260
232
|
"type": "address"
|
261
233
|
}
|
262
234
|
],
|
263
|
-
"name": "
|
235
|
+
"name": "ErrorIAccessTargetNotRegistered",
|
264
236
|
"type": "error"
|
265
237
|
},
|
266
238
|
{
|
@@ -271,17 +243,17 @@
|
|
271
243
|
"type": "address"
|
272
244
|
},
|
273
245
|
{
|
274
|
-
"internalType": "
|
275
|
-
"name": "
|
276
|
-
"type": "
|
277
|
-
},
|
278
|
-
{
|
279
|
-
"internalType": "ShortString",
|
280
|
-
"name": "name",
|
281
|
-
"type": "bytes32"
|
246
|
+
"internalType": "enum IAccess.Type",
|
247
|
+
"name": "ttype",
|
248
|
+
"type": "uint8"
|
282
249
|
}
|
283
250
|
],
|
284
|
-
"name": "
|
251
|
+
"name": "ErrorIAccessTargetTypeInvalid",
|
252
|
+
"type": "error"
|
253
|
+
},
|
254
|
+
{
|
255
|
+
"inputs": [],
|
256
|
+
"name": "InvalidInitialization",
|
285
257
|
"type": "error"
|
286
258
|
},
|
287
259
|
{
|
@@ -289,6 +261,11 @@
|
|
289
261
|
"name": "InvalidShortString",
|
290
262
|
"type": "error"
|
291
263
|
},
|
264
|
+
{
|
265
|
+
"inputs": [],
|
266
|
+
"name": "NotInitializing",
|
267
|
+
"type": "error"
|
268
|
+
},
|
292
269
|
{
|
293
270
|
"inputs": [
|
294
271
|
{
|
@@ -313,6 +290,75 @@
|
|
313
290
|
"name": "AuthorityUpdated",
|
314
291
|
"type": "event"
|
315
292
|
},
|
293
|
+
{
|
294
|
+
"anonymous": false,
|
295
|
+
"inputs": [
|
296
|
+
{
|
297
|
+
"indexed": false,
|
298
|
+
"internalType": "uint64",
|
299
|
+
"name": "version",
|
300
|
+
"type": "uint64"
|
301
|
+
}
|
302
|
+
],
|
303
|
+
"name": "Initialized",
|
304
|
+
"type": "event"
|
305
|
+
},
|
306
|
+
{
|
307
|
+
"anonymous": false,
|
308
|
+
"inputs": [
|
309
|
+
{
|
310
|
+
"indexed": false,
|
311
|
+
"internalType": "RoleId",
|
312
|
+
"name": "roleId",
|
313
|
+
"type": "uint64"
|
314
|
+
},
|
315
|
+
{
|
316
|
+
"indexed": false,
|
317
|
+
"internalType": "ShortString",
|
318
|
+
"name": "name",
|
319
|
+
"type": "bytes32"
|
320
|
+
},
|
321
|
+
{
|
322
|
+
"indexed": false,
|
323
|
+
"internalType": "enum IAccess.Type",
|
324
|
+
"name": "rtype",
|
325
|
+
"type": "uint8"
|
326
|
+
}
|
327
|
+
],
|
328
|
+
"name": "LogRoleCreation",
|
329
|
+
"type": "event"
|
330
|
+
},
|
331
|
+
{
|
332
|
+
"anonymous": false,
|
333
|
+
"inputs": [
|
334
|
+
{
|
335
|
+
"indexed": false,
|
336
|
+
"internalType": "address",
|
337
|
+
"name": "target",
|
338
|
+
"type": "address"
|
339
|
+
},
|
340
|
+
{
|
341
|
+
"indexed": false,
|
342
|
+
"internalType": "ShortString",
|
343
|
+
"name": "name",
|
344
|
+
"type": "bytes32"
|
345
|
+
},
|
346
|
+
{
|
347
|
+
"indexed": false,
|
348
|
+
"internalType": "enum IAccess.Type",
|
349
|
+
"name": "ttype",
|
350
|
+
"type": "uint8"
|
351
|
+
},
|
352
|
+
{
|
353
|
+
"indexed": false,
|
354
|
+
"internalType": "bool",
|
355
|
+
"name": "isLocked",
|
356
|
+
"type": "bool"
|
357
|
+
}
|
358
|
+
],
|
359
|
+
"name": "LogTargetCreation",
|
360
|
+
"type": "event"
|
361
|
+
},
|
316
362
|
{
|
317
363
|
"inputs": [],
|
318
364
|
"name": "ADMIN_ROLE_NAME",
|
@@ -352,6 +398,32 @@
|
|
352
398
|
"stateMutability": "view",
|
353
399
|
"type": "function"
|
354
400
|
},
|
401
|
+
{
|
402
|
+
"inputs": [],
|
403
|
+
"name": "INSTANCE_OWNER_ROLE_NAME",
|
404
|
+
"outputs": [
|
405
|
+
{
|
406
|
+
"internalType": "string",
|
407
|
+
"name": "",
|
408
|
+
"type": "string"
|
409
|
+
}
|
410
|
+
],
|
411
|
+
"stateMutability": "view",
|
412
|
+
"type": "function"
|
413
|
+
},
|
414
|
+
{
|
415
|
+
"inputs": [],
|
416
|
+
"name": "INSTANCE_ROLE_NAME",
|
417
|
+
"outputs": [
|
418
|
+
{
|
419
|
+
"internalType": "string",
|
420
|
+
"name": "",
|
421
|
+
"type": "string"
|
422
|
+
}
|
423
|
+
],
|
424
|
+
"stateMutability": "view",
|
425
|
+
"type": "function"
|
426
|
+
},
|
355
427
|
{
|
356
428
|
"inputs": [],
|
357
429
|
"name": "PUBLIC_ROLE_NAME",
|
@@ -378,6 +450,40 @@
|
|
378
450
|
"stateMutability": "view",
|
379
451
|
"type": "function"
|
380
452
|
},
|
453
|
+
{
|
454
|
+
"inputs": [
|
455
|
+
{
|
456
|
+
"internalType": "address",
|
457
|
+
"name": "caller",
|
458
|
+
"type": "address"
|
459
|
+
},
|
460
|
+
{
|
461
|
+
"internalType": "address",
|
462
|
+
"name": "target",
|
463
|
+
"type": "address"
|
464
|
+
},
|
465
|
+
{
|
466
|
+
"internalType": "bytes4",
|
467
|
+
"name": "selector",
|
468
|
+
"type": "bytes4"
|
469
|
+
}
|
470
|
+
],
|
471
|
+
"name": "canCall",
|
472
|
+
"outputs": [
|
473
|
+
{
|
474
|
+
"internalType": "bool",
|
475
|
+
"name": "immediate",
|
476
|
+
"type": "bool"
|
477
|
+
},
|
478
|
+
{
|
479
|
+
"internalType": "uint32",
|
480
|
+
"name": "delay",
|
481
|
+
"type": "uint32"
|
482
|
+
}
|
483
|
+
],
|
484
|
+
"stateMutability": "view",
|
485
|
+
"type": "function"
|
486
|
+
},
|
381
487
|
{
|
382
488
|
"inputs": [
|
383
489
|
{
|
@@ -391,7 +497,25 @@
|
|
391
497
|
"type": "string"
|
392
498
|
}
|
393
499
|
],
|
394
|
-
"name": "
|
500
|
+
"name": "createCoreRole",
|
501
|
+
"outputs": [],
|
502
|
+
"stateMutability": "nonpayable",
|
503
|
+
"type": "function"
|
504
|
+
},
|
505
|
+
{
|
506
|
+
"inputs": [
|
507
|
+
{
|
508
|
+
"internalType": "address",
|
509
|
+
"name": "target",
|
510
|
+
"type": "address"
|
511
|
+
},
|
512
|
+
{
|
513
|
+
"internalType": "string",
|
514
|
+
"name": "name",
|
515
|
+
"type": "string"
|
516
|
+
}
|
517
|
+
],
|
518
|
+
"name": "createCoreTarget",
|
395
519
|
"outputs": [],
|
396
520
|
"stateMutability": "nonpayable",
|
397
521
|
"type": "function"
|
@@ -407,9 +531,14 @@
|
|
407
531
|
"internalType": "string",
|
408
532
|
"name": "name",
|
409
533
|
"type": "string"
|
534
|
+
},
|
535
|
+
{
|
536
|
+
"internalType": "RoleId",
|
537
|
+
"name": "admin",
|
538
|
+
"type": "uint64"
|
410
539
|
}
|
411
540
|
],
|
412
|
-
"name": "
|
541
|
+
"name": "createGifRole",
|
413
542
|
"outputs": [],
|
414
543
|
"stateMutability": "nonpayable",
|
415
544
|
"type": "function"
|
@@ -427,9 +556,113 @@
|
|
427
556
|
"type": "string"
|
428
557
|
}
|
429
558
|
],
|
430
|
-
"name": "
|
431
|
-
"outputs": [],
|
432
|
-
"stateMutability": "nonpayable",
|
559
|
+
"name": "createGifTarget",
|
560
|
+
"outputs": [],
|
561
|
+
"stateMutability": "nonpayable",
|
562
|
+
"type": "function"
|
563
|
+
},
|
564
|
+
{
|
565
|
+
"inputs": [
|
566
|
+
{
|
567
|
+
"internalType": "string",
|
568
|
+
"name": "roleName",
|
569
|
+
"type": "string"
|
570
|
+
},
|
571
|
+
{
|
572
|
+
"internalType": "string",
|
573
|
+
"name": "adminName",
|
574
|
+
"type": "string"
|
575
|
+
}
|
576
|
+
],
|
577
|
+
"name": "createRole",
|
578
|
+
"outputs": [
|
579
|
+
{
|
580
|
+
"internalType": "RoleId",
|
581
|
+
"name": "roleId",
|
582
|
+
"type": "uint64"
|
583
|
+
},
|
584
|
+
{
|
585
|
+
"internalType": "RoleId",
|
586
|
+
"name": "admin",
|
587
|
+
"type": "uint64"
|
588
|
+
}
|
589
|
+
],
|
590
|
+
"stateMutability": "nonpayable",
|
591
|
+
"type": "function"
|
592
|
+
},
|
593
|
+
{
|
594
|
+
"inputs": [
|
595
|
+
{
|
596
|
+
"internalType": "address",
|
597
|
+
"name": "target",
|
598
|
+
"type": "address"
|
599
|
+
},
|
600
|
+
{
|
601
|
+
"internalType": "string",
|
602
|
+
"name": "name",
|
603
|
+
"type": "string"
|
604
|
+
}
|
605
|
+
],
|
606
|
+
"name": "createTarget",
|
607
|
+
"outputs": [],
|
608
|
+
"stateMutability": "nonpayable",
|
609
|
+
"type": "function"
|
610
|
+
},
|
611
|
+
{
|
612
|
+
"inputs": [
|
613
|
+
{
|
614
|
+
"internalType": "RoleId",
|
615
|
+
"name": "roleId",
|
616
|
+
"type": "uint64"
|
617
|
+
}
|
618
|
+
],
|
619
|
+
"name": "getRoleAdmin",
|
620
|
+
"outputs": [
|
621
|
+
{
|
622
|
+
"internalType": "RoleId",
|
623
|
+
"name": "admin",
|
624
|
+
"type": "uint64"
|
625
|
+
}
|
626
|
+
],
|
627
|
+
"stateMutability": "view",
|
628
|
+
"type": "function"
|
629
|
+
},
|
630
|
+
{
|
631
|
+
"inputs": [
|
632
|
+
{
|
633
|
+
"internalType": "uint256",
|
634
|
+
"name": "idx",
|
635
|
+
"type": "uint256"
|
636
|
+
}
|
637
|
+
],
|
638
|
+
"name": "getRoleId",
|
639
|
+
"outputs": [
|
640
|
+
{
|
641
|
+
"internalType": "RoleId",
|
642
|
+
"name": "roleId",
|
643
|
+
"type": "uint64"
|
644
|
+
}
|
645
|
+
],
|
646
|
+
"stateMutability": "view",
|
647
|
+
"type": "function"
|
648
|
+
},
|
649
|
+
{
|
650
|
+
"inputs": [
|
651
|
+
{
|
652
|
+
"internalType": "string",
|
653
|
+
"name": "name",
|
654
|
+
"type": "string"
|
655
|
+
}
|
656
|
+
],
|
657
|
+
"name": "getRoleIdForName",
|
658
|
+
"outputs": [
|
659
|
+
{
|
660
|
+
"internalType": "RoleId",
|
661
|
+
"name": "roleId",
|
662
|
+
"type": "uint64"
|
663
|
+
}
|
664
|
+
],
|
665
|
+
"stateMutability": "view",
|
433
666
|
"type": "function"
|
434
667
|
},
|
435
668
|
{
|
@@ -440,7 +673,7 @@
|
|
440
673
|
"type": "uint64"
|
441
674
|
}
|
442
675
|
],
|
443
|
-
"name": "
|
676
|
+
"name": "getRoleInfo",
|
444
677
|
"outputs": [
|
445
678
|
{
|
446
679
|
"components": [
|
@@ -450,14 +683,14 @@
|
|
450
683
|
"type": "bytes32"
|
451
684
|
},
|
452
685
|
{
|
453
|
-
"internalType": "
|
454
|
-
"name": "
|
455
|
-
"type": "
|
686
|
+
"internalType": "enum IAccess.Type",
|
687
|
+
"name": "rtype",
|
688
|
+
"type": "uint8"
|
456
689
|
},
|
457
690
|
{
|
458
|
-
"internalType": "
|
459
|
-
"name": "
|
460
|
-
"type": "
|
691
|
+
"internalType": "RoleId",
|
692
|
+
"name": "admin",
|
693
|
+
"type": "uint64"
|
461
694
|
},
|
462
695
|
{
|
463
696
|
"internalType": "Timestamp",
|
@@ -470,47 +703,28 @@
|
|
470
703
|
"type": "uint40"
|
471
704
|
}
|
472
705
|
],
|
473
|
-
"internalType": "struct
|
474
|
-
"name": "
|
706
|
+
"internalType": "struct IAccess.RoleInfo",
|
707
|
+
"name": "info",
|
475
708
|
"type": "tuple"
|
476
709
|
}
|
477
710
|
],
|
478
711
|
"stateMutability": "view",
|
479
712
|
"type": "function"
|
480
713
|
},
|
481
|
-
{
|
482
|
-
"inputs": [
|
483
|
-
{
|
484
|
-
"internalType": "uint256",
|
485
|
-
"name": "idx",
|
486
|
-
"type": "uint256"
|
487
|
-
}
|
488
|
-
],
|
489
|
-
"name": "getRoleId",
|
490
|
-
"outputs": [
|
491
|
-
{
|
492
|
-
"internalType": "RoleId",
|
493
|
-
"name": "roleId",
|
494
|
-
"type": "uint64"
|
495
|
-
}
|
496
|
-
],
|
497
|
-
"stateMutability": "view",
|
498
|
-
"type": "function"
|
499
|
-
},
|
500
714
|
{
|
501
715
|
"inputs": [
|
502
716
|
{
|
503
717
|
"internalType": "string",
|
504
|
-
"name": "
|
718
|
+
"name": "targetName",
|
505
719
|
"type": "string"
|
506
720
|
}
|
507
721
|
],
|
508
|
-
"name": "
|
722
|
+
"name": "getTargetAddress",
|
509
723
|
"outputs": [
|
510
724
|
{
|
511
|
-
"internalType": "
|
512
|
-
"name": "
|
513
|
-
"type": "
|
725
|
+
"internalType": "address",
|
726
|
+
"name": "targetAddress",
|
727
|
+
"type": "address"
|
514
728
|
}
|
515
729
|
],
|
516
730
|
"stateMutability": "view",
|
@@ -519,22 +733,44 @@
|
|
519
733
|
{
|
520
734
|
"inputs": [
|
521
735
|
{
|
522
|
-
"internalType": "
|
523
|
-
"name": "
|
524
|
-
"type": "
|
525
|
-
},
|
526
|
-
{
|
527
|
-
"internalType": "uint256",
|
528
|
-
"name": "idx",
|
529
|
-
"type": "uint256"
|
736
|
+
"internalType": "address",
|
737
|
+
"name": "target",
|
738
|
+
"type": "address"
|
530
739
|
}
|
531
740
|
],
|
532
|
-
"name": "
|
741
|
+
"name": "getTargetInfo",
|
533
742
|
"outputs": [
|
534
743
|
{
|
535
|
-
"
|
536
|
-
|
537
|
-
|
744
|
+
"components": [
|
745
|
+
{
|
746
|
+
"internalType": "ShortString",
|
747
|
+
"name": "name",
|
748
|
+
"type": "bytes32"
|
749
|
+
},
|
750
|
+
{
|
751
|
+
"internalType": "enum IAccess.Type",
|
752
|
+
"name": "ttype",
|
753
|
+
"type": "uint8"
|
754
|
+
},
|
755
|
+
{
|
756
|
+
"internalType": "bool",
|
757
|
+
"name": "isLocked",
|
758
|
+
"type": "bool"
|
759
|
+
},
|
760
|
+
{
|
761
|
+
"internalType": "Timestamp",
|
762
|
+
"name": "createdAt",
|
763
|
+
"type": "uint40"
|
764
|
+
},
|
765
|
+
{
|
766
|
+
"internalType": "Timestamp",
|
767
|
+
"name": "updatedAt",
|
768
|
+
"type": "uint40"
|
769
|
+
}
|
770
|
+
],
|
771
|
+
"internalType": "struct IAccess.TargetInfo",
|
772
|
+
"name": "",
|
773
|
+
"type": "tuple"
|
538
774
|
}
|
539
775
|
],
|
540
776
|
"stateMutability": "view",
|
@@ -588,6 +824,19 @@
|
|
588
824
|
"stateMutability": "view",
|
589
825
|
"type": "function"
|
590
826
|
},
|
827
|
+
{
|
828
|
+
"inputs": [
|
829
|
+
{
|
830
|
+
"internalType": "address",
|
831
|
+
"name": "instanceAddress",
|
832
|
+
"type": "address"
|
833
|
+
}
|
834
|
+
],
|
835
|
+
"name": "initialize",
|
836
|
+
"outputs": [],
|
837
|
+
"stateMutability": "nonpayable",
|
838
|
+
"type": "function"
|
839
|
+
},
|
591
840
|
{
|
592
841
|
"inputs": [],
|
593
842
|
"name": "isConsumingScheduledOp",
|
@@ -601,6 +850,25 @@
|
|
601
850
|
"stateMutability": "view",
|
602
851
|
"type": "function"
|
603
852
|
},
|
853
|
+
{
|
854
|
+
"inputs": [
|
855
|
+
{
|
856
|
+
"internalType": "address",
|
857
|
+
"name": "target",
|
858
|
+
"type": "address"
|
859
|
+
}
|
860
|
+
],
|
861
|
+
"name": "isTargetLocked",
|
862
|
+
"outputs": [
|
863
|
+
{
|
864
|
+
"internalType": "bool",
|
865
|
+
"name": "locked",
|
866
|
+
"type": "bool"
|
867
|
+
}
|
868
|
+
],
|
869
|
+
"stateMutability": "view",
|
870
|
+
"type": "function"
|
871
|
+
},
|
604
872
|
{
|
605
873
|
"inputs": [
|
606
874
|
{
|
@@ -613,7 +881,7 @@
|
|
613
881
|
"outputs": [
|
614
882
|
{
|
615
883
|
"internalType": "bool",
|
616
|
-
"name": "
|
884
|
+
"name": "",
|
617
885
|
"type": "bool"
|
618
886
|
}
|
619
887
|
],
|
@@ -634,6 +902,25 @@
|
|
634
902
|
}
|
635
903
|
],
|
636
904
|
"name": "revokeRole",
|
905
|
+
"outputs": [
|
906
|
+
{
|
907
|
+
"internalType": "bool",
|
908
|
+
"name": "",
|
909
|
+
"type": "bool"
|
910
|
+
}
|
911
|
+
],
|
912
|
+
"stateMutability": "nonpayable",
|
913
|
+
"type": "function"
|
914
|
+
},
|
915
|
+
{
|
916
|
+
"inputs": [
|
917
|
+
{
|
918
|
+
"internalType": "RoleId",
|
919
|
+
"name": "roleId",
|
920
|
+
"type": "uint64"
|
921
|
+
}
|
922
|
+
],
|
923
|
+
"name": "revokeRoleAllMembers",
|
637
924
|
"outputs": [
|
638
925
|
{
|
639
926
|
"internalType": "bool",
|
@@ -663,6 +950,30 @@
|
|
663
950
|
"stateMutability": "view",
|
664
951
|
"type": "function"
|
665
952
|
},
|
953
|
+
{
|
954
|
+
"inputs": [
|
955
|
+
{
|
956
|
+
"internalType": "RoleId",
|
957
|
+
"name": "roleId",
|
958
|
+
"type": "uint64"
|
959
|
+
},
|
960
|
+
{
|
961
|
+
"internalType": "uint256",
|
962
|
+
"name": "idx",
|
963
|
+
"type": "uint256"
|
964
|
+
}
|
965
|
+
],
|
966
|
+
"name": "roleMember",
|
967
|
+
"outputs": [
|
968
|
+
{
|
969
|
+
"internalType": "address",
|
970
|
+
"name": "member",
|
971
|
+
"type": "address"
|
972
|
+
}
|
973
|
+
],
|
974
|
+
"stateMutability": "view",
|
975
|
+
"type": "function"
|
976
|
+
},
|
666
977
|
{
|
667
978
|
"inputs": [
|
668
979
|
{
|
@@ -708,6 +1019,29 @@
|
|
708
1019
|
"stateMutability": "nonpayable",
|
709
1020
|
"type": "function"
|
710
1021
|
},
|
1022
|
+
{
|
1023
|
+
"inputs": [
|
1024
|
+
{
|
1025
|
+
"internalType": "string",
|
1026
|
+
"name": "targetName",
|
1027
|
+
"type": "string"
|
1028
|
+
},
|
1029
|
+
{
|
1030
|
+
"internalType": "bytes4[]",
|
1031
|
+
"name": "selectors",
|
1032
|
+
"type": "bytes4[]"
|
1033
|
+
},
|
1034
|
+
{
|
1035
|
+
"internalType": "RoleId",
|
1036
|
+
"name": "roleId",
|
1037
|
+
"type": "uint64"
|
1038
|
+
}
|
1039
|
+
],
|
1040
|
+
"name": "setCoreTargetFunctionRole",
|
1041
|
+
"outputs": [],
|
1042
|
+
"stateMutability": "nonpayable",
|
1043
|
+
"type": "function"
|
1044
|
+
},
|
711
1045
|
{
|
712
1046
|
"inputs": [
|
713
1047
|
{
|
@@ -716,12 +1050,35 @@
|
|
716
1050
|
"type": "uint64"
|
717
1051
|
},
|
718
1052
|
{
|
719
|
-
"internalType": "
|
720
|
-
"name": "
|
721
|
-
"type": "
|
1053
|
+
"internalType": "RoleId",
|
1054
|
+
"name": "admin",
|
1055
|
+
"type": "uint64"
|
1056
|
+
}
|
1057
|
+
],
|
1058
|
+
"name": "setRoleAdmin",
|
1059
|
+
"outputs": [],
|
1060
|
+
"stateMutability": "nonpayable",
|
1061
|
+
"type": "function"
|
1062
|
+
},
|
1063
|
+
{
|
1064
|
+
"inputs": [
|
1065
|
+
{
|
1066
|
+
"internalType": "string",
|
1067
|
+
"name": "targetName",
|
1068
|
+
"type": "string"
|
1069
|
+
},
|
1070
|
+
{
|
1071
|
+
"internalType": "bytes4[]",
|
1072
|
+
"name": "selectors",
|
1073
|
+
"type": "bytes4[]"
|
1074
|
+
},
|
1075
|
+
{
|
1076
|
+
"internalType": "RoleId",
|
1077
|
+
"name": "roleId",
|
1078
|
+
"type": "uint64"
|
722
1079
|
}
|
723
1080
|
],
|
724
|
-
"name": "
|
1081
|
+
"name": "setTargetFunctionRole",
|
725
1082
|
"outputs": [],
|
726
1083
|
"stateMutability": "nonpayable",
|
727
1084
|
"type": "function"
|
@@ -764,90 +1121,106 @@
|
|
764
1121
|
"type": "function"
|
765
1122
|
}
|
766
1123
|
],
|
767
|
-
"bytecode": "0x60806040523480156200001157600080fd5b5060405162002db038038062002db0833981016040819052620000349162000a52565b806200004081620002aa565b50600880546001600160a01b0319166001600160a01b03831690811790915560408051631d6c8e3f60e21b81529051620001769273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__926368aebf7b926375b238fc916004808201926020929091908290030181865afa158015620000bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e2919062000a9d565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865af415801562000127573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014d919062000a9d565b60408051808201909152600981526841646d696e526f6c6560b81b6020820152600080620002fe565b620002a373__$cd131c2b3ba46b9dbe046aaf4458b9777d$__6368aebf7b600860009054906101000a90046001600160a01b03166001600160a01b0316633ca7c02a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020e919062000a9d565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865af415801562000253573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000279919062000a9d565b60408051808201909152600a8152695075626c6963526f6c6560b01b6020820152600080620002fe565b5062000b82565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b801562000314576200031284848462000548565b505b60006040518060a001604052806200033286620009e060201b60201c565b8152602001841515815260200160001515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801562000392573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003b8919062000abd565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156200040e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000434919062000abd565b64ffffffffff9081169091526001600160401b03968716600081815260016020818152604080842087518082558884015191850180548a85015160608c01516080909c015161ffff1990921694151561ff0019169490941761010094151585021762010000600160601b031916620100009b8b169b909b0264ffffffffff60381b19169a909a176701000000000000009a909916999099029790971790975594835260039081905293822080546001600160401b03191684179055600480549182018155918290527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b9181049190910180549190931660080290930a97880219909216969091029590951790945550505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915260085460408051631d6c8e3f60e21b8152905186926001600160a01b0316916375b238fc9160048083019260209291908290030181865afa158015620005bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005e3919062000a9d565b6001600160401b0316816001600160401b031614806200068d5750600860009054906101000a90046001600160a01b03166001600160a01b0316633ca7c02a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000652573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000678919062000a9d565b6001600160401b0316816001600160401b0316145b15620006bc5760405163981bf42160e01b81526001600160401b03861660048201526024015b60405180910390fd5b6001600160401b038516600090815260016020818152604092839020835160a0810185528154815292015460ff808216151592840192909252610100810490911615158284015264ffffffffff6201000082048116606084018190526701000000000000009092041660808301529151638d38cd4b60e01b81526004810192909252925073__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b90602401602060405180830381865af41580156200077d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007a3919062000ae6565b8015620007b857508160200151151583151514155b15620007f757602082015160405162d1cd9360e51b81526001600160401b038716600482015284151560248201529015156044820152606401620006b3565b8280156200080f57506127106001600160401b038216105b156200083a57604051633119b9df60e21b81526001600160401b0386166004820152602401620006b3565b821580156200085457506127106001600160401b03821610155b156200087f5760405163094fb39160e01b81526001600160401b0386166004820152602401620006b3565b60006200088c85620009e0565b9050620008998162000a23565b600003620008c6576040516321ab17ab60e01b81526001600160401b0387166004820152602401620006b3565b60008181526003602090815260409182902054825163bc1b392d60e01b815292516200096d936001600160401b039092169273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9263bc1b392d92600480830193928290030181865af415801562000935573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200095b919062000a9d565b6001600160401b039081169116141590565b80156200099457506000818152600360205260409020546001600160401b03878116911614155b15620009d75760008181526003602052604090819020549051631660fb9360e21b81526001600160401b03909116600482015260248101829052604401620006b3565b50509392505050565b600080829050601f8151111562000a0e578260405163305a27a960e01b8152600401620006b3919062000b0a565b805162000a1b8262000b5a565b179392505050565b600060ff8216601f81111562000a4c57604051632cd44ac360e21b815260040160405180910390fd5b92915050565b60006020828403121562000a6557600080fd5b81516001600160a01b038116811462000a7d57600080fd5b9392505050565b6001600160401b038116811462000a9a57600080fd5b50565b60006020828403121562000ab057600080fd5b815162000a7d8162000a84565b60006020828403121562000ad057600080fd5b815164ffffffffff8116811462000a7d57600080fd5b60006020828403121562000af957600080fd5b8151801515811462000a7d57600080fd5b600060208083528351808285015260005b8181101562000b395785810183015185820160400152820162000b1b565b506000604082860101526040601f19601f8301168501019250505092915050565b8051602080830151919081101562000b7c576000198160200360031b1b821691505b50919050565b61221e8062000b926000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c806386892313116100c3578063bc62a0a51161007c578063bc62a0a5146103dc578063bcfb11b014610411578063bf7e214f1461043a578063c6a001791461045f578063d1f856ee14610472578063d78a83b11461048557600080fd5b8063868923131461027357806386f0c47b146102865780638fb3603714610382578063af8d729e146103a3578063b428b0b0146103b6578063b7d2b162146103c957600080fd5b80635dfa73db116101155780635dfa73db146102095780635fa8aad414610212578063605aa10a146102275780636270b7c31461023a57806368ed5d2e1461024d5780637a9e5e4b1461026057600080fd5b8063030149741461015d57806337f135d714610183578063384c9a57146101a0578063392f5f64146101c35780633fd85561146101cb5780635511a6f3146101f6575b600080fd5b61017061016b366004611d54565b610498565b6040519081526020015b60405180910390f35b61018b600081565b60405163ffffffff909116815260200161017a565b6101b36101ae366004611d54565b6104bf565b604051901515815260200161017a565b600454610170565b6101de6101d9366004611d71565b61064c565b6040516001600160401b03909116815260200161017a565b6101de610204366004611e2c565b610691565b6101de61271081565b610225610220366004611e84565b6106c0565b005b6101b3610235366004611ed1565b6106de565b610225610248366004611eec565b61077b565b61022561025b366004611eec565b610792565b61022561026e366004611ed1565b6107a8565b610225610281366004611f18565b61081e565b61032f610294366004611d54565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152506001600160401b0316600090815260016020818152604092839020835160a0810185528154815292015460ff808216151592840192909252610100810490911615159282019290925264ffffffffff62010000830481166060830152600160381b909204909116608082015290565b60405161017a9190600060a08201905082518252602083015115156020830152604083015115156040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b61038a6108ec565b6040516001600160e01b0319909116815260200161017a565b6102256103b1366004611f4f565b610910565b6101b36103c4366004611f6d565b610a2f565b6101b36103d7366004611f6d565b610c0b565b6104046040518060400160405280600981526020016841646d696e526f6c6560b81b81525081565b60405161017a9190611fc6565b6104046040518060400160405280600a8152602001695075626c6963526f6c6560b01b81525081565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161017a565b6101b361046d366004611d54565b610d89565b6101b3610480366004611f6d565b610deb565b610447610493366004611ff9565b610efb565b6001600160401b03811660009081526002602052604081206104b990610f24565b92915050565b6000336104cb83610d89565b6104f757604051627a416f60e01b81526001600160401b03841660048201526024015b60405180910390fd5b6001600160401b03831660009081526002602052604090206105199082610f2e565b1561064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561058b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105af9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b0384166024820152604401600060405180830381600087803b1580156105ff57600080fd5b505af1158015610613573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610639915082610f50565b5060019392505050565b50600092915050565b60006004828154811061066157610661612042565b90600052602060002090600491828204019190066008029054906101000a90046001600160401b03169050919050565b6000600360006106a084610f65565b81526020810191909152604001600020546001600160401b031692915050565b6106cd335b600036610fa3565b6106da82826001806110a3565b5050565b6001600160a01b038116600090815260056020526040808220600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024015b602060405180830381865af4158015610757573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b99190612058565b610784336106c5565b6106da828260006001611380565b61079b336106c5565b6106da8282600180611380565b60005433906001600160a01b031681146107df5760405162d1953b60e31b81526001600160a01b03821660048201526024016104ee565b816001600160a01b03163b600003610815576040516361798f2f60e11b81526001600160a01b03831660048201526024016104ee565b6106da826115b9565b610827336106c5565b610830826106de565b6108585760405163ba52b0f160e01b81526001600160a01b03831660048201526024016104ee565b6001600160a01b0382811660008181526005602052604090819020600101805461ff00191661010086151590810291909117909155600854915163167bd39560e01b8152600481019390935260248301529091169063167bd39590604401600060405180830381600087803b1580156108d057600080fd5b505af11580156108e4573d6000803e3d6000fd5b505050505050565b60008054600160a01b900460ff166109045750600090565b50638fb3603760e01b90565b610919336106c5565b61092282610d89565b61094a5760405163135c79b760e21b81526001600160401b03831660048201526024016104ee565b6001600160401b038216600090815260016020818152604092839020909101805461ff0019166101008515150217905581516356db0c1960e11b8152915173__$d53880c81dc91c20799140d711e5ab8718$__9263adb618329260048083019391928290030181865af41580156109c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e99190612075565b6001600160401b03909216600090815260016020819052604090912001805464ffffffffff93909316600160381b0264ffffffffff60381b199093169290921790915550565b6000610a3a336106c5565b610a4383610d89565b610a6b57604051636777365b60e01b81526001600160401b03841660048201526024016104ee565b6001600160401b03831660009081526001602081905260409091200154610100900460ff1615610ab95760405163fe229d5d60e01b81526001600160401b03841660048201526024016104ee565b6001600160401b0383166000908152600260205260409020610adb9083610f2e565b61064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b03909116906325c471a09073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610b4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b709190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b038516602482015260006044820152606401600060405180830381600087803b158015610bc757600080fd5b505af1158015610bdb573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610c0191508361160d565b50600190506104b9565b6000610c16336106c5565b610c1f83610d89565b610c4757604051634cee277360e11b81526001600160401b03841660048201526024016104ee565b6001600160401b0383166000908152600260205260409020610c699083610f2e565b1561064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610cdb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cff9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b0385166024820152604401600060405180830381600087803b158015610d4f57600080fd5b505af1158015610d63573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610c01915083610f50565b6001600160401b0381166000908152600160208190526040808320909101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b9060240161073a565b600854604051631517388760e21b81526001600160401b03841660048201526000916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b03851660248201526044016040805180830381865afa158015610ecf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef3919061209c565b509392505050565b6001600160401b0382166000908152600260205260408120610f1d9083611622565b9392505050565b60006104b9825490565b6001600160a01b03811660009081526001830160205260408120541515610f1d565b6000610f1d836001600160a01b03841661162e565b600080829050601f81511115610f90578260405163305a27a960e01b81526004016104ee9190611fc6565b8051610f9b826120d4565b179392505050565b600080610fd9610fbb6000546001600160a01b031690565b8630610fcb60046000898b6120fb565b610fd491612125565b611721565b915091508161109c5763ffffffff811615611079576000805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee9061103490889088908890600401612155565b600060405180830381600087803b15801561104e57600080fd5b505af1158015611062573d6000803e3d6000fd5b50506000805460ff60a01b191690555061109c9050565b60405162d1953b60e31b81526001600160a01b03861660048201526024016104ee565b5050505050565b60006040518060a001604052806110b986610f65565b815284151560208201526008546040805163a166aa8960e01b81526001600160a01b038a81166004830152919093019291169063a166aa8990602401602060405180830381865afa158015611112573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111369190612058565b1515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111aa9190612075565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156111ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112239190612075565b64ffffffffff1681525090508060056000876001600160a01b03166001600160a01b031681526020019081526020016000206000820151816000015560208201518160010160006101000a81548160ff02191690831515021790555060408201518160010160016101000a81548160ff02191690831515021790555060608201518160010160026101000a81548164ffffffffff021916908364ffffffffff16021790555060808201518160010160076101000a81548164ffffffffff021916908364ffffffffff16021790555090505084600660008360000151815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055506007859080600181540180825580915050600190039060005260206000200160009091909190916101000a8154816001600160a01b0302191690836001600160a01b031602179055505050505050565b80156113935761139184848461182d565b505b60006040518060a001604052806113a986610f65565b8152602001841515815260200160001515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611408573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142c9190612075565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611481573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a59190612075565b64ffffffffff9081169091526001600160401b03968716600081815260016020818152604080842087518082558884015191850180548a85015160608c01516080909c015161ffff1990921694151561ff001916949094176101009415158502176bffffffffffffffffffff00001916620100009b8b169b909b0264ffffffffff60381b19169a909a17600160381b9a9099169990990297909717909755948352600390819052938220805467ffffffffffffffff191684179055600480549182018155918290527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b9181049190910180549190931660080290930a97880219909216969091029590951790945550505050565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b6000610f1d836001600160a01b038416611c9b565b6000610f1d8383611cea565b60008181526001830160205260408120548015611717576000611652600183612195565b855490915060009061166690600190612195565b90508082146116cb57600086600001828154811061168657611686612042565b90600052602060002001549050808760000184815481106116a9576116a9612042565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806116dc576116dc6121b6565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506104b9565b60009150506104b9565b6040516001600160a01b03848116602483015283811660448301526001600160e01b03198316606483015260009182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161179091906121cc565b600060405180830381855afa9150503d80600081146117cb576040519150601f19603f3d011682016040523d82523d6000602084013e6117d0565b606091505b5091509150811561182257604081511061180257808060200190518101906117f8919061209c565b9094509250611822565b6020815110611822578080602001905181019061181f9190612058565b93505b505094509492505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915260085460408051631d6c8e3f60e21b8152905186926001600160a01b0316916375b238fc9160048083019260209291908290030181865afa1580156118a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c59190612025565b6001600160401b0316816001600160401b0316148061196b5750600860009054906101000a90046001600160a01b03166001600160a01b0316633ca7c02a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119569190612025565b6001600160401b0316816001600160401b0316145b156119945760405163981bf42160e01b81526001600160401b03861660048201526024016104ee565b6001600160401b038516600090815260016020818152604092839020835160a0810185528154815292015460ff808216151592840192909252610100810490911615158284015264ffffffffff620100008204811660608401819052600160381b9092041660808301529151638d38cd4b60e01b81526004810192909252925073__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b90602401602060405180830381865af4158015611a50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a749190612058565b8015611a8857508160200151151583151514155b15611ac557602082015160405162d1cd9360e51b81526001600160401b0387166004820152841515602482015290151560448201526064016104ee565b828015611adc57506127106001600160401b038216105b15611b0557604051633119b9df60e21b81526001600160401b03861660048201526024016104ee565b82158015611b1e57506127106001600160401b03821610155b15611b475760405163094fb39160e01b81526001600160401b03861660048201526024016104ee565b6000611b5285610f65565b9050611b5d81611d14565b600003611b88576040516321ab17ab60e01b81526001600160401b03871660048201526024016104ee565b60008181526003602090815260409182902054825163bc1b392d60e01b81529251611c2b936001600160401b039092169273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9263bc1b392d92600480830193928290030181865af4158015611bf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c199190612025565b6001600160401b039081169116141590565b8015611c5157506000818152600360205260409020546001600160401b03878116911614155b15611c925760008181526003602052604090819020549051631660fb9360e21b81526001600160401b039091166004820152602481018290526044016104ee565b50509392505050565b6000818152600183016020526040812054611ce2575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556104b9565b5060006104b9565b6000826000018281548110611d0157611d01612042565b9060005260206000200154905092915050565b600060ff8216601f8111156104b957604051632cd44ac360e21b815260040160405180910390fd5b6001600160401b0381168114611d5157600080fd5b50565b600060208284031215611d6657600080fd5b8135610f1d81611d3c565b600060208284031215611d8357600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611db157600080fd5b81356001600160401b0380821115611dcb57611dcb611d8a565b604051601f8301601f19908116603f01168101908282118183101715611df357611df3611d8a565b81604052838152866020858801011115611e0c57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215611e3e57600080fd5b81356001600160401b03811115611e5457600080fd5b611e6084828501611da0565b949350505050565b80356001600160a01b0381168114611e7f57600080fd5b919050565b60008060408385031215611e9757600080fd5b611ea083611e68565b915060208301356001600160401b03811115611ebb57600080fd5b611ec785828601611da0565b9150509250929050565b600060208284031215611ee357600080fd5b610f1d82611e68565b60008060408385031215611eff57600080fd5b8235611ea081611d3c565b8015158114611d5157600080fd5b60008060408385031215611f2b57600080fd5b611f3483611e68565b91506020830135611f4481611f0a565b809150509250929050565b60008060408385031215611f6257600080fd5b8235611f3481611d3c565b60008060408385031215611f8057600080fd5b8235611f8b81611d3c565b9150611f9960208401611e68565b90509250929050565b60005b83811015611fbd578181015183820152602001611fa5565b50506000910152565b6020815260008251806020840152611fe5816040850160208701611fa2565b601f01601f19169190910160400192915050565b6000806040838503121561200c57600080fd5b823561201781611d3c565b946020939093013593505050565b60006020828403121561203757600080fd5b8151610f1d81611d3c565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561206a57600080fd5b8151610f1d81611f0a565b60006020828403121561208757600080fd5b815164ffffffffff81168114610f1d57600080fd5b600080604083850312156120af57600080fd5b82516120ba81611f0a565b602084015190925063ffffffff81168114611f4457600080fd5b805160208083015191908110156120f5576000198160200360031b1b821691505b50919050565b6000808585111561210b57600080fd5b8386111561211857600080fd5b5050820193919092039150565b6001600160e01b0319813581811691600485101561214d5780818660040360031b1b83161692505b505092915050565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b818103818111156104b957634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fd5b600082516121de818460208701611fa2565b919091019291505056fea26469706673582212201afec2205a2dbbc56c0c55c3c18432bad4262579d4fbaeb75ef2e308e0298f0d64736f6c63430008140033",
|
768
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c806386892313116100c3578063bc62a0a51161007c578063bc62a0a5146103dc578063bcfb11b014610411578063bf7e214f1461043a578063c6a001791461045f578063d1f856ee14610472578063d78a83b11461048557600080fd5b8063868923131461027357806386f0c47b146102865780638fb3603714610382578063af8d729e146103a3578063b428b0b0146103b6578063b7d2b162146103c957600080fd5b80635dfa73db116101155780635dfa73db146102095780635fa8aad414610212578063605aa10a146102275780636270b7c31461023a57806368ed5d2e1461024d5780637a9e5e4b1461026057600080fd5b8063030149741461015d57806337f135d714610183578063384c9a57146101a0578063392f5f64146101c35780633fd85561146101cb5780635511a6f3146101f6575b600080fd5b61017061016b366004611d54565b610498565b6040519081526020015b60405180910390f35b61018b600081565b60405163ffffffff909116815260200161017a565b6101b36101ae366004611d54565b6104bf565b604051901515815260200161017a565b600454610170565b6101de6101d9366004611d71565b61064c565b6040516001600160401b03909116815260200161017a565b6101de610204366004611e2c565b610691565b6101de61271081565b610225610220366004611e84565b6106c0565b005b6101b3610235366004611ed1565b6106de565b610225610248366004611eec565b61077b565b61022561025b366004611eec565b610792565b61022561026e366004611ed1565b6107a8565b610225610281366004611f18565b61081e565b61032f610294366004611d54565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152506001600160401b0316600090815260016020818152604092839020835160a0810185528154815292015460ff808216151592840192909252610100810490911615159282019290925264ffffffffff62010000830481166060830152600160381b909204909116608082015290565b60405161017a9190600060a08201905082518252602083015115156020830152604083015115156040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b61038a6108ec565b6040516001600160e01b0319909116815260200161017a565b6102256103b1366004611f4f565b610910565b6101b36103c4366004611f6d565b610a2f565b6101b36103d7366004611f6d565b610c0b565b6104046040518060400160405280600981526020016841646d696e526f6c6560b81b81525081565b60405161017a9190611fc6565b6104046040518060400160405280600a8152602001695075626c6963526f6c6560b01b81525081565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161017a565b6101b361046d366004611d54565b610d89565b6101b3610480366004611f6d565b610deb565b610447610493366004611ff9565b610efb565b6001600160401b03811660009081526002602052604081206104b990610f24565b92915050565b6000336104cb83610d89565b6104f757604051627a416f60e01b81526001600160401b03841660048201526024015b60405180910390fd5b6001600160401b03831660009081526002602052604090206105199082610f2e565b1561064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561058b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105af9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b0384166024820152604401600060405180830381600087803b1580156105ff57600080fd5b505af1158015610613573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610639915082610f50565b5060019392505050565b50600092915050565b60006004828154811061066157610661612042565b90600052602060002090600491828204019190066008029054906101000a90046001600160401b03169050919050565b6000600360006106a084610f65565b81526020810191909152604001600020546001600160401b031692915050565b6106cd335b600036610fa3565b6106da82826001806110a3565b5050565b6001600160a01b038116600090815260056020526040808220600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024015b602060405180830381865af4158015610757573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b99190612058565b610784336106c5565b6106da828260006001611380565b61079b336106c5565b6106da8282600180611380565b60005433906001600160a01b031681146107df5760405162d1953b60e31b81526001600160a01b03821660048201526024016104ee565b816001600160a01b03163b600003610815576040516361798f2f60e11b81526001600160a01b03831660048201526024016104ee565b6106da826115b9565b610827336106c5565b610830826106de565b6108585760405163ba52b0f160e01b81526001600160a01b03831660048201526024016104ee565b6001600160a01b0382811660008181526005602052604090819020600101805461ff00191661010086151590810291909117909155600854915163167bd39560e01b8152600481019390935260248301529091169063167bd39590604401600060405180830381600087803b1580156108d057600080fd5b505af11580156108e4573d6000803e3d6000fd5b505050505050565b60008054600160a01b900460ff166109045750600090565b50638fb3603760e01b90565b610919336106c5565b61092282610d89565b61094a5760405163135c79b760e21b81526001600160401b03831660048201526024016104ee565b6001600160401b038216600090815260016020818152604092839020909101805461ff0019166101008515150217905581516356db0c1960e11b8152915173__$d53880c81dc91c20799140d711e5ab8718$__9263adb618329260048083019391928290030181865af41580156109c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e99190612075565b6001600160401b03909216600090815260016020819052604090912001805464ffffffffff93909316600160381b0264ffffffffff60381b199093169290921790915550565b6000610a3a336106c5565b610a4383610d89565b610a6b57604051636777365b60e01b81526001600160401b03841660048201526024016104ee565b6001600160401b03831660009081526001602081905260409091200154610100900460ff1615610ab95760405163fe229d5d60e01b81526001600160401b03841660048201526024016104ee565b6001600160401b0383166000908152600260205260409020610adb9083610f2e565b61064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b03909116906325c471a09073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610b4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b709190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b038516602482015260006044820152606401600060405180830381600087803b158015610bc757600080fd5b505af1158015610bdb573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610c0191508361160d565b50600190506104b9565b6000610c16336106c5565b610c1f83610d89565b610c4757604051634cee277360e11b81526001600160401b03841660048201526024016104ee565b6001600160401b0383166000908152600260205260409020610c699083610f2e565b1561064357600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610cdb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cff9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b0385166024820152604401600060405180830381600087803b158015610d4f57600080fd5b505af1158015610d63573d6000803e3d6000fd5b5050506001600160401b0384166000908152600260205260409020610c01915083610f50565b6001600160401b0381166000908152600160208190526040808320909101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b9060240161073a565b600854604051631517388760e21b81526001600160401b03841660048201526000916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610e59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7d9190612025565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b03851660248201526044016040805180830381865afa158015610ecf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef3919061209c565b509392505050565b6001600160401b0382166000908152600260205260408120610f1d9083611622565b9392505050565b60006104b9825490565b6001600160a01b03811660009081526001830160205260408120541515610f1d565b6000610f1d836001600160a01b03841661162e565b600080829050601f81511115610f90578260405163305a27a960e01b81526004016104ee9190611fc6565b8051610f9b826120d4565b179392505050565b600080610fd9610fbb6000546001600160a01b031690565b8630610fcb60046000898b6120fb565b610fd491612125565b611721565b915091508161109c5763ffffffff811615611079576000805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee9061103490889088908890600401612155565b600060405180830381600087803b15801561104e57600080fd5b505af1158015611062573d6000803e3d6000fd5b50506000805460ff60a01b191690555061109c9050565b60405162d1953b60e31b81526001600160a01b03861660048201526024016104ee565b5050505050565b60006040518060a001604052806110b986610f65565b815284151560208201526008546040805163a166aa8960e01b81526001600160a01b038a81166004830152919093019291169063a166aa8990602401602060405180830381865afa158015611112573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111369190612058565b1515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111aa9190612075565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156111ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112239190612075565b64ffffffffff1681525090508060056000876001600160a01b03166001600160a01b031681526020019081526020016000206000820151816000015560208201518160010160006101000a81548160ff02191690831515021790555060408201518160010160016101000a81548160ff02191690831515021790555060608201518160010160026101000a81548164ffffffffff021916908364ffffffffff16021790555060808201518160010160076101000a81548164ffffffffff021916908364ffffffffff16021790555090505084600660008360000151815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055506007859080600181540180825580915050600190039060005260206000200160009091909190916101000a8154816001600160a01b0302191690836001600160a01b031602179055505050505050565b80156113935761139184848461182d565b505b60006040518060a001604052806113a986610f65565b8152602001841515815260200160001515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611408573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142c9190612075565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611481573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a59190612075565b64ffffffffff9081169091526001600160401b03968716600081815260016020818152604080842087518082558884015191850180548a85015160608c01516080909c015161ffff1990921694151561ff001916949094176101009415158502176bffffffffffffffffffff00001916620100009b8b169b909b0264ffffffffff60381b19169a909a17600160381b9a9099169990990297909717909755948352600390819052938220805467ffffffffffffffff191684179055600480549182018155918290527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b9181049190910180549190931660080290930a97880219909216969091029590951790945550505050565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b6000610f1d836001600160a01b038416611c9b565b6000610f1d8383611cea565b60008181526001830160205260408120548015611717576000611652600183612195565b855490915060009061166690600190612195565b90508082146116cb57600086600001828154811061168657611686612042565b90600052602060002001549050808760000184815481106116a9576116a9612042565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806116dc576116dc6121b6565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506104b9565b60009150506104b9565b6040516001600160a01b03848116602483015283811660448301526001600160e01b03198316606483015260009182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161179091906121cc565b600060405180830381855afa9150503d80600081146117cb576040519150601f19603f3d011682016040523d82523d6000602084013e6117d0565b606091505b5091509150811561182257604081511061180257808060200190518101906117f8919061209c565b9094509250611822565b6020815110611822578080602001905181019061181f9190612058565b93505b505094509492505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915260085460408051631d6c8e3f60e21b8152905186926001600160a01b0316916375b238fc9160048083019260209291908290030181865afa1580156118a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c59190612025565b6001600160401b0316816001600160401b0316148061196b5750600860009054906101000a90046001600160a01b03166001600160a01b0316633ca7c02a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119569190612025565b6001600160401b0316816001600160401b0316145b156119945760405163981bf42160e01b81526001600160401b03861660048201526024016104ee565b6001600160401b038516600090815260016020818152604092839020835160a0810185528154815292015460ff808216151592840192909252610100810490911615158284015264ffffffffff620100008204811660608401819052600160381b9092041660808301529151638d38cd4b60e01b81526004810192909252925073__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b90602401602060405180830381865af4158015611a50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a749190612058565b8015611a8857508160200151151583151514155b15611ac557602082015160405162d1cd9360e51b81526001600160401b0387166004820152841515602482015290151560448201526064016104ee565b828015611adc57506127106001600160401b038216105b15611b0557604051633119b9df60e21b81526001600160401b03861660048201526024016104ee565b82158015611b1e57506127106001600160401b03821610155b15611b475760405163094fb39160e01b81526001600160401b03861660048201526024016104ee565b6000611b5285610f65565b9050611b5d81611d14565b600003611b88576040516321ab17ab60e01b81526001600160401b03871660048201526024016104ee565b60008181526003602090815260409182902054825163bc1b392d60e01b81529251611c2b936001600160401b039092169273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9263bc1b392d92600480830193928290030181865af4158015611bf5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c199190612025565b6001600160401b039081169116141590565b8015611c5157506000818152600360205260409020546001600160401b03878116911614155b15611c925760008181526003602052604090819020549051631660fb9360e21b81526001600160401b039091166004820152602481018290526044016104ee565b50509392505050565b6000818152600183016020526040812054611ce2575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556104b9565b5060006104b9565b6000826000018281548110611d0157611d01612042565b9060005260206000200154905092915050565b600060ff8216601f8111156104b957604051632cd44ac360e21b815260040160405180910390fd5b6001600160401b0381168114611d5157600080fd5b50565b600060208284031215611d6657600080fd5b8135610f1d81611d3c565b600060208284031215611d8357600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611db157600080fd5b81356001600160401b0380821115611dcb57611dcb611d8a565b604051601f8301601f19908116603f01168101908282118183101715611df357611df3611d8a565b81604052838152866020858801011115611e0c57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215611e3e57600080fd5b81356001600160401b03811115611e5457600080fd5b611e6084828501611da0565b949350505050565b80356001600160a01b0381168114611e7f57600080fd5b919050565b60008060408385031215611e9757600080fd5b611ea083611e68565b915060208301356001600160401b03811115611ebb57600080fd5b611ec785828601611da0565b9150509250929050565b600060208284031215611ee357600080fd5b610f1d82611e68565b60008060408385031215611eff57600080fd5b8235611ea081611d3c565b8015158114611d5157600080fd5b60008060408385031215611f2b57600080fd5b611f3483611e68565b91506020830135611f4481611f0a565b809150509250929050565b60008060408385031215611f6257600080fd5b8235611f3481611d3c565b60008060408385031215611f8057600080fd5b8235611f8b81611d3c565b9150611f9960208401611e68565b90509250929050565b60005b83811015611fbd578181015183820152602001611fa5565b50506000910152565b6020815260008251806020840152611fe5816040850160208701611fa2565b601f01601f19169190910160400192915050565b6000806040838503121561200c57600080fd5b823561201781611d3c565b946020939093013593505050565b60006020828403121561203757600080fd5b8151610f1d81611d3c565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561206a57600080fd5b8151610f1d81611f0a565b60006020828403121561208757600080fd5b815164ffffffffff81168114610f1d57600080fd5b600080604083850312156120af57600080fd5b82516120ba81611f0a565b602084015190925063ffffffff81168114611f4457600080fd5b805160208083015191908110156120f5576000198160200360031b1b821691505b50919050565b6000808585111561210b57600080fd5b8386111561211857600080fd5b5050820193919092039150565b6001600160e01b0319813581811691600485101561214d5780818660040360031b1b83161692505b505092915050565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b818103818111156104b957634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fd5b600082516121de818460208701611fa2565b919091019291505056fea26469706673582212201afec2205a2dbbc56c0c55c3c18432bad4262579d4fbaeb75ef2e308e0298f0d64736f6c63430008140033",
|
1124
|
+
"bytecode": "0x608060405234801561001057600080fd5b50613a83806100206000396000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c80635dfa73db11610130578063bc62a0a5116100b8578063d05404431161007c578063d0540443146105a3578063d1f856ee146105ce578063d2192dbf146105e1578063eaf09b3714610614578063f2345aea1461062757600080fd5b8063bc62a0a514610524578063bcfb11b01461054c578063bf7e214f14610575578063c4d66de81461057d578063c6a001791461059057600080fd5b806386892313116100ff578063868923131461049b5780638fb36037146104ae578063b428b0b0146104cf578063b7009613146104e2578063b7d2b1621461051157600080fd5b80635dfa73db146104595780635fa8aad414610462578063605aa10a146104755780637a9e5e4b1461048857600080fd5b80633656481c116101be57806344ec4c301161018257806344ec4c30146103cc5780634a3a1e00146103df578063530dd456146103f25780635511a6f3146104265780635bfa50271461043957600080fd5b80633656481c1461033e57806337f135d714610369578063384c9a5714610386578063392f5f64146103995780633fd85561146103a157600080fd5b8063131021d911610205578063131021d9146102a55780631bdd0cf8146102e257806326decd401461030557806329db8c3d1461031857806330cae1871461032b57600080fd5b806303014974146102375780630c8ae53e1461025d57806312e1ebc51461027257806312f48f1514610292575b600080fd5b61024a61024536600461312e565b61063a565b6040519081526020015b60405180910390f35b61027061026b3660046131ed565b610661565b005b6102856102803660046132ac565b61075c565b6040516102549190613301565b6102706102a0366004613350565b61081a565b6102d560405180604001604052806011815260200170496e7374616e63654f776e6572526f6c6560781b81525081565b60405161025491906133c3565b6102f56102f036600461312e565b610833565b6040519015158152602001610254565b6102f56103133660046132ac565b610b53565b6102706103263660046131ed565b610bc2565b6102706103393660046133f6565b610c9b565b61035161034c36600461342f565b610d97565b6040516001600160a01b039091168152602001610254565b610371600081565b60405163ffffffff9091168152602001610254565b6102f561039436600461312e565b610dc2565b60035461024a565b6103b46103af366004613463565b610e48565b6040516001600160401b039091168152602001610254565b6102706103da366004613350565b610e8d565b6102706103ed36600461347c565b610f38565b6103b461040036600461312e565b6001600160401b0390811660009081526020819052604090206001015461010090041690565b6103b461043436600461342f565b610f4d565b61044c61044736600461312e565b610f7c565b604051610254919061349a565b6103b461271081565b610270610470366004613350565b611042565b6102f56104833660046132ac565b611057565b6102706104963660046132ac565b6110d0565b6102706104a93660046134fe565b611153565b6104b661128d565b6040516001600160e01b03199091168152602001610254565b6102f56104dd36600461352c565b6112c6565b6104f56104f0366004613572565b611575565b60408051921515835263ffffffff909116602083015201610254565b6102f561051f36600461352c565b6115fa565b6102d56040518060400160405280600981526020016841646d696e526f6c6560b81b81525081565b6102d56040518060400160405280600a8152602001695075626c6963526f6c6560b01b81525081565b610351611758565b61027061058b3660046132ac565b611774565b6102f561059e36600461312e565b611ad1565b6102d56040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b6102f56105dc36600461352c565b611b32565b6105f46105ef3660046135b9565b611c2a565b604080516001600160401b03938416815292909116602083015201610254565b610351610622366004613612565b611c78565b61027061063536600461363e565b611ca1565b6001600160401b038116600090815260016020526040812061065b90611cc5565b92915050565b61066e335b600036611ccf565b600061067985611dcd565b6000818152600660205260409020549091506001600160a01b031660036001600160a01b03821660009081526005602052604090206001015460ff1660038111156106c6576106c66132c9565b036106f25780600360405163ecec011f60e01b81526004016106e99291906136a1565b60405180910390fd5b60036001600160401b03841660009081526020819052604090206001015460ff166003811115610724576107246132c9565b0361074757826003604051630bb1a0c760e01b81526004016106e99291906136be565b6107548183878787611e0b565b505050505050565b6040805160a080820183526000808352602080840182905283850182905260608401829052608084018290526001600160a01b038616825260058152908490208451928301909452835482526001840154929391929083019060ff1660038111156107c9576107c96132c9565b60038111156107da576107da6132c9565b81526001919091015460ff6101008204161515602083015264ffffffffff62010000820481166040840152600160381b9091041660609091015292915050565b61082333610666565b61082f82826001611ede565b5050565b6000816000610862826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af41580156108d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f991906136db565b336040518363ffffffff1660e01b81526004016109179291906136f8565b6040805180830381865afa158015610933573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610957919061371a565b915091508063ffffffff1660001461097157610971613752565b816109ac57335b6040516366c7cee960e01b81526001600160a01b0390911660048201526001600160401b03851660248201526044016106e9565b6109b586611ad1565b6109dd5760405163f5edec3f60e01b81526001600160401b03871660048201526024016106e9565b6001600160401b03861660009081526001602052604081206109fe90611cc5565b905060005b81811015610b48576001600160401b0388166000908152600160205260408120610a2d9083612322565b6001600160401b038a166000908152600160205260409020909150610a52908261232e565b50600854604051631517388760e21b81526001600160401b038b1660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae491906136db565b836040518363ffffffff1660e01b8152600401610b029291906136f8565b600060405180830381600087803b158015610b1c57600080fd5b505af1158015610b30573d6000803e3d6000fd5b50505050508080610b409061377e565b915050610a03565b505050505050919050565b60085460405163a166aa8960e01b81526001600160a01b038381166004830152600092169063a166aa8990602401602060405180830381865afa158015610b9e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190613797565b610bcb33610666565b6000610bd685611dcd565b6000818152600660205260409020549091506001600160a01b031660016001600160a01b03821660009081526005602052604090206001015460ff166003811115610c2357610c236132c9565b03610c465780600160405163ecec011f60e01b81526004016106e99291906136a1565b60016001600160401b03841660009081526020819052604090206001015460ff166003811115610c7857610c786132c9565b0361074757826001604051630bb1a0c760e01b81526004016106e99291906136be565b610ca433610666565b610cad82611ad1565b610cd55760405163f5edec3f60e01b81526001600160401b03831660048201526024016106e9565b60016001600160401b03831660009081526020819052604090206001015460ff166003811115610d0757610d076132c9565b03610d2a57816001604051630bb1a0c760e01b81526004016106e99291906136be565b610d3381611ad1565b610d5b5760405163f5edec3f60e01b81526001600160401b03821660048201526024016106e9565b6001600160401b0391821660009081526020819052604090206001018054929091166101000268ffffffffffffffff0019909216919091179055565b600080610da383611dcd565b6000908152600660205260409020546001600160a01b03169392505050565b6001600160401b038116600090815260208190526040812060019081015460ff1690816003811115610df657610df66132c9565b1480610e1357506002816003811115610e1157610e116132c9565b145b15610e35578281604051630bb1a0c760e01b81526004016106e99291906136be565b33610e408482612343565b949350505050565b600060038281548110610e5d57610e5d6137b4565b90600052602060002090600491828204019190066008029054906101000a90046001600160401b03169050919050565b610e9633610666565b60095460405163c3c5a54760e01b81526001600160a01b0384811660048301529091169063c3c5a54790602401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f049190613797565b610f2c576040516306ad3ea560e51b81526001600160a01b03831660048201526024016106e9565b61082f82826002611ede565b610f4133610666565b61082f8282600161247d565b600060026000610f5c84611dcd565b81526020810191909152604001600020546001600160401b031692915050565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091526001600160401b03821660009081526020818152604091829020825160a08101909352805483526001810154909183019060ff166003811115610fec57610fec6132c9565b6003811115610ffd57610ffd6132c9565b8152600191909101546001600160401b03610100820416602083015264ffffffffff600160481b820481166040840152600160701b9091041660609091015292915050565b61104b33610666565b61082f82826003611ede565b6001600160a01b038116600090815260056020526040808220600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024015b602060405180830381865af4158015610b9e573d6000803e3d6000fd5b336110d9611758565b6001600160a01b0316816001600160a01b0316146111145760405162d1953b60e31b81526001600160a01b03821660048201526024016106e9565b816001600160a01b03163b60000361114a576040516361798f2f60e11b81526001600160a01b03831660048201526024016106e9565b61082f8261283e565b61115c33610666565b6001600160a01b03821660008181526005602052604090206001015460ff1690158061119957506000816003811115611197576111976132c9565b145b156111c25760405163b8c1f4e560e01b81526001600160a01b03841660048201526024016106e9565b60018160038111156111d6576111d66132c9565b036111f857828160405163ecec011f60e01b81526004016106e99291906136a1565b6001600160a01b0383811660008181526005602052604090819020600101805461ff00191661010087151590810291909117909155600854915163167bd39560e01b8152600481019390935260248301529091169063167bd39590604401600060405180830381600087803b15801561127057600080fd5b505af1158015611284573d6000803e3d6000fd5b50505050505050565b600080516020613a2e833981519152805460009190600160a01b900460ff166112b75760006112c0565b638fb3603760e01b5b91505090565b60008260006112f5826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061138c91906136db565b336040518363ffffffff1660e01b81526004016113aa9291906136f8565b6040805180830381865afa1580156113c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ea919061371a565b915091508063ffffffff1660001461140457611404613752565b8161140f5733610978565b61141887611ad1565b6114405760405163f5edec3f60e01b81526001600160401b03881660048201526024016106e9565b6001600160401b0387166000908152600160205260409020611462908761289f565b9450841561156b57600854604051631517388760e21b81526001600160401b03891660048201526001600160a01b03909116906325c471a09073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af41580156114d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fb91906136db565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b038916602482015260006044820152606401600060405180830381600087803b15801561155257600080fd5b505af1158015611566573d6000803e3d6000fd5b505050505b5050505092915050565b60085460405163b700961360e01b815260009182916001600160a01b039091169063b7009613906115ae908890889088906004016137ca565b6040805180830381865afa1580156115ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ee919061371a565b91509150935093915050565b6000826000611629826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561169c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c091906136db565b336040518363ffffffff1660e01b81526004016116de9291906136f8565b6040805180830381865afa1580156116fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171e919061371a565b915091508063ffffffff1660001461173857611738613752565b816117435733610978565b61174d8787612343565b979650505050505050565b600080516020613a2e833981519152546001600160a01b031690565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156117b95750825b90506000826001600160401b031660011480156117d55750303b155b9050811580156117e3575080155b156118015760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561182b57845460ff60401b1916600160401b1785555b60008690506000816001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015611870573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189491906137f7565b90506000826001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118fa91906137f7565b9050611905816128b4565b600880546001600160a01b038084166001600160a01b03199283161790925560098054928516929091169190911790556004805467ffffffffffffffff191661271017905561197e6119556128c8565b6040518060400160405280600981526020016841646d696e526f6c6560b81b815250600161247d565b6119b3611989612945565b6040518060400160405280600a8152602001695075626c6963526f6c6560b01b815250600161247d565b6119ea6119be612986565b6040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b815250600161247d565b611a266119f56129c2565b60405180604001604052806011815260200170496e7374616e63654f776e6572526f6c6560781b815250600261247d565b611a5b60016000611a356128c8565b6001600160401b03166001600160401b031681526020019081526020016000203061289f565b50611a6d611a67612986565b8a6112c6565b50611a81611a796129c2565b610339612986565b505050831561075457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b6001600160401b038116600090815260208190526040808220600101549051638d38cd4b60e01b8152600160481b90910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024016110b3565b600854604051631517388760e21b81526001600160401b03841660048201526000916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015611ba0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bc491906136db565b846040518363ffffffff1660e01b8152600401611be29291906136f8565b6040805180830381865afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c22919061371a565b509392505050565b600080611c3633610666565b611c3e6129fe565b9092509050611c4f8285600361247d565b611c5b8184600361247d565b611c658282610c9b565b611c71816103396129c2565b9250929050565b6001600160401b0382166000908152600160205260408120611c9a9083612322565b9392505050565b611caa33610666565b611cb68383600261247d565b611cc08382610c9b565b505050565b600061065b825490565b600080516020613a2e833981519152600080611d0a611cec611758565b8730611cfc600460008a8c613814565b611d059161383e565b612b40565b91509150816107545763ffffffff811615611daa57825460ff60a01b1916600160a01b178355611d38611758565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b8152600401611d679392919061386e565b600060405180830381600087803b158015611d8157600080fd5b505af1158015611d95573d6000803e3d6000fd5b5050845460ff60a01b19168555506107549050565b60405162d1953b60e31b81526001600160a01b03871660048201526024016106e9565b600080829050601f81511115611df8578260405163305a27a960e01b81526004016106e991906133c3565b8051611e03826138ae565b179392505050565b6001600160a01b038516611e3d5760405163b8c1f4e560e01b81526001600160a01b03861660048201526024016106e9565b611e4681611ad1565b611e6e5760405163f5edec3f60e01b81526001600160401b03821660048201526024016106e9565b6008546040516308d6122d60e01b815282916001600160a01b0316906308d6122d90611ea49089908890889087906004016138d5565b600060405180830381600087803b158015611ebe57600080fd5b505af1158015611ed2573d6000803e3d6000fd5b50505050505050505050565b6000611ee983611dcd565b9050611ef6848284612c37565b6001600160a01b03841660009081526005602052604090819020600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b90602401602060405180830381865af4158015611f6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f939190613797565b15611fd4576001600160a01b03841660008181526005602052604090819020549051632969db5760e11b8152600481019290925260248201526044016106e9565b6000818152600660205260409020546001600160a01b03161561203557600081815260066020526040908190205490516361c0558f60e01b81526001600160a01b0380871660048301529091166024820152604481018290526064016106e9565b60085460405163a166aa8960e01b81526001600160a01b038681166004830152600092169063a166aa8990602401602060405180830381865afa158015612080573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120a49190613797565b90506040518060a001604052808381526020018460038111156120c9576120c96132c9565b8152602001821515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561211f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121439190613948565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612198573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121bc9190613948565b64ffffffffff1690526001600160a01b0386166000908152600560209081526040909120825181559082015160018083018054909160ff199091169083600381111561220a5761220a6132c9565b021790555060408281015160019283018054606086015160809096015166ffffffffffff00199091166101009315159390930266ffffffffff00001916929092176201000064ffffffffff96871602176bffffffffff000000000000001916600160381b9590921694909402179092556000848152600660205282812080546001600160a01b03199081166001600160a01b038b169081179092556007805494850181559092527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68890920180549091169091179055517f1b6c9e4eef57701705db39664c8777cd8c15bb0f52556130a44b55e30cd501e89061231390879085908790869061396f565b60405180910390a15050505050565b6000611c9a8383612d23565b6000611c9a836001600160a01b038416612d4d565b600061234e83611ad1565b6123765760405163f5edec3f60e01b81526001600160401b03841660048201526024016106e9565b6001600160401b0383166000908152600160205260409020612398908361232e565b9050801561065b57600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561240d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061243191906136db565b846040518363ffffffff1660e01b815260040161244f9291906136f8565b600060405180830381600087803b15801561246957600080fd5b505af115801561156b573d6000803e3d6000fd5b600061248883611dcd565b9050612495848284612e47565b61249e84611ad1565b156124c7576040516330907ba960e01b81526001600160401b03851660048201526024016106e9565b6000818152600260205260409081902054905163a42e52e960e01b81526001600160401b03909116600482015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063a42e52e990602401602060405180830381865af4158015612530573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125549190613797565b1561259d576000818152600260205260409081902054905163af48012f60e01b81526001600160401b0380871660048301529091166024820152604481018290526064016106e9565b6040518060a001604052808281526020018360038111156125c0576125c06132c9565b81526020016125cd6128c8565b6001600160401b0316815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612624573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126489190613948565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561269d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126c19190613948565b64ffffffffff1690526001600160401b038516600090815260208181526040909120825181559082015160018083018054909160ff199091169083600381111561270d5761270d6132c9565b02179055506040828101516001928301805460608601516080909601516dffffffffffffffffffffffffff00199091166101006001600160401b0394851681026dffffffffff000000000000000000191691909117600160481b64ffffffffff988916021764ffffffffff60701b1916600160701b979092169690960217905560008581526002602052828120805467ffffffffffffffff19168a8416908117909155600380549586018155918290527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b600486040180549590921660080290950a918202199093169302929092179055517f946b8e9c3ff1c1ed025292a56da516b43a836f1a9f35bc2ee6de53d879d6d6b090612830908690849086906139a4565b60405180910390a150505050565b600080516020613a2e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6000611c9a836001600160a01b038416613036565b6128bc613085565b6128c5816130d0565b50565b6040516368aebf7b60e01b81526000600482018190529073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024015b602060405180830381865af415801561291c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294091906136db565b905090565b6040516368aebf7b60e01b81526001600160401b03600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b6040516368aebf7b60e01b8152610a28600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b6040516368aebf7b60e01b815261076c600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b60045460009081906001600160401b031681612a1b8260016139c8565b9050612a288260026139c8565b6004805467ffffffffffffffff19166001600160401b039283161781556040516368aebf7b60e01b81529184169082015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401602060405180830381865af4158015612a95573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ab991906136db565b6040516368aebf7b60e01b81526001600160401b038316600482015290945073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401602060405180830381865af4158015612b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b3891906136db565b925050509091565b600080600080876001600160a01b0316878787604051602401612b65939291906137ca565b60408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b17905251612b9a91906139e8565b600060405180830381855afa9150503d8060008114612bd5576040519150601f19603f3d011682016040523d82523d6000602084013e612bda565b606091505b50915091508115612c2c576040815110612c0c5780806020019051810190612c02919061371a565b9094509250612c2c565b6020815110612c2c5780806020019051810190612c299190613797565b93505b505094509492505050565b6000836001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c9b91906137f7565b9050612ca5611758565b6001600160a01b0316816001600160a01b031614612ce957604051631db0625160e01b81526001600160a01b038086166004830152821660248201526044016106e9565b612cf2836130e1565b600003612d1d5760405163a12ddedf60e01b81526001600160a01b03851660048201526024016106e9565b50505050565b6000826000018281548110612d3a57612d3a6137b4565b9060005260206000200154905092915050565b60008181526001830160205260408120548015612e36576000612d71600183613a04565b8554909150600090612d8590600190613a04565b9050808214612dea576000866000018281548110612da557612da56137b4565b9060005260206000200154905080876000018481548110612dc857612dc86137b4565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612dfb57612dfb613a17565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061065b565b600091505061065b565b5092915050565b604051631517388760e21b81526001600160401b038416600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015612ea2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ec691906136db565b6001600160401b031690506003826003811115612ee557612ee56132c9565b148015612ef3575061271081105b15612f1c5760405163be511cc160e01b81526001600160401b03851660048201526024016106e9565b6003826003811115612f3057612f306132c9565b14158015612f4057506127108110155b8015612fd95750612f4f612945565b604051631517388760e21b81526001600160401b03909116600482015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015612fa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fcc91906136db565b6001600160401b03168114155b1561300257604051630e08ff2d60e11b81526001600160401b03851660048201526024016106e9565b61300b836130e1565b600003612d1d57604051631367e80d60e31b81526001600160401b03851660048201526024016106e9565b600081815260018301602052604081205461307d5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561065b565b50600061065b565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166130ce57604051631afcd79f60e31b815260040160405180910390fd5b565b6130d8613085565b6128c58161283e565b600060ff8216601f81111561065b57604051632cd44ac360e21b815260040160405180910390fd5b6001600160401b03811681146128c557600080fd5b803561312981613109565b919050565b60006020828403121561314057600080fd5b8135611c9a81613109565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261317257600080fd5b81356001600160401b038082111561318c5761318c61314b565b604051601f8301601f19908116603f011681019082821181831017156131b4576131b461314b565b816040528381528660208588010111156131cd57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806060858703121561320357600080fd5b84356001600160401b038082111561321a57600080fd5b61322688838901613161565b9550602087013591508082111561323c57600080fd5b818701915087601f83011261325057600080fd5b81358181111561325f57600080fd5b8860208260051b850101111561327457600080fd5b60208301955080945050505061328c6040860161311e565b905092959194509250565b6001600160a01b03811681146128c557600080fd5b6000602082840312156132be57600080fd5b8135611c9a81613297565b634e487b7160e01b600052602160045260246000fd5b600481106132fd57634e487b7160e01b600052602160045260246000fd5b9052565b8151815260208083015160a083019161331c908401826132df565b50604083015115156040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b6000806040838503121561336357600080fd5b823561336e81613297565b915060208301356001600160401b0381111561338957600080fd5b61339585828601613161565b9150509250929050565b60005b838110156133ba5781810151838201526020016133a2565b50506000910152565b60208152600082518060208401526133e281604085016020870161339f565b601f01601f19169190910160400192915050565b6000806040838503121561340957600080fd5b823561341481613109565b9150602083013561342481613109565b809150509250929050565b60006020828403121561344157600080fd5b81356001600160401b0381111561345757600080fd5b610e4084828501613161565b60006020828403121561347557600080fd5b5035919050565b6000806040838503121561348f57600080fd5b823561336e81613109565b8151815260208083015160a08301916134b5908401826132df565b506001600160401b036040840151166040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b80151581146128c557600080fd5b6000806040838503121561351157600080fd5b823561351c81613297565b91506020830135613424816134f0565b6000806040838503121561353f57600080fd5b823561354a81613109565b9150602083013561342481613297565b80356001600160e01b03198116811461312957600080fd5b60008060006060848603121561358757600080fd5b833561359281613297565b925060208401356135a281613297565b91506135b06040850161355a565b90509250925092565b600080604083850312156135cc57600080fd5b82356001600160401b03808211156135e357600080fd5b6135ef86838701613161565b9350602085013591508082111561360557600080fd5b5061339585828601613161565b6000806040838503121561362557600080fd5b823561363081613109565b946020939093013593505050565b60008060006060848603121561365357600080fd5b833561365e81613109565b925060208401356001600160401b0381111561367957600080fd5b61368586828701613161565b925050604084013561369681613109565b809150509250925092565b6001600160a01b038316815260408101611c9a60208301846132df565b6001600160401b038316815260408101611c9a60208301846132df565b6000602082840312156136ed57600080fd5b8151611c9a81613109565b6001600160401b039290921682526001600160a01b0316602082015260400190565b6000806040838503121561372d57600080fd5b8251613738816134f0565b602084015190925063ffffffff8116811461342457600080fd5b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161379057613790613768565b5060010190565b6000602082840312156137a957600080fd5b8151611c9a816134f0565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b60006020828403121561380957600080fd5b8151611c9a81613297565b6000808585111561382457600080fd5b8386111561383157600080fd5b5050820193919092039150565b6001600160e01b031981358181169160048510156138665780818660040360031b1b83161692505b505092915050565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b805160208083015191908110156138cf576000198160200360031b1b821691505b50919050565b6001600160a01b038516815260606020808301829052908201849052600090859060808401835b87811015613929576001600160e01b03196139168561355a565b16825292820192908201906001016138fc565b508093505050506001600160401b038316604083015295945050505050565b60006020828403121561395a57600080fd5b815164ffffffffff81168114611c9a57600080fd5b6001600160a01b0385168152602081018490526080810161399360408301856132df565b821515606083015295945050505050565b6001600160401b03841681526020810183905260608101610e4060408301846132df565b6001600160401b03818116838216019080821115612e4057612e40613768565b600082516139fa81846020870161339f565b9190910192915050565b8181038181111561065b5761065b613768565b634e487b7160e01b600052603160045260246000fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220a12730de3560cd621ff7488dacb5e00d0dca5f9a99dfcfddf1fcd5e304fe6a7364736f6c63430008140033",
|
1125
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102325760003560e01c80635dfa73db11610130578063bc62a0a5116100b8578063d05404431161007c578063d0540443146105a3578063d1f856ee146105ce578063d2192dbf146105e1578063eaf09b3714610614578063f2345aea1461062757600080fd5b8063bc62a0a514610524578063bcfb11b01461054c578063bf7e214f14610575578063c4d66de81461057d578063c6a001791461059057600080fd5b806386892313116100ff578063868923131461049b5780638fb36037146104ae578063b428b0b0146104cf578063b7009613146104e2578063b7d2b1621461051157600080fd5b80635dfa73db146104595780635fa8aad414610462578063605aa10a146104755780637a9e5e4b1461048857600080fd5b80633656481c116101be57806344ec4c301161018257806344ec4c30146103cc5780634a3a1e00146103df578063530dd456146103f25780635511a6f3146104265780635bfa50271461043957600080fd5b80633656481c1461033e57806337f135d714610369578063384c9a5714610386578063392f5f64146103995780633fd85561146103a157600080fd5b8063131021d911610205578063131021d9146102a55780631bdd0cf8146102e257806326decd401461030557806329db8c3d1461031857806330cae1871461032b57600080fd5b806303014974146102375780630c8ae53e1461025d57806312e1ebc51461027257806312f48f1514610292575b600080fd5b61024a61024536600461312e565b61063a565b6040519081526020015b60405180910390f35b61027061026b3660046131ed565b610661565b005b6102856102803660046132ac565b61075c565b6040516102549190613301565b6102706102a0366004613350565b61081a565b6102d560405180604001604052806011815260200170496e7374616e63654f776e6572526f6c6560781b81525081565b60405161025491906133c3565b6102f56102f036600461312e565b610833565b6040519015158152602001610254565b6102f56103133660046132ac565b610b53565b6102706103263660046131ed565b610bc2565b6102706103393660046133f6565b610c9b565b61035161034c36600461342f565b610d97565b6040516001600160a01b039091168152602001610254565b610371600081565b60405163ffffffff9091168152602001610254565b6102f561039436600461312e565b610dc2565b60035461024a565b6103b46103af366004613463565b610e48565b6040516001600160401b039091168152602001610254565b6102706103da366004613350565b610e8d565b6102706103ed36600461347c565b610f38565b6103b461040036600461312e565b6001600160401b0390811660009081526020819052604090206001015461010090041690565b6103b461043436600461342f565b610f4d565b61044c61044736600461312e565b610f7c565b604051610254919061349a565b6103b461271081565b610270610470366004613350565b611042565b6102f56104833660046132ac565b611057565b6102706104963660046132ac565b6110d0565b6102706104a93660046134fe565b611153565b6104b661128d565b6040516001600160e01b03199091168152602001610254565b6102f56104dd36600461352c565b6112c6565b6104f56104f0366004613572565b611575565b60408051921515835263ffffffff909116602083015201610254565b6102f561051f36600461352c565b6115fa565b6102d56040518060400160405280600981526020016841646d696e526f6c6560b81b81525081565b6102d56040518060400160405280600a8152602001695075626c6963526f6c6560b01b81525081565b610351611758565b61027061058b3660046132ac565b611774565b6102f561059e36600461312e565b611ad1565b6102d56040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b6102f56105dc36600461352c565b611b32565b6105f46105ef3660046135b9565b611c2a565b604080516001600160401b03938416815292909116602083015201610254565b610351610622366004613612565b611c78565b61027061063536600461363e565b611ca1565b6001600160401b038116600090815260016020526040812061065b90611cc5565b92915050565b61066e335b600036611ccf565b600061067985611dcd565b6000818152600660205260409020549091506001600160a01b031660036001600160a01b03821660009081526005602052604090206001015460ff1660038111156106c6576106c66132c9565b036106f25780600360405163ecec011f60e01b81526004016106e99291906136a1565b60405180910390fd5b60036001600160401b03841660009081526020819052604090206001015460ff166003811115610724576107246132c9565b0361074757826003604051630bb1a0c760e01b81526004016106e99291906136be565b6107548183878787611e0b565b505050505050565b6040805160a080820183526000808352602080840182905283850182905260608401829052608084018290526001600160a01b038616825260058152908490208451928301909452835482526001840154929391929083019060ff1660038111156107c9576107c96132c9565b60038111156107da576107da6132c9565b81526001919091015460ff6101008204161515602083015264ffffffffff62010000820481166040840152600160381b9091041660609091015292915050565b61082333610666565b61082f82826001611ede565b5050565b6000816000610862826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af41580156108d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f991906136db565b336040518363ffffffff1660e01b81526004016109179291906136f8565b6040805180830381865afa158015610933573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610957919061371a565b915091508063ffffffff1660001461097157610971613752565b816109ac57335b6040516366c7cee960e01b81526001600160a01b0390911660048201526001600160401b03851660248201526044016106e9565b6109b586611ad1565b6109dd5760405163f5edec3f60e01b81526001600160401b03871660048201526024016106e9565b6001600160401b03861660009081526001602052604081206109fe90611cc5565b905060005b81811015610b48576001600160401b0388166000908152600160205260408120610a2d9083612322565b6001600160401b038a166000908152600160205260409020909150610a52908261232e565b50600854604051631517388760e21b81526001600160401b038b1660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015610ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae491906136db565b836040518363ffffffff1660e01b8152600401610b029291906136f8565b600060405180830381600087803b158015610b1c57600080fd5b505af1158015610b30573d6000803e3d6000fd5b50505050508080610b409061377e565b915050610a03565b505050505050919050565b60085460405163a166aa8960e01b81526001600160a01b038381166004830152600092169063a166aa8990602401602060405180830381865afa158015610b9e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190613797565b610bcb33610666565b6000610bd685611dcd565b6000818152600660205260409020549091506001600160a01b031660016001600160a01b03821660009081526005602052604090206001015460ff166003811115610c2357610c236132c9565b03610c465780600160405163ecec011f60e01b81526004016106e99291906136a1565b60016001600160401b03841660009081526020819052604090206001015460ff166003811115610c7857610c786132c9565b0361074757826001604051630bb1a0c760e01b81526004016106e99291906136be565b610ca433610666565b610cad82611ad1565b610cd55760405163f5edec3f60e01b81526001600160401b03831660048201526024016106e9565b60016001600160401b03831660009081526020819052604090206001015460ff166003811115610d0757610d076132c9565b03610d2a57816001604051630bb1a0c760e01b81526004016106e99291906136be565b610d3381611ad1565b610d5b5760405163f5edec3f60e01b81526001600160401b03821660048201526024016106e9565b6001600160401b0391821660009081526020819052604090206001018054929091166101000268ffffffffffffffff0019909216919091179055565b600080610da383611dcd565b6000908152600660205260409020546001600160a01b03169392505050565b6001600160401b038116600090815260208190526040812060019081015460ff1690816003811115610df657610df66132c9565b1480610e1357506002816003811115610e1157610e116132c9565b145b15610e35578281604051630bb1a0c760e01b81526004016106e99291906136be565b33610e408482612343565b949350505050565b600060038281548110610e5d57610e5d6137b4565b90600052602060002090600491828204019190066008029054906101000a90046001600160401b03169050919050565b610e9633610666565b60095460405163c3c5a54760e01b81526001600160a01b0384811660048301529091169063c3c5a54790602401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f049190613797565b610f2c576040516306ad3ea560e51b81526001600160a01b03831660048201526024016106e9565b61082f82826002611ede565b610f4133610666565b61082f8282600161247d565b600060026000610f5c84611dcd565b81526020810191909152604001600020546001600160401b031692915050565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091526001600160401b03821660009081526020818152604091829020825160a08101909352805483526001810154909183019060ff166003811115610fec57610fec6132c9565b6003811115610ffd57610ffd6132c9565b8152600191909101546001600160401b03610100820416602083015264ffffffffff600160481b820481166040840152600160701b9091041660609091015292915050565b61104b33610666565b61082f82826003611ede565b6001600160a01b038116600090815260056020526040808220600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024015b602060405180830381865af4158015610b9e573d6000803e3d6000fd5b336110d9611758565b6001600160a01b0316816001600160a01b0316146111145760405162d1953b60e31b81526001600160a01b03821660048201526024016106e9565b816001600160a01b03163b60000361114a576040516361798f2f60e11b81526001600160a01b03831660048201526024016106e9565b61082f8261283e565b61115c33610666565b6001600160a01b03821660008181526005602052604090206001015460ff1690158061119957506000816003811115611197576111976132c9565b145b156111c25760405163b8c1f4e560e01b81526001600160a01b03841660048201526024016106e9565b60018160038111156111d6576111d66132c9565b036111f857828160405163ecec011f60e01b81526004016106e99291906136a1565b6001600160a01b0383811660008181526005602052604090819020600101805461ff00191661010087151590810291909117909155600854915163167bd39560e01b8152600481019390935260248301529091169063167bd39590604401600060405180830381600087803b15801561127057600080fd5b505af1158015611284573d6000803e3d6000fd5b50505050505050565b600080516020613a2e833981519152805460009190600160a01b900460ff166112b75760006112c0565b638fb3603760e01b5b91505090565b60008260006112f5826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015611368573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061138c91906136db565b336040518363ffffffff1660e01b81526004016113aa9291906136f8565b6040805180830381865afa1580156113c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ea919061371a565b915091508063ffffffff1660001461140457611404613752565b8161140f5733610978565b61141887611ad1565b6114405760405163f5edec3f60e01b81526001600160401b03881660048201526024016106e9565b6001600160401b0387166000908152600160205260409020611462908761289f565b9450841561156b57600854604051631517388760e21b81526001600160401b03891660048201526001600160a01b03909116906325c471a09073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af41580156114d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fb91906136db565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b038916602482015260006044820152606401600060405180830381600087803b15801561155257600080fd5b505af1158015611566573d6000803e3d6000fd5b505050505b5050505092915050565b60085460405163b700961360e01b815260009182916001600160a01b039091169063b7009613906115ae908890889088906004016137ca565b6040805180830381865afa1580156115ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ee919061371a565b91509150935093915050565b6000826000611629826001600160401b0390811660009081526020819052604090206001015461010090041690565b600854604051631517388760e21b81526001600160401b038316600482015291925060009182916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561169c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c091906136db565b336040518363ffffffff1660e01b81526004016116de9291906136f8565b6040805180830381865afa1580156116fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171e919061371a565b915091508063ffffffff1660001461173857611738613752565b816117435733610978565b61174d8787612343565b979650505050505050565b600080516020613a2e833981519152546001600160a01b031690565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156117b95750825b90506000826001600160401b031660011480156117d55750303b155b9050811580156117e3575080155b156118015760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561182b57845460ff60401b1916600160401b1785555b60008690506000816001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015611870573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189491906137f7565b90506000826001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118fa91906137f7565b9050611905816128b4565b600880546001600160a01b038084166001600160a01b03199283161790925560098054928516929091169190911790556004805467ffffffffffffffff191661271017905561197e6119556128c8565b6040518060400160405280600981526020016841646d696e526f6c6560b81b815250600161247d565b6119b3611989612945565b6040518060400160405280600a8152602001695075626c6963526f6c6560b01b815250600161247d565b6119ea6119be612986565b6040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b815250600161247d565b611a266119f56129c2565b60405180604001604052806011815260200170496e7374616e63654f776e6572526f6c6560781b815250600261247d565b611a5b60016000611a356128c8565b6001600160401b03166001600160401b031681526020019081526020016000203061289f565b50611a6d611a67612986565b8a6112c6565b50611a81611a796129c2565b610339612986565b505050831561075457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b6001600160401b038116600090815260208190526040808220600101549051638d38cd4b60e01b8152600160481b90910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b906024016110b3565b600854604051631517388760e21b81526001600160401b03841660048201526000916001600160a01b03169063d1f856ee9073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015611ba0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bc491906136db565b846040518363ffffffff1660e01b8152600401611be29291906136f8565b6040805180830381865afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c22919061371a565b509392505050565b600080611c3633610666565b611c3e6129fe565b9092509050611c4f8285600361247d565b611c5b8184600361247d565b611c658282610c9b565b611c71816103396129c2565b9250929050565b6001600160401b0382166000908152600160205260408120611c9a9083612322565b9392505050565b611caa33610666565b611cb68383600261247d565b611cc08382610c9b565b505050565b600061065b825490565b600080516020613a2e833981519152600080611d0a611cec611758565b8730611cfc600460008a8c613814565b611d059161383e565b612b40565b91509150816107545763ffffffff811615611daa57825460ff60a01b1916600160a01b178355611d38611758565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b8152600401611d679392919061386e565b600060405180830381600087803b158015611d8157600080fd5b505af1158015611d95573d6000803e3d6000fd5b5050845460ff60a01b19168555506107549050565b60405162d1953b60e31b81526001600160a01b03871660048201526024016106e9565b600080829050601f81511115611df8578260405163305a27a960e01b81526004016106e991906133c3565b8051611e03826138ae565b179392505050565b6001600160a01b038516611e3d5760405163b8c1f4e560e01b81526001600160a01b03861660048201526024016106e9565b611e4681611ad1565b611e6e5760405163f5edec3f60e01b81526001600160401b03821660048201526024016106e9565b6008546040516308d6122d60e01b815282916001600160a01b0316906308d6122d90611ea49089908890889087906004016138d5565b600060405180830381600087803b158015611ebe57600080fd5b505af1158015611ed2573d6000803e3d6000fd5b50505050505050505050565b6000611ee983611dcd565b9050611ef6848284612c37565b6001600160a01b03841660009081526005602052604090819020600101549051638d38cd4b60e01b81526201000090910464ffffffffff16600482015273__$d53880c81dc91c20799140d711e5ab8718$__90638d38cd4b90602401602060405180830381865af4158015611f6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f939190613797565b15611fd4576001600160a01b03841660008181526005602052604090819020549051632969db5760e11b8152600481019290925260248201526044016106e9565b6000818152600660205260409020546001600160a01b03161561203557600081815260066020526040908190205490516361c0558f60e01b81526001600160a01b0380871660048301529091166024820152604481018290526064016106e9565b60085460405163a166aa8960e01b81526001600160a01b038681166004830152600092169063a166aa8990602401602060405180830381865afa158015612080573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120a49190613797565b90506040518060a001604052808381526020018460038111156120c9576120c96132c9565b8152602001821515815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561211f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121439190613948565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612198573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121bc9190613948565b64ffffffffff1690526001600160a01b0386166000908152600560209081526040909120825181559082015160018083018054909160ff199091169083600381111561220a5761220a6132c9565b021790555060408281015160019283018054606086015160809096015166ffffffffffff00199091166101009315159390930266ffffffffff00001916929092176201000064ffffffffff96871602176bffffffffff000000000000001916600160381b9590921694909402179092556000848152600660205282812080546001600160a01b03199081166001600160a01b038b169081179092556007805494850181559092527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68890920180549091169091179055517f1b6c9e4eef57701705db39664c8777cd8c15bb0f52556130a44b55e30cd501e89061231390879085908790869061396f565b60405180910390a15050505050565b6000611c9a8383612d23565b6000611c9a836001600160a01b038416612d4d565b600061234e83611ad1565b6123765760405163f5edec3f60e01b81526001600160401b03841660048201526024016106e9565b6001600160401b0383166000908152600160205260409020612398908361232e565b9050801561065b57600854604051631517388760e21b81526001600160401b03851660048201526001600160a01b039091169063b7d2b1629073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af415801561240d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061243191906136db565b846040518363ffffffff1660e01b815260040161244f9291906136f8565b600060405180830381600087803b15801561246957600080fd5b505af115801561156b573d6000803e3d6000fd5b600061248883611dcd565b9050612495848284612e47565b61249e84611ad1565b156124c7576040516330907ba960e01b81526001600160401b03851660048201526024016106e9565b6000818152600260205260409081902054905163a42e52e960e01b81526001600160401b03909116600482015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063a42e52e990602401602060405180830381865af4158015612530573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125549190613797565b1561259d576000818152600260205260409081902054905163af48012f60e01b81526001600160401b0380871660048301529091166024820152604481018290526064016106e9565b6040518060a001604052808281526020018360038111156125c0576125c06132c9565b81526020016125cd6128c8565b6001600160401b0316815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612624573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126489190613948565b64ffffffffff16815260200173__$d53880c81dc91c20799140d711e5ab8718$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561269d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126c19190613948565b64ffffffffff1690526001600160401b038516600090815260208181526040909120825181559082015160018083018054909160ff199091169083600381111561270d5761270d6132c9565b02179055506040828101516001928301805460608601516080909601516dffffffffffffffffffffffffff00199091166101006001600160401b0394851681026dffffffffff000000000000000000191691909117600160481b64ffffffffff988916021764ffffffffff60701b1916600160701b979092169690960217905560008581526002602052828120805467ffffffffffffffff19168a8416908117909155600380549586018155918290527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b600486040180549590921660080290950a918202199093169302929092179055517f946b8e9c3ff1c1ed025292a56da516b43a836f1a9f35bc2ee6de53d879d6d6b090612830908690849086906139a4565b60405180910390a150505050565b600080516020613a2e83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6000611c9a836001600160a01b038416613036565b6128bc613085565b6128c5816130d0565b50565b6040516368aebf7b60e01b81526000600482018190529073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024015b602060405180830381865af415801561291c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294091906136db565b905090565b6040516368aebf7b60e01b81526001600160401b03600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b6040516368aebf7b60e01b8152610a28600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b6040516368aebf7b60e01b815261076c600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b906024016128ff565b60045460009081906001600160401b031681612a1b8260016139c8565b9050612a288260026139c8565b6004805467ffffffffffffffff19166001600160401b039283161781556040516368aebf7b60e01b81529184169082015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401602060405180830381865af4158015612a95573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ab991906136db565b6040516368aebf7b60e01b81526001600160401b038316600482015290945073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__906368aebf7b90602401602060405180830381865af4158015612b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b3891906136db565b925050509091565b600080600080876001600160a01b0316878787604051602401612b65939291906137ca565b60408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b17905251612b9a91906139e8565b600060405180830381855afa9150503d8060008114612bd5576040519150601f19603f3d011682016040523d82523d6000602084013e612bda565b606091505b50915091508115612c2c576040815110612c0c5780806020019051810190612c02919061371a565b9094509250612c2c565b6020815110612c2c5780806020019051810190612c299190613797565b93505b505094509492505050565b6000836001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c9b91906137f7565b9050612ca5611758565b6001600160a01b0316816001600160a01b031614612ce957604051631db0625160e01b81526001600160a01b038086166004830152821660248201526044016106e9565b612cf2836130e1565b600003612d1d5760405163a12ddedf60e01b81526001600160a01b03851660048201526024016106e9565b50505050565b6000826000018281548110612d3a57612d3a6137b4565b9060005260206000200154905092915050565b60008181526001830160205260408120548015612e36576000612d71600183613a04565b8554909150600090612d8590600190613a04565b9050808214612dea576000866000018281548110612da557612da56137b4565b9060005260206000200154905080876000018481548110612dc857612dc86137b4565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612dfb57612dfb613a17565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061065b565b600091505061065b565b5092915050565b604051631517388760e21b81526001600160401b038416600482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015612ea2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ec691906136db565b6001600160401b031690506003826003811115612ee557612ee56132c9565b148015612ef3575061271081105b15612f1c5760405163be511cc160e01b81526001600160401b03851660048201526024016106e9565b6003826003811115612f3057612f306132c9565b14158015612f4057506127108110155b8015612fd95750612f4f612945565b604051631517388760e21b81526001600160401b03909116600482015273__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063545ce21c90602401602060405180830381865af4158015612fa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fcc91906136db565b6001600160401b03168114155b1561300257604051630e08ff2d60e11b81526001600160401b03851660048201526024016106e9565b61300b836130e1565b600003612d1d57604051631367e80d60e31b81526001600160401b03851660048201526024016106e9565b600081815260018301602052604081205461307d5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561065b565b50600061065b565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166130ce57604051631afcd79f60e31b815260040160405180910390fd5b565b6130d8613085565b6128c58161283e565b600060ff8216601f81111561065b57604051632cd44ac360e21b815260040160405180910390fd5b6001600160401b03811681146128c557600080fd5b803561312981613109565b919050565b60006020828403121561314057600080fd5b8135611c9a81613109565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261317257600080fd5b81356001600160401b038082111561318c5761318c61314b565b604051601f8301601f19908116603f011681019082821181831017156131b4576131b461314b565b816040528381528660208588010111156131cd57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806060858703121561320357600080fd5b84356001600160401b038082111561321a57600080fd5b61322688838901613161565b9550602087013591508082111561323c57600080fd5b818701915087601f83011261325057600080fd5b81358181111561325f57600080fd5b8860208260051b850101111561327457600080fd5b60208301955080945050505061328c6040860161311e565b905092959194509250565b6001600160a01b03811681146128c557600080fd5b6000602082840312156132be57600080fd5b8135611c9a81613297565b634e487b7160e01b600052602160045260246000fd5b600481106132fd57634e487b7160e01b600052602160045260246000fd5b9052565b8151815260208083015160a083019161331c908401826132df565b50604083015115156040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b6000806040838503121561336357600080fd5b823561336e81613297565b915060208301356001600160401b0381111561338957600080fd5b61339585828601613161565b9150509250929050565b60005b838110156133ba5781810151838201526020016133a2565b50506000910152565b60208152600082518060208401526133e281604085016020870161339f565b601f01601f19169190910160400192915050565b6000806040838503121561340957600080fd5b823561341481613109565b9150602083013561342481613109565b809150509250929050565b60006020828403121561344157600080fd5b81356001600160401b0381111561345757600080fd5b610e4084828501613161565b60006020828403121561347557600080fd5b5035919050565b6000806040838503121561348f57600080fd5b823561336e81613109565b8151815260208083015160a08301916134b5908401826132df565b506001600160401b036040840151166040830152606083015164ffffffffff8082166060850152806080860151166080850152505092915050565b80151581146128c557600080fd5b6000806040838503121561351157600080fd5b823561351c81613297565b91506020830135613424816134f0565b6000806040838503121561353f57600080fd5b823561354a81613109565b9150602083013561342481613297565b80356001600160e01b03198116811461312957600080fd5b60008060006060848603121561358757600080fd5b833561359281613297565b925060208401356135a281613297565b91506135b06040850161355a565b90509250925092565b600080604083850312156135cc57600080fd5b82356001600160401b03808211156135e357600080fd5b6135ef86838701613161565b9350602085013591508082111561360557600080fd5b5061339585828601613161565b6000806040838503121561362557600080fd5b823561363081613109565b946020939093013593505050565b60008060006060848603121561365357600080fd5b833561365e81613109565b925060208401356001600160401b0381111561367957600080fd5b61368586828701613161565b925050604084013561369681613109565b809150509250925092565b6001600160a01b038316815260408101611c9a60208301846132df565b6001600160401b038316815260408101611c9a60208301846132df565b6000602082840312156136ed57600080fd5b8151611c9a81613109565b6001600160401b039290921682526001600160a01b0316602082015260400190565b6000806040838503121561372d57600080fd5b8251613738816134f0565b602084015190925063ffffffff8116811461342457600080fd5b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161379057613790613768565b5060010190565b6000602082840312156137a957600080fd5b8151611c9a816134f0565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b60006020828403121561380957600080fd5b8151611c9a81613297565b6000808585111561382457600080fd5b8386111561383157600080fd5b5050820193919092039150565b6001600160e01b031981358181169160048510156138665780818660040360031b1b83161692505b505092915050565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b805160208083015191908110156138cf576000198160200360031b1b821691505b50919050565b6001600160a01b038516815260606020808301829052908201849052600090859060808401835b87811015613929576001600160e01b03196139168561355a565b16825292820192908201906001016138fc565b508093505050506001600160401b038316604083015295945050505050565b60006020828403121561395a57600080fd5b815164ffffffffff81168114611c9a57600080fd5b6001600160a01b0385168152602081018490526080810161399360408301856132df565b821515606083015295945050505050565b6001600160401b03841681526020810183905260608101610e4060408301846132df565b6001600160401b03818116838216019080821115612e4057612e40613768565b600082516139fa81846020870161339f565b9190910192915050565b8181038181111561065b5761065b613768565b634e487b7160e01b600052603160045260246000fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220a12730de3560cd621ff7488dacb5e00d0dca5f9a99dfcfddf1fcd5e304fe6a7364736f6c63430008140033",
|
769
1126
|
"linkReferences": {
|
770
1127
|
"contracts/types/RoleId.sol": {
|
771
1128
|
"RoleIdLib": [
|
772
1129
|
{
|
773
1130
|
"length": 20,
|
774
|
-
"start":
|
1131
|
+
"start": 2235
|
775
1132
|
},
|
776
1133
|
{
|
777
1134
|
"length": 20,
|
778
|
-
"start":
|
1135
|
+
"start": 2726
|
779
1136
|
},
|
780
1137
|
{
|
781
1138
|
"length": 20,
|
782
|
-
"start":
|
1139
|
+
"start": 4942
|
783
1140
|
},
|
784
1141
|
{
|
785
1142
|
"length": 20,
|
786
|
-
"start":
|
1143
|
+
"start": 5309
|
787
1144
|
},
|
788
1145
|
{
|
789
1146
|
"length": 20,
|
790
|
-
"start":
|
1147
|
+
"start": 5762
|
791
1148
|
},
|
792
1149
|
{
|
793
1150
|
"length": 20,
|
794
|
-
"start":
|
1151
|
+
"start": 7046
|
795
1152
|
},
|
796
1153
|
{
|
797
1154
|
"length": 20,
|
798
|
-
"start":
|
1155
|
+
"start": 9203
|
799
1156
|
},
|
800
1157
|
{
|
801
1158
|
"length": 20,
|
802
|
-
"start":
|
803
|
-
}
|
804
|
-
|
805
|
-
|
806
|
-
|
807
|
-
|
1159
|
+
"start": 9494
|
1160
|
+
},
|
1161
|
+
{
|
1162
|
+
"length": 20,
|
1163
|
+
"start": 10497
|
1164
|
+
},
|
1165
|
+
{
|
1166
|
+
"length": 20,
|
1167
|
+
"start": 10628
|
1168
|
+
},
|
1169
|
+
{
|
1170
|
+
"length": 20,
|
1171
|
+
"start": 10688
|
1172
|
+
},
|
808
1173
|
{
|
809
1174
|
"length": 20,
|
810
|
-
"start":
|
1175
|
+
"start": 10748
|
811
1176
|
},
|
812
1177
|
{
|
813
1178
|
"length": 20,
|
814
|
-
"start":
|
1179
|
+
"start": 10875
|
815
1180
|
},
|
816
1181
|
{
|
817
1182
|
"length": 20,
|
818
|
-
"start":
|
1183
|
+
"start": 11002
|
819
1184
|
},
|
820
1185
|
{
|
821
1186
|
"length": 20,
|
822
|
-
"start":
|
1187
|
+
"start": 11912
|
823
1188
|
},
|
824
1189
|
{
|
825
1190
|
"length": 20,
|
826
|
-
"start":
|
1191
|
+
"start": 12174
|
1192
|
+
}
|
1193
|
+
]
|
1194
|
+
},
|
1195
|
+
"contracts/types/Timestamp.sol": {
|
1196
|
+
"TimestampLib": [
|
1197
|
+
{
|
1198
|
+
"length": 20,
|
1199
|
+
"start": 4277
|
827
1200
|
},
|
828
1201
|
{
|
829
1202
|
"length": 20,
|
830
|
-
"start":
|
1203
|
+
"start": 6960
|
831
1204
|
},
|
832
1205
|
{
|
833
1206
|
"length": 20,
|
834
|
-
"start":
|
1207
|
+
"start": 8021
|
835
1208
|
},
|
836
1209
|
{
|
837
1210
|
"length": 20,
|
838
|
-
"start":
|
1211
|
+
"start": 8440
|
839
1212
|
},
|
840
1213
|
{
|
841
1214
|
"length": 20,
|
842
|
-
"start":
|
1215
|
+
"start": 8561
|
843
1216
|
},
|
844
1217
|
{
|
845
1218
|
"length": 20,
|
846
|
-
"start":
|
1219
|
+
"start": 9725
|
847
1220
|
},
|
848
1221
|
{
|
849
1222
|
"length": 20,
|
850
|
-
"start":
|
1223
|
+
"start": 9846
|
851
1224
|
}
|
852
1225
|
]
|
853
1226
|
}
|
@@ -857,23 +1230,67 @@
|
|
857
1230
|
"RoleIdLib": [
|
858
1231
|
{
|
859
1232
|
"length": 20,
|
860
|
-
"start":
|
1233
|
+
"start": 2203
|
1234
|
+
},
|
1235
|
+
{
|
1236
|
+
"length": 20,
|
1237
|
+
"start": 2694
|
1238
|
+
},
|
1239
|
+
{
|
1240
|
+
"length": 20,
|
1241
|
+
"start": 4910
|
1242
|
+
},
|
1243
|
+
{
|
1244
|
+
"length": 20,
|
1245
|
+
"start": 5277
|
1246
|
+
},
|
1247
|
+
{
|
1248
|
+
"length": 20,
|
1249
|
+
"start": 5730
|
1250
|
+
},
|
1251
|
+
{
|
1252
|
+
"length": 20,
|
1253
|
+
"start": 7014
|
1254
|
+
},
|
1255
|
+
{
|
1256
|
+
"length": 20,
|
1257
|
+
"start": 9171
|
1258
|
+
},
|
1259
|
+
{
|
1260
|
+
"length": 20,
|
1261
|
+
"start": 9462
|
1262
|
+
},
|
1263
|
+
{
|
1264
|
+
"length": 20,
|
1265
|
+
"start": 10465
|
1266
|
+
},
|
1267
|
+
{
|
1268
|
+
"length": 20,
|
1269
|
+
"start": 10596
|
1270
|
+
},
|
1271
|
+
{
|
1272
|
+
"length": 20,
|
1273
|
+
"start": 10656
|
1274
|
+
},
|
1275
|
+
{
|
1276
|
+
"length": 20,
|
1277
|
+
"start": 10716
|
861
1278
|
},
|
862
1279
|
{
|
863
1280
|
"length": 20,
|
864
|
-
"start":
|
1281
|
+
"start": 10843
|
865
1282
|
},
|
866
1283
|
{
|
867
1284
|
"length": 20,
|
868
|
-
"start":
|
1285
|
+
"start": 10970
|
869
1286
|
},
|
870
1287
|
{
|
871
1288
|
"length": 20,
|
872
|
-
"start":
|
1289
|
+
"start": 11880
|
873
1290
|
},
|
874
1291
|
{
|
875
1292
|
"length": 20,
|
876
|
-
"start":
|
1293
|
+
"start": 12142
|
877
1294
|
}
|
878
1295
|
]
|
879
1296
|
},
|
@@ -881,35 +1298,31 @@
|
|
881
1298
|
"TimestampLib": [
|
882
1299
|
{
|
883
1300
|
"length": 20,
|
884
|
-
"start":
|
885
|
-
},
|
886
|
-
{
|
887
|
-
"length": 20,
|
888
|
-
"start": 2442
|
1301
|
+
"start": 4245
|
889
1302
|
},
|
890
1303
|
{
|
891
1304
|
"length": 20,
|
892
|
-
"start":
|
1305
|
+
"start": 6928
|
893
1306
|
},
|
894
1307
|
{
|
895
1308
|
"length": 20,
|
896
|
-
"start":
|
1309
|
+
"start": 7989
|
897
1310
|
},
|
898
1311
|
{
|
899
1312
|
"length": 20,
|
900
|
-
"start":
|
1313
|
+
"start": 8408
|
901
1314
|
},
|
902
1315
|
{
|
903
1316
|
"length": 20,
|
904
|
-
"start":
|
1317
|
+
"start": 8529
|
905
1318
|
},
|
906
1319
|
{
|
907
1320
|
"length": 20,
|
908
|
-
"start":
|
1321
|
+
"start": 9693
|
909
1322
|
},
|
910
1323
|
{
|
911
1324
|
"length": 20,
|
912
|
-
"start":
|
1325
|
+
"start": 9814
|
913
1326
|
}
|
914
1327
|
]
|
915
1328
|
}
|