@etherisc/gif-next 0.0.2-f18fb8b-243 → 0.0.2-f1f3b2c-994
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 +19 -2
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +81 -63
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +2 -2
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +48 -30
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +21 -2
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +2 -2
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +72 -9
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +106 -248
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +16 -16
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +64 -222
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +228 -217
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +93 -101
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +64 -37
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +120 -31
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1512 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +410 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +1999 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +414 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1432 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1192 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1566 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2001 -0
- 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 -6
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +5 -5
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +17 -106
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +146 -112
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +31 -31
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +437 -129
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +44 -151
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +61 -81
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +285 -228
- 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 +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +45 -4
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/{ObjectManager.sol/ObjectManager.json → ObjectSet.sol/ObjectSet.json} +6 -6
- 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 +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +74 -229
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +18 -18
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +45 -31
- 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 +42 -213
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +37 -144
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +60 -80
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +94 -274
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +16 -16
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +458 -161
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +154 -86
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +229 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +87 -88
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +360 -171
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +84 -270
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +492 -333
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +98 -82
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +36 -162
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +57 -89
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +62 -242
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +16 -16
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +263 -181
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +104 -100
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +5 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +147 -6
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +295 -119
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +43 -43
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +62 -57
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +2 -2
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +406 -321
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +104 -100
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +118 -265
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +80 -120
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +62 -242
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +588 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +682 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +274 -22
- 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 +493 -80
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +263 -145
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +23 -313
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +52 -72
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +46 -5
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1061 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +70 -12
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +15 -205
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +247 -161
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +105 -95
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +5 -112
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +92 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +15 -20
- 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 +34 -31
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +36 -0
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +36 -0
- 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/IPolicyHolder.sol/IPolicyHolder.json +15 -47
- 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/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +34 -216
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +41 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +41 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/{NftIdSetManager.sol/NftIdSetManager.json → NftIdSet.sol/NftIdSet.json} +4 -4
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +6 -57
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +19 -141
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +8 -97
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +5 -112
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +330 -11
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +108 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +42 -21
- 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 +73 -93
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +100 -256
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +45 -4
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +77 -88
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -11
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +31 -138
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +56 -76
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +176 -130
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +59 -23
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +61 -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 +28 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +7 -2
- 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 +2 -2
- 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 +2 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +19 -19
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +60 -4
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -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 +52 -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 +586 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
- package/contracts/authorization/AccessAdmin.sol +31 -24
- package/contracts/authorization/Authorization.sol +5 -2
- package/contracts/authorization/IAccessAdmin.sol +3 -2
- package/contracts/authorization/IServiceAuthorization.sol +4 -2
- package/contracts/authorization/ServiceAuthorization.sol +27 -11
- package/contracts/distribution/BasicDistribution.sol +4 -15
- package/contracts/distribution/BasicDistributionAuthorization.sol +5 -1
- package/contracts/distribution/Distribution.sol +23 -11
- package/contracts/distribution/DistributionService.sol +76 -42
- package/contracts/distribution/DistributionServiceManager.sol +8 -11
- package/contracts/distribution/IDistributionComponent.sol +8 -4
- package/contracts/distribution/IDistributionService.sol +18 -2
- package/contracts/examples/fire/DamageLevel.sol +59 -0
- package/contracts/examples/fire/FirePool.sol +75 -0
- package/contracts/examples/fire/FirePoolAuthorization.sol +34 -0
- package/contracts/examples/fire/FireProduct.sol +411 -0
- package/contracts/examples/fire/FireProductAuthorization.sol +45 -0
- package/contracts/examples/fire/FireUSD.sol +26 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +50 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +76 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +351 -0
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +11 -34
- package/contracts/instance/IInstanceService.sol +5 -5
- package/contracts/instance/Instance.sol +13 -38
- package/contracts/instance/InstanceAdmin.sol +31 -9
- package/contracts/instance/InstanceAuthorizationV3.sol +16 -14
- package/contracts/instance/InstanceReader.sol +115 -25
- package/contracts/instance/InstanceService.sol +71 -49
- package/contracts/instance/InstanceServiceManager.sol +8 -13
- package/contracts/instance/InstanceStore.sol +12 -1
- package/contracts/instance/base/ObjectLifecycle.sol +9 -4
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +5 -5
- package/contracts/instance/module/IBundle.sol +1 -1
- package/contracts/instance/module/IComponents.sol +4 -8
- package/contracts/instance/module/IDistribution.sol +0 -1
- package/contracts/instance/module/IPolicy.sol +24 -24
- package/contracts/mock/Dip.sol +1 -1
- package/contracts/oracle/IOracleComponent.sol +2 -1
- package/contracts/oracle/Oracle.sol +17 -7
- package/contracts/oracle/OracleService.sol +11 -8
- package/contracts/oracle/OracleServiceManager.sol +8 -11
- package/contracts/pool/BasicPool.sol +7 -5
- package/contracts/pool/BasicPoolAuthorization.sol +11 -2
- package/contracts/pool/BundleService.sol +221 -56
- package/contracts/pool/BundleServiceManager.sol +8 -11
- package/contracts/pool/IBundleService.sol +42 -5
- package/contracts/pool/IPoolComponent.sol +24 -8
- package/contracts/pool/IPoolService.sol +57 -36
- package/contracts/pool/Pool.sol +72 -30
- package/contracts/pool/PoolService.sol +240 -129
- package/contracts/pool/PoolServiceManager.sol +6 -9
- package/contracts/product/ApplicationService.sol +62 -65
- package/contracts/product/ApplicationServiceManager.sol +6 -6
- package/contracts/product/BasicProduct.sol +3 -32
- package/contracts/product/BasicProductAuthorization.sol +3 -0
- package/contracts/product/ClaimService.sol +254 -115
- package/contracts/product/ClaimServiceManager.sol +6 -6
- package/contracts/product/IApplicationService.sol +1 -0
- package/contracts/product/IClaimService.sol +31 -7
- package/contracts/product/IPolicyService.sol +34 -32
- package/contracts/product/IPricingService.sol +7 -7
- package/contracts/product/IProductComponent.sol +18 -4
- package/contracts/product/{IProductService.sol → IRiskService.sol} +1 -1
- package/contracts/product/PolicyService.sol +404 -193
- package/contracts/product/PolicyServiceManager.sol +6 -9
- package/contracts/product/PricingService.sol +46 -46
- package/contracts/product/PricingServiceManager.sol +5 -8
- package/contracts/product/Product.sol +90 -50
- package/contracts/product/{ProductService.sol → RiskService.sol} +13 -41
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +65 -32
- package/contracts/registry/IRegistry.sol +65 -19
- package/contracts/registry/IRegistryService.sol +0 -9
- package/contracts/registry/Registry.sol +340 -211
- package/contracts/registry/RegistryAdmin.sol +155 -72
- package/contracts/registry/RegistryService.sol +59 -66
- package/contracts/registry/RegistryServiceManager.sol +4 -4
- package/contracts/registry/ReleaseLifecycle.sol +6 -3
- package/contracts/registry/ReleaseRegistry.sol +496 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +13 -15
- package/contracts/registry/TokenRegistry.sol +2 -2
- package/contracts/shared/Component.sol +38 -43
- package/contracts/shared/ComponentService.sol +88 -28
- package/contracts/shared/ComponentServiceManager.sol +10 -7
- package/contracts/shared/ComponentVerifyingService.sol +2 -3
- package/contracts/shared/ContractLib.sol +38 -0
- package/contracts/shared/IComponent.sol +7 -4
- package/contracts/shared/IComponentService.sol +15 -9
- package/contracts/shared/IInstanceLinkedComponent.sol +9 -10
- package/contracts/shared/ILifecycle.sol +3 -1
- package/contracts/shared/IPolicyHolder.sol +12 -22
- package/contracts/shared/IService.sol +1 -1
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +3 -3
- package/contracts/shared/InstanceLinkedComponent.sol +26 -6
- package/contracts/shared/KeyValueStore.sol +1 -1
- package/contracts/shared/Lifecycle.sol +13 -2
- package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
- package/contracts/shared/NftOwnable.sol +7 -7
- package/contracts/shared/PolicyHolder.sol +17 -57
- package/contracts/shared/Registerable.sol +4 -4
- package/contracts/shared/RegistryLinked.sol +3 -2
- package/contracts/shared/Service.sol +19 -15
- package/contracts/shared/TokenHandler.sol +100 -19
- package/contracts/shared/TokenHandlerDeployerLib.sol +12 -0
- package/contracts/staking/IStaking.sol +3 -3
- package/contracts/staking/IStakingService.sol +12 -5
- package/contracts/staking/StakeManagerLib.sol +18 -25
- package/contracts/staking/Staking.sol +27 -42
- package/contracts/staking/StakingManager.sol +10 -12
- package/contracts/staking/StakingReader.sol +23 -20
- package/contracts/staking/StakingService.sol +10 -14
- package/contracts/staking/StakingServiceManager.sol +4 -4
- package/contracts/staking/StakingStore.sol +12 -22
- package/contracts/staking/TargetManagerLib.sol +7 -3
- package/contracts/type/Amount.sol +27 -5
- package/contracts/type/Blocknumber.sol +7 -1
- package/contracts/type/ClaimId.sol +6 -1
- package/contracts/type/NftId.sol +1 -0
- package/contracts/type/ObjectType.sol +19 -18
- package/contracts/type/PayoutId.sol +10 -10
- package/contracts/type/Referral.sol +1 -0
- package/contracts/type/RiskId.sol +15 -1
- package/contracts/type/Seconds.sol +21 -1
- package/contracts/type/StateId.sol +15 -1
- package/contracts/type/Timestamp.sol +11 -1
- package/contracts/type/UFixed.sol +33 -10
- package/contracts/type/Version.sol +3 -1
- package/contracts/{shared → upgradeability}/ProxyManager.sol +70 -38
- package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
- package/contracts/{shared → upgradeability}/Versionable.sol +2 -2
- package/package.json +2 -1
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -703
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1159
- 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/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
- 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/Versionable.sol/Versionable.dbg.json +0 -4
- package/contracts/product/ProductServiceManager.sol +0 -42
- package/contracts/registry/ReleaseManager.sol +0 -487
- package/contracts/shared/InitializableCustom.sol +0 -177
- /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
| @@ -30,9 +30,19 @@ | |
| 30 30 | 
             
                      "internalType": "NftId",
         | 
