@gooddollar/goodprotocol 1.0.7 → 1.0.10

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 (126) hide show
  1. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  2. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  3. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  4. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  7. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  8. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  9. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  28. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  29. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  30. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  31. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  32. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +62 -4
  33. package/artifacts/contracts/governance/GovarnanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  34. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  35. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  36. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +17 -17
  37. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  38. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  39. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  40. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  41. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  42. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  43. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  44. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  45. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  46. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  47. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  48. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  49. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  50. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  51. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  52. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  53. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  58. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  60. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  62. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  63. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  64. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  65. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  66. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  67. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  68. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +4 -0
  69. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +256 -0
  70. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  71. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  72. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  73. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  74. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +4 -0
  75. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.json +1033 -0
  76. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  77. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  78. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  79. package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.dbg.json +4 -0
  80. package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.json +148 -0
  81. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  82. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  83. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +4 -0
  84. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +1224 -0
  85. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  86. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  87. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  88. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  89. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  90. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
  91. package/artifacts/contracts/unaudited-foundation/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  92. package/artifacts/contracts/unaudited-foundation/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  93. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  94. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  95. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  96. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  97. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  98. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  99. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  100. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  101. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  102. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  103. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  104. package/contracts/governance/GReputation.sol +53 -14
  105. package/contracts/governance/Reputation.sol +13 -25
  106. package/contracts/staking/BaseShareFieldV2.sol +319 -0
  107. package/contracts/staking/SimpleStakingV2.sol +522 -0
  108. package/contracts/staking/aave/AaveStakingFactoryV2.sol +93 -0
  109. package/contracts/staking/aave/GoodAaveStakingV2.sol +263 -0
  110. package/package.json +1 -1
  111. package/releases/deployment.json +47 -47
  112. package/releases/olddao.json +1 -1
  113. package/scripts/deployFullDAO.ts +1 -1
  114. package/scripts/misc/goodgiveback.ts +4 -5
  115. package/test/governance/ClaimersDistribution.test.ts +5 -5
  116. package/test/governance/CompoundVotingMachine.castvote.test.ts +1 -1
  117. package/test/governance/CompoundVotingMachine.daoscheme.ts +1 -1
  118. package/test/governance/CompoundVotingMachine.guardian.test.ts +1 -1
  119. package/test/governance/GReputation.test.ts +49 -18
  120. package/test/governance/GovernanceStaking.test.ts +71 -47
  121. package/test/governance/Reputation.test.ts +52 -51
  122. package/test/governance/StakersDistribution.test.ts +12 -8
  123. package/test/helpers.ts +5 -1
  124. package/test/staking/GoodAaveStakingFactoryV2.test.ts +122 -0
  125. package/test/staking/UsdcAaveStaking.test.ts +5 -1
  126. package/test/staking/UsdcAaveStakingV2.test.ts +291 -0
