@gooddollar/goodprotocol 2.1.4 → 2.2.0

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.
Files changed (880) hide show
  1. package/artifacts/abis/CreateReserveExchange.min.json +1 -0
  2. package/artifacts/abis/IBancorExchangeProvider.min.json +1 -1
  3. package/artifacts/abis/IBroker.min.json +1 -1
  4. package/artifacts/abis/IdentityV3.min.json +1 -1
  5. package/artifacts/abis/IdentityV4.min.json +1 -0
  6. package/artifacts/abis/UpdateReserveRatio.min.json +1 -0
  7. package/artifacts/abis/Voters.min.json +1 -0
  8. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  9. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  10. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  11. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  12. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  13. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  14. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.dbg.json +1 -1
  15. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/IQuoterV2.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/ISwapRouter.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  38. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  39. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  40. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  41. package/artifacts/contracts/MentoInterfaces.sol/IBancorExchangeProvider.dbg.json +1 -1
  42. package/artifacts/contracts/MentoInterfaces.sol/IBancorExchangeProvider.json +69 -0
  43. package/artifacts/contracts/MentoInterfaces.sol/IBroker.dbg.json +1 -1
  44. package/artifacts/contracts/MentoInterfaces.sol/IBroker.json +131 -4
  45. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExchangeProvider.dbg.json +1 -1
  46. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExpansionController.dbg.json +1 -1
  47. package/artifacts/contracts/MentoInterfaces.sol/IMentoReserve.dbg.json +1 -1
  48. package/artifacts/contracts/MentoInterfaces.sol/ITradingLimits.dbg.json +1 -1
  49. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  50. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +2 -2
  51. package/artifacts/contracts/fuseFaucet/Faucet.sol/Voters.dbg.json +4 -0
  52. package/artifacts/contracts/fuseFaucet/Faucet.sol/Voters.json +42 -0
  53. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  54. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  55. package/artifacts/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.dbg.json +1 -1
  56. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  57. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  58. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  59. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  60. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  61. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  62. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  63. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  64. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  65. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  66. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  67. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  68. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.dbg.json +1 -1
  69. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.json +40 -2
  70. package/artifacts/contracts/identity/IdentityV4.sol/IdentityV4.dbg.json +4 -0
  71. package/artifacts/contracts/identity/IdentityV4.sol/IdentityV4.json +1175 -0
  72. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  73. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  74. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  75. package/artifacts/contracts/invite/OneTimeReward.sol/OneTimeReward.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper.dbg.json +1 -1
  81. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  83. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  87. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  91. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest.dbg.json +1 -1
  92. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest.json +2 -2
  93. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.dbg.json +1 -1
  94. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.json +2 -2
  95. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  96. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  97. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  99. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  101. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  103. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  104. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  105. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  106. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.dbg.json +1 -1
  107. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  108. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  109. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  110. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  111. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  112. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  113. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  114. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  115. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  116. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  117. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  118. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  119. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  120. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  121. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  122. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  123. package/artifacts/contracts/reserve/CeloDistributionHelper.sol/CeloDistributionHelper.dbg.json +1 -1
  124. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  125. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  126. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.dbg.json +1 -1
  127. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.json +2 -2
  128. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  129. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  130. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  131. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  132. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  133. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  134. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  135. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  136. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  137. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  138. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  139. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  140. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  141. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  142. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  143. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  144. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  145. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  146. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  147. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  148. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  149. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  150. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  151. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  152. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  153. package/artifacts/contracts/token/GoodDollar2.sol/GoodDollar2.dbg.json +1 -1
  154. package/artifacts/contracts/token/IFeesFormula.sol/IFeesFormula.dbg.json +1 -1
  155. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.dbg.json +1 -1
  156. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  157. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  158. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  159. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  160. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.dbg.json +1 -1
  161. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  162. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  163. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  164. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  165. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/Proxy.dbg.json +1 -1
  166. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.dbg.json +1 -1
  167. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.dbg.json +1 -1
  168. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  169. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  170. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.json +2 -2
  171. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  172. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  173. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  174. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  175. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.dbg.json +1 -1
  176. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  177. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.dbg.json +1 -1
  178. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.json +2 -2
  179. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  180. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  181. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.dbg.json +1 -1
  182. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  183. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  184. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  185. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  186. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/EternalStorage.dbg.json +1 -1
  187. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.dbg.json +1 -1
  188. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage.dbg.json +1 -1
  189. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Initializable.dbg.json +1 -1
  190. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Ownable.dbg.json +1 -1
  191. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Upgradeable.dbg.json +1 -1
  192. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  193. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  194. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  195. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  196. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  197. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  198. package/artifacts/contracts/utils/LastauthReduction.sol/LastauthReduction.dbg.json +1 -1
  199. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  200. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  201. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  202. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  203. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  204. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/MentoExchange.dbg.json +1 -1
  205. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.dbg.json +1 -1
  206. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.json +2 -2
  207. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  208. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  209. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  210. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  211. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  212. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  213. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  214. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  215. package/artifacts/contracts/utils/ReserveRestore.sol/ReserveRestore.dbg.json +1 -1
  216. package/artifacts/contracts/utils/UpdateReserveRatio.sol/CreateReserveExchange.dbg.json +4 -0
  217. package/artifacts/contracts/utils/UpdateReserveRatio.sol/CreateReserveExchange.json +77 -0
  218. package/artifacts/contracts/utils/UpdateReserveRatio.sol/MentoExchange.dbg.json +4 -0
  219. package/artifacts/contracts/utils/UpdateReserveRatio.sol/MentoExchange.json +24 -0
  220. package/artifacts/contracts/utils/UpdateReserveRatio.sol/UpdateReserveRatio.dbg.json +4 -0
  221. package/artifacts/contracts/utils/UpdateReserveRatio.sol/UpdateReserveRatio.json +60 -0
  222. package/contracts/MentoInterfaces.sol +247 -203
  223. package/contracts/fuseFaucet/Faucet.sol +15 -2
  224. package/contracts/identity/IdentityV3.sol +5 -3
  225. package/contracts/identity/IdentityV4.sol +600 -0
  226. package/contracts/invite/InvitesV2.sol +30 -10
  227. package/contracts/reserve/GenericDistributionHelper.sol +35 -7
  228. package/contracts/ubi/UBISchemeV2.sol +8 -1
  229. package/contracts/utils/UpdateReserveRatio.sol +121 -0
  230. package/hardhat.config.ts +2 -3
  231. package/package.json +6 -4
  232. package/releases/deploy-settings.json +3 -0
  233. package/releases/deployment.json +703 -1
  234. package/test/governance/ClaimersDistribution.test.ts +1 -1
  235. package/test/governance/CompoundVotingMachine.castvote.test.ts +30 -30
  236. package/test/helpers.ts +80 -196
  237. package/test/identity/IdentityV3.test.ts +53 -129
  238. package/test/identity/IdentityV4.test.ts +464 -0
  239. package/test/invite/InvitesV2.test.ts +50 -5
  240. package/test/reserve/GenericDistributionHelper.e2e.test.ts +445 -0
  241. package/test/utils/AdminWallet.test.ts +14 -15
  242. package/types/contracts/MentoInterfaces.sol/IBancorExchangeProvider.ts +54 -0
  243. package/types/contracts/MentoInterfaces.sol/IBroker.ts +99 -7
  244. package/types/contracts/fuseFaucet/{Faucet.ts → Faucet.sol/Faucet.ts} +1 -1
  245. package/types/{@openzeppelin/contracts/utils/introspection/ERC165.ts → contracts/fuseFaucet/Faucet.sol/Voters.ts} +30 -29
  246. package/types/contracts/fuseFaucet/{SuperfluidBaseFacuet.sol → Faucet.sol}/index.ts +2 -1
  247. package/types/contracts/fuseFaucet/index.ts +2 -1
  248. package/types/contracts/identity/IdentityV3.ts +46 -0
  249. package/types/contracts/identity/{IdentityV2.ts → IdentityV4.ts} +166 -55
  250. package/types/contracts/identity/index.ts +1 -0
  251. package/types/contracts/invite/{InvitesFuseV2.ts → InvitesV2 copy.sol/InvitesV2.ts } +358 -53
  252. package/types/contracts/{IQuoter.sol/index.ts → invite/InvitesV2 copy.sol/index.ts } +1 -1
  253. package/types/contracts/utils/{ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.ts → UpdateReserveRatio.sol/CreateReserveExchange.ts} +10 -32
  254. package/types/contracts/utils/{UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC.ts → UpdateReserveRatio.sol/UpdateReserveRatio.ts} +22 -5
  255. package/types/contracts/utils/{ProtocolUpgradeV4Mento.sol → UpdateReserveRatio.sol}/index.ts +2 -1
  256. package/types/contracts/utils/index.ts +2 -0
  257. package/types/factories/contracts/MentoInterfaces.sol/IBancorExchangeProvider__factory.ts +69 -0
  258. package/types/factories/contracts/MentoInterfaces.sol/IBroker__factory.ts +131 -4
  259. package/types/factories/contracts/fuseFaucet/Faucet.sol/Faucet__factory.ts +914 -0
  260. package/types/factories/contracts/fuseFaucet/Faucet.sol/Voters__factory.ts +54 -0
  261. package/types/factories/contracts/fuseFaucet/Faucet.sol/index.ts +5 -0
  262. package/types/factories/contracts/fuseFaucet/index.ts +1 -1
  263. package/types/factories/contracts/identity/IdentityV3__factory.ts +39 -1
  264. package/types/factories/contracts/identity/IdentityV4__factory.ts +1226 -0
  265. package/types/factories/contracts/identity/index.ts +1 -0
  266. package/types/factories/contracts/invite/InvitesV2 copy.sol/InvitesV2__factory.ts +748 -0
  267. package/types/{contracts/fuseFaucet/Faucet copy.sol → factories/contracts/invite/InvitesV2 copy.sol}/index.ts +1 -1
  268. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper__factory.ts +1 -1
  269. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest__factory.ts +1 -1
  270. package/types/factories/contracts/reserve/GenericDistributionHelper__factory.ts +1 -1
  271. package/types/factories/contracts/ubi/UBISchemeV2__factory.ts +1 -1
  272. package/types/factories/contracts/utils/BuyFromReserveHelper__factory.ts +1 -1
  273. package/types/factories/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento__factory.ts +1 -1
  274. package/types/factories/contracts/utils/UpdateReserveRatio.sol/CreateReserveExchange__factory.ts +137 -0
  275. package/types/factories/contracts/utils/{ReserveRestore.sol → UpdateReserveRatio.sol}/MentoExchange__factory.ts +1 -1
  276. package/types/factories/contracts/utils/UpdateReserveRatio.sol/UpdateReserveRatio__factory.ts +113 -0
  277. package/types/factories/contracts/utils/UpdateReserveRatio.sol/index.ts +6 -0
  278. package/types/factories/contracts/utils/index.ts +1 -0
  279. package/types/hardhat.d.ts +45 -0
  280. package/types/index.ts +10 -2
  281. package/scripts/ProxyFactory.json +0 -4425
  282. package/scripts/analytics/activeGDStakers.ts +0 -188
  283. package/scripts/analytics/activeStakers.ts +0 -25
  284. package/scripts/analytics/activeUsersCount.ts +0 -156
  285. package/scripts/analytics/activeWalletsStats.ts +0 -301
  286. package/scripts/analytics/checkActiveWallets.ts +0 -60
  287. package/scripts/analytics/checkBridgeBalances.ts +0 -442
  288. package/scripts/analytics/claimIncidentStats.ts +0 -98
  289. package/scripts/analytics/faucetStats.ts +0 -130
  290. package/scripts/analytics/gdinflow.ts +0 -57
  291. package/scripts/analytics/goodHolders.ts +0 -46
  292. package/scripts/analytics/goodgiveback.ts +0 -64
  293. package/scripts/analytics/p2pTxs.ts +0 -564
  294. package/scripts/analytics/stuckgd.ts +0 -70
  295. package/scripts/analytics/tokenInOutStats.ts +0 -48
  296. package/scripts/analytics/whitelistsyncIssue.ts +0 -87
  297. package/scripts/bulkProof.ts +0 -202
  298. package/scripts/bulkWhitelist.ts +0 -31
  299. package/scripts/deployGnosisSafe.ts +0 -111
  300. package/scripts/fetchOrDeployProxyFactory.ts +0 -46
  301. package/scripts/fv.ts +0 -263
  302. package/scripts/gdx/gdxAirdropCalculation.ts +0 -479
  303. package/scripts/getFounders.ts +0 -32
  304. package/scripts/governance/README.md +0 -70
  305. package/scripts/governance/airdropCalculation.ts +0 -1119
  306. package/scripts/governance/airdropCalculationRecover.ts +0 -416
  307. package/scripts/governance/airdropCalculationSorted.ts +0 -438
  308. package/scripts/governance/goodCheckpointSorted.ts +0 -300
  309. package/scripts/keeper/fishInactive.ts +0 -47
  310. package/scripts/minimize.sh +0 -17
  311. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +0 -131
  312. package/scripts/multichain-deploy/1_basicdao-deploy.ts +0 -294
  313. package/scripts/multichain-deploy/2_helpers-deploy.ts +0 -152
  314. package/scripts/multichain-deploy/2b_otp-deploy.ts +0 -73
  315. package/scripts/multichain-deploy/3_gdSavings-deploy.ts +0 -190
  316. package/scripts/multichain-deploy/4_ubi-deploy.ts +0 -129
  317. package/scripts/multichain-deploy/5_gov-deploy.ts +0 -179
  318. package/scripts/multichain-deploy/6_testnetFaucet.ts +0 -85
  319. package/scripts/multichain-deploy/7_superfluidfaucet-deploy.ts +0 -123
  320. package/scripts/multichain-deploy/8_disthelper-deploy.ts +0 -152
  321. package/scripts/multichain-deploy/createUniswapTestPools.ts +0 -163
  322. package/scripts/multichain-deploy/flattened/Avatar.sol +0 -913
  323. package/scripts/multichain-deploy/flattened/Controller.sol +0 -1891
  324. package/scripts/multichain-deploy/flattened/FeeFormula.sol +0 -1290
  325. package/scripts/multichain-deploy/fulldeploy.sh +0 -26
  326. package/scripts/multichain-deploy/helpers.ts +0 -647
  327. package/scripts/multichain-deploy/multichainWrapper-deploy.ts +0 -59
  328. package/scripts/multichain-deploy/verifyEtherscan.ts +0 -177
  329. package/scripts/proposals/gip-14_1.ts +0 -251
  330. package/scripts/proposals/gip-15.ts +0 -427
  331. package/scripts/proposals/gip-25-xdc-upgrade-ubi.ts +0 -746
  332. package/scripts/proposals/gips-14_1.md +0 -29
  333. package/scripts/proposals/hack-ubi-recovery.ts +0 -414
  334. package/scripts/proposals/identityAuthPeriod.ts +0 -229
  335. package/scripts/proposals/reserveRestore.ts +0 -474
  336. package/scripts/proposals/updateDistHelper.ts +0 -180
  337. package/scripts/proposals/v4Upgrade.ts +0 -845
  338. package/scripts/releaser.js +0 -24
  339. package/scripts/staking/stakersGdRewardsCalculation.ts +0 -64
  340. package/scripts/upgradeScheme.ts +0 -97
  341. package/scripts/upgradeToV2/upgradeToV2.ts +0 -853
  342. package/scripts/upgradeToV2/upgradeToV2Recover.ts +0 -939
  343. package/scripts/upgradeToV3/v3-fix.ts +0 -120
  344. package/scripts/upgradeToV3/v3-fuse-multichain.ts +0 -117
  345. package/scripts/upgradeToV3/v3-upgrade.ts +0 -219
  346. package/scripts/upgrades/celo-defi-ubi-deploy.ts +0 -184
  347. package/scripts/upgrades/identity-upgrade.ts +0 -126
  348. package/scripts/upgrades/multichain-formula-upgrade.ts +0 -143
  349. package/scripts/upgrades/multichain-temp-fix.ts +0 -129
  350. package/scripts/upgrades/restoreFunds.ts +0 -91
  351. package/scripts/upgrades/superfluid-nft-celo-gas-token.ts +0 -159
  352. package/scripts/upgrades/transferDaoToGuardians.ts +0 -80
  353. package/scripts/upgrades/upgradeAdminWallet.ts +0 -29
  354. package/scripts/upgrades/upgradeFaucet.ts +0 -46
  355. package/scripts/utils.ts +0 -50
  356. package/scripts/verify.ts +0 -67
  357. package/scripts/voltageswaps.ts +0 -46
  358. package/types/@gooddollar/bridge-contracts/contracts/messagePassingBridge/IMessagePassingBridge.sol/ILayerZeroFeeEstimator.ts +0 -134
  359. package/types/@gooddollar/bridge-contracts/contracts/messagePassingBridge/IMessagePassingBridge.sol/IMessagePassingBridge.ts +0 -798
  360. package/types/@mean-finance/uniswap-v3-oracle/solidity/interfaces/IStaticOracle.ts +0 -694
  361. package/types/@openzeppelin/contracts/access/AccessControl.ts +0 -388
  362. package/types/@openzeppelin/contracts/access/IAccessControl.ts +0 -331
  363. package/types/@openzeppelin/contracts/access/Ownable.ts +0 -175
  364. package/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +0 -87
  365. package/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +0 -108
  366. package/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +0 -108
  367. package/types/@openzeppelin/contracts/proxy/Proxy.ts +0 -55
  368. package/types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +0 -87
  369. package/types/@openzeppelin/contracts/proxy/utils/Initializable.ts +0 -69
  370. package/types/@openzeppelin/contracts/security/Pausable.ts +0 -111
  371. package/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +0 -444
  372. package/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +0 -322
  373. package/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +0 -364
  374. package/types/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.ts +0 -177
  375. package/types/@openzeppelin/contracts/token/ERC721/IERC721.ts +0 -527
  376. package/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +0 -581
  377. package/types/@openzeppelin/contracts/token/ERC777/IERC777.ts +0 -616
  378. package/types/@openzeppelin/contracts/token/ERC777/IERC777Recipient.ts +0 -130
  379. package/types/@openzeppelin/contracts/token/ERC777/IERC777Sender.ts +0 -130
  380. package/types/@openzeppelin/contracts/utils/introspection/IERC165.ts +0 -102
  381. package/types/@openzeppelin/contracts/utils/introspection/IERC1820Registry.ts +0 -420
  382. package/types/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.ts +0 -477
  383. package/types/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.ts +0 -400
  384. package/types/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.ts +0 -408
  385. package/types/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.ts +0 -331
  386. package/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +0 -187
  387. package/types/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable.ts +0 -107
  388. package/types/@openzeppelin/contracts-upgradeable/interfaces/draft-IERC1822Upgradeable.sol/IERC1822ProxiableUpgradeable.ts +0 -87
  389. package/types/@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.ts +0 -120
  390. package/types/@openzeppelin/contracts-upgradeable/proxy/beacon/IBeaconUpgradeable.ts +0 -87
  391. package/types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +0 -69
  392. package/types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +0 -228
  393. package/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts +0 -123
  394. package/types/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.ts +0 -69
  395. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.ts +0 -456
  396. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +0 -322
  397. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC20BurnableUpgradeable.ts +0 -519
  398. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC20PausableUpgradeable.ts +0 -494
  399. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.ts +0 -364
  400. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol/ERC20PermitUpgradeable.ts +0 -563
  401. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.ts +0 -177
  402. package/types/@openzeppelin/contracts-upgradeable/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable.ts +0 -1097
  403. package/types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +0 -69
  404. package/types/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.ts +0 -69
  405. package/types/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.ts +0 -120
  406. package/types/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.ts +0 -102
  407. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.ts +0 -1427
  408. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.ts +0 -1219
  409. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT.ts +0 -828
  410. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT.ts +0 -891
  411. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IFlowNFTBase.ts +0 -765
  412. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.ts +0 -152
  413. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.ts +0 -417
  414. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.ts +0 -2698
  415. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.ts +0 -449
  416. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.ts +0 -1643
  417. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.ts +0 -523
  418. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.ts +0 -996
  419. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.ts +0 -364
  420. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ISETH.sol/ISETH.ts +0 -2791
  421. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ISETH.sol/ISETHCustom.ts +0 -163
  422. package/types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.ts +0 -109
  423. package/types/@superfluid-finance/ethereum-contracts/contracts/libs/EventsEmitter.ts +0 -82
  424. package/types/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantInflowNFT.ts +0 -1039
  425. package/types/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantOutflowNFT.ts +0 -1102
  426. package/types/@superfluid-finance/ethereum-contracts/contracts/superfluid/FlowNFTBase.ts +0 -954
  427. package/types/@superfluid-finance/ethereum-contracts/contracts/upgradability/UUPSProxiable.ts +0 -197
  428. package/types/@uniswap/v2-periphery/contracts/interfaces/IWETH.ts +0 -159
  429. package/types/@uniswap/v3-core/contracts/interfaces/IUniswapV3Factory.ts +0 -354
  430. package/types/contracts/DAOStackInterfaces.sol/Avatar.ts +0 -121
  431. package/types/contracts/DAOStackInterfaces.sol/Controller.ts +0 -572
  432. package/types/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.ts +0 -128
  433. package/types/contracts/DAOStackInterfaces.sol/IntVoteInterface.ts +0 -494
  434. package/types/contracts/DAOStackInterfaces.sol/ReputationInterface.ts +0 -270
  435. package/types/contracts/DAOStackInterfaces.sol/SchemeRegistrar.ts +0 -168
  436. package/types/contracts/IQuoter.sol/IQuoterV2.ts +0 -297
  437. package/types/contracts/IUniswapV3.sol/INonfungiblePositionManager.ts +0 -151
  438. package/types/contracts/IUniswapV3.sol/IUniswapV3Factory.ts +0 -155
  439. package/types/contracts/IUniswapV3.sol/IUniswapV3Pool.ts +0 -192
  440. package/types/contracts/Interfaces.sol/AToken.ts +0 -81
  441. package/types/contracts/Interfaces.sol/AggregatorV3Interface.ts +0 -198
  442. package/types/contracts/Interfaces.sol/CERC20.ts +0 -602
  443. package/types/contracts/Interfaces.sol/ERC20.ts +0 -424
  444. package/types/contracts/Interfaces.sol/IAaveIncentivesController.ts +0 -156
  445. package/types/contracts/Interfaces.sol/IAaveIncentivesControllerV3.ts +0 -156
  446. package/types/contracts/Interfaces.sol/IAdminWallet.ts +0 -176
  447. package/types/contracts/Interfaces.sol/IDonationStaking.ts +0 -97
  448. package/types/contracts/Interfaces.sol/IERC2917.ts +0 -722
  449. package/types/contracts/Interfaces.sol/IFirstClaimPool.ts +0 -133
  450. package/types/contracts/Interfaces.sol/IGoodDollar.ts +0 -938
  451. package/types/contracts/Interfaces.sol/IGoodStaking.ts +0 -272
  452. package/types/contracts/Interfaces.sol/IHasRouter.ts +0 -81
  453. package/types/contracts/Interfaces.sol/IIdentity.ts +0 -534
  454. package/types/contracts/Interfaces.sol/IIdentityV2.ts +0 -620
  455. package/types/contracts/Interfaces.sol/ILendingPool.ts +0 -245
  456. package/types/contracts/Interfaces.sol/ILendingPoolV3.ts +0 -254
  457. package/types/contracts/Interfaces.sol/IMultichainRouter.ts +0 -168
  458. package/types/contracts/Interfaces.sol/INameService.ts +0 -84
  459. package/types/contracts/Interfaces.sol/IQuoterV2.ts +0 -184
  460. package/types/contracts/Interfaces.sol/ISwapRouter.ts +0 -306
  461. package/types/contracts/Interfaces.sol/IUBIScheme.ts +0 -121
  462. package/types/contracts/Interfaces.sol/ProxyAdmin.ts +0 -261
  463. package/types/contracts/Interfaces.sol/Reserve.ts +0 -112
  464. package/types/contracts/Interfaces.sol/Staking.ts +0 -165
  465. package/types/contracts/Interfaces.sol/Uniswap.ts +0 -434
  466. package/types/contracts/Interfaces.sol/UniswapFactory.ts +0 -104
  467. package/types/contracts/Interfaces.sol/UniswapPair.ts +0 -193
  468. package/types/contracts/fuseFaucet/Faucet copy.sol/DebugFaucet.ts +0 -1439
  469. package/types/contracts/fuseFaucet/FuseFaucet.ts +0 -537
  470. package/types/contracts/fuseFaucet/FuseFaucetV2.ts +0 -929
  471. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor.ts +0 -648
  472. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable.ts +0 -843
  473. package/types/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.ts +0 -1032
  474. package/types/contracts/governance/ClaimersDistribution.ts +0 -676
  475. package/types/contracts/governance/CompoundVotingMachine.ts +0 -1790
  476. package/types/contracts/governance/GReputation.ts +0 -2258
  477. package/types/contracts/governance/GovernanceStaking.ts +0 -1401
  478. package/types/contracts/governance/MultiBaseGovernanceShareField.ts +0 -422
  479. package/types/contracts/governance/Reputation.ts +0 -1029
  480. package/types/contracts/governance/StakersDistribution.ts +0 -1000
  481. package/types/contracts/invite/InvitesV1.ts +0 -839
  482. package/types/contracts/invite/OneTimeReward.ts +0 -521
  483. package/types/contracts/mocks/AaveMock.ts +0 -1096
  484. package/types/contracts/mocks/AaveUSDMockOracle.ts +0 -87
  485. package/types/contracts/mocks/BatUSDMockOracle.ts +0 -87
  486. package/types/contracts/mocks/CBATMock.ts +0 -1286
  487. package/types/contracts/mocks/CDAILowWorthMock.ts +0 -1251
  488. package/types/contracts/mocks/CDAIMock.ts +0 -1303
  489. package/types/contracts/mocks/CDAINonMintableMock.ts +0 -1251
  490. package/types/contracts/mocks/CDecimalsMock.ts +0 -1286
  491. package/types/contracts/mocks/CSDTMock.ts +0 -1286
  492. package/types/contracts/mocks/CUSDCMock.ts +0 -1286
  493. package/types/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest.ts +0 -1226
  494. package/types/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper.ts +0 -1279
  495. package/types/contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper.ts +0 -1252
  496. package/types/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.ts +0 -87
  497. package/types/contracts/mocks/DAIMock.ts +0 -1171
  498. package/types/contracts/mocks/DaiEthPriceMockOracle.ts +0 -87
  499. package/types/contracts/mocks/DecimalsMock.ts +0 -1096
  500. package/types/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.ts +0 -1393
  501. package/types/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.ts +0 -1456
  502. package/types/contracts/mocks/EthUSDMockOracle.ts +0 -138
  503. package/types/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.ts +0 -131
  504. package/types/contracts/mocks/GasPriceMockOracle.ts +0 -120
  505. package/types/contracts/mocks/GenericDistributionHelperTest.sol/CeloDistributionHelperTestHelper.ts +0 -1357
  506. package/types/contracts/mocks/GoodCompoundStakingTest.ts +0 -2044
  507. package/types/contracts/mocks/GoodFundManagerTest.ts +0 -1268
  508. package/types/contracts/mocks/IdentityMock.ts +0 -554
  509. package/types/contracts/mocks/IncentiveControllerMock.ts +0 -212
  510. package/types/contracts/mocks/LendingPoolMock.ts +0 -1331
  511. package/types/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.ts +0 -176
  512. package/types/contracts/mocks/OverMintTester.sol/OverMintTester.ts +0 -178
  513. package/types/contracts/mocks/OverMintTesterRegularStake.ts +0 -178
  514. package/types/contracts/mocks/PayableMock.ts +0 -89
  515. package/types/contracts/mocks/SixteenDecimalsTokenMock.ts +0 -1096
  516. package/types/contracts/mocks/SwapHelperTest.ts +0 -118
  517. package/types/contracts/mocks/TwentyDecimalsTokenMock.ts +0 -1096
  518. package/types/contracts/mocks/UpgradableMocks.sol/UpgradableMock.ts +0 -379
  519. package/types/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.ts +0 -339
  520. package/types/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.ts +0 -365
  521. package/types/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.ts +0 -365
  522. package/types/contracts/mocks/UsdcMock.sol/USDCMock.ts +0 -1096
  523. package/types/contracts/reserve/CeloDistributionHelper.ts +0 -1226
  524. package/types/contracts/reserve/DistributionHelper.ts +0 -1393
  525. package/types/contracts/reserve/ExchangeHelper.ts +0 -584
  526. package/types/contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper.ts +0 -1247
  527. package/types/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +0 -4
  528. package/types/contracts/reserve/GoodMarketMaker.ts +0 -1054
  529. package/types/contracts/reserve/GoodReserveADai.ts +0 -2212
  530. package/types/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.ts +0 -166
  531. package/types/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.ts +0 -2190
  532. package/types/contracts/staking/BaseShareField.ts +0 -456
  533. package/types/contracts/staking/BaseShareFieldV2.ts +0 -368
  534. package/types/contracts/staking/DonationsStaking.ts +0 -851
  535. package/types/contracts/staking/FuseStakingV3.sol/FuseStakingV3.ts +0 -1280
  536. package/types/contracts/staking/FuseStakingV3.sol/IConsensus.ts +0 -232
  537. package/types/contracts/staking/FuseStakingV3.sol/PegSwap.ts +0 -112
  538. package/types/contracts/staking/GoodFundManager.ts +0 -1228
  539. package/types/contracts/staking/SimpleStaking.ts +0 -1598
  540. package/types/contracts/staking/SimpleStakingV2.ts +0 -1495
  541. package/types/contracts/staking/UniswapV2SwapHelper.ts +0 -123
  542. package/types/contracts/staking/aave/AaveStakingFactory.ts +0 -323
  543. package/types/contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2.ts +0 -1808
  544. package/types/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +0 -4
  545. package/types/contracts/staking/aave/GoodAaveStaking.ts +0 -1843
  546. package/types/contracts/staking/aave/GoodAaveStakingV2.ts +0 -1808
  547. package/types/contracts/staking/compound/CompoundStakingFactory.ts +0 -284
  548. package/types/contracts/staking/compound/GoodCompoundStaking.ts +0 -1932
  549. package/types/contracts/staking/compound/GoodCompoundStakingV2.ts +0 -1717
  550. package/types/contracts/token/ERC20PresetMinterPauserUpgradeable.ts +0 -1204
  551. package/types/contracts/token/ERC677.sol/ERC677.ts +0 -141
  552. package/types/contracts/token/ERC677.sol/ERC677Receiver.ts +0 -115
  553. package/types/contracts/token/GoodDollar.ts +0 -1871
  554. package/types/contracts/token/GoodDollar18.ts +0 -1871
  555. package/types/contracts/token/GoodDollar2.ts +0 -1871
  556. package/types/contracts/token/IFeesFormula.ts +0 -110
  557. package/types/contracts/token/MultichainFeeFormula.ts +0 -131
  558. package/types/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.ts +0 -195
  559. package/types/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.ts +0 -115
  560. package/types/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.ts +0 -650
  561. package/types/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.ts +0 -3462
  562. package/types/contracts/token/superfluid/ISuperToken.ts +0 -2203
  563. package/types/contracts/token/superfluid/SuperGoodDollar.ts +0 -3866
  564. package/types/contracts/token/superfluid/SuperToken.ts +0 -2441
  565. package/types/contracts/token/superfluid/SuperfluidToken.ts +0 -996
  566. package/types/contracts/token/superfluid/UUPSProxiable.ts +0 -197
  567. package/types/contracts/token/superfluid/UUPSProxy.sol/Proxy.ts +0 -55
  568. package/types/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.ts +0 -104
  569. package/types/contracts/ubi/UBIScheme.ts +0 -1606
  570. package/types/contracts/utils/AdminWallet.ts +0 -1359
  571. package/types/contracts/utils/AdminWalletFuse.ts +0 -1507
  572. package/types/contracts/utils/BancorFormula.ts +0 -990
  573. package/types/contracts/utils/BulkWhitelist.ts +0 -153
  574. package/types/contracts/utils/BuyAndBridgeHelper.ts +0 -293
  575. package/types/contracts/utils/BuyGDClone.sol/BuyGDClone.ts +0 -430
  576. package/types/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.ts +0 -716
  577. package/types/contracts/utils/BuyGDClone.sol/BuyGDCloneV2.ts +0 -464
  578. package/types/contracts/utils/BuyGDClone.sol/DonateGDClone.ts +0 -582
  579. package/types/contracts/utils/BuyGDClone.sol/IQuoterV2.ts +0 -184
  580. package/types/contracts/utils/BuyGDClone.sol/ISwapRouter.ts +0 -306
  581. package/types/contracts/utils/DAOContract.ts +0 -166
  582. package/types/contracts/utils/DAOUpgradeableContract.ts +0 -325
  583. package/types/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677.ts +0 -108
  584. package/types/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.ts +0 -108
  585. package/types/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage.ts +0 -89
  586. package/types/contracts/utils/FuseOldBridgeKill.sol/Initializable.ts +0 -87
  587. package/types/contracts/utils/FuseOldBridgeKill.sol/Ownable.ts +0 -148
  588. package/types/contracts/utils/GDFaucet.ts +0 -224
  589. package/types/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.ts +0 -1899
  590. package/types/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.ts +0 -143
  591. package/types/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.ts +0 -135
  592. package/types/contracts/utils/IdentityFix.ts +0 -139
  593. package/types/contracts/utils/MultiCall.sol/Multicall.ts +0 -310
  594. package/types/contracts/utils/MultichainBridgeHelper.ts +0 -175
  595. package/types/contracts/utils/NameService.ts +0 -420
  596. package/types/contracts/utils/OneTimePayments.ts +0 -426
  597. package/types/contracts/utils/OneTimePaymentsV2.ts +0 -484
  598. package/types/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.ts +0 -114
  599. package/types/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.ts +0 -278
  600. package/types/contracts/utils/ProtocolUpgradeFuse.ts +0 -167
  601. package/types/contracts/utils/ProtocolUpgradeFuseRecover.ts +0 -167
  602. package/types/contracts/utils/ProtocolUpgradeRecover.ts +0 -270
  603. package/types/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.ts +0 -163
  604. package/types/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.ts +0 -313
  605. package/types/contracts/utils/ReputationTestHelper.ts +0 -177
  606. package/types/contracts/utils/ReserveRestore.sol/MentoExchange.ts +0 -81
  607. package/types/contracts/utils/ReserveRestore.sol/ReserveRestore.ts +0 -112
  608. package/types/contracts/utils/ReserveRestore.sol/index.ts +0 -5
  609. package/types/contracts/utils/UpdateReserveRatioAfterXDC.sol/MentoExchange.ts +0 -81
  610. package/types/contracts/utils/UpdateReserveRatioAfterXDC.sol/index.ts +0 -5
  611. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/MentoExchange.ts +0 -81
  612. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/UpdateReserveRatioAfterXDC.ts +0 -122
  613. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/index.ts +0 -5
  614. package/types/factories/@gooddollar/bridge-contracts/contracts/messagePassingBridge/IMessagePassingBridge.sol/ILayerZeroFeeEstimator__factory.ts +0 -79
  615. package/types/factories/@gooddollar/bridge-contracts/contracts/messagePassingBridge/IMessagePassingBridge.sol/IMessagePassingBridge__factory.ts +0 -446
  616. package/types/factories/@mean-finance/uniswap-v3-oracle/solidity/interfaces/IStaticOracle__factory.ts +0 -410
  617. package/types/factories/@openzeppelin/contracts/access/AccessControl__factory.ts +0 -230
  618. package/types/factories/@openzeppelin/contracts/access/IAccessControl__factory.ts +0 -198
  619. package/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +0 -78
  620. package/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +0 -39
  621. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +0 -146
  622. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +0 -71
  623. package/types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +0 -31
  624. package/types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +0 -39
  625. package/types/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.ts +0 -39
  626. package/types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +0 -65
  627. package/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +0 -349
  628. package/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +0 -206
  629. package/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +0 -248
  630. package/types/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit__factory.ts +0 -101
  631. package/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts +0 -311
  632. package/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +0 -356
  633. package/types/factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory.ts +0 -64
  634. package/types/factories/@openzeppelin/contracts/token/ERC777/IERC777Sender__factory.ts +0 -64
  635. package/types/factories/@openzeppelin/contracts/token/ERC777/IERC777__factory.ts +0 -417
  636. package/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.ts +0 -42
  637. package/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts +0 -45
  638. package/types/factories/@openzeppelin/contracts/utils/introspection/IERC1820Registry__factory.ts +0 -239
  639. package/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable__factory.ts +0 -292
  640. package/types/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.ts +0 -247
  641. package/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable__factory.ts +0 -247
  642. package/types/factories/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable__factory.ts +0 -202
  643. package/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +0 -91
  644. package/types/factories/@openzeppelin/contracts-upgradeable/interfaces/IERC1271Upgradeable__factory.ts +0 -50
  645. package/types/factories/@openzeppelin/contracts-upgradeable/interfaces/draft-IERC1822Upgradeable.sol/IERC1822ProxiableUpgradeable__factory.ts +0 -43
  646. package/types/factories/@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable__factory.ts +0 -88
  647. package/types/factories/@openzeppelin/contracts-upgradeable/proxy/beacon/IBeaconUpgradeable__factory.ts +0 -39
  648. package/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +0 -39
  649. package/types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +0 -128
  650. package/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts +0 -78
  651. package/types/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.ts +0 -43
  652. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.ts +0 -345
  653. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts +0 -209
  654. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC20BurnableUpgradeable__factory.ts +0 -344
  655. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC20PausableUpgradeable__factory.ts +0 -352
  656. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.ts +0 -252
  657. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol/ERC20PermitUpgradeable__factory.ts +0 -388
  658. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable__factory.ts +0 -105
  659. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable__factory.ts +0 -748
  660. package/types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +0 -39
  661. package/types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable__factory.ts +0 -39
  662. package/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.ts +0 -58
  663. package/types/factories/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable__factory.ts +0 -45
  664. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1__factory.ts +0 -1064
  665. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1__factory.ts +0 -1015
  666. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT__factory.ts +0 -551
  667. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT__factory.ts +0 -614
  668. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IFlowNFTBase__factory.ts +0 -515
  669. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement__factory.ts +0 -78
  670. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp__factory.ts +0 -275
  671. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory__factory.ts +0 -276
  672. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken__factory.ts +0 -1839
  673. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance__factory.ts +0 -282
  674. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken__factory.ts +0 -697
  675. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid__factory.ts +0 -1156
  676. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo__factory.ts +0 -248
  677. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ISETH.sol/ISETHCustom__factory.ts +0 -59
  678. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ISETH.sol/ISETH__factory.ts +0 -1869
  679. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/TokenInfo__factory.ts +0 -65
  680. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/libs/EventsEmitter__factory.ts +0 -87
  681. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantInflowNFT__factory.ts +0 -758
  682. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantOutflowNFT__factory.ts +0 -817
  683. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/superfluid/FlowNFTBase__factory.ts +0 -645
  684. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/upgradability/UUPSProxiable__factory.ts +0 -104
  685. package/types/factories/@uniswap/v2-periphery/contracts/interfaces/IWETH__factory.ts +0 -67
  686. package/types/factories/@uniswap/v3-core/contracts/interfaces/IUniswapV3Factory__factory.ts +0 -222
  687. package/types/factories/contracts/DAOStackInterfaces.sol/Avatar__factory.ts +0 -62
  688. package/types/factories/contracts/DAOStackInterfaces.sol/Controller__factory.ts +0 -362
  689. package/types/factories/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface__factory.ts +0 -72
  690. package/types/factories/contracts/DAOStackInterfaces.sol/IntVoteInterface__factory.ts +0 -349
  691. package/types/factories/contracts/DAOStackInterfaces.sol/ReputationInterface__factory.ts +0 -168
  692. package/types/factories/contracts/DAOStackInterfaces.sol/SchemeRegistrar__factory.ts +0 -114
  693. package/types/factories/contracts/IQuoter.sol/IQuoterV2__factory.ts +0 -226
  694. package/types/factories/contracts/IQuoter.sol/index.ts +0 -4
  695. package/types/factories/contracts/IUniswapV3.sol/INonfungiblePositionManager__factory.ts +0 -121
  696. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Factory__factory.ts +0 -84
  697. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Pool__factory.ts +0 -121
  698. package/types/factories/contracts/Interfaces.sol/AToken__factory.ts +0 -36
  699. package/types/factories/contracts/Interfaces.sol/AggregatorV3Interface__factory.ts +0 -121
  700. package/types/factories/contracts/Interfaces.sol/CERC20__factory.ts +0 -384
  701. package/types/factories/contracts/Interfaces.sol/ERC20__factory.ts +0 -288
  702. package/types/factories/contracts/Interfaces.sol/IAaveIncentivesControllerV3__factory.ts +0 -88
  703. package/types/factories/contracts/Interfaces.sol/IAaveIncentivesController__factory.ts +0 -83
  704. package/types/factories/contracts/Interfaces.sol/IAdminWallet__factory.ts +0 -78
  705. package/types/factories/contracts/Interfaces.sol/IDonationStaking__factory.ts +0 -33
  706. package/types/factories/contracts/Interfaces.sol/IERC2917__factory.ts +0 -496
  707. package/types/factories/contracts/Interfaces.sol/IFirstClaimPool__factory.ts +0 -65
  708. package/types/factories/contracts/Interfaces.sol/IGoodDollar__factory.ts +0 -598
  709. package/types/factories/contracts/Interfaces.sol/IGoodStaking__factory.ts +0 -178
  710. package/types/factories/contracts/Interfaces.sol/IHasRouter__factory.ts +0 -39
  711. package/types/factories/contracts/Interfaces.sol/IIdentityV2__factory.ts +0 -334
  712. package/types/factories/contracts/Interfaces.sol/IIdentity__factory.ts +0 -287
  713. package/types/factories/contracts/Interfaces.sol/ILendingPoolV3__factory.ts +0 -186
  714. package/types/factories/contracts/Interfaces.sol/ILendingPool__factory.ts +0 -171
  715. package/types/factories/contracts/Interfaces.sol/IMultichainRouter__factory.ts +0 -82
  716. package/types/factories/contracts/Interfaces.sol/INameService__factory.ts +0 -45
  717. package/types/factories/contracts/Interfaces.sol/IQuoterV2__factory.ts +0 -126
  718. package/types/factories/contracts/Interfaces.sol/ISwapRouter__factory.ts +0 -220
  719. package/types/factories/contracts/Interfaces.sol/IUBIScheme__factory.ts +0 -71
  720. package/types/factories/contracts/Interfaces.sol/ProxyAdmin__factory.ts +0 -131
  721. package/types/factories/contracts/Interfaces.sol/Reserve__factory.ts +0 -55
  722. package/types/factories/contracts/Interfaces.sol/Staking__factory.ts +0 -77
  723. package/types/factories/contracts/Interfaces.sol/UniswapFactory__factory.ts +0 -50
  724. package/types/factories/contracts/Interfaces.sol/UniswapPair__factory.ts +0 -120
  725. package/types/factories/contracts/Interfaces.sol/Uniswap__factory.ts +0 -275
  726. package/types/factories/contracts/fuseFaucet/Faucet copy.sol/DebugFaucet__factory.ts +0 -945
  727. package/types/factories/contracts/fuseFaucet/Faucet copy.sol/index.ts +0 -4
  728. package/types/factories/contracts/fuseFaucet/Faucet__factory.ts +0 -914
  729. package/types/factories/contracts/fuseFaucet/FuseFaucetV2__factory.ts +0 -627
  730. package/types/factories/contracts/fuseFaucet/FuseFaucet__factory.ts +0 -389
  731. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable__factory.ts +0 -572
  732. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor__factory.ts +0 -482
  733. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/index.ts +0 -4
  734. package/types/factories/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet__factory.ts +0 -663
  735. package/types/factories/contracts/governance/ClaimersDistribution__factory.ts +0 -430
  736. package/types/factories/contracts/governance/CompoundVotingMachine__factory.ts +0 -1226
  737. package/types/factories/contracts/governance/GReputation__factory.ts +0 -1493
  738. package/types/factories/contracts/governance/GovernanceStaking__factory.ts +0 -948
  739. package/types/factories/contracts/governance/MultiBaseGovernanceShareField__factory.ts +0 -240
  740. package/types/factories/contracts/governance/Reputation__factory.ts +0 -696
  741. package/types/factories/contracts/governance/StakersDistribution__factory.ts +0 -617
  742. package/types/factories/contracts/identity/IdentityV2__factory.ts +0 -1150
  743. package/types/factories/contracts/invite/InvitesFuseV2__factory.ts +0 -574
  744. package/types/factories/contracts/invite/InvitesV1__factory.ts +0 -556
  745. package/types/factories/contracts/invite/OneTimeReward__factory.ts +0 -361
  746. package/types/factories/contracts/mocks/AaveMock__factory.ts +0 -743
  747. package/types/factories/contracts/mocks/AaveUSDMockOracle__factory.ts +0 -75
  748. package/types/factories/contracts/mocks/BatUSDMockOracle__factory.ts +0 -75
  749. package/types/factories/contracts/mocks/CBATMock__factory.ts +0 -847
  750. package/types/factories/contracts/mocks/CDAILowWorthMock__factory.ts +0 -834
  751. package/types/factories/contracts/mocks/CDAIMock__factory.ts +0 -860
  752. package/types/factories/contracts/mocks/CDAINonMintableMock__factory.ts +0 -834
  753. package/types/factories/contracts/mocks/CDecimalsMock__factory.ts +0 -847
  754. package/types/factories/contracts/mocks/CSDTMock__factory.ts +0 -847
  755. package/types/factories/contracts/mocks/CUSDCMock__factory.ts +0 -847
  756. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper__factory.ts +0 -949
  757. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest__factory.ts +0 -919
  758. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper__factory.ts +0 -929
  759. package/types/factories/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle__factory.ts +0 -75
  760. package/types/factories/contracts/mocks/DAIMock__factory.ts +0 -784
  761. package/types/factories/contracts/mocks/DaiEthPriceMockOracle__factory.ts +0 -79
  762. package/types/factories/contracts/mocks/DecimalsMock__factory.ts +0 -758
  763. package/types/factories/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper__factory.ts +0 -1040
  764. package/types/factories/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest__factory.ts +0 -1007
  765. package/types/factories/contracts/mocks/EthUSDMockOracle__factory.ts +0 -108
  766. package/types/factories/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock__factory.ts +0 -132
  767. package/types/factories/contracts/mocks/GasPriceMockOracle__factory.ts +0 -88
  768. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/CeloDistributionHelperTestHelper__factory.ts +0 -1017
  769. package/types/factories/contracts/mocks/GoodCompoundStakingTest__factory.ts +0 -1470
  770. package/types/factories/contracts/mocks/GoodFundManagerTest__factory.ts +0 -820
  771. package/types/factories/contracts/mocks/IdentityMock__factory.ts +0 -349
  772. package/types/factories/contracts/mocks/IncentiveControllerMock__factory.ts +0 -166
  773. package/types/factories/contracts/mocks/LendingPoolMock__factory.ts +0 -927
  774. package/types/factories/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest__factory.ts +0 -68
  775. package/types/factories/contracts/mocks/OverMintTester.sol/OverMintTester__factory.ts +0 -152
  776. package/types/factories/contracts/mocks/OverMintTesterRegularStake__factory.ts +0 -156
  777. package/types/factories/contracts/mocks/PayableMock__factory.ts +0 -69
  778. package/types/factories/contracts/mocks/SixteenDecimalsTokenMock__factory.ts +0 -747
  779. package/types/factories/contracts/mocks/SwapHelperTest__factory.ts +0 -96
  780. package/types/factories/contracts/mocks/TwentyDecimalsTokenMock__factory.ts +0 -747
  781. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock2__factory.ts +0 -236
  782. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock3__factory.ts +0 -249
  783. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock4__factory.ts +0 -249
  784. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock__factory.ts +0 -262
  785. package/types/factories/contracts/mocks/UsdcMock.sol/USDCMock__factory.ts +0 -743
  786. package/types/factories/contracts/reserve/CeloDistributionHelper__factory.ts +0 -919
  787. package/types/factories/contracts/reserve/DistributionHelper__factory.ts +0 -1003
  788. package/types/factories/contracts/reserve/ExchangeHelper__factory.ts +0 -427
  789. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper__factory.ts +0 -935
  790. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +0 -4
  791. package/types/factories/contracts/reserve/GoodMarketMaker__factory.ts +0 -687
  792. package/types/factories/contracts/reserve/GoodReserveADai__factory.ts +0 -1502
  793. package/types/factories/contracts/reserve/GoodReserveCDai.sol/ContributionCalc__factory.ts +0 -83
  794. package/types/factories/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai__factory.ts +0 -1489
  795. package/types/factories/contracts/staking/BaseShareFieldV2__factory.ts +0 -251
  796. package/types/factories/contracts/staking/BaseShareField__factory.ts +0 -307
  797. package/types/factories/contracts/staking/DonationsStaking__factory.ts +0 -580
  798. package/types/factories/contracts/staking/FuseStakingV3.sol/FuseStakingV3__factory.ts +0 -814
  799. package/types/factories/contracts/staking/FuseStakingV3.sol/IConsensus__factory.ts +0 -119
  800. package/types/factories/contracts/staking/FuseStakingV3.sol/PegSwap__factory.ts +0 -49
  801. package/types/factories/contracts/staking/GoodFundManager__factory.ts +0 -778
  802. package/types/factories/contracts/staking/SimpleStakingV2__factory.ts +0 -999
  803. package/types/factories/contracts/staking/SimpleStaking__factory.ts +0 -1061
  804. package/types/factories/contracts/staking/UniswapV2SwapHelper__factory.ts +0 -101
  805. package/types/factories/contracts/staking/aave/AaveStakingFactory__factory.ts +0 -262
  806. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2__factory.ts +0 -1240
  807. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +0 -4
  808. package/types/factories/contracts/staking/aave/GoodAaveStakingV2__factory.ts +0 -1240
  809. package/types/factories/contracts/staking/aave/GoodAaveStaking__factory.ts +0 -1276
  810. package/types/factories/contracts/staking/compound/CompoundStakingFactory__factory.ts +0 -249
  811. package/types/factories/contracts/staking/compound/GoodCompoundStakingV2__factory.ts +0 -1182
  812. package/types/factories/contracts/staking/compound/GoodCompoundStaking__factory.ts +0 -1316
  813. package/types/factories/contracts/token/ERC20PresetMinterPauserUpgradeable__factory.ts +0 -829
  814. package/types/factories/contracts/token/ERC677.sol/ERC677Receiver__factory.ts +0 -55
  815. package/types/factories/contracts/token/ERC677.sol/ERC677__factory.ts +0 -78
  816. package/types/factories/contracts/token/GoodDollar18__factory.ts +0 -1257
  817. package/types/factories/contracts/token/GoodDollar2__factory.ts +0 -1257
  818. package/types/factories/contracts/token/GoodDollar__factory.ts +0 -1257
  819. package/types/factories/contracts/token/IFeesFormula__factory.ts +0 -60
  820. package/types/factories/contracts/token/MultichainFeeFormula__factory.ts +0 -113
  821. package/types/factories/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit__factory.ts +0 -114
  822. package/types/factories/contracts/token/superfluid/ERC20Permit.sol/SelfApprove__factory.ts +0 -49
  823. package/types/factories/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom__factory.ts +0 -370
  824. package/types/factories/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar__factory.ts +0 -2301
  825. package/types/factories/contracts/token/superfluid/ISuperToken__factory.ts +0 -1577
  826. package/types/factories/contracts/token/superfluid/SuperGoodDollar__factory.ts +0 -2687
  827. package/types/factories/contracts/token/superfluid/SuperToken__factory.ts +0 -1770
  828. package/types/factories/contracts/token/superfluid/SuperfluidToken__factory.ts +0 -697
  829. package/types/factories/contracts/token/superfluid/UUPSProxiable__factory.ts +0 -104
  830. package/types/factories/contracts/token/superfluid/UUPSProxy.sol/Proxy__factory.ts +0 -31
  831. package/types/factories/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy__factory.ts +0 -83
  832. package/types/factories/contracts/ubi/UBIScheme__factory.ts +0 -1055
  833. package/types/factories/contracts/utils/AdminWalletFuse__factory.ts +0 -967
  834. package/types/factories/contracts/utils/AdminWallet__factory.ts +0 -882
  835. package/types/factories/contracts/utils/BancorFormula__factory.ts +0 -677
  836. package/types/factories/contracts/utils/BulkWhitelist__factory.ts +0 -123
  837. package/types/factories/contracts/utils/BuyAndBridgeHelper__factory.ts +0 -237
  838. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory__factory.ts +0 -602
  839. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDCloneV2__factory.ts +0 -415
  840. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDClone__factory.ts +0 -389
  841. package/types/factories/contracts/utils/BuyGDClone.sol/DonateGDClone__factory.ts +0 -503
  842. package/types/factories/contracts/utils/BuyGDClone.sol/IQuoterV2__factory.ts +0 -126
  843. package/types/factories/contracts/utils/BuyGDClone.sol/ISwapRouter__factory.ts +0 -220
  844. package/types/factories/contracts/utils/DAOContract__factory.ts +0 -121
  845. package/types/factories/contracts/utils/DAOUpgradeableContract__factory.ts +0 -227
  846. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677__factory.ts +0 -86
  847. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill__factory.ts +0 -82
  848. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage__factory.ts +0 -43
  849. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/Initializable__factory.ts +0 -75
  850. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/Ownable__factory.ts +0 -105
  851. package/types/factories/contracts/utils/GDFaucet__factory.ts +0 -191
  852. package/types/factories/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper__factory.ts +0 -1330
  853. package/types/factories/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter__factory.ts +0 -74
  854. package/types/factories/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl__factory.ts +0 -84
  855. package/types/factories/contracts/utils/IdentityFix__factory.ts +0 -113
  856. package/types/factories/contracts/utils/MultiCall.sol/Multicall__factory.ts +0 -218
  857. package/types/factories/contracts/utils/MultichainBridgeHelper__factory.ts +0 -134
  858. package/types/factories/contracts/utils/NameService__factory.ts +0 -293
  859. package/types/factories/contracts/utils/OneTimePaymentsV2__factory.ts +0 -369
  860. package/types/factories/contracts/utils/OneTimePayments__factory.ts +0 -323
  861. package/types/factories/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker__factory.ts +0 -62
  862. package/types/factories/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade__factory.ts +0 -207
  863. package/types/factories/contracts/utils/ProtocolUpgradeFuseRecover__factory.ts +0 -146
  864. package/types/factories/contracts/utils/ProtocolUpgradeFuse__factory.ts +0 -142
  865. package/types/factories/contracts/utils/ProtocolUpgradeRecover__factory.ts +0 -184
  866. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/MentoExchange__factory.ts +0 -39
  867. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento__factory.ts +0 -152
  868. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/index.ts +0 -5
  869. package/types/factories/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy__factory.ts +0 -133
  870. package/types/factories/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967__factory.ts +0 -223
  871. package/types/factories/contracts/utils/ReputationTestHelper__factory.ts +0 -141
  872. package/types/factories/contracts/utils/ReserveRestore.sol/ReserveRestore__factory.ts +0 -95
  873. package/types/factories/contracts/utils/ReserveRestore.sol/index.ts +0 -5
  874. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/MentoExchange__factory.ts +0 -39
  875. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC__factory.ts +0 -110
  876. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/index.ts +0 -5
  877. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/MentoExchange__factory.ts +0 -39
  878. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/UpdateReserveRatioAfterXDC__factory.ts +0 -115
  879. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/index.ts +0 -5
  880. /package/types/contracts/utils/{ProtocolUpgradeV4Mento.sol → UpdateReserveRatio.sol}/MentoExchange.ts +0 -0