| 31 31 | 
             
                      "name": "targetNftId",
         | 
| 32 32 | 
             
                      "type": "uint96"
         | 
| 33 | 
            +
                    },
         | 
| 34 | 
            +
                    {
         | 
| 35 | 
            +
                      "internalType": "Seconds",
         | 
| 36 | 
            +
                      "name": "minLockingPeriod",
         | 
| 37 | 
            +
                      "type": "uint40"
         | 
| 38 | 
            +
                    },
         | 
| 39 | 
            +
                    {
         | 
| 40 | 
            +
                      "internalType": "Seconds",
         | 
| 41 | 
            +
                      "name": "lockingPeriod",
         | 
| 42 | 
            +
                      "type": "uint40"
         | 
| 33 43 | 
             
                    }
         | 
| 34 44 | 
             
                  ],
         | 
| 35 | 
            -
                  "name": " | 
| 45 | 
            +
                  "name": "ErrorStakingLockingPeriodTooShort",
         | 
| 36 46 | 
             
                  "type": "error"
         | 
| 37 47 | 
             
                },
         | 
| 38 48 | 
             
                {
         | 
| @@ -120,6 +130,11 @@ | |
| 120 130 | 
             
                  "name": "ErrorStakingTargetUnexpectedObjectType",
         | 
| 121 131 | 
             
                  "type": "error"
         | 
| 122 132 | 
             
                },
         | 
| 133 | 
            +
                {
         | 
| 134 | 
            +
                  "inputs": [],
         | 
| 135 | 
            +
                  "name": "MathLigMulDivOverflow",
         | 
| 136 | 
            +
                  "type": "error"
         | 
| 137 | 
            +
                },
         | 
