@gooddollar/goodprotocol 1.0.19 → 1.0.20

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 (236) hide show
  1. package/package.json +3 -2
  2. package/types/AaveMock.ts +1022 -0
  3. package/types/AaveStakingFactory.ts +290 -0
  4. package/types/AaveUSDMockOracle.ts +89 -0
  5. package/types/AccessControlEnumerableUpgradeable.ts +435 -0
  6. package/types/AccessControlUpgradeable.ts +362 -0
  7. package/types/AggregatorV3Interface.ts +192 -0
  8. package/types/Avatar.ts +121 -0
  9. package/types/BancorFormula.ts +974 -0
  10. package/types/BaseShareField.ts +442 -0
  11. package/types/BaseShareFieldV2.ts +361 -0
  12. package/types/BatUSDMockOracle.ts +89 -0
  13. package/types/BulkProof.ts +111 -0
  14. package/types/CBATMock.ts +1194 -0
  15. package/types/CDAILowWorthMock.ts +1160 -0
  16. package/types/CDAIMock.ts +1210 -0
  17. package/types/CDAINonMintableMock.ts +1160 -0
  18. package/types/CDecimalsMock.ts +1194 -0
  19. package/types/CERC20.ts +527 -0
  20. package/types/CSDTMock.ts +1194 -0
  21. package/types/CUSDCMock.ts +1194 -0
  22. package/types/ClaimersDistribution.ts +606 -0
  23. package/types/CompUSDMockOracle.ts +89 -0
  24. package/types/CompoundStakingFactory.ts +261 -0
  25. package/types/CompoundVotingMachine.ts +1690 -0
  26. package/types/ContributionCalc.ts +164 -0
  27. package/types/Controller.ts +547 -0
  28. package/types/DAIMock.ts +1083 -0
  29. package/types/DAOContract.ts +162 -0
  30. package/types/DAOUpgradeableContract.ts +271 -0
  31. package/types/DaiEthPriceMockOracle.ts +89 -0
  32. package/types/DecimalsMock.ts +1022 -0
  33. package/types/DonationsStaking.ts +777 -0
  34. package/types/ERC165Upgradeable.ts +104 -0
  35. package/types/ERC1967Proxy.ts +147 -0
  36. package/types/ERC1967Upgrade.ts +106 -0
  37. package/types/ERC1967UpgradeUpgradeable.ts +107 -0
  38. package/types/ERC20.ts +365 -0
  39. package/types/ERC20BurnableUpgradeable.ts +479 -0
  40. package/types/ERC20PausableUpgradeable.ts +449 -0
  41. package/types/ERC20PresetMinterPauserUpgradeable.ts +1023 -0
  42. package/types/ERC20Upgradeable.ts +417 -0
  43. package/types/EthUSDMockOracle.ts +138 -0
  44. package/types/ExchangeHelper.ts +522 -0
  45. package/types/GReputation.ts +2020 -0
  46. package/types/GasPriceMockOracle.ts +89 -0
  47. package/types/GlobalConstraintInterface.ts +134 -0
  48. package/types/GoodAaveStaking.ts +1752 -0
  49. package/types/GoodAaveStakingV2.ts +1722 -0
  50. package/types/GoodCompoundStaking.ts +1838 -0
  51. package/types/GoodCompoundStakingTest.ts +1948 -0
  52. package/types/GoodCompoundStakingV2.ts +1636 -0
  53. package/types/GoodFundManager.ts +1098 -0
  54. package/types/GoodFundManagerTest.ts +1137 -0
  55. package/types/GoodMarketMaker.ts +974 -0
  56. package/types/GoodReserveCDai.ts +1938 -0
  57. package/types/GovernanceStaking.ts +1267 -0
  58. package/types/IAaveIncentivesController.ts +155 -0
  59. package/types/IAccessControlEnumerableUpgradeable.ts +380 -0
  60. package/types/IAccessControlUpgradeable.ts +307 -0
  61. package/types/IAdminWallet.ts +171 -0
  62. package/types/IBeacon.ts +89 -0
  63. package/types/IBeaconUpgradeable.ts +89 -0
  64. package/types/IDonationStaking.ts +98 -0
  65. package/types/IERC165Upgradeable.ts +104 -0
  66. package/types/IERC1822Proxiable.ts +89 -0
  67. package/types/IERC20MetadataUpgradeable.ts +340 -0
  68. package/types/IERC20Upgradeable.ts +300 -0
  69. package/types/IERC2917.ts +636 -0
  70. package/types/IFirstClaimPool.ts +115 -0
  71. package/types/IGoodDollar.ts +579 -0
  72. package/types/IGoodStaking.ts +264 -0
  73. package/types/IHasRouter.ts +83 -0
  74. package/types/IIdentity.ts +281 -0
  75. package/types/ILendingPool.ts +241 -0
  76. package/types/INameService.ts +86 -0
  77. package/types/IUBIScheme.ts +121 -0
  78. package/types/IncentiveControllerMock.ts +207 -0
  79. package/types/IntVoteInterface.ts +468 -0
  80. package/types/LendingPoolMock.ts +1250 -0
  81. package/types/MultiBaseGovernanceShareField.ts +411 -0
  82. package/types/Multicall.ts +298 -0
  83. package/types/NameService.ts +358 -0
  84. package/types/OldMarketMaker.ts +113 -0
  85. package/types/OverMintTester.ts +176 -0
  86. package/types/OverMintTesterRegularStake.ts +177 -0
  87. package/types/PausableUpgradeable.ts +103 -0
  88. package/types/ProtocolUpgrade.ts +272 -0
  89. package/types/ProtocolUpgradeFuse.ts +166 -0
  90. package/types/ProtocolUpgradeFuseRecover.ts +167 -0
  91. package/types/ProtocolUpgradeRecover.ts +264 -0
  92. package/types/Proxy.ts +66 -0
  93. package/types/ProxyAdmin.ts +210 -0
  94. package/types/ProxyFactory1967.ts +284 -0
  95. package/types/Reputation.ts +936 -0
  96. package/types/ReputationInterface.ts +261 -0
  97. package/types/ReputationTestHelper.ts +175 -0
  98. package/types/Reserve.ts +112 -0
  99. package/types/SchemeRegistrar.ts +164 -0
  100. package/types/SimpleStaking.ts +1514 -0
  101. package/types/SimpleStakingV2.ts +1418 -0
  102. package/types/SixteenDecimalsTokenMock.ts +1023 -0
  103. package/types/StakersDistribution.ts +921 -0
  104. package/types/Staking.ts +158 -0
  105. package/types/SwapHelperTest.ts +120 -0
  106. package/types/TwentyDecimalsTokenMock.ts +1023 -0
  107. package/types/UBIScheme.ts +1361 -0
  108. package/types/USDCMock.ts +1022 -0
  109. package/types/UUPSUpgradeable.ts +179 -0
  110. package/types/Uniswap.ts +423 -0
  111. package/types/UniswapFactory.ts +106 -0
  112. package/types/UniswapPair.ts +187 -0
  113. package/types/UniswapV2SwapHelper.ts +124 -0
  114. package/types/UpgradableMock.ts +321 -0
  115. package/types/UpgradableMock2.ts +283 -0
  116. package/types/UpgradableMock3.ts +308 -0
  117. package/types/UpgradableMock4.ts +308 -0
  118. package/types/common.ts +44 -0
  119. package/types/factories/AaveMock__factory.ts +727 -0
  120. package/types/factories/AaveStakingFactory__factory.ts +262 -0
  121. package/types/factories/AaveUSDMockOracle__factory.ts +75 -0
  122. package/types/factories/AccessControlEnumerableUpgradeable__factory.ts +279 -0
  123. package/types/factories/AccessControlUpgradeable__factory.ts +234 -0
  124. package/types/factories/AggregatorV3Interface__factory.ts +121 -0
  125. package/types/factories/Avatar__factory.ts +59 -0
  126. package/types/factories/BancorFormula__factory.ts +674 -0
  127. package/types/factories/BaseShareFieldV2__factory.ts +251 -0
  128. package/types/factories/BaseShareField__factory.ts +307 -0
  129. package/types/factories/BatUSDMockOracle__factory.ts +75 -0
  130. package/types/factories/BulkProof__factory.ts +89 -0
  131. package/types/factories/CBATMock__factory.ts +831 -0
  132. package/types/factories/CDAILowWorthMock__factory.ts +821 -0
  133. package/types/factories/CDAIMock__factory.ts +844 -0
  134. package/types/factories/CDAINonMintableMock__factory.ts +821 -0
  135. package/types/factories/CDecimalsMock__factory.ts +831 -0
  136. package/types/factories/CERC20__factory.ts +368 -0
  137. package/types/factories/CSDTMock__factory.ts +831 -0
  138. package/types/factories/CUSDCMock__factory.ts +831 -0
  139. package/types/factories/ClaimersDistribution__factory.ts +404 -0
  140. package/types/factories/CompUSDMockOracle__factory.ts +75 -0
  141. package/types/factories/CompoundStakingFactory__factory.ts +249 -0
  142. package/types/factories/CompoundVotingMachine__factory.ts +1182 -0
  143. package/types/factories/ContributionCalc__factory.ts +83 -0
  144. package/types/factories/Controller__factory.ts +359 -0
  145. package/types/factories/DAIMock__factory.ts +770 -0
  146. package/types/factories/DAOContract__factory.ts +118 -0
  147. package/types/factories/DAOUpgradeableContract__factory.ts +201 -0
  148. package/types/factories/DaiEthPriceMockOracle__factory.ts +79 -0
  149. package/types/factories/DecimalsMock__factory.ts +742 -0
  150. package/types/factories/DonationsStaking__factory.ts +554 -0
  151. package/types/factories/ERC165Upgradeable__factory.ts +45 -0
  152. package/types/factories/ERC1967Proxy__factory.ts +130 -0
  153. package/types/factories/ERC1967UpgradeUpgradeable__factory.ts +75 -0
  154. package/types/factories/ERC1967Upgrade__factory.ts +71 -0
  155. package/types/factories/ERC20BurnableUpgradeable__factory.ts +331 -0
  156. package/types/factories/ERC20PausableUpgradeable__factory.ts +339 -0
  157. package/types/factories/ERC20PresetMinterPauserUpgradeable__factory.ts +733 -0
  158. package/types/factories/ERC20Upgradeable__factory.ts +332 -0
  159. package/types/factories/ERC20__factory.ts +272 -0
  160. package/types/factories/EthUSDMockOracle__factory.ts +108 -0
  161. package/types/factories/ExchangeHelper__factory.ts +401 -0
  162. package/types/factories/GReputation__factory.ts +1415 -0
  163. package/types/factories/GasPriceMockOracle__factory.ts +75 -0
  164. package/types/factories/GlobalConstraintInterface__factory.ts +72 -0
  165. package/types/factories/GoodAaveStakingV2__factory.ts +1227 -0
  166. package/types/factories/GoodAaveStaking__factory.ts +1263 -0
  167. package/types/factories/GoodCompoundStakingTest__factory.ts +1457 -0
  168. package/types/factories/GoodCompoundStakingV2__factory.ts +1169 -0
  169. package/types/factories/GoodCompoundStaking__factory.ts +1303 -0
  170. package/types/factories/GoodFundManagerTest__factory.ts +775 -0
  171. package/types/factories/GoodFundManager__factory.ts +733 -0
  172. package/types/factories/GoodMarketMaker__factory.ts +661 -0
  173. package/types/factories/GoodReserveCDai__factory.ts +1391 -0
  174. package/types/factories/GovernanceStaking__factory.ts +922 -0
  175. package/types/factories/IAaveIncentivesController__factory.ts +83 -0
  176. package/types/factories/IAccessControlEnumerableUpgradeable__factory.ts +247 -0
  177. package/types/factories/IAccessControlUpgradeable__factory.ts +202 -0
  178. package/types/factories/IAdminWallet__factory.ts +75 -0
  179. package/types/factories/IBeaconUpgradeable__factory.ts +39 -0
  180. package/types/factories/IBeacon__factory.ts +36 -0
  181. package/types/factories/IDonationStaking__factory.ts +33 -0
  182. package/types/factories/IERC165Upgradeable__factory.ts +45 -0
  183. package/types/factories/IERC1822Proxiable__factory.ts +39 -0
  184. package/types/factories/IERC20MetadataUpgradeable__factory.ts +252 -0
  185. package/types/factories/IERC20Upgradeable__factory.ts +209 -0
  186. package/types/factories/IERC2917__factory.ts +480 -0
  187. package/types/factories/IFirstClaimPool__factory.ts +58 -0
  188. package/types/factories/IGoodDollar__factory.ts +411 -0
  189. package/types/factories/IGoodStaking__factory.ts +175 -0
  190. package/types/factories/IHasRouter__factory.ts +36 -0
  191. package/types/factories/IIdentity__factory.ts +150 -0
  192. package/types/factories/ILendingPool__factory.ts +168 -0
  193. package/types/factories/INameService__factory.ts +42 -0
  194. package/types/factories/IUBIScheme__factory.ts +68 -0
  195. package/types/factories/IncentiveControllerMock__factory.ts +166 -0
  196. package/types/factories/IntVoteInterface__factory.ts +349 -0
  197. package/types/factories/LendingPoolMock__factory.ts +914 -0
  198. package/types/factories/MultiBaseGovernanceShareField__factory.ts +240 -0
  199. package/types/factories/Multicall__factory.ts +215 -0
  200. package/types/factories/NameService__factory.ts +264 -0
  201. package/types/factories/OldMarketMaker__factory.ts +62 -0
  202. package/types/factories/OverMintTesterRegularStake__factory.ts +156 -0
  203. package/types/factories/OverMintTester__factory.ts +152 -0
  204. package/types/factories/PausableUpgradeable__factory.ts +65 -0
  205. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +146 -0
  206. package/types/factories/ProtocolUpgradeFuse__factory.ts +142 -0
  207. package/types/factories/ProtocolUpgradeRecover__factory.ts +184 -0
  208. package/types/factories/ProtocolUpgrade__factory.ts +207 -0
  209. package/types/factories/ProxyAdmin__factory.ts +105 -0
  210. package/types/factories/ProxyFactory1967__factory.ts +223 -0
  211. package/types/factories/Proxy__factory.ts +28 -0
  212. package/types/factories/ReputationInterface__factory.ts +168 -0
  213. package/types/factories/ReputationTestHelper__factory.ts +141 -0
  214. package/types/factories/Reputation__factory.ts +667 -0
  215. package/types/factories/Reserve__factory.ts +52 -0
  216. package/types/factories/SchemeRegistrar__factory.ts +114 -0
  217. package/types/factories/SimpleStakingV2__factory.ts +986 -0
  218. package/types/factories/SimpleStaking__factory.ts +1045 -0
  219. package/types/factories/SixteenDecimalsTokenMock__factory.ts +734 -0
  220. package/types/factories/StakersDistribution__factory.ts +591 -0
  221. package/types/factories/Staking__factory.ts +74 -0
  222. package/types/factories/SwapHelperTest__factory.ts +96 -0
  223. package/types/factories/TwentyDecimalsTokenMock__factory.ts +734 -0
  224. package/types/factories/UBIScheme__factory.ts +969 -0
  225. package/types/factories/USDCMock__factory.ts +727 -0
  226. package/types/factories/UUPSUpgradeable__factory.ts +102 -0
  227. package/types/factories/UniswapFactory__factory.ts +50 -0
  228. package/types/factories/UniswapPair__factory.ts +117 -0
  229. package/types/factories/UniswapV2SwapHelper__factory.ts +101 -0
  230. package/types/factories/Uniswap__factory.ts +272 -0
  231. package/types/factories/UpgradableMock2__factory.ts +210 -0
  232. package/types/factories/UpgradableMock3__factory.ts +223 -0
  233. package/types/factories/UpgradableMock4__factory.ts +223 -0
  234. package/types/factories/UpgradableMock__factory.ts +236 -0
  235. package/types/hardhat.d.ts +1077 -0
  236. package/types/index.ts +236 -0
