@etherisc/gif-next 0.0.2-f347f00-614 → 0.0.2-f36fd21-685
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -2
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1253 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +358 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.json +10 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/{shared → authorization}/IAccessAdmin.sol/IAccessAdmin.json +100 -252
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +258 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +290 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/{registry → authorization}/IServiceAuthorization.sol/IServiceAuthorization.json +29 -5
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +390 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +190 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1548 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +410 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +46 -228
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +269 -90
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +83 -55
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +100 -132
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +134 -16
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +6 -19
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +32 -44
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +35 -96
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1208 -290
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +601 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +110 -81
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +65 -125
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +35 -59
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +84 -101
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +182 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- 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/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +1185 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +418 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +43 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +43 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +43 -96
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +32 -32
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +34 -34
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1520 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +410 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +220 -54
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +72 -40
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +102 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +43 -195
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +43 -296
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +36 -36
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +36 -36
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +32 -32
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +34 -34
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1318 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +410 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +72 -72
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +54 -54
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +13 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +32 -42
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +64 -51
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +43 -43
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +63 -58
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +47 -47
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +32 -153
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +20 -20
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +28 -28
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +50 -46
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -183
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +101 -73
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +239 -389
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +18 -18
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +27 -27
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +164 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1159 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +44 -12
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +271 -86
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +77 -61
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +153 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +32 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +11 -5
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +0 -5
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +73 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +32 -53
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +15 -89
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +4 -65
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +6 -6
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +6 -6
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +8 -8
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +6 -6
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +42 -32
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +44 -44
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +40 -40
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -6
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +26 -26
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +31 -31
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +146 -165
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +27 -22
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +37 -8
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +4 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +17 -12
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +4 -4
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +55 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +4 -4
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -4
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +4 -4
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +117 -14
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +4 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +58 -2
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +617 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
- package/contracts/{shared → authorization}/AccessAdmin.sol +135 -294
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/Authorization.sol +218 -0
- package/contracts/authorization/IAccess.sol +48 -0
- package/contracts/{shared → authorization}/IAccessAdmin.sol +34 -60
- package/contracts/authorization/IAuthorization.sol +54 -0
- package/contracts/authorization/IModuleAuthorization.sol +21 -0
- package/contracts/{registry → authorization}/IServiceAuthorization.sol +7 -4
- package/contracts/authorization/ModuleAuthorization.sol +78 -0
- package/contracts/{registry → authorization}/ServiceAuthorization.sol +21 -14
- package/contracts/distribution/BasicDistribution.sol +138 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
- package/contracts/distribution/Distribution.sol +144 -110
- package/contracts/distribution/DistributionService.sol +71 -31
- package/contracts/distribution/DistributionServiceManager.sol +2 -5
- package/contracts/distribution/IDistributionComponent.sol +25 -39
- package/contracts/distribution/IDistributionService.sol +17 -1
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +8 -9
- package/contracts/instance/IInstanceService.sol +13 -18
- package/contracts/instance/Instance.sol +61 -70
- package/contracts/instance/InstanceAdmin.sol +202 -267
- package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
- package/contracts/instance/InstanceReader.sol +22 -9
- package/contracts/instance/InstanceService.sol +74 -70
- package/contracts/instance/InstanceServiceManager.sol +2 -6
- package/contracts/instance/InstanceStore.sol +13 -5
- package/contracts/instance/base/ObjectLifecycle.sol +106 -0
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +11 -12
- package/contracts/instance/module/IComponents.sol +0 -1
- package/contracts/instance/module/IDistribution.sol +0 -1
- package/contracts/oracle/BasicOracle.sol +48 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
- package/contracts/oracle/IOracle.sol +16 -0
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/Oracle.sol +72 -51
- package/contracts/oracle/OracleServiceManager.sol +2 -5
- package/contracts/pool/BasicPool.sol +164 -0
- package/contracts/pool/BasicPoolAuthorization.sol +55 -0
- package/contracts/pool/BundleService.sol +72 -27
- package/contracts/pool/BundleServiceManager.sol +2 -5
- package/contracts/pool/IBundleService.sol +14 -0
- package/contracts/pool/IPoolComponent.sol +6 -60
- package/contracts/pool/Pool.sol +160 -131
- package/contracts/pool/PoolService.sol +12 -30
- package/contracts/pool/PoolServiceManager.sol +2 -5
- package/contracts/product/ApplicationService.sol +12 -36
- package/contracts/product/ApplicationServiceManager.sol +2 -2
- package/contracts/product/BasicProduct.sol +52 -0
- package/contracts/product/BasicProductAuthorization.sol +43 -0
- package/contracts/product/ClaimService.sol +7 -32
- package/contracts/product/ClaimServiceManager.sol +2 -2
- package/contracts/product/IPolicyService.sol +2 -0
- package/contracts/product/IProductComponent.sol +7 -9
- package/contracts/product/PolicyService.sol +28 -4
- package/contracts/product/PolicyServiceManager.sol +2 -5
- package/contracts/product/PricingServiceManager.sol +2 -5
- package/contracts/product/Product.sol +112 -88
- package/contracts/product/ProductService.sol +7 -32
- package/contracts/product/ProductServiceManager.sol +2 -5
- package/contracts/registry/IRegistry.sol +26 -16
- package/contracts/registry/IRegistryService.sol +6 -6
- package/contracts/registry/Registry.sol +85 -85
- package/contracts/registry/RegistryAdmin.sol +118 -86
- package/contracts/registry/RegistryService.sol +4 -18
- package/contracts/registry/RegistryServiceManager.sol +2 -2
- package/contracts/registry/ReleaseLifecycle.sol +27 -0
- package/contracts/registry/ReleaseRegistry.sol +485 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +14 -14
- package/contracts/registry/TokenRegistry.sol +2 -2
- package/contracts/shared/Component.sol +13 -14
- package/contracts/shared/ComponentService.sol +102 -68
- package/contracts/shared/ComponentServiceManager.sol +2 -2
- package/contracts/shared/ComponentVerifyingService.sol +1 -1
- package/contracts/shared/IComponentService.sol +15 -9
- package/contracts/shared/IInstanceLinkedComponent.sol +10 -0
- package/contracts/shared/IKeyValueStore.sol +1 -0
- package/contracts/shared/ILifecycle.sol +1 -2
- package/contracts/shared/IService.sol +1 -1
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +1 -1
- package/contracts/shared/InstanceLinkedComponent.sol +47 -19
- package/contracts/shared/KeyValueStore.sol +6 -2
- package/contracts/shared/Lifecycle.sol +16 -69
- package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
- package/contracts/shared/NftOwnable.sol +2 -2
- package/contracts/shared/PolicyHolder.sol +2 -5
- package/contracts/shared/Service.sol +3 -4
- package/contracts/staking/IStaking.sol +1 -2
- package/contracts/staking/IStakingService.sol +12 -5
- package/contracts/staking/Staking.sol +20 -17
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +2 -6
- package/contracts/staking/StakingReader.sol +12 -16
- package/contracts/staking/StakingServiceManager.sol +2 -2
- package/contracts/staking/StakingStore.sol +15 -23
- package/contracts/type/Amount.sol +12 -5
- package/contracts/type/ObjectType.sol +37 -7
- package/contracts/type/Referral.sol +1 -0
- package/contracts/type/RoleId.sol +55 -82
- package/contracts/type/UFixed.sol +34 -9
- package/contracts/type/Version.sol +3 -1
- package/contracts/{shared → upgradeability}/ProxyManager.sol +3 -4
- package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
- package/package.json +6 -3
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -709
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -187
- package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1218
- package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +0 -4
- package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.json +0 -166
- package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.json +0 -1554
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +0 -1193
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1747
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1760
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1838
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1856
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
- package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +0 -306
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -617
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
- package/contracts/instance/InstanceAuthorizationsLib.sol +0 -377
- package/contracts/registry/ReleaseManager.sol +0 -521
- package/contracts/shared/AccessManagerCustom.sol +0 -741
- package/contracts/shared/AccessManagerExtended.sol +0 -481
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
- /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
- /package/contracts/{shared → upgradeability}/Versionable.sol +0 -0
| @@ -3,6 +3,11 @@ | |
| 3 3 | 
             
              "contractName": "FeeLib",
         | 