@@ -0,0 +1,263 @@
1
+ // SPDX-License-Identifier: MIT
2
+
3
+ pragma solidity >=0.8.0;
4
+ import "../SimpleStakingV2.sol";
5
+ import "../../Interfaces.sol";
6
+ import "../../utils/DataTypes.sol";
7
+ import "../UniswapV2SwapHelper.sol";
8
+
9
+ /**
10
+ * @title Staking contract that donates earned interest to the DAO
11
+ * allowing stakers to deposit Token
12
+ * or withdraw their stake in Token
13
+ * the contracts buy cToken and can transfer the daily interest to the DAO
14
+ */
15
+ contract GoodAaveStakingV2 is SimpleStakingV2 {
16
+ using UniswapV2SwapHelper for IHasRouter;
17
+
18
+ // Address of the TOKEN/USD oracle from chainlink
19
+ address public tokenUsdOracle;
20
+
21
+ //LendingPool of aave
22
+ ILendingPool public lendingPool;
23
+
24
+ //Address of the AaveIncentivesController
25
+ IAaveIncentivesController public incentiveController;
26
+
27
+ //address of the AAVE/USD oracle
28
+ address public aaveUSDOracle;
29
+ // Gas cost to collect interest from this staking contract
30
+ uint32 public collectInterestGasCost;
31
+ // Gas cost to claim stkAave rewards
32
+ uint32 public stkAaveClaimGasCost;
33
+
34
+ address[] public tokenToDaiSwapPath;
35
+
36
+ /**
37
+ * @param _token Token to swap DEFI token
38
+ * @param _lendingPool LendingPool address
39
+ * @param _ns Address of the NameService
40
+ * @param _tokenName Name of the staking token which will be provided to staker for their staking share
41
+ * @param _tokenSymbol Symbol of the staking token which will be provided to staker for their staking share
42
+ * @param _tokenSymbol Determines blocks to pass for 1x Multiplier
43
+ * @param _tokenUsdOracle address of the TOKEN/USD oracle
44
+ * @param _incentiveController Aave incentive controller which provides AAVE rewards
45
+ * @param _aaveUSDOracle address of the AAVE/USD oracle
46
+ */
47
+ function init(
48
+ address _token,
49
+ address _lendingPool,
50
+ INameService _ns,
51
+ string memory _tokenName,
52
+ string memory _tokenSymbol,
53
+ uint64 _maxRewardThreshold,
54
+ address _tokenUsdOracle,
55
+ IAaveIncentivesController _incentiveController,
56
+ address _aaveUSDOracle,
57
+ address[] memory _tokenToDaiSwapPath
58
+ ) public {
59
+ lendingPool = ILendingPool(_lendingPool);
60
+ DataTypes.ReserveData memory reserve = lendingPool.getReserveData(_token);
61
+ initialize(
62
+ _token,
63
+ reserve.aTokenAddress,
64
+ _ns,
65
+ _tokenName,
66
+ _tokenSymbol,
67
+ _maxRewardThreshold
68
+ );
69
+ require(
70
+ _tokenToDaiSwapPath[0] == _token &&
71
+ _tokenToDaiSwapPath[_tokenToDaiSwapPath.length - 1] ==
72
+ nameService.getAddress("DAI"),
73
+ "invalid _tokenToDaiSwapPath"
74
+ );
75
+ tokenToDaiSwapPath = _tokenToDaiSwapPath;
76
+
77
+ //above initialize going to revert on second call, so this is safe
78
+ tokenUsdOracle = _tokenUsdOracle;
79
+ incentiveController = _incentiveController;
80
+ aaveUSDOracle = _aaveUSDOracle;
81
+ collectInterestGasCost = 250000;
82
+ stkAaveClaimGasCost = 50000;
83
+ _approveTokens();
84
+ }
85
+
86
+ /**
87
+ * @dev stake some Token
88
+ * @param _amount of Token to stake
89
+ */
90
+ function mintInterestToken(uint256 _amount) internal override {
91
+ lendingPool.deposit(address(token), _amount, address(this), 0);
92
+ }
93
+
94
+ /**
95
+ * @dev redeem Token from aave
96
+ * @param _amount of token to redeem in Token
97
+ */
98
+ function redeem(uint256 _amount) internal override {
99
+ uint256 withdrawnAmount = lendingPool.withdraw(
100
+ address(token),
101
+ _amount,
102
+ address(this)
103
+ );
104
+ require(withdrawnAmount > 0, "Withdrawn amount should be bigger than zero");
105
+ }
106
+
107
+ /**
108
+ * @dev Function to redeem aToken for DAI, so reserve knows how to handle it. (reserve can handle dai or cdai)
109
+ * also transfers stkaave to reserve
110
+ * @dev _amount of token in iToken
111
+ * @dev _recipient recipient of the DAI
112
+ * @return actualTokenGains amount of token redeemed for dai,
113
+ actualRewardTokenGains amount of reward token earned,
114
+ daiAmount total dai received
115
+ */
116
+ function redeemUnderlyingToDAI(uint256 _amount, address _recipient)
117
+ internal
118
+ override
119
+ returns (
120
+ uint256 actualTokenGains,
121
+ uint256 actualRewardTokenGains,
122
+ uint256 daiAmount
123
+ )
124
+ {
125
+ //out of requested interests to withdraw how much is it safe to swap
126
+ actualTokenGains = IHasRouter(this).maxSafeTokenAmount(
127
+ address(token),
128
+ tokenToDaiSwapPath[1],
129
+ _amount,
130
+ maxLiquidityPercentageSwap
131
+ );
132
+
133
+ lendingPool.withdraw(address(token), actualTokenGains, address(this));
134
+ actualTokenGains = token.balanceOf(address(this));
135
+
136
+ address[] memory tokenAddress = new address[](1);
137
+ tokenAddress[0] = address(iToken);
138
+
139
+ actualRewardTokenGains = incentiveController.claimRewards(
140
+ tokenAddress,
141
+ type(uint256).max,
142
+ avatar
143
+ );
144
+
145
+ if (actualTokenGains > 0) {
146
+ daiAmount = IHasRouter(this).swap(
147
+ tokenToDaiSwapPath,
148
+ actualTokenGains,
149
+ 0,
150
+ _recipient
151
+ );
152
+ }
153
+ }
154
+
155
+ /**
156
+ * @dev returns decimals of token.
157
+ */
158
+ function tokenDecimal() internal view override returns (uint256) {
159
+ ERC20 token = ERC20(address(token));
160
+ return uint256(token.decimals());
161
+ }
162
+
163
+ /**
164
+ * @dev returns decimals of interest token.
165
+ */
166
+ function iTokenDecimal() internal view override returns (uint256) {
167
+ ERC20 aToken = ERC20(address(iToken));
168
+ return uint256(aToken.decimals());
169
+ }
170
+
171
+ /**
172
+ * @dev Function that calculates current interest gains of this staking contract
173
+ * @param _returnTokenBalanceInUSD determine return token balance of staking contract in USD
174
+ * @param _returnTokenGainsInUSD determine return token gains of staking contract in USD
175
+ * @return iTokenGains gains in iToken, tokenGains gains in token, tokenBalance current balance , balanceInUSD, tokenGainsInUSD
176
+ */
177
+ function currentGains(
178
+ bool _returnTokenBalanceInUSD,
179
+ bool _returnTokenGainsInUSD
180
+ )
181
+ public
182
+ view
183
+ override
184
+ returns (
185
+ uint256 iTokenGains,
186
+ uint256 tokenGains,
187
+ uint256 tokenBalance,
188
+ uint256 balanceInUSD,
189
+ uint256 tokenGainsInUSD
190
+ )
191
+ {
192
+ ERC20 aToken = ERC20(address(iToken));
193
+ tokenBalance = aToken.balanceOf(address(this));
194
+ balanceInUSD = _returnTokenBalanceInUSD
195
+ ? getTokenValueInUSD(tokenUsdOracle, tokenBalance, token.decimals())
196
+ : 0;
197
+ address[] memory tokenAddress = new address[](1);
198
+ tokenAddress[0] = address(token);
199
+ if (tokenBalance <= totalProductivity) {
200
+ return (0, 0, tokenBalance, balanceInUSD, 0);
201
+ }
202
+ iTokenGains = tokenGains = tokenBalance - totalProductivity;
203
+
204
+ tokenGainsInUSD = _returnTokenGainsInUSD
205
+ ? getTokenValueInUSD(tokenUsdOracle, tokenGains, token.decimals())
206
+ : 0;
207
+ }
208
+
209
+ /**
210
+ * @dev Function to get interest transfer cost for this particular staking contract
211
+ */
212
+ function getGasCostForInterestTransfer()
213
+ external
214
+ view
215
+ override
216
+ returns (uint32)
217
+ {
218
+ address[] memory tokenAddress = new address[](1);
219
+ tokenAddress[0] = address(iToken);
220
+ uint256 stkAaaveBalance = incentiveController.getRewardsBalance(
221
+ tokenAddress,
222
+ address(this)
223
+ );
224
+ if (stkAaaveBalance > 0)
225
+ return collectInterestGasCost + stkAaveClaimGasCost;
226
+
227
+ return collectInterestGasCost;
228
+ }
229
+
230
+ /**
231
+ * @dev Set Gas cost to interest collection for this contract
232
+ * @param _collectInterestGasCost Gas cost to collect interest
233
+ * @param _rewardTokenCollectCost gas cost to collect reward tokens
234
+ */
235
+ function setcollectInterestGasCostParams(
236
+ uint32 _collectInterestGasCost,
237
+ uint32 _rewardTokenCollectCost
238
+ ) external {
239
+ _onlyAvatar();
240
+ collectInterestGasCost = _collectInterestGasCost;
241
+ stkAaveClaimGasCost = _rewardTokenCollectCost;
242
+ }
243
+
244
+ /**
245
+ * @dev Calculates worth of given amount of iToken in Token
246
+ * @param _amount Amount of token to calculate worth in Token
247
+ * @return Worth of given amount of token in Token
248
+ */
249
+ function iTokenWorthInToken(uint256 _amount)
250
+ public
251
+ view
252
+ override
253
+ returns (uint256)
254
+ {
255
+ return _amount; // since aToken is peg to Token 1:1 return exact amount
256
+ }
257
+
258
+ function _approveTokens() internal override {
259
+ address uniswapRouter = nameService.getAddress("UNISWAP_ROUTER");
260
+ token.approve(uniswapRouter, type(uint256).max);
261
+ token.approve(address(lendingPool), type(uint256).max); // approve the transfers to defi protocol as much as possible in order to save gas
262
+ }
263
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddollar/goodprotocol",
3
- "version": "1.0.7",
3
+ "version": "1.0.10",
4
4
  "description": "GoodDollar Protocol",
5
5
  "scripts": {
6
6
  "build": "scripts/build.sh deploy",
@@ -273,7 +273,7 @@
273
273
  "Contribution": "0x27816e32270a413AF676A2E3a25dB93C7F565a80",
274
274
  "StakingContracts": [
275
275
  [
276
- "0x61b36EcaEd25c4EE3017905B5Dd006129a4dfb0B",
276
+ "0x1189c2227bAa8f0749e842B366b0912d29A5A04E",
277
277
  13888
278
278
  ]
279
279
  ],
@@ -321,62 +321,62 @@
321
321
  },
322
322
  "test": {
323
323
  "ProxyFactory": "0x36dE29DB57062A583436Ae071e141404dFE2311C",
324
- "NameService": "0x96A1387db376aa037577E45296ff4DF50e57D951",
325
- "GReputation": "0xA1931fDFB3677FaDDDad7d5318ef122D6c5829d6",
326
- "CompoundVotingMachine": "0x0f40826cdDBdc724EA6535461F0CD66F942E13eB",
327
- "ClaimersDistribution": "0xc3af8B9293fE4EE40F892A692DA945937C8841f0",
328
- "GovernanceStaking": "0x35BDA1D4f4E4D397d5b81a8cdc7fE183b98F537C",
329
- "UBIScheme": "0x3571108268F2b87fb8c8B8Bc7Bc4F1C02EBAB1da",
330
- "ProtocolUpgradeFuse": "0x8a5592b0E95767886642269AEb0B7A80dAa22c8f",
324
+ "NameService": "0xAd8C024cE4E90D0bf00eD29f441581F6FDE54C34",
325
+ "GReputation": "0x80073051B408D4011221634c7fe464d16Eef4eb5",
326
+ "CompoundVotingMachine": "0xFA18ab3DD023DAFB2cEB6cb0507557b26362180E",
327
+ "ClaimersDistribution": "0x065A4F59bEE2Eaca8a73Ca4eD84CA0aB288b5BdD",
328
+ "GovernanceStaking": "0xcFa693a6B5d8399b771582afF07B5a8f55D75d40",
329
+ "UBIScheme": "0x4dd4301DB4461EbD0ac859fFFCc90531EBaC5D75",
330
+ "ProtocolUpgradeFuse": "0xAf49e224e71AF966D5367E6c8DED0CF7FcD110d0",
331
331
  "network": "test",
332
332
  "networkId": 4447,
333
- "HomeBridge": "0x2B09d54B5cA65dEB169c29c2D3e01cc3Dd214cd3",
334
- "OneTimePayments": "0x329058C12E8B269BFA0896c8705b427c5Dd26b96",
335
- "AdminWallet": "0xD7559ba7a3f22B4055a9e88cBDC0EC1Ffd422af1",
336
- "Identity": "0xB3a1e45D60f9394bC4327f5Dc46dB56D8a3c3688",
337
- "GoodDollar": "0xBbF27a9b9b7fd870f5cd7AE63063bf415739E4d8",
338
- "Controller": "0xA9dd0B4A47eabCDd01eEDb5558d13736A6aEc424",
339
- "Avatar": "0x52F2B02fDcdA0aD5Ec89BE2Da06EB459392f59e6",
340
- "FirstClaimPool": "0x8D7a45413AC4115d22CC88a87264dEE8002AfBca",
341
- "BancorFormula": "0xED2c0B4fAE32e94a8e3A96a2F999A235ef95a746",
342
- "DAI": "0x8B8776BEDB1eD89Ab6BD2388bCbef3C579ca53b9",
343
- "cDAI": "0xFE0730c6426b87BEBE9bf73474B1310F93617822",
344
- "COMP": "0x1BA1f90A3eB0e59421B54Dbf876119987587C0C3"
333
+ "HomeBridge": "0xc90C13734D20e27904dF248FB850f50C81CE3642",
334
+ "OneTimePayments": "0x4D5D3FaE9b08a4FA2aEB9Bc0d86E3dB3b3126438",
335
+ "AdminWallet": "0x65E001B67f1aD28FF337C4F6e1cA52F31F5Eb9Fd",
336
+ "Identity": "0x473A31861aB89d5D7a78E7efc57ad31d84ED5343",
337
+ "GoodDollar": "0x040F0292f908c83BdEcCAE7600344503F2a20691",
338
+ "Controller": "0x75B282FdEaEce36C6E9363F30010058c284D9199",
339
+ "Avatar": "0xB3cbA81d4ce278661E26E2107936A014efc31343",
340
+ "FirstClaimPool": "0xd3aF095DE5D1419ADabE47a48d6110e37236A97F",
341
+ "BancorFormula": "0x0d6e43d4d7944408d9a5A10BC57B4348d61cD764",
342
+ "DAI": "0xB3a1e45D60f9394bC4327f5Dc46dB56D8a3c3688",
343
+ "cDAI": "0x1f720E7952650ED8Ca142feBD52aCBe8b7A21741",
344
+ "COMP": "0xD83C9f1B0DaFb1992eF92ac62D6509e54AD4eD48"
345
345
  },
346
346
  "test-mainnet": {
347
347
  "ProxyFactory": "0xce17442a9e26bcFDFAb2e9028e3A655d046f1654",
348
- "NameService": "0xaF3cc4629A89c3f4fEECD43473cE795DA97e87DD",
349
- "GReputation": "0x4de47133f3a8097E9D4f5C9C693A3eB90237dbd1",
350
- "CompoundVotingMachine": "0x2A6E07b5a96219Bf85cDd43ABb850a69de718bAe",
351
- "GoodMarketMaker": "0x80e8525d8E150ee72f9Ce337dbD3549Ed5c881af",
352
- "GoodReserveCDai": "0xb417a72Ce65B5F0Fbc302DFd0dB1b78a53BB5976",
353
- "ExchangeHelper": "0x1E8F8D7e922F7606db5736d38C7128FeA276a391",
354
- "GoodFundManager": "0x0FD8CE93589Af01C1B79929087A81a2425ECB2B6",
355
- "StakersDistribution": "0xfeBFF379f3A553571C5ffBD0Fd8278862c932500",
356
- "ProtocolUpgrade": "0x12754d8FCCb302097A8f67Fa7dE8981Ef5FC3106",
357
- "UniswapV2SwapHelper": "0x2945B8c837A2bACD8007d327d5fDa509af34152e",
358
- "CompoundStakingFactory": "0xb2cAa6f80efA72b236fd6393CA1229754Aa24f63",
359
- "AaveStakingFactory": "0xf38D5cc7f334729e7EfBc90Cd6C4181Be6f2EF15",
348
+ "NameService": "0x55125Ed5fa29594A8DbD7D0fB186888537B9c140",
349
+ "GReputation": "0x7235eC3c7b450eE36De0141b205d89D08C5de5fE",
350
+ "CompoundVotingMachine": "0xE8A10EA2E8764EB25684A2974913dDAbFefA4494",
351
+ "GoodMarketMaker": "0xF4eD16cBD64f07230C5bc9667357cE1D161DF894",
352
+ "GoodReserveCDai": "0x1bEA43626e0b6Afe157FBD1398093359261bB53e",
353
+ "ExchangeHelper": "0x6fad49b578CbF1d8F21b6dF17ccBB5d409Fb6BC8",
354
+ "GoodFundManager": "0x7963849A738719BE64c669c8Ce5613A6331C8caC",
355
+ "StakersDistribution": "0x5c73Ed454acB4467C0a35264D7a455C607FcE1bA",
356
+ "ProtocolUpgrade": "0x9c15162c1f7f01C64c0e068f2E48D39Cd7b18f86",
357
+ "UniswapV2SwapHelper": "0x39683C5c01B4a875FA7d4f5766D2Df521Fc0b4AD",
358
+ "CompoundStakingFactory": "0x712e1b726F6149C768fff8572CeA0Bdba23a561B",
359
+ "AaveStakingFactory": "0x36c7b0946e701EA6cE8e101B4C959FF15D0DeE15",
360
360
  "network": "test-mainnet",
361
361
  "networkId": 4447,
362
- "ForeignBridge": "0x6852Adb5Fce1D73c08A9b3Aa7edE9A03437ac2fE",
363
- "Contribution": "0x66a2BECe75FCE45ddFe2C06216CE9350a4c46498",
362
+ "ForeignBridge": "0x9F95c870a4104603630CBEDBbbd56c6465Cc8A58",
363
+ "Contribution": "0x770ace66dd84B035F71FfC977448032EE688604d",
364
364
  "StakingContracts": [
365
365
  [
366
- "0x6C4469dDE9270D20F650D08E50dcfFa18CD3e455",
366
+ "0xb440419193c65B52e68a819BBe11Bd770Bf93B33",
367
367
  13888
368
368
  ]
369
369
  ],
370
- "DonationsStaking": "0xE41B45E95e70ecDa9A3fe28d2DC5892CeafF639b",
371
- "Identity": "0x63766F0efAa46a86E9055bB46e41ff7bc64CBEA2",
372
- "GoodDollar": "0x94a9D2532DA2d9153336159907604A01c3E91C11",
373
- "Controller": "0x0B57Fd12F7A95c322aD176D23765507ce09892Cb",
374
- "Avatar": "0xf6Ee31185AC05C2b558fF2a561C600AF3E9486dd",
375
- "FirstClaimPool": "0x0C1924b16c9D7D3b3294e15ba11AF27f64F944Fb",
376
- "BancorFormula": "0x8F1dFbBD777c82aC30E587483d8a251f32f8a6E6",
377
- "DAI": "0x0018b7506e118c97E54d4FFebcef808ca785bA01",
378
- "cDAI": "0xc47EF4D1d3C2e18c02B2163A8dAB2F5B5099C3Ff",
379
- "COMP": "0xb20F65c1D442ebcebce7C377ea47e480c0aB453C"
370
+ "DonationsStaking": "0x4e21A8F1d5C27C3A99b2781E1aB215f6a75A0122",
371
+ "Identity": "0x66a2BECe75FCE45ddFe2C06216CE9350a4c46498",
372
+ "GoodDollar": "0x53DE0F59992D932020ad00CF4ABEe89051F8961d",
373
+ "Controller": "0x86851c91c15A49Ba4a9Cc9859f2d84C47b7aD91d",
374
+ "Avatar": "0xB8FC6cFAb3E190e648aac2d7aB69d466f3674bDB",
375
+ "FirstClaimPool": "0x59E0b0C67a8f14BE8C5855C95CdD2ba95a7f2BbB",
376
+ "BancorFormula": "0x1aaaD333A7d363a8576779B71BF589580cC9D82E",
377
+ "DAI": "0x63766F0efAa46a86E9055bB46e41ff7bc64CBEA2",
378
+ "cDAI": "0x24ef01de6baE76eE73Da210940A296F739d87952",
379
+ "COMP": "0x3C3297C2Be0F0C51b604dC0A798cF610d7406De2"
380
380
  },
381
381
  "production": {
382
382
  "ProxyFactory": "0x4659176E962763e7C8A4eF965ecfD0fdf9f52057",
@@ -416,7 +416,7 @@
416
416
  "ProtocolUpgrade": "0xfc918F32D89b7592Fbda5a0FbC7Eaa0c9a0d5d4a",
417
417
  "UniswapV2SwapHelper": "0x62305662fA7c4BC442803b940d9192DbDC92D710",
418
418
  "CompoundStakingFactory": "0x2C89e77d53C31ED6b331a19207799B3C11Db07eA",
419
- "AaveStakingFactory": "0xa9Ec98203296ED5BC3985490058575e49c40300a",
419
+ "AaveStakingFactory": "0xc6a6bdAD97248f92096f9D62a2EE413D438B97f4",
420
420
  "network": "production-mainnet",
421
421
  "networkId": 1,
422
422
  "ForeignBridge": "0xD5D11eE582c8931F336fbcd135e98CEE4DB8CCB0",
@@ -427,7 +427,7 @@
427
427
  13888
428
428
  ],
429
429
  [
430
- "0x589ceb6cA1112f7aCCA19930b47871c5A259B0fC",
430
+ "0x3bF213f102928A0E7F07a8c5086322a028D7ee14",
431
431
  6944
432
432
  ]
433
433
  ],