| 123 138 | 
             
                {
         | 
| 124 139 | 
             
                  "inputs": [
         | 
| 125 140 | 
             
                    {
         | 
| @@ -299,6 +314,19 @@ | |
| 299 314 | 
             
                  "stateMutability": "pure",
         | 
| 300 315 | 
             
                  "type": "function"
         | 
| 301 316 | 
             
                },
         | 
| 317 | 
            +
                {
         | 
| 318 | 
            +
                  "inputs": [],
         | 
| 319 | 
            +
                  "name": "getMinimumLockingPeriod",
         | 
| 320 | 
            +
                  "outputs": [
         | 
| 321 | 
            +
                    {
         | 
| 322 | 
            +
                      "internalType": "Seconds",
         | 
| 323 | 
            +
                      "name": "minLockingPeriod",
         | 
| 324 | 
            +
                      "type": "uint40"
         | 
| 325 | 
            +
                    }
         | 
| 326 | 
            +
                  ],
         | 
| 327 | 
            +
                  "stateMutability": "pure",
         | 
| 328 | 
            +
                  "type": "function"
         | 
| 329 | 
            +
                },
         | 
| 302 330 | 
             
                {
         | 
| 303 331 | 
             
                  "inputs": [
         | 
| 304 332 | 
             
                    {
         | 
| @@ -450,14 +478,14 @@ | |
| 450 478 | 
             
                  "type": "function"
         | 
| 451 479 | 
             
                }
         | 
| 452 480 | 
             
              ],
         | 
| 453 | 
            -
              "bytecode": "0x611524610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063b7f3e12c11610093578063da86eb801161006e578063da86eb80146101ad578063e8e7a2b4146101c0578063f2bbb0a8146101e1578063f87bf3731461020c575f80fd5b8063b7f3e12c14610171578063bf381be614610184578063c6edc3dd146101a5575f80fd5b80633e7964a1146100da578063504a473d146100fd5780635bcf927a1461011e578063658501a6146101415780639ed616cd14610149578063aea958cf1461015e575b5f80fd5b6100e2610214565b60405164ffffffffff90911681526020015b60405180910390f35b61011061010b366004610f5d565b610291565b6040519081526020016100f4565b61013161012c366004610f86565b61032c565b60405190151581526020016100f4565b61011061035a565b61015c610157366004610fc7565b6103d7565b005b61015c61016c36600461103c565b6106b5565b61011061017f366004611066565b610708565b6101976101923660046110a4565b61086a565b6040516100f49291906110ec565b6100e2610a1e565b61015c6101bb366004611132565b610a5a565b6101d36101ce366004611169565b610b54565b6040516100f4929190611196565b6101f46101ef36600461103c565b610d00565b6040516001600160601b0390911681526020016100f4565b610110610d8a565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af4158015610268573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111d5565b905090565b5f73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601f6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015610302573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032691906111f0565b92915050565b5f60ff821660010361034057506001919050565b60ff8216600a0361035357506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103b3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111f0565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561042d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610451919061121b565b1561046f5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104de919061121b565b1561050c57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b6105158361032c565b61054657604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610503565b6105508483610a5a565b61055a84826106b5565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c9919061121b565b6105f15760405163686c563560e11b81526001600160601b0385166004820152602401610503565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610664919081019061131d565b60400151905060ff808216908516146106ac5760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610503565b50505050505050565b6106c5816106c161035a565b1090565b1561070457816106d361035a565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610503565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610762573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078691906113ef565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e691906113ef565b6107f0919061140a565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906111f0565b90506108618382610dcc565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed919061142f565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa15801561093b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095f919061121b565b6109875760405163686c563560e11b81526001600160601b0386166004820152602401610503565b6109918585610a5a565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109dc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a00919061144a565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161024d565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610aae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ad2919061121b565b15610afb5760405163b7c4528f60e01b81526001600160601b0383166004820152602401610503565b610b0c81610b07610214565b610de0565b156107045781610b1a610214565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610503565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd7919061142f565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610c25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c49919061121b565b610c715760405163686c563560e11b81526001600160601b0386166004820152602401610503565b610c7b85856106b5565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610cc6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cea919061144a565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610d5f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8391906114bf565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610398565b5f610d838383670de0b6b3a7640000610e62565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610e3e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d83919061121b565b5f80805f19858709858702925082811083820303915050805f03610e9957838281610e8f57610e8f6114da565b0492505050610d83565b808411610ee05760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610503565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610f5a575f80fd5b50565b5f60208284031215610f6d575f80fd5b8135610d8381610f46565b60ff81168114610f5a575f80fd5b5f60208284031215610f96575f80fd5b8135610d8381610f78565b6001600160a01b0381168114610f5a575f80fd5b64ffffffffff81168114610f5a575f80fd5b5f805f805f8060c08789031215610fdc575f80fd5b8635610fe781610fa1565b95506020870135610ff781610fa1565b9450604087013561100781610f46565b9350606087013561101781610f78565b9250608087013561102781610fb5565b9598949750929591949360a090920135925050565b5f806040838503121561104d575f80fd5b823561105881610f46565b946020939093013593505050565b5f805f60608486031215611078575f80fd5b833561108381610fa1565b9250602084013561109381610fa1565b929592945050506040919091013590565b5f805f606084860312156110b6575f80fd5b83356110c181610fa1565b925060208401356110d181610f46565b915060408401356110e181610fb5565b809150509250925092565b64ffffffffff8316815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f8060408385031215611143575f80fd5b823561114e81610f46565b9150602083013561115e81610fb5565b809150509250929050565b5f805f6060848603121561117b575f80fd5b833561118681610fa1565b9250602084013561109381610f46565b82815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f602082840312156111e5575f80fd5b8151610d8381610fb5565b5f60208284031215611200575f80fd5b5051919050565b80518015158114611216575f80fd5b919050565b5f6020828403121561122b575f80fd5b610d8382611207565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff8111828210171561126b5761126b611234565b60405290565b805161121681610f46565b805161121681610f78565b805161121681610fa1565b5f82601f8301126112a1575f80fd5b815167ffffffffffffffff8111156112bb576112bb611234565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156112ea576112ea611234565b604052818152838201602001851015611301575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f6020828403121561132d575f80fd5b815167ffffffffffffffff811115611343575f80fd5b820160e08185031215611354575f80fd5b61135c611248565b61136582611271565b815261137360208301611271565b60208201526113846040830161127c565b604082015261139560608301611207565b60608201526113a660808301611287565b60808201526113b760a08301611287565b60a082015260c082015167ffffffffffffffff8111156113d5575f80fd5b6113e186828501611292565b60c083015250949350505050565b5f602082840312156113ff575f80fd5b8151610d8381610f78565b60ff828116828216039081111561032657634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561143f575f80fd5b8151610d8381610fa1565b5f608082840312801561145b575f80fd5b506040516080810167ffffffffffffffff8111828210171561147f5761147f611234565b604052825161148d81610f78565b81526020838101519082015260408301516114a781610fb5565b60408201526060928301519281019290925250919050565b5f602082840312156114cf575f80fd5b8151610d8381610f46565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220417d37d1a82ddd91ecae7dbd36e2d02e3223e21344427874efbb711efd33c05664736f6c634300081a0033",
         | 
| 454 | 
            -
              "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063b7f3e12c11610093578063da86eb801161006e578063da86eb80146101ad578063e8e7a2b4146101c0578063f2bbb0a8146101e1578063f87bf3731461020c575f80fd5b8063b7f3e12c14610171578063bf381be614610184578063c6edc3dd146101a5575f80fd5b80633e7964a1146100da578063504a473d146100fd5780635bcf927a1461011e578063658501a6146101415780639ed616cd14610149578063aea958cf1461015e575b5f80fd5b6100e2610214565b60405164ffffffffff90911681526020015b60405180910390f35b61011061010b366004610f5d565b610291565b6040519081526020016100f4565b61013161012c366004610f86565b61032c565b60405190151581526020016100f4565b61011061035a565b61015c610157366004610fc7565b6103d7565b005b61015c61016c36600461103c565b6106b5565b61011061017f366004611066565b610708565b6101976101923660046110a4565b61086a565b6040516100f49291906110ec565b6100e2610a1e565b61015c6101bb366004611132565b610a5a565b6101d36101ce366004611169565b610b54565b6040516100f4929190611196565b6101f46101ef36600461103c565b610d00565b6040516001600160601b0390911681526020016100f4565b610110610d8a565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af4158015610268573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111d5565b905090565b5f73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601f6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015610302573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032691906111f0565b92915050565b5f60ff821660010361034057506001919050565b60ff8216600a0361035357506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103b3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111f0565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561042d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610451919061121b565b1561046f5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104de919061121b565b1561050c57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b6105158361032c565b61054657604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610503565b6105508483610a5a565b61055a84826106b5565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c9919061121b565b6105f15760405163686c563560e11b81526001600160601b0385166004820152602401610503565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610664919081019061131d565b60400151905060ff808216908516146106ac5760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610503565b50505050505050565b6106c5816106c161035a565b1090565b1561070457816106d361035a565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610503565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610762573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078691906113ef565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e691906113ef565b6107f0919061140a565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906111f0565b90506108618382610dcc565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed919061142f565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa15801561093b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095f919061121b565b6109875760405163686c563560e11b81526001600160601b0386166004820152602401610503565b6109918585610a5a565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109dc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a00919061144a565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161024d565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610aae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ad2919061121b565b15610afb5760405163b7c4528f60e01b81526001600160601b0383166004820152602401610503565b610b0c81610b07610214565b610de0565b156107045781610b1a610214565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610503565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd7919061142f565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610c25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c49919061121b565b610c715760405163686c563560e11b81526001600160601b0386166004820152602401610503565b610c7b85856106b5565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610cc6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cea919061144a565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610d5f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8391906114bf565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610398565b5f610d838383670de0b6b3a7640000610e62565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610e3e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d83919061121b565b5f80805f19858709858702925082811083820303915050805f03610e9957838281610e8f57610e8f6114da565b0492505050610d83565b808411610ee05760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610503565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610f5a575f80fd5b50565b5f60208284031215610f6d575f80fd5b8135610d8381610f46565b60ff81168114610f5a575f80fd5b5f60208284031215610f96575f80fd5b8135610d8381610f78565b6001600160a01b0381168114610f5a575f80fd5b64ffffffffff81168114610f5a575f80fd5b5f805f805f8060c08789031215610fdc575f80fd5b8635610fe781610fa1565b95506020870135610ff781610fa1565b9450604087013561100781610f46565b9350606087013561101781610f78565b9250608087013561102781610fb5565b9598949750929591949360a090920135925050565b5f806040838503121561104d575f80fd5b823561105881610f46565b946020939093013593505050565b5f805f60608486031215611078575f80fd5b833561108381610fa1565b9250602084013561109381610fa1565b929592945050506040919091013590565b5f805f606084860312156110b6575f80fd5b83356110c181610fa1565b925060208401356110d181610f46565b915060408401356110e181610fb5565b809150509250925092565b64ffffffffff8316815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f8060408385031215611143575f80fd5b823561114e81610f46565b9150602083013561115e81610fb5565b809150509250929050565b5f805f6060848603121561117b575f80fd5b833561118681610fa1565b9250602084013561109381610f46565b82815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f602082840312156111e5575f80fd5b8151610d8381610fb5565b5f60208284031215611200575f80fd5b5051919050565b80518015158114611216575f80fd5b919050565b5f6020828403121561122b575f80fd5b610d8382611207565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff8111828210171561126b5761126b611234565b60405290565b805161121681610f46565b805161121681610f78565b805161121681610fa1565b5f82601f8301126112a1575f80fd5b815167ffffffffffffffff8111156112bb576112bb611234565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156112ea576112ea611234565b604052818152838201602001851015611301575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f6020828403121561132d575f80fd5b815167ffffffffffffffff811115611343575f80fd5b820160e08185031215611354575f80fd5b61135c611248565b61136582611271565b815261137360208301611271565b60208201526113846040830161127c565b604082015261139560608301611207565b60608201526113a660808301611287565b60808201526113b760a08301611287565b60a082015260c082015167ffffffffffffffff8111156113d5575f80fd5b6113e186828501611292565b60c083015250949350505050565b5f602082840312156113ff575f80fd5b8151610d8381610f78565b60ff828116828216039081111561032657634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561143f575f80fd5b8151610d8381610fa1565b5f608082840312801561145b575f80fd5b506040516080810167ffffffffffffffff8111828210171561147f5761147f611234565b604052825161148d81610f78565b81526020838101519082015260408301516114a781610fb5565b60408201526060928301519281019290925250919050565b5f602082840312156114cf575f80fd5b8151610d8381610f46565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220417d37d1a82ddd91ecae7dbd36e2d02e3223e21344427874efbb711efd33c05664736f6c634300081a0033",
         | 
| 481 | 
            +
              "bytecode": "0x611589610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c8063bf381be611610093578063e3bedc7d1161006e578063e3bedc7d146101da578063e8e7a2b4146101e2578063f2bbb0a814610203578063f87bf3731461022e575f80fd5b8063bf381be61461019e578063c6edc3dd146101bf578063da86eb80146101c7575f80fd5b8063658501a6116100ce578063658501a61461015b5780639ed616cd14610163578063aea958cf14610178578063b7f3e12c1461018b575f80fd5b80633e7964a1146100f4578063504a473d146101175780635bcf927a14610138575b5f80fd5b6100fc610236565b60405164ffffffffff90911681526020015b60405180910390f35b61012a610125366004610fc2565b6102b3565b60405190815260200161010e565b61014b610146366004610feb565b610341565b604051901515815260200161010e565b61012a61036f565b61017661017136600461102c565b6103ec565b005b6101766101863660046110a1565b6106ca565b61012a6101993660046110cb565b61071d565b6101b16101ac366004611109565b61087f565b60405161010e929190611151565b6100fc610a33565b6101766101d5366004611197565b610a6f565b6100fc610ba5565b6101f56101f03660046111ce565b610be1565b60405161010e9291906111fb565b6102166102113660046110a1565b610d8d565b6040516001600160601b03909116815260200161010e565b61012a610e17565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af415801561028a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ae919061123a565b905090565b60408051630711349960e31b81526001600160601b038316600482015260206024820181905291515f9273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af4158015610317573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033b9190611255565b92915050565b5f60ff821660010361035557506001919050565b60ff8216600a0361036857506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ae9190611255565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610442573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104669190611280565b156104845760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104cf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f39190611280565b1561052157604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b61052a83610341565b61055b57604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610518565b6105658483610a6f565b61056f84826106ca565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105de9190611280565b6106065760405163686c563560e11b81526001600160601b0385166004820152602401610518565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa158015610652573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106799190810190611382565b60400151905060ff808216908516146106c15760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610518565b50505050505050565b6106da816106d661036f565b1090565b1561071957816106e861036f565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610518565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610777573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079b9190611454565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fb9190611454565b610805919061146f565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610846573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086a9190611255565b90506108768382610e59565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108de573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109029190611494565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109749190611280565b61099c5760405163686c563560e11b81526001600160601b0386166004820152602401610518565b6109a68585610a6f565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1591906114af565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161026f565b73__$71e292c09eace9601b3e21e68a1278917a$__63add9ce9964ffffffffff8316610a99610ba5565b6040516001600160e01b031960e085901b16815264ffffffffff928316600482015291166024820152604401602060405180830381865af4158015610ae0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b049190611280565b15610b4c5781610b12610ba5565b604051630114a1ef60e51b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610518565b610b5d81610b58610236565b610e6d565b156107195781610b6b610236565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610518565b604051630319d08b60e21b81526201518060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161026f565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c40573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c649190611494565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610cb2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cd69190611280565b610cfe5760405163686c563560e11b81526001600160601b0386166004820152602401610518565b610d0885856106ca565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610d53573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7791906114af565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610dec573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e109190611524565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044016103ad565b5f610e108383670de0b6b3a7640000610eef565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610ecb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e109190611280565b5f80805f19858709858702925082811083820303915050805f03610f2657838281610f1c57610f1c61153f565b0492505050610e10565b808411610f4557604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610fbf575f80fd5b50565b5f60208284031215610fd2575f80fd5b8135610e1081610fab565b60ff81168114610fbf575f80fd5b5f60208284031215610ffb575f80fd5b8135610e1081610fdd565b6001600160a01b0381168114610fbf575f80fd5b64ffffffffff81168114610fbf575f80fd5b5f805f805f8060c08789031215611041575f80fd5b863561104c81611006565b9550602087013561105c81611006565b9450604087013561106c81610fab565b9350606087013561107c81610fdd565b9250608087013561108c8161101a565b9598949750929591949360a090920135925050565b5f80604083850312156110b2575f80fd5b82356110bd81610fab565b946020939093013593505050565b5f805f606084860312156110dd575f80fd5b83356110e881611006565b925060208401356110f881611006565b929592945050506040919091013590565b5f805f6060848603121561111b575f80fd5b833561112681611006565b9250602084013561113681610fab565b915060408401356111468161101a565b809150509250925092565b64ffffffffff8316815260a08101610e10602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f80604083850312156111a8575f80fd5b82356111b381610fab565b915060208301356111c38161101a565b809150509250929050565b5f805f606084860312156111e0575f80fd5b83356111eb81611006565b925060208401356110f881610fab565b82815260a08101610e10602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f6020828403121561124a575f80fd5b8151610e108161101a565b5f60208284031215611265575f80fd5b5051919050565b8051801515811461127b575f80fd5b919050565b5f60208284031215611290575f80fd5b610e108261126c565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff811182821017156112d0576112d0611299565b60405290565b805161127b81610fab565b805161127b81610fdd565b805161127b81611006565b5f82601f830112611306575f80fd5b815167ffffffffffffffff81111561132057611320611299565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561134f5761134f611299565b604052818152838201602001851015611366575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f60208284031215611392575f80fd5b815167ffffffffffffffff8111156113a8575f80fd5b820160e081850312156113b9575f80fd5b6113c16112ad565b6113ca826112d6565b81526113d8602083016112d6565b60208201526113e9604083016112e1565b60408201526113fa6060830161126c565b606082015261140b608083016112ec565b608082015261141c60a083016112ec565b60a082015260c082015167ffffffffffffffff81111561143a575f80fd5b611446868285016112f7565b60c083015250949350505050565b5f60208284031215611464575f80fd5b8151610e1081610fdd565b60ff828116828216039081111561033b57634e487b7160e01b5f52601160045260245ffd5b5f602082840312156114a4575f80fd5b8151610e1081611006565b5f60808284031280156114c0575f80fd5b506040516080810167ffffffffffffffff811182821017156114e4576114e4611299565b60405282516114f281610fdd565b815260208381015190820152604083015161150c8161101a565b60408201526060928301519281019290925250919050565b5f60208284031215611534575f80fd5b8151610e1081610fab565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212201ef4165049e3caf298c5451c6675ca6a7eb3598a89967ab8eaa729d09d38867d64736f6c634300081a0033",
         | 
| 482 | 
            +
              "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c8063bf381be611610093578063e3bedc7d1161006e578063e3bedc7d146101da578063e8e7a2b4146101e2578063f2bbb0a814610203578063f87bf3731461022e575f80fd5b8063bf381be61461019e578063c6edc3dd146101bf578063da86eb80146101c7575f80fd5b8063658501a6116100ce578063658501a61461015b5780639ed616cd14610163578063aea958cf14610178578063b7f3e12c1461018b575f80fd5b80633e7964a1146100f4578063504a473d146101175780635bcf927a14610138575b5f80fd5b6100fc610236565b60405164ffffffffff90911681526020015b60405180910390f35b61012a610125366004610fc2565b6102b3565b60405190815260200161010e565b61014b610146366004610feb565b610341565b604051901515815260200161010e565b61012a61036f565b61017661017136600461102c565b6103ec565b005b6101766101863660046110a1565b6106ca565b61012a6101993660046110cb565b61071d565b6101b16101ac366004611109565b61087f565b60405161010e929190611151565b6100fc610a33565b6101766101d5366004611197565b610a6f565b6100fc610ba5565b6101f56101f03660046111ce565b610be1565b60405161010e9291906111fb565b6102166102113660046110a1565b610d8d565b6040516001600160601b03909116815260200161010e565b61012a610e17565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af415801561028a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ae919061123a565b905090565b60408051630711349960e31b81526001600160601b038316600482015260206024820181905291515f9273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af4158015610317573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033b9190611255565b92915050565b5f60ff821660010361035557506001919050565b60ff8216600a0361036857506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ae9190611255565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610442573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104669190611280565b156104845760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104cf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f39190611280565b1561052157604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b61052a83610341565b61055b57604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610518565b6105658483610a6f565b61056f84826106ca565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105de9190611280565b6106065760405163686c563560e11b81526001600160601b0385166004820152602401610518565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa158015610652573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106799190810190611382565b60400151905060ff808216908516146106c15760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610518565b50505050505050565b6106da816106d661036f565b1090565b1561071957816106e861036f565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610518565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610777573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079b9190611454565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fb9190611454565b610805919061146f565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610846573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086a9190611255565b90506108768382610e59565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108de573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109029190611494565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109749190611280565b61099c5760405163686c563560e11b81526001600160601b0386166004820152602401610518565b6109a68585610a6f565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109f1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1591906114af565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161026f565b73__$71e292c09eace9601b3e21e68a1278917a$__63add9ce9964ffffffffff8316610a99610ba5565b6040516001600160e01b031960e085901b16815264ffffffffff928316600482015291166024820152604401602060405180830381865af4158015610ae0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b049190611280565b15610b4c5781610b12610ba5565b604051630114a1ef60e51b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610518565b610b5d81610b58610236565b610e6d565b156107195781610b6b610236565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610518565b604051630319d08b60e21b81526201518060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161026f565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c40573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c649190611494565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610cb2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cd69190611280565b610cfe5760405163686c563560e11b81526001600160601b0386166004820152602401610518565b610d0885856106ca565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610d53573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7791906114af565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610dec573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e109190611524565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044016103ad565b5f610e108383670de0b6b3a7640000610eef565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610ecb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e109190611280565b5f80805f19858709858702925082811083820303915050805f03610f2657838281610f1c57610f1c61153f565b0492505050610e10565b808411610f4557604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610fbf575f80fd5b50565b5f60208284031215610fd2575f80fd5b8135610e1081610fab565b60ff81168114610fbf575f80fd5b5f60208284031215610ffb575f80fd5b8135610e1081610fdd565b6001600160a01b0381168114610fbf575f80fd5b64ffffffffff81168114610fbf575f80fd5b5f805f805f8060c08789031215611041575f80fd5b863561104c81611006565b9550602087013561105c81611006565b9450604087013561106c81610fab565b9350606087013561107c81610fdd565b9250608087013561108c8161101a565b9598949750929591949360a090920135925050565b5f80604083850312156110b2575f80fd5b82356110bd81610fab565b946020939093013593505050565b5f805f606084860312156110dd575f80fd5b83356110e881611006565b925060208401356110f881611006565b929592945050506040919091013590565b5f805f6060848603121561111b575f80fd5b833561112681611006565b9250602084013561113681610fab565b915060408401356111468161101a565b809150509250925092565b64ffffffffff8316815260a08101610e10602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f80604083850312156111a8575f80fd5b82356111b381610fab565b915060208301356111c38161101a565b809150509250929050565b5f805f606084860312156111e0575f80fd5b83356111eb81611006565b925060208401356110f881610fab565b82815260a08101610e10602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f6020828403121561124a575f80fd5b8151610e108161101a565b5f60208284031215611265575f80fd5b5051919050565b8051801515811461127b575f80fd5b919050565b5f60208284031215611290575f80fd5b610e108261126c565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff811182821017156112d0576112d0611299565b60405290565b805161127b81610fab565b805161127b81610fdd565b805161127b81611006565b5f82601f830112611306575f80fd5b815167ffffffffffffffff81111561132057611320611299565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561134f5761134f611299565b604052818152838201602001851015611366575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f60208284031215611392575f80fd5b815167ffffffffffffffff8111156113a8575f80fd5b820160e081850312156113b9575f80fd5b6113c16112ad565b6113ca826112d6565b81526113d8602083016112d6565b60208201526113e9604083016112e1565b60408201526113fa6060830161126c565b606082015261140b608083016112ec565b608082015261141c60a083016112ec565b60a082015260c082015167ffffffffffffffff81111561143a575f80fd5b611446868285016112f7565b60c083015250949350505050565b5f60208284031215611464575f80fd5b8151610e1081610fdd565b60ff828116828216039081111561033b57634e487b7160e01b5f52601160045260245ffd5b5f602082840312156114a4575f80fd5b8151610e1081611006565b5f60808284031280156114c0575f80fd5b506040516080810167ffffffffffffffff811182821017156114e4576114e4611299565b60405282516114f281610fdd565b815260208381015190820152604083015161150c8161101a565b60408201526060928301519281019290925250919050565b5f60208284031215611534575f80fd5b8151610e1081610fab565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212201ef4165049e3caf298c5451c6675ca6a7eb3598a89967ab8eaa729d09d38867d64736f6c634300081a0033",
         | 
| 455 483 | 
             
              "linkReferences": {
         | 
| 456 484 | 
             
                "contracts/type/Amount.sol": {
         | 
| 457 485 | 
             
                  "AmountLib": [
         | 
| 458 486 | 
             
                    {
         | 
| 459 487 | 
             
                      "length": 20,
         | 
| 460 | 
            -
                      "start":  | 
| 488 | 
            +
                      "start": 3560
         | 
| 461 489 | 
             
                    }
         | 
| 462 490 | 
             
                  ]
         | 
| 463 491 | 
             
                },
         | 
| @@ -465,11 +493,11 @@ | |
| 465 493 | 
             
                  "NftIdLib": [
         | 
| 466 494 | 
             
                    {
         | 
| 467 495 | 
             
                      "length": 20,
         | 
| 468 | 
            -
                      "start":  | 
| 496 | 
            +
                      "start": 787
         | 
| 469 497 | 
             
                    },
         | 
| 470 498 | 
             
                    {
         | 
| 471 499 | 
             
                      "length": 20,
         | 
| 472 | 
            -
                      "start":  | 
| 500 | 
            +
                      "start": 1086
         | 
| 473 501 | 
             
                    }
         | 
| 474 502 | 
             
                  ]
         | 
| 475 503 | 
             
                },
         | 
| @@ -477,19 +505,23 @@ | |
| 477 505 | 
             
                  "SecondsLib": [
         | 
| 478 506 | 
             
                    {
         | 
| 479 507 | 
             
                      "length": 20,
         | 
| 480 | 
            -
                      "start":  | 
| 508 | 
            +
                      "start": 645
         | 
| 509 | 
            +
                    },
         | 
| 510 | 
            +
                    {
         | 
| 511 | 
            +
                      "length": 20,
         | 
| 512 | 
            +
                      "start": 2689
         | 
| 481 513 | 
             
                    },
         | 
| 482 514 | 
             
                    {
         | 
| 483 515 | 
             
                      "length": 20,
         | 
| 484 | 
            -
                      "start":  | 
| 516 | 
            +
                      "start": 2725
         | 
| 485 517 | 
             
                    },
         | 
| 486 518 | 
             
                    {
         | 
| 487 519 | 
             
                      "length": 20,
         | 
| 488 | 
            -
                      "start":  | 
| 520 | 
            +
                      "start": 3059
         | 
| 489 521 | 
             
                    },
         | 
| 490 522 | 
             
                    {
         | 
| 491 523 | 
             
                      "length": 20,
         | 
| 492 | 
            -
                      "start":  | 
| 524 | 
            +
                      "start": 3783
         | 
| 493 525 | 
             
                    }
         | 
| 494 526 | 
             
                  ]
         | 
| 495 527 | 
             
                },
         | 
| @@ -497,15 +529,15 @@ | |
| 497 529 | 
             
                  "UFixedLib": [
         | 
| 498 530 | 
             
                    {
         | 
| 499 531 | 
             
                      "length": 20,
         | 
| 500 | 
            -
                      "start":  | 
| 532 | 
            +
                      "start": 963
         | 
| 501 533 | 
             
                    },
         | 
| 502 534 | 
             
                    {
         | 
| 503 535 | 
             
                      "length": 20,
         | 
| 504 | 
            -
                      "start":  | 
| 536 | 
            +
                      "start": 1877
         | 
| 505 537 | 
             
                    },
         | 
| 506 538 | 
             
                    {
         | 
| 507 539 | 
             
                      "length": 20,
         | 
| 508 | 
            -
                      "start":  | 
| 540 | 
            +
                      "start": 3691
         | 
| 509 541 | 
             
                    }
         | 
| 510 542 | 
             
                  ]
         | 
| 511 543 | 
             
                }
         | 
| @@ -515,7 +547,7 @@ | |
| 515 547 | 
             
                  "AmountLib": [
         | 
| 516 548 | 
             
                    {
         | 
| 517 549 | 
             
                      "length": 20,
         | 
| 518 | 
            -
                      "start":  | 
| 550 | 
            +
                      "start": 3508
         | 
| 519 551 | 
             
                    }
         | 
| 520 552 | 
             
                  ]
         | 
| 521 553 | 
             
                },
         | 