| 4 4 | 
             
              "sourceName": "contracts/type/Fee.sol",
         | 
| 5 5 | 
             
              "abi": [
         | 
| 6 | 
            +
                {
         | 
| 7 | 
            +
                  "inputs": [],
         | 
| 8 | 
            +
                  "name": "MathLigMulDivOverflow",
         | 
| 9 | 
            +
                  "type": "error"
         | 
| 10 | 
            +
                },
         | 
| 6 11 | 
             
                {
         | 
| 7 12 | 
             
                  "inputs": [
         | 
| 8 13 | 
             
                    {
         | 
| @@ -247,22 +252,22 @@ | |
| 247 252 | 
             
                  "type": "function"
         | 
| 248 253 | 
             
                }
         | 
| 249 254 | 
             
              ],
         | 
| 250 | 
            -
              "bytecode": " | 
| 251 | 
            -
              "deployedBytecode": " | 
| 255 | 
            +
              "bytecode": "0x610756610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c6100973660046105e1565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf3660046105fb565b6101ae565b6100d76100d236600461062e565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610665565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c36600461069b565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f3660046105e1565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106bb565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106bb565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106bb565b6103ab91906106d2565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040891906106f1565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c791906106f1565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f961070c565b04925050506101c7565b80841161052257604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60408284031215610598575f80fd5b6040516040810181811067ffffffffffffffff821117156105c757634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f604082840312156105f1575f80fd5b6101c78383610588565b5f806080838503121561060c575f80fd5b6106168484610588565b91506106258460408501610588565b90509250929050565b5f6020828403121561063e575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b0381168114610662575f80fd5b50565b5f8060608385031215610676575f80fd5b6106808484610588565b915060408301356106908161064e565b809150509250929050565b5f80604083850312156106ac575f80fd5b50508035926020909101359150565b5f602082840312156106cb575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610701575f80fd5b81516101c78161064e565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220b92eab848363bc2ea2900ce95ee90acb94d6435185724a8959997a93ef654cbd64736f6c634300081a0033",
         | 
| 256 | 
            +
              "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c6100973660046105e1565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf3660046105fb565b6101ae565b6100d76100d236600461062e565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610665565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c36600461069b565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f3660046105e1565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106bb565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106bb565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106bb565b6103ab91906106d2565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040891906106f1565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c791906106f1565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f961070c565b04925050506101c7565b80841161052257604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60408284031215610598575f80fd5b6040516040810181811067ffffffffffffffff821117156105c757634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f604082840312156105f1575f80fd5b6101c78383610588565b5f806080838503121561060c575f80fd5b6106168484610588565b91506106258460408501610588565b90509250929050565b5f6020828403121561063e575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b0381168114610662575f80fd5b50565b5f8060608385031215610676575f80fd5b6106808484610588565b915060408301356106908161064e565b809150509250929050565b5f80604083850312156106ac575f80fd5b50508035926020909101359150565b5f602082840312156106cb575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610701575f80fd5b81516101c78161064e565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220b92eab848363bc2ea2900ce95ee90acb94d6435185724a8959997a93ef654cbd64736f6c634300081a0033",
         | 
| 252 257 | 
             
              "linkReferences": {
         | 
| 253 258 | 
             
                "contracts/type/Amount.sol": {
         | 
| 254 259 | 
             
                  "AmountLib": [
         | 
| 255 260 | 
             
                    {
         | 
| 256 261 | 
             
                      "length": 20,
         | 
| 257 | 
            -
                      "start":  | 
| 262 | 
            +
                      "start": 731
         | 
| 258 263 | 
             
                    },
         | 
| 259 264 | 
             
                    {
         | 
| 260 265 | 
             
                      "length": 20,
         | 
| 261 | 
            -
                      "start":  | 
| 266 | 
            +
                      "start": 860
         | 
| 262 267 | 
             
                    },
         | 
| 263 268 | 
             
                    {
         | 
| 264 269 | 
             
                      "length": 20,
         | 
| 265 | 
            -
                      "start":  | 
| 270 | 
            +
                      "start": 1188
         | 
| 266 271 | 
             
                    }
         | 
| 267 272 | 
             
                  ]
         | 
| 268 273 | 
             
                },
         | 
| @@ -270,11 +275,11 @@ | |
| 270 275 | 
             
                  "UFixedLib": [
         | 
| 271 276 | 
             
                    {
         | 
| 272 277 | 
             
                      "length": 20,
         | 
| 273 | 
            -
                      "start":  | 
| 278 | 
            +
                      "start": 573
         | 
| 274 279 | 
             
                    },
         | 
| 275 280 | 
             
                    {
         | 
| 276 281 | 
             
                      "length": 20,
         | 
| 277 | 
            -
                      "start":  | 
| 282 | 
            +
                      "start": 889
         | 
| 278 283 | 
             
                    }
         | 
| 279 284 | 
             
                  ]
         | 
| 280 285 | 
             
                }
         | 
| @@ -284,15 +289,15 @@ | |
| 284 289 | 
             
                  "AmountLib": [
         | 
| 285 290 | 
             
                    {
         | 
| 286 291 | 
             
                      "length": 20,
         | 
| 287 | 
            -
                      "start":  | 
| 292 | 
            +
                      "start": 679
         | 
| 288 293 | 
             
                    },
         | 
| 289 294 | 
             
                    {
         | 
| 290 295 | 
             
                      "length": 20,
         | 
| 291 | 
            -
                      "start":  | 
| 296 | 
            +
                      "start": 808
         | 
| 292 297 | 
             
                    },
         | 
| 293 298 | 
             
                    {
         | 
| 294 299 | 
             
                      "length": 20,
         | 
| 295 | 
            -
                      "start":  | 
| 300 | 
            +
                      "start": 1136
         | 
| 296 301 | 
             
                    }
         | 
| 297 302 | 
             
                  ]
         | 
| 298 303 | 
             
                },
         | 
| @@ -300,11 +305,11 @@ | |
| 300 305 | 
             
                  "UFixedLib": [
         | 
| 301 306 | 
             
                    {
         | 
| 302 307 | 
             
                      "length": 20,
         | 
| 303 | 
            -
                      "start":  | 
| 308 | 
            +
                      "start": 521
         | 
| 304 309 | 
             
                    },
         | 
| 305 310 | 
             
                    {
         | 
| 306 311 | 
             
                      "length": 20,
         | 
| 307 | 
            -
                      "start":  | 
| 312 | 
            +
                      "start": 837
         | 
| 308 313 | 
             
                    }
         | 
| 309 314 | 
             
                  ]
         | 
| 310 315 | 
             
                }
         | 