@@ -0,0 +1,600 @@
1
+ // SPDX-License-Identifier: MIT
2
+ pragma solidity >=0.8.0;
3
+
4
+ import "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol";
5
+ import "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol";
6
+ import "@openzeppelin/contracts-upgradeable/utils/cryptography/SignatureCheckerUpgradeable.sol";
7
+ import "@openzeppelin/contracts-upgradeable/utils/cryptography/ECDSAUpgradeable.sol";
8
+ import "@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.sol";
9
+
10
+ import "../utils/DAOUpgradeableContract.sol";
11
+ import "../utils/NameService.sol";
12
+ import "../Interfaces.sol";
13
+
14
+ // import "hardhat/console.sol";
15
+
16
+ /* @title Identity contract responsible for whitelisting
17
+ * and keeping track of amount of whitelisted users
18
+ */
19
+ contract IdentityV4 is
20
+ DAOUpgradeableContract,
21
+ AccessControlUpgradeable,
22
+ PausableUpgradeable,
23
+ EIP712Upgradeable
24
+ {
25
+ struct Identity {
26
+ uint256 dateAuthenticated;
27
+ uint256 dateAdded;
28
+ string did;
29
+ uint256 whitelistedOnChainId;
30
+ uint8 status; //0 nothing, 1 whitelisted, 2 daocontract, 255 blacklisted
31
+ uint32 authCount;
32
+ }
33
+
34
+ bytes32 public constant IDENTITY_ADMIN_ROLE = keccak256("identity_admin");
35
+ bytes32 public constant PAUSER_ROLE = keccak256("pause_admin");
36
+ string public constant TYPED_STRUCTURE =
37
+ "ConnectIdentity(address whitelisted,address connected,uint256 deadline)";
38
+
39
+ /* @dev rough estimate of number of whitelisted addresses */
40
+ uint256 public whitelistedCount;
41
+ uint256 public whitelistedContracts;
42
+ uint256 private unused_authenticationPeriod;
43
+
44
+ mapping(address => Identity) public identities;
45
+
46
+ mapping(bytes32 => address) public didHashToAddress;
47
+
48
+ mapping(address => address) public connectedAccounts;
49
+
50
+ IIdentity public oldIdentity;
51
+
52
+ uint32[] public reverifyDaysOptions;
53
+
54
+ event BlacklistAdded(address indexed account);
55
+ event BlacklistRemoved(address indexed account);
56
+
57
+ event WhitelistedAdded(address indexed account);
58
+ event WhitelistedRemoved(address indexed account);
59
+ event WhitelistedAuthenticated(address indexed account, uint256 timestamp);
60
+
61
+ event ContractAdded(address indexed account);
62
+ event ContractRemoved(address indexed account);
63
+
64
+ event AccountConnected(address indexed connected, address indexed to);
65
+ event AccountDisconnected(address indexed disconnected, address indexed from);
66
+
67
+ function initialize(
68
+ address _owner,
69
+ IIdentity _oldIdentity
70
+ ) public initializer {
71
+ __AccessControl_init_unchained();
72
+ __Pausable_init_unchained();
73
+ __EIP712_init_unchained("Identity", "1.0.0");
74
+ _setupRole(DEFAULT_ADMIN_ROLE, _owner);
75
+ _setupRole(PAUSER_ROLE, _owner);
76
+ _setupRole(IDENTITY_ADMIN_ROLE, _owner);
77
+
78
+ oldIdentity = _oldIdentity;
79
+
80
+ // default reverify schedule (days)
81
+ // adjust as needed via setReverifyDaysOptions
82
+ reverifyDaysOptions.push(1);
83
+ reverifyDaysOptions.push(7);
84
+ reverifyDaysOptions.push(180);
85
+ }
86
+
87
+ /**
88
+ * @dev Returns the longest time (in days) that can pass before an authentication needs to be renewed for `account`
89
+ */
90
+ function authenticationPeriod() external view returns (uint256) {
91
+ return reverifyDaysOptions[reverifyDaysOptions.length - 1];
92
+ }
93
+
94
+ /**
95
+ * @dev used to initialize after deployment once nameservice is available
96
+ */
97
+ function initDAO(address _ns) external onlyRole(DEFAULT_ADMIN_ROLE) {
98
+ require(address(nameService) == address(0), "already initialized");
99
+ setDAO(INameService(_ns));
100
+ _setupRole(DEFAULT_ADMIN_ROLE, avatar);
101
+ _setupRole(PAUSER_ROLE, avatar);
102
+ _setupRole(IDENTITY_ADMIN_ROLE, avatar);
103
+ }
104
+
105
+ modifier onlyWhitelisted() {
106
+ require(isWhitelisted(msg.sender), "not whitelisted");
107
+ _;
108
+ }
109
+
110
+ /**
111
+ * @dev Set the reverification schedule (days). Only identity admins.
112
+ * Provide non-empty array. Values must fit in uint8 (<=255).
113
+ */
114
+ function setReverifyDaysOptions(
115
+ uint8[] calldata options
116
+ ) external onlyRole(IDENTITY_ADMIN_ROLE) {
117
+ require(options.length > 0, "empty options");
118
+ // replace storage array
119
+ delete reverifyDaysOptions;
120
+ for (uint256 i = 0; i < options.length; i++) {
121
+ require(
122
+ i == 0 || options[i] > options[i - 1],
123
+ "options not in ascending order"
124
+ );
125
+ reverifyDaysOptions.push(options[i]);
126
+ }
127
+ }
128
+
129
+ /**
130
+ * @dev Sets the authentication date of `account`
131
+ * to the current time.
132
+ * Can only be called by Identity Administrators.
133
+ * @param account address to change its auth date
134
+ */
135
+ function authenticate(address account) public {
136
+ return authenticateWithTimestamp(account, block.timestamp);
137
+ }
138
+
139
+ /**
140
+ * @dev Sets the authentication date of `account`
141
+ * to the current time.
142
+ * Can only be called by Identity Administrators.
143
+ * @param account address to change its auth date
144
+ * @param timestamp the authentication timestamp
145
+ */
146
+ function authenticateWithTimestamp(
147
+ address account,
148
+ uint256 timestamp
149
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
150
+ require(identities[account].status == 1, "not whitelisted");
151
+
152
+ uint daysSinceAuthentication = (timestamp -
153
+ identities[account].dateAuthenticated) / 1 days;
154
+
155
+ // temp exclusion post upgrade for previously authenticted users to start with authcount at last step
156
+ // can be removed in the future
157
+ if (identities[account].dateAuthenticated < 1772697574) {
158
+ identities[account].authCount = uint32(reverifyDaysOptions.length - 1);
159
+ }
160
+ // should happen before updating dateAuthenticated
161
+ if (shouldReverify(account, daysSinceAuthentication)) {
162
+ identities[account].authCount += 1;
163
+ // if authCount has advanced past the last configured reverify step,
164
+ // reset back to start (cycle). This ensures we won't index out of bounds
165
+ // and allows repeated cycles through the reverify schedule.
166
+ if (identities[account].authCount >= reverifyDaysOptions.length) {
167
+ identities[account].authCount = 0;
168
+ }
169
+ }
170
+ identities[account].dateAuthenticated = timestamp;
171
+
172
+ emit WhitelistedAuthenticated(account, timestamp);
173
+ }
174
+
175
+ /**
176
+ * @dev Adds an address as whitelisted.
177
+ * Can only be called by Identity Administrators.
178
+ * @param account address to add as whitelisted
179
+ */
180
+ function addWhitelisted(
181
+ address account
182
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
183
+ _addWhitelisted(account, _chainId());
184
+ }
185
+
186
+ /**
187
+ @dev Adds an address as whitelisted under a specific ID
188
+ @param account The address to add
189
+ @param did the ID to add account under
190
+ */
191
+ function addWhitelistedWithDIDAndChain(
192
+ address account,
193
+ string memory did,
194
+ uint256 orgChain,
195
+ uint256 dateAuthenticated
196
+ ) external onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
197
+ _addWhitelistedWithDID(account, did, orgChain);
198
+
199
+ //in case we are whitelisting on a new chain an already whitelisted account, we need to make sure it expires at the same time
200
+ if (dateAuthenticated > 0) {
201
+ identities[account].dateAuthenticated = dateAuthenticated;
202
+ }
203
+ }
204
+
205
+ /**
206
+ * @dev Adds an address as whitelisted under a specific ID
207
+ * @param account The address to add
208
+ * @param did the ID to add account under
209
+ */
210
+ function addWhitelistedWithDID(
211
+ address account,
212
+ string memory did
213
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
214
+ _addWhitelistedWithDID(account, did, _chainId());
215
+ }
216
+
217
+ /**
218
+ * @dev Removes an address as whitelisted.
219
+ * Can only be called by Identity Administrators.
220
+ * @param account address to remove as whitelisted
221
+ */
222
+ function removeWhitelisted(
223
+ address account
224
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
225
+ _removeWhitelisted(account);
226
+ }
227
+
228
+ /**
229
+ * @dev Renounces message sender from whitelisted
230
+ */
231
+ function renounceWhitelisted() external whenNotPaused onlyWhitelisted {
232
+ _removeWhitelisted(msg.sender);
233
+ }
234
+
235
+ function shouldReverify(
236
+ address account,
237
+ uint daysSinceAuth
238
+ ) public view returns (bool) {
239
+ uint32 authCount = identities[account].authCount;
240
+
241
+ // temp exclusion post upgrade for previously authenticted users to start with authcount at last step
242
+ // can be removed in the future
243
+ if (identities[account].dateAuthenticated < 1772697574) {
244
+ authCount = uint32(reverifyDaysOptions.length - 1);
245
+ }
246
+ uint reverifyAfterDays = reverifyDaysOptions[authCount];
247
+ if (daysSinceAuth >= reverifyAfterDays) return true;
248
+
249
+ return false;
250
+ }
251
+
252
+ /**
253
+ * @dev Returns true if given address has been added to whitelist
254
+ * @param account the address to check
255
+ * @return a bool indicating weather the address is present in whitelist
256
+ */
257
+ function isWhitelisted(address account) public view returns (bool) {
258
+ uint256 daysSinceAuthentication = (block.timestamp -
259
+ identities[account].dateAuthenticated) / 1 days;
260
+
261
+ if (identities[account].status == 1) {
262
+ return shouldReverify(account, daysSinceAuthentication) == false;
263
+ }
264
+
265
+ if (address(oldIdentity) != address(0)) {
266
+ try oldIdentity.isWhitelisted(account) returns (bool res) {
267
+ return res;
268
+ } catch {
269
+ return false;
270
+ }
271
+ }
272
+ return false;
273
+ }
274
+
275
+ /**
276
+ * @dev Function that gives the date the given user was added
277
+ * @param account The address to check
278
+ * @return The date the address was added
279
+ */
280
+ function lastAuthenticated(address account) external view returns (uint256) {
281
+ if (identities[account].dateAuthenticated > 0)
282
+ return identities[account].dateAuthenticated;
283
+ if (address(oldIdentity) != address(0)) {
284
+ try oldIdentity.lastAuthenticated(account) returns (uint256 _lastAuth) {
285
+ return _lastAuth;
286
+ } catch {
287
+ return 0;
288
+ }
289
+ }
290
+ return 0;
291
+ }
292
+
293
+ /**
294
+ * @dev Adds an address to blacklist.
295
+ * Can only be called by Identity Administrators.
296
+ * @param account address to add as blacklisted
297
+ */
298
+ function addBlacklisted(
299
+ address account
300
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
301
+ _removeWhitelisted(account);
302
+ identities[account].status = 255;
303
+ emit BlacklistAdded(account);
304
+ }
305
+
306
+ /**
307
+ * @dev Removes an address from blacklist
308
+ * Can only be called by Identity Administrators.
309
+ * @param account address to remove as blacklisted
310
+ */
311
+ function removeBlacklisted(
312
+ address account
313
+ ) external onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
314
+ if (
315
+ address(oldIdentity) != address(0) && oldIdentity.isBlacklisted(account)
316
+ ) oldIdentity.removeBlacklisted(account);
317
+
318
+ identities[account].status = 0;
319
+ emit BlacklistRemoved(account);
320
+ }
321
+
322
+ /**
323
+ * @dev Function to add a Contract to list of contracts
324
+ * @param account The address to add
325
+ */
326
+ function addContract(
327
+ address account
328
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
329
+ require(isContract(account), "Given address is not a contract");
330
+ _addWhitelisted(account, _chainId());
331
+ identities[account].status = 2; //this must come after _addWhitelisted
332
+
333
+ emit ContractAdded(account);
334
+ }
335
+
336
+ /**
337
+ * @dev Function to remove a Contract from list of contracts
338
+ * @param account The address to add
339
+ */
340
+ function removeContract(
341
+ address account
342
+ ) public onlyRole(IDENTITY_ADMIN_ROLE) whenNotPaused {
343
+ if (
344
+ address(oldIdentity) != address(0) && oldIdentity.isDAOContract(account)
345
+ ) {
346
+ oldIdentity.removeContract(account);
347
+ }
348
+ _removeWhitelisted(account);
349
+
350
+ emit ContractRemoved(account);
351
+ }
352
+
353
+ /**
354
+ * @dev Function to check if given contract is on list of contracts.
355
+ * @param account to check
356
+ * @return a bool indicating if address is on list of contracts
357
+ */
358
+ function isDAOContract(address account) external view returns (bool) {
359
+ if (identities[account].status == 2) return true;
360
+ if (address(oldIdentity) != address(0)) {
361
+ try oldIdentity.isDAOContract(account) returns (bool res) {
362
+ return res;
363
+ } catch {
364
+ return false;
365
+ }
366
+ }
367
+ return false;
368
+ }
369
+
370
+ /**
371
+ * @dev Internal function to add to whitelisted
372
+ * @param account the address to add
373
+ */
374
+ function _addWhitelisted(address account, uint256 orgChain) internal {
375
+ require(identities[account].status == 0, "already has status");
376
+ whitelistedCount += 1;
377
+ identities[account].status = 1;
378
+ identities[account].dateAdded = block.timestamp;
379
+ identities[account].dateAuthenticated = block.timestamp;
380
+ identities[account].whitelistedOnChainId = orgChain;
381
+ identities[account].authCount = 0;
382
+ connectedAccounts[account] = address(0);
383
+
384
+ if (isContract(account)) {
385
+ whitelistedContracts += 1;
386
+ }
387
+
388
+ emit WhitelistedAdded(account);
389
+ }
390
+
391
+ /**
392
+ * @dev Internal whitelisting with did function.
393
+ * @param account the address to add
394
+ * @param did the id to register account under
395
+ */
396
+ function _addWhitelistedWithDID(
397
+ address account,
398
+ string memory did,
399
+ uint256 orgChain
400
+ ) internal {
401
+ bytes32 pHash = keccak256(bytes(did));
402
+ require(didHashToAddress[pHash] == address(0), "DID already registered");
403
+
404
+ identities[account].did = did;
405
+ didHashToAddress[pHash] = account;
406
+
407
+ _addWhitelisted(account, orgChain);
408
+ }
409
+
410
+ /**
411
+ * @dev Internal function to remove from whitelisted
412
+ * @param account the address to add
413
+ */
414
+ function _removeWhitelisted(address account) internal {
415
+ if (identities[account].status == 1 || identities[account].status == 2) {
416
+ whitelistedCount -= 1;
417
+
418
+ if (isContract(account) && whitelistedContracts > 0) {
419
+ whitelistedContracts -= 1;
420
+ }
421
+
422
+ string memory did = identities[account].did;
423
+ bytes32 pHash = keccak256(bytes(did));
424
+
425
+ delete identities[account];
426
+ delete didHashToAddress[pHash];
427
+
428
+ emit WhitelistedRemoved(account);
429
+ }
430
+
431
+ if (
432
+ address(oldIdentity) != address(0) && oldIdentity.isWhitelisted(account)
433
+ ) {
434
+ oldIdentity.removeWhitelisted(account);
435
+ }
436
+ }
437
+
438
+ /// @notice helper function to get current chain id
439
+ /// @return chainId id
440
+ function _chainId() internal view returns (uint256 chainId) {
441
+ assembly {
442
+ chainId := chainid()
443
+ }
444
+ }
445
+
446
+ /**
447
+ * @dev Returns true if given address has been added to the blacklist
448
+ * @param account the address to check
449
+ * @return a bool indicating weather the address is present in the blacklist
450
+ */
451
+ function isBlacklisted(address account) public view returns (bool) {
452
+ if (identities[account].status == 255) return true;
453
+ if (address(oldIdentity) != address(0)) {
454
+ try oldIdentity.isBlacklisted(account) returns (bool res) {
455
+ return res;
456
+ } catch {
457
+ return false;
458
+ }
459
+ }
460
+ return false;
461
+ }
462
+
463
+ /**
464
+ * @dev Function to see if given address is a contract
465
+ * @return true if address is a contract
466
+ */
467
+ function isContract(address _addr) internal view returns (bool) {
468
+ uint256 length;
469
+ assembly {
470
+ length := extcodesize(_addr)
471
+ }
472
+ return length > 0;
473
+ }
474
+
475
+ /**
476
+ @dev allows user to connect more accounts to his identity. msg.sender needs to be whitelisted
477
+ @param account the account to connect to msg.sender
478
+ */
479
+ function connectAccount(address account) external onlyWhitelisted {
480
+ require(
481
+ !isWhitelisted(account) && !isBlacklisted(account),
482
+ "invalid account"
483
+ );
484
+ require(connectedAccounts[account] == address(0x0), "already connected");
485
+
486
+ connectedAccounts[account] = msg.sender;
487
+ emit AccountConnected(account, msg.sender);
488
+ }
489
+
490
+ /**
491
+ @dev disconnect a connected account from identity. can be performed either by identity or the connected account
492
+ @param connected the account to disconnect
493
+ */
494
+ function disconnectAccount(address connected) external {
495
+ require(
496
+ connectedAccounts[connected] == msg.sender || msg.sender == connected,
497
+ "unauthorized"
498
+ );
499
+ delete connectedAccounts[connected];
500
+ emit AccountDisconnected(connected, msg.sender);
501
+ }
502
+
503
+ /**
504
+ @dev returns the identity in case account is connected or is the identity itself otherwise returns the empty address
505
+ @param account address to get its identity
506
+ @return whitelisted the identity or address 0 if _account not connected or not identity
507
+ **/
508
+ function getWhitelistedRoot(
509
+ address account
510
+ ) external view returns (address whitelisted) {
511
+ if (isWhitelisted(account)) return account;
512
+ if (isWhitelisted(connectedAccounts[account]))
513
+ return connectedAccounts[account];
514
+
515
+ return address(0x0);
516
+ }
517
+
518
+ function pause(bool toPause) external onlyRole(PAUSER_ROLE) {
519
+ if (toPause) _pause();
520
+ else _unpause();
521
+ }
522
+
523
+ /**
524
+ @dev modify account did can be called by account owner or identity admin
525
+ @param account the account to modify
526
+ @param did the did to set
527
+ */
528
+ function setDID(address account, string calldata did) external {
529
+ require(
530
+ msg.sender == account || hasRole(IDENTITY_ADMIN_ROLE, msg.sender),
531
+ "not authorized"
532
+ );
533
+ _setDID(account, did);
534
+ }
535
+
536
+ function _setDID(address account, string memory did) internal {
537
+ require(isWhitelisted(account), "not whitelisted");
538
+ require(bytes(did).length > 0, "did empty");
539
+ bytes32 pHash = keccak256(bytes(did));
540
+ require(didHashToAddress[pHash] == address(0), "DID already registered");
541
+
542
+ if (address(oldIdentity) != address(0)) {
543
+ address oldDIDOwner;
544
+ try oldIdentity.didHashToAddress(pHash) returns (address _didOwner) {
545
+ oldDIDOwner = _didOwner;
546
+ } catch {}
547
+ //if owner not the same and doesnt have a new did set then revert
548
+ require(
549
+ oldDIDOwner == address(0) ||
550
+ oldDIDOwner == account ||
551
+ bytes(identities[oldDIDOwner].did).length > 0,
552
+ "DID already registered oldIdentity"
553
+ );
554
+ }
555
+
556
+ bytes32 oldHash = keccak256(bytes(identities[account].did));
557
+ delete didHashToAddress[oldHash];
558
+ identities[account].did = did;
559
+ didHashToAddress[pHash] = account;
560
+ }
561
+
562
+ /**
563
+ @dev for backward compatability with V1
564
+ @param account to get DID for
565
+ @return did of the account
566
+ */
567
+ function addrToDID(
568
+ address account
569
+ ) external view returns (string memory did) {
570
+ did = identities[account].did;
571
+ bytes32 pHash = keccak256(bytes(did));
572
+
573
+ //if did was set in this contract return it, otherwise check oldidentity
574
+ if (didHashToAddress[pHash] == account) return did;
575
+
576
+ if (address(oldIdentity) != address(0)) {
577
+ try oldIdentity.addrToDID(account) returns (string memory _did) {
578
+ return _did;
579
+ } catch {
580
+ return "";
581
+ }
582
+ }
583
+
584
+ return "";
585
+ }
586
+
587
+ function getWhitelistedOnChainId(
588
+ address account
589
+ ) external view returns (uint256 chainId) {
590
+ chainId = identities[account].whitelistedOnChainId;
591
+ return chainId > 0 ? chainId : _chainId();
592
+ }
593
+
594
+ /**
595
+ * backward compatability with IdentityV1 that GoodDollar token checks if the identity contract is registered
596
+ */
597
+ function isRegistered() external pure returns (bool) {
598
+ return true;
599
+ }
600
+ }
@@ -7,8 +7,9 @@ import "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol";
7
7
  import "../Interfaces.sol";