@@ -1 +1 @@
1
- {"hardhat":{"Reserve":"0x09635F643e140090A9A8Dcd712eD6285858ceBef","GoodDollar":"0x8e80FFe6Dc044F4A766Afd6e5a8732Fe0977A493","Identity":"0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0","Avatar":"0x6F1216D1BFe15c98520CA1434FC1d9D57AC95321","Controller":"0xdAD42D43ecE0f6e8da8c2BCbC6A25FF6b3922C58","AbsoluteVote":"0x5f3f1dBD7B74C6B46e8c44f98792A1dAf8d69154","SchemeRegistrar":"0xCD8a1C3ba11CF5ECfa6267617243239504a98d90","UpgradeScheme":"0xb7278A61aa25c888815aFC32Ad3cC52fF24fE575","DAI":"0x5FbDB2315678afecb367f032d93F642f64180aa3","cDAI":"0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9","COMP":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","Contribution":"0xa85233C63b9Ee964Add6F2cffe00Fd84eb32338f","DAIStaking":"0xc3e53F4d16Ae77Db1c982e75a937B9f60FE63690","MarketMaker":"0x7a2088a1bFc9d81c55368AE168C2C02570cB814F","UBIScheme":"0x36C02dA8a0983159322a80FFE9F24b1acfF8B570","FirstClaimPool":"0x9d4454B023096f34B160D6B654540c56A1F81688","Bridge":"0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6","BancorFormula":"0x0165878A594ca255338adfa4d48449f69242Eb8F","DonationsStaking":"0x84eA74d481Ee0A5332c457a4d796187F6Ba67fEB","UniswapRouter":"0x1429859428C0aBc9C2C47C8Ee9FBaf82cFA0F20f","DAIUsdOracle":"0x1fA02b2d6A771842690194Cf62D91bdd92BfE28d","COMPUsdOracle":"0x04C89607413713Ec9775E14b954286519d836FEf","network":"develop","networkId":4447},"develop-mainnet":{"Reserve":"0x959922bE3CAee4b8Cd9a407cc3ac1C251C2007B1","GoodDollar":"0x9bd03768a7DCc129555dE410FF8E85528A4F88b5","Identity":"0x0165878A594ca255338adfa4d48449f69242Eb8F","Avatar":"0x61c36a8d610163660E21a8b7359e1Cac0C9133e1","Controller":"0x23dB4a08f2272df049a4932a4Cc3A6Dc1002B33E","AbsoluteVote":"0x9E545E3C0baAB3E08CdfD552C960A1050f373042","SchemeRegistrar":"0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8","UpgradeScheme":"0xa82fF9aFd8f496c3d6ac40E2a0F282E47488CFc9","DAI":"0x5FbDB2315678afecb367f032d93F642f64180aa3","cDAI":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","COMP":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","USDC":"0x942ED2fa862887Dc698682cc6a86355324F0f01e","Contribution":"0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0","DAIStaking":"0x68B1D87F95878fE05B998F19b66F4baba5De1aed","MarketMaker":"0x9A676e781A523b5d0C0e43731313A708CB607508","UBIScheme":"0xE6E340D132b5f46d1e472DebcD681B2aBc16e57E","FirstClaimPool":"0x67d269191c92Caf3cD7723F116c85e6E9bf55933","Bridge":"0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9","BancorFormula":"0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9","DonationsStaking":"0x3Aa5ebB10DC797CAC828524e59A333d0A371443c","UniswapRouter":"0x4826533B4897376654Bb4d4AD88B7faFD0C98528","DAIUsdOracle":"0x9d4454B023096f34B160D6B654540c56A1F81688","COMPUsdOracle":"0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00","USDCUsdOracle":"0x114e375B6FCC6d6fCb68c7A1d407E652C54F25FB","AAVEUsdOracle":"0x976C214741b4657bd99DFD38a5c0E3ac5C99D903","network":"develop","networkId":4447,"AaveLendingPool":"0x8D81A3DCd17030cD5F23Ac7370e4Efb10D2b3cA4","AaveIncentiveController":"0xcC4c41415fc68B2fBf70102742A83cDe435e0Ca7"},"develop":{"Reserve":"0x162A433068F51e18b7d13932F27e66a3f99E6890","GoodDollar":"0xfa7a32340ea54A3FF70942B33090a8a9A1B50214","Identity":"0xCD8a1C3ba11CF5ECfa6267617243239504a98d90","Avatar":"0x9FA5072032B7a7DCc49533401cec1C47bfcf350d","Controller":"0x37B37064d97eADAcc4d7A0cbC673b5C2932b673c","AbsoluteVote":"0x172076E0166D1F9Cc711C77Adf8488051744980C","SchemeRegistrar":"0xBEc49fA140aCaA83533fB00A2BB19bDdd0290f25","UpgradeScheme":"0x4EE6eCAD1c2Dae9f525404De8555724e3c35d07B","DAI":"0x36C02dA8a0983159322a80FFE9F24b1acfF8B570","cDAI":"0x4c5859f0F772848b2D91F1D83E2Fe57935348029","COMP":"0x809d550fca64d94Bd9F66E60752A544199cfAC3D","USDC":"0x2BB8B93F585B43b06F3d523bf30C203d3B6d4BD4","Contribution":"0xFD471836031dc5108809D173A067e8486B9047A3","DAIStaking":"0x5081a39b8A5f0E35a8D959395a630b68B74Dd30f","MarketMaker":"0x1429859428C0aBc9C2C47C8Ee9FBaf82cFA0F20f","AdminWallet":"0x138A24c2DFD29b2db632a0c9E71E55621f5A745d","UBIScheme":"0x0355B7B8cb128fA5692729Ab3AAa199C1753f726","FirstClaimPool":"0x8198f5d8F8CfFE8f9C413d98a0A55aEB8ab9FbB7","Bridge":"0x5f3f1dBD7B74C6B46e8c44f98792A1dAf8d69154","BancorFormula":"0x1291Be112d480055DaFd8a610b7d1e203891C274","DonationsStaking":"0x1fA02b2d6A771842690194Cf62D91bdd92BfE28d","UniswapRouter":"0x1c85638e118b37167e9298c2268758e058DdfDA0","DAIUsdOracle":"0x49fd2BE640DB2910c2fAb69bB8531Ab6E76127ff","COMPUsdOracle":"0x4631BCAbD6dF18D94796344963cB60d44a4136b6","USDCUsdOracle":"0xc6B407503dE64956Ad3cF5Ab112cA4f56AA13517","AAVEUsdOracle":"0x6A47346e722937B60Df7a1149168c0E76DD6520f","AaveLendingPool":"0xB7ca895F81F20e05A5eb11B05Cbaab3DAe5e23cd","AaveIncentiveController":"0xd0EC100F1252a53322051a95CF05c32f0C174354","network":"develop","networkId":4447},"kovan-mainnet":{"Reserve":"0x7330BbDd9Fc99Cc82bE0078fB643C1DDbF9be03f","GoodDollar":"0x46183b8822BB7Cbf27E10A1acc95DfB3b5f0ec79","Identity":"0xCA95A91238a9fbE2458aaC54Cf00F99eCAB14E0a","Avatar":"0x2cA80e8e6FE46066D432204dFbC902328e912Be6","Controller":"0x3778F359a108F48959562eCfe5CE677050c509D3","AbsoluteVote":"0xFC62b61205a9Df9699D0181896603e57A30Aca28","SchemeRegistrar":"0xaF633Cf595F0695aBa029F210D364e1C4282986e","UpgradeScheme":"0xAC7671a932287a69A5E1115BEde2687436Ebed7e","DAI":"0x4f96fe3b7a6cf9725f59d353f723c1bdb64ca6aa","cDAI":"0xf0d0eb522cfa50b716b3b1604c4f0fa6f04376ad","COMP":"0x61460874a7196d6a22d1ee4922473664b3e95270","Contribution":"0xb8e03cE6bb337A1161ca6E53DE568efBe5650eaF","DAIStaking":"0xd222e5557395c5b62b682Cbfd50567908592703d","MarketMaker":"0xD7cF329519e749B5f3c220e644660c61Acc24DAA","Bridge":"0x26D044e8a7bcD384FeFD22E753229922D6693d0E","BancorFormula":"0x56ca74cd7b31609a8ba666308f089e0d5e2d0584","DonationsStaking":"0xa30F00b4b2d02d1E02f48B645B04E60125dF6D49","network":"kovan-mainnet","networkId":42},"fuse":{"UBIScheme":"0xD85D794b7eb00749763e851EEAE37C5d862B9fb3","FirstClaimPool":"0x6CF223eE3c5f95CF97065de35757247E04EaaAe3","GoodDollar":"0xeE724540706296ebad65aeA2515Efe0949F97Ae6","Reputation":"0x1cb566802E61E7f661183F5d9A14645d7620CC8d","Identity":"0x30e1403C075dB97fD9FE02b114cEbea5acce38b7","Avatar":"0x07B41192DD74172576a443C7B28DDC3dC2CE3074","Controller":"0x903a6Ba8b5A43FBd34a511fB5Cf193CE8dc8907B","AbsoluteVote":"0x2170E9A5b72f143cdf9C2fc93fa9d6A9b67CD632","SchemeRegistrar":"0x7edb872c75e86fE53F828D65ad75B0B5862A0c2b","UpgradeScheme":"0xD142A79BAB57fed1FEed4734dFe33473d707EeCF","AdminWallet":"0xf61e08a98B446856eE3fbD6597D3698a1a138565","UBI":"0xCC9B1382b0Ae9D80E81eCB1863DcE8685a044603","SignupBonus":"0xcdC704D3dEA0FcFD1Cae95dfdCB7883632E171b2","OneTimePayments":"0x94079dF920115c5296Cc06AE6D8F29E077906246","FuseFaucet":"0xEEcc2620fb1EaC08Af5923B4D1D54d4703FBb29B","ProxyAdmin":"0xA74F8Ca91bA870608A909A9685e4a984Bbc068b5","Invites":"0x4218263062854C3953EF61699a85231b524A896a","HomeBridge":"0x628980264f86b20BbF4181f55a35602fEe6B4E6F"},"fuse-mainnet":{"FundManager":"0x6D5e39FC226958Ae60438cDe72E7ac4c46e8182c","DAIStaking":"0x49380979206Ea1E274A93d4912cA0950DE695E81","Reserve":"0xdAF541b3a4E1764D438D13F6D6C31157fec47A5e","MarketMaker":"0x01c5f99574235C5380e4fF9975Df58e387d6f9c4","Contribution":"0xd9dD31139a544Df145cf10cC73e7FC1Db33971Fa","DAI":"0xB5E5D0F8C0cbA267CD3D7035d6AdC8eBA7Df7Cdd","cDAI":"0x6ce27497a64fffb5517aa4aee908b1e7eb63b9ff","MainnetBridge":"0xF4aae0922718116fBeb60b49bbB2A66cbFaAC5E7","UBIScheme":"0xa611cb08E1b6ECdee4a9Db5caD045729de9ea1b1","network":"fuse-mainnet","networkId":3,"ForeignBridge":"0xEE0756A5394721e54A092F9aEbd525DD3A2Ace8d","GoodDollar":"0xd76135e33B9ee4F1bF1D57Ec18bBBC11AFf30941","Reputation":"0x5925F6Bf62147D2b14B85e6dCB979e3D1A81Dbb1","Identity":"0x13973e242C75091E605844F816b9a8E211929559","Avatar":"0xB7D068E9e4235176FA51c5971081117DFE5e7F75","Controller":"0xd6513d7145a208d94E508BAB2E4bE31f6dce5147","AbsoluteVote":"0x57312053C36A226Df13B01089218A5f9951D3f9c","SchemeRegistrar":"0xe1fe3f17c0C3C3333eFC54b07B92639fB765fdcd","UpgradeScheme":"0xAce125eDD5591F33653b856c6C2ADD4CA2Bf64Cd","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0x0000000000000000000000000000000000000000","HomeBridge":"0x0000000000000000000000000000000000000000","ProxyAdmin":"0xE383e9D08e3e4f76CBb4a6953aF343E7bbcc6e98","DonationsStaking":"0x424e48447c1230544711a96b903C79ef6EB9e14C","COMP":"0xf76d4a441e4ba86a923ce32b89aff89dbccaa075"},"production":{"UBISchemeOld":"0xAACbaaB8571cbECEB46ba85B5981efDB8928545e","UBIScheme":"0xD7aC544F8A570C4d8764c3AAbCF6870CBD960D0D","FirstClaimPool":"0x18BcdF79A724648bF34eb06701be81bD072A2384","GoodDollar":"0x495d133B938596C9984d462F007B676bDc57eCEC","Reputation":"0x0be7C592374EE0bD0CcBFC76Be758a138BcaEc6E","Identity":"0xFa8d865A962ca8456dF331D78806152d3aC5B84F","Avatar":"0xf96dADc6D71113F6500e97590760C924dA1eF70e","Controller":"0xBcE053b99e22158f8B62f4DBFbEdE1f936b2D4e4","AbsoluteVote":"0x795CED99774430DF8902D8699388924a213A5aA6","SchemeRegistrar":"0x12F706FaafCBf8093282Dba0c40eD0D4Eb5CAF54","UpgradeScheme":"0x653c67Be5b3739708e84B61641253822405d78D8","AdminWallet":"0x9F75dAcB77419b87f568d417eBc84346e134144E","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0xd9Aa86e0Ddb932bD78ab8c71C1B98F83cF610Bd4","HomeBridge":"0xD39021DB018E2CAEadb4B2e6717D31550e7918D0","ForeignBridge":"0x0000000000000000000000000000000000000000","network":"production","networkId":122,"FuseFaucet":"0x01ab5966C1d742Ae0CFF7f14cC0F4D85156e83d9","ProxyAdmin":"0x57179b2A8eB019157b0C3E761cdB26c82C982a3B","Invites":"0xCa2F09c3ccFD7aD5cB9276918Bd1868f2b922ea0","FuseStaking":"0xA199F0C353E25AdF022378B0c208D600f39a6505"},"production-mainnet":{"FundManager":"0xbDFD60f3aE73329D33ebe17d78383DEfd72643Ad","DAIStaking":"0xEa12bB3917cf6aE2FDE97cE4756177703426d41F","Reserve":"0x5C16960F2Eeba27b7de4F1F6e84E616C1977e070","MarketMaker":"0xEDbE438Cd865992fDB72dd252E6055A71b02BE72","Contribution":"0x8eEC64bb6807c0178f96277cCE6a334B4e565E5C","DAI":"0x6B175474E89094C44Da98b954EedeAC495271d0F","cDAI":"0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643","ForeignBridge":"0xD5D11eE582c8931F336fbcd135e98CEE4DB8CCB0","GoodDollar":"0x67C5870b4A41D4Ebef24d2456547A03F1f3e094B","Reputation":"0xCb4a6aF3b15D64E8f50B3cea54c4f481d9E434C1","Identity":"0x76e76e10Ac308A1D54a00f9df27EdCE4801F288b","Avatar":"0x1ecFD1afb601C406fF0e13c3485f2d75699b6817","Controller":"0x95C0d9dCEA1E243ED696F34CAc5e6559C3c128a3","AbsoluteVote":"0xf6b5F7a885CBc57d739aDBEe76E52A70Bc04D795","SchemeRegistrar":"0x098148534aC15A44CFF52387bA81Ed929589eCAf","UpgradeScheme":"0xF9B357d83BDAD6881feb09d909095872B93203d0","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0x0000000000000000000000000000000000000000","HomeBridge":"0x0000000000000000000000000000000000000000","network":"production-mainnet","networkId":1,"ProxyAdmin":"0xA2db14C68aB35e620fEA5bF07d65e9bff84c994C","DonationsStaking":"0x93FB057EeC37aBc11D955d1C09e6A0d218F35CfF"},"staging":{"FuseFaucet":"0xDfCb356c9bd420263aC56D7980f409AcE9050896","ProxyAdmin":"0x2Ea4aAA8351CfE63B537E81Cd4a13c435B945C1D","Invites":"0x7d5FC799dE6fB6a30161684f27320BAcAdBf4126","ProxyAdmin2":"0x23D8492444DA663fcb2bDa8cA9A0e84989D1f59e","GoodDollar":"0x100b8fd10ff8DC43fda45E636B4BB1eE6088270a","Reputation":"0x0CA09cA67B42272b83a05346545329DE5B30b398","Identity":"0x104efFcBDddae9cd4813b8A05Ecd6A17BaBfE6d9","Avatar":"0xcA9E4D51bc496F0b661E9fa02d25E4f67Dd88870","Controller":"0x7CBA0778748960145F3E56b3285255064D86709D","AbsoluteVote":"0x7b58A5737440Bc05ca3972fDeFf8ac3bA984536B","SchemeRegistrar":"0x0E79f80809180aB8FAE189D4e76fC814672d9a40","AdminWallet":"0x8b0Ec4aFaEE9974233c29fa52cC5D2493FB81D45","UpgradeScheme":"0xfC9F6F5E3ff7BAAB3fEf82e66f56917D625ba38B","OneTimePayments":"0x2b5Ef42bc3D1BEfCbA20E3233DeDadD2439B8Ac2","HomeBridge":"0x53f6Bd6Da1564f5B00D2069d8E0F316AF859fb99","UBIScheme":"0x57ab55C54ffC3f92544766D683645c8ED03Cc543","FirstClaimPool":"0x1EA5564a28F34107b99dC591f142537404329762","network":"staging","networkId":122},"staging-mainnet":{"GoodDollar":"0x4738C5e91C4F809da21DD0Df4B5aD5f699878C1c","Reputation":"0x49920f0bb0E099755Ad61B5EB23b807aE1B5caFe","Identity":"0xfb5dAF44cd18Db7b96DB3F9c6E411D65fcf4f372","Avatar":"0x3BC91a65f53dACBd2336C04AC060741f70dCd187","Controller":"0x589F7ae100a7dbd80DC512208b7a0F457A041BE6","AbsoluteVote":"0x11e7716de4B5bC9A1dBc93184b27aC2134CA6E42","SchemeRegistrar":"0x4F151834efb18108080716d1467b397FAA87cF66","FundManager":"0x483a044D792b2Ca0373956444c7e7db36b7DBc56","DAIStaking":"0xE6876231d1a5905Abed03E4C613E427b0357ec0b","Reserve":"0x5810950BF9184F286f1C33b2cf80533D2CB274AF","MarketMaker":"0xAE64E29c78056fB221099A1Ece5fB7D91cA27918","Contribution":"0x7cC2CcDA5483e721778C4040B1DbD23B3Ab1B4A5","DAI":"0xB5E5D0F8C0cbA267CD3D7035d6AdC8eBA7Df7Cdd","cDAI":"0x6ce27497a64fffb5517aa4aee908b1e7eb63b9ff","UpgradeScheme":"0xbd879865b649B7605c27cAa6A54e0f6B9Efb74b2","ForeignBridge":"0xEDA39475415f1A2944a467Aa6359CB4C1c3ed50f","COMP":"0xf76d4a441e4ba86a923ce32b89aff89dbccaa075","network":"staging-mainnet","networkId":3},"dapptest":{"Reserve":"0x4AE7ae2ddeb53bE55aC1dF732DB6bd82fE375DBe","FundManager":"0xc8074ACFfa93DC3783e14147734E088babA5bb02","GoodDollar":"0xE96FE3879991d1BBDA70EdC2Dca97d6891884891","Identity":"0x6d824682aA66da4e6738c6f3e16cC15fe9ce6F79","Avatar":"0x671857BCE3F4a5D22C85ee1bed0B683A893AF3C9","Controller":"0x781376b0094C9cA54210fF1A12F437B27239228A","AbsoluteVote":"0x2A7EC1a948C356c3D5cf0b275B0FAa4Df10701D5","SchemeRegistrar":"0x009eb8A8a1B7C4d48C721E47894346477d2f6647","UpgradeScheme":"0x70F804060040bAb7E443b0F4334d356B7a6D4bAc","DAI":"0xd3aAA70197b22116c6732a964edC09C853AaC941","cDAI":"0xdB52E4853b6A40D2972E6797E0BDBDb3eB761966","COMP":"0x72b46c86aA67f2aBa435414f410bb48300C064Bf","USDC":"0x6cA80f28E672632A8c9f1Ec9b7Fff00E70898f5C","Contribution":"0x4417E9B86Be5d09331eF8B5a98Af4589228F476E","DAIStaking":"0xE076341997771AB62fe184d1101BCd78d18053e2","MarketMaker":"0xE8aB4B54E9209522D387343D50e37b7a540056D1","UBIScheme":"0xA4e9C96b5FfA721223a3f360b9d4d25613c37Fc5","FirstClaimPool":"0xe3963EF7CC3044B64842d0AAe7F2Bf1543D341Ec","HomeBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","ForeignBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","BancorFormula":"0xFb3A7D4cdA276f3Ed98E4ACA2D6318BCd9751859","DonationsStaking":"0x5654740BF119bdC3214485e82D73358E56d7B759","UniswapRouter":"0x18a0503B232224B2f8954ADB2391B623Bc6A8960","DAIUsdOracle":"0xF8D306e484890EaDEB108A02357Cb496204f7716","COMPUsdOracle":"0x492f33E4701D9bd42a133c1b5AB1e4ac8333c590","USDCUsdOracle":"0xe7fA8a2D1DD0Bd3F766e04ccFC50061891A4641e","AAVEUsdOracle":"0x867e1Ccb964654A1074627b0C6557b0ccEb869C4","AaveLendingPool":"0xF758A89A9EbA1F6d74d32d9C00edC78E8e27fC6a","GasPriceOracle":"0x165f39D300c3546Fa8453E183910B042858C012f","DAIEthOracle":"0xddac1165475aC243Ea39915b62Cd0092f24aE931","ETHUsdOracle":"0xc538A445f35dD3b8f49853BDAC9D7DbF90eCcbC4","AaveIncentiveController":"0x51f6983a5f0602b10cA772BFB50EaFfA1822Cb98","AdminWallet":"0x8493F51fA07a9bB978a8AD45f7185A26C1185b9E","OneTimePayments":"0x8be34D7830d446747B95Aa3ace0eaA4FF19b2007","network":"dapptest","networkId":4447},"dapptest-mainnet":{"Reserve":"0x4AE7ae2ddeb53bE55aC1dF732DB6bd82fE375DBe","FundManager":"0xc8074ACFfa93DC3783e14147734E088babA5bb02","GoodDollar":"0xE96FE3879991d1BBDA70EdC2Dca97d6891884891","Identity":"0x6d824682aA66da4e6738c6f3e16cC15fe9ce6F79","Avatar":"0x671857BCE3F4a5D22C85ee1bed0B683A893AF3C9","Controller":"0x781376b0094C9cA54210fF1A12F437B27239228A","AbsoluteVote":"0x2A7EC1a948C356c3D5cf0b275B0FAa4Df10701D5","SchemeRegistrar":"0x009eb8A8a1B7C4d48C721E47894346477d2f6647","UpgradeScheme":"0x70F804060040bAb7E443b0F4334d356B7a6D4bAc","DAI":"0xd3aAA70197b22116c6732a964edC09C853AaC941","cDAI":"0xdB52E4853b6A40D2972E6797E0BDBDb3eB761966","COMP":"0x72b46c86aA67f2aBa435414f410bb48300C064Bf","USDC":"0x6cA80f28E672632A8c9f1Ec9b7Fff00E70898f5C","Contribution":"0x4417E9B86Be5d09331eF8B5a98Af4589228F476E","DAIStaking":"0xE076341997771AB62fe184d1101BCd78d18053e2","MarketMaker":"0xE8aB4B54E9209522D387343D50e37b7a540056D1","UBIScheme":"0xA4e9C96b5FfA721223a3f360b9d4d25613c37Fc5","FirstClaimPool":"0xe3963EF7CC3044B64842d0AAe7F2Bf1543D341Ec","HomeBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","ForeignBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","BancorFormula":"0xFb3A7D4cdA276f3Ed98E4ACA2D6318BCd9751859","DonationsStaking":"0x5654740BF119bdC3214485e82D73358E56d7B759","UniswapRouter":"0x18a0503B232224B2f8954ADB2391B623Bc6A8960","DAIUsdOracle":"0xF8D306e484890EaDEB108A02357Cb496204f7716","COMPUsdOracle":"0x492f33E4701D9bd42a133c1b5AB1e4ac8333c590","USDCUsdOracle":"0xe7fA8a2D1DD0Bd3F766e04ccFC50061891A4641e","AAVEUsdOracle":"0x867e1Ccb964654A1074627b0C6557b0ccEb869C4","AaveLendingPool":"0xF758A89A9EbA1F6d74d32d9C00edC78E8e27fC6a","GasPriceOracle":"0x165f39D300c3546Fa8453E183910B042858C012f","DAIEthOracle":"0xddac1165475aC243Ea39915b62Cd0092f24aE931","ETHUsdOracle":"0xc538A445f35dD3b8f49853BDAC9D7DbF90eCcbC4","AaveIncentiveController":"0x51f6983a5f0602b10cA772BFB50EaFfA1822Cb98","AdminWallet":"0x8493F51fA07a9bB978a8AD45f7185A26C1185b9E","OneTimePayments":"0x8be34D7830d446747B95Aa3ace0eaA4FF19b2007","network":"dapptest","networkId":4447},"test-mainnet":{"Reserve":"0x74156A1F9736307b7AD34e3691f3A5B54A0B3Eb8","FundManager":"0xC20654dB7F9483f10c91dc94924dC8F04F79bfd5","GoodDollar":"0x94a9D2532DA2d9153336159907604A01c3E91C11","Identity":"0x63766F0efAa46a86E9055bB46e41ff7bc64CBEA2","Avatar":"0xf6Ee31185AC05C2b558fF2a561C600AF3E9486dd","Controller":"0x0B57Fd12F7A95c322aD176D23765507ce09892Cb","AbsoluteVote":"0x32C1f353b042902CF959879D56DCA3e87bB42dD1","SchemeRegistrar":"0x59E0b0C67a8f14BE8C5855C95CdD2ba95a7f2BbB","UpgradeScheme":"0x210a5Ebab6461De91b569bCf8f9837E8530B4A00","DAI":"0x0018b7506e118c97E54d4FFebcef808ca785bA01","cDAI":"0xc47EF4D1d3C2e18c02B2163A8dAB2F5B5099C3Ff","COMP":"0xb20F65c1D442ebcebce7C377ea47e480c0aB453C","USDC":"0x24F2D7c50357C7B1156Ca85945D3A901c88651cB","Contribution":"0x66a2BECe75FCE45ddFe2C06216CE9350a4c46498","DAIStaking":"0x770ace66dd84B035F71FfC977448032EE688604d","MarketMaker":"0x7F6f314D460C7751bF1F9784D34Bba2C2AE82CeB","UBIScheme":"0x6C3c8F75da59F5880D9e60b8f8ae639c2bC2E1DA","FirstClaimPool":"0x0C1924b16c9D7D3b3294e15ba11AF27f64F944Fb","HomeBridge":"0x6852Adb5Fce1D73c08A9b3Aa7edE9A03437ac2fE","ForeignBridge":"0x6852Adb5Fce1D73c08A9b3Aa7edE9A03437ac2fE","BancorFormula":"0x8F1dFbBD777c82aC30E587483d8a251f32f8a6E6","DonationsStaking":"0x80bfecFce361Ed9E00b0E9Bc023E0EACa6917De5","UniswapRouter":"0x30474Ce2DE03045B8D0AE76F8a30DbfC8f000cea","DAIUsdOracle":"0xDFF3455E08AB33B1599D1c5B5A1D65de63d3FCd0","COMPUsdOracle":"0xadf7b0f46EB35C748438F3e215F064E01cc7f5dF","USDCUsdOracle":"0xFAE6fA2097792Edfd7429A282F21ec2D955279D9","AAVEUsdOracle":"0xE8E9B139c6477D4EaD599bE5f2bB9335533D14f7","AaveLendingPool":"0x6397866132887b206EEA19f910730443E71a8CfB","GasPriceOracle":"0x6f3203B069cfb6e408ddFa6040d3FD1f26C22F48","DAIEthOracle":"0x743F3Ae880D7357690b5ff6C5f16110d9294F352","ETHUsdOracle":"0x570ADc5880D778aE5935f199aa590091586CDf75","AaveIncentiveController":"0x79613D7834Ad35EE8dC3F9298030eaADc2A8c250","AdminWallet":"0x11Dc91d71c05D82f0232493D814A6AF41a229B4c","OneTimePayments":"0x980ea9f1a0C36e1E5f3B6BD451bEf8a7Fe661f97","network":"test-mainnet","networkId":4447},"test":{"Reserve":"0xE65B75e7A8de220bcfec86F58c4c25A62aB7CD9b","FundManager":"0xBd57b20c3671cDb9a6bD2d847bC3C33e441B8a02","GoodDollar":"0xBbF27a9b9b7fd870f5cd7AE63063bf415739E4d8","Identity":"0xB3a1e45D60f9394bC4327f5Dc46dB56D8a3c3688","Avatar":"0x52F2B02fDcdA0aD5Ec89BE2Da06EB459392f59e6","Controller":"0xA9dd0B4A47eabCDd01eEDb5558d13736A6aEc424","AbsoluteVote":"0x9aB4632Fb2d1867d0EEC9F3Ee40a3409037B381a","SchemeRegistrar":"0xd3aF095DE5D1419ADabE47a48d6110e37236A97F","UpgradeScheme":"0x6a4c0bf6ca9fBe64D6a63697f63BF4B29BFe37e7","DAI":"0x8B8776BEDB1eD89Ab6BD2388bCbef3C579ca53b9","cDAI":"0xFE0730c6426b87BEBE9bf73474B1310F93617822","COMP":"0x1BA1f90A3eB0e59421B54Dbf876119987587C0C3","USDC":"0xe1647c832E112c532C79bDf3cFD05362b6e8c744","Contribution":"0x473A31861aB89d5D7a78E7efc57ad31d84ED5343","DAIStaking":"0xB4059a6808Af368A69d12FBbD104Bb6B9c37e629","MarketMaker":"0x3A25408D952F91e42F39587820bEe5f051f4556c","UBIScheme":"0x4D5D3FaE9b08a4FA2aEB9Bc0d86E3dB3b3126438","FirstClaimPool":"0x8D7a45413AC4115d22CC88a87264dEE8002AfBca","HomeBridge":"0x2B09d54B5cA65dEB169c29c2D3e01cc3Dd214cd3","ForeignBridge":"0x2B09d54B5cA65dEB169c29c2D3e01cc3Dd214cd3","BancorFormula":"0xED2c0B4fAE32e94a8e3A96a2F999A235ef95a746","DonationsStaking":"0xe4FEed16F54b4244C174b408Ba3B5F1f19DD1E4D","UniswapRouter":"0x65E001B67f1aD28FF337C4F6e1cA52F31F5Eb9Fd","DAIUsdOracle":"0xc9D18D86f1c101Dc87A09e683875004A02a67607","COMPUsdOracle":"0x5A887c0A3450DcFD7bdA656894Aeba6272BA5bA7","USDCUsdOracle":"0xB4f34879C2c3db50934E5069CE01fD5EcE3Aa051","AAVEUsdOracle":"0xb84De814F9834d600039a0151E7f0105e1Fcf923","AaveLendingPool":"0x36C6262F266386f1011e03a5882A0B6AC6940c95","GasPriceOracle":"0x60aC4593ecea0B22216218c4D0f27533ebB01CB6","DAIEthOracle":"0xa0945a7aC164287B4e6B8f234337820807074a29","ETHUsdOracle":"0x9771321265cAD7049903EaF4a574Eab51fD97378","AaveIncentiveController":"0x41dBB528b5662caD3b8183754C0517b409E00Fa8","AdminWallet":"0xD7559ba7a3f22B4055a9e88cBDC0EC1Ffd422af1","OneTimePayments":"0x329058C12E8B269BFA0896c8705b427c5Dd26b96","network":"test","networkId":4447}}
1
+ {"hardhat":{"Reserve":"0x09635F643e140090A9A8Dcd712eD6285858ceBef","GoodDollar":"0x8e80FFe6Dc044F4A766Afd6e5a8732Fe0977A493","Identity":"0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0","Avatar":"0x6F1216D1BFe15c98520CA1434FC1d9D57AC95321","Controller":"0xdAD42D43ecE0f6e8da8c2BCbC6A25FF6b3922C58","AbsoluteVote":"0x5f3f1dBD7B74C6B46e8c44f98792A1dAf8d69154","SchemeRegistrar":"0xCD8a1C3ba11CF5ECfa6267617243239504a98d90","UpgradeScheme":"0xb7278A61aa25c888815aFC32Ad3cC52fF24fE575","DAI":"0x5FbDB2315678afecb367f032d93F642f64180aa3","cDAI":"0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9","COMP":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","Contribution":"0xa85233C63b9Ee964Add6F2cffe00Fd84eb32338f","DAIStaking":"0xc3e53F4d16Ae77Db1c982e75a937B9f60FE63690","MarketMaker":"0x7a2088a1bFc9d81c55368AE168C2C02570cB814F","UBIScheme":"0x36C02dA8a0983159322a80FFE9F24b1acfF8B570","FirstClaimPool":"0x9d4454B023096f34B160D6B654540c56A1F81688","Bridge":"0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6","BancorFormula":"0x0165878A594ca255338adfa4d48449f69242Eb8F","DonationsStaking":"0x84eA74d481Ee0A5332c457a4d796187F6Ba67fEB","UniswapRouter":"0x1429859428C0aBc9C2C47C8Ee9FBaf82cFA0F20f","DAIUsdOracle":"0x1fA02b2d6A771842690194Cf62D91bdd92BfE28d","COMPUsdOracle":"0x04C89607413713Ec9775E14b954286519d836FEf","network":"develop","networkId":4447},"develop-mainnet":{"Reserve":"0x959922bE3CAee4b8Cd9a407cc3ac1C251C2007B1","GoodDollar":"0x9bd03768a7DCc129555dE410FF8E85528A4F88b5","Identity":"0x0165878A594ca255338adfa4d48449f69242Eb8F","Avatar":"0x61c36a8d610163660E21a8b7359e1Cac0C9133e1","Controller":"0x23dB4a08f2272df049a4932a4Cc3A6Dc1002B33E","AbsoluteVote":"0x9E545E3C0baAB3E08CdfD552C960A1050f373042","SchemeRegistrar":"0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8","UpgradeScheme":"0xa82fF9aFd8f496c3d6ac40E2a0F282E47488CFc9","DAI":"0x5FbDB2315678afecb367f032d93F642f64180aa3","cDAI":"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0","COMP":"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512","USDC":"0x942ED2fa862887Dc698682cc6a86355324F0f01e","Contribution":"0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0","DAIStaking":"0x68B1D87F95878fE05B998F19b66F4baba5De1aed","MarketMaker":"0x9A676e781A523b5d0C0e43731313A708CB607508","UBIScheme":"0xE6E340D132b5f46d1e472DebcD681B2aBc16e57E","FirstClaimPool":"0x67d269191c92Caf3cD7723F116c85e6E9bf55933","Bridge":"0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9","BancorFormula":"0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9","DonationsStaking":"0x3Aa5ebB10DC797CAC828524e59A333d0A371443c","UniswapRouter":"0x4826533B4897376654Bb4d4AD88B7faFD0C98528","DAIUsdOracle":"0x9d4454B023096f34B160D6B654540c56A1F81688","COMPUsdOracle":"0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00","USDCUsdOracle":"0x114e375B6FCC6d6fCb68c7A1d407E652C54F25FB","AAVEUsdOracle":"0x976C214741b4657bd99DFD38a5c0E3ac5C99D903","network":"develop","networkId":4447,"AaveLendingPool":"0x8D81A3DCd17030cD5F23Ac7370e4Efb10D2b3cA4","AaveIncentiveController":"0xcC4c41415fc68B2fBf70102742A83cDe435e0Ca7"},"develop":{"Reserve":"0x162A433068F51e18b7d13932F27e66a3f99E6890","GoodDollar":"0xfa7a32340ea54A3FF70942B33090a8a9A1B50214","Identity":"0xCD8a1C3ba11CF5ECfa6267617243239504a98d90","Avatar":"0x9FA5072032B7a7DCc49533401cec1C47bfcf350d","Controller":"0x37B37064d97eADAcc4d7A0cbC673b5C2932b673c","AbsoluteVote":"0x172076E0166D1F9Cc711C77Adf8488051744980C","SchemeRegistrar":"0xBEc49fA140aCaA83533fB00A2BB19bDdd0290f25","UpgradeScheme":"0x4EE6eCAD1c2Dae9f525404De8555724e3c35d07B","DAI":"0x36C02dA8a0983159322a80FFE9F24b1acfF8B570","cDAI":"0x4c5859f0F772848b2D91F1D83E2Fe57935348029","COMP":"0x809d550fca64d94Bd9F66E60752A544199cfAC3D","USDC":"0x2BB8B93F585B43b06F3d523bf30C203d3B6d4BD4","Contribution":"0xFD471836031dc5108809D173A067e8486B9047A3","DAIStaking":"0x5081a39b8A5f0E35a8D959395a630b68B74Dd30f","MarketMaker":"0x1429859428C0aBc9C2C47C8Ee9FBaf82cFA0F20f","AdminWallet":"0x138A24c2DFD29b2db632a0c9E71E55621f5A745d","UBIScheme":"0x0355B7B8cb128fA5692729Ab3AAa199C1753f726","FirstClaimPool":"0x8198f5d8F8CfFE8f9C413d98a0A55aEB8ab9FbB7","Bridge":"0x5f3f1dBD7B74C6B46e8c44f98792A1dAf8d69154","BancorFormula":"0x1291Be112d480055DaFd8a610b7d1e203891C274","DonationsStaking":"0x1fA02b2d6A771842690194Cf62D91bdd92BfE28d","UniswapRouter":"0x1c85638e118b37167e9298c2268758e058DdfDA0","DAIUsdOracle":"0x49fd2BE640DB2910c2fAb69bB8531Ab6E76127ff","COMPUsdOracle":"0x4631BCAbD6dF18D94796344963cB60d44a4136b6","USDCUsdOracle":"0xc6B407503dE64956Ad3cF5Ab112cA4f56AA13517","AAVEUsdOracle":"0x6A47346e722937B60Df7a1149168c0E76DD6520f","AaveLendingPool":"0xB7ca895F81F20e05A5eb11B05Cbaab3DAe5e23cd","AaveIncentiveController":"0xd0EC100F1252a53322051a95CF05c32f0C174354","network":"develop","networkId":4447},"kovan-mainnet":{"Reserve":"0x7330BbDd9Fc99Cc82bE0078fB643C1DDbF9be03f","GoodDollar":"0x46183b8822BB7Cbf27E10A1acc95DfB3b5f0ec79","Identity":"0xCA95A91238a9fbE2458aaC54Cf00F99eCAB14E0a","Avatar":"0x2cA80e8e6FE46066D432204dFbC902328e912Be6","Controller":"0x3778F359a108F48959562eCfe5CE677050c509D3","AbsoluteVote":"0xFC62b61205a9Df9699D0181896603e57A30Aca28","SchemeRegistrar":"0xaF633Cf595F0695aBa029F210D364e1C4282986e","UpgradeScheme":"0xAC7671a932287a69A5E1115BEde2687436Ebed7e","DAI":"0x4f96fe3b7a6cf9725f59d353f723c1bdb64ca6aa","cDAI":"0xf0d0eb522cfa50b716b3b1604c4f0fa6f04376ad","COMP":"0x61460874a7196d6a22d1ee4922473664b3e95270","Contribution":"0xb8e03cE6bb337A1161ca6E53DE568efBe5650eaF","DAIStaking":"0xd222e5557395c5b62b682Cbfd50567908592703d","MarketMaker":"0xD7cF329519e749B5f3c220e644660c61Acc24DAA","Bridge":"0x26D044e8a7bcD384FeFD22E753229922D6693d0E","BancorFormula":"0x56ca74cd7b31609a8ba666308f089e0d5e2d0584","DonationsStaking":"0xa30F00b4b2d02d1E02f48B645B04E60125dF6D49","network":"kovan-mainnet","networkId":42},"fuse":{"UBIScheme":"0xD85D794b7eb00749763e851EEAE37C5d862B9fb3","FirstClaimPool":"0x6CF223eE3c5f95CF97065de35757247E04EaaAe3","GoodDollar":"0xeE724540706296ebad65aeA2515Efe0949F97Ae6","Reputation":"0x1cb566802E61E7f661183F5d9A14645d7620CC8d","Identity":"0x30e1403C075dB97fD9FE02b114cEbea5acce38b7","Avatar":"0x07B41192DD74172576a443C7B28DDC3dC2CE3074","Controller":"0x903a6Ba8b5A43FBd34a511fB5Cf193CE8dc8907B","AbsoluteVote":"0x2170E9A5b72f143cdf9C2fc93fa9d6A9b67CD632","SchemeRegistrar":"0x7edb872c75e86fE53F828D65ad75B0B5862A0c2b","UpgradeScheme":"0xD142A79BAB57fed1FEed4734dFe33473d707EeCF","AdminWallet":"0xf61e08a98B446856eE3fbD6597D3698a1a138565","UBI":"0xCC9B1382b0Ae9D80E81eCB1863DcE8685a044603","SignupBonus":"0xcdC704D3dEA0FcFD1Cae95dfdCB7883632E171b2","OneTimePayments":"0x94079dF920115c5296Cc06AE6D8F29E077906246","FuseFaucet":"0xEEcc2620fb1EaC08Af5923B4D1D54d4703FBb29B","ProxyAdmin":"0xA74F8Ca91bA870608A909A9685e4a984Bbc068b5","Invites":"0x4218263062854C3953EF61699a85231b524A896a","HomeBridge":"0x628980264f86b20BbF4181f55a35602fEe6B4E6F"},"fuse-mainnet":{"FundManager":"0x6D5e39FC226958Ae60438cDe72E7ac4c46e8182c","DAIStaking":"0x49380979206Ea1E274A93d4912cA0950DE695E81","Reserve":"0xdAF541b3a4E1764D438D13F6D6C31157fec47A5e","MarketMaker":"0x01c5f99574235C5380e4fF9975Df58e387d6f9c4","Contribution":"0xd9dD31139a544Df145cf10cC73e7FC1Db33971Fa","DAI":"0xB5E5D0F8C0cbA267CD3D7035d6AdC8eBA7Df7Cdd","cDAI":"0x6ce27497a64fffb5517aa4aee908b1e7eb63b9ff","MainnetBridge":"0xF4aae0922718116fBeb60b49bbB2A66cbFaAC5E7","UBIScheme":"0xa611cb08E1b6ECdee4a9Db5caD045729de9ea1b1","network":"fuse-mainnet","networkId":3,"ForeignBridge":"0xEE0756A5394721e54A092F9aEbd525DD3A2Ace8d","GoodDollar":"0xd76135e33B9ee4F1bF1D57Ec18bBBC11AFf30941","Reputation":"0x5925F6Bf62147D2b14B85e6dCB979e3D1A81Dbb1","Identity":"0x13973e242C75091E605844F816b9a8E211929559","Avatar":"0xB7D068E9e4235176FA51c5971081117DFE5e7F75","Controller":"0xd6513d7145a208d94E508BAB2E4bE31f6dce5147","AbsoluteVote":"0x57312053C36A226Df13B01089218A5f9951D3f9c","SchemeRegistrar":"0xe1fe3f17c0C3C3333eFC54b07B92639fB765fdcd","UpgradeScheme":"0xAce125eDD5591F33653b856c6C2ADD4CA2Bf64Cd","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0x0000000000000000000000000000000000000000","HomeBridge":"0x0000000000000000000000000000000000000000","ProxyAdmin":"0xE383e9D08e3e4f76CBb4a6953aF343E7bbcc6e98","DonationsStaking":"0x424e48447c1230544711a96b903C79ef6EB9e14C","COMP":"0xf76d4a441e4ba86a923ce32b89aff89dbccaa075"},"production":{"UBISchemeOld":"0xAACbaaB8571cbECEB46ba85B5981efDB8928545e","UBIScheme":"0xD7aC544F8A570C4d8764c3AAbCF6870CBD960D0D","FirstClaimPool":"0x18BcdF79A724648bF34eb06701be81bD072A2384","GoodDollar":"0x495d133B938596C9984d462F007B676bDc57eCEC","Reputation":"0x0be7C592374EE0bD0CcBFC76Be758a138BcaEc6E","Identity":"0xFa8d865A962ca8456dF331D78806152d3aC5B84F","Avatar":"0xf96dADc6D71113F6500e97590760C924dA1eF70e","Controller":"0xBcE053b99e22158f8B62f4DBFbEdE1f936b2D4e4","AbsoluteVote":"0x795CED99774430DF8902D8699388924a213A5aA6","SchemeRegistrar":"0x12F706FaafCBf8093282Dba0c40eD0D4Eb5CAF54","UpgradeScheme":"0x653c67Be5b3739708e84B61641253822405d78D8","AdminWallet":"0x9F75dAcB77419b87f568d417eBc84346e134144E","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0xd9Aa86e0Ddb932bD78ab8c71C1B98F83cF610Bd4","HomeBridge":"0xD39021DB018E2CAEadb4B2e6717D31550e7918D0","ForeignBridge":"0x0000000000000000000000000000000000000000","network":"production","networkId":122,"FuseFaucet":"0x01ab5966C1d742Ae0CFF7f14cC0F4D85156e83d9","ProxyAdmin":"0x57179b2A8eB019157b0C3E761cdB26c82C982a3B","Invites":"0xCa2F09c3ccFD7aD5cB9276918Bd1868f2b922ea0","FuseStaking":"0xA199F0C353E25AdF022378B0c208D600f39a6505"},"production-mainnet":{"FundManager":"0xbDFD60f3aE73329D33ebe17d78383DEfd72643Ad","DAIStaking":"0xEa12bB3917cf6aE2FDE97cE4756177703426d41F","Reserve":"0x5C16960F2Eeba27b7de4F1F6e84E616C1977e070","MarketMaker":"0xEDbE438Cd865992fDB72dd252E6055A71b02BE72","Contribution":"0x8eEC64bb6807c0178f96277cCE6a334B4e565E5C","DAI":"0x6B175474E89094C44Da98b954EedeAC495271d0F","cDAI":"0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643","ForeignBridge":"0xD5D11eE582c8931F336fbcd135e98CEE4DB8CCB0","GoodDollar":"0x67C5870b4A41D4Ebef24d2456547A03F1f3e094B","Reputation":"0xCb4a6aF3b15D64E8f50B3cea54c4f481d9E434C1","Identity":"0x76e76e10Ac308A1D54a00f9df27EdCE4801F288b","Avatar":"0x1ecFD1afb601C406fF0e13c3485f2d75699b6817","Controller":"0x95C0d9dCEA1E243ED696F34CAc5e6559C3c128a3","AbsoluteVote":"0xf6b5F7a885CBc57d739aDBEe76E52A70Bc04D795","SchemeRegistrar":"0x098148534aC15A44CFF52387bA81Ed929589eCAf","UpgradeScheme":"0xF9B357d83BDAD6881feb09d909095872B93203d0","UBI":"0x0000000000000000000000000000000000000000","SignupBonus":"0x0000000000000000000000000000000000000000","OneTimePayments":"0x0000000000000000000000000000000000000000","HomeBridge":"0x0000000000000000000000000000000000000000","network":"production-mainnet","networkId":1,"ProxyAdmin":"0xA2db14C68aB35e620fEA5bF07d65e9bff84c994C","DonationsStaking":"0x93FB057EeC37aBc11D955d1C09e6A0d218F35CfF"},"staging":{"FuseFaucet":"0xDfCb356c9bd420263aC56D7980f409AcE9050896","ProxyAdmin":"0x2Ea4aAA8351CfE63B537E81Cd4a13c435B945C1D","Invites":"0x7d5FC799dE6fB6a30161684f27320BAcAdBf4126","ProxyAdmin2":"0x23D8492444DA663fcb2bDa8cA9A0e84989D1f59e","GoodDollar":"0x100b8fd10ff8DC43fda45E636B4BB1eE6088270a","Reputation":"0x0CA09cA67B42272b83a05346545329DE5B30b398","Identity":"0x104efFcBDddae9cd4813b8A05Ecd6A17BaBfE6d9","Avatar":"0xcA9E4D51bc496F0b661E9fa02d25E4f67Dd88870","Controller":"0x7CBA0778748960145F3E56b3285255064D86709D","AbsoluteVote":"0x7b58A5737440Bc05ca3972fDeFf8ac3bA984536B","SchemeRegistrar":"0x0E79f80809180aB8FAE189D4e76fC814672d9a40","AdminWallet":"0x8b0Ec4aFaEE9974233c29fa52cC5D2493FB81D45","UpgradeScheme":"0xfC9F6F5E3ff7BAAB3fEf82e66f56917D625ba38B","OneTimePayments":"0x2b5Ef42bc3D1BEfCbA20E3233DeDadD2439B8Ac2","HomeBridge":"0x53f6Bd6Da1564f5B00D2069d8E0F316AF859fb99","UBIScheme":"0x57ab55C54ffC3f92544766D683645c8ED03Cc543","FirstClaimPool":"0x1EA5564a28F34107b99dC591f142537404329762","network":"staging","networkId":122},"staging-mainnet":{"GoodDollar":"0x4738C5e91C4F809da21DD0Df4B5aD5f699878C1c","Reputation":"0x49920f0bb0E099755Ad61B5EB23b807aE1B5caFe","Identity":"0xfb5dAF44cd18Db7b96DB3F9c6E411D65fcf4f372","Avatar":"0x3BC91a65f53dACBd2336C04AC060741f70dCd187","Controller":"0x589F7ae100a7dbd80DC512208b7a0F457A041BE6","AbsoluteVote":"0x11e7716de4B5bC9A1dBc93184b27aC2134CA6E42","SchemeRegistrar":"0x4F151834efb18108080716d1467b397FAA87cF66","FundManager":"0x483a044D792b2Ca0373956444c7e7db36b7DBc56","DAIStaking":"0xE6876231d1a5905Abed03E4C613E427b0357ec0b","Reserve":"0x5810950BF9184F286f1C33b2cf80533D2CB274AF","MarketMaker":"0xAE64E29c78056fB221099A1Ece5fB7D91cA27918","Contribution":"0x7cC2CcDA5483e721778C4040B1DbD23B3Ab1B4A5","DAI":"0xB5E5D0F8C0cbA267CD3D7035d6AdC8eBA7Df7Cdd","cDAI":"0x6ce27497a64fffb5517aa4aee908b1e7eb63b9ff","UpgradeScheme":"0xbd879865b649B7605c27cAa6A54e0f6B9Efb74b2","ForeignBridge":"0xEDA39475415f1A2944a467Aa6359CB4C1c3ed50f","COMP":"0xf76d4a441e4ba86a923ce32b89aff89dbccaa075","network":"staging-mainnet","networkId":3},"dapptest":{"Reserve":"0x4AE7ae2ddeb53bE55aC1dF732DB6bd82fE375DBe","FundManager":"0xc8074ACFfa93DC3783e14147734E088babA5bb02","GoodDollar":"0xE96FE3879991d1BBDA70EdC2Dca97d6891884891","Identity":"0x6d824682aA66da4e6738c6f3e16cC15fe9ce6F79","Avatar":"0x671857BCE3F4a5D22C85ee1bed0B683A893AF3C9","Controller":"0x781376b0094C9cA54210fF1A12F437B27239228A","AbsoluteVote":"0x2A7EC1a948C356c3D5cf0b275B0FAa4Df10701D5","SchemeRegistrar":"0x009eb8A8a1B7C4d48C721E47894346477d2f6647","UpgradeScheme":"0x70F804060040bAb7E443b0F4334d356B7a6D4bAc","DAI":"0xd3aAA70197b22116c6732a964edC09C853AaC941","cDAI":"0xdB52E4853b6A40D2972E6797E0BDBDb3eB761966","COMP":"0x72b46c86aA67f2aBa435414f410bb48300C064Bf","USDC":"0x6cA80f28E672632A8c9f1Ec9b7Fff00E70898f5C","Contribution":"0x4417E9B86Be5d09331eF8B5a98Af4589228F476E","DAIStaking":"0xE076341997771AB62fe184d1101BCd78d18053e2","MarketMaker":"0xE8aB4B54E9209522D387343D50e37b7a540056D1","UBIScheme":"0xA4e9C96b5FfA721223a3f360b9d4d25613c37Fc5","FirstClaimPool":"0xe3963EF7CC3044B64842d0AAe7F2Bf1543D341Ec","HomeBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","ForeignBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","BancorFormula":"0xFb3A7D4cdA276f3Ed98E4ACA2D6318BCd9751859","DonationsStaking":"0x5654740BF119bdC3214485e82D73358E56d7B759","UniswapRouter":"0x18a0503B232224B2f8954ADB2391B623Bc6A8960","DAIUsdOracle":"0xF8D306e484890EaDEB108A02357Cb496204f7716","COMPUsdOracle":"0x492f33E4701D9bd42a133c1b5AB1e4ac8333c590","USDCUsdOracle":"0xe7fA8a2D1DD0Bd3F766e04ccFC50061891A4641e","AAVEUsdOracle":"0x867e1Ccb964654A1074627b0C6557b0ccEb869C4","AaveLendingPool":"0xF758A89A9EbA1F6d74d32d9C00edC78E8e27fC6a","GasPriceOracle":"0x165f39D300c3546Fa8453E183910B042858C012f","DAIEthOracle":"0xddac1165475aC243Ea39915b62Cd0092f24aE931","ETHUsdOracle":"0xc538A445f35dD3b8f49853BDAC9D7DbF90eCcbC4","AaveIncentiveController":"0x51f6983a5f0602b10cA772BFB50EaFfA1822Cb98","AdminWallet":"0x8493F51fA07a9bB978a8AD45f7185A26C1185b9E","OneTimePayments":"0x8be34D7830d446747B95Aa3ace0eaA4FF19b2007","network":"dapptest","networkId":4447},"dapptest-mainnet":{"Reserve":"0x4AE7ae2ddeb53bE55aC1dF732DB6bd82fE375DBe","FundManager":"0xc8074ACFfa93DC3783e14147734E088babA5bb02","GoodDollar":"0xE96FE3879991d1BBDA70EdC2Dca97d6891884891","Identity":"0x6d824682aA66da4e6738c6f3e16cC15fe9ce6F79","Avatar":"0x671857BCE3F4a5D22C85ee1bed0B683A893AF3C9","Controller":"0x781376b0094C9cA54210fF1A12F437B27239228A","AbsoluteVote":"0x2A7EC1a948C356c3D5cf0b275B0FAa4Df10701D5","SchemeRegistrar":"0x009eb8A8a1B7C4d48C721E47894346477d2f6647","UpgradeScheme":"0x70F804060040bAb7E443b0F4334d356B7a6D4bAc","DAI":"0xd3aAA70197b22116c6732a964edC09C853AaC941","cDAI":"0xdB52E4853b6A40D2972E6797E0BDBDb3eB761966","COMP":"0x72b46c86aA67f2aBa435414f410bb48300C064Bf","USDC":"0x6cA80f28E672632A8c9f1Ec9b7Fff00E70898f5C","Contribution":"0x4417E9B86Be5d09331eF8B5a98Af4589228F476E","DAIStaking":"0xE076341997771AB62fe184d1101BCd78d18053e2","MarketMaker":"0xE8aB4B54E9209522D387343D50e37b7a540056D1","UBIScheme":"0xA4e9C96b5FfA721223a3f360b9d4d25613c37Fc5","FirstClaimPool":"0xe3963EF7CC3044B64842d0AAe7F2Bf1543D341Ec","HomeBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","ForeignBridge":"0xe14EbF1e8e8c39C1cf075fe1582f54392C97d8FE","BancorFormula":"0xFb3A7D4cdA276f3Ed98E4ACA2D6318BCd9751859","DonationsStaking":"0x5654740BF119bdC3214485e82D73358E56d7B759","UniswapRouter":"0x18a0503B232224B2f8954ADB2391B623Bc6A8960","DAIUsdOracle":"0xF8D306e484890EaDEB108A02357Cb496204f7716","COMPUsdOracle":"0x492f33E4701D9bd42a133c1b5AB1e4ac8333c590","USDCUsdOracle":"0xe7fA8a2D1DD0Bd3F766e04ccFC50061891A4641e","AAVEUsdOracle":"0x867e1Ccb964654A1074627b0C6557b0ccEb869C4","AaveLendingPool":"0xF758A89A9EbA1F6d74d32d9C00edC78E8e27fC6a","GasPriceOracle":"0x165f39D300c3546Fa8453E183910B042858C012f","DAIEthOracle":"0xddac1165475aC243Ea39915b62Cd0092f24aE931","ETHUsdOracle":"0xc538A445f35dD3b8f49853BDAC9D7DbF90eCcbC4","AaveIncentiveController":"0x51f6983a5f0602b10cA772BFB50EaFfA1822Cb98","AdminWallet":"0x8493F51fA07a9bB978a8AD45f7185A26C1185b9E","OneTimePayments":"0x8be34D7830d446747B95Aa3ace0eaA4FF19b2007","network":"dapptest","networkId":4447},"test-mainnet":{"Reserve":"0xB8357F7f41125d4b24AD052c1b7288BeF5C43446","FundManager":"0x80bfecFce361Ed9E00b0E9Bc023E0EACa6917De5","GoodDollar":"0x53DE0F59992D932020ad00CF4ABEe89051F8961d","Identity":"0x66a2BECe75FCE45ddFe2C06216CE9350a4c46498","Avatar":"0xB8FC6cFAb3E190e648aac2d7aB69d466f3674bDB","Controller":"0x86851c91c15A49Ba4a9Cc9859f2d84C47b7aD91d","AbsoluteVote":"0x11Dc91d71c05D82f0232493D814A6AF41a229B4c","SchemeRegistrar":"0xe87fD3Cd67850cA11859c8be9B060E8B0FE9853C","UpgradeScheme":"0xBb976201B607f16dc76586dB8Ca5EF6C50C41c22","DAI":"0x63766F0efAa46a86E9055bB46e41ff7bc64CBEA2","cDAI":"0x24ef01de6baE76eE73Da210940A296F739d87952","COMP":"0x3C3297C2Be0F0C51b604dC0A798cF610d7406De2","USDC":"0x8B8776BEDB1eD89Ab6BD2388bCbef3C579ca53b9","Contribution":"0x770ace66dd84B035F71FfC977448032EE688604d","DAIStaking":"0x604B179ce5607ed63def24D54f3Bce01d6FaC1B6","MarketMaker":"0x7Cf1C7d93Cf18b37FEbb03D02565FBC8887d906C","UBIScheme":"0xB970e0fFd20AA28BeC62b1c0717836310d3fF324","FirstClaimPool":"0x59E0b0C67a8f14BE8C5855C95CdD2ba95a7f2BbB","HomeBridge":"0x9F95c870a4104603630CBEDBbbd56c6465Cc8A58","ForeignBridge":"0x9F95c870a4104603630CBEDBbbd56c6465Cc8A58","BancorFormula":"0x1aaaD333A7d363a8576779B71BF589580cC9D82E","DonationsStaking":"0x980ea9f1a0C36e1E5f3B6BD451bEf8a7Fe661f97","UniswapRouter":"0xef2fEa1e2231c85416d09Dc74ca57eD79884C3A6","DAIUsdOracle":"0x6397866132887b206EEA19f910730443E71a8CfB","COMPUsdOracle":"0x6f3203B069cfb6e408ddFa6040d3FD1f26C22F48","USDCUsdOracle":"0x79613D7834Ad35EE8dC3F9298030eaADc2A8c250","AAVEUsdOracle":"0x743F3Ae880D7357690b5ff6C5f16110d9294F352","AaveLendingPool":"0x1BA1f90A3eB0e59421B54Dbf876119987587C0C3","GasPriceOracle":"0xED2c0B4fAE32e94a8e3A96a2F999A235ef95a746","DAIEthOracle":"0x2B09d54B5cA65dEB169c29c2D3e01cc3Dd214cd3","ETHUsdOracle":"0x57a7b5cD15eA2c64A48104482837519B81a0619a","AaveIncentiveController":"0xFE0730c6426b87BEBE9bf73474B1310F93617822","AdminWallet":"0x30474Ce2DE03045B8D0AE76F8a30DbfC8f000cea","OneTimePayments":"0x6C3c8F75da59F5880D9e60b8f8ae639c2bC2E1DA","network":"test-mainnet","networkId":4447},"test":{"Reserve":"0xA388228A1fA75a5F5844226E2874d7EE4d940256","FundManager":"0xe4FEed16F54b4244C174b408Ba3B5F1f19DD1E4D","GoodDollar":"0x040F0292f908c83BdEcCAE7600344503F2a20691","Identity":"0x473A31861aB89d5D7a78E7efc57ad31d84ED5343","Avatar":"0xB3cbA81d4ce278661E26E2107936A014efc31343","Controller":"0x75B282FdEaEce36C6E9363F30010058c284D9199","AbsoluteVote":"0xD7559ba7a3f22B4055a9e88cBDC0EC1Ffd422af1","SchemeRegistrar":"0xf070f5a2Ddf4d106502235597bd42fd9eDaF7bFE","UpgradeScheme":"0x47834D4241A7A5188A253CC0203AB49D4621a069","DAI":"0xB3a1e45D60f9394bC4327f5Dc46dB56D8a3c3688","cDAI":"0x1f720E7952650ED8Ca142feBD52aCBe8b7A21741","COMP":"0xD83C9f1B0DaFb1992eF92ac62D6509e54AD4eD48","USDC":"0x8E02433C31B51ABe3Ac65908d59eF82ddB52714F","Contribution":"0xB4059a6808Af368A69d12FBbD104Bb6B9c37e629","DAIStaking":"0x73Be4F9bD5323ceEC603149186862c86dDa2BB23","MarketMaker":"0xe7213b68DC25bf30bC7f1DE9BAead075c66979F9","UBIScheme":"0x2C328D592819524F741A88A18572372CCE196782","FirstClaimPool":"0xd3aF095DE5D1419ADabE47a48d6110e37236A97F","HomeBridge":"0xc90C13734D20e27904dF248FB850f50C81CE3642","ForeignBridge":"0xc90C13734D20e27904dF248FB850f50C81CE3642","BancorFormula":"0x0d6e43d4d7944408d9a5A10BC57B4348d61cD764","DonationsStaking":"0x329058C12E8B269BFA0896c8705b427c5Dd26b96","UniswapRouter":"0x8F9DedBD504580f9E966C006dad0E51EA8CC5A00","DAIUsdOracle":"0x36C6262F266386f1011e03a5882A0B6AC6940c95","COMPUsdOracle":"0x60aC4593ecea0B22216218c4D0f27533ebB01CB6","USDCUsdOracle":"0x41dBB528b5662caD3b8183754C0517b409E00Fa8","AAVEUsdOracle":"0xa0945a7aC164287B4e6B8f234337820807074a29","AaveLendingPool":"0x289A06513a4C4d9bF7DBD201c01BA2492fe6e03C","GasPriceOracle":"0x48D662D1D10505f9bf25c993f30c40118A37E7a2","DAIEthOracle":"0x53E447841DD116a640b1983873601Ade94388702","ETHUsdOracle":"0x81B2b28442e743954C8678b0d2e4be396976F561","AaveIncentiveController":"0x426dcD4fa088D7b33797Da0002bF36a669B398D5","AdminWallet":"0x65E001B67f1aD28FF337C4F6e1cA52F31F5Eb9Fd","OneTimePayments":"0x4D5D3FaE9b08a4FA2aEB9Bc0d86E3dB3b3126438","network":"test","networkId":4447}}
@@ -478,7 +478,7 @@ export const deploySidechain = async (
478
478
  })
479
479
  .then(printDeploy);
480
480
 
481
- let encoded = (
481
+ encoded = (
482
482
  await ethers.getContractAt("IGoodDollar", gd)
483
483
  ).interface.encodeFunctionData("mint", [firstClaim.address, 1000000]);
484
484
  await genericCall(gd, encoded);
@@ -25,8 +25,8 @@ const identityContract = new Contract(IDENTITY_FUSE, Identity.abi);
25
25
 
26
26
  const getDonations = async recipient => {
27
27
  const filter = gd.filters.Transfer(null, recipient);
28
- const events = await gd.queryFilter(filter, 14300689, 14800689);
29
- console.log("events found:", events.length);
28
+ const events = await gd.queryFilter(filter, 14192693, 14800689);
29
+ console.log("events found:", recipient, events.length);
30
30
  const agg = {};
31
31
  events.forEach(e => {
32
32
  const { from, amount } = e.args;
@@ -45,11 +45,10 @@ const main = async () => {
45
45
  "0x834f750aaab09d14a1101a15b185121f9a1475b2",
46
46
  "0x956e72df332ee17ecb3d641fca1f600ea19d1d09",
47
47
  "0x13dfefdc4713b98c07abdd9f7d93d2b8db716e6c",
48
- "0xbbc680560a88cf06c9ae8a36b209288577d9a143",
49
48
  "0x626c86ff4749043df4dd5e9dce650325955a4e6d",
50
49
  "0x82a92d1949498d494189152a040aeb0ef0175730",
51
- "0x27fb119b81b26104c0865435b741b6031bb35bb6",
52
- "0x6214D6b492528fc5517f57499c436A5FF72B6D5B"
50
+ "0x6214D6b492528fc5517f57499c436A5FF72B6D5B",
51
+ "0x9E4eA5385272ba430Ab905081A4dA90738706e4c"
53
52
  ];
54
53
  const results = await Promise.all(recipients.map(r => getDonations(r)));
55
54
 
@@ -132,7 +132,7 @@ describe("ClaimersDistribution", () => {
132
132
  "GReputation",
133
133
  reputation
134
134
  )) as GReputation;
135
- expect(await rep.balanceOf(claimer2.address)).to.equal(
135
+ expect(await rep.balanceOfLocal(claimer2.address)).to.equal(
136
136
  ethers.utils.parseEther("2000000")
137
137
  ); //half of reputation since he claimed once out of 2 claims
138
138
  });
@@ -149,7 +149,7 @@ describe("ClaimersDistribution", () => {
149
149
  "GReputation",
150
150
  reputation
151
151
  )) as GReputation;
152
- expect(await rep.balanceOf(claimer1.address)).to.equal(
152
+ expect(await rep.balanceOfLocal(claimer1.address)).to.equal(
153
153
  ethers.utils.parseEther("2000000")
154
154
  ); //half of reputation since he claimed once out of 2 claims
155
155
  });
@@ -167,9 +167,9 @@ describe("ClaimersDistribution", () => {
167
167
  "GReputation",
168
168
  reputation
169
169
  )) as GReputation;
170
- const startrep = await rep.balanceOf(claimer1.address);
170
+ const startrep = await rep.balanceOfLocal(claimer1.address);
171
171
  await expect(cd.claimReputation(claimer1.address)).to.not.reverted;
172
- const endrep = await rep.balanceOf(claimer1.address);
172
+ const endrep = await rep.balanceOfLocal(claimer1.address);
173
173
  expect(startrep).to.equal(endrep);
174
174
  });
175
175
 
@@ -183,7 +183,7 @@ describe("ClaimersDistribution", () => {
183
183
  "GReputation",
184
184
  reputation
185
185
  )) as GReputation;
186
- expect(await rep.balanceOf(claimer3.address)).to.equal(0);
186
+ expect(await rep.balanceOfLocal(claimer3.address)).to.equal(0);
187
187
  });
188
188
 
189
189
  it("should be able to claim every day", async () => {
@@ -121,7 +121,7 @@ describe("CompoundVotingMachine#CastVote", () => {
121
121
 
122
122
  await grep.mint(actor.address, ethers.BigNumber.from("100001"));
123
123
  console.log(
124
- await grep.balanceOf(actor.address).then(_ => _.toString())
124
+ await grep.balanceOfLocal(actor.address).then(_ => _.toString())
125
125
  );
126
126
  let tx = await gov
127
127
  .connect(actor)
@@ -249,7 +249,7 @@ describe("CompoundVotingMachine#DAOScheme", () => {
249
249
  expect(states[await gov.state(proposalId)]).to.equal("Executed");
250
250
 
251
251
  //acct should now have 1M after proposal minted rep
252
- expect(await grep.balanceOf(acct.address)).to.equal(
252
+ expect(await grep.balanceOfLocal(acct.address)).to.equal(
253
253
  ethers.BigNumber.from("1000000")
254
254
  );
255
255
  });
@@ -205,7 +205,7 @@ describe("CompoundVotingMachine#Guardian", () => {
205
205
  grep.address,
206
206
  await grep.totalSupply().then(_ => _.toString()),
207
207
  await (await grep.getVotes(root.address)).toString(),
208
- await (await grep.balanceOf(root.address)).toString(),
208
+ await (await grep.balanceOfLocal(root.address)).toString(),
209
209
  await gov.rep()
210
210
  );
211
211
  let targets = [gov.address];