| @@ -118,8 +118,8 @@ | |
| 118 118 | 
             
                  "type": "function"
         | 
| 119 119 | 
             
                }
         | 
| 120 120 | 
             
              ],
         | 
| 121 | 
            -
              "bytecode": " | 
| 122 | 
            -
              "deployedBytecode": " | 
| 121 | 
            +
              "bytecode": "0x61025e610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639601d31e116100635780639601d31e146100eb578063d92bb60d146100ff578063da3fe4121461010d578063f48016ce14610115575f80fd5b80630f94cc501461008957806329e9b226146100ab578063389e7d68146100c5575b5f80fd5b6100986001600160f81b031981565b6040519081526020015b60405180910390f35b6100b360f881565b60405160ff90911681526020016100a2565b6100d86100d336600461018e565b610128565b60405160ff1990911681526020016100a2565b6100b36100f936600461018e565b60f81c90565b6100986001600160f81b0381565b6100b361014f565b6100986101233660046101a5565b61015f565b5f8161013760f86101006101fb565b6001600160f81b039190911660ff9091161b92915050565b61015c60f86101006101fb565b81565b5f60ff8316600883901c82610182826001600160f81b031960f889901b16610215565b93505050505b92915050565b5f6020828403121561019e575f80fd5b5035919050565b5f80604083850312156101b6575f80fd5b823560ff811681146101c6575f80fd5b9150602083013560ff19811681146101dc575f80fd5b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8281168282160390811115610188576101886101e7565b80820180821115610188576101886101e756fea2646970667358221220534d05d130a4ef9f959b3d529c570d2b07338872314843ce08eeae65e51f4e8964736f6c634300081a0033",
         | 
| 122 | 
            +
              "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639601d31e116100635780639601d31e146100eb578063d92bb60d146100ff578063da3fe4121461010d578063f48016ce14610115575f80fd5b80630f94cc501461008957806329e9b226146100ab578063389e7d68146100c5575b5f80fd5b6100986001600160f81b031981565b6040519081526020015b60405180910390f35b6100b360f881565b60405160ff90911681526020016100a2565b6100d86100d336600461018e565b610128565b60405160ff1990911681526020016100a2565b6100b36100f936600461018e565b60f81c90565b6100986001600160f81b0381565b6100b361014f565b6100986101233660046101a5565b61015f565b5f8161013760f86101006101fb565b6001600160f81b039190911660ff9091161b92915050565b61015c60f86101006101fb565b81565b5f60ff8316600883901c82610182826001600160f81b031960f889901b16610215565b93505050505b92915050565b5f6020828403121561019e575f80fd5b5035919050565b5f80604083850312156101b6575f80fd5b823560ff811681146101c6575f80fd5b9150602083013560ff19811681146101dc575f80fd5b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b61ffff8281168282160390811115610188576101886101e7565b80820180821115610188576101886101e756fea2646970667358221220534d05d130a4ef9f959b3d529c570d2b07338872314843ce08eeae65e51f4e8964736f6c634300081a0033",
         | 
| 123 123 | 
             
              "linkReferences": {},
         | 
| 124 124 | 
             
              "deployedLinkReferences": {}
         | 
| 125 125 | 
             
            }
         | 
| @@ -184,14 +184,14 @@ | |
| 184 184 | 
             
                  "type": "function"
         | 
| 185 185 | 
             
                }
         | 
| 186 186 | 
             
              ],
         | 
| 187 | 
            -
              "bytecode": " | 
| 188 | 
            -
              "deployedBytecode": " | 
| 187 | 
            +
              "bytecode": "0x610361610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c806352694ee81161006e57806352694ee81461015057806399009c511461016b578063bc1b392d1461018b578063c4cade9d14610191578063efac97cf146101b0575f80fd5b806308dc895e1461009f57806330b8415f146100cd5780633889a4c8146100f957806340a8cd9e1461011a575b5f80fd5b6100b06100ad366004610279565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100e96100db366004610279565b6001600160601b0316151590565b60405190151581526020016100c4565b61010c610107366004610292565b6101be565b6040519081526020016100c4565b61013d610128366004610279565b60081b6cffffffffffffffffffffffff001690565b60405160ff1990911681526020016100c4565b6100e961015e366004610279565b6001600160601b03161590565b6100e96101793660046102cc565b6001600160601b039081169116141590565b5f6100b0565b6100e961019f3660046102cc565b6001600160601b0390811691161490565b6100b06100ad3660046102fd565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610233573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102579190610314565b9392505050565b80356001600160601b0381168114610274575f80fd5b919050565b5f60208284031215610289575f80fd5b6102578261025e565b5f80604083850312156102a3575f80fd5b6102ac8361025e565b9150602083013560ff811681146102c1575f80fd5b809150509250929050565b5f80604083850312156102dd575f80fd5b6102e68361025e565b91506102f46020840161025e565b90509250929050565b5f6020828403121561030d575f80fd5b5035919050565b5f60208284031215610324575f80fd5b505191905056fea2646970667358221220ea87ad123b16b3e985a0cd807c968168670037b6e136f162cccb0c550385cbdf64736f6c634300081a0033",
         | 
| 188 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c806352694ee81161006e57806352694ee81461015057806399009c511461016b578063bc1b392d1461018b578063c4cade9d14610191578063efac97cf146101b0575f80fd5b806308dc895e1461009f57806330b8415f146100cd5780633889a4c8146100f957806340a8cd9e1461011a575b5f80fd5b6100b06100ad366004610279565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100e96100db366004610279565b6001600160601b0316151590565b60405190151581526020016100c4565b61010c610107366004610292565b6101be565b6040519081526020016100c4565b61013d610128366004610279565b60081b6cffffffffffffffffffffffff001690565b60405160ff1990911681526020016100c4565b6100e961015e366004610279565b6001600160601b03161590565b6100e96101793660046102cc565b6001600160601b039081169116141590565b5f6100b0565b6100e961019f3660046102cc565b6001600160601b0390811691161490565b6100b06100ad3660046102fd565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610233573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102579190610314565b9392505050565b80356001600160601b0381168114610274575f80fd5b919050565b5f60208284031215610289575f80fd5b6102578261025e565b5f80604083850312156102a3575f80fd5b6102ac8361025e565b9150602083013560ff811681146102c1575f80fd5b809150509250929050565b5f80604083850312156102dd575f80fd5b6102e68361025e565b91506102f46020840161025e565b90509250929050565b5f6020828403121561030d575f80fd5b5035919050565b5f60208284031215610324575f80fd5b505191905056fea2646970667358221220ea87ad123b16b3e985a0cd807c968168670037b6e136f162cccb0c550385cbdf64736f6c634300081a0033",
         | 
