@gooddollar/goodprotocol 1.0.30-beta.2 → 1.0.30

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