@@ -0,0 +1,914 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
6
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
7
+ import type {
8
+ LendingPoolMock,
9
+ LendingPoolMockInterface,
10
+ } from "../LendingPoolMock";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [
15
+ {
16
+ internalType: "address",
17
+ name: "_asset",
18
+ type: "address",
19
+ },
20
+ ],
21
+ stateMutability: "nonpayable",
22
+ type: "constructor",
23
+ },
24
+ {
25
+ anonymous: false,
26
+ inputs: [
27
+ {
28
+ indexed: true,
29
+ internalType: "address",
30
+ name: "owner",
31
+ type: "address",
32
+ },
33
+ {
34
+ indexed: true,
35
+ internalType: "address",
36
+ name: "spender",
37
+ type: "address",
38
+ },
39
+ {
40
+ indexed: false,
41
+ internalType: "uint256",
42
+ name: "value",
43
+ type: "uint256",
44
+ },
45
+ ],
46
+ name: "Approval",
47
+ type: "event",
48
+ },
49
+ {
50
+ anonymous: false,
51
+ inputs: [
52
+ {
53
+ indexed: false,
54
+ internalType: "address",
55
+ name: "account",
56
+ type: "address",
57
+ },
58
+ ],
59
+ name: "Paused",
60
+ type: "event",
61
+ },
62
+ {
63
+ anonymous: false,
64
+ inputs: [
65
+ {
66
+ indexed: true,
67
+ internalType: "bytes32",
68
+ name: "role",
69
+ type: "bytes32",
70
+ },
71
+ {
72
+ indexed: true,
73
+ internalType: "bytes32",
74
+ name: "previousAdminRole",
75
+ type: "bytes32",
76
+ },
77
+ {
78
+ indexed: true,
79
+ internalType: "bytes32",
80
+ name: "newAdminRole",
81
+ type: "bytes32",
82
+ },
83
+ ],
84
+ name: "RoleAdminChanged",
85
+ type: "event",
86
+ },
87
+ {
88
+ anonymous: false,
89
+ inputs: [
90
+ {
91
+ indexed: true,
92
+ internalType: "bytes32",
93
+ name: "role",
94
+ type: "bytes32",
95
+ },
96
+ {
97
+ indexed: true,
98
+ internalType: "address",
99
+ name: "account",
100
+ type: "address",
101
+ },
102
+ {
103
+ indexed: true,
104
+ internalType: "address",
105
+ name: "sender",
106
+ type: "address",
107
+ },
108
+ ],
109
+ name: "RoleGranted",
110
+ type: "event",
111
+ },
112
+ {
113
+ anonymous: false,
114
+ inputs: [
115
+ {
116
+ indexed: true,
117
+ internalType: "bytes32",
118
+ name: "role",
119
+ type: "bytes32",
120
+ },
121
+ {
122
+ indexed: true,
123
+ internalType: "address",
124
+ name: "account",
125
+ type: "address",
126
+ },
127
+ {
128
+ indexed: true,
129
+ internalType: "address",
130
+ name: "sender",
131
+ type: "address",
132
+ },
133
+ ],
134
+ name: "RoleRevoked",
135
+ type: "event",
136
+ },
137
+ {
138
+ anonymous: false,
139
+ inputs: [
140
+ {
141
+ indexed: true,
142
+ internalType: "address",
143
+ name: "from",
144
+ type: "address",
145
+ },
146
+ {
147
+ indexed: true,
148
+ internalType: "address",
149
+ name: "to",
150
+ type: "address",
151
+ },
152
+ {
153
+ indexed: false,
154
+ internalType: "uint256",
155
+ name: "value",
156
+ type: "uint256",
157
+ },
158
+ ],
159
+ name: "Transfer",
160
+ type: "event",
161
+ },
162
+ {
163
+ anonymous: false,
164
+ inputs: [
165
+ {
166
+ indexed: false,
167
+ internalType: "address",
168
+ name: "account",
169
+ type: "address",
170
+ },
171
+ ],
172
+ name: "Unpaused",
173
+ type: "event",
174
+ },
175
+ {
176
+ inputs: [],
177
+ name: "DEFAULT_ADMIN_ROLE",
178
+ outputs: [
179
+ {
180
+ internalType: "bytes32",
181
+ name: "",
182
+ type: "bytes32",
183
+ },
184
+ ],
185
+ stateMutability: "view",
186
+ type: "function",
187
+ },
188
+ {
189
+ inputs: [],
190
+ name: "MINTER_ROLE",
191
+ outputs: [
192
+ {
193
+ internalType: "bytes32",
194
+ name: "",
195
+ type: "bytes32",
196
+ },
197
+ ],
198
+ stateMutability: "view",
199
+ type: "function",
200
+ },
201
+ {
202
+ inputs: [],
203
+ name: "PAUSER_ROLE",
204
+ outputs: [
205
+ {
206
+ internalType: "bytes32",
207
+ name: "",
208
+ type: "bytes32",
209
+ },
210
+ ],
211
+ stateMutability: "view",
212
+ type: "function",
213
+ },
214
+ {
215
+ inputs: [
216
+ {
217
+ internalType: "address",
218
+ name: "owner",
219
+ type: "address",
220
+ },
221
+ {
222
+ internalType: "address",
223
+ name: "spender",
224
+ type: "address",
225
+ },
226
+ ],
227
+ name: "allowance",
228
+ outputs: [
229
+ {
230
+ internalType: "uint256",
231
+ name: "",
232
+ type: "uint256",
233
+ },
234
+ ],
235
+ stateMutability: "view",
236
+ type: "function",
237
+ },
238
+ {
239
+ inputs: [
240
+ {
241
+ internalType: "address",
242
+ name: "spender",
243
+ type: "address",
244
+ },
245
+ {
246
+ internalType: "uint256",
247
+ name: "amount",
248
+ type: "uint256",
249
+ },
250
+ ],
251
+ name: "approve",
252
+ outputs: [
253
+ {
254
+ internalType: "bool",
255
+ name: "",
256
+ type: "bool",
257
+ },
258
+ ],
259
+ stateMutability: "nonpayable",
260
+ type: "function",
261
+ },
262
+ {
263
+ inputs: [
264
+ {
265
+ internalType: "address",
266
+ name: "account",
267
+ type: "address",
268
+ },
269
+ ],
270
+ name: "balanceOf",
271
+ outputs: [
272
+ {
273
+ internalType: "uint256",
274
+ name: "",
275
+ type: "uint256",
276
+ },
277
+ ],
278
+ stateMutability: "view",
279
+ type: "function",
280
+ },
281
+ {
282
+ inputs: [
283
+ {
284
+ internalType: "uint256",
285
+ name: "amount",
286
+ type: "uint256",
287
+ },
288
+ ],
289
+ name: "burn",
290
+ outputs: [],
291
+ stateMutability: "nonpayable",
292
+ type: "function",
293
+ },
294
+ {
295
+ inputs: [
296
+ {
297
+ internalType: "address",
298
+ name: "account",
299
+ type: "address",
300
+ },
301
+ {
302
+ internalType: "uint256",
303
+ name: "amount",
304
+ type: "uint256",
305
+ },
306
+ ],
307
+ name: "burnFrom",
308
+ outputs: [],
309
+ stateMutability: "nonpayable",
310
+ type: "function",
311
+ },
312
+ {
313
+ inputs: [],
314
+ name: "decimals",
315
+ outputs: [
316
+ {
317
+ internalType: "uint8",
318
+ name: "",
319
+ type: "uint8",
320
+ },
321
+ ],
322
+ stateMutability: "pure",
323
+ type: "function",
324
+ },
325
+ {
326
+ inputs: [
327
+ {
328
+ internalType: "address",
329
+ name: "spender",
330
+ type: "address",
331
+ },
332
+ {
333
+ internalType: "uint256",
334
+ name: "subtractedValue",
335
+ type: "uint256",
336
+ },
337
+ ],
338
+ name: "decreaseAllowance",
339
+ outputs: [
340
+ {
341
+ internalType: "bool",
342
+ name: "",
343
+ type: "bool",
344
+ },
345
+ ],
346
+ stateMutability: "nonpayable",
347
+ type: "function",
348
+ },
349
+ {
350
+ inputs: [
351
+ {
352
+ internalType: "address",
353
+ name: "asset",
354
+ type: "address",
355
+ },
356
+ {
357
+ internalType: "uint256",
358
+ name: "amount",
359
+ type: "uint256",
360
+ },
361
+ {
362
+ internalType: "address",
363
+ name: "onBehalfOf",
364
+ type: "address",
365
+ },
366
+ {
367
+ internalType: "uint16",
368
+ name: "referralCode",
369
+ type: "uint16",
370
+ },
371
+ ],
372
+ name: "deposit",
373
+ outputs: [],
374
+ stateMutability: "nonpayable",
375
+ type: "function",
376
+ },
377
+ {
378
+ inputs: [
379
+ {
380
+ internalType: "address",
381
+ name: "asset",
382
+ type: "address",
383
+ },
384
+ ],
385
+ name: "getReserveData",
386
+ outputs: [
387
+ {
388
+ components: [
389
+ {
390
+ components: [
391
+ {
392
+ internalType: "uint256",
393
+ name: "data",
394
+ type: "uint256",
395
+ },
396
+ ],
397
+ internalType: "struct DataTypes.ReserveConfigurationMap",
398
+ name: "configuration",
399
+ type: "tuple",
400
+ },
401
+ {
402
+ internalType: "uint128",
403
+ name: "liquidityIndex",
404
+ type: "uint128",
405
+ },
406
+ {
407
+ internalType: "uint128",
408
+ name: "variableBorrowIndex",
409
+ type: "uint128",
410
+ },
411
+ {
412
+ internalType: "uint128",
413
+ name: "currentLiquidityRate",
414
+ type: "uint128",
415
+ },
416
+ {
417
+ internalType: "uint128",
418
+ name: "currentVariableBorrowRate",
419
+ type: "uint128",
420
+ },
421
+ {
422
+ internalType: "uint128",
423
+ name: "currentStableBorrowRate",
424
+ type: "uint128",
425
+ },
426
+ {
427
+ internalType: "uint40",
428
+ name: "lastUpdateTimestamp",
429
+ type: "uint40",
430
+ },
431
+ {
432
+ internalType: "address",
433
+ name: "aTokenAddress",
434
+ type: "address",
435
+ },
436
+ {
437
+ internalType: "address",
438
+ name: "stableDebtTokenAddress",
439
+ type: "address",
440
+ },
441
+ {
442
+ internalType: "address",
443
+ name: "variableDebtTokenAddress",
444
+ type: "address",
445
+ },
446
+ {
447
+ internalType: "address",
448
+ name: "interestRateStrategyAddress",
449
+ type: "address",
450
+ },
451
+ {
452
+ internalType: "uint8",
453
+ name: "id",
454
+ type: "uint8",
455
+ },
456
+ ],
457
+ internalType: "struct DataTypes.ReserveData",
458
+ name: "",
459
+ type: "tuple",
460
+ },
461
+ ],
462
+ stateMutability: "view",
463
+ type: "function",
464
+ },
465
+ {
466
+ inputs: [
467
+ {
468
+ internalType: "bytes32",
469
+ name: "role",
470
+ type: "bytes32",
471
+ },
472
+ ],
473
+ name: "getRoleAdmin",
474
+ outputs: [
475
+ {
476
+ internalType: "bytes32",
477
+ name: "",
478
+ type: "bytes32",
479
+ },
480
+ ],
481
+ stateMutability: "view",
482
+ type: "function",
483
+ },
484
+ {
485
+ inputs: [
486
+ {
487
+ internalType: "bytes32",
488
+ name: "role",
489
+ type: "bytes32",
490
+ },
491
+ {
492
+ internalType: "uint256",
493
+ name: "index",
494
+ type: "uint256",
495
+ },
496
+ ],
497
+ name: "getRoleMember",
498
+ outputs: [
499
+ {
500
+ internalType: "address",
501
+ name: "",
502
+ type: "address",
503
+ },
504
+ ],
505
+ stateMutability: "view",
506
+ type: "function",
507
+ },
508
+ {
509
+ inputs: [
510
+ {
511
+ internalType: "bytes32",
512
+ name: "role",
513
+ type: "bytes32",
514
+ },
515
+ ],
516
+ name: "getRoleMemberCount",
517
+ outputs: [
518
+ {
519
+ internalType: "uint256",
520
+ name: "",
521
+ type: "uint256",
522
+ },
523
+ ],
524
+ stateMutability: "view",
525
+ type: "function",
526
+ },
527
+ {
528
+ inputs: [
529
+ {
530
+ internalType: "uint256",
531
+ name: "_amount",
532
+ type: "uint256",
533
+ },
534
+ {
535
+ internalType: "address",
536
+ name: "_recipient",
537
+ type: "address",
538
+ },
539
+ ],
540
+ name: "giveInterestToUser",
541
+ outputs: [],
542
+ stateMutability: "nonpayable",
543
+ type: "function",
544
+ },
545
+ {
546
+ inputs: [
547
+ {
548
+ internalType: "bytes32",
549
+ name: "role",
550
+ type: "bytes32",
551
+ },
552
+ {
553
+ internalType: "address",
554
+ name: "account",
555
+ type: "address",
556
+ },
557
+ ],
558
+ name: "grantRole",
559
+ outputs: [],
560
+ stateMutability: "nonpayable",
561
+ type: "function",
562
+ },
563
+ {
564
+ inputs: [
565
+ {
566
+ internalType: "bytes32",
567
+ name: "role",
568
+ type: "bytes32",
569
+ },
570
+ {
571
+ internalType: "address",
572
+ name: "account",
573
+ type: "address",
574
+ },
575
+ ],
576
+ name: "hasRole",
577
+ outputs: [
578
+ {
579
+ internalType: "bool",
580
+ name: "",
581
+ type: "bool",
582
+ },
583
+ ],
584
+ stateMutability: "view",
585
+ type: "function",
586
+ },
587
+ {
588
+ inputs: [
589
+ {
590
+ internalType: "address",
591
+ name: "spender",
592
+ type: "address",
593
+ },
594
+ {
595
+ internalType: "uint256",
596
+ name: "addedValue",
597
+ type: "uint256",
598
+ },
599
+ ],
600
+ name: "increaseAllowance",
601
+ outputs: [
602
+ {
603
+ internalType: "bool",
604
+ name: "",
605
+ type: "bool",
606
+ },
607
+ ],
608
+ stateMutability: "nonpayable",
609
+ type: "function",
610
+ },
611
+ {
612
+ inputs: [
613
+ {
614
+ internalType: "string",
615
+ name: "name",
616
+ type: "string",
617
+ },
618
+ {
619
+ internalType: "string",
620
+ name: "symbol",
621
+ type: "string",
622
+ },
623
+ ],
624
+ name: "initialize",
625
+ outputs: [],
626
+ stateMutability: "nonpayable",
627
+ type: "function",
628
+ },
629
+ {
630
+ inputs: [
631
+ {
632
+ internalType: "address",
633
+ name: "to",
634
+ type: "address",
635
+ },
636
+ {
637
+ internalType: "uint256",
638
+ name: "amount",
639
+ type: "uint256",
640
+ },
641
+ ],
642
+ name: "mint",
643
+ outputs: [],
644
+ stateMutability: "nonpayable",
645
+ type: "function",
646
+ },
647
+ {
648
+ inputs: [],
649
+ name: "name",
650
+ outputs: [
651
+ {
652
+ internalType: "string",
653
+ name: "",
654
+ type: "string",
655
+ },
656
+ ],
657
+ stateMutability: "view",
658
+ type: "function",
659
+ },
660
+ {
661
+ inputs: [],
662
+ name: "pause",
663
+ outputs: [],
664
+ stateMutability: "nonpayable",
665
+ type: "function",
666
+ },
667
+ {
668
+ inputs: [],
669
+ name: "paused",
670
+ outputs: [
671
+ {
672
+ internalType: "bool",
673
+ name: "",
674
+ type: "bool",
675
+ },
676
+ ],
677
+ stateMutability: "view",
678
+ type: "function",
679
+ },
680
+ {
681
+ inputs: [
682
+ {
683
+ internalType: "bytes32",
684
+ name: "role",
685
+ type: "bytes32",
686
+ },
687
+ {
688
+ internalType: "address",
689
+ name: "account",
690
+ type: "address",
691
+ },
692
+ ],
693
+ name: "renounceRole",
694
+ outputs: [],
695
+ stateMutability: "nonpayable",
696
+ type: "function",
697
+ },
698
+ {
699
+ inputs: [
700
+ {
701
+ internalType: "bytes32",
702
+ name: "role",
703
+ type: "bytes32",
704
+ },
705
+ {
706
+ internalType: "address",
707
+ name: "account",
708
+ type: "address",
709
+ },
710
+ ],
711
+ name: "revokeRole",
712
+ outputs: [],
713
+ stateMutability: "nonpayable",
714
+ type: "function",
715
+ },
716
+ {
717
+ inputs: [
718
+ {
719
+ internalType: "bytes4",
720
+ name: "interfaceId",
721
+ type: "bytes4",
722
+ },
723
+ ],
724
+ name: "supportsInterface",
725
+ outputs: [
726
+ {
727
+ internalType: "bool",
728
+ name: "",
729
+ type: "bool",
730
+ },
731
+ ],
732
+ stateMutability: "view",
733
+ type: "function",
734
+ },
735
+ {
736
+ inputs: [],
737
+ name: "symbol",
738
+ outputs: [
739
+ {
740
+ internalType: "string",
741
+ name: "",
742
+ type: "string",
743
+ },
744
+ ],
745
+ stateMutability: "view",
746
+ type: "function",
747
+ },
748
+ {
749
+ inputs: [],
750
+ name: "totalSupply",
751
+ outputs: [
752
+ {
753
+ internalType: "uint256",
754
+ name: "",
755
+ type: "uint256",
756
+ },
757
+ ],
758
+ stateMutability: "view",
759
+ type: "function",
760
+ },
761
+ {
762
+ inputs: [
763
+ {
764
+ internalType: "address",
765
+ name: "recipient",
766
+ type: "address",
767
+ },
768
+ {
769
+ internalType: "uint256",
770
+ name: "amount",
771
+ type: "uint256",
772
+ },
773
+ ],
774
+ name: "transfer",
775
+ outputs: [
776
+ {
777
+ internalType: "bool",
778
+ name: "",
779
+ type: "bool",
780
+ },
781
+ ],
782
+ stateMutability: "nonpayable",
783
+ type: "function",
784
+ },
785
+ {
786
+ inputs: [
787
+ {
788
+ internalType: "address",
789
+ name: "sender",
790
+ type: "address",
791
+ },
792
+ {
793
+ internalType: "address",
794
+ name: "recipient",
795
+ type: "address",
796
+ },
797
+ {
798
+ internalType: "uint256",
799
+ name: "amount",
800
+ type: "uint256",
801
+ },
802
+ ],
803
+ name: "transferFrom",
804
+ outputs: [
805
+ {
806
+ internalType: "bool",
807
+ name: "",
808
+ type: "bool",
809
+ },
810
+ ],
811
+ stateMutability: "nonpayable",
812
+ type: "function",
813
+ },
814
+ {
815
+ inputs: [],
816
+ name: "underlyingAsset",
817
+ outputs: [
818
+ {
819
+ internalType: "address",
820
+ name: "",
821
+ type: "address",
822
+ },
823
+ ],
824
+ stateMutability: "view",
825
+ type: "function",
826
+ },
827
+ {
828
+ inputs: [],
829
+ name: "unpause",
830
+ outputs: [],
831
+ stateMutability: "nonpayable",
832
+ type: "function",
833
+ },
834
+ {
835
+ inputs: [
836
+ {
837
+ internalType: "address",
838
+ name: "asset",
839
+ type: "address",
840
+ },
841
+ {
842
+ internalType: "uint256",
843
+ name: "amount",
844
+ type: "uint256",
845
+ },
846
+ {
847
+ internalType: "address",
848
+ name: "to",
849
+ type: "address",
850
+ },
851
+ ],
852
+ name: "withdraw",
853
+ outputs: [
854
+ {
855
+ internalType: "uint256",
856
+ name: "",
857
+ type: "uint256",
858
+ },
859
+ ],
860
+ stateMutability: "nonpayable",
861
+ type: "function",
862
+ },
863
+ ];
864
+
865
+ const _bytecode =
866
+ "0x60806040523480156200001157600080fd5b50604051620029a0380380620029a08339810160408190526200003491620005c9565b6101c380546001600160a01b0319166001600160a01b038316179055604080518082018252600580825264615553444360d81b6020808401829052845180860190955291845290830152620000899162000090565b5062000686565b600054610100900460ff1680620000aa575060005460ff16155b620000d25760405162461bcd60e51b8152600401620000c990620005fb565b60405180910390fd5b600054610100900460ff16158015620000f5576000805461ffff19166101011790555b620000ff6200016b565b620001096200016b565b620001136200016b565b6200011d6200016b565b620001298383620001dd565b620001336200016b565b6200013d6200027c565b620001476200016b565b620001538383620002f8565b801562000166576000805461ff00191690555b505050565b600054610100900460ff168062000185575060005460ff16155b620001a45760405162461bcd60e51b8152600401620000c990620005fb565b600054610100900460ff16158015620001c7576000805461ffff19166101011790555b8015620001da576000805461ff00191690555b50565b600054610100900460ff1680620001f7575060005460ff16155b620002165760405162461bcd60e51b8152600401620000c990620005fb565b600054610100900460ff1615801562000239576000805461ffff19166101011790555b82516200024e9060cc90602086019062000523565b508151620002649060cd90602085019062000523565b50801562000166576000805461ff0019169055505050565b600054610100900460ff168062000296575060005460ff16155b620002b55760405162461bcd60e51b8152600401620000c990620005fb565b600054610100900460ff16158015620002d8576000805461ffff19166101011790555b61012d805460ff191690558015620001da576000805461ff001916905550565b600054610100900460ff168062000312575060005460ff16155b620003315760405162461bcd60e51b8152600401620000c990620005fb565b600054610100900460ff1615801562000354576000805461ffff19166101011790555b62000367600033620003bf565b620003bf565b620003937f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620003bf565b620001537f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a3362000361565b620003d68282620003fd60201b62000bf31760201c565b60008281526097602090815260409091206200016691839062000bfd6200040d821b17901c565b6200040982826200042d565b5050565b600062000424836001600160a01b038416620004d1565b90505b92915050565b60008281526065602090815260408083206001600160a01b038516845290915290205460ff16620004095760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200048d3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008181526001830160205260408120546200051a5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000427565b50600062000427565b828054620005319062000649565b90600052602060002090601f016020900481019282620005555760008555620005a0565b82601f106200057057805160ff1916838001178555620005a0565b82800160010185558215620005a0579182015b82811115620005a057825182559160200191906001019062000583565b50620005ae929150620005b2565b5090565b5b80821115620005ae5760008155600101620005b3565b600060208284031215620005dc57600080fd5b81516001600160a01b0381168114620005f457600080fd5b9392505050565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c908216806200065e57607f821691505b602082108114156200068057634e487b7160e01b600052602260045260246000fd5b50919050565b61230a80620006966000396000f3fe608060405234801561001057600080fd5b50600436106101965760003560e01c806301ffc9a71461019b57806306fdde03146101c3578063095ea7b3146101d857806318160ddd146101eb57806323b872dd146101fd578063248a9ca3146102105780632f2ff15d14610223578063313ce5671461023857806335ea6a751461024757806336568abe14610267578063395093511461027a5780633f4ba83a1461028d57806340c10f191461029557806342966c68146102a85780634cd88b76146102bb5780635c975abb146102ce57806369328dec146102da57806370a08231146102ed5780637158da7c1461030057806379cc6790146103215780638456cb59146103345780639010d07c1461033c57806391d148541461034f57806395d89b4114610362578063a217fddf1461036a578063a457c2d714610372578063a9059cbb14610385578063c759d44e14610398578063ca15c873146103ab578063d5391393146103be578063d547741f146103d3578063dd62ed3e146103e6578063e63ab1e91461041f578063e8eda9df14610434575b600080fd5b6101ae6101a9366004611bc1565b610447565b60405190151581526020015b60405180910390f35b6101cb610472565b6040516101ba9190611c17565b6101ae6101e6366004611c66565b610504565b60cb545b6040519081526020016101ba565b6101ae61020b366004611c90565b61051a565b6101ef61021e366004611ccc565b6105c9565b610236610231366004611ce5565b6105de565b005b604051600681526020016101ba565b61025a610255366004611d11565b610605565b6040516101ba9190611d46565b610236610275366004611ce5565b610621565b6101ae610288366004611c66565b610643565b61023661067f565b6102366102a3366004611c66565b6106fd565b6102366102b6366004611ccc565b61077c565b6102366102c9366004611ece565b610789565b61012d5460ff166101ae565b6101ef6102e8366004611f31565b610800565b6101ef6102fb366004611d11565b6108c6565b6101c354610314906001600160a01b031681565b6040516101ba9190611f6d565b61023661032f366004611c66565b6108e1565b610236610962565b61031461034a366004611f81565b6109dc565b6101ae61035d366004611ce5565b6109fb565b6101cb610a26565b6101ef600081565b6101ae610380366004611c66565b610a35565b6101ae610393366004611c66565b610ace565b6102366103a6366004611ce5565b610adb565b6101ef6103b9366004611ccc565b610b0d565b6101ef60008051602061229583398151915281565b6102366103e1366004611ce5565b610b24565b6101ef6103f4366004611fa3565b6001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205490565b6101ef60008051602061227583398151915281565b610236610442366004611fcd565b610b2e565b60006001600160e01b03198216635a05180f60e01b148061046c575061046c82610c12565b92915050565b606060cc805461048190612023565b80601f01602080910402602001604051908101604052809291908181526020018280546104ad90612023565b80156104fa5780601f106104cf576101008083540402835291602001916104fa565b820191906000526020600020905b8154815290600101906020018083116104dd57829003601f168201915b5050505050905090565b6000610511338484610c47565b50600192915050565b6000610527848484610d6b565b6001600160a01b038416600090815260ca60209081526040808320338452909152902054828110156105b15760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6105be8533858403610c47565b506001949350505050565b60009081526065602052604090206001015490565b6105e88282610f32565b60008281526097602052604090206106009082610bfd565b505050565b61060d611abd565b610615611abd565b3060e082015292915050565b61062b8282610f4f565b60008281526097602052604090206106009082610fc9565b33600081815260ca602090815260408083206001600160a01b0387168452909152812054909161051191859061067a908690612074565b610c47565b610697600080516020612275833981519152336109fb565b6106f35760405162461bcd60e51b8152602060048201526039602482015260008051602061225583398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b60648201526084016105a8565b6106fb610fde565b565b610715600080516020612295833981519152336109fb565b61076e5760405162461bcd60e51b815260206004820152603660248201526000805160206122558339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b60648201526084016105a8565b610778828261106d565b5050565b6107863382611146565b50565b600054610100900460ff16806107a2575060005460ff16155b6107be5760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff161580156107e0576000805461ffff19166101011790555b6107ea838361128e565b8015610600576000805461ff0019169055505050565b6101c3546000906001600160a01b038581169116146108315760405162461bcd60e51b81526004016105a8906120da565b61083b3384611146565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820185905285169063a9059cbb90604401602060405180830381600087803b15801561088557600080fd5b505af1158015610899573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108bd9190612128565b50919392505050565b6001600160a01b0316600090815260c9602052604090205490565b60006108ed83336103f4565b90508181101561094b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b60648201526084016105a8565b6109588333848403610c47565b6106008383611146565b61097a600080516020612275833981519152336109fb565b6109d45760405162461bcd60e51b8152602060048201526037602482015260008051602061225583398151915260448201527676652070617573657220726f6c6520746f20706175736560481b60648201526084016105a8565b6106fb611331565b60008281526097602052604081206109f490836113ae565b9392505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060cd805461048190612023565b33600090815260ca602090815260408083206001600160a01b038616845290915281205482811015610ab75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105a8565b610ac43385858403610c47565b5060019392505050565b6000610511338484610d6b565b610778816064610aeb8582612074565b610af4856108c6565b610afe919061214a565b610b089190612169565b61106d565b600081815260976020526040812061046c906113ba565b61062b82826113c4565b6101c3546001600160a01b03858116911614610b5c5760405162461bcd60e51b81526004016105a8906120da565b6040516323b872dd60e01b8152336004820152306024820152604481018490526001600160a01b038516906323b872dd90606401602060405180830381600087803b158015610baa57600080fd5b505af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be29190612128565b50610bed828461106d565b50505050565b61077882826113e1565b60006109f4836001600160a01b038416611467565b60006001600160e01b03198216637965db0b60e01b148061046c57506301ffc9a760e01b6001600160e01b031983161461046c565b6001600160a01b038316610ca95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105a8565b6001600160a01b038216610d0a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105a8565b6001600160a01b03838116600081815260ca602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dcf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105a8565b6001600160a01b038216610e315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105a8565b610e3c8383836114b6565b6001600160a01b038316600090815260c9602052604090205481811015610eb45760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105a8565b6001600160a01b03808516600090815260c96020526040808220858503905591851681529081208054849290610eeb908490612074565b92505081905550826001600160a01b0316846001600160a01b03166000805160206122b583398151915284604051610f2591815260200190565b60405180910390a3610bed565b610f3b826105c9565b610f4581336114c1565b61060083836113e1565b6001600160a01b0381163314610fbf5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016105a8565b6107788282611525565b60006109f4836001600160a01b03841661158c565b61012d5460ff166110285760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016105a8565b61012d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516110639190611f6d565b60405180910390a1565b6001600160a01b0382166110c35760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105a8565b6110cf600083836114b6565b8060cb60008282546110e19190612074565b90915550506001600160a01b038216600090815260c960205260408120805483929061110e908490612074565b90915550506040518181526001600160a01b038316906000906000805160206122b58339815191529060200160405180910390a35050565b6001600160a01b0382166111a65760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016105a8565b6111b2826000836114b6565b6001600160a01b038216600090815260c96020526040902054818110156112265760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016105a8565b6001600160a01b038316600090815260c960205260408120838303905560cb805484929061125590849061218b565b90915550506040518281526000906001600160a01b038516906000805160206122b58339815191529060200160405180910390a3505050565b600054610100900460ff16806112a7575060005460ff16155b6112c35760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff161580156112e5576000805461ffff19166101011790555b6112ed61167f565b6112f561167f565b6112fd61167f565b61130561167f565b61130f83836116ea565b61131761167f565b61131f61177f565b61132761167f565b6107ea83836117f5565b61012d5460ff16156113785760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016105a8565b61012d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586110563390565b60006109f48383611887565b600061046c825490565b6113cd826105c9565b6113d781336114c1565b6106008383611525565b6113eb82826109fb565b6107785760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556114233390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008181526001830160205260408120546114ae5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561046c565b50600061046c565b6106008383836118b1565b6114cb82826109fb565b610778576114e3816001600160a01b03166014611918565b6114ee836020611918565b6040516020016114ff9291906121a2565b60408051601f198184030181529082905262461bcd60e51b82526105a891600401611c17565b61152f82826109fb565b156107785760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600081815260018301602052604081205480156116755760006115b060018361218b565b85549091506000906115c49060019061218b565b90508181146116295760008660000182815481106115e4576115e4612211565b906000526020600020015490508087600001848154811061160757611607612211565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061163a5761163a612227565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061046c565b600091505061046c565b600054610100900460ff1680611698575060005460ff16155b6116b45760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff161580156116d6576000805461ffff19166101011790555b8015610786576000805461ff001916905550565b600054610100900460ff1680611703575060005460ff16155b61171f5760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff16158015611741576000805461ffff19166101011790555b82516117549060cc906020860190611b28565b5081516117689060cd906020850190611b28565b508015610600576000805461ff0019169055505050565b600054610100900460ff1680611798575060005460ff16155b6117b45760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff161580156117d6576000805461ffff19166101011790555b61012d805460ff191690558015610786576000805461ff001916905550565b600054610100900460ff168061180e575060005460ff16155b61182a5760405162461bcd60e51b81526004016105a89061208c565b600054610100900460ff1615801561184c576000805461ffff19166101011790555b611857600033611ab3565b61186f60008051602061229583398151915233611ab3565b6107ea60008051602061227583398151915233611ab3565b600082600001828154811061189e5761189e612211565b9060005260206000200154905092915050565b61012d5460ff16156106005760405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b60648201526084016105a8565b6060600061192783600261214a565b611932906002612074565b6001600160401b0381111561194957611949611e2c565b6040519080825280601f01601f191660200182016040528015611973576020820181803683370190505b509050600360fc1b8160008151811061198e5761198e612211565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106119bd576119bd612211565b60200101906001600160f81b031916908160001a90535060006119e184600261214a565b6119ec906001612074565b90505b6001811115611a64576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611a2057611a20612211565b1a60f81b828281518110611a3657611a36612211565b60200101906001600160f81b031916908160001a90535060049490941c93611a5d8161223d565b90506119ef565b5083156109f45760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016105a8565b6105e88282610bf3565b604080516101a08101825260006101808201818152825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101829052610140810182905261016081019190915290565b828054611b3490612023565b90600052602060002090601f016020900481019282611b565760008555611b9c565b82601f10611b6f57805160ff1916838001178555611b9c565b82800160010185558215611b9c579182015b82811115611b9c578251825591602001919060010190611b81565b50611ba8929150611bac565b5090565b5b80821115611ba85760008155600101611bad565b600060208284031215611bd357600080fd5b81356001600160e01b0319811681146109f457600080fd5b60005b83811015611c06578181015183820152602001611bee565b83811115610bed5750506000910152565b6020815260008251806020840152611c36816040850160208701611beb565b601f01601f19169190910160400192915050565b80356001600160a01b0381168114611c6157600080fd5b919050565b60008060408385031215611c7957600080fd5b611c8283611c4a565b946020939093013593505050565b600080600060608486031215611ca557600080fd5b611cae84611c4a565b9250611cbc60208501611c4a565b9150604084013590509250925092565b600060208284031215611cde57600080fd5b5035919050565b60008060408385031215611cf857600080fd5b82359150611d0860208401611c4a565b90509250929050565b600060208284031215611d2357600080fd5b6109f482611c4a565b6001600160801b03169052565b6001600160a01b03169052565b815151815261018081016020830151611d626020840182611d2c565b506040830151611d756040840182611d2c565b506060830151611d886060840182611d2c565b506080830151611d9b6080840182611d2c565b5060a0830151611dae60a0840182611d2c565b5060c0830151611dc760c084018264ffffffffff169052565b5060e0830151611dda60e0840182611d39565b5061010080840151611dee82850182611d39565b505061012080840151611e0382850182611d39565b505061014080840151611e1882850182611d39565b50506101609283015160ff16919092015290565b634e487b7160e01b600052604160045260246000fd5b600082601f830112611e5357600080fd5b81356001600160401b0380821115611e6d57611e6d611e2c565b604051601f8301601f19908116603f01168101908282118183101715611e9557611e95611e2c565b81604052838152866020858801011115611eae57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215611ee157600080fd5b82356001600160401b0380821115611ef857600080fd5b611f0486838701611e42565b93506020850135915080821115611f1a57600080fd5b50611f2785828601611e42565b9150509250929050565b600080600060608486031215611f4657600080fd5b611f4f84611c4a565b925060208401359150611f6460408501611c4a565b90509250925092565b6001600160a01b0391909116815260200190565b60008060408385031215611f9457600080fd5b50508035926020909101359150565b60008060408385031215611fb657600080fd5b611fbf83611c4a565b9150611d0860208401611c4a565b60008060008060808587031215611fe357600080fd5b611fec85611c4a565b93506020850135925061200160408601611c4a565b9150606085013561ffff8116811461201857600080fd5b939692955090935050565b600181811c9082168061203757607f821691505b6020821081141561205857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082198211156120875761208761205e565b500190565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602e908201527f61737365742073686f756c642062652073616d6520776974682073657420756e60408201526d19195c9b1e5a5b99c8185cdcd95d60921b606082015260800190565b60006020828403121561213a57600080fd5b815180151581146109f457600080fd5b60008160001904831182151516156121645761216461205e565b500290565b60008261218657634e487b7160e01b600052601260045260246000fd5b500490565b60008282101561219d5761219d61205e565b500390565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516121d4816017850160208801611beb565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351612205816028840160208801611beb565b01602801949350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60008161224c5761224c61205e565b50600019019056fe45524332305072657365744d696e7465725061757365723a206d75737420686165d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220282df88feb7c8c8111e151993f925c996069e55d669f54d4543cdba9431fe52164736f6c63430008080033";
867
+
868
+ type LendingPoolMockConstructorParams =
869
+ | [signer?: Signer]
870
+ | ConstructorParameters<typeof ContractFactory>;
871
+
872
+ const isSuperArgs = (
873
+ xs: LendingPoolMockConstructorParams
874
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
875
+
876
+ export class LendingPoolMock__factory extends ContractFactory {
877
+ constructor(...args: LendingPoolMockConstructorParams) {
878
+ if (isSuperArgs(args)) {
879
+ super(...args);
880
+ } else {
881
+ super(_abi, _bytecode, args[0]);
882
+ }
883
+ }
884
+
885
+ deploy(
886
+ _asset: string,
887
+ overrides?: Overrides & { from?: string | Promise<string> }
888
+ ): Promise<LendingPoolMock> {
889
+ return super.deploy(_asset, overrides || {}) as Promise<LendingPoolMock>;
890
+ }
891
+ getDeployTransaction(
892
+ _asset: string,
893
+ overrides?: Overrides & { from?: string | Promise<string> }
894
+ ): TransactionRequest {
895
+ return super.getDeployTransaction(_asset, overrides || {});
896
+ }
897
+ attach(address: string): LendingPoolMock {
898
+ return super.attach(address) as LendingPoolMock;
899
+ }
900
+ connect(signer: Signer): LendingPoolMock__factory {
901
+ return super.connect(signer) as LendingPoolMock__factory;
902
+ }
903
+ static readonly bytecode = _bytecode;
904
+ static readonly abi = _abi;
905
+ static createInterface(): LendingPoolMockInterface {
906
+ return new utils.Interface(_abi) as LendingPoolMockInterface;
907
+ }
908
+ static connect(
909
+ address: string,
910
+ signerOrProvider: Signer | Provider
911
+ ): LendingPoolMock {
912
+ return new Contract(address, _abi, signerOrProvider) as LendingPoolMock;
913
+ }
914
+ }