| 189 189 | 
             
              "linkReferences": {
         | 
| 190 190 | 
             
                "contracts/type/Key32.sol": {
         | 
| 191 191 | 
             
                  "Key32Lib": [
         | 
| 192 192 | 
             
                    {
         | 
| 193 193 | 
             
                      "length": 20,
         | 
| 194 | 
            -
                      "start":  | 
| 194 | 
            +
                      "start": 501
         | 
| 195 195 | 
             
                    }
         | 
| 196 196 | 
             
                  ]
         | 
| 197 197 | 
             
                }
         | 
| @@ -201,7 +201,7 @@ | |
| 201 201 | 
             
                  "Key32Lib": [
         | 
| 202 202 | 
             
                    {
         | 
| 203 203 | 
             
                      "length": 20,
         | 
| 204 | 
            -
                      "start":  | 
| 204 | 
            +
                      "start": 449
         | 
| 205 205 | 
             
                    }
         | 
| 206 206 | 
             
                  ]
         | 
| 207 207 | 
             
                }
         | 
| @@ -26,8 +26,8 @@ | |
| 26 26 | 
             
                  "type": "error"
         | 
| 27 27 | 
             
                }
         | 
| 28 28 | 
             
              ],
         | 
| 29 | 
            -
              "bytecode": " | 
| 30 | 
            -
              "deployedBytecode": " | 
| 29 | 
            +
              "bytecode": "0x61049c610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632bfdd6b91461006f57806331a97de2146100975780638b6233dd146100aa578063a3082a18146100ca578063a73d5756146100eb578063e797d8991461010a575b5f80fd5b61008261007d3660046103af565b610135565b60405190151581526020015b60405180910390f35b6100826100a53660046103e8565b541590565b6100bc6100b83660046103e8565b5490565b60405190815260200161008e565b8180156100d5575f80fd5b506100e96100e43660046103af565b610158565b005b8180156100f6575f80fd5b506100e96101053660046103af565b6101f1565b61011d6101183660046103ff565b61036b565b6040516001600160601b03909116815260200161008e565b6001600160601b0381165f90815260018301602052604090205415155b92915050565b6001600160601b0381165f908152600183016020526040902054156101a0576040516301eae2c560e61b81526001600160601b03821660048201526024015b60405180910390fd5b8154600181810184555f8481526020808220600285040180546001600160601b03968716600c968616969096026101000a868102970219169590951790945584549281529301909152604090912055565b6001600160601b0381165f908152600183016020526040812054908190036102375760405163482084f160e01b81526001600160601b0383166004820152602401610197565b5f61024360018361041f565b84549091505f906102569060019061041f565b90508181146102fa575f855f0182815481106102745761027461043e565b905f5260205f209060029182820401919006600c029054906101000a90046001600160601b0316905080865f0184815481106102b2576102b261043e565b5f9182526020808320600283040180546001600160601b03958616600c6001958616026101000a90810290870219909116179055939092168152908701909152604090208390555b845485908061030b5761030b610452565b600190038181905f5260205f209060029182820401919006600c026101000a8154906001600160601b0302191690559055846001015f856001600160601b03166001600160601b031681526020019081526020015f205f90555050505050565b5f825f0182815481106103805761038061043e565b905f5260205f209060029182820401919006600c029054906101000a90046001600160601b0316905092915050565b5f80604083850312156103c0575f80fd5b8235915060208301356001600160601b03811681146103dd575f80fd5b809150509250929050565b5f602082840312156103f8575f80fd5b5035919050565b5f8060408385031215610410575f80fd5b50508035926020909101359150565b8181038181111561015257634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52603160045260245ffdfea26469706673582212206083f512ffd21e48cf4db103590e43132eadddeb0ca9755f0a01432a61a7632264736f6c634300081a0033",
         | 
| 30 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632bfdd6b91461006f57806331a97de2146100975780638b6233dd146100aa578063a3082a18146100ca578063a73d5756146100eb578063e797d8991461010a575b5f80fd5b61008261007d3660046103af565b610135565b60405190151581526020015b60405180910390f35b6100826100a53660046103e8565b541590565b6100bc6100b83660046103e8565b5490565b60405190815260200161008e565b8180156100d5575f80fd5b506100e96100e43660046103af565b610158565b005b8180156100f6575f80fd5b506100e96101053660046103af565b6101f1565b61011d6101183660046103ff565b61036b565b6040516001600160601b03909116815260200161008e565b6001600160601b0381165f90815260018301602052604090205415155b92915050565b6001600160601b0381165f908152600183016020526040902054156101a0576040516301eae2c560e61b81526001600160601b03821660048201526024015b60405180910390fd5b8154600181810184555f8481526020808220600285040180546001600160601b03968716600c968616969096026101000a868102970219169590951790945584549281529301909152604090912055565b6001600160601b0381165f908152600183016020526040812054908190036102375760405163482084f160e01b81526001600160601b0383166004820152602401610197565b5f61024360018361041f565b84549091505f906102569060019061041f565b90508181146102fa575f855f0182815481106102745761027461043e565b905f5260205f209060029182820401919006600c029054906101000a90046001600160601b0316905080865f0184815481106102b2576102b261043e565b5f9182526020808320600283040180546001600160601b03958616600c6001958616026101000a90810290870219909116179055939092168152908701909152604090208390555b845485908061030b5761030b610452565b600190038181905f5260205f209060029182820401919006600c026101000a8154906001600160601b0302191690559055846001015f856001600160601b03166001600160601b031681526020019081526020015f205f90555050505050565b5f825f0182815481106103805761038061043e565b905f5260205f209060029182820401919006600c029054906101000a90046001600160601b0316905092915050565b5f80604083850312156103c0575f80fd5b8235915060208301356001600160601b03811681146103dd575f80fd5b809150509250929050565b5f602082840312156103f8575f80fd5b5035919050565b5f8060408385031215610410575f80fd5b50508035926020909101359150565b8181038181111561015257634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52603160045260245ffdfea26469706673582212206083f512ffd21e48cf4db103590e43132eadddeb0ca9755f0a01432a61a7632264736f6c634300081a0033",
         | 
| 31 31 | 
             
              "linkReferences": {},
         | 
| 32 32 | 
             
              "deployedLinkReferences": {}
         | 
| 33 33 | 
             
            }
         | 
| @@ -3,6 +3,17 @@ | |
| 3 3 | 
             
              "contractName": "ObjectTypeLib",
         | 
| 4 4 | 
             
              "sourceName": "contracts/type/ObjectType.sol",
         | 