8
8
  import "../utils/NameService.sol";
9
9
  import "../utils/DAOUpgradeableContract.sol";
10
+ import "../ubi/UBISchemeV2.sol";
10
11
 
11
- // import "hardhat/console.sol";
12
+ import "hardhat/console.sol";
12
13
 
13
14
  /**
14
15
  * @title InvitesV1 contract that handles invites with pre allocated bounty pool
@@ -59,6 +60,9 @@ contract InvitesV2 is DAOUpgradeableContract {
59
60
 
60
61
  bytes32 private campaignCode;
61
62
 
63
+ uint8 public minimumClaims; // minimum claims required for invitee to be eligible for bounty
64
+ uint8 public minimumDays; // minimum days since join required for invitee to be eligible for bounty
65
+
62
66
  event InviteeJoined(address indexed inviter, address indexed invitee);
63
67
  event InviterBounty(
64
68
  address indexed inviter,
@@ -173,8 +177,21 @@ contract InvitesV2 is DAOUpgradeableContract {
173
177
 
174
178
  function canCollectBountyFor(address _invitee) public view returns (bool) {
175
179
  address invitedBy = users[_invitee].invitedBy;
180
+ bool hasMinClaims = true;
181
+
182
+ try
183
+ UBISchemeV2(nameService.getAddress("UBISCHEME")).totalClaimsPerUser(
184
+ _invitee
185
+ )
186
+ returns (uint256 claims) {
187
+ hasMinClaims = claims >= minimumClaims;
188
+ } catch {
189
+ hasMinClaims = true; // if call fails for any reason we dont want to block bounty collection
190
+ }
176
191
 
177
192
  return
193
+ block.timestamp >= users[_invitee].joinedAt + minimumDays * 1 days && // wait at least 7 day before allowing bounty collection
194
+ hasMinClaims && // invitee needs to have made at least 3 claim
178
195
  users[_invitee].bountyAtJoin > 0 &&
179
196
  !users[_invitee].bountyPaid &&
180
197
  getIdentity().isWhitelisted(_invitee) &&
@@ -248,14 +265,6 @@ contract InvitesV2 is DAOUpgradeableContract {
248
265
  uint256 joinedAt = users[_invitee].joinedAt;
249
266
  Level memory level = levels[users[invitedBy].level];
250
267
 
251
- //hardcoded for users invited before the bountyAtJoin change
252
- if (bountyToPay == 0) {
253
- uint precision = 10 ** goodDollar.decimals();
254
- bountyToPay = joinedAt > 1687878272
255
- ? 1000 * precision
256
- : 500 * precision;
257
- }
258
-
259
268
  // if inviter level is now higher than when invitee joined or the base level has changed
260
269
  // we give level bounty if it is higher otherwise the original bounty at the time the user registered
261
270
 
@@ -338,6 +347,12 @@ contract InvitesV2 is DAOUpgradeableContract {
338
347
  codeToUser[campaignCode] = address(this);
339
348
  }
340
349
 
350
+ /// @notice set minimum claims and days required for invitee to be eligible for reward
351
+ function setMinimums(uint8 _minClaims, uint8 _minDays) public ownerOrAvatar {
352
+ minimumClaims = _minClaims;
353
+ minimumDays = _minDays;
354
+ }
355
+
341
356
  function end() public ownerOrAvatar isActive {
342
357
  uint256 gdBalance = goodDollar.balanceOf(address(this));
343
358
  goodDollar.transfer(msg.sender, gdBalance);
@@ -345,6 +360,10 @@ contract InvitesV2 is DAOUpgradeableContract {
345
360
  active = false;
346
361
  }
347
362
 
363
+ function setOwner(address _owner) public ownerOrAvatar {
364
+ owner = _owner;
365
+ }
366
+
348
367
  /// @notice helper function to get current chain id
349
368
  /// @return chainId id
350
369
  function _chainId() internal view returns (uint256 chainId) {
@@ -363,8 +382,9 @@ contract InvitesV2 is DAOUpgradeableContract {
363
382
  * 2.1 prevent multichain claims
364
383
  * 2.2 record bounty at join time
365
384
  * 2.3 support campaignCode
385
+ * 2.4 minimum claims and days requirement for bounty eligibility
366
386
  */
367
387
  function version() public pure returns (string memory) {
368
- return "2.3";
388
+ return "2.4";
369
389
  }
370
390
  }