@gooddollar/goodprotocol 2.1.1 → 2.1.3

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 (752) hide show
  1. package/artifacts/abis/AdminWallet.min.json +1 -1
  2. package/artifacts/abis/AdminWalletFuse.min.json +1 -1
  3. package/artifacts/abis/Faucet.min.json +1 -1
  4. package/artifacts/abis/FuseFaucetV2.min.json +1 -1
  5. package/artifacts/abis/GenericDistributionHelper.min.json +1 -0
  6. package/artifacts/abis/GenericDistributionHelperTest.min.json +1 -0
  7. package/artifacts/abis/GenericDistributionHelperTestHelper.min.json +1 -0
  8. package/artifacts/abis/INonfungiblePositionManager.min.json +1 -0
  9. package/artifacts/abis/IUniswapV3Pool.min.json +1 -0
  10. package/artifacts/abis/UBISchemeV2.min.json +1 -1
  11. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  12. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  13. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  14. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  15. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  16. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  17. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.dbg.json +4 -0
  18. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.json +102 -0
  19. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.dbg.json +4 -0
  20. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.json +106 -0
  21. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/IQuoterV2.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/ISwapRouter.dbg.json +1 -1
  38. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  39. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  40. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  41. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  42. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  43. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  44. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  45. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  46. package/artifacts/contracts/MentoInterfaces.sol/IBancorExchangeProvider.dbg.json +1 -1
  47. package/artifacts/contracts/MentoInterfaces.sol/IBroker.dbg.json +1 -1
  48. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExchangeProvider.dbg.json +1 -1
  49. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExpansionController.dbg.json +1 -1
  50. package/artifacts/contracts/MentoInterfaces.sol/IMentoReserve.dbg.json +1 -1
  51. package/artifacts/contracts/MentoInterfaces.sol/ITradingLimits.dbg.json +1 -1
  52. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  53. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +34 -2
  54. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  55. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  56. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.json +34 -2
  57. package/artifacts/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.dbg.json +1 -1
  58. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  59. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  60. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  61. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  62. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  63. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  64. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  65. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  66. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  67. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  68. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  69. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  70. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.dbg.json +1 -1
  71. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.json +2 -2
  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 +4 -0
  92. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest.json +931 -0
  93. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.dbg.json +4 -0
  94. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.json +957 -0
  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 +4 -0
  127. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.json +931 -0
  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 +7 -2
  171. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  172. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +36 -2
  173. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  174. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.json +36 -2
  175. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  176. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  177. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.dbg.json +1 -1
  178. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.json +2 -2
  179. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  180. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.dbg.json +1 -1
  181. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  182. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  183. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.dbg.json +1 -1
  184. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  185. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  186. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  187. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  188. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/EternalStorage.dbg.json +1 -1
  189. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.dbg.json +1 -1
  190. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage.dbg.json +1 -1
  191. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Initializable.dbg.json +1 -1
  192. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Ownable.dbg.json +1 -1
  193. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Upgradeable.dbg.json +1 -1
  194. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  195. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  196. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  197. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  198. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  199. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  200. package/artifacts/contracts/utils/LastauthReduction.sol/LastauthReduction.dbg.json +1 -1
  201. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  202. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  203. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  204. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  205. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  206. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/MentoExchange.dbg.json +1 -1
  207. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.dbg.json +1 -1
  208. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  209. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  210. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  211. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  212. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  213. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  214. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  215. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  216. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.json +2 -2
  217. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  218. package/artifacts/contracts/utils/ReserveRestore.sol/ReserveRestore.dbg.json +1 -1
  219. package/contracts/identity/IdentityV3.sol +2 -0
  220. package/contracts/reserve/GenericDistributionHelper.sol +16 -2
  221. package/contracts/utils/AdminWallet.sol +27 -0
  222. package/contracts/utils/AdminWalletFuse.sol +27 -0
  223. package/dist/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +1099 -0
  224. package/dist/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json +2627 -0
  225. package/dist/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json +32 -0
  226. package/dist/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +82 -0
  227. package/dist/test-sdk/deploySuperGoodDollar.d.ts +6 -0
  228. package/dist/test-sdk/deploySuperGoodDollar.js +46 -0
  229. package/dist/test-sdk/index.d.ts +1 -0
  230. package/dist/test-sdk/index.js +13 -0
  231. package/hardhat.config.ts +6 -12
  232. package/package.json +1 -1
  233. package/releases/deployment.json +3 -1
  234. package/scripts/bulkWhitelist.ts +31 -0
  235. package/scripts/multichain-deploy/helpers.ts +6 -1
  236. package/scripts/proposals/gip-25-xdc-upgrade-ubi.ts +303 -4
  237. package/types/{ERC1967Upgrade.ts → @openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts} +23 -21
  238. package/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +1 -0
  239. package/types/@uniswap/index.ts +2 -0
  240. package/types/@uniswap/v2-periphery/contracts/index.ts +5 -0
  241. package/types/@uniswap/v2-periphery/contracts/interfaces/IWETH.ts +159 -0
  242. package/types/@uniswap/v2-periphery/contracts/interfaces/index.ts +4 -0
  243. package/types/@uniswap/v2-periphery/index.ts +5 -0
  244. package/types/contracts/IQuoter.sol/IQuoterV2.ts +297 -0
  245. package/types/contracts/IQuoter.sol/index.ts +4 -0
  246. package/types/contracts/IUniswapV3.sol/INonfungiblePositionManager.ts +151 -0
  247. package/types/contracts/IUniswapV3.sol/IUniswapV3Factory.ts +155 -0
  248. package/types/contracts/IUniswapV3.sol/IUniswapV3Pool.ts +192 -0
  249. package/types/contracts/IUniswapV3.sol/index.ts +5 -0
  250. package/types/{IHasRouter.ts → contracts/Interfaces.sol/AToken.ts} +22 -24
  251. package/types/{IAaveIncentivesController.ts → contracts/Interfaces.sol/IAaveIncentivesControllerV3.ts} +48 -47
  252. package/types/{ILendingPool.ts → contracts/Interfaces.sol/ILendingPoolV3.ts} +89 -76
  253. package/types/{Faucet.ts → contracts/fuseFaucet/Faucet copy.sol/DebugFaucet.ts } +354 -82
  254. package/types/contracts/fuseFaucet/Faucet copy.sol/index.ts +4 -0
  255. package/types/contracts/fuseFaucet/Faucet.ts +43 -0
  256. package/types/contracts/fuseFaucet/FuseFaucetV2.ts +43 -0
  257. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor.ts +648 -0
  258. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable.ts +843 -0
  259. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/index.ts +4 -0
  260. package/types/contracts/index.ts +2 -0
  261. package/types/{DistributionHelper.ts → contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper.ts} +345 -351
  262. package/types/{DistributionHelperTestHelper.ts → contracts/mocks/GenericDistributionHelperTest.sol/CeloDistributionHelperTestHelper.ts} +426 -389
  263. package/types/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest.ts +1305 -0
  264. package/types/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.ts +1357 -0
  265. package/types/contracts/mocks/GenericDistributionHelperTest.sol/index.ts +5 -0
  266. package/types/contracts/mocks/index.ts +2 -0
  267. package/types/{DistributionHelperTest.ts → contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper.ts } +349 -361
  268. package/types/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +4 -0
  269. package/types/contracts/reserve/GenericDistributionHelper.ts +1304 -0
  270. package/types/{GoodReserveCDai.ts → contracts/reserve/GoodReserveADai.ts} +343 -197
  271. package/types/contracts/reserve/index.ts +1 -0
  272. package/types/{GoodAaveStakingV2.ts → contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2.ts} +177 -100
  273. package/types/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +4 -0
  274. package/types/{GoodDollar.ts → contracts/token/GoodDollar18.ts} +278 -140
  275. package/types/contracts/ubi/UBISchemeV2.ts +14 -3
  276. package/types/contracts/utils/AdminWallet.ts +45 -0
  277. package/types/contracts/utils/AdminWalletFuse.ts +45 -0
  278. package/types/{BuyGDClone.ts → contracts/utils/BuyGDClone.sol/BuyGDCloneV2.ts} +133 -52
  279. package/types/contracts/utils/BuyGDClone.sol/index.ts +0 -2
  280. package/types/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677.ts +108 -0
  281. package/types/{IBeacon.ts → contracts/utils/ProtocolUpgradeV4Mento.sol/MentoExchange.ts} +22 -30
  282. package/types/contracts/utils/ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.ts +161 -0
  283. package/types/contracts/utils/ProtocolUpgradeV4Mento.sol/index.ts +5 -0
  284. package/types/{BatUSDMockOracle.ts → contracts/utils/ReserveRestore.sol/MentoExchange.ts} +22 -30
  285. package/types/contracts/utils/ReserveRestore.sol/ReserveRestore.ts +112 -0
  286. package/types/contracts/utils/ReserveRestore.sol/index.ts +5 -0
  287. package/types/{IERC1822Proxiable.ts → contracts/utils/UpdateReserveRatioAfterXDC.sol/MentoExchange.ts} +22 -30
  288. package/types/contracts/utils/UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC.ts +117 -0
  289. package/types/contracts/utils/UpdateReserveRatioAfterXDC.sol/index.ts +5 -0
  290. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/MentoExchange.ts +81 -0
  291. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/UpdateReserveRatioAfterXDC.ts +122 -0
  292. package/types/contracts/utils/UpdateReserveSettingsForXdc.sol/index.ts +5 -0
  293. package/types/contracts/utils/index.ts +2 -0
  294. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +146 -0
  295. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +1 -0
  296. package/types/factories/@uniswap/index.ts +1 -0
  297. package/types/factories/@uniswap/v2-periphery/contracts/index.ts +4 -0
  298. package/types/factories/{IRouter__factory.ts → @uniswap/v2-periphery/contracts/interfaces/IWETH__factory.ts} +24 -28
  299. package/types/factories/@uniswap/v2-periphery/contracts/interfaces/index.ts +4 -0
  300. package/types/factories/@uniswap/v2-periphery/index.ts +4 -0
  301. package/types/factories/contracts/IQuoter.sol/IQuoterV2__factory.ts +226 -0
  302. package/types/factories/contracts/IQuoter.sol/index.ts +4 -0
  303. package/types/factories/contracts/IUniswapV3.sol/INonfungiblePositionManager__factory.ts +121 -0
  304. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Factory__factory.ts +84 -0
  305. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Pool__factory.ts +121 -0
  306. package/types/factories/contracts/IUniswapV3.sol/index.ts +5 -0
  307. package/types/factories/contracts/Interfaces.sol/AToken__factory.ts +36 -0
  308. package/types/factories/{IAaveIncentivesController__factory.ts → contracts/Interfaces.sol/IAaveIncentivesControllerV3__factory.ts} +27 -22
  309. package/types/factories/{ILendingPool__factory.ts → contracts/Interfaces.sol/ILendingPoolV3__factory.ts} +32 -14
  310. package/types/factories/contracts/fuseFaucet/Faucet copy.sol/DebugFaucet__factory.ts +945 -0
  311. package/types/factories/contracts/fuseFaucet/Faucet copy.sol/index.ts +4 -0
  312. package/types/factories/contracts/fuseFaucet/Faucet__factory.ts +33 -1
  313. package/types/factories/contracts/fuseFaucet/FuseFaucetV2__factory.ts +33 -1
  314. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable__factory.ts +572 -0
  315. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor__factory.ts +482 -0
  316. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/index.ts +4 -0
  317. package/types/factories/contracts/identity/IdentityV3__factory.ts +1 -1
  318. package/types/factories/contracts/index.ts +1 -0
  319. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper__factory.ts +929 -0
  320. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/CeloDistributionHelperTestHelper__factory.ts +1017 -0
  321. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper__factory.ts +1021 -0
  322. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest__factory.ts +989 -0
  323. package/types/factories/contracts/mocks/GenericDistributionHelperTest.sol/index.ts +5 -0
  324. package/types/factories/contracts/mocks/index.ts +1 -0
  325. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper__factory.ts +935 -0
  326. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +4 -0
  327. package/types/factories/contracts/reserve/GenericDistributionHelper__factory.ts +987 -0
  328. package/types/factories/contracts/reserve/GoodReserveADai__factory.ts +1502 -0
  329. package/types/factories/contracts/reserve/index.ts +1 -0
  330. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2__factory.ts +1240 -0
  331. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +4 -0
  332. package/types/factories/{GoodDollar__factory.ts → contracts/token/GoodDollar18__factory.ts} +26 -23
  333. package/types/factories/contracts/ubi/UBISchemeV2__factory.ts +6 -1
  334. package/types/factories/contracts/utils/AdminWalletFuse__factory.ts +35 -1
  335. package/types/factories/contracts/utils/AdminWallet__factory.ts +35 -1
  336. package/types/factories/contracts/utils/BulkWhitelist__factory.ts +1 -1
  337. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDCloneV2__factory.ts +415 -0
  338. package/types/factories/contracts/utils/BuyGDClone.sol/index.ts +0 -2
  339. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677__factory.ts +86 -0
  340. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/MentoExchange__factory.ts +39 -0
  341. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento__factory.ts +152 -0
  342. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/index.ts +5 -0
  343. package/types/factories/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy__factory.ts +1 -1
  344. package/types/factories/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967__factory.ts +1 -1
  345. package/types/factories/{IBeaconUpgradeable__factory.ts → contracts/utils/ReserveRestore.sol/MentoExchange__factory.ts} +11 -11
  346. package/types/factories/contracts/utils/ReserveRestore.sol/ReserveRestore__factory.ts +95 -0
  347. package/types/factories/contracts/utils/ReserveRestore.sol/index.ts +5 -0
  348. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/MentoExchange__factory.ts +39 -0
  349. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC__factory.ts +110 -0
  350. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/index.ts +5 -0
  351. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/MentoExchange__factory.ts +39 -0
  352. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/UpdateReserveRatioAfterXDC__factory.ts +115 -0
  353. package/types/factories/contracts/utils/UpdateReserveSettingsForXdc.sol/index.ts +5 -0
  354. package/types/factories/contracts/utils/index.ts +1 -0
  355. package/types/hardhat.d.ts +81 -18
  356. package/types/index.ts +16 -2
  357. package/types/AaveMock.ts +0 -1031
  358. package/types/AaveStakingFactory.ts +0 -290
  359. package/types/AaveUSDMockOracle.ts +0 -89
  360. package/types/AccessControl.ts +0 -361
  361. package/types/AccessControlEnumerableUpgradeable.ts +0 -444
  362. package/types/AccessControlUpgradeable.ts +0 -371
  363. package/types/AdminWallet.ts +0 -1234
  364. package/types/AdminWalletFuse.ts +0 -1340
  365. package/types/AggregatorV3Interface.ts +0 -192
  366. package/types/Avatar.ts +0 -121
  367. package/types/BancorFormula.ts +0 -974
  368. package/types/BaseShareField.ts +0 -442
  369. package/types/BaseShareFieldV2.ts +0 -361
  370. package/types/BuyAndBridgeHelper.ts +0 -279
  371. package/types/BuyGDCloneFactory.ts +0 -180
  372. package/types/CBATMock.ts +0 -1203
  373. package/types/CDAILowWorthMock.ts +0 -1169
  374. package/types/CDAIMock.ts +0 -1219
  375. package/types/CDAINonMintableMock.ts +0 -1169
  376. package/types/CDecimalsMock.ts +0 -1203
  377. package/types/CERC20.ts +0 -552
  378. package/types/CSDTMock.ts +0 -1203
  379. package/types/CUSDCMock.ts +0 -1203
  380. package/types/ClaimersDistribution.ts +0 -634
  381. package/types/CompUSDMockOracle.ts +0 -89
  382. package/types/CompoundStakingFactory.ts +0 -261
  383. package/types/CompoundVotingMachine.ts +0 -1718
  384. package/types/ContextUpgradeable.ts +0 -77
  385. package/types/ContributionCalc.ts +0 -164
  386. package/types/Controller.ts +0 -547
  387. package/types/DAIMock.ts +0 -1092
  388. package/types/DAOContract.ts +0 -162
  389. package/types/DAOUpgradeableContract.ts +0 -299
  390. package/types/DaiEthPriceMockOracle.ts +0 -89
  391. package/types/DecimalsMock.ts +0 -1031
  392. package/types/DistributionBridgeMock.ts +0 -384
  393. package/types/DonationsStaking.ts +0 -805
  394. package/types/EIP712Upgradeable.ts +0 -77
  395. package/types/ERC165.ts +0 -104
  396. package/types/ERC165Upgradeable.ts +0 -115
  397. package/types/ERC1967Proxy.ts +0 -147
  398. package/types/ERC1967UpgradeUpgradeable.ts +0 -116
  399. package/types/ERC20.ts +0 -417
  400. package/types/ERC20BurnableUpgradeable.ts +0 -488
  401. package/types/ERC20PausableUpgradeable.ts +0 -458
  402. package/types/ERC20Permit.ts +0 -186
  403. package/types/ERC20PermitUpgradeable.ts +0 -531
  404. package/types/ERC20PresetMinterPauserUpgradeable.ts +0 -1136
  405. package/types/ERC20Upgradeable.ts +0 -426
  406. package/types/ERC20WithTokenInfo.ts +0 -339
  407. package/types/ERC677.ts +0 -131
  408. package/types/ERC677Receiver.ts +0 -115
  409. package/types/EthUSDMockOracle.ts +0 -138
  410. package/types/EventsEmitter.ts +0 -88
  411. package/types/ExchangeHelper.ts +0 -550
  412. package/types/FeesFormulaMock.ts +0 -130
  413. package/types/FuseFaucet.ts +0 -507
  414. package/types/FuseFaucetV2.ts +0 -846
  415. package/types/FuseStakingV3.ts +0 -1212
  416. package/types/GDFaucet.ts +0 -221
  417. package/types/GReputation.ts +0 -2119
  418. package/types/GasPriceMockOracle.ts +0 -118
  419. package/types/GlobalConstraintInterface.ts +0 -134
  420. package/types/GoodAaveStaking.ts +0 -1761
  421. package/types/GoodCompoundStaking.ts +0 -1847
  422. package/types/GoodCompoundStakingTest.ts +0 -1957
  423. package/types/GoodCompoundStakingV2.ts +0 -1645
  424. package/types/GoodDollarMintBurnWrapper.ts +0 -1792
  425. package/types/GoodDollarStaking.ts +0 -1947
  426. package/types/GoodDollarStakingMock.ts +0 -1986
  427. package/types/GoodFundManager.ts +0 -1126
  428. package/types/GoodFundManagerTest.ts +0 -1165
  429. package/types/GoodMarketMaker.ts +0 -1002
  430. package/types/GovernanceStaking.ts +0 -1295
  431. package/types/IAccessControl.ts +0 -306
  432. package/types/IAccessControlEnumerableUpgradeable.ts +0 -380
  433. package/types/IAccessControlUpgradeable.ts +0 -307
  434. package/types/IAdminWallet.ts +0 -171
  435. package/types/IBeaconUpgradeable.ts +0 -89
  436. package/types/IConsensus.ts +0 -225
  437. package/types/IDonationStaking.ts +0 -98
  438. package/types/IERC1271Upgradeable.ts +0 -109
  439. package/types/IERC165.ts +0 -104
  440. package/types/IERC165Upgradeable.ts +0 -104
  441. package/types/IERC1820Registry.ts +0 -398
  442. package/types/IERC1822ProxiableUpgradeable.ts +0 -90
  443. package/types/IERC20.ts +0 -300
  444. package/types/IERC20Metadata.ts +0 -339
  445. package/types/IERC20MetadataUpgradeable.ts +0 -340
  446. package/types/IERC20Permit.ts +0 -175
  447. package/types/IERC20PermitUpgradeable.ts +0 -176
  448. package/types/IERC20Upgradeable.ts +0 -300
  449. package/types/IERC2917.ts +0 -661
  450. package/types/IERC777.ts +0 -586
  451. package/types/IERC777Recipient.ts +0 -130
  452. package/types/IERC777Sender.ts +0 -130
  453. package/types/IFeesFormula.ts +0 -111
  454. package/types/IFirstClaimPool.ts +0 -136
  455. package/types/IGoodDollar.ts +0 -876
  456. package/types/IGoodDollarCustom.ts +0 -618
  457. package/types/IGoodDollarStakingTest.ts +0 -160
  458. package/types/IGoodStaking.ts +0 -264
  459. package/types/IGovernanceStaking.ts +0 -98
  460. package/types/IIdentity.ts +0 -508
  461. package/types/IIdentityV2.ts +0 -591
  462. package/types/ILayerZeroFeeEstimator.ts +0 -136
  463. package/types/IMessagePassingBridge.ts +0 -774
  464. package/types/IMultichainRouter.ts +0 -166
  465. package/types/INameService.ts +0 -86
  466. package/types/IRouter.ts +0 -143
  467. package/types/IStakingUpgrade.ts +0 -110
  468. package/types/IStaticOracle.ts +0 -677
  469. package/types/ISuperAgreement.ts +0 -151
  470. package/types/ISuperApp.ts +0 -410
  471. package/types/ISuperGoodDollar.ts +0 -3029
  472. package/types/ISuperToken.ts +0 -2326
  473. package/types/ISuperTokenFactory.ts +0 -415
  474. package/types/ISuperfluid.ts +0 -1565
  475. package/types/ISuperfluidGovernance.ts +0 -455
  476. package/types/ISuperfluidToken.ts +0 -951
  477. package/types/ISwapRouter.ts +0 -298
  478. package/types/IUBIScheme.ts +0 -121
  479. package/types/IUniswapV3Factory.ts +0 -333
  480. package/types/IWrapper.ts +0 -143
  481. package/types/IdentityFix.ts +0 -141
  482. package/types/IdentityMock.ts +0 -527
  483. package/types/IdentityV2.ts +0 -1782
  484. package/types/IncentiveControllerMock.ts +0 -207
  485. package/types/Initializable.ts +0 -77
  486. package/types/IntVoteInterface.ts +0 -468
  487. package/types/InvitesFuseV2.ts +0 -840
  488. package/types/InvitesV1.ts +0 -806
  489. package/types/InvitesV2.ts +0 -1016
  490. package/types/LendingPoolMock.ts +0 -1259
  491. package/types/MultiBaseGovernanceShareField.ts +0 -411
  492. package/types/Multicall.ts +0 -298
  493. package/types/MultichainBridgeHelper.ts +0 -170
  494. package/types/MultichainFeeFormula.ts +0 -130
  495. package/types/MultichainRouterMock.ts +0 -141
  496. package/types/NameService.ts +0 -386
  497. package/types/OldMarketMaker.ts +0 -113
  498. package/types/OneTimePayments.ts +0 -396
  499. package/types/OneTimePaymentsV2.ts +0 -456
  500. package/types/OverMintTester.ts +0 -176
  501. package/types/OverMintTesterRegularStake.ts +0 -177
  502. package/types/OwnableUpgradeable.ts +0 -175
  503. package/types/Pausable.ts +0 -103
  504. package/types/PausableControl.ts +0 -125
  505. package/types/PausableUpgradeable.ts +0 -112
  506. package/types/PayableMock.ts +0 -92
  507. package/types/PegSwap.ts +0 -112
  508. package/types/ProtocolUpgrade.ts +0 -272
  509. package/types/ProtocolUpgradeFuse.ts +0 -166
  510. package/types/ProtocolUpgradeFuseRecover.ts +0 -167
  511. package/types/ProtocolUpgradeRecover.ts +0 -264
  512. package/types/Proxy.ts +0 -66
  513. package/types/ProxyAdmin.ts +0 -254
  514. package/types/ProxyFactory1967.ts +0 -284
  515. package/types/ReentrancyGuardUpgradeable.ts +0 -78
  516. package/types/Reputation.ts +0 -964
  517. package/types/ReputationInterface.ts +0 -261
  518. package/types/ReputationTestHelper.ts +0 -175
  519. package/types/Reserve.ts +0 -112
  520. package/types/RewardsMinter.ts +0 -107
  521. package/types/SchemeRegistrar.ts +0 -164
  522. package/types/SelfApprove.ts +0 -115
  523. package/types/SimpleStaking.ts +0 -1523
  524. package/types/SimpleStakingV2.ts +0 -1427
  525. package/types/SixteenDecimalsTokenMock.ts +0 -1032
  526. package/types/StakersDistribution.ts +0 -949
  527. package/types/Staking.ts +0 -158
  528. package/types/StakingMockFixedAPY.ts +0 -995
  529. package/types/StakingRewardsFixedAPY.ts +0 -428
  530. package/types/SuperGoodDollar.ts +0 -3662
  531. package/types/SuperToken.ts +0 -2434
  532. package/types/SuperfluidToken.ts +0 -951
  533. package/types/SwapHelperTest.ts +0 -120
  534. package/types/TokenInfo.ts +0 -109
  535. package/types/TwentyDecimalsTokenMock.ts +0 -1032
  536. package/types/UBIScheme.ts +0 -1461
  537. package/types/UBISchemeV2.ts +0 -1192
  538. package/types/USDCMock.ts +0 -1031
  539. package/types/UUPSProxiable.ts +0 -183
  540. package/types/UUPSProxy.ts +0 -105
  541. package/types/UUPSUpgradeable.ts +0 -207
  542. package/types/Uniswap.ts +0 -423
  543. package/types/UniswapFactory.ts +0 -106
  544. package/types/UniswapPair.ts +0 -187
  545. package/types/UniswapV2SwapHelper.ts +0 -124
  546. package/types/UpgradableMock.ts +0 -349
  547. package/types/UpgradableMock2.ts +0 -311
  548. package/types/UpgradableMock3.ts +0 -336
  549. package/types/UpgradableMock4.ts +0 -336
  550. package/types/factories/AaveMock__factory.ts +0 -740
  551. package/types/factories/AaveStakingFactory__factory.ts +0 -262
  552. package/types/factories/AaveUSDMockOracle__factory.ts +0 -75
  553. package/types/factories/AccessControlEnumerableUpgradeable__factory.ts +0 -292
  554. package/types/factories/AccessControlUpgradeable__factory.ts +0 -247
  555. package/types/factories/AccessControl__factory.ts +0 -227
  556. package/types/factories/AdminWalletFuse__factory.ts +0 -933
  557. package/types/factories/AdminWallet__factory.ts +0 -865
  558. package/types/factories/AggregatorV3Interface__factory.ts +0 -121
  559. package/types/factories/Avatar__factory.ts +0 -59
  560. package/types/factories/BancorFormula__factory.ts +0 -674
  561. package/types/factories/BaseShareFieldV2__factory.ts +0 -251
  562. package/types/factories/BaseShareField__factory.ts +0 -307
  563. package/types/factories/BatUSDMockOracle__factory.ts +0 -75
  564. package/types/factories/BuyAndBridgeHelper__factory.ts +0 -237
  565. package/types/factories/BuyGDCloneFactory__factory.ts +0 -196
  566. package/types/factories/BuyGDClone__factory.ts +0 -343
  567. package/types/factories/CBATMock__factory.ts +0 -844
  568. package/types/factories/CDAILowWorthMock__factory.ts +0 -834
  569. package/types/factories/CDAIMock__factory.ts +0 -857
  570. package/types/factories/CDAINonMintableMock__factory.ts +0 -834
  571. package/types/factories/CDecimalsMock__factory.ts +0 -844
  572. package/types/factories/CERC20__factory.ts +0 -381
  573. package/types/factories/CSDTMock__factory.ts +0 -844
  574. package/types/factories/CUSDCMock__factory.ts +0 -844
  575. package/types/factories/ClaimersDistribution__factory.ts +0 -430
  576. package/types/factories/CompUSDMockOracle__factory.ts +0 -75
  577. package/types/factories/CompoundStakingFactory__factory.ts +0 -249
  578. package/types/factories/CompoundVotingMachine__factory.ts +0 -1208
  579. package/types/factories/ContextUpgradeable__factory.ts +0 -39
  580. package/types/factories/ContributionCalc__factory.ts +0 -83
  581. package/types/factories/Controller__factory.ts +0 -359
  582. package/types/factories/DAIMock__factory.ts +0 -783
  583. package/types/factories/DAOContract__factory.ts +0 -118
  584. package/types/factories/DAOUpgradeableContract__factory.ts +0 -227
  585. package/types/factories/DaiEthPriceMockOracle__factory.ts +0 -79
  586. package/types/factories/DecimalsMock__factory.ts +0 -755
  587. package/types/factories/DistributionBridgeMock__factory.ts +0 -312
  588. package/types/factories/DistributionHelperTestHelper__factory.ts +0 -1008
  589. package/types/factories/DistributionHelperTest__factory.ts +0 -975
  590. package/types/factories/DistributionHelper__factory.ts +0 -971
  591. package/types/factories/DonationsStaking__factory.ts +0 -580
  592. package/types/factories/EIP712Upgradeable__factory.ts +0 -39
  593. package/types/factories/ERC165Upgradeable__factory.ts +0 -58
  594. package/types/factories/ERC165__factory.ts +0 -39
  595. package/types/factories/ERC1967Proxy__factory.ts +0 -130
  596. package/types/factories/ERC1967UpgradeUpgradeable__factory.ts +0 -88
  597. package/types/factories/ERC1967Upgrade__factory.ts +0 -71
  598. package/types/factories/ERC20BurnableUpgradeable__factory.ts +0 -344
  599. package/types/factories/ERC20PausableUpgradeable__factory.ts +0 -352
  600. package/types/factories/ERC20PermitUpgradeable__factory.ts +0 -388
  601. package/types/factories/ERC20Permit__factory.ts +0 -111
  602. package/types/factories/ERC20PresetMinterPauserUpgradeable__factory.ts +0 -827
  603. package/types/factories/ERC20Upgradeable__factory.ts +0 -345
  604. package/types/factories/ERC20WithTokenInfo__factory.ts +0 -248
  605. package/types/factories/ERC20__factory.ts +0 -285
  606. package/types/factories/ERC677Receiver__factory.ts +0 -55
  607. package/types/factories/ERC677__factory.ts +0 -75
  608. package/types/factories/EthUSDMockOracle__factory.ts +0 -108
  609. package/types/factories/EventsEmitter__factory.ts +0 -84
  610. package/types/factories/ExchangeHelper__factory.ts +0 -427
  611. package/types/factories/Faucet__factory.ts +0 -826
  612. package/types/factories/FeesFormulaMock__factory.ts +0 -132
  613. package/types/factories/FuseFaucetV2__factory.ts +0 -592
  614. package/types/factories/FuseFaucet__factory.ts +0 -386
  615. package/types/factories/FuseStakingV3__factory.ts +0 -806
  616. package/types/factories/GDFaucet__factory.ts +0 -188
  617. package/types/factories/GReputation__factory.ts +0 -1490
  618. package/types/factories/GasPriceMockOracle__factory.ts +0 -88
  619. package/types/factories/GlobalConstraintInterface__factory.ts +0 -72
  620. package/types/factories/GoodAaveStakingV2__factory.ts +0 -1240
  621. package/types/factories/GoodAaveStaking__factory.ts +0 -1276
  622. package/types/factories/GoodCompoundStakingTest__factory.ts +0 -1470
  623. package/types/factories/GoodCompoundStakingV2__factory.ts +0 -1182
  624. package/types/factories/GoodCompoundStaking__factory.ts +0 -1316
  625. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +0 -1330
  626. package/types/factories/GoodDollarStakingMock__factory.ts +0 -1497
  627. package/types/factories/GoodDollarStaking__factory.ts +0 -1469
  628. package/types/factories/GoodFundManagerTest__factory.ts +0 -801
  629. package/types/factories/GoodFundManager__factory.ts +0 -759
  630. package/types/factories/GoodMarketMaker__factory.ts +0 -687
  631. package/types/factories/GoodReserveCDai__factory.ts +0 -1489
  632. package/types/factories/GovernanceStaking__factory.ts +0 -948
  633. package/types/factories/IAccessControlEnumerableUpgradeable__factory.ts +0 -247
  634. package/types/factories/IAccessControlUpgradeable__factory.ts +0 -202
  635. package/types/factories/IAccessControl__factory.ts +0 -198
  636. package/types/factories/IAdminWallet__factory.ts +0 -75
  637. package/types/factories/IBeacon__factory.ts +0 -36
  638. package/types/factories/IConsensus__factory.ts +0 -116
  639. package/types/factories/IDonationStaking__factory.ts +0 -33
  640. package/types/factories/IERC1271Upgradeable__factory.ts +0 -50
  641. package/types/factories/IERC165Upgradeable__factory.ts +0 -45
  642. package/types/factories/IERC165__factory.ts +0 -42
  643. package/types/factories/IERC1820Registry__factory.ts +0 -239
  644. package/types/factories/IERC1822ProxiableUpgradeable__factory.ts +0 -43
  645. package/types/factories/IERC1822Proxiable__factory.ts +0 -39
  646. package/types/factories/IERC20MetadataUpgradeable__factory.ts +0 -252
  647. package/types/factories/IERC20Metadata__factory.ts +0 -248
  648. package/types/factories/IERC20PermitUpgradeable__factory.ts +0 -105
  649. package/types/factories/IERC20Permit__factory.ts +0 -98
  650. package/types/factories/IERC20Upgradeable__factory.ts +0 -209
  651. package/types/factories/IERC20__factory.ts +0 -203
  652. package/types/factories/IERC2917__factory.ts +0 -493
  653. package/types/factories/IERC777Recipient__factory.ts +0 -64
  654. package/types/factories/IERC777Sender__factory.ts +0 -61
  655. package/types/factories/IERC777__factory.ts +0 -414
  656. package/types/factories/IFeesFormula__factory.ts +0 -57
  657. package/types/factories/IFirstClaimPool__factory.ts +0 -65
  658. package/types/factories/IGoodDollarCustom__factory.ts +0 -370
  659. package/types/factories/IGoodDollarStakingTest__factory.ts +0 -68
  660. package/types/factories/IGoodDollar__factory.ts +0 -595
  661. package/types/factories/IGoodStaking__factory.ts +0 -175
  662. package/types/factories/IGovernanceStaking__factory.ts +0 -39
  663. package/types/factories/IHasRouter__factory.ts +0 -36
  664. package/types/factories/IIdentityV2__factory.ts +0 -331
  665. package/types/factories/IIdentity__factory.ts +0 -284
  666. package/types/factories/ILayerZeroFeeEstimator__factory.ts +0 -79
  667. package/types/factories/IMessagePassingBridge__factory.ts +0 -446
  668. package/types/factories/IMultichainRouter__factory.ts +0 -82
  669. package/types/factories/INameService__factory.ts +0 -42
  670. package/types/factories/IStakingUpgrade__factory.ts +0 -50
  671. package/types/factories/IStaticOracle__factory.ts +0 -407
  672. package/types/factories/ISuperAgreement__factory.ts +0 -78
  673. package/types/factories/ISuperApp__factory.ts +0 -272
  674. package/types/factories/ISuperGoodDollar__factory.ts +0 -2147
  675. package/types/factories/ISuperTokenFactory__factory.ts +0 -271
  676. package/types/factories/ISuperToken__factory.ts +0 -1682
  677. package/types/factories/ISuperfluidGovernance__factory.ts +0 -264
  678. package/types/factories/ISuperfluidToken__factory.ts +0 -697
  679. package/types/factories/ISuperfluid__factory.ts +0 -1143
  680. package/types/factories/ISwapRouter__factory.ts +0 -217
  681. package/types/factories/IUBIScheme__factory.ts +0 -68
  682. package/types/factories/IUniswapV3Factory__factory.ts +0 -222
  683. package/types/factories/IWrapper__factory.ts +0 -71
  684. package/types/factories/IdentityFix__factory.ts +0 -110
  685. package/types/factories/IdentityMock__factory.ts +0 -346
  686. package/types/factories/IdentityV2__factory.ts +0 -1147
  687. package/types/factories/IncentiveControllerMock__factory.ts +0 -166
  688. package/types/factories/Initializable__factory.ts +0 -36
  689. package/types/factories/IntVoteInterface__factory.ts +0 -349
  690. package/types/factories/InvitesFuseV2__factory.ts +0 -571
  691. package/types/factories/InvitesV1__factory.ts +0 -553
  692. package/types/factories/InvitesV2__factory.ts +0 -688
  693. package/types/factories/LendingPoolMock__factory.ts +0 -927
  694. package/types/factories/MultiBaseGovernanceShareField__factory.ts +0 -240
  695. package/types/factories/Multicall__factory.ts +0 -215
  696. package/types/factories/MultichainBridgeHelper__factory.ts +0 -134
  697. package/types/factories/MultichainFeeFormula__factory.ts +0 -113
  698. package/types/factories/MultichainRouterMock__factory.ts +0 -141
  699. package/types/factories/NameService__factory.ts +0 -290
  700. package/types/factories/OldMarketMaker__factory.ts +0 -62
  701. package/types/factories/OneTimePaymentsV2__factory.ts +0 -369
  702. package/types/factories/OneTimePayments__factory.ts +0 -323
  703. package/types/factories/OverMintTesterRegularStake__factory.ts +0 -156
  704. package/types/factories/OverMintTester__factory.ts +0 -152
  705. package/types/factories/OwnableUpgradeable__factory.ts +0 -91
  706. package/types/factories/PausableControl__factory.ts +0 -84
  707. package/types/factories/PausableUpgradeable__factory.ts +0 -78
  708. package/types/factories/Pausable__factory.ts +0 -62
  709. package/types/factories/PayableMock__factory.ts +0 -66
  710. package/types/factories/PegSwap__factory.ts +0 -46
  711. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +0 -146
  712. package/types/factories/ProtocolUpgradeFuse__factory.ts +0 -142
  713. package/types/factories/ProtocolUpgradeRecover__factory.ts +0 -184
  714. package/types/factories/ProtocolUpgrade__factory.ts +0 -207
  715. package/types/factories/ProxyAdmin__factory.ts +0 -128
  716. package/types/factories/ProxyFactory1967__factory.ts +0 -223
  717. package/types/factories/Proxy__factory.ts +0 -28
  718. package/types/factories/ReentrancyGuardUpgradeable__factory.ts +0 -43
  719. package/types/factories/ReputationInterface__factory.ts +0 -168
  720. package/types/factories/ReputationTestHelper__factory.ts +0 -141
  721. package/types/factories/Reputation__factory.ts +0 -693
  722. package/types/factories/Reserve__factory.ts +0 -52
  723. package/types/factories/RewardsMinter__factory.ts +0 -47
  724. package/types/factories/SchemeRegistrar__factory.ts +0 -114
  725. package/types/factories/SelfApprove__factory.ts +0 -46
  726. package/types/factories/SimpleStakingV2__factory.ts +0 -999
  727. package/types/factories/SimpleStaking__factory.ts +0 -1058
  728. package/types/factories/SixteenDecimalsTokenMock__factory.ts +0 -747
  729. package/types/factories/StakersDistribution__factory.ts +0 -617
  730. package/types/factories/StakingMockFixedAPY__factory.ts +0 -745
  731. package/types/factories/StakingRewardsFixedAPY__factory.ts +0 -287
  732. package/types/factories/Staking__factory.ts +0 -74
  733. package/types/factories/SuperGoodDollar__factory.ts +0 -2680
  734. package/types/factories/SuperToken__factory.ts +0 -1809
  735. package/types/factories/SuperfluidToken__factory.ts +0 -697
  736. package/types/factories/SwapHelperTest__factory.ts +0 -96
  737. package/types/factories/TokenInfo__factory.ts +0 -62
  738. package/types/factories/TwentyDecimalsTokenMock__factory.ts +0 -747
  739. package/types/factories/UBISchemeV2__factory.ts +0 -837
  740. package/types/factories/UBIScheme__factory.ts +0 -1034
  741. package/types/factories/USDCMock__factory.ts +0 -740
  742. package/types/factories/UUPSProxiable__factory.ts +0 -101
  743. package/types/factories/UUPSProxy__factory.ts +0 -80
  744. package/types/factories/UUPSUpgradeable__factory.ts +0 -128
  745. package/types/factories/UniswapFactory__factory.ts +0 -50
  746. package/types/factories/UniswapPair__factory.ts +0 -117
  747. package/types/factories/UniswapV2SwapHelper__factory.ts +0 -101
  748. package/types/factories/Uniswap__factory.ts +0 -272
  749. package/types/factories/UpgradableMock2__factory.ts +0 -236
  750. package/types/factories/UpgradableMock3__factory.ts +0 -249
  751. package/types/factories/UpgradableMock4__factory.ts +0 -249
  752. package/types/factories/UpgradableMock__factory.ts +0 -262