| 5 5 | 
             
              "abi": [
         | 
| 6 | 
            +
                {
         | 
| 7 | 
            +
                  "inputs": [
         | 
| 8 | 
            +
                    {
         | 
| 9 | 
            +
                      "internalType": "uint256",
         | 
| 10 | 
            +
                      "name": "version",
         | 
| 11 | 
            +
                      "type": "uint256"
         | 
| 12 | 
            +
                    }
         | 
| 13 | 
            +
                  ],
         | 
| 14 | 
            +
                  "name": "ErrorVersionTooBig",
         | 
| 15 | 
            +
                  "type": "error"
         | 
| 16 | 
            +
                },
         | 
| 6 17 | 
             
                {
         | 
| 7 18 | 
             
                  "inputs": [
         | 
| 8 19 | 
             
                    {
         | 
| @@ -65,6 +76,19 @@ | |
| 65 76 | 
             
                  "stateMutability": "pure",
         | 
| 66 77 | 
             
                  "type": "function"
         | 
| 67 78 | 
             
                },
         | 
| 79 | 
            +
                {
         | 
| 80 | 
            +
                  "inputs": [],
         | 
| 81 | 
            +
                  "name": "maxNumReleases",
         | 
| 82 | 
            +
                  "outputs": [
         | 
| 83 | 
            +
                    {
         | 
| 84 | 
            +
                      "internalType": "uint8",
         | 
| 85 | 
            +
                      "name": "",
         | 
| 86 | 
            +
                      "type": "uint8"
         | 
| 87 | 
            +
                    }
         | 
| 88 | 
            +
                  ],
         | 
| 89 | 
            +
                  "stateMutability": "pure",
         | 
| 90 | 
            +
                  "type": "function"
         | 
| 91 | 
            +
                },
         | 
| 68 92 | 
             
                {
         | 
| 69 93 | 
             
                  "inputs": [
         | 
| 70 94 | 
             
                    {
         | 
| @@ -165,6 +189,35 @@ | |
| 165 189 | 
             
                  "stateMutability": "pure",
         | 
| 166 190 | 
             
                  "type": "function"
         | 
| 167 191 | 
             
                },
         | 
| 192 | 
            +
                {
         | 
| 193 | 
            +
                  "inputs": [
         | 
| 194 | 
            +
                    {
         | 
| 195 | 
            +
                      "internalType": "string",
         | 
| 196 | 
            +
                      "name": "name",
         | 
| 197 | 
            +
                      "type": "string"
         | 
| 198 | 
            +
                    },
         | 
| 199 | 
            +
                    {
         | 
| 200 | 
            +
                      "internalType": "string",
         | 
| 201 | 
            +
                      "name": "suffix",
         | 
| 202 | 
            +
                      "type": "string"
         | 
| 203 | 
            +
                    },
         | 
| 204 | 
            +
                    {
         | 
| 205 | 
            +
                      "internalType": "uint256",
         | 
| 206 | 
            +
                      "name": "version",
         | 
| 207 | 
            +
                      "type": "uint256"
         | 
| 208 | 
            +
                    }
         | 
| 209 | 
            +
                  ],
         | 
| 210 | 
            +
                  "name": "toVersionedName",
         | 
| 211 | 
            +
                  "outputs": [
         | 
| 212 | 
            +
                    {
         | 
| 213 | 
            +
                      "internalType": "string",
         | 
| 214 | 
            +
                      "name": "versionedName",
         | 
| 215 | 
            +
                      "type": "string"
         | 
| 216 | 
            +
                    }
         | 
| 217 | 
            +
                  ],
         | 
| 218 | 
            +
                  "stateMutability": "pure",
         | 
| 219 | 
            +
                  "type": "function"
         | 
| 220 | 
            +
                },
         | 
| 168 221 | 
             
                {
         | 
| 169 222 | 
             
                  "inputs": [],
         | 
| 170 223 | 
             
                  "name": "zero",
         | 
| @@ -179,8 +232,8 @@ | |
| 179 232 | 
             
                  "type": "function"
         | 
| 180 233 | 
             
                }
         | 
| 181 234 | 
             
              ],
         | 
| 182 | 
            -
              "bytecode": " | 
| 183 | 
            -
              "deployedBytecode": " | 
| 235 | 
            +
              "bytecode": "0x610970610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100b1575f3560e01c80637adad14f116100795780637adad14f14610138578063ac43d83414610152578063ae574a3c14610183578063b2466acf14610196578063bc1b392d146101ac578063f7fa7a7c146101b2575f80fd5b80632c2f8a67146100b55780636401f182146100dd5780636900a3ae146100f25780636ecac6e8146101125780636f91962014610123575b5f80fd5b6100c86100c3366004610676565b6101c5565b60405190151581526020015b60405180910390f35b60635b60405160ff90911681526020016100d4565b6101056101003660046106a7565b6101d5565b6040516100d491906106be565b6100e06101203660046106a7565b90565b6100c86101313660046106f3565b60ff161590565b6100c8610146366004610676565b60ff9081169116141590565b6101666101603660046106f3565b60ff1690565b6040516bffffffffffffffffffffffff90911681526020016100d4565b6101056101913660046106f3565b6102f3565b6100c86101a43660046106f3565b60ff16151590565b5f6100e0565b6101056101c03660046107b2565b6105c1565b60ff828116908216145b92915050565b6060815f036101fb5750506040805180820190915260018152600360fc1b602082015290565b815f5b8115610224578061020e81610834565b915061021d9050600a83610860565b91506101fe565b5f8167ffffffffffffffff81111561023e5761023e610713565b6040519080825280601f01601f191660200182016040528015610268576020820181803683370190505b5090505f610277600184610873565b90508593505b83156102ea5761028e600a85610886565b610299906030610899565b60f81b8282815181106102ae576102ae6108ac565b60200101906001600160f81b03191690815f1a9053506102cf600a85610860565b935080156102e557806102e1816108c0565b9150505b61027d565b50949350505050565b60606103008260026101c5565b15610329575050604080518082019091526008815267526567697374727960c01b602082015290565b6103348260036101c5565b1561035c5750506040805180820190915260078152665374616b696e6760c81b602082015290565b61036782600a6101c5565b15610390575050604080518082019091526008815267496e7374616e636560c01b602082015290565b61039b82600b6101c5565b156103c557505060408051808201909152600981526810dbdb5c1bdb995b9d60ba1b602082015290565b6103d082600c6101c5565b156103f8575050604080518082019091526007815266141c9bd91d58dd60ca1b602082015290565b61040382600d6101c5565b1561042a5750506040805180820190915260068152654f7261636c6560d01b602082015290565b61043582600e6101c5565b1561046257505060408051808201909152600c81526b2234b9ba3934b13aba34b7b760a11b602082015290565b61046d82600f6101c5565b15610492575050604080518082019091526004815263141bdbdb60e21b602082015290565b61049d8260146101c5565b156104c957505060408051808201909152600b81526a20b8383634b1b0ba34b7b760a91b602082015290565b6104d48260156101c5565b156104fb575050604080518082019091526006815265506f6c69637960d01b602082015290565b6105068260166101c5565b1561052c575050604080518082019091526005815264436c61696d60d81b602082015290565b6105378260196101c5565b1561055d575050604080518082019091526005815264507269636560d81b602082015290565b61056882601e6101c5565b1561058f57505060408051808201909152600681526542756e646c6560d01b602082015290565b61059b60ff83166101d5565b6040516020016105ab91906108ec565b6040516020818303038152906040529050919050565b606060638211156105ec57604051631f535f3160e11b81526004810183905260240160405180910390fd5b60408051808201909152600381526205f76360ec1b6020820152600a831061062957506040805180820190915260028152612fbb60f11b60208201525b848482610635866101d5565b604051602001610648949392919061090a565b6040516020818303038152906040529150509392505050565b803560ff81168114610671575f80fd5b919050565b5f8060408385031215610687575f80fd5b61069083610661565b915061069e60208401610661565b90509250929050565b5f602082840312156106b7575f80fd5b5035919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610703575f80fd5b61070c82610661565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610736575f80fd5b813567ffffffffffffffff81111561075057610750610713565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561077f5761077f610713565b604052818152838201602001851015610796575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f606084860312156107c4575f80fd5b833567ffffffffffffffff8111156107da575f80fd5b6107e686828701610727565b935050602084013567ffffffffffffffff811115610802575f80fd5b61080e86828701610727565b93969395505050506040919091013590565b634e487b7160e01b5f52601160045260245ffd5b5f6001820161084557610845610820565b5060010190565b634e487b7160e01b5f52601260045260245ffd5b5f8261086e5761086e61084c565b500490565b818103818111156101cf576101cf610820565b5f826108945761089461084c565b500690565b808201808211156101cf576101cf610820565b634e487b7160e01b5f52603260045260245ffd5b5f816108ce576108ce610820565b505f190190565b5f81518060208401855e5f93019283525090919050565b694f626a6563745479706560b01b81525f61070c600a8301846108d5565b5f61093061092a61092461091e858a6108d5565b886108d5565b866108d5565b846108d5565b969550505050505056fea2646970667358221220f415d3d4704a2ca692b11897aeeeb595f461777fb599ab04af55cc29a341be5964736f6c634300081a0033",
         | 
| 236 | 
            +
              "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100b1575f3560e01c80637adad14f116100795780637adad14f14610138578063ac43d83414610152578063ae574a3c14610183578063b2466acf14610196578063bc1b392d146101ac578063f7fa7a7c146101b2575f80fd5b80632c2f8a67146100b55780636401f182146100dd5780636900a3ae146100f25780636ecac6e8146101125780636f91962014610123575b5f80fd5b6100c86100c3366004610676565b6101c5565b60405190151581526020015b60405180910390f35b60635b60405160ff90911681526020016100d4565b6101056101003660046106a7565b6101d5565b6040516100d491906106be565b6100e06101203660046106a7565b90565b6100c86101313660046106f3565b60ff161590565b6100c8610146366004610676565b60ff9081169116141590565b6101666101603660046106f3565b60ff1690565b6040516bffffffffffffffffffffffff90911681526020016100d4565b6101056101913660046106f3565b6102f3565b6100c86101a43660046106f3565b60ff16151590565b5f6100e0565b6101056101c03660046107b2565b6105c1565b60ff828116908216145b92915050565b6060815f036101fb5750506040805180820190915260018152600360fc1b602082015290565b815f5b8115610224578061020e81610834565b915061021d9050600a83610860565b91506101fe565b5f8167ffffffffffffffff81111561023e5761023e610713565b6040519080825280601f01601f191660200182016040528015610268576020820181803683370190505b5090505f610277600184610873565b90508593505b83156102ea5761028e600a85610886565b610299906030610899565b60f81b8282815181106102ae576102ae6108ac565b60200101906001600160f81b03191690815f1a9053506102cf600a85610860565b935080156102e557806102e1816108c0565b9150505b61027d565b50949350505050565b60606103008260026101c5565b15610329575050604080518082019091526008815267526567697374727960c01b602082015290565b6103348260036101c5565b1561035c5750506040805180820190915260078152665374616b696e6760c81b602082015290565b61036782600a6101c5565b15610390575050604080518082019091526008815267496e7374616e636560c01b602082015290565b61039b82600b6101c5565b156103c557505060408051808201909152600981526810dbdb5c1bdb995b9d60ba1b602082015290565b6103d082600c6101c5565b156103f8575050604080518082019091526007815266141c9bd91d58dd60ca1b602082015290565b61040382600d6101c5565b1561042a5750506040805180820190915260068152654f7261636c6560d01b602082015290565b61043582600e6101c5565b1561046257505060408051808201909152600c81526b2234b9ba3934b13aba34b7b760a11b602082015290565b61046d82600f6101c5565b15610492575050604080518082019091526004815263141bdbdb60e21b602082015290565b61049d8260146101c5565b156104c957505060408051808201909152600b81526a20b8383634b1b0ba34b7b760a91b602082015290565b6104d48260156101c5565b156104fb575050604080518082019091526006815265506f6c69637960d01b602082015290565b6105068260166101c5565b1561052c575050604080518082019091526005815264436c61696d60d81b602082015290565b6105378260196101c5565b1561055d575050604080518082019091526005815264507269636560d81b602082015290565b61056882601e6101c5565b1561058f57505060408051808201909152600681526542756e646c6560d01b602082015290565b61059b60ff83166101d5565b6040516020016105ab91906108ec565b6040516020818303038152906040529050919050565b606060638211156105ec57604051631f535f3160e11b81526004810183905260240160405180910390fd5b60408051808201909152600381526205f76360ec1b6020820152600a831061062957506040805180820190915260028152612fbb60f11b60208201525b848482610635866101d5565b604051602001610648949392919061090a565b6040516020818303038152906040529150509392505050565b803560ff81168114610671575f80fd5b919050565b5f8060408385031215610687575f80fd5b61069083610661565b915061069e60208401610661565b90509250929050565b5f602082840312156106b7575f80fd5b5035919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610703575f80fd5b61070c82610661565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610736575f80fd5b813567ffffffffffffffff81111561075057610750610713565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561077f5761077f610713565b604052818152838201602001851015610796575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f606084860312156107c4575f80fd5b833567ffffffffffffffff8111156107da575f80fd5b6107e686828701610727565b935050602084013567ffffffffffffffff811115610802575f80fd5b61080e86828701610727565b93969395505050506040919091013590565b634e487b7160e01b5f52601160045260245ffd5b5f6001820161084557610845610820565b5060010190565b634e487b7160e01b5f52601260045260245ffd5b5f8261086e5761086e61084c565b500490565b818103818111156101cf576101cf610820565b5f826108945761089461084c565b500690565b808201808211156101cf576101cf610820565b634e487b7160e01b5f52603260045260245ffd5b5f816108ce576108ce610820565b505f190190565b5f81518060208401855e5f93019283525090919050565b694f626a6563745479706560b01b81525f61070c600a8301846108d5565b5f61093061092a61092461091e858a6108d5565b886108d5565b866108d5565b846108d5565b969550505050505056fea2646970667358221220f415d3d4704a2ca692b11897aeeeb595f461777fb599ab04af55cc29a341be5964736f6c634300081a0033",
         | 
| 184 237 | 
             
              "linkReferences": {},
         | 
| 185 238 | 
             
              "deployedLinkReferences": {}
         | 
| 186 239 | 
             
            }
         | 
| @@ -184,14 +184,14 @@ | |
| 184 184 | 
             
                  "type": "function"
         | 
| 185 185 | 
             
                }
         | 
| 186 186 | 
             
              ],
         | 
| 187 | 
            -
              "bytecode": " | 
| 188 | 
            -
              "deployedBytecode": " | 
| 187 | 
            +
              "bytecode": "0x610401610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c8063691d05ec1161006e578063691d05ec146101385780637d464fd41461014f578063bc1b392d14610175578063d5b5ee5d1461017b578063de5f11a21461018e575f80fd5b806302985c611461009f578063455d3483146100cc57806355601007146100f25780635927341114610117575b5f80fd5b6100b76100ad3660046102d7565b62ffffff16151590565b60405190151581526020015b60405180910390f35b6100df6100da3660046102f0565b6101b9565b60405160ff1990911681526020016100c3565b6101036101003660046102d7565b90565b60405162ffffff90911681526020016100c3565b61012a6101253660046102f0565b610207565b6040519081526020016100c3565b6100b76101463660046102d7565b62ffffff161590565b61016361015d3660046102d7565b60ff1690565b60405160ff90911681526020016100c3565b5f610103565b610103610189366004610330565b61029e565b6101a661019c3660046102d7565b60081c61ffff1690565b60405161ffff90911681526020016100c3565b5f6101de62ffffff84166effffffffffffffffffffffff000000601885901b1661037b565b6001600160601b031660881b70ffffffffffffffffffffffffffffffffff191690505b92915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601761022e86866101b9565b6040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610273573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610297919061039a565b9392505050565b5f6102b560ff831662ffff00600886901b166103b1565b61ffff169392505050565b803562ffffff811681146102d2575f80fd5b919050565b5f602082840312156102e7575f80fd5b610297826102c0565b5f8060408385031215610301575f80fd5b61030a836102c0565b915060208301356001600160601b0381168114610325575f80fd5b809150509250929050565b5f8060408385031215610341575f80fd5b823561ffff81168114610352575f80fd5b9150602083013560ff81168114610325575f80fd5b634e487b7160e01b5f52601160045260245ffd5b6001600160601b03818116838216019081111561020157610201610367565b5f602082840312156103aa575f80fd5b5051919050565b61ffff81811683821601908111156102015761020161036756fea264697066735822122014e04bfb1d0000bcda02d95ff89eea0c5c7b888e278698bdd8d9fc536136d2b364736f6c634300081a0033",
         | 
| 188 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c8063691d05ec1161006e578063691d05ec146101385780637d464fd41461014f578063bc1b392d14610175578063d5b5ee5d1461017b578063de5f11a21461018e575f80fd5b806302985c611461009f578063455d3483146100cc57806355601007146100f25780635927341114610117575b5f80fd5b6100b76100ad3660046102d7565b62ffffff16151590565b60405190151581526020015b60405180910390f35b6100df6100da3660046102f0565b6101b9565b60405160ff1990911681526020016100c3565b6101036101003660046102d7565b90565b60405162ffffff90911681526020016100c3565b61012a6101253660046102f0565b610207565b6040519081526020016100c3565b6100b76101463660046102d7565b62ffffff161590565b61016361015d3660046102d7565b60ff1690565b60405160ff90911681526020016100c3565b5f610103565b610103610189366004610330565b61029e565b6101a661019c3660046102d7565b60081c61ffff1690565b60405161ffff90911681526020016100c3565b5f6101de62ffffff84166effffffffffffffffffffffff000000601885901b1661037b565b6001600160601b031660881b70ffffffffffffffffffffffffffffffffff191690505b92915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601761022e86866101b9565b6040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610273573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610297919061039a565b9392505050565b5f6102b560ff831662ffff00600886901b166103b1565b61ffff169392505050565b803562ffffff811681146102d2575f80fd5b919050565b5f602082840312156102e7575f80fd5b610297826102c0565b5f8060408385031215610301575f80fd5b61030a836102c0565b915060208301356001600160601b0381168114610325575f80fd5b809150509250929050565b5f8060408385031215610341575f80fd5b823561ffff81168114610352575f80fd5b9150602083013560ff81168114610325575f80fd5b634e487b7160e01b5f52601160045260245ffd5b6001600160601b03818116838216019081111561020157610201610367565b5f602082840312156103aa575f80fd5b5051919050565b61ffff81811683821601908111156102015761020161036756fea264697066735822122014e04bfb1d0000bcda02d95ff89eea0c5c7b888e278698bdd8d9fc536136d2b364736f6c634300081a0033",
         | 
| 189 189 | 
             
              "linkReferences": {
         | 
| 190 190 | 
             
                "contracts/type/Key32.sol": {
         | 
| 191 191 | 
             
                  "Key32Lib": [
         | 
| 192 192 | 
             
                    {
         | 
| 193 193 | 
             
                      "length": 20,
         | 
| 194 | 
            -
                      "start":  | 
| 194 | 
            +
                      "start": 574
         | 
| 195 195 | 
             
                    }
         | 
| 196 196 | 
             
                  ]
         | 
| 197 197 | 
             
                }
         | 
| @@ -201,7 +201,7 @@ | |
| 201 201 | 
             
                  "Key32Lib": [
         | 
| 202 202 | 
             
                    {
         | 
| 203 203 | 
             
                      "length": 20,
         | 
| 204 | 
            -
                      "start":  | 
| 204 | 
            +
                      "start": 522
         | 
| 205 205 | 
             
                    }
         | 
| 206 206 | 
             
                  ]
         | 
| 207 207 | 
             
                }
         | 
| @@ -117,14 +117,14 @@ | |
| 117 117 | 
             
                  "type": "function"
         | 
| 118 118 | 
             
                }
         | 