| @@ -523,11 +555,11 @@ | |
| 523 555 | 
             
                  "NftIdLib": [
         | 
| 524 556 | 
             
                    {
         | 
| 525 557 | 
             
                      "length": 20,
         | 
| 526 | 
            -
                      "start":  | 
| 558 | 
            +
                      "start": 735
         | 
| 527 559 | 
             
                    },
         | 
| 528 560 | 
             
                    {
         | 
| 529 561 | 
             
                      "length": 20,
         | 
| 530 | 
            -
                      "start":  | 
| 562 | 
            +
                      "start": 1034
         | 
| 531 563 | 
             
                    }
         | 
| 532 564 | 
             
                  ]
         | 
| 533 565 | 
             
                },
         | 
| @@ -535,19 +567,23 @@ | |
| 535 567 | 
             
                  "SecondsLib": [
         | 
| 536 568 | 
             
                    {
         | 
| 537 569 | 
             
                      "length": 20,
         | 
| 538 | 
            -
                      "start":  | 
| 570 | 
            +
                      "start": 593
         | 
| 571 | 
            +
                    },
         | 
| 572 | 
            +
                    {
         | 
| 573 | 
            +
                      "length": 20,
         | 
| 574 | 
            +
                      "start": 2637
         | 
| 539 575 | 
             
                    },
         | 
| 540 576 | 
             
                    {
         | 
| 541 577 | 
             
                      "length": 20,
         | 
| 542 | 
            -
                      "start":  | 
| 578 | 
            +
                      "start": 2673
         | 
| 543 579 | 
             
                    },
         | 
| 544 580 | 
             
                    {
         | 
| 545 581 | 
             
                      "length": 20,
         | 
| 546 | 
            -
                      "start":  | 
| 582 | 
            +
                      "start": 3007
         | 
| 547 583 | 
             
                    },
         | 
| 548 584 | 
             
                    {
         | 
| 549 585 | 
             
                      "length": 20,
         | 
| 550 | 
            -
                      "start":  | 
| 586 | 
            +
                      "start": 3731
         | 
| 551 587 | 
             
                    }
         | 
| 552 588 | 
             
                  ]
         | 