@@ -0,0 +1,32 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "UUPSProxy",
4
+ "sourceName": "contracts/token/superfluid/UUPSProxy.sol",
5
+ "abi": [
6
+ {
7
+ "stateMutability": "payable",
8
+ "type": "fallback"
9
+ },
10
+ {
11
+ "inputs": [
12
+ {
13
+ "internalType": "address",
14
+ "name": "initialAddress",
15
+ "type": "address"
16
+ }
17
+ ],
18
+ "name": "initializeProxy",
19
+ "outputs": [],
20
+ "stateMutability": "nonpayable",
21
+ "type": "function"
22
+ },
23
+ {
24
+ "stateMutability": "payable",
25
+ "type": "receive"
26
+ }
27
+ ],
28
+ "bytecode": "0x608060405234801561001057600080fd5b50610205806100206000396000f3fe6080604052600436106100225760003560e01c80634a0687ef1461003957610031565b366100315761002f610059565b005b61002f610059565b34801561004557600080fd5b5061002f61005436600461017f565b61006b565b610069610064610139565b610148565b565b6001600160a01b0381166100c05760405162461bcd60e51b81526020600482015260176024820152765555505350726f78793a207a65726f206164647265737360481b60448201526064015b60405180910390fd5b60006100ca61016c565b6001600160a01b0316146101205760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100b7565b610136816000805160206101b083398151915255565b50565b600061014361016c565b905090565b3660008037600080366000845af43d6000803e808015610167573d6000f35b3d6000fd5b6000805160206101b08339815191525490565b60006020828403121561019157600080fd5b81356001600160a01b03811681146101a857600080fd5b939250505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca264697066735822122054303c95e3083467af14f8e45d0e4948671519cda9ee34d9041f82134179ec4464736f6c63430008100033",
29
+ "deployedBytecode": "0x6080604052600436106100225760003560e01c80634a0687ef1461003957610031565b366100315761002f610059565b005b61002f610059565b34801561004557600080fd5b5061002f61005436600461017f565b61006b565b610069610064610139565b610148565b565b6001600160a01b0381166100c05760405162461bcd60e51b81526020600482015260176024820152765555505350726f78793a207a65726f206164647265737360481b60448201526064015b60405180910390fd5b60006100ca61016c565b6001600160a01b0316146101205760405162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a6564000060448201526064016100b7565b610136816000805160206101b083398151915255565b50565b600061014361016c565b905090565b3660008037600080366000845af43d6000803e808015610167573d6000f35b3d6000fd5b6000805160206101b08339815191525490565b60006020828403121561019157600080fd5b81356001600160a01b03811681146101a857600080fd5b939250505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca264697066735822122054303c95e3083467af14f8e45d0e4948671519cda9ee34d9041f82134179ec4464736f6c63430008100033",
30
+ "linkReferences": {},
31
+ "deployedLinkReferences": {}
32
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "ERC1967Proxy",
4
+ "sourceName": "contracts/utils/ProxyFactory1967.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "address",
12
+ "name": "previousAdmin",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "address",
18
+ "name": "newAdmin",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "name": "AdminChanged",
23
+ "type": "event"
24
+ },
25
+ {
26
+ "anonymous": false,
27
+ "inputs": [
28
+ {
29
+ "indexed": true,
30
+ "internalType": "address",
31
+ "name": "beacon",
32
+ "type": "address"
33
+ }
34
+ ],
35
+ "name": "BeaconUpgraded",
36
+ "type": "event"
37
+ },
38
+ {
39
+ "anonymous": false,
40
+ "inputs": [
41
+ {
42
+ "indexed": true,
43
+ "internalType": "address",
44
+ "name": "implementation",
45
+ "type": "address"
46
+ }
47
+ ],
48
+ "name": "Upgraded",
49
+ "type": "event"
50
+ },
51
+ {
52
+ "stateMutability": "payable",
53
+ "type": "fallback"
54
+ },
55
+ {
56
+ "inputs": [
57
+ {
58
+ "internalType": "address",
59
+ "name": "_logic",
60
+ "type": "address"
61
+ },
62
+ {
63
+ "internalType": "bytes",
64
+ "name": "_data",
65
+ "type": "bytes"
66
+ }
67
+ ],
68
+ "name": "initialize",
69
+ "outputs": [],
70
+ "stateMutability": "payable",
71
+ "type": "function"
72
+ },
73
+ {
74
+ "stateMutability": "payable",
75
+ "type": "receive"
76
+ }
77
+ ],
78
+ "bytecode": "0x608060405234801561001057600080fd5b506105a6806100206000396000f3fe6080604052600436106100225760003560e01c8063d1f578941461003957610031565b366100315761002f61004c565b005b61002f61004c565b61002f6100473660046103ef565b61005e565b61005c61005761013d565b61014c565b565b6000610068610170565b6001600160a01b0316146100b15760405162461bcd60e51b815260206004820152600b60248201526a1a5b9a5d1a585b1a5e995960aa1b60448201526064015b60405180910390fd5b6100dc60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd61047f565b60008051602061052a833981519152146100f8576100f86104a0565b6101388383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925061018c915050565b505050565b6000610147610170565b905090565b3660008037600080366000845af43d6000803e80801561016b573d6000f35b3d6000fd5b60008051602061052a833981519152546001600160a01b031690565b610195836101b7565b6000825111806101a25750805b15610138576101b183836101f7565b50505050565b6101c081610225565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061021c838360405180606001604052806027815260200161054a602791396102bf565b90505b92915050565b61022e81610337565b6102905760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016100a8565b60008051602061052a83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b0316856040516102dc91906104da565b600060405180830381855af49150503d8060008114610317576040519150601f19603f3d011682016040523d82523d6000602084013e61031c565b606091505b509150915061032d86838387610346565b9695505050505050565b6001600160a01b03163b151590565b606083156103b35782516000036103ac5761036085610337565b6103ac5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016100a8565b50816103bd565b6103bd83836103c5565b949350505050565b8151156103d55781518083602001fd5b8060405162461bcd60e51b81526004016100a891906104f6565b60008060006040848603121561040457600080fd5b83356001600160a01b038116811461041b57600080fd5b925060208401356001600160401b038082111561043757600080fd5b818601915086601f83011261044b57600080fd5b81358181111561045a57600080fd5b87602082850101111561046c57600080fd5b6020830194508093505050509250925092565b8181038181111561021f57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fd5b60005b838110156104d15781810151838201526020016104b9565b50506000910152565b600082516104ec8184602087016104b6565b9190910192915050565b60208152600082518060208401526105158160408501602087016104b6565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e61bf4b283e7c7127b63eb541e464310619a8e941077fd50b9791d417ed8557b64736f6c63430008100033",
79
+ "deployedBytecode": "0x6080604052600436106100225760003560e01c8063d1f578941461003957610031565b366100315761002f61004c565b005b61002f61004c565b61002f6100473660046103ef565b61005e565b61005c61005761013d565b61014c565b565b6000610068610170565b6001600160a01b0316146100b15760405162461bcd60e51b815260206004820152600b60248201526a1a5b9a5d1a585b1a5e995960aa1b60448201526064015b60405180910390fd5b6100dc60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd61047f565b60008051602061052a833981519152146100f8576100f86104a0565b6101388383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925061018c915050565b505050565b6000610147610170565b905090565b3660008037600080366000845af43d6000803e80801561016b573d6000f35b3d6000fd5b60008051602061052a833981519152546001600160a01b031690565b610195836101b7565b6000825111806101a25750805b15610138576101b183836101f7565b50505050565b6101c081610225565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061021c838360405180606001604052806027815260200161054a602791396102bf565b90505b92915050565b61022e81610337565b6102905760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016100a8565b60008051602061052a83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b0316856040516102dc91906104da565b600060405180830381855af49150503d8060008114610317576040519150601f19603f3d011682016040523d82523d6000602084013e61031c565b606091505b509150915061032d86838387610346565b9695505050505050565b6001600160a01b03163b151590565b606083156103b35782516000036103ac5761036085610337565b6103ac5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016100a8565b50816103bd565b6103bd83836103c5565b949350505050565b8151156103d55781518083602001fd5b8060405162461bcd60e51b81526004016100a891906104f6565b60008060006040848603121561040457600080fd5b83356001600160a01b038116811461041b57600080fd5b925060208401356001600160401b038082111561043757600080fd5b818601915086601f83011261044b57600080fd5b81358181111561045a57600080fd5b87602082850101111561046c57600080fd5b6020830194508093505050509250925092565b8181038181111561021f57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052600160045260246000fd5b60005b838110156104d15781810151838201526020016104b9565b50506000910152565b600082516104ec8184602087016104b6565b9190910192915050565b60208152600082518060208401526105158160408501602087016104b6565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e61bf4b283e7c7127b63eb541e464310619a8e941077fd50b9791d417ed8557b64736f6c63430008100033",
80
+ "linkReferences": {},
81
+ "deployedLinkReferences": {}
82
+ }
@@ -0,0 +1,6 @@
1
+ import "@openzeppelin/hardhat-upgrades";
2
+ export declare type TokenArgs = [string, string];
3
+ export declare const deploySuperGoodDollar: (signer: any, sfContracts: any, tokenArgs?: any[]) => Promise<{
4
+ GoodDollar: import("ethers").Contract;
5
+ Identity: import("ethers").Contract;
6
+ }>;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.deploySuperGoodDollar = void 0;
7
+ require("@openzeppelin/hardhat-upgrades");
8
+ const hardhat_1 = require("hardhat");
9
+ const SuperGoodDollar_json_1 = __importDefault(require("../artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json"));
10
+ const UUPSProxy_json_1 = __importDefault(require("../artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json"));
11
+ const IdentityV2_json_1 = __importDefault(require("../artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json"));
12
+ const FeeFormula_json_1 = __importDefault(require("@gooddollar/goodcontracts/build/contracts/FeeFormula.json"));
13
+ const ERC1967Proxy_json_1 = __importDefault(require("../artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json"));
14
+ const deploySuperGoodDollar = async (signer, sfContracts, tokenArgs = []) => {
15
+ const IdentityFactory = new hardhat_1.ethers.ContractFactory(IdentityV2_json_1.default.abi, IdentityV2_json_1.default.bytecode, signer);
16
+ const FeeFormulaFactory = new hardhat_1.ethers.ContractFactory(FeeFormula_json_1.default.abi, FeeFormula_json_1.default.bytecode, signer);
17
+ const FeeFormula = await FeeFormulaFactory.deploy(0);
18
+ const proxyFactory = new hardhat_1.ethers.ContractFactory(ERC1967Proxy_json_1.default.abi, ERC1967Proxy_json_1.default.bytecode, signer);
19
+ const idProxy = await proxyFactory.deploy();
20
+ const idLogic = await IdentityFactory.deploy();
21
+ const encodedInit = idLogic.interface.encodeFunctionData("initialize", [await signer.getAddress(), hardhat_1.ethers.constants.AddressZero]);
22
+ await idProxy.initialize(idLogic.address, encodedInit);
23
+ // const Identity = await upgrades.deployProxy(
24
+ // IdentityFactory,
25
+ // [await signer.getAddress(), ethers.constants.AddressZero],
26
+ // { kind: "uups" }
27
+ // );
28
+ const initializeArgs = [
29
+ "GoodDollar",
30
+ "G$",
31
+ 0,
32
+ FeeFormula.address,
33
+ idProxy.address,
34
+ hardhat_1.ethers.constants.AddressZero,
35
+ await signer.getAddress(), ...tokenArgs
36
+ ];
37
+ const SuperGoodDollarFactory = new hardhat_1.ethers.ContractFactory(SuperGoodDollar_json_1.default.abi, SuperGoodDollar_json_1.default.bytecode, signer);
38
+ const SuperGoodDollar = await SuperGoodDollarFactory.deploy(sfContracts.host);
39
+ const GoodDollarProxyFactory = new hardhat_1.ethers.ContractFactory(UUPSProxy_json_1.default.abi, UUPSProxy_json_1.default.bytecode, signer);
40
+ const GoodDollarProxy = await GoodDollarProxyFactory.deploy();
41
+ await GoodDollarProxy.initializeProxy(SuperGoodDollar.address);
42
+ const GoodDollar = SuperGoodDollar.attach(GoodDollarProxy.address);
43
+ await GoodDollar["initialize(string,string,uint256,address,address,address,address)"](...initializeArgs);
44
+ return { GoodDollar, Identity: idLogic.attach(idProxy.address) };
45
+ };
46
+ exports.deploySuperGoodDollar = deploySuperGoodDollar;
@@ -0,0 +1 @@
1
+ export * from "./deploySuperGoodDollar";
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./deploySuperGoodDollar"), exports);
package/hardhat.config.ts CHANGED
@@ -29,7 +29,7 @@ envEnc.config();
29
29
  config();