| 119 119 | 
             
              ],
         | 
| 120 | 
            -
              "bytecode": " | 
| 121 | 
            -
              "deployedBytecode": " | 
| 120 | 
            +
              "bytecode": "0x6103e0610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea2646970667358221220c767affb37b06ea14a0869186bef6fe1272ab4fabc3aa4455b51b267c2edd7cb64736f6c634300081a0033",
         | 
| 121 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea2646970667358221220c767affb37b06ea14a0869186bef6fe1272ab4fabc3aa4455b51b267c2edd7cb64736f6c634300081a0033",
         | 
| 122 122 | 
             
              "linkReferences": {
         | 
| 123 123 | 
             
                "contracts/type/Key32.sol": {
         | 
| 124 124 | 
             
                  "Key32Lib": [
         | 
| 125 125 | 
             
                    {
         | 
| 126 126 | 
             
                      "length": 20,
         | 
| 127 | 
            -
                      "start":  | 
| 127 | 
            +
                      "start": 433
         | 
| 128 128 | 
             
                    }
         | 
| 129 129 | 
             
                  ]
         | 
| 130 130 | 
             
                }
         | 
| @@ -134,7 +134,7 @@ | |
| 134 134 | 
             
                  "Key32Lib": [
         | 
| 135 135 | 
             
                    {
         | 
| 136 136 | 
             
                      "length": 20,
         | 
| 137 | 
            -
                      "start":  | 
| 137 | 
            +
                      "start": 381
         | 
| 138 138 | 
             
                    }
         | 
| 139 139 | 
             
                  ]
         | 
| 140 140 | 
             
                }
         | 