| 553 589 | 
             
                },
         | 
| @@ -555,15 +591,15 @@ | |
| 555 591 | 
             
                  "UFixedLib": [
         | 
| 556 592 | 
             
                    {
         | 
| 557 593 | 
             
                      "length": 20,
         | 
| 558 | 
            -
                      "start":  | 
| 594 | 
            +
                      "start": 911
         | 
| 559 595 | 
             
                    },
         | 
| 560 596 | 
             
                    {
         | 
| 561 597 | 
             
                      "length": 20,
         | 
| 562 | 
            -
                      "start":  | 
| 598 | 
            +
                      "start": 1825
         | 
| 563 599 | 
             
                    },
         | 
| 564 600 | 
             
                    {
         | 
| 565 601 | 
             
                      "length": 20,
         | 
| 566 | 
            -
                      "start":  | 
| 602 | 
            +
                      "start": 3639
         | 
| 567 603 | 
             
                    }
         | 
| 568 604 | 
             
                  ]
         | 
| 569 605 | 
             
                }
         | 
| @@ -14,6 +14,11 @@ | |
| 14 14 | 
             
                  "name": "ErrorAmountLibValueTooBig",
         | 
| 15 15 | 
             
                  "type": "error"
         | 
| 16 16 | 
             
                },
         | 
