@gooddollar/goodprotocol 2.1.4 → 2.2.0-beta.1

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 (292) hide show
  1. package/artifacts/abis/IdentityV4.min.json +1 -0
  2. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  3. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  4. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  7. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  8. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.dbg.json +1 -1
  9. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IQuoterV2.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/ISwapRouter.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  35. package/artifacts/contracts/MentoInterfaces.sol/IBancorExchangeProvider.dbg.json +1 -1
  36. package/artifacts/contracts/MentoInterfaces.sol/IBroker.dbg.json +1 -1
  37. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExchangeProvider.dbg.json +1 -1
  38. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExpansionController.dbg.json +1 -1
  39. package/artifacts/contracts/MentoInterfaces.sol/IMentoReserve.dbg.json +1 -1
  40. package/artifacts/contracts/MentoInterfaces.sol/ITradingLimits.dbg.json +1 -1
  41. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  42. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  43. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  44. package/artifacts/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.dbg.json +1 -1
  45. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  46. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  47. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  48. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  49. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  50. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  51. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  52. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  53. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.dbg.json +1 -1
  54. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.json +2 -2
  55. package/artifacts/contracts/identity/IdentityV4.sol/IdentityV4.dbg.json +4 -0
  56. package/artifacts/contracts/identity/IdentityV4.sol/IdentityV4.json +1162 -0
  57. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  58. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  59. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  60. package/artifacts/contracts/invite/OneTimeReward.sol/OneTimeReward.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  62. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  63. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  64. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest.dbg.json +1 -1
  65. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  67. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  68. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  69. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  70. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  71. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  72. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  73. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTest.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/GenericDistributionHelperTest.sol/GenericDistributionHelperTestHelper.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  81. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  83. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  87. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  91. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  92. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  93. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  94. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  95. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  96. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  97. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  99. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  101. package/artifacts/contracts/reserve/CeloDistributionHelper.sol/CeloDistributionHelper.dbg.json +1 -1
  102. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  103. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  104. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.dbg.json +1 -1
  105. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  106. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  107. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  108. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  109. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  110. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  111. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  112. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  113. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  114. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  115. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  116. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  117. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  118. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  119. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  120. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  121. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  122. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  123. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  124. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  125. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  126. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  127. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  128. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  129. package/artifacts/contracts/token/GoodDollar2.sol/GoodDollar2.dbg.json +1 -1
  130. package/artifacts/contracts/token/IFeesFormula.sol/IFeesFormula.dbg.json +1 -1
  131. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.dbg.json +1 -1
  132. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  133. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  134. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  135. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  136. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.dbg.json +1 -1
  137. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  138. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  139. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  140. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  141. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/Proxy.dbg.json +1 -1
  142. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.dbg.json +1 -1
  143. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.dbg.json +1 -1
  144. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  145. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  146. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  147. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  148. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  149. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  150. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.dbg.json +1 -1
  151. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  152. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.dbg.json +1 -1
  153. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  154. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  155. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.dbg.json +1 -1
  156. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  157. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  158. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  159. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  160. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/EternalStorage.dbg.json +1 -1
  161. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.dbg.json +1 -1
  162. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage.dbg.json +1 -1
  163. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Initializable.dbg.json +1 -1
  164. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Ownable.dbg.json +1 -1
  165. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Upgradeable.dbg.json +1 -1
  166. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  167. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  168. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  169. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  170. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  171. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  172. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  173. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  174. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  175. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  176. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  177. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/MentoExchange.dbg.json +1 -1
  178. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.dbg.json +1 -1
  179. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  180. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  181. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  182. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  183. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  184. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  185. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  186. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  187. package/contracts/identity/IdentityV3.sol +0 -3
  188. package/contracts/identity/IdentityV4.sol +578 -0
  189. package/hardhat.config.ts +3 -4
  190. package/package.json +8 -4
  191. package/releases/deployment.json +691 -1
  192. package/test/governance/ClaimersDistribution.test.ts +1 -1
  193. package/test/governance/CompoundVotingMachine.castvote.test.ts +30 -30
  194. package/test/helpers.ts +76 -195
  195. package/test/identity/IdentityV3.test.ts +53 -129
  196. package/test/identity/IdentityV4.test.ts +454 -0
  197. package/test/reserve/GenericDistributionHelper.e2e.test.ts +445 -0
  198. package/test/utils/AdminWallet.test.ts +14 -15
  199. package/types/contracts/identity/IdentityV4.ts +2001 -0
  200. package/types/contracts/identity/index.ts +1 -0
  201. package/types/contracts/utils/UpdateReserveRatio.sol/MentoExchange.ts +81 -0
  202. package/types/contracts/utils/UpdateReserveRatio.sol/UpdateReserveRatio.ts +134 -0
  203. package/types/contracts/utils/UpdateReserveRatio.sol/index.ts +5 -0
  204. package/types/contracts/utils/UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC.ts +7 -2
  205. package/types/contracts/utils/index.ts +2 -0
  206. package/types/factories/contracts/identity/IdentityV3__factory.ts +1 -1
  207. package/types/factories/contracts/identity/IdentityV4__factory.ts +1213 -0
  208. package/types/factories/contracts/identity/index.ts +1 -0
  209. package/types/factories/contracts/utils/UpdateReserveRatio.sol/MentoExchange__factory.ts +39 -0
  210. package/types/factories/contracts/utils/UpdateReserveRatio.sol/UpdateReserveRatio__factory.ts +113 -0
  211. package/types/factories/contracts/utils/UpdateReserveRatio.sol/index.ts +5 -0
  212. package/types/factories/contracts/utils/UpdateReserveRatioAfterXDC.sol/UpdateReserveRatioAfterXDC__factory.ts +9 -15
  213. package/types/factories/contracts/utils/index.ts +1 -0
  214. package/types/hardhat.d.ts +27 -0
  215. package/types/index.ts +4 -0
  216. package/scripts/ProxyFactory.json +0 -4425
  217. package/scripts/analytics/activeGDStakers.ts +0 -188
  218. package/scripts/analytics/activeStakers.ts +0 -25
  219. package/scripts/analytics/activeUsersCount.ts +0 -156
  220. package/scripts/analytics/activeWalletsStats.ts +0 -301
  221. package/scripts/analytics/checkActiveWallets.ts +0 -60
  222. package/scripts/analytics/checkBridgeBalances.ts +0 -442
  223. package/scripts/analytics/claimIncidentStats.ts +0 -98
  224. package/scripts/analytics/faucetStats.ts +0 -130
  225. package/scripts/analytics/gdinflow.ts +0 -57
  226. package/scripts/analytics/goodHolders.ts +0 -46
  227. package/scripts/analytics/goodgiveback.ts +0 -64
  228. package/scripts/analytics/p2pTxs.ts +0 -564
  229. package/scripts/analytics/stuckgd.ts +0 -70
  230. package/scripts/analytics/tokenInOutStats.ts +0 -48
  231. package/scripts/analytics/whitelistsyncIssue.ts +0 -87
  232. package/scripts/bulkProof.ts +0 -202
  233. package/scripts/bulkWhitelist.ts +0 -31
  234. package/scripts/deployGnosisSafe.ts +0 -111
  235. package/scripts/fetchOrDeployProxyFactory.ts +0 -46
  236. package/scripts/fv.ts +0 -263
  237. package/scripts/gdx/gdxAirdropCalculation.ts +0 -479
  238. package/scripts/getFounders.ts +0 -32
  239. package/scripts/governance/README.md +0 -70
  240. package/scripts/governance/airdropCalculation.ts +0 -1119
  241. package/scripts/governance/airdropCalculationRecover.ts +0 -416
  242. package/scripts/governance/airdropCalculationSorted.ts +0 -438
  243. package/scripts/governance/goodCheckpointSorted.ts +0 -300
  244. package/scripts/keeper/fishInactive.ts +0 -47
  245. package/scripts/minimize.sh +0 -17
  246. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +0 -131
  247. package/scripts/multichain-deploy/1_basicdao-deploy.ts +0 -294
  248. package/scripts/multichain-deploy/2_helpers-deploy.ts +0 -152
  249. package/scripts/multichain-deploy/2b_otp-deploy.ts +0 -73
  250. package/scripts/multichain-deploy/3_gdSavings-deploy.ts +0 -190
  251. package/scripts/multichain-deploy/4_ubi-deploy.ts +0 -129
  252. package/scripts/multichain-deploy/5_gov-deploy.ts +0 -179
  253. package/scripts/multichain-deploy/6_testnetFaucet.ts +0 -85
  254. package/scripts/multichain-deploy/7_superfluidfaucet-deploy.ts +0 -123
  255. package/scripts/multichain-deploy/8_disthelper-deploy.ts +0 -152
  256. package/scripts/multichain-deploy/createUniswapTestPools.ts +0 -163
  257. package/scripts/multichain-deploy/flattened/Avatar.sol +0 -913
  258. package/scripts/multichain-deploy/flattened/Controller.sol +0 -1891
  259. package/scripts/multichain-deploy/flattened/FeeFormula.sol +0 -1290
  260. package/scripts/multichain-deploy/fulldeploy.sh +0 -26
  261. package/scripts/multichain-deploy/helpers.ts +0 -647
  262. package/scripts/multichain-deploy/multichainWrapper-deploy.ts +0 -59
  263. package/scripts/multichain-deploy/verifyEtherscan.ts +0 -177
  264. package/scripts/proposals/gip-14_1.ts +0 -251
  265. package/scripts/proposals/gip-15.ts +0 -427
  266. package/scripts/proposals/gip-25-xdc-upgrade-ubi.ts +0 -746
  267. package/scripts/proposals/gips-14_1.md +0 -29
  268. package/scripts/proposals/hack-ubi-recovery.ts +0 -414
  269. package/scripts/proposals/identityAuthPeriod.ts +0 -229
  270. package/scripts/proposals/reserveRestore.ts +0 -474
  271. package/scripts/proposals/updateDistHelper.ts +0 -180
  272. package/scripts/proposals/v4Upgrade.ts +0 -845
  273. package/scripts/releaser.js +0 -24
  274. package/scripts/staking/stakersGdRewardsCalculation.ts +0 -64
  275. package/scripts/upgradeScheme.ts +0 -97
  276. package/scripts/upgradeToV2/upgradeToV2.ts +0 -853
  277. package/scripts/upgradeToV2/upgradeToV2Recover.ts +0 -939
  278. package/scripts/upgradeToV3/v3-fix.ts +0 -120
  279. package/scripts/upgradeToV3/v3-fuse-multichain.ts +0 -117
  280. package/scripts/upgradeToV3/v3-upgrade.ts +0 -219
  281. package/scripts/upgrades/celo-defi-ubi-deploy.ts +0 -184
  282. package/scripts/upgrades/identity-upgrade.ts +0 -126
  283. package/scripts/upgrades/multichain-formula-upgrade.ts +0 -143
  284. package/scripts/upgrades/multichain-temp-fix.ts +0 -129
  285. package/scripts/upgrades/restoreFunds.ts +0 -91
  286. package/scripts/upgrades/superfluid-nft-celo-gas-token.ts +0 -159
  287. package/scripts/upgrades/transferDaoToGuardians.ts +0 -80
  288. package/scripts/upgrades/upgradeAdminWallet.ts +0 -29
  289. package/scripts/upgrades/upgradeFaucet.ts +0 -46
  290. package/scripts/utils.ts +0 -50
  291. package/scripts/verify.ts +0 -67
  292. package/scripts/voltageswaps.ts +0 -46