| @@ -179,14 +179,14 @@ | |
| 179 179 | 
             
                  "type": "function"
         | 
| 180 180 | 
             
                }
         | 
| 181 181 | 
             
              ],
         | 
| 182 | 
            -
              "bytecode": " | 
| 183 | 
            -
              "deployedBytecode": " | 
| 182 | 
            +
              "bytecode": "0x610334610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c806367cb8ec11161006e57806367cb8ec11461013a578063755905de1461016c578063a42e52e914610196578063bc1b392d146101b3578063f37f38f0146101b9575f80fd5b8063057182b41461009f5780633120ca45146100d05780634894bb5e146100f0578063545ce21c14610111575b5f80fd5b6100bb6100ad36600461027f565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b6100bb6100de36600461029f565b67ffffffffffffffff90811691161490565b6100bb6100fe36600461029f565b67ffffffffffffffff9081169116141590565b61012c61011f36600461027f565b67ffffffffffffffff1690565b6040519081526020016100c7565b61015961014836600461027f565b60081b68ffffffffffffffff001690565b60405160ff1990911681526020016100c7565b61017d61017a3660046102d0565b90565b60405167ffffffffffffffff90911681526020016100c7565b6100bb6101a436600461027f565b67ffffffffffffffff16151590565b5f61017d565b61012c6101c736600461027f565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601a600885901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610239573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061025d91906102e7565b92915050565b803567ffffffffffffffff8116811461027a575f80fd5b919050565b5f6020828403121561028f575f80fd5b61029882610263565b9392505050565b5f80604083850312156102b0575f80fd5b6102b983610263565b91506102c760208401610263565b90509250929050565b5f602082840312156102e0575f80fd5b5035919050565b5f602082840312156102f7575f80fd5b505191905056fea2646970667358221220d239f667f953f4677861e385da3882f73757592caea95586a437734194d7279e64736f6c634300081a0033",
         | 