| 17 | 
            +
                {
         | 
| 18 | 
            +
                  "inputs": [],
         | 
| 19 | 
            +
                  "name": "MathLigMulDivOverflow",
         | 
| 20 | 
            +
                  "type": "error"
         | 
| 21 | 
            +
                },
         | 
| 17 22 | 
             
                {
         | 
| 18 23 | 
             
                  "inputs": [
         | 
| 19 24 | 
             
                    {
         | 
| @@ -105,6 +110,30 @@ | |
| 105 110 | 
             
                  "stateMutability": "pure",
         | 
| 106 111 | 
             
                  "type": "function"
         | 
| 107 112 | 
             
                },
         | 
| 113 | 
            +
                {
         | 
| 114 | 
            +
                  "inputs": [
         | 
| 115 | 
            +
                    {
         | 
| 116 | 
            +
                      "internalType": "Amount",
         | 
| 117 | 
            +
                      "name": "a1",
         | 
| 118 | 
            +
                      "type": "uint96"
         | 
| 119 | 
            +
                    },
         | 
| 120 | 
            +
                    {
         | 
| 121 | 
            +
                      "internalType": "Amount",
         | 
| 122 | 
            +
                      "name": "a2",
         | 
| 123 | 
            +
                      "type": "uint96"
         | 
| 124 | 
            +
                    }
         | 
| 125 | 
            +
                  ],
         | 
| 126 | 
            +
                  "name": "gte",
         | 
| 127 | 
            +
                  "outputs": [
         | 
| 128 | 
            +
                    {
         | 
| 129 | 
            +
                      "internalType": "bool",
         | 
| 130 | 
            +
                      "name": "",
         | 
| 131 | 
            +
                      "type": "bool"
         | 
| 132 | 
            +
                    }
         | 
| 133 | 
            +
                  ],
         | 
| 134 | 
            +
                  "stateMutability": "pure",
         | 
| 135 | 
            +
                  "type": "function"
         | 
| 136 | 
            +
                },
         | 
| 108 137 | 
             
                {
         | 
| 109 138 | 
             
                  "inputs": [
         | 
| 110 139 | 
             
                    {
         | 
| @@ -148,6 +177,30 @@ | |
| 148 177 | 
             
                  "stateMutability": "pure",
         | 
| 149 178 | 
             
                  "type": "function"
         | 
| 150 179 | 
             
                },
         | 
| 180 | 
            +
                {
         | 
| 181 | 
            +
                  "inputs": [
         | 
| 182 | 
            +
                    {
         | 
| 183 | 
            +
                      "internalType": "Amount",
         | 
| 184 | 
            +
                      "name": "a1",
         | 
| 185 | 
            +
                      "type": "uint96"
         | 
| 186 | 
            +
                    },
         | 
| 187 | 
            +
                    {
         | 
| 188 | 
            +
                      "internalType": "Amount",
         | 
| 189 | 
            +
                      "name": "a2",
         | 
| 190 | 
            +
                      "type": "uint96"
         | 
| 191 | 
            +
                    }
         | 
| 192 | 
            +
                  ],
         | 
| 193 | 
            +
                  "name": "lte",
         | 
| 194 | 
            +
                  "outputs": [
         | 
| 195 | 
            +
                    {
         | 
| 196 | 
            +
                      "internalType": "bool",
         | 
| 197 | 
            +
                      "name": "",
         | 
| 198 | 
            +
                      "type": "bool"
         | 
| 199 | 
            +
                    }
         | 
| 200 | 
            +
                  ],
         | 
| 201 | 
            +
                  "stateMutability": "pure",
         | 
| 202 | 
            +
                  "type": "function"
         | 
| 203 | 
            +
                },
         | 
| 151 204 | 
             
                {
         | 
| 152 205 | 
             
                  "inputs": [],
         | 
| 153 206 | 
             
                  "name": "max",
         | 
| @@ -304,22 +357,22 @@ | |
| 304 357 | 
             
                  "type": "function"
         | 
| 305 358 | 
             
                }
         | 
| 306 359 | 
             
              ],
         | 
| 307 | 
            -
              "bytecode": " | 
| 308 | 
            -
              "deployedBytecode": " | 
| 360 | 
            +
              "bytecode": "0x6106d7610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c806355205f0f1161009e57806398058c4c1161006e57806398058c4c14610255578063bc1b392d14610274578063c4cade9d1461027a578063c79eaa2214610299575f80fd5b806355205f0f1461020f5780635869dfca146102225780636ac5db19146102355780637931c81114610242575f80fd5b8063274acb35116100d9578063274acb351461019a57806330b8415f146101c55780634c41dd96146101e157806352694ee8146101f4575f80fd5b806308dc895e1461010a57806309a81d62146101375780631f227d171461015a578063262b32d21461017a575b5f80fd5b61012461011836600461059b565b6001600160601b031690565b6040519081526020015b60405180910390f35b61014a6101453660046105b4565b6102ac565b604051901515815260200161012e565b61014a6101683660046105b4565b6001600160601b039081169116111590565b61014a6101883660046105b4565b6001600160601b039081169116101590565b6101ad6101a83660046105b4565b6102c2565b6040516001600160601b03909116815260200161012e565b61014a6101d336600461059b565b6001600160601b0316151590565b6101ad6101ef3660046105e5565b6102d4565b61014a61020236600461059b565b6001600160601b03161590565b61012461021d36600461059b565b610308565b6101ad6102303660046105fc565b610384565b6001600160601b036101ad565b6101ad6102503660046105b4565b610482565b61014a6102633660046105b4565b6001600160601b0390811691161190565b5f6101ad565b61014a6102883660046105b4565b6001600160601b0390811691161490565b6101ad6102a73660046105b4565b6104aa565b6001600160601b03808216908316105b92915050565b5f6102cd8284610638565b9392505050565b5f6001600160601b0382111561030457604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610360573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102bc9190610657565b6040516322f5db0f60e11b81526001600160601b03831660048201525f906102cd9061040f90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156103e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040a9190610657565b6104b5565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561045e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ef9190610657565b5f816001600160601b0316836001600160601b031610156104a45750816102bc565b50919050565b5f6102cd828461066e565b5f6102cd8383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104fb578382816104f1576104f161068d565b04925050506102cd565b80841161051a57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610596575f80fd5b919050565b5f602082840312156105ab575f80fd5b6102cd82610580565b5f80604083850312156105c5575f80fd5b6105ce83610580565b91506105dc60208401610580565b90509250929050565b5f602082840312156105f5575f80fd5b5035919050565b5f806040838503121561060d575f80fd5b61061683610580565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b0381811683821601908111156102bc576102bc610624565b5f60208284031215610667575f80fd5b5051919050565b6001600160601b0382811682821603908111156102bc576102bc610624565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212206ed554c454d78a4ad67fd65447af1afba779f2de7d9c7b7564645e0eda848b1d64736f6c634300081a0033",
         | 
| 361 | 
            +
              "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c806355205f0f1161009e57806398058c4c1161006e57806398058c4c14610255578063bc1b392d14610274578063c4cade9d1461027a578063c79eaa2214610299575f80fd5b806355205f0f1461020f5780635869dfca146102225780636ac5db19146102355780637931c81114610242575f80fd5b8063274acb35116100d9578063274acb351461019a57806330b8415f146101c55780634c41dd96146101e157806352694ee8146101f4575f80fd5b806308dc895e1461010a57806309a81d62146101375780631f227d171461015a578063262b32d21461017a575b5f80fd5b61012461011836600461059b565b6001600160601b031690565b6040519081526020015b60405180910390f35b61014a6101453660046105b4565b6102ac565b604051901515815260200161012e565b61014a6101683660046105b4565b6001600160601b039081169116111590565b61014a6101883660046105b4565b6001600160601b039081169116101590565b6101ad6101a83660046105b4565b6102c2565b6040516001600160601b03909116815260200161012e565b61014a6101d336600461059b565b6001600160601b0316151590565b6101ad6101ef3660046105e5565b6102d4565b61014a61020236600461059b565b6001600160601b03161590565b61012461021d36600461059b565b610308565b6101ad6102303660046105fc565b610384565b6001600160601b036101ad565b6101ad6102503660046105b4565b610482565b61014a6102633660046105b4565b6001600160601b0390811691161190565b5f6101ad565b61014a6102883660046105b4565b6001600160601b0390811691161490565b6101ad6102a73660046105b4565b6104aa565b6001600160601b03808216908316105b92915050565b5f6102cd8284610638565b9392505050565b5f6001600160601b0382111561030457604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610360573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102bc9190610657565b6040516322f5db0f60e11b81526001600160601b03831660048201525f906102cd9061040f90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156103e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040a9190610657565b6104b5565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561045e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ef9190610657565b5f816001600160601b0316836001600160601b031610156104a45750816102bc565b50919050565b5f6102cd828461066e565b5f6102cd8383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104fb578382816104f1576104f161068d565b04925050506102cd565b80841161051a57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610596575f80fd5b919050565b5f602082840312156105ab575f80fd5b6102cd82610580565b5f80604083850312156105c5575f80fd5b6105ce83610580565b91506105dc60208401610580565b90509250929050565b5f602082840312156105f5575f80fd5b5035919050565b5f806040838503121561060d575f80fd5b61061683610580565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b0381811683821601908111156102bc576102bc610624565b5f60208284031215610667575f80fd5b5051919050565b6001600160601b0382811682821603908111156102bc576102bc610624565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212206ed554c454d78a4ad67fd65447af1afba779f2de7d9c7b7564645e0eda848b1d64736f6c634300081a0033",
         | 
| 309 362 | 
             
              "linkReferences": {
         | 
| 310 363 | 
             
                "contracts/type/UFixed.sol": {
         | 
| 311 364 | 
             
                  "UFixedLib": [
         | 
| 312 365 | 
             
                    {
         | 
| 313 366 | 
             
                      "length": 20,
         | 
| 314 | 
            -
                      "start":  | 
| 367 | 
            +
                      "start": 860
         | 
| 315 368 | 
             
                    },
         | 
| 316 369 | 
             
                    {
         | 
| 317 370 | 
             
                      "length": 20,
         | 
| 318 | 
            -
                      "start":  | 
| 371 | 
            +
                      "start": 994
         | 
| 319 372 | 
             
                    },
         | 
| 320 373 | 
             
                    {
         | 
| 321 374 | 
             
                      "length": 20,
         | 
| 322 | 
            -
                      "start":  | 
| 375 | 
            +
                      "start": 1114
         | 
| 323 376 | 
             
                    }
         | 
| 324 377 | 
             
                  ]
         | 
| 325 378 | 
             
                }
         | 
| @@ -329,15 +382,15 @@ | |
| 329 382 | 
             
                  "UFixedLib": [
         | 
| 330 383 | 
             
                    {
         | 
| 331 384 | 
             
                      "length": 20,
         | 
| 332 | 
            -
                      "start":  | 
| 385 | 
            +
                      "start": 808
         | 
| 333 386 | 
             
                    },
         | 
| 334 387 | 
             
                    {
         | 
| 335 388 | 
             
                      "length": 20,
         | 
| 336 | 
            -
                      "start":  | 
| 389 | 
            +
                      "start": 942
         | 
| 337 390 | 
             
                    },
         | 
| 338 391 | 
             
                    {
         | 
| 339 392 | 
             
                      "length": 20,
         | 
| 340 | 
            -
                      "start":  | 
| 393 | 
            +
                      "start": 1062
         | 
| 341 394 | 
             
                    }
         | 
| 342 395 | 
             
                  ]
         | 
| 343 396 | 
             
                }
         | 
| @@ -218,8 +218,8 @@ | |
| 218 218 | 
             
                  "type": "function"
         | 
| 219 219 | 
             
                }
         | 
| 220 220 | 
             
              ],
         | 
| 221 | 
            -
              "bytecode": " | 
| 222 | 
            -
              "deployedBytecode": " | 
| 221 | 
            +
              "bytecode": "0x6102a5610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100a6575f3560e01c80636effeac41161006e5780636effeac4146101235780637b4f5d3b14610148578063946428041461015b578063d15b58931461016e578063e8b7afe314610187575f80fd5b806301234028146100aa57806342f49ac0146100d2578063559cbd25146100ea57806356b0a7d4146100fd5780636303db5914610110575b5f80fd5b6100bd6100b8366004610225565b61019b565b60405190151581526020015b60405180910390f35b6100bd6100e0366004610256565b63ffffffff161590565b6100bd6100f8366004610225565b6101b1565b6100bd61010b366004610225565b6101c3565b6100bd61011e366004610225565b6101d5565b61013a610131366004610256565b63ffffffff1690565b6040519081526020016100c9565b6100bd610156366004610225565b6101e7565b6100bd610169366004610225565b6101fa565b6100bd61017c366004610256565b63ffffffff16151590565b60405163ffffffff431681526020016100c9565b5f63ffffffff80831690841610155b9392505050565b5f63ffffffff808416908316146101aa565b5f63ffffffff808316908416116101aa565b5f63ffffffff808316908416106101aa565b5f63ffffffff80841690831614156101aa565b5f63ffffffff80831690841611156101aa565b803563ffffffff81168114610220575f80fd5b919050565b5f8060408385031215610236575f80fd5b61023f8361020d565b915061024d6020840161020d565b90509250929050565b5f60208284031215610266575f80fd5b6101aa8261020d56fea264697066735822122060ea6f2b11fbb7ec34feb93272a69d8cd0ca7b2786f2d8f2db4c0dec0c12d53f64736f6c634300081a0033",
         | 
| 222 | 
            +
              "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100a6575f3560e01c80636effeac41161006e5780636effeac4146101235780637b4f5d3b14610148578063946428041461015b578063d15b58931461016e578063e8b7afe314610187575f80fd5b806301234028146100aa57806342f49ac0146100d2578063559cbd25146100ea57806356b0a7d4146100fd5780636303db5914610110575b5f80fd5b6100bd6100b8366004610225565b61019b565b60405190151581526020015b60405180910390f35b6100bd6100e0366004610256565b63ffffffff161590565b6100bd6100f8366004610225565b6101b1565b6100bd61010b366004610225565b6101c3565b6100bd61011e366004610225565b6101d5565b61013a610131366004610256565b63ffffffff1690565b6040519081526020016100c9565b6100bd610156366004610225565b6101e7565b6100bd610169366004610225565b6101fa565b6100bd61017c366004610256565b63ffffffff16151590565b60405163ffffffff431681526020016100c9565b5f63ffffffff80831690841610155b9392505050565b5f63ffffffff808416908316146101aa565b5f63ffffffff808316908416116101aa565b5f63ffffffff808316908416106101aa565b5f63ffffffff80841690831614156101aa565b5f63ffffffff80831690841611156101aa565b803563ffffffff81168114610220575f80fd5b919050565b5f8060408385031215610236575f80fd5b61023f8361020d565b915061024d6020840161020d565b90509250929050565b5f60208284031215610266575f80fd5b6101aa8261020d56fea264697066735822122060ea6f2b11fbb7ec34feb93272a69d8cd0ca7b2786f2d8f2db4c0dec0c12d53f64736f6c634300081a0033",
         | 
| 223 223 | 
             
              "linkReferences": {},
         | 
| 224 224 | 
             
              "deployedLinkReferences": {}
         | 
| 225 225 | 
             
            }
         | 