30
30
 
31
31
  const mnemonic = process.env.MNEMONIC || "test test test test test test test test test test test junk";
32
- const deployerPrivateKey = process.env.PRIVATE_KEY || ethers.utils.hexZeroPad("0x11", 32);
32
+ const deployerPrivateKey = process.env.ADMIN_KEY || ethers.utils.hexZeroPad("0x11", 32);
33
33
  const infura_api = process.env.INFURA_API;
34
34
  const alchemy_key = process.env.ALCHEMY_KEY;
35
35
  const etherscan_key = process.env.ETHERSCAN_KEY;
@@ -41,7 +41,7 @@ const MAINNET_URL = "https://mainnet.infura.io/v3/" + infura_api;
41
41
 
42
42
  const xdc = {
43
43
  accounts: { mnemonic },
44
- url: "https://rpc.ankr.com/xdc/ef07ba6590dc46db9275bba237aed203ed6d5fb3e3203ff237a82a841f75b2ce",
44
+ url: "https://rpc.xdc.org",
45
45
  gas: 3000000,
46
46
  gasPrice: 12.5e9,
47
47
  chainId: 50
@@ -65,15 +65,7 @@ const hhconfig: HardhatUserConfig = {
65
65
  enabled: true
66
66
  },
67
67
  etherscan: {
68
- apiKey: {
69
- mainnet: etherscan_key,
70
- txdc: etherscan_key,
71
- xdc: etherscan_key,
72
- celo: etherscan_key,
73
- alfajores: celoscan_key,
74
- base: basescan_key,
75
- fuse: etherscan_key
76
- },
68
+ apiKey: etherscan_key,
77
69
  customChains: [
78
70
  {
79
71
  network: "fuse",
@@ -133,7 +125,8 @@ const hhconfig: HardhatUserConfig = {
133
125
  initialDate: "2021-12-01", //required for DAO tests like guardian
134
126
  forking: process.env.FORK_CHAIN_ID && {
135
127
  url: "https://eth-mainnet.alchemyapi.io/v2/" + process.env.ALCHEMY_KEY
136
- }
128
+ },
129
+ blockGasLimit: 100000000429720,
137
130
  },
138
131
  fork: {
139
132
  chainId: 1,
@@ -155,6 +148,7 @@ const hhconfig: HardhatUserConfig = {
155
148
  },
156
149
  dapptest: {
157
150
  gasPrice: 1000000000, //1 gwei
151
+ blockGasLimit: 100000000429720,
158
152
  url: "http://127.0.0.1:8545/"
159
153
  },
160
154
  "dapptest-mainnet": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddollar/goodprotocol",
3
- "version": "2.1.1",
3
+ "version": "2.1.3",
4
4
  "description": "GoodDollar Protocol",
5
5
  "engines": {
6
6
  "node": ">=16.x"
@@ -684,6 +684,8 @@
684
684
  "AdminWallet": "0x66fc1bE551f752706130b6f54d84141F8c2Ae8Bb",
685
685
  "Faucet": "0x7344Da1Be296f03fbb8082aDaC5696058B5a9bd9",
686
686
  "Invites": "0x6bd698566632bf2e81e2278f1656CB24aAF06D2e",
687
- "UBIScheme": "0x22867567E2D80f2049200E25C6F31CB6Ec2F0faf"
687
+ "UBIScheme": "0x22867567E2D80f2049200E25C6F31CB6Ec2F0faf",
688
+ "MpbBridge": "0xa3247276DbCC76Dd7705273f766eB3E8a5ecF4a5",
689
+ "BulkWhitelist": "0xe8861A20452Db53dF685F1d9e6B7017de3DB0E46"
688
690
  }
689
691
  }
@@ -0,0 +1,31 @@
1
+ import farmed from "../farming.json";
2
+ import { ethers, network } from "hardhat";
3
+ import { chunk } from "lodash";
4
+ import contracts from "../releases/deployment.json";
5
+ import { bulkIsWhitelisted } from "./utils";
6
+ const main = async () => {
7
+ const signer = (await ethers.getSigners())[0];
8
+
9
+ console.log("signer", signer.address);
10
+ const whitelist = await ethers.getContractAt("BulkWhitelist", contracts[network.name].BulkWhitelist);
11
+ const chunks = chunk(farmed, 300);
12
+ for (let batch of chunks) {
13
+ console.log("whitelisting batch of", batch.length, batch[0], batch[batch.length - 1]);
14
+ const res = await (await whitelist.connect(signer).removeWhitelisted(batch, { gasLimit: 25000000 })).wait();
15
+ console.log("tx:", res.transactionHash);
16
+ }
17
+ };
18
+
19
+ const checkReVerified = async () => {
20
+ const chunks = chunk(farmed, 300);
21
+ let total = 0;
22
+ for (let batch of chunks) {
23
+ console.log("check whitelisting batch of", batch.length, batch[0], batch[batch.length - 1]);
24
+ const res = await bulkIsWhitelisted(batch);
25
+ console.log(`${res.length}/${batch.length}`);
26
+ total += res.length;
27
+ }
28
+ console.log(`total: ${total}/${farmed.length}`);
29
+ };
30
+ checkReVerified();
31
+ // main().catch(console.log);
@@ -5,7 +5,7 @@ import { TransactionResponse, TransactionReceipt } from "@ethersproject/provider
5
5
  import { getImplementationAddress } from "@openzeppelin/upgrades-core";
6
6
 
7
7
  import SafeApiKit from "@safe-global/api-kit";
8
- import Safe from "@safe-global/protocol-kit";
8
+ import Safe, { SafeTransactionOptionalProps } from "@safe-global/protocol-kit";
9
9
  import { MetaTransactionData } from "@safe-global/types-kit";
10
10
 
11
11
  import util from "util";
@@ -357,6 +357,7 @@ export const executeViaSafe = async (
357
357
  functionInputs,
358
358
  safeAddress: string,
359
359
  safeSignerOrNetwork?: Signer | string,
360
+ safeOptions: SafeTransactionOptionalProps = {},
360
361
  isSimulation = false
361
362
  ) => {
362
363
  if (typeof safeSignerOrNetwork !== "object" && !process.env.SAFEOWNER_PRIVATE_KEY) {
@@ -387,6 +388,10 @@ export const executeViaSafe = async (
387
388
  // new ethers.providers.JsonRpcProvider("https://rpc.fuse.io")
388
389
  // );
389
390
  break;
391
+ case "xdc":
392
+ chainId = 50;
393
+ provider = "https://rpc.xdcrpc.com";
394
+ break;
390
395
  }
391
396
  } else if (safeSignerOrNetwork) {
392
397
  // safeSigner = safeSignerOrNetwork as any;
@@ -15,6 +15,7 @@
15
15
  // deploy distribution helper
16
16
  // transfer usdc to xdc reserve
17
17
  // update celo reserve parameters accordingly
18
+ // upgrade celo's distribution helper to genericdistributionhelper (simulate it is working)
18
19
 
19
20
  import { network, ethers, upgrades } from "hardhat";
20
21
  import { reset } from "@nomicfoundation/hardhat-network-helpers";
@@ -30,12 +31,14 @@ import {
30
31
 
31
32
  import dao from "../../releases/deployment.json";
32
33
  import { Controller, IdentityV3, IGoodDollar, IMessagePassingBridge, UBISchemeV2 } from "../../types";
34
+ import { upgrade } from "./gip-15";
33
35
  let { name: networkName } = network;
34
36
  const isSimulation = network.name === "hardhat" || network.name === "fork" || network.name === "localhost";
35
37
  const bridgeUpgradeImpl = {
36
- "production-celo": "0x7bDaF2Fb332761b2a6A565a43ccB0ACfC36d2C3D",
37
- production: "0x6f252280eB53df085eAD27BBe55d615741A8268D",
38
- "production-mainnet": "0x7baFe060A37E31E707b8B28a90a36731ee99aFBa"
38
+ "production-celo": "0xF3eAB7018d74E7Df95A5d8dC70987C0539bDF48f",
39
+ production: "0xFB62aA509a7B260b6697B671C969a184d6c39E90",
40
+ "production-mainnet": "0x12ab702f015D3302f3cc0c4AbA0626A127D06A07",
41
+ "production-xdc": "0xe4CFA18A3d0a7d77fAA42961ee943c9221d61937"
39
42
  };
40
43
  export const upgradeCeloStep1 = async (network, checksOnly) => {
41
44
  let [root] = await ethers.getSigners();
@@ -177,6 +180,297 @@ export const upgradeCeloStep1 = async (network, checksOnly) => {
177
180
  console.log("UBI claim from connected account tx:", claimTx.events);
178
181
  }
179
182
  };
183
+ export const upgradeCeloFix = async (network, checksOnly) => {
184
+ let [root] = await ethers.getSigners();
185
+
186
+ const isProduction = networkName.includes("production");
187
+
188
+ if (isProduction) verifyProductionSigner(root);
189
+
190
+ let networkEnv = networkName;
191
+ let guardian = root;
192
+ if (isSimulation) {
193
+ networkEnv = network;
194
+ }
195
+
196
+ let release: { [key: string]: any } = dao[networkEnv];
197
+
198
+ console.log("signer:", root.address, { networkEnv, isSimulation, isProduction, release });
199
+
200
+ if (isSimulation) {
201
+ networkEnv = network;
202
+ guardian = await ethers.getImpersonatedSigner(release.GuardiansSafe);
203
+
204
+ await root.sendTransaction({
205
+ value: ethers.utils.parseEther("1"),
206
+ to: release.GuardiansSafe
207
+ });
208
+ }
209
+
210
+ const bridgeImpl = bridgeUpgradeImpl[networkEnv];
211
+ const toBurn = "5515965554075495700269228267";
212
+ const proposalActions = [
213
+ [release.MpbBridge, "upgradeTo(address)", ethers.utils.defaultAbiCoder.encode(["address"], [bridgeImpl]), "0"], //upgrade bridge
214
+ [release.GoodDollar, "burn(uint256)", ethers.utils.defaultAbiCoder.encode(["uint256"], [toBurn.toString()]), "0"] //burn locked supply on celo bridge
215
+ ];
216
+
217
+ console.log({
218
+ networkEnv,
219
+ guardian: guardian.address,
220
+ isSimulation,
221
+ isProduction,
222
+ release
223
+ });
224
+
225
+ const proposalContracts = proposalActions.map(a => a[0]);
226
+ const proposalFunctionSignatures = proposalActions.map(a => a[1]);
227
+ const proposalFunctionInputs = proposalActions.map(a => a[2]);
228
+ const proposalEthValues = proposalActions.map(a => a[3]);
229
+ if (isProduction && !checksOnly) {
230
+ await executeViaSafe(
231
+ proposalContracts,
232
+ proposalEthValues,
233
+ proposalFunctionSignatures,
234
+ proposalFunctionInputs,
235
+ release.GuardiansSafe,
236
+ "celo",
237
+ { nonce: 5 }
238
+ );
239
+ } else if (!checksOnly) {
240
+ await executeViaGuardian(
241
+ proposalContracts,
242
+ proposalEthValues,
243
+ proposalFunctionSignatures,
244
+ proposalFunctionInputs,
245
+ guardian,
246
+ networkEnv
247
+ );
248
+ }
249
+ };
250
+ export const upgradeXdcFix = async (network, checksOnly) => {
251
+ let [root] = await ethers.getSigners();
252
+
253
+ const isProduction = networkName.includes("production");
254
+
255
+ if (isProduction) verifyProductionSigner(root);
256
+
257
+ let networkEnv = networkName;
258
+ let guardian = root;
259
+ if (isSimulation) {
260
+ networkEnv = network;
261
+ }
262
+
263
+ let release: { [key: string]: any } = dao[networkEnv];
264
+
265
+ console.log("signer:", root.address, { networkEnv, isSimulation, isProduction, release });
266
+
267
+ if (isSimulation) {
268
+ networkEnv = network;
269
+ guardian = await ethers.getImpersonatedSigner(release.GuardiansSafe);
270
+
271
+ await root.sendTransaction({
272
+ value: ethers.utils.parseEther("1"),
273
+ to: release.GuardiansSafe
274
+ });
275
+ }
276
+
277
+ const bridgeImpl = bridgeUpgradeImpl[networkEnv];
278
+ const proposalActions = [
279
+ [release.MpbBridge, "upgradeTo(address)", ethers.utils.defaultAbiCoder.encode(["address"], [bridgeImpl]), "0"] //upgrade bridge
280
+ ];
281
+
282
+ console.log({
283
+ networkEnv,
284
+ guardian: guardian.address,
285
+ isSimulation,
286
+ isProduction,
287
+ release
288
+ });
289
+
290
+ const proposalContracts = proposalActions.map(a => a[0]);
291
+ const proposalFunctionSignatures = proposalActions.map(a => a[1]);
292
+ const proposalFunctionInputs = proposalActions.map(a => a[2]);
293
+ const proposalEthValues = proposalActions.map(a => a[3]);
294
+ if (isProduction && !checksOnly) {
295
+ await executeViaSafe(
296
+ proposalContracts,
297
+ proposalEthValues,
298
+ proposalFunctionSignatures,
299
+ proposalFunctionInputs,
300
+ release.GuardiansSafe,
301
+ "xdc"
302
+ );
303
+ } else if (!checksOnly) {
304
+ await executeViaGuardian(
305
+ proposalContracts,
306
+ proposalEthValues,
307
+ proposalFunctionSignatures,
308
+ proposalFunctionInputs,
309
+ guardian,
310
+ networkEnv
311
+ );
312
+ }
313
+ };
314
+ export const upgradeFuseFix = async (network, checksOnly) => {
315
+ let [root] = await ethers.getSigners();
316
+
317
+ const isProduction = networkName.includes("production");
318
+
319
+ if (isProduction) verifyProductionSigner(root);
320
+
321
+ let networkEnv = networkName;
322
+ let guardian = root;
323
+ if (isSimulation) {
324
+ networkEnv = network;
325
+ }
326
+
327
+ let release: { [key: string]: any } = dao[networkEnv];
328
+
329
+ console.log("signer:", root.address, { networkEnv, isSimulation, isProduction, release });
330
+
331
+ if (isSimulation) {
332
+ networkEnv = network;
333
+ guardian = await ethers.getImpersonatedSigner(release.GuardiansSafe);
334
+
335
+ await root.sendTransaction({
336
+ value: ethers.utils.parseEther("1"),
337
+ to: release.GuardiansSafe
338
+ });
339
+ }
340
+
341
+ const bridgeImpl = bridgeUpgradeImpl[networkEnv];
342
+ const proposalActions = [
343
+ [release.MpbBridge, "upgradeTo(address)", ethers.utils.defaultAbiCoder.encode(["address"], [bridgeImpl]), "0"] //upgrade bridge
344
+ ];
345
+
346
+ console.log({
347
+ networkEnv,
348
+ guardian: guardian.address,
349
+ isSimulation,
350
+ isProduction,
351
+ release
352
+ });
353
+
354
+ const proposalContracts = proposalActions.map(a => a[0]);
355
+ const proposalFunctionSignatures = proposalActions.map(a => a[1]);
356
+ const proposalFunctionInputs = proposalActions.map(a => a[2]);
357
+ const proposalEthValues = proposalActions.map(a => a[3]);
358
+ if (isProduction && !checksOnly) {
359
+ await executeViaSafe(
360
+ proposalContracts,
361
+ proposalEthValues,
362
+ proposalFunctionSignatures,
363
+ proposalFunctionInputs,
364
+ release.GuardiansSafe,
365
+ "fuse"
366
+ );
367
+ } else if (!checksOnly) {
368
+ await executeViaGuardian(
369
+ proposalContracts,
370
+ proposalEthValues,
371
+ proposalFunctionSignatures,
372
+ proposalFunctionInputs,
373
+ guardian,
374
+ networkEnv
375
+ );
376
+ }
377
+ };
378
+ export const upgradeEthFix = async (network, checksOnly) => {
379
+ let [root] = await ethers.getSigners();
380
+
381
+ const isProduction = networkName.includes("production");
382
+
383
+ if (isProduction) verifyProductionSigner(root);
384
+
385
+ let networkEnv = networkName;
386
+ let guardian = root;
387
+ if (isSimulation) {
388
+ networkEnv = network;
389
+ }
390
+
391
+ let release: { [key: string]: any } = dao[networkEnv];
392
+
393
+ console.log("signer:", root.address, { networkEnv, isSimulation, isProduction, release });
394
+
395
+ if (isSimulation) {
396
+ networkEnv = network;
397
+ guardian = await ethers.getImpersonatedSigner(release.GuardiansSafe);
398
+
399
+ await root.sendTransaction({
400
+ value: ethers.utils.parseEther("1"),
401
+ to: release.GuardiansSafe
402
+ });
403
+ }
404
+
405
+ const bridgeImpl = bridgeUpgradeImpl[networkEnv];
406
+ const upgradeCall = ethers.utils.keccak256(ethers.utils.toUtf8Bytes("upgrade()")).substring(0, 10);
407
+
408
+ const proposalActions = [
409
+ [
410
+ release.MpbBridge,
411
+ "upgradeToAndCall(address,bytes)",
412
+ ethers.utils.defaultAbiCoder.encode(["address", "bytes"], [bridgeImpl, upgradeCall]),
413
+ "0"
414
+ ] //upgrade bridge
415
+ ];
416
+
417
+ console.log({
418
+ networkEnv,
419
+ guardian: guardian.address,
420
+ isSimulation,
421
+ isProduction,
422
+ release
423
+ });
424
+
425
+ const proposalContracts = proposalActions.map(a => a[0]);
426
+ const proposalFunctionSignatures = proposalActions.map(a => a[1]);
427
+ const proposalFunctionInputs = proposalActions.map(a => a[2]);
428
+ const proposalEthValues = proposalActions.map(a => a[3]);
429
+ if (isProduction && !checksOnly) {
430
+ await executeViaSafe(
431
+ proposalContracts,
432
+ proposalEthValues,
433
+ proposalFunctionSignatures,
434
+ proposalFunctionInputs,
435
+ release.GuardiansSafe,
436
+ "mainnet",
437
+ { nonce: 15 }
438
+ );
439
+ } else if (!checksOnly) {
440
+ await executeViaGuardian(
441
+ proposalContracts,
442
+ proposalEthValues,
443
+ proposalFunctionSignatures,
444
+ proposalFunctionInputs,
445
+ guardian,
446
+ networkEnv
447
+ );
448
+ }
449
+
450
+ if (isSimulation || !isProduction) {
451
+ const ctrl = (await ethers.getContractAt("Controller", release.Controller)) as Controller;
452
+ const isMinterScheme = await ctrl.getSchemePermissions(release.MpbBridge, release.Avatar);
453
+ console.log("Bridge minter permissions on avatar:", isMinterScheme);
454
+ // check xdc chainid in bridge
455
+ const mpb = (await ethers.getContractAt("IMessagePassingBridge", release.MpbBridge)) as IMessagePassingBridge;
456
+ console.log("xdc lz chainid:", await mpb.toLzChainId(50));
457
+ }
458
+ };
459
+
460
+ export const verifyUpgradeCeloStep1 = async networkEnv => {
461
+ let release: { [key: string]: any } = dao[networkEnv];
462
+ const ctrl = (await ethers.getContractAt("Controller", release.Controller)) as Controller;
463
+ const isMinterScheme = await ctrl.getSchemePermissions(release.MpbBridge, release.Avatar);
464
+ console.log("Bridge minter permissions on avatar:", isMinterScheme);
465
+ // check xdc chainid in bridge
466
+ const mpb = (await ethers.getContractAt("IMessagePassingBridge", release.MpbBridge)) as IMessagePassingBridge;
467
+ console.log("xdc lz chainid:", await mpb.toLzChainId(50));
468
+ const gd = await ethers.getContractAt("IGoodDollar", release.GoodDollar);
469
+ const supplyAfter = await gd.totalSupply();
470
+ const bridgeBalanceAfter = await gd.balanceOf(release.MpbBridge);
471
+ const avatarBalanceAfter = await gd.balanceOf(release.Avatar);
472
+ console.log({ bridgeBalanceAfter, avatarBalanceAfter, supplyAfter });
473
+ };
180
474
 
181
475
  export const upgradeFuseStep1 = async (network, checksOnly) => {
182
476
  let [root] = await ethers.getSigners();
@@ -444,4 +738,9 @@ export const main = async () => {
444
738
  }
445
739
  };
446
740
 
447
- main().catch(console.log);
741
+ // upgradeCeloFix("production-celo", false).catch(console.log);
742
+ // upgradeEthFix("production-mainnet", false).catch(console.log);
743
+ upgradeFuseFix("production", false).catch(console.log);
744
+ // upgradeXdcFix("production-xdc", false).catch(console.log);
745
+ // verifyUpgradeCeloStep1("production-celo");
746
+ // main().catch(console.log);