@@ -1,564 +0,0 @@
1
- import { maxBy, range, sortBy, flatten, uniq } from "lodash";
2
- import PromisePool from "async-promise-pool";
3
- import fs from "fs";
4
- import { Contract, Provider, setMulticallAddress } from "ethers-multicall";
5
- import Identity from "../../artifacts/contracts/Interfaces.sol/IIdentity.json";
6
-
7
- import { ethers } from "hardhat";
8
- import { unique } from "underscore";
9
- import { Retrier } from "@jsier/retrier";
10
- const allProtocolAddresses: Array<string> = [
11
- "0xee724540706296ebad65aea2515efe0949f97ae6",
12
- "0x1cb566802e61e7f661183f5d9a14645d7620cc8d",
13
- "0x30e1403c075db97fd9fe02b114cebea5acce38b7",
14
- "0x07b41192dd74172576a443c7b28ddc3dc2ce3074",
15
- "0x903a6ba8b5a43fbd34a511fb5cf193ce8dc8907b",
16
- "0x2170e9a5b72f143cdf9c2fc93fa9d6a9b67cd632",
17
- "0x7edb872c75e86fe53f828d65ad75b0b5862a0c2b",
18
- "0xd142a79bab57fed1feed4734dfe33473d707eecf",
19
- "0xf61e08a98b446856ee3fbd6597d3698a1a138565",
20
- "0xcc9b1382b0ae9d80e81ecb1863dce8685a044603",
21
- "0xcdc704d3dea0fcfd1cae95dfdcb7883632e171b2",
22
- "0x94079df920115c5296cc06ae6d8f29e077906246",
23
- "0x628980264f86b20bbf4181f55a35602fee6b4e6f",
24
- "0xd694567482c4947082217b4d537b9b31986f5672",
25
- "0x0000000000000000000000000000000000000000",
26
- "0x100b8fd10ff8dc43fda45e636b4bb1ee6088270a",
27
- "0x0ca09ca67b42272b83a05346545329de5b30b398",
28
- "0x104effcbdddae9cd4813b8a05ecd6a17babfe6d9",
29
- "0xca9e4d51bc496f0b661e9fa02d25e4f67dd88870",
30
- "0x7cba0778748960145f3e56b3285255064d86709d",
31
- "0x7b58a5737440bc05ca3972fdeff8ac3ba984536b",
32
- "0x0e79f80809180ab8fae189d4e76fc814672d9a40",
33
- "0xfc9f6f5e3ff7baab3fef82e66f56917d625ba38b",
34
- "0x8b0ec4afaee9974233c29fa52cc5d2493fb81d45",
35
- "0x2b5ef42bc3d1befcba20e3233dedadd2439b8ac2",
36
- "0x53f6bd6da1564f5b00d2069d8e0f316af859fb99",
37
- "0x7bc7d34376b2427498392160fda537664d940313",
38
- "0x621852d785870402bbd6bfcd11c5fca628bfcf15",
39
- "0x53954ad0a0b151a25de038dd195d564c071fc726",
40
- "0x8c1255c46b3a04686ea0ffd3b71d7cb391091a58",
41
- "0xe4f91ffffda759532ee6261b999373d6ebcae9fd",
42
- "0x3ba47349007b513d5f9089df6812a08c6f05ff05",
43
- "0x41be749e48779d7ab2917257a2f4f300eb8dd65d",
44
- "0xded3992c507bb15a5e23fc66ee886ab1cbff5b69",
45
- "0xb04fdfe99b4bd86368f40081fece14c1711a4206",
46
- "0x138a24c2dfd29b2db632a0c9e71e55621f5a745d",
47
- "0x798c114567d327e9abd80f1de45023fde44e9035",
48
- "0xecf014e0f88bd611c522be84b8ebefa0d3aedf1c",
49
- "0x9edd6aa83feb1ffa8fd732c2287798561d360ab3",
50
- "0x73c9d1c6fb24d2890f1a9915b45ffcc01bfbe3c0",
51
- "0x1067cedb2d0a968b5a07e2e4e355b03c693cb91f",
52
- "0x3ab7d55b63454beeea39271bd0cb78c4e8aa7afb",
53
- "0x3087e1e2d04b7050dd678e9acd0a81247ac531b8",
54
- "0xfa8a01e403285cd80efa21841afd6a6aa670b15e",
55
- "0x9ad8dabb3503e95cd196eb63e9bdf520cef6daeb",
56
- "0x1f3a55ec286335532c851f3ab280cf3c6383044b",
57
- "0x044d206d1144f8c9eac05177d794364857c3c9e6",
58
- "0x2e49961170a6fd2fdeda0a2eb2aacab95ceba21d",
59
- "0x8f29fcb7fc44440e7f852c78c6e5bf81e3063e1d",
60
- "0x495d133b938596c9984d462f007b676bdc57ecec",
61
- "0x0be7c592374ee0bd0ccbfc76be758a138bcaec6e",
62
- "0xfa8d865a962ca8456df331d78806152d3ac5b84f",
63
- "0xf96dadc6d71113f6500e97590760c924da1ef70e",
64
- "0xbce053b99e22158f8b62f4dbfbede1f936b2d4e4",
65
- "0x795ced99774430df8902d8699388924a213a5aa6",
66
- "0x12f706faafcbf8093282dba0c40ed0d4eb5caf54",
67
- "0x653c67be5b3739708e84b61641253822405d78d8",
68
- "0x9f75dacb77419b87f568d417ebc84346e134144e",
69
- "0xd9aa86e0ddb932bd78ab8c71c1b98f83cf610bd4",
70
- "0xd39021db018e2caeadb4b2e6717d31550e7918d0",
71
- "0x8e08d7138a35c56ddc52a6195c12ab72123967f4",
72
- "0xd76135e33b9ee4f1bf1d57ec18bbbc11aff30941",
73
- "0xa611cb08e1b6ecdee4a9db5cad045729de9ea1b1",
74
- "0x5925f6bf62147d2b14b85e6dcb979e3d1a81dbb1",
75
- "0x13973e242c75091e605844f816b9a8e211929559",
76
- "0xb7d068e9e4235176fa51c5971081117dfe5e7f75",
77
- "0xd6513d7145a208d94e508bab2e4be31f6dce5147",
78
- "0x57312053c36a226df13b01089218a5f9951d3f9c",
79
- "0xe1fe3f17c0c3c3333efc54b07b92639fb765fdcd",
80
- "0xace125edd5591f33653b856c6c2add4ca2bf64cd",
81
- "0xee0756a5394721e54a092f9aebd525dd3a2ace8d",
82
- "0x6a6229f0312466a3b2442aad08e205f58070ae9c",
83
- "0x4738c5e91c4f809da21dd0df4b5ad5f699878c1c",
84
- "0x49920f0bb0e099755ad61b5eb23b807ae1b5cafe",
85
- "0xfb5daf44cd18db7b96db3f9c6e411d65fcf4f372",
86
- "0x3bc91a65f53dacbd2336c04ac060741f70dcd187",
87
- "0x589f7ae100a7dbd80dc512208b7a0f457a041be6",
88
- "0x11e7716de4b5bc9a1dbc93184b27ac2134ca6e42",
89
- "0x4f151834efb18108080716d1467b397faa87cf66",
90
- "0xbd879865b649b7605c27caa6a54e0f6b9efb74b2",
91
- "0xeda39475415f1a2944a467aa6359cb4c1c3ed50f",
92
- "0x9ebe7b1b0fb6e5d4c3996e65ab3750fbbf8958aa",
93
- "0x67c5870b4a41d4ebef24d2456547a03f1f3e094b",
94
- "0xcb4a6af3b15d64e8f50b3cea54c4f481d9e434c1",
95
- "0x76e76e10ac308a1d54a00f9df27edce4801f288b",
96
- "0x1ecfd1afb601c406ff0e13c3485f2d75699b6817",
97
- "0x95c0d9dcea1e243ed696f34cac5e6559c3c128a3",
98
- "0xf6b5f7a885cbc57d739adbee76e52a70bc04d795",
99
- "0x098148534ac15a44cff52387ba81ed929589ecaf",
100
- "0xf9b357d83bdad6881feb09d909095872b93203d0",
101
- "0xd5d11ee582c8931f336fbcd135e98cee4db8ccb0",
102
- "0x5a830c994905d1853de2238f4aad3996ce8b2850",
103
- "0xb8006df4a7cfdb99e5115c9983340e2c79b9f5ae",
104
- "0x7c782d921080c36377d7ca4fed4753fedde3f3ad",
105
- "0x4312567e8c3d2e24eab5995fdda94242a3c438f7",
106
- "0xa849cfd58e44c285fd554b02331f68f97530c092",
107
- "0x575f38f4775f2ef4540f11bb7c8d86c02892a788",
108
- "0x35da90b4d19bcd0cef22bc28dacb89890df29116",
109
- "0x304fc1bc94328ea73ce0278542fb70709db82be2",
110
- "0xb1ad82163efbab0f6c5f984ac532e4160c08466e",
111
- "0x553510a3ace946b2d1d0a8939e0fb6195721dc42",
112
- "0x07e29dad9906447073829c23a18267b30614a072",
113
- "0xbb1d7c030d56145187a60f0dde2de9be7427cd80",
114
- "0xd85d794b7eb00749763e851eeae37c5d862b9fb3",
115
- "0x6cf223ee3c5f95cf97065de35757247e04eaaae3",
116
- "0x6d5e39fc226958ae60438cde72e7ac4c46e8182c",
117
- "0x49380979206ea1e274a93d4912ca0950de695e81",
118
- "0xdaf541b3a4e1764d438d13f6d6c31157fec47a5e",
119
- "0x01c5f99574235c5380e4ff9975df58e387d6f9c4",
120
- "0xd9dd31139a544df145cf10cc73e7fc1db33971fa",
121
- "0xb5e5d0f8c0cba267cd3d7035d6adc8eba7df7cdd",
122
- "0x6ce27497a64fffb5517aa4aee908b1e7eb63b9ff",
123
- "0xf4aae0922718116fbeb60b49bbb2a66cbfaac5e7",
124
- "0x4df91caa7de436b89c360deefcfdd3299cfe2ddf",
125
- "0x05fb7c4091274e93a5c83ecdafa38e209743e788",
126
- "0x6f99174a227ddb4525a179dd56d7ca59c0f6e7f1",
127
- "0x20da739c6ce6260574a78313fd21aa7309ea436f",
128
- "0x87d0dd16d3a2049c85a382f2d29c7cecf322dfbe",
129
- "0xcad3d4d0983e69dde63f252c537b80ba3f894aaa",
130
- "0x56ac8965a980bc771a0758059aa56f8ebff76f97",
131
- "0x754d3d30d766e4c46a50df6821542ed1581377f9",
132
- "0xbb3a55660f89e9c0b590d520eeca61c6b48901dd",
133
- "0x0f204ca327dd07b1a921a50a6a3f1088f5df0006",
134
- "0x1a94f7ed51d79fd505bd45ff0a3c314ae8ba118a",
135
- "0x57ab55c54ffc3f92544766d683645c8ed03cc543",
136
- "0x1ea5564a28f34107b99dc591f142537404329762",
137
- "0x483a044d792b2ca0373956444c7e7db36b7dbc56",
138
- "0xe6876231d1a5905abed03e4c613e427b0357ec0b",
139
- "0x5810950bf9184f286f1c33b2cf80533d2cb274af",
140
- "0xae64e29c78056fb221099a1ece5fb7d91ca27918",
141
- "0x7cc2ccda5483e721778c4040b1dbd23b3ab1b4a5",
142
- "0xaacbaab8571cbeceb46ba85b5981efdb8928545e",
143
- "0xd7ac544f8a570c4d8764c3aabcf6870cbd960d0d",
144
- "0x18bcdf79a724648bf34eb06701be81bd072a2384",
145
- "0xbdfd60f3ae73329d33ebe17d78383defd72643ad",
146
- "0xea12bb3917cf6ae2fde97ce4756177703426d41f",
147
- "0x5c16960f2eeba27b7de4f1f6e84e616c1977e070",
148
- "0xedbe438cd865992fdb72dd252e6055a71b02be72",
149
- "0x8eec64bb6807c0178f96277cce6a334b4e565e5c",
150
- "0x6b175474e89094c44da98b954eedeac495271d0f",
151
- "0x5d3a536e4d6dbd6114cc1ead35777bab948e3643",
152
- "0xdfcb356c9bd420263ac56d7980f409ace9050896",
153
- "0x2ea4aaa8351cfe63b537e81cd4a13c435b945c1d",
154
- "0x7d5fc799de6fb6a30161684f27320bacadbf4126",
155
- "0x23d8492444da663fcb2bda8ca9a0e84989d1f59e",
156
- "0xeecc2620fb1eac08af5923b4d1d54d4703fbb29b",
157
- "0xa74f8ca91ba870608a909a9685e4a984bbc068b5",
158
- "0x4218263062854c3953ef61699a85231b524a896a",
159
- "0x97429324686d39b424bc2d3228478280b46080ed",
160
- "0x83e28c370bb4447334cf12e4f2944e98c8865c5b",
161
- "0xe383e9d08e3e4f76cbb4a6953af343e7bbcc6e98",
162
- "0x424e48447c1230544711a96b903c79ef6eb9e14c",
163
- "0xa2db14c68ab35e620fea5bf07d65e9bff84c994c",
164
- "0x93fb057eec37abc11d955d1c09e6a0d218f35cff",
165
- "0x01ab5966c1d742ae0cff7f14cc0f4d85156e83d9",
166
- "0x57179b2a8eb019157b0c3e761cdb26c82c982a3b",
167
- "0xca2f09c3ccfd7ad5cb9276918bd1868f2b922ea0",
168
- "0xa199f0c353e25adf022378b0c208d600f39a6505",
169
- "0x944350ec7614146beeaf3aebff37c6c046400431",
170
- "0x33777d6b944a6b51fba86d9269f68ad81076d70f",
171
- "0x7a2088a1bfc9d81c55368ae168c2c02570cb814f",
172
- "0x32467b43bfa67273fc7ddda0999ee9a12f2aaa08",
173
- "0xb7f8bc63bbcad18155201308c8f3540b07f84f5e",
174
- "0x8acd85898458400f7db866d53fcff6f0d49741ff",
175
- "0xe082b26cef079a095147f35c9647ec97c2401b83",
176
- "0x0e801d84fa97b50751dbf25036d067dcf18858bf",
177
- "0x9d4454b023096f34b160d6b654540c56a1f81688",
178
- "0x8f86403a4de0bb5791fa46b8e795c547942fe4cf",
179
- "0xe7f1725e7734ce288f8367e1bb143e90bb3f0512",
180
- "0xdc64a140aa3e981100a9beca4e685f962f0cf6c9",
181
- "0x9fe46736679d2d9a65f0992f2272de9f3c7fa6e0",
182
- "0x4ed7c70f96b99c776995fb64377f0d4ab3b0e1c1",
183
- "0x67d269191c92caf3cd7723f116c85e6e9bf55933",
184
- "0xa85233c63b9ee964add6f2cffe00fd84eb32338f",
185
- "0x95401dc811bb5740090279ba06cfa8fcf6113778",
186
- "0xf5059a5d33d5853360d16c683c16e67980206f36",
187
- "0xcf7ed3acca5a467e9e704c703e8d87f634fb0fc9",
188
- "0x2a810409872afc346f9b5b26571fd6ec42ea4849",
189
- "0xb9beecd1a582768711de1ee7b0a1d582d9d72a6c",
190
- "0x8a93d247134d91e0de6f96547cb0204e5be8e5d8",
191
- "0x40918ba7f132e0acba2ce4de4c4baf9bd2d7d849",
192
- "0xf32d39ff9f6aa7a7a64d7a4f00a54826ef791a55",
193
- "0xd6e1afe5ca8d00a2efc01b89997abe2de47fdfaf",
194
- "0x99dbe4aea58e518c50a1c04ae9b48c9f6354612f",
195
- "0x8198f5d8f8cffe8f9c413d98a0a55aeb8ab9fbb7",
196
- "0x07882ae1ecb7429a84f1d53048d35c4bb2056877",
197
- "0x202cce504e04bed6fc0521238ddf04bc9e8e15ab",
198
- "0xa5b0631c5b393d4bf30d2974df121ea7e8b0e934",
199
- "0xb3da2f710c7356e4f6540752488e88e48fd00cdd",
200
- "0x625a692e96605c988192cd59563e5eb2f1e33c87",
201
- "0x5067457698fd6fa1c6964e416b3f42713513b3dd",
202
- "0x36b58f5c1969b7b6591d752ea6f5486d069010ab",
203
- "0xd8a5a9b31c3c0232e196d518e89fd8bf83acad43",
204
- "0x51a1ceb83b83f1985a81c295d1ff28afef186e02",
205
- "0xdc11f7e700a4c898ae5caddb1082cffa76512add",
206
- "0x5feaebfb4439f3516c74939a9d04e95afe82c4ae",
207
- "0x976fcd02f7c4773dd89c309fbf55d5923b4c98a1",
208
- "0x19ceccd6942ad38562ee10bafd44776ceb67e923",
209
- "0xfcdb4564c18a9134002b9771816092c9693622e3",
210
- "0x32eece76c2c2e8758584a83ee2f522d4788fea0f",
211
- "0x6c2d83262ff84cbadb3e416d527403135d757892",
212
- "0xa6e99a4ed7498b3cddcbb61a6a607a4925faa1b7",
213
- "0x5302e909d1e93e30f05b5d6eea766363d14f9892",
214
- "0x0ed64d01d0b4b655e410ef1441dd677b695639e7",
215
- "0x94d333510d985495de7d96a711be3b45f658aadf",
216
- "0xd7c1b2b630df30c0bfd480757b232cf1eb87dd8f",
217
- "0xde2bd2ffea002b8e84adea96e5976af664115e2c",
218
- "0x4bf010f1b9beda5450a8dd702ed602a104ff65ee",
219
- "0x02b0b4efd909240fcb2eb5fae060dc60d112e3a4",
220
- "0x2b0d36facd61b71cc05ab8f3d2355ec3631c0dd5",
221
- "0xfd2b51bb11b7345ba592f70a685652e18cd83946",
222
- "0xef0c1e6f98e433d81ae3e6611944bc06e533a47b",
223
- "0xbd289d4d9e174052c665e963473753bb399989be",
224
- "0xe0fdf6e09c4ac5aa5a8952ac32b16446ee0d0b79",
225
- "0xbe4fe98c9c4c0a8f3681c34c94ce2e462da5fc89",
226
- "0xaeec5af38c034d2f983da5948646617eee3a3372",
227
- "0x139f5dd0d48b9bdbf9d12e7a2a2fdc42577746ad",
228
- "0x15ac42377d9ed4168dff9126daf188f20b23e54d",
229
- "0xba5b519b80d044038159b980d1c8657d53ed08a8",
230
- "0xd30dacce904ebacc642ab6dd3415e6fc7b7b2e10",
231
- "0xbc371c5c98d40de18382e3e0eeb58805d76d3d50",
232
- "0x97336539bf2ab85ed83e63f294af113a7a110cd3",
233
- "0x19afea8633db478a5d7a8910dc2adc982c576045",
234
- "0x2e34a18cedf2485fba4e19495f29245a07869039",
235
- "0xe58501733711b966f9c1d81b29557674c11bd840",
236
- "0x7c8f7f618c2f84c656aeb51d652848ce76990db7",
237
- "0x7330bbdd9fc99cc82be0078fb643c1ddbf9be03f",
238
- "0x46183b8822bb7cbf27e10a1acc95dfb3b5f0ec79",
239
- "0xca95a91238a9fbe2458aac54cf00f99ecab14e0a",
240
- "0x2ca80e8e6fe46066d432204dfbc902328e912be6",
241
- "0x3778f359a108f48959562ecfe5ce677050c509d3",
242
- "0xfc62b61205a9df9699d0181896603e57a30aca28",
243
- "0xaf633cf595f0695aba029f210d364e1c4282986e",
244
- "0xac7671a932287a69a5e1115bede2687436ebed7e",
245
- "0x4f96fe3b7a6cf9725f59d353f723c1bdb64ca6aa",
246
- "0xf0d0eb522cfa50b716b3b1604c4f0fa6f04376ad",
247
- "0x61460874a7196d6a22d1ee4922473664b3e95270",
248
- "0xb8e03ce6bb337a1161ca6e53de568efbe5650eaf",
249
- "0xd222e5557395c5b62b682cbfd50567908592703d",
250
- "0xd7cf329519e749b5f3c220e644660c61acc24daa",
251
- "0x26d044e8a7bcd384fefd22e753229922d6693d0e",
252
- "0x56ca74cd7b31609a8ba666308f089e0d5e2d0584",
253
- "0x7d7200b2b049bb3d91bcbdf95ec0ee6c2b5f8b7e",
254
- "0x27e3b64c671a25c191535743d63bd06cb9b93e37",
255
- "0xdff4ce07253b2c3fa9dcec8b918f91d150ac26a4",
256
- "0x5e8732889f2d84c3d834223c38361b38d7d4b9bc",
257
- "0xb9978c071f2f64016a2f8515bc03bd25684201af",
258
- "0xeada76013c87c22843b907ce0110ea55c8e7e2a0",
259
- "0xe3e75ee6895f8b30d8ec3260daa20ec1aba6da77",
260
- "0x3bdeb796950301ffc9568faf89b7370f8b217321",
261
- "0x4db8602482576321f829baa593150393f7595439",
262
- "0x7ccf1011610138b484fcc921858e7971342d213c",
263
- "0x79beecc4b165ccf547662cb4f7c0e83b3796e5b3",
264
- "0xb453024495525908e6cc1e3c115f4b6b30cc56b9",
265
- "0x71dde7b8362724bd65d88fe29d42636a9f8f9064",
266
- "0x2a84f4e41c1f0e245a7278e32150ecf1a179b7b2",
267
- "0x09ad3430d146aa662ea8c20cbebcebc0bbb3fb0a",
268
- "0x187fc9fb37df0fbf75149913a97b17c968fc90d0",
269
- "0x184c1f83b3eb75a2dac483d4a6b9fbd59df961f8",
270
- "0xc1526892198796d30d33355cff9af10eed5b86a0",
271
- "0x14204288286823042263156146334b1a4d61227c",
272
- "0x4136dfd47f47792fc820e2354e9f0ce8e9c586a6",
273
- "0x88e111b2a42457655a34896e5b929a75e7b82f88",
274
- "0x0dd5e1869da5c9c7d7c49364687534bda7fb7020",
275
- "0x3baeeff20cb02a5b8ef413c611c015e69221663e",
276
- "0x30a5ba8ed4864bf3b1fa30c78ac774fa9d5c62cc",
277
- "0xe2c57968b52a417132511fbdcab1763d41a4f270",
278
- "0xd2cf3205ea36aeff3cf0e8e8701eae40aa3f6e4f",
279
- "0x2aee03bb8b182af876b9d008af9416d2a3df6db3",
280
- "0xeff1efcf1f0247f82b0d8406f32831b00bfdf729",
281
- "0x3419945657b6bd89dafd7f2bafc75ff46511298f",
282
- "0xe8c67a909d3231ddd97e4cc2c1b17a8ffa94475e",
283
- "0x1a521868ed7b4d8835f1f52172d38c1c3e630e92",
284
- "0xe1193de8716400ee5ad7b4b96cbdf0dabaf7d088",
285
- "0x98867484e2f0c902f64bcdedc2e289307c988214",
286
- "0x2aad517de8256ee6dc7ce31ae09ebb99f17f9975",
287
- "0x2250c5131bf9ddcbd55f9befc999d691c419ad93",
288
- "0x292c17365d729d367f4556f1bd17eb8434ebf6d1",
289
- "0x22a4720e32e3419e809731e7114042d6c3055845",
290
- "0x4d347bda25bef041bfcb5205deecd1a33ab46db9",
291
- "0x11655e9d725fc1f8d1410c03f136ac586f7161ee",
292
- "0xd458baec7e8864a2c9c2e1261d87a4faf77002b7",
293
- "0xf76d4a441e4ba86a923ce32b89aff89dbccaa075",
294
- "0x163b69fa3a7d3e5347a29a5a49b282c35d17c87a",
295
- "0x28b3bc8f2a1e5cf3bfe06d22971955a53a0f52d8",
296
- "0xfc32f09b85ab3134195bc237c2b69001b5c609db",
297
- "0x57b2c85934ef1a891ec9b9945f3fdbcf1104c302",
298
- "0x416b5a5e12235de6838d62fd053e7ce59e944426",
299
- "0x9059f66843f564f7870f7135fb039eb2034a23a3",
300
- "0x90de2f86dbdb2110a798326e880c83bc8779d149",
301
- "0x2ef9f88eeb737655ff01f9b5017f1e3399726af1",
302
- "0x035a59f228e776cc396a8f5e1cef989e235b0035",
303
- "0xc65ccb966873969179b6b0ba53d67d14bbf1204c",
304
- "0xbb02f06762fbc51ad222915e6855f7482a93f9cd",
305
- "0xbb976201b607f16dc76586db8ca5ef6c50c41c22",
306
- "0x180faf09add6a27554b11a131dce6f6a3ddf4cbf",
307
- "0xb8357f7f41125d4b24ad052c1b7288bef5c43446",
308
- "0x63766f0efaa46a86e9055bb46e41ff7bc64cbea2",
309
- "0x94a9d2532da2d9153336159907604a01c3e91c11",
310
- "0x0b57fd12f7a95c322ad176d23765507ce09892cb",
311
- "0xf6ee31185ac05c2b558ff2a561c600af3e9486dd",
312
- "0xc20654db7f9483f10c91dc94924dc8f04f79bfd5",
313
- "0x6852adb5fce1d73c08a9b3aa7ede9a03437ac2fe",
314
- "0x24ef01de6bae76ee73da210940a296f739d87952",
315
- "0xb10982193b39eda3428d6aaebbd7986f2a2baa1a",
316
- "0x74156a1f9736307b7ad34e3691f3a5b54a0b3eb8",
317
- "0x0db32f0b116773fdd78c2e1b5e6609cc502e6784",
318
- "0xcd8a1c3ba11cf5ecfa6267617243239504a98d90",
319
- "0xe528aaca8e7cd3ce503bb4a2deadfd4088229e1f",
320
- "0x77423ae3ce64482ef3bb601a2ea42cf30349735a",
321
- "0x6804db9596c651a1ca24bbb821712a8899932d76",
322
- "0xa36adae77b1f6f87ed60aafef9c080c38ca30d0f",
323
- "0x411ceb987f801cdea5a301a0ccfa4a5df37f3f7f",
324
- "0x1333788523bea7c7cbdd0684bd1ee75e940ff0eb",
325
- "0x50589243cb1d8eef751f4bab253aabef6e434c0d",
326
- "0x214c3c71191ab9bd868a5f408a61c540c787662f",
327
- "0x1fb0d426927dab092def63b73e1397b3f29e7b33",
328
- "0xe4feed16f54b4244c174b408ba3b5f1f19dd1e4d",
329
- "0xe7213b68dc25bf30bc7f1de9baead075c66979f9",
330
- "0x570adc5880d778ae5935f199aa590091586cdf75",
331
- "0x24f2d7c50357c7b1156ca85945d3a901c88651cb",
332
- "0xc782ee4b0d6204ff77471884bb95d2d2f8d60fe6",
333
- "0x4bfd12e943f25621d4fa368ca7a5c0e7f6488000",
334
- "0xb2377aae57f2072f52fbc38696be573af2ce5bd9",
335
- "0x5bbaf48c102373b55079f941c40822c96e715d62",
336
- "0x67d49faf26ca6a34d483b6bdfa45824eda64d509",
337
- "0xe9ed26a450ac15ea88b5801e5940b58f2f778b03",
338
- "0xe3963ef7cc3044b64842d0aae7f2bf1543d341ec",
339
- "0x30474ce2de03045b8d0ae76f8a30dbfc8f000cea",
340
- "0xadf7b0f46eb35c748438f3e215f064e01cc7f5df",
341
- "0x0037272a7048132b10dd8970ac964bab2fdb3f62",
342
- "0xe8e9b139c6477d4ead599be5f2bb9335533d14f7",
343
- "0x8b87065fdfe4a130108e50f74ae7f85cd20a5967",
344
- "0xf47e3b0a1952a81f1afc41172762cb7ce8700133",
345
- "0xb4059a6808af368a69d12fbbd104bb6b9c37e629",
346
- "0x79613d7834ad35ee8dc3f9298030eaadc2a8c250",
347
- "0x6397866132887b206eea19f910730443e71a8cfb",
348
- "0xc2e1fc63ce06c279c5de18d7119c7ca123b42c1c",
349
- "0x9301981f27950e6546033eadd046c86754263f2d",
350
- "0x89be7d874a17cd0295b2d86436a920593b5f4480",
351
- "0xdff3455e08ab33b1599d1c5b5a1d65de63d3fcd0",
352
- "0xfae6fa2097792edfd7429a282f21ec2d955279d9",
353
- "0xc87fab8a8cdd346079ca6177e47408ba18066104",
354
- "0xd50604e530ff36b2747ae8574b37b21b9f779d37",
355
- "0x40f42698a07b19ac431cc115a7b9cddd294d248b",
356
- "0x78a76ad9a5d4a1d0c9fabca20083442160840d0c",
357
- "0x6d728de2be4b3d7c6b50e6f3bf46ca1f64df7820",
358
- "0x6bc7a1310dfe3efe7401aff3c598c9d948f8b245",
359
- "0x1a231e22be9923ee4c453095a7a94820d930a553",
360
- "0xf24ef005134208ac62ad50eafd052ddb2c3e7bb5",
361
- "0xc60411d3bc9f36946a6de1f3890c214192255497",
362
- "0x24d19000790fd11e244e76fa4d86fdd92e57c144",
363
- "0xf22ef80a76f41424b813c9b38b3064dbfa87cf79",
364
- "0x9093b908b35c08f2e8deaba352d5c319952a7e55",
365
- "0x66fb63cb6c4e2800db9d1691b3d00361ada9de61",
366
- "0xf629c80bfcaa9080e229b555924d5c72b47f5c22",
367
- "0x27816e32270a413af676a2e3a25db93c7f565a80",
368
- "0x1189c2227baa8f0749e842b366b0912d29a5a04e",
369
- "0x7599f95677cb14d7d8834a58b3b0545a13870a56",
370
- "0x2e975e7711088aafb38119454ff7fb99baa9142f",
371
- "0x52f0584bfb6f55cc4a3e351427facba7e23a3fd4",
372
- "0xfcf6029bd177370c79173d48e05aaff3c5f0c0bc",
373
- "0x33d3712b90ade5d7363f3548650e508ad8eacfaa",
374
- "0xc43514e62190a6253c56c7c50dadb907e3eda666",
375
- "0x70f361edb97b245e8a68573637a31886a427fe2a",
376
- "0x83eee673ba91ff49b7e608e761e7bda93bbb5900",
377
- "0x763b49f901dc894f2dec1c7d19e46250b4452679",
378
- "0xe39236a9cf13f65db8add06bd4b834c65c523d2b",
379
- "0xe63402a7dc11ab4d03c477cc92209463a55a5134",
380
- "0x80312bad9dd71d3a159e794b7fb1b2386f82f07f",
381
- "0xcf624dfda707de7c7a5669a472f81dac130264c3",
382
- "0x86d43f93ed9ad1182981c19567f83bac1dc1513b",
383
- "0x18525875bd0259d3efe1c04927a027fad8ca0b86",
384
- "0x54469071ca82b46a2c01c09d38ca6ca4347eb21d",
385
- "0x1495d6f5434376981778f64c63d2e15da25b0541",
386
- "0x0af5ef8cdcedddd9033cef1e83b0ae54f3a793a5",
387
- "0x28523b680d4ffbd6e4fc95c3c12f5485f9635e00",
388
- "0xb6808120fb648c0bdc483ec423d933a7ebf6bb0a",
389
- "0x11c9dbca722770e8802f0c3d65c38768e91ac53c",
390
- "0x2961a6c2fe39f0ffc4f4b1d9e037cd95f4e9c993",
391
- "0x7912636d68e5d92708862b38698f764bf1ec297c",
392
- "0x240d844ada767be0ab08f9bcccb6d8a04ae370ec",
393
- "0xc116be98ad4574ee771553a0977fa9591d48c383",
394
- "0x5d007a7633d05b0ddd068b71e8448cd1fcdbd823",
395
- "0x05eb1c46bd539fd2a098b06d83a5bb81e5a58e63",
396
- "0x36de29db57062a583436ae071e141404dfe2311c",
397
- "0x105678e10c32a29543902067fed1bb2e5e0b3cee",
398
- "0xff73f4deeffe4f7e53e20d757b99d82d465c93b9",
399
- "0x1dfbd51e464e45a9dfe33b79222d6b3f0bedc1f0",
400
- "0xb3375a6f09cfff8591577d03133eeaf39ca76a84",
401
- "0xfd6f7a6a5c21a3f503ebae7a473639974379c351",
402
- "0x137dbc6fd877d802c567b74741d9b2526685718a",
403
- "0x86a2ee8faf9a840f7a2c64ca3d51209f9a02081d",
404
- "0x34b40ba116d5dec75548a9e9a8f15411461e8c70",
405
- "0x5971b98c0066517bae7d44021f42e50b77cfe1f9",
406
- "0xf380bc8b4e595deca3a55a4c98a6c4fa1c96f537",
407
- "0x724dbc61127e39a610be416b455deb800d51a3b2",
408
- "0x720472c8ce72c2a2d711333e064abd3e6bbeadd3",
409
- "0x4c4a2f8c81640e47606d3fd77b353e87ba015584",
410
- "0x2e2ed0cfd3ad2f1d34481277b3204d807ca2f8c2",
411
- "0x21df544947ba3e8b3c32561399e88b52dc8b2823",
412
- "0xce17442a9e26bcfdfab2e9028e3a655d046f1654",
413
- "0xe88cd74511b17f10363b557c2e9632caab353b39",
414
- "0x3b7bf1232414bc52e3c233d0af8524f259463034",
415
- "0xa6f88e890518adab4517f95c74b0af4370b7e0be",
416
- "0xa3b0167657e47aba3b541c1b21448b449f2ce3bc",
417
- "0xfe67c7f6d6a9eda3ade28d8d1bdf1b764491e823",
418
- "0x9bdb9d2ad7aaf2763e49aa518a3b3cc4798210c6",
419
- "0xfe16b3e38b6eeb8f4ea0c820cb4547ec03edfe0e",
420
- "0xab06522cff9ec6302a32b9db057293e80e1bc43a",
421
- "0x5d42ebdbba61412295d7b0302d6f50ac449ddb4f",
422
- "0xdde78e6202518ff4936b5302cc2891ec180e8bff",
423
- "0xb06c856c8eabd1d8321b687e188204c1018bc4e5",
424
- "0xab7b4c595d3ce8c85e16da86630f2fc223b05057",
425
- "0xa51c1fc2f0d1a1b8494ed1fe312d7c3a78ed91c0",
426
- "0x8f19e89ed457ca4a3cb0df96653d1952f465ca4a",
427
- "0x810d8eb0bc99faebc340eca183e0110cf0635a89",
428
- "0x0b92ee05abeeeedef0a0e861468a4317d6e2ac93",
429
- "0x0165878a594ca255338adfa4d48449f69242eb8f",
430
- "0x9bd03768a7dcc129555de410ff8e85528a4f88b5",
431
- "0x23db4a08f2272df049a4932a4cc3a6dc1002b33e",
432
- "0x61c36a8d610163660e21a8b7359e1cac0c9133e1",
433
- "0xe6e340d132b5f46d1e472debcd681b2abc16e57e",
434
- "0x5fbdb2315678afecb367f032d93f642f64180aa3",
435
- "0x4659176e962763e7c8a4ef965ecfd0fdf9f52057",
436
- "0xe26867ddd22f9342d9f0d566d182f2c960683971",
437
- "0x3a9299be789ac3730e4e4c49d6d2ad1b8bc34dff",
438
- "0xc2ff55b896e3c42f9e1c2f7467c51b93f1c23dfd",
439
- "0xf34552f1583c0b981dbb09611128c3375b47182e",
440
- "0xfaf457fb4a978be059506f6cd41f9b30fca753b0",
441
- "0x87d77a30a6819860eb8332d293810ed7b510035a",
442
- "0x622e1131155c6a33616fa4d97273096b047e7102",
443
- "0x30d37b05cf73edd8c59ce8450f093f6c06da9272",
444
- "0x6c35677206ae7ff1bf753877649cf57cc30d1c42",
445
- "0x0a8c6bb832801454f6cc21761d0a293caa003296",
446
- "0x3f55bd3b432edc73bbb704fa5a29cc08dc1adbeb",
447
- "0x12d15efc3c9661ad68209cd197d416bfd9b145f5",
448
- "0xfc918f32d89b7592fbda5a0fbc7eaa0c9a0d5d4a",
449
- "0x62305662fa7c4bc442803b940d9192dbdc92d710",
450
- "0x5f6f25143cd580e2e285210d7cfcb26e59cf9566",
451
- "0xa99ba154223052b8c5fd92b3f5df9eb08b72d5fc",
452
- "0xd33ba17c8a644c585089145e86e282fada6f3bfd",
453
- "0x02416eb83cff1f19163f21010149c3867f3261e1",
454
- "0xf4c34bed7dd779485692bb1857acf9c561b45010",
455
- "0x06eafc6749723583672fc8f4451c8ec0e59f5798",
456
- "0xa049894d5dcad406b7c827d6dc6a0b58ca4ae73a",
457
- "0xc00e94cb662c3520282e6f5717214004a7f26888",
458
- "0xda85fced9bd193526b7667f2ad1fd4a0f900d3a7",
459
- "0xec6dce387b1616a0c44ff2e4fa9e90e53cf14eb0",
460
- "0xdac6a0c973ba7cf3526de456affa43ab421f659f",
461
- "0xa150a825d425b36329d8294eef8bd0fe68f8f6e0",
462
- "0x98fa532dd5c3a6b66fbf370813803192de4e0abd",
463
- "0x78cc5ab2f0990b5fe58f95baebf8f37879534aeb",
464
- "0xf4411c22766947db2da39ad534a040b770b51153",
465
- "0x5766cf4b2fdb09d986eb1783d276013c224e28c8",
466
- "0x0c6c80d2061afa35e160f3799411d83bdeea0a5a",
467
- "0x603b8c0f110e037b51a381cbcacabb8d6c6e4543",
468
- "0x57ee6ceff51cb30ecb1245934a882c500fbec1e9",
469
- "0x6f1b4dfdd7156fc5752541ef35edf57b48e74475",
470
- "0x7b7246c78e2f900d17646ff0cb2ec47d6ba10754",
471
- "0x3ff2d8eb2573819a9ef7167d2ba6fd6d31b17f4f",
472
- "0x765277eebeca2e31912c9946eae1021199b39c61",
473
- "0xd17652350cfd2a37ba2f947c910987a3b1a1c60d",
474
- "0x1ae4929090258a9d5000d98cfb8a27174d345834",
475
- "0xb7c3e738224625289c573c54d402e9be46205546",
476
- "0xd253a5203817225e9768c05e5996d642fb96ba86",
477
- "0xbe43ecb37af7f7c4a8606e672c504be55fc6226b",
478
- "0x9a34822112bc73bdc941c62dcc311ca905aef2a3",
479
- "0x99c22e78a579e2176311c736c4c9f0b0d5a47806",
480
- "0xf2283840ce37dae0a06b40a9a80603977f36fa3f",
481
- "0xcd5e8a81b1e02c1837a674f87df327c14f4e5748",
482
- "0x3d0bacbdc06a28971855275d511e6249be67112d",
483
- "0x96b81f82a29e78c5ba9e2034ce8490fd641a24eb",
484
- "0x563a80a452264a9e1aa37c6fa0b46d04c3c71b24",
485
- "0xac132ece25217867e318ea8ff63420c90d5a74a6"
486
- ];
487
-
488
- setMulticallAddress(122, "0x3CE6158b7278Bf6792e014FA7B4f3c6c46fe9410");
489
- const fuseProvider = new ethers.providers.WebSocketProvider("wss://rpc.gooddollar.org");
490
- const ethcallProvider = new Provider(fuseProvider, 122);
491
-
492
- const GD_FUSE = "0x495d133b938596c9984d462f007b676bdc57ecec";
493
- const IDENTITY_FUSE = "0xFa8d865A962ca8456dF331D78806152d3aC5B84F";
494
-
495
- let gd = new ethers.Contract(
496
- GD_FUSE,
497
- [
498
- "event Transfer(address indexed from, address indexed to, uint amount)",
499
- "function balanceOf(address) view returns(uint256)"
500
- ],
501
- fuseProvider
502
- );
503
- const identityContract = new Contract(IDENTITY_FUSE, Identity.abi);
504
-
505
- /**
506
- * in/out G$ to a specific address (here used for invites)
507
- */
508
- const main = async () => {
509
- const curBlock = await fuseProvider.getBlockNumber();
510
- let p2pTxs = [];
511
- let uniques = [];
512
- const f = gd.filters.Transfer();
513
- const STEP_SIZE = 5000;
514
- const fromBlocks = range(curBlock - 6e5, curBlock, STEP_SIZE); //600k blocks roughly a month
515
- const pool = new PromisePool({ concurrency: 2 });
516
- console.log({ curBlock });
517
- fromBlocks.forEach(fromBlock => {
518
- pool.add(async () => {
519
- const options = { limit: 20, delay: 2000 };
520
- const retrier = new Retrier(options);
521
-
522
- const results = await retrier
523
- .resolve(() => gd.queryFilter(f, fromBlock, fromBlock + STEP_SIZE))
524
- .catch(e => console.warn("queryfilter failed:", { fromBlock }));
525
- if (!results) return;
526
- const clean = results.filter(
527
- _ =>
528
- !(
529
- allProtocolAddresses.includes(_.args.to.toLowerCase()) ||
530
- allProtocolAddresses.includes(_.args.from.toLowerCase())
531
- )
532
- );
533
-
534
- const checkWhitelisted = uniq(flatten(clean.map(_ => [_.args.from.toLowerCase(), _.args.to.toLowerCase()])));
535
- const calls = checkWhitelisted.map(d => identityContract.isWhitelisted(d));
536
- const result = await ethcallProvider.all(calls);
537
- const whitelisted = checkWhitelisted.filter((v, i) => result[i]);
538
- const p2p = clean.filter(
539
- _ => whitelisted.includes(_.args.to.toLowerCase()) || whitelisted.includes(_.args.from.toLowerCase())
540
- );
541
- p2pTxs = p2pTxs.concat(p2p);
542
- uniques = uniques.concat(whitelisted);
543
- console.log({ fromBlock }, results.length, clean.length, checkWhitelisted.length, whitelisted.length, p2p.length);
544
- });
545
- });
546
-
547
- await pool.all();
548
-
549
- uniques = uniq(uniques);
550
- console.log(p2pTxs.length, uniques.length);
551
- fs.writeFileSync("p2pTxs.json", JSON.stringify({ p2pTxs, uniques }));
552
- };
553
-
554
- const analyze = () => {
555
- const { p2pTxs } = JSON.parse(fs.readFileSync("p2pTxs.json").toString());
556
- let value = 0;
557
- console.log(p2pTxs[0]);
558
- p2pTxs.forEach(tx => {
559
- value += Number(tx.args[2].hex);
560
- });
561
- console.log(p2pTxs.length, { value });
562
- };
563
- analyze();
564
- // main().catch(e => console.error("Error:", e.message));
@@ -1,70 +0,0 @@
1
- import { range } from "lodash";
2
- import PromisePool from "async-promise-pool";
3
- import fs from "fs";
4
- import { Provider, setMulticallAddress } from "ethers-multicall";
5
-
6
- import { ethers } from "hardhat";
7
- import { Retrier } from "@jsier/retrier";
8
-
9
- setMulticallAddress(122, "0x3CE6158b7278Bf6792e014FA7B4f3c6c46fe9410");
10
- const celoProvider = new ethers.providers.JsonRpcBatchProvider(
11
- "https://forno.celo.org"
12
- );
13
-
14
- const GD_CELO = "0x62B8B11039FcfE5aB0C56E502b1C372A3d2a9c7A";
15
-
16
- let gd = new ethers.Contract(
17
- GD_CELO,
18
- [
19
- "event Transfer(address indexed from, address indexed to, uint amount)",
20
- "function balanceOf(address) view returns(uint256)"
21
- ],
22
- celoProvider
23
- );
24
-
25
- /**
26
- * in/out G$ to a specific address (here used for invites)
27
- */
28
- const main = async () => {
29
- const curBlock = await celoProvider.getBlockNumber();
30
- let txs = [];
31
- const f = gd.filters.Transfer(null, GD_CELO);
32
- const STEP_SIZE = 5000;
33
- const fromBlocks = range(curBlock - 6e6, curBlock, STEP_SIZE); //600k blocks roughly a month
34
- const pool = new PromisePool({ concurrency: 2 });
35
- console.log({ curBlock });
36
- fromBlocks.forEach(fromBlock => {
37
- pool.add(async () => {
38
- const options = { limit: 20, delay: 2000 };
39
- const retrier = new Retrier(options);
40
-
41
- const results = await retrier
42
- .resolve(() => gd.queryFilter(f, fromBlock, fromBlock + STEP_SIZE))
43
- .catch(e => console.warn("queryfilter failed:", { fromBlock }));
44
- if (!results) return;
45
-
46
- txs = txs.concat(results);
47
- console.log({ fromBlock }, results.length);
48
- });
49
- });
50
-
51
- await pool.all();
52
-
53
- console.log(txs.length);
54
- fs.writeFileSync("stuckgd.json", JSON.stringify(txs));
55
- };
56
-
57
- const analyze = () => {
58
- const txs = JSON.parse(fs.readFileSync("stuckgd.json").toString());
59
- let value = 0;
60
- console.log(txs[0]);
61
- txs.forEach(tx => {
62
- value += Number(tx.args[2].hex);
63
- console.log(
64
- `erc20,${GD_CELO},${tx.args[0]},${Number(tx.args[2].hex) / 1e18},`
65
- );
66
- });
67
- console.log(txs.length, { value });
68
- };
69
- analyze();
70
- // main().catch(e => console.error("Error:", e.message));
@@ -1,48 +0,0 @@
1
- import { maxBy, range, sortBy } from "lodash";
2
- import PromisePool from "async-promise-pool";
3
- import fs from "fs";
4
- import { ethers } from "hardhat";
5
-
6
- /**
7
- * in/out G$ to a specific address (here used for invites)
8
- */
9
- const main = async () => {
10
- let address = "0xCa2F09c3ccFD7aD5cB9276918Bd1868f2b922ea0";
11
- let token = "0x495d133B938596C9984d462F007B676bDc57eCEC";
12
- let startblock = 14710000;
13
- let stepSize = 5000;
14
- let result = [];
15
- let incoming = 0;
16
- let outgoing = 0;
17
- let ins = [];
18
- let curPage = 1;
19
- let maxResult;
20
- let reachedStartBlock = false;
21
- do {
22
- const pages = range(curPage, curPage + 5, 1);
23
- curPage += 5;
24
- const ps = pages.map(p => {
25
- const url = `https://explorer.fuse.io/api?module=account&action=tokentx&address=${address}&contractaddress=${token}&page=${p}&offset=${stepSize}`;
26
- console.log({ url });
27
- return fetch(url)
28
- .then(_ => _.json())
29
- .then(_ => _.result);
30
- });
31
-
32
- const results = await Promise.all(ps);
33
- result = result.concat(...results);
34
- maxResult = maxBy(results, "length");
35
- reachedStartBlock = result.find(_ => Number(_.blockNumber) <= startblock);
36
- maxResult && console.log(maxResult.length, result.length);
37
- } while (maxResult.length === stepSize && !reachedStartBlock);
38
- result.forEach(r => {
39
- if (r.from === address.toLowerCase()) outgoing += Number(r.value);
40
- else {
41
- incoming += Number(r.value);
42
- ins.push(r);
43
- }
44
- });
45
- fs.writeFileSync("tokenInOut.json", JSON.stringify({ incoming, outgoing, ins }));
46
- };
47
-
48
- main().catch(e => console.log(e));