| @@ -3,6 +3,30 @@ | |
| 3 3 | 
             
              "contractName": "ClaimIdLib",
         | 
| 4 4 | 
             
              "sourceName": "contracts/type/ClaimId.sol",
         | 
| 5 5 | 
             
              "abi": [
         | 
| 6 | 
            +
                {
         | 
| 7 | 
            +
                  "inputs": [
         | 
| 8 | 
            +
                    {
         | 
| 9 | 
            +
                      "internalType": "ClaimId",
         | 
| 10 | 
            +
                      "name": "a",
         | 
| 11 | 
            +
                      "type": "uint16"
         | 
| 12 | 
            +
                    },
         | 
| 13 | 
            +
                    {
         | 
| 14 | 
            +
                      "internalType": "ClaimId",
         | 
| 15 | 
            +
                      "name": "b",
         | 
| 16 | 
            +
                      "type": "uint16"
         | 
| 17 | 
            +
                    }
         | 
| 18 | 
            +
                  ],
         | 
| 19 | 
            +
                  "name": "eq",
         | 
| 20 | 
            +
                  "outputs": [
         | 
| 21 | 
            +
                    {
         | 
| 22 | 
            +
                      "internalType": "bool",
         | 
| 23 | 
            +
                      "name": "",
         | 
| 24 | 
            +
                      "type": "bool"
         | 
| 25 | 
            +
                    }
         | 
| 26 | 
            +
                  ],
         | 
| 27 | 
            +
                  "stateMutability": "pure",
         | 
| 28 | 
            +
                  "type": "function"
         | 
| 29 | 
            +
                },
         | 
| 6 30 | 
             
                {
         | 
| 7 31 | 
             
                  "inputs": [
         | 
| 8 32 | 
             
                    {
         | 
| @@ -154,14 +178,14 @@ | |
| 154 178 | 
             
                  "type": "function"
         | 
| 155 179 | 
             
                }
         | 
| 156 180 | 
             
              ],
         | 
| 157 | 
            -
              "bytecode": " | 
| 158 | 
            -
              "deployedBytecode": " | 
| 181 | 
            +
              "bytecode": "0x610389610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c8063b9c6c9301161006e578063b9c6c93014610104578063bc1b392d1461012b578063dfc00be914610131578063f3ac7cb51461014b578063faac2b2214610161575f80fd5b80635d21681c1461009f5780636ac5db19146100c8578063904da217146100d05780639cc45a36146100f6575b5f80fd5b6100b06100ad366004610275565b90565b60405161ffff90911681526020015b60405180910390f35b61ffff6100b0565b6100e36100de36600461028e565b610182565b60405160ff1990911681526020016100bf565b6100b06100ad3660046102ce565b61011b610112366004610275565b61ffff16151590565b60405190151581526020016100bf565b5f6100b0565b61011b61013f3660046102e5565b61ffff90811691161490565b61011b610159366004610275565b61ffff161590565b61017461016f36600461028e565b6101c8565b6040519081526020016100bf565b5f61018e836010610316565b61ffff16826001600160601b0316901b6001600160601b031660901b71ffffffffffffffffffffffffffffffffffff191690505b92915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60176101ef8686610182565b6040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610234573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610258919061033c565b9392505050565b803561ffff81168114610270575f80fd5b919050565b5f60208284031215610285575f80fd5b6102588261025f565b5f806040838503121561029f575f80fd5b6102a88361025f565b915060208301356001600160601b03811681146102c3575f80fd5b809150509250929050565b5f602082840312156102de575f80fd5b5035919050565b5f80604083850312156102f6575f80fd5b6102ff8361025f565b915061030d6020840161025f565b90509250929050565b61ffff81811683821601908111156101c257634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561034c575f80fd5b505191905056fea2646970667358221220391e4f3b6285a74c6e1e5c3b8321ddcc12ebd66b3d70f132c5f5cd860dde30f264736f6c634300081a0033",
         | 
| 182 | 
            +
              "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061009b575f3560e01c8063b9c6c9301161006e578063b9c6c93014610104578063bc1b392d1461012b578063dfc00be914610131578063f3ac7cb51461014b578063faac2b2214610161575f80fd5b80635d21681c1461009f5780636ac5db19146100c8578063904da217146100d05780639cc45a36146100f6575b5f80fd5b6100b06100ad366004610275565b90565b60405161ffff90911681526020015b60405180910390f35b61ffff6100b0565b6100e36100de36600461028e565b610182565b60405160ff1990911681526020016100bf565b6100b06100ad3660046102ce565b61011b610112366004610275565b61ffff16151590565b60405190151581526020016100bf565b5f6100b0565b61011b61013f3660046102e5565b61ffff90811691161490565b61011b610159366004610275565b61ffff161590565b61017461016f36600461028e565b6101c8565b6040519081526020016100bf565b5f61018e836010610316565b61ffff16826001600160601b0316901b6001600160601b031660901b71ffffffffffffffffffffffffffffffffffff191690505b92915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60176101ef8686610182565b6040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610234573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610258919061033c565b9392505050565b803561ffff81168114610270575f80fd5b919050565b5f60208284031215610285575f80fd5b6102588261025f565b5f806040838503121561029f575f80fd5b6102a88361025f565b915060208301356001600160601b03811681146102c3575f80fd5b809150509250929050565b5f602082840312156102de575f80fd5b5035919050565b5f80604083850312156102f6575f80fd5b6102ff8361025f565b915061030d6020840161025f565b90509250929050565b61ffff81811683821601908111156101c257634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561034c575f80fd5b505191905056fea2646970667358221220391e4f3b6285a74c6e1e5c3b8321ddcc12ebd66b3d70f132c5f5cd860dde30f264736f6c634300081a0033",
         | 
| 159 183 | 
             
              "linkReferences": {
         | 
| 160 184 | 
             
                "contracts/type/Key32.sol": {
         | 
| 161 185 | 
             
                  "Key32Lib": [
         | 
| 162 186 | 
             
                    {
         | 
| 163 187 | 
             
                      "length": 20,
         | 
| 164 | 
            -
                      "start":  | 
| 188 | 
            +
                      "start": 511
         | 
| 165 189 | 
             
                    }
         | 
| 166 190 | 
             
                  ]
         | 
| 167 191 | 
             
                }
         | 
| @@ -171,7 +195,7 @@ | |
| 171 195 | 
             
                  "Key32Lib": [
         | 
| 172 196 | 
             
                    {
         | 
| 173 197 | 
             
                      "length": 20,
         | 
| 174 | 
            -
                      "start":  | 
| 198 | 
            +
                      "start": 459
         | 
| 175 199 | 
             
                    }
         | 
| 176 200 | 
             
                  ]
         | 
| 177 201 | 
             
                }
         | 
| @@ -79,8 +79,8 @@ | |
| 79 79 | 
             
                  "type": "function"
         | 
| 80 80 | 
             
                }
         | 
| 81 81 | 
             
              ],
         | 