| 183 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c806367cb8ec11161006e57806367cb8ec11461013a578063755905de1461016c578063a42e52e914610196578063bc1b392d146101b3578063f37f38f0146101b9575f80fd5b8063057182b41461009f5780633120ca45146100d05780634894bb5e146100f0578063545ce21c14610111575b5f80fd5b6100bb6100ad36600461027f565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b6100bb6100de36600461029f565b67ffffffffffffffff90811691161490565b6100bb6100fe36600461029f565b67ffffffffffffffff9081169116141590565b61012c61011f36600461027f565b67ffffffffffffffff1690565b6040519081526020016100c7565b61015961014836600461027f565b60081b68ffffffffffffffff001690565b60405160ff1990911681526020016100c7565b61017d61017a3660046102d0565b90565b60405167ffffffffffffffff90911681526020016100c7565b6100bb6101a436600461027f565b67ffffffffffffffff16151590565b5f61017d565b61012c6101c736600461027f565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601a600885901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610239573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061025d91906102e7565b92915050565b803567ffffffffffffffff8116811461027a575f80fd5b919050565b5f6020828403121561028f575f80fd5b61029882610263565b9392505050565b5f80604083850312156102b0575f80fd5b6102b983610263565b91506102c760208401610263565b90509250929050565b5f602082840312156102e0575f80fd5b5035919050565b5f602082840312156102f7575f80fd5b505191905056fea2646970667358221220d239f667f953f4677861e385da3882f73757592caea95586a437734194d7279e64736f6c634300081a0033",
         | 
| 184 184 | 
             
              "linkReferences": {
         | 
| 185 185 | 
             
                "contracts/type/Key32.sol": {
         | 
| 186 186 | 
             
                  "Key32Lib": [
         | 
| 187 187 | 
             
                    {
         | 
| 188 188 | 
             
                      "length": 20,
         | 
| 189 | 
            -
                      "start":  | 
| 189 | 
            +
                      "start": 510
         | 
| 190 190 | 
             
                    }
         | 
| 191 191 | 
             
                  ]
         | 
| 192 192 | 
             
                }
         | 
| @@ -196,7 +196,7 @@ | |
| 196 196 | 
             
                  "Key32Lib": [
         | 
| 197 197 | 
             
                    {
         | 
| 198 198 | 
             
                      "length": 20,
         | 
| 199 | 
            -
                      "start":  | 
| 199 | 
            +
                      "start": 458
         | 
| 200 200 | 
             
                    }
         | 
| 201 201 | 
             
                  ]
         | 
| 202 202 | 
             
                }
         | 
| @@ -61,14 +61,14 @@ | |
| 61 61 | 
             
                  "type": "function"
         | 
| 62 62 | 
             
                }
         | 
| 63 63 | 
             
              ],
         | 
| 64 | 
            -
              "bytecode": " | 
| 65 | 
            -
              "deployedBytecode": " | 
| 64 | 
            +
              "bytecode": "0x61030b610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004a575f3560e01c80632cf96bf91461004e5780634a7485ba1461008157806355ee6275146100ad575b5f80fd5b61006961005c366004610194565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009461008f3660046101d6565b6100ce565b6040516001600160c01b03199091168152602001610078565b6100c06100bb366004610194565b6100fd565b604051908152602001610078565b5f816040516020016100e09190610289565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60186001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561016a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018e91906102be565b92915050565b5f602082840312156101a4575f80fd5b81356001600160c01b0319811681146101bb575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156101e6575f80fd5b813567ffffffffffffffff8111156101fc575f80fd5b8201601f8101841361020c575f80fd5b803567ffffffffffffffff811115610226576102266101c2565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610255576102556101c2565b60405281815282820160200186101561026c575f80fd5b816020840160208301375f91810160200191909152949350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156102ce575f80fd5b505191905056fea2646970667358221220650f5be30f5fedee0fd1126bf1961a79780faa4042e773734ba0c087c16e3d0564736f6c634300081a0033",
         | 
| 65 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004a575f3560e01c80632cf96bf91461004e5780634a7485ba1461008157806355ee6275146100ad575b5f80fd5b61006961005c366004610194565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009461008f3660046101d6565b6100ce565b6040516001600160c01b03199091168152602001610078565b6100c06100bb366004610194565b6100fd565b604051908152602001610078565b5f816040516020016100e09190610289565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60186001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561016a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018e91906102be565b92915050565b5f602082840312156101a4575f80fd5b81356001600160c01b0319811681146101bb575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156101e6575f80fd5b813567ffffffffffffffff8111156101fc575f80fd5b8201601f8101841361020c575f80fd5b803567ffffffffffffffff811115610226576102266101c2565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610255576102556101c2565b60405281815282820160200186101561026c575f80fd5b816020840160208301375f91810160200191909152949350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156102ce575f80fd5b505191905056fea2646970667358221220650f5be30f5fedee0fd1126bf1961a79780faa4042e773734ba0c087c16e3d0564736f6c634300081a0033",
         | 
| 66 66 | 
             
              "linkReferences": {
         | 
| 67 67 | 
             
                "contracts/type/Key32.sol": {
         | 
| 68 68 | 
             
                  "Key32Lib": [
         | 
| 69 69 | 
             
                    {
         | 
| 70 70 | 
             
                      "length": 20,
         | 
| 71 | 
            -
                      "start":  | 
| 71 | 
            +
                      "start": 308
         | 
| 72 72 | 
             
                    }
         | 
| 73 73 | 
             
                  ]
         | 
| 74 74 | 
             
                }
         | 
| @@ -78,7 +78,7 @@ | |
| 78 78 | 
             
                  "Key32Lib": [
         | 
| 79 79 | 
             
                    {
         | 
| 80 80 | 
             
                      "length": 20,
         | 
| 81 | 
            -
                      "start":  | 
| 81 | 
            +
                      "start": 256
         | 
| 82 82 | 
             
                    }
         | 
| 83 83 | 
             
                  ]
         | 
| 84 84 | 
             
                }
         |