| 82 | 
            -
              "bytecode": "0x610357610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632cf96bf91461005957806355ee62751461008c578063578c3039146100ad578063bc1b392d146100d9575b5f80fd5b6100746100673660046101a8565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009f61009a3660046101a8565b6100df565b604051908152602001610083565b6100c06100bb3660046101ea565b610176565b6040516001600160c01b03199091168152602001610083565b5f6100c0565b5f73__$4b9aaffa8d044614668dad578b824b8eee$ | 
| 83 | 
            -
              "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632cf96bf91461005957806355ee62751461008c578063578c3039146100ad578063bc1b392d146100d9575b5f80fd5b6100746100673660046101a8565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009f61009a3660046101a8565b6100df565b604051908152602001610083565b6100c06100bb3660046101ea565b610176565b6040516001600160c01b03199091168152602001610083565b5f6100c0565b5f73__$4b9aaffa8d044614668dad578b824b8eee$ | 
| 82 | 
            +
              "bytecode": "0x610357610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632cf96bf91461005957806355ee62751461008c578063578c3039146100ad578063bc1b392d146100d9575b5f80fd5b6100746100673660046101a8565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009f61009a3660046101a8565b6100df565b604051908152602001610083565b6100c06100bb3660046101ea565b610176565b6040516001600160c01b03199091168152602001610083565b5f6100c0565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601c6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561014c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017091906102c0565b92915050565b5f828260405160200161018a9291906102d7565b60405160208183030381529060405280519060200120905092915050565b5f602082840312156101b8575f80fd5b81356001600160c01b0319811681146101cf575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f80604083850312156101fb575f80fd5b82356bffffffffffffffffffffffff81168114610216575f80fd5b9150602083013567ffffffffffffffff811115610231575f80fd5b8301601f81018513610241575f80fd5b803567ffffffffffffffff81111561025b5761025b6101d6565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561028a5761028a6101d6565b6040528181528282016020018710156102a1575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f602082840312156102d0575f80fd5b5051919050565b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f830116840101915050939250505056fea2646970667358221220a68cd6591fa1390471247acb7b503684126cae1165d4c8983dc5dd26b590040f64736f6c634300081a0033",
         | 
| 83 | 
            +
              "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632cf96bf91461005957806355ee62751461008c578063578c3039146100ad578063bc1b392d146100d9575b5f80fd5b6100746100673660046101a8565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009f61009a3660046101a8565b6100df565b604051908152602001610083565b6100c06100bb3660046101ea565b610176565b6040516001600160c01b03199091168152602001610083565b5f6100c0565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601c6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561014c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017091906102c0565b92915050565b5f828260405160200161018a9291906102d7565b60405160208183030381529060405280519060200120905092915050565b5f602082840312156101b8575f80fd5b81356001600160c01b0319811681146101cf575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f80604083850312156101fb575f80fd5b82356bffffffffffffffffffffffff81168114610216575f80fd5b9150602083013567ffffffffffffffff811115610231575f80fd5b8301601f81018513610241575f80fd5b803567ffffffffffffffff81111561025b5761025b6101d6565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561028a5761028a6101d6565b6040528181528282016020018710156102a1575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f602082840312156102d0575f80fd5b5051919050565b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f830116840101915050939250505056fea2646970667358221220a68cd6591fa1390471247acb7b503684126cae1165d4c8983dc5dd26b590040f64736f6c634300081a0033",
         | 
| 84 84 | 
             
              "linkReferences": {
         | 
| 85 85 | 
             
                "contracts/type/Key32.sol": {
         | 
| 86 86 | 
             
                  "Key32Lib": [
         |