impermax-sdk 1.0.0

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 (103) hide show
  1. package/.idea/impermax-sdk.iml +12 -0
  2. package/.idea/misc.xml +6 -0
  3. package/.idea/modules.xml +8 -0
  4. package/.idea/workspace.xml +642 -0
  5. package/abis/ImpermaxABI.ts +3 -0
  6. package/abis/contracts/BAllowance.json +4735 -0
  7. package/abis/contracts/BDeployer.json +1195 -0
  8. package/abis/contracts/BInterestRateModel.json +10796 -0
  9. package/abis/contracts/BSetter.json +6219 -0
  10. package/abis/contracts/BStorage.json +2613 -0
  11. package/abis/contracts/Borrowable.json +19937 -0
  12. package/abis/contracts/CDeployer.json +1104 -0
  13. package/abis/contracts/CSetter.json +5094 -0
  14. package/abis/contracts/CStorage.json +516 -0
  15. package/abis/contracts/ClaimAggregator.json +2015 -0
  16. package/abis/contracts/Collateral.json +21615 -0
  17. package/abis/contracts/ERC20.json +819 -0
  18. package/abis/contracts/Factory.json +21986 -0
  19. package/abis/contracts/FarmingPool.json +8601 -0
  20. package/abis/contracts/IBDeployer.json +351 -0
  21. package/abis/contracts/IBorrowTracker.json +346 -0
  22. package/abis/contracts/IBorrowable.json +13207 -0
  23. package/abis/contracts/ICDeployer.json +294 -0
  24. package/abis/contracts/IClaimable.json +406 -0
  25. package/abis/contracts/ICollateral.json +8952 -0
  26. package/abis/contracts/IERC20.json +2376 -0
  27. package/abis/contracts/IFactory.json +3660 -0
  28. package/abis/contracts/IFarmingPool.json +3584 -0
  29. package/abis/contracts/IImpermaxCallee.json +679 -0
  30. package/abis/contracts/IMerkleDistributor.json +1134 -0
  31. package/abis/contracts/IPoolToken.json +5343 -0
  32. package/abis/contracts/IRouter01.json +6891 -0
  33. package/abis/contracts/IRouter02.json +7283 -0
  34. package/abis/contracts/ISimpleUniswapOracle.json +1469 -0
  35. package/abis/contracts/IStakedLPToken.json +7309 -0
  36. package/abis/contracts/IStakingRewards.json +1036 -0
  37. package/abis/contracts/IUniswapV2Callee.json +403 -0
  38. package/abis/contracts/IUniswapV2ERC20.json +3155 -0
  39. package/abis/contracts/IUniswapV2Factory.json +1690 -0
  40. package/abis/contracts/IUniswapV2Pair.json +6761 -0
  41. package/abis/contracts/IWETH.json +561 -0
  42. package/abis/contracts/ImpermaxChef.json +20945 -0
  43. package/abis/contracts/ImpermaxERC20.json +12095 -0
  44. package/abis/contracts/Math.json +1966 -0
  45. package/abis/contracts/MockERC20.json +8884 -0
  46. package/abis/contracts/PoolToken.json +10784 -0
  47. package/abis/contracts/Router01.json +43963 -0
  48. package/abis/contracts/SafeMath.json +6828 -0
  49. package/abis/contracts/SimpleUniswapOracle.json +9640 -0
  50. package/abis/contracts/TransferHelper.json +4875 -0
  51. package/abis/contracts/UQ112x112.json +1201 -0
  52. package/abis/contracts/UniswapV2ERC20.json +10969 -0
  53. package/abis/contracts/UniswapV2Factory.json +5521 -0
  54. package/abis/contracts/UniswapV2Library.json +13789 -0
  55. package/abis/contracts/UniswapV2Pair.json +30782 -0
  56. package/abis/contracts/WETH9.json +6613 -0
  57. package/config/amms.ts +199 -0
  58. package/config/contracts/claim-aggregators.ts +16 -0
  59. package/config/contracts/impermax-chef.ts +16 -0
  60. package/config/contracts/imxes.ts +16 -0
  61. package/config/contracts/merkle-distributors.ts +13 -0
  62. package/config/contracts/routers.ts +36 -0
  63. package/config/contracts/simple-uniswap-oracles.ts +33 -0
  64. package/config/contracts/weths.ts +18 -0
  65. package/config/debank-ids.ts +15 -0
  66. package/config/endpoints/merkle-distributors.ts +13 -0
  67. package/config/eth.ts +32 -0
  68. package/config/factories.ts +26 -0
  69. package/config/farms.ts +119 -0
  70. package/config/general.ts +8 -0
  71. package/config/subgraphs.ts +69 -0
  72. package/config/types.ts +81 -0
  73. package/impermax-router/Account.ts +123 -0
  74. package/impermax-router/AccountBorrowable.ts +110 -0
  75. package/impermax-router/AccountCollateral.ts +40 -0
  76. package/impermax-router/AccountLendingPool.ts +231 -0
  77. package/impermax-router/AccountPoolToken.ts +76 -0
  78. package/impermax-router/Borrowable.ts +86 -0
  79. package/impermax-router/Collateral.ts +26 -0
  80. package/impermax-router/ContractsHelper.ts +64 -0
  81. package/impermax-router/ImpermaxFactory.ts +47 -0
  82. package/impermax-router/Interactions.ts +94 -0
  83. package/impermax-router/InteractionsLendingPool.ts +129 -0
  84. package/impermax-router/InteractionsPoolToken.ts +187 -0
  85. package/impermax-router/LendingPool.ts +256 -0
  86. package/impermax-router/PoolToken.ts +112 -0
  87. package/impermax-router/index.ts +49 -0
  88. package/impermax-router/interfaces.ts +233 -0
  89. package/index.ts +5 -0
  90. package/package.json +23 -0
  91. package/subgraph/Account.ts +93 -0
  92. package/subgraph/AccountLendingPool.ts +60 -0
  93. package/subgraph/AccountPoolToken.ts +60 -0
  94. package/subgraph/LendingPool.ts +179 -0
  95. package/subgraph/PoolToken.ts +381 -0
  96. package/subgraph/PriceHelper.ts +150 -0
  97. package/subgraph/SolidexHelper.ts +54 -0
  98. package/subgraph/index.ts +166 -0
  99. package/subgraph/initializer.ts +509 -0
  100. package/subgraph/query.ts +224 -0
  101. package/tsconfig.json +16 -0
  102. package/utils/ether-utils.ts +22 -0
  103. package/utils/index.ts +12 -0
@@ -0,0 +1,3660 @@
1
+ {
2
+ "contractName": "IFactory",
3
+ "abi": [
4
+ {
5
+ "anonymous": false,
6
+ "inputs": [
7
+ {
8
+ "indexed": true,
9
+ "internalType": "address",
10
+ "name": "uniswapV2Pair",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "indexed": true,
15
+ "internalType": "address",
16
+ "name": "token0",
17
+ "type": "address"
18
+ },
19
+ {
20
+ "indexed": true,
21
+ "internalType": "address",
22
+ "name": "token1",
23
+ "type": "address"
24
+ },
25
+ {
26
+ "indexed": false,
27
+ "internalType": "address",
28
+ "name": "collateral",
29
+ "type": "address"
30
+ },
31
+ {
32
+ "indexed": false,
33
+ "internalType": "address",
34
+ "name": "borrowable0",
35
+ "type": "address"
36
+ },
37
+ {
38
+ "indexed": false,
39
+ "internalType": "address",
40
+ "name": "borrowable1",
41
+ "type": "address"
42
+ },
43
+ {
44
+ "indexed": false,
45
+ "internalType": "uint256",
46
+ "name": "lendingPoolId",
47
+ "type": "uint256"
48
+ }
49
+ ],
50
+ "name": "LendingPoolInitialized",
51
+ "type": "event"
52
+ },
53
+ {
54
+ "anonymous": false,
55
+ "inputs": [
56
+ {
57
+ "indexed": false,
58
+ "internalType": "address",
59
+ "name": "oldAdmin",
60
+ "type": "address"
61
+ },
62
+ {
63
+ "indexed": false,
64
+ "internalType": "address",
65
+ "name": "newAdmin",
66
+ "type": "address"
67
+ }
68
+ ],
69
+ "name": "NewAdmin",
70
+ "type": "event"
71
+ },
72
+ {
73
+ "anonymous": false,
74
+ "inputs": [
75
+ {
76
+ "indexed": false,
77
+ "internalType": "address",
78
+ "name": "oldPendingAdmin",
79
+ "type": "address"
80
+ },
81
+ {
82
+ "indexed": false,
83
+ "internalType": "address",
84
+ "name": "newPendingAdmin",
85
+ "type": "address"
86
+ }
87
+ ],
88
+ "name": "NewPendingAdmin",
89
+ "type": "event"
90
+ },
91
+ {
92
+ "anonymous": false,
93
+ "inputs": [
94
+ {
95
+ "indexed": false,
96
+ "internalType": "address",
97
+ "name": "oldReservesManager",
98
+ "type": "address"
99
+ },
100
+ {
101
+ "indexed": false,
102
+ "internalType": "address",
103
+ "name": "newReservesManager",
104
+ "type": "address"
105
+ }
106
+ ],
107
+ "name": "NewReservesManager",
108
+ "type": "event"
109
+ },
110
+ {
111
+ "constant": true,
112
+ "inputs": [],
113
+ "name": "admin",
114
+ "outputs": [
115
+ {
116
+ "internalType": "address",
117
+ "name": "",
118
+ "type": "address"
119
+ }
120
+ ],
121
+ "payable": false,
122
+ "stateMutability": "view",
123
+ "type": "function"
124
+ },
125
+ {
126
+ "constant": true,
127
+ "inputs": [],
128
+ "name": "pendingAdmin",
129
+ "outputs": [
130
+ {
131
+ "internalType": "address",
132
+ "name": "",
133
+ "type": "address"
134
+ }
135
+ ],
136
+ "payable": false,
137
+ "stateMutability": "view",
138
+ "type": "function"
139
+ },
140
+ {
141
+ "constant": true,
142
+ "inputs": [],
143
+ "name": "reservesManager",
144
+ "outputs": [
145
+ {
146
+ "internalType": "address",
147
+ "name": "",
148
+ "type": "address"
149
+ }
150
+ ],
151
+ "payable": false,
152
+ "stateMutability": "view",
153
+ "type": "function"
154
+ },
155
+ {
156
+ "constant": true,
157
+ "inputs": [
158
+ {
159
+ "internalType": "address",
160
+ "name": "uniswapV2Pair",
161
+ "type": "address"
162
+ }
163
+ ],
164
+ "name": "getLendingPool",
165
+ "outputs": [
166
+ {
167
+ "internalType": "bool",
168
+ "name": "initialized",
169
+ "type": "bool"
170
+ },
171
+ {
172
+ "internalType": "uint24",
173
+ "name": "lendingPoolId",
174
+ "type": "uint24"
175
+ },
176
+ {
177
+ "internalType": "address",
178
+ "name": "collateral",
179
+ "type": "address"
180
+ },
181
+ {
182
+ "internalType": "address",
183
+ "name": "borrowable0",
184
+ "type": "address"
185
+ },
186
+ {
187
+ "internalType": "address",
188
+ "name": "borrowable1",
189
+ "type": "address"
190
+ }
191
+ ],
192
+ "payable": false,
193
+ "stateMutability": "view",
194
+ "type": "function"
195
+ },
196
+ {
197
+ "constant": true,
198
+ "inputs": [
199
+ {
200
+ "internalType": "uint256",
201
+ "name": "",
202
+ "type": "uint256"
203
+ }
204
+ ],
205
+ "name": "allLendingPools",
206
+ "outputs": [
207
+ {
208
+ "internalType": "address",
209
+ "name": "uniswapV2Pair",
210
+ "type": "address"
211
+ }
212
+ ],
213
+ "payable": false,
214
+ "stateMutability": "view",
215
+ "type": "function"
216
+ },
217
+ {
218
+ "constant": true,
219
+ "inputs": [],
220
+ "name": "allLendingPoolsLength",
221
+ "outputs": [
222
+ {
223
+ "internalType": "uint256",
224
+ "name": "",
225
+ "type": "uint256"
226
+ }
227
+ ],
228
+ "payable": false,
229
+ "stateMutability": "view",
230
+ "type": "function"
231
+ },
232
+ {
233
+ "constant": true,
234
+ "inputs": [],
235
+ "name": "bDeployer",
236
+ "outputs": [
237
+ {
238
+ "internalType": "address",
239
+ "name": "",
240
+ "type": "address"
241
+ }
242
+ ],
243
+ "payable": false,
244
+ "stateMutability": "view",
245
+ "type": "function"
246
+ },
247
+ {
248
+ "constant": true,
249
+ "inputs": [],
250
+ "name": "cDeployer",
251
+ "outputs": [
252
+ {
253
+ "internalType": "address",
254
+ "name": "",
255
+ "type": "address"
256
+ }
257
+ ],
258
+ "payable": false,
259
+ "stateMutability": "view",
260
+ "type": "function"
261
+ },
262
+ {
263
+ "constant": true,
264
+ "inputs": [],
265
+ "name": "uniswapV2Factory",
266
+ "outputs": [
267
+ {
268
+ "internalType": "address",
269
+ "name": "",
270
+ "type": "address"
271
+ }
272
+ ],
273
+ "payable": false,
274
+ "stateMutability": "view",
275
+ "type": "function"
276
+ },
277
+ {
278
+ "constant": true,
279
+ "inputs": [],
280
+ "name": "simpleUniswapOracle",
281
+ "outputs": [
282
+ {
283
+ "internalType": "address",
284
+ "name": "",
285
+ "type": "address"
286
+ }
287
+ ],
288
+ "payable": false,
289
+ "stateMutability": "view",
290
+ "type": "function"
291
+ },
292
+ {
293
+ "constant": false,
294
+ "inputs": [
295
+ {
296
+ "internalType": "address",
297
+ "name": "uniswapV2Pair",
298
+ "type": "address"
299
+ }
300
+ ],
301
+ "name": "createCollateral",
302
+ "outputs": [
303
+ {
304
+ "internalType": "address",
305
+ "name": "collateral",
306
+ "type": "address"
307
+ }
308
+ ],
309
+ "payable": false,
310
+ "stateMutability": "nonpayable",
311
+ "type": "function"
312
+ },
313
+ {
314
+ "constant": false,
315
+ "inputs": [
316
+ {
317
+ "internalType": "address",
318
+ "name": "uniswapV2Pair",
319
+ "type": "address"
320
+ }
321
+ ],
322
+ "name": "createBorrowable0",
323
+ "outputs": [
324
+ {
325
+ "internalType": "address",
326
+ "name": "borrowable0",
327
+ "type": "address"
328
+ }
329
+ ],
330
+ "payable": false,
331
+ "stateMutability": "nonpayable",
332
+ "type": "function"
333
+ },
334
+ {
335
+ "constant": false,
336
+ "inputs": [
337
+ {
338
+ "internalType": "address",
339
+ "name": "uniswapV2Pair",
340
+ "type": "address"
341
+ }
342
+ ],
343
+ "name": "createBorrowable1",
344
+ "outputs": [
345
+ {
346
+ "internalType": "address",
347
+ "name": "borrowable1",
348
+ "type": "address"
349
+ }
350
+ ],
351
+ "payable": false,
352
+ "stateMutability": "nonpayable",
353
+ "type": "function"
354
+ },
355
+ {
356
+ "constant": false,
357
+ "inputs": [
358
+ {
359
+ "internalType": "address",
360
+ "name": "uniswapV2Pair",
361
+ "type": "address"
362
+ }
363
+ ],
364
+ "name": "initializeLendingPool",
365
+ "outputs": [],
366
+ "payable": false,
367
+ "stateMutability": "nonpayable",
368
+ "type": "function"
369
+ },
370
+ {
371
+ "constant": false,
372
+ "inputs": [
373
+ {
374
+ "internalType": "address",
375
+ "name": "newPendingAdmin",
376
+ "type": "address"
377
+ }
378
+ ],
379
+ "name": "_setPendingAdmin",
380
+ "outputs": [],
381
+ "payable": false,
382
+ "stateMutability": "nonpayable",
383
+ "type": "function"
384
+ },
385
+ {
386
+ "constant": false,
387
+ "inputs": [],
388
+ "name": "_acceptAdmin",
389
+ "outputs": [],
390
+ "payable": false,
391
+ "stateMutability": "nonpayable",
392
+ "type": "function"
393
+ },
394
+ {
395
+ "constant": false,
396
+ "inputs": [
397
+ {
398
+ "internalType": "address",
399
+ "name": "newReservesManager",
400
+ "type": "address"
401
+ }
402
+ ],
403
+ "name": "_setReservesManager",
404
+ "outputs": [],
405
+ "payable": false,
406
+ "stateMutability": "nonpayable",
407
+ "type": "function"
408
+ }
409
+ ],
410
+ "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token0\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token1\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"collateral\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"borrowable0\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"borrowable1\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"lendingPoolId\",\"type\":\"uint256\"}],\"name\":\"LendingPoolInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"NewAdmin\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldPendingAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"NewPendingAdmin\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oldReservesManager\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newReservesManager\",\"type\":\"address\"}],\"name\":\"NewReservesManager\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[],\"name\":\"_acceptAdmin\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newPendingAdmin\",\"type\":\"address\"}],\"name\":\"_setPendingAdmin\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newReservesManager\",\"type\":\"address\"}],\"name\":\"_setReservesManager\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"allLendingPools\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"allLendingPoolsLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"bDeployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"cDeployer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"name\":\"createBorrowable0\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"borrowable0\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"name\":\"createBorrowable1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"borrowable1\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"name\":\"createCollateral\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"collateral\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"name\":\"getLendingPool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"initialized\",\"type\":\"bool\"},{\"internalType\":\"uint24\",\"name\":\"lendingPoolId\",\"type\":\"uint24\"},{\"internalType\":\"address\",\"name\":\"collateral\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"borrowable0\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"borrowable1\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"uniswapV2Pair\",\"type\":\"address\"}],\"name\":\"initializeLendingPool\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"pendingAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"reservesManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"simpleUniswapOracle\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"uniswapV2Factory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/imx-univ2-core/interfaces/IFactory.sol\":\"IFactory\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/imx-univ2-core/interfaces/IFactory.sol\":{\"keccak256\":\"0xc800bcea5a98412b8d52a11289f6e174cc5ecd68c3bf4ea949fe7fffac78daf0\",\"urls\":[\"bzz-raw://6985cfcce7192c6943ee2c70c0458636a50460239c0e3fae8e7a2ffc6d7fb950\",\"dweb:/ipfs/QmdTxGx9dq7YeKk7AJ2XQcroHsRUCaYTkQAetpGi1mK643\"]}},\"version\":1}",
411
+ "bytecode": "0x",
412
+ "deployedBytecode": "0x",
413
+ "sourceMap": "",
414
+ "deployedSourceMap": "",
415
+ "source": "pragma solidity >=0.5.0;\r\n\r\ninterface IFactory {\r\n\tevent LendingPoolInitialized(address indexed uniswapV2Pair, address indexed token0, address indexed token1,\r\n\t\taddress collateral, address borrowable0, address borrowable1, uint lendingPoolId);\r\n\tevent NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin);\r\n\tevent NewAdmin(address oldAdmin, address newAdmin);\r\n\tevent NewReservesManager(address oldReservesManager, address newReservesManager);\r\n\t\r\n\tfunction admin() external view returns (address);\r\n\tfunction pendingAdmin() external view returns (address);\r\n\tfunction reservesManager() external view returns (address);\r\n\r\n\tfunction getLendingPool(address uniswapV2Pair) external view returns (\r\n\t\tbool initialized, \r\n\t\tuint24 lendingPoolId, \r\n\t\taddress collateral, \r\n\t\taddress borrowable0, \r\n\t\taddress borrowable1\r\n\t);\r\n\tfunction allLendingPools(uint) external view returns (address uniswapV2Pair);\r\n\tfunction allLendingPoolsLength() external view returns (uint);\r\n\t\r\n\tfunction bDeployer() external view returns (address);\r\n\tfunction cDeployer() external view returns (address);\r\n\tfunction uniswapV2Factory() external view returns (address);\r\n\tfunction simpleUniswapOracle() external view returns (address);\r\n\r\n\tfunction createCollateral(address uniswapV2Pair) external returns (address collateral);\r\n\tfunction createBorrowable0(address uniswapV2Pair) external returns (address borrowable0);\r\n\tfunction createBorrowable1(address uniswapV2Pair) external returns (address borrowable1);\r\n\tfunction initializeLendingPool(address uniswapV2Pair) external;\r\n\r\n\tfunction _setPendingAdmin(address newPendingAdmin) external;\r\n\tfunction _acceptAdmin() external;\r\n\tfunction _setReservesManager(address newReservesManager) external;\r\n}\r\n",
416
+ "sourcePath": "C:\\Users\\simor\\Desktop\\impermax-x-uniswapv2-periphery\\test\\Contracts\\imx-univ2-core\\interfaces\\IFactory.sol",
417
+ "ast": {
418
+ "absolutePath": "/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/imx-univ2-core/interfaces/IFactory.sol",
419
+ "exportedSymbols": {
420
+ "IFactory": [
421
+ 5985
422
+ ]
423
+ },
424
+ "id": 5986,
425
+ "nodeType": "SourceUnit",
426
+ "nodes": [
427
+ {
428
+ "id": 5849,
429
+ "literals": [
430
+ "solidity",
431
+ ">=",
432
+ "0.5",
433
+ ".0"
434
+ ],
435
+ "nodeType": "PragmaDirective",
436
+ "src": "0:24:23"
437
+ },
438
+ {
439
+ "baseContracts": [],
440
+ "contractDependencies": [],
441
+ "contractKind": "interface",
442
+ "documentation": null,
443
+ "fullyImplemented": false,
444
+ "id": 5985,
445
+ "linearizedBaseContracts": [
446
+ 5985
447
+ ],
448
+ "name": "IFactory",
449
+ "nodeType": "ContractDefinition",
450
+ "nodes": [
451
+ {
452
+ "anonymous": false,
453
+ "documentation": null,
454
+ "id": 5865,
455
+ "name": "LendingPoolInitialized",
456
+ "nodeType": "EventDefinition",
457
+ "parameters": {
458
+ "id": 5864,
459
+ "nodeType": "ParameterList",
460
+ "parameters": [
461
+ {
462
+ "constant": false,
463
+ "id": 5851,
464
+ "indexed": true,
465
+ "name": "uniswapV2Pair",
466
+ "nodeType": "VariableDeclaration",
467
+ "scope": 5865,
468
+ "src": "80:29:23",
469
+ "stateVariable": false,
470
+ "storageLocation": "default",
471
+ "typeDescriptions": {
472
+ "typeIdentifier": "t_address",
473
+ "typeString": "address"
474
+ },
475
+ "typeName": {
476
+ "id": 5850,
477
+ "name": "address",
478
+ "nodeType": "ElementaryTypeName",
479
+ "src": "80:7:23",
480
+ "stateMutability": "nonpayable",
481
+ "typeDescriptions": {
482
+ "typeIdentifier": "t_address",
483
+ "typeString": "address"
484
+ }
485
+ },
486
+ "value": null,
487
+ "visibility": "internal"
488
+ },
489
+ {
490
+ "constant": false,
491
+ "id": 5853,
492
+ "indexed": true,
493
+ "name": "token0",
494
+ "nodeType": "VariableDeclaration",
495
+ "scope": 5865,
496
+ "src": "111:22:23",
497
+ "stateVariable": false,
498
+ "storageLocation": "default",
499
+ "typeDescriptions": {
500
+ "typeIdentifier": "t_address",
501
+ "typeString": "address"
502
+ },
503
+ "typeName": {
504
+ "id": 5852,
505
+ "name": "address",
506
+ "nodeType": "ElementaryTypeName",
507
+ "src": "111:7:23",
508
+ "stateMutability": "nonpayable",
509
+ "typeDescriptions": {
510
+ "typeIdentifier": "t_address",
511
+ "typeString": "address"
512
+ }
513
+ },
514
+ "value": null,
515
+ "visibility": "internal"
516
+ },
517
+ {
518
+ "constant": false,
519
+ "id": 5855,
520
+ "indexed": true,
521
+ "name": "token1",
522
+ "nodeType": "VariableDeclaration",
523
+ "scope": 5865,
524
+ "src": "135:22:23",
525
+ "stateVariable": false,
526
+ "storageLocation": "default",
527
+ "typeDescriptions": {
528
+ "typeIdentifier": "t_address",
529
+ "typeString": "address"
530
+ },
531
+ "typeName": {
532
+ "id": 5854,
533
+ "name": "address",
534
+ "nodeType": "ElementaryTypeName",
535
+ "src": "135:7:23",
536
+ "stateMutability": "nonpayable",
537
+ "typeDescriptions": {
538
+ "typeIdentifier": "t_address",
539
+ "typeString": "address"
540
+ }
541
+ },
542
+ "value": null,
543
+ "visibility": "internal"
544
+ },
545
+ {
546
+ "constant": false,
547
+ "id": 5857,
548
+ "indexed": false,
549
+ "name": "collateral",
550
+ "nodeType": "VariableDeclaration",
551
+ "scope": 5865,
552
+ "src": "162:18:23",
553
+ "stateVariable": false,
554
+ "storageLocation": "default",
555
+ "typeDescriptions": {
556
+ "typeIdentifier": "t_address",
557
+ "typeString": "address"
558
+ },
559
+ "typeName": {
560
+ "id": 5856,
561
+ "name": "address",
562
+ "nodeType": "ElementaryTypeName",
563
+ "src": "162:7:23",
564
+ "stateMutability": "nonpayable",
565
+ "typeDescriptions": {
566
+ "typeIdentifier": "t_address",
567
+ "typeString": "address"
568
+ }
569
+ },
570
+ "value": null,
571
+ "visibility": "internal"
572
+ },
573
+ {
574
+ "constant": false,
575
+ "id": 5859,
576
+ "indexed": false,
577
+ "name": "borrowable0",
578
+ "nodeType": "VariableDeclaration",
579
+ "scope": 5865,
580
+ "src": "182:19:23",
581
+ "stateVariable": false,
582
+ "storageLocation": "default",
583
+ "typeDescriptions": {
584
+ "typeIdentifier": "t_address",
585
+ "typeString": "address"
586
+ },
587
+ "typeName": {
588
+ "id": 5858,
589
+ "name": "address",
590
+ "nodeType": "ElementaryTypeName",
591
+ "src": "182:7:23",
592
+ "stateMutability": "nonpayable",
593
+ "typeDescriptions": {
594
+ "typeIdentifier": "t_address",
595
+ "typeString": "address"
596
+ }
597
+ },
598
+ "value": null,
599
+ "visibility": "internal"
600
+ },
601
+ {
602
+ "constant": false,
603
+ "id": 5861,
604
+ "indexed": false,
605
+ "name": "borrowable1",
606
+ "nodeType": "VariableDeclaration",
607
+ "scope": 5865,
608
+ "src": "203:19:23",
609
+ "stateVariable": false,
610
+ "storageLocation": "default",
611
+ "typeDescriptions": {
612
+ "typeIdentifier": "t_address",
613
+ "typeString": "address"
614
+ },
615
+ "typeName": {
616
+ "id": 5860,
617
+ "name": "address",
618
+ "nodeType": "ElementaryTypeName",
619
+ "src": "203:7:23",
620
+ "stateMutability": "nonpayable",
621
+ "typeDescriptions": {
622
+ "typeIdentifier": "t_address",
623
+ "typeString": "address"
624
+ }
625
+ },
626
+ "value": null,
627
+ "visibility": "internal"
628
+ },
629
+ {
630
+ "constant": false,
631
+ "id": 5863,
632
+ "indexed": false,
633
+ "name": "lendingPoolId",
634
+ "nodeType": "VariableDeclaration",
635
+ "scope": 5865,
636
+ "src": "224:18:23",
637
+ "stateVariable": false,
638
+ "storageLocation": "default",
639
+ "typeDescriptions": {
640
+ "typeIdentifier": "t_uint256",
641
+ "typeString": "uint256"
642
+ },
643
+ "typeName": {
644
+ "id": 5862,
645
+ "name": "uint",
646
+ "nodeType": "ElementaryTypeName",
647
+ "src": "224:4:23",
648
+ "typeDescriptions": {
649
+ "typeIdentifier": "t_uint256",
650
+ "typeString": "uint256"
651
+ }
652
+ },
653
+ "value": null,
654
+ "visibility": "internal"
655
+ }
656
+ ],
657
+ "src": "79:164:23"
658
+ },
659
+ "src": "51:193:23"
660
+ },
661
+ {
662
+ "anonymous": false,
663
+ "documentation": null,
664
+ "id": 5871,
665
+ "name": "NewPendingAdmin",
666
+ "nodeType": "EventDefinition",
667
+ "parameters": {
668
+ "id": 5870,
669
+ "nodeType": "ParameterList",
670
+ "parameters": [
671
+ {
672
+ "constant": false,
673
+ "id": 5867,
674
+ "indexed": false,
675
+ "name": "oldPendingAdmin",
676
+ "nodeType": "VariableDeclaration",
677
+ "scope": 5871,
678
+ "src": "269:23:23",
679
+ "stateVariable": false,
680
+ "storageLocation": "default",
681
+ "typeDescriptions": {
682
+ "typeIdentifier": "t_address",
683
+ "typeString": "address"
684
+ },
685
+ "typeName": {
686
+ "id": 5866,
687
+ "name": "address",
688
+ "nodeType": "ElementaryTypeName",
689
+ "src": "269:7:23",
690
+ "stateMutability": "nonpayable",
691
+ "typeDescriptions": {
692
+ "typeIdentifier": "t_address",
693
+ "typeString": "address"
694
+ }
695
+ },
696
+ "value": null,
697
+ "visibility": "internal"
698
+ },
699
+ {
700
+ "constant": false,
701
+ "id": 5869,
702
+ "indexed": false,
703
+ "name": "newPendingAdmin",
704
+ "nodeType": "VariableDeclaration",
705
+ "scope": 5871,
706
+ "src": "294:23:23",
707
+ "stateVariable": false,
708
+ "storageLocation": "default",
709
+ "typeDescriptions": {
710
+ "typeIdentifier": "t_address",
711
+ "typeString": "address"
712
+ },
713
+ "typeName": {
714
+ "id": 5868,
715
+ "name": "address",
716
+ "nodeType": "ElementaryTypeName",
717
+ "src": "294:7:23",
718
+ "stateMutability": "nonpayable",
719
+ "typeDescriptions": {
720
+ "typeIdentifier": "t_address",
721
+ "typeString": "address"
722
+ }
723
+ },
724
+ "value": null,
725
+ "visibility": "internal"
726
+ }
727
+ ],
728
+ "src": "268:50:23"
729
+ },
730
+ "src": "247:72:23"
731
+ },
732
+ {
733
+ "anonymous": false,
734
+ "documentation": null,
735
+ "id": 5877,
736
+ "name": "NewAdmin",
737
+ "nodeType": "EventDefinition",
738
+ "parameters": {
739
+ "id": 5876,
740
+ "nodeType": "ParameterList",
741
+ "parameters": [
742
+ {
743
+ "constant": false,
744
+ "id": 5873,
745
+ "indexed": false,
746
+ "name": "oldAdmin",
747
+ "nodeType": "VariableDeclaration",
748
+ "scope": 5877,
749
+ "src": "337:16:23",
750
+ "stateVariable": false,
751
+ "storageLocation": "default",
752
+ "typeDescriptions": {
753
+ "typeIdentifier": "t_address",
754
+ "typeString": "address"
755
+ },
756
+ "typeName": {
757
+ "id": 5872,
758
+ "name": "address",
759
+ "nodeType": "ElementaryTypeName",
760
+ "src": "337:7:23",
761
+ "stateMutability": "nonpayable",
762
+ "typeDescriptions": {
763
+ "typeIdentifier": "t_address",
764
+ "typeString": "address"
765
+ }
766
+ },
767
+ "value": null,
768
+ "visibility": "internal"
769
+ },
770
+ {
771
+ "constant": false,
772
+ "id": 5875,
773
+ "indexed": false,
774
+ "name": "newAdmin",
775
+ "nodeType": "VariableDeclaration",
776
+ "scope": 5877,
777
+ "src": "355:16:23",
778
+ "stateVariable": false,
779
+ "storageLocation": "default",
780
+ "typeDescriptions": {
781
+ "typeIdentifier": "t_address",
782
+ "typeString": "address"
783
+ },
784
+ "typeName": {
785
+ "id": 5874,
786
+ "name": "address",
787
+ "nodeType": "ElementaryTypeName",
788
+ "src": "355:7:23",
789
+ "stateMutability": "nonpayable",
790
+ "typeDescriptions": {
791
+ "typeIdentifier": "t_address",
792
+ "typeString": "address"
793
+ }
794
+ },
795
+ "value": null,
796
+ "visibility": "internal"
797
+ }
798
+ ],
799
+ "src": "336:36:23"
800
+ },
801
+ "src": "322:51:23"
802
+ },
803
+ {
804
+ "anonymous": false,
805
+ "documentation": null,
806
+ "id": 5883,
807
+ "name": "NewReservesManager",
808
+ "nodeType": "EventDefinition",
809
+ "parameters": {
810
+ "id": 5882,
811
+ "nodeType": "ParameterList",
812
+ "parameters": [
813
+ {
814
+ "constant": false,
815
+ "id": 5879,
816
+ "indexed": false,
817
+ "name": "oldReservesManager",
818
+ "nodeType": "VariableDeclaration",
819
+ "scope": 5883,
820
+ "src": "401:26:23",
821
+ "stateVariable": false,
822
+ "storageLocation": "default",
823
+ "typeDescriptions": {
824
+ "typeIdentifier": "t_address",
825
+ "typeString": "address"
826
+ },
827
+ "typeName": {
828
+ "id": 5878,
829
+ "name": "address",
830
+ "nodeType": "ElementaryTypeName",
831
+ "src": "401:7:23",
832
+ "stateMutability": "nonpayable",
833
+ "typeDescriptions": {
834
+ "typeIdentifier": "t_address",
835
+ "typeString": "address"
836
+ }
837
+ },
838
+ "value": null,
839
+ "visibility": "internal"
840
+ },
841
+ {
842
+ "constant": false,
843
+ "id": 5881,
844
+ "indexed": false,
845
+ "name": "newReservesManager",
846
+ "nodeType": "VariableDeclaration",
847
+ "scope": 5883,
848
+ "src": "429:26:23",
849
+ "stateVariable": false,
850
+ "storageLocation": "default",
851
+ "typeDescriptions": {
852
+ "typeIdentifier": "t_address",
853
+ "typeString": "address"
854
+ },
855
+ "typeName": {
856
+ "id": 5880,
857
+ "name": "address",
858
+ "nodeType": "ElementaryTypeName",
859
+ "src": "429:7:23",
860
+ "stateMutability": "nonpayable",
861
+ "typeDescriptions": {
862
+ "typeIdentifier": "t_address",
863
+ "typeString": "address"
864
+ }
865
+ },
866
+ "value": null,
867
+ "visibility": "internal"
868
+ }
869
+ ],
870
+ "src": "400:56:23"
871
+ },
872
+ "src": "376:81:23"
873
+ },
874
+ {
875
+ "body": null,
876
+ "documentation": null,
877
+ "id": 5888,
878
+ "implemented": false,
879
+ "kind": "function",
880
+ "modifiers": [],
881
+ "name": "admin",
882
+ "nodeType": "FunctionDefinition",
883
+ "parameters": {
884
+ "id": 5884,
885
+ "nodeType": "ParameterList",
886
+ "parameters": [],
887
+ "src": "477:2:23"
888
+ },
889
+ "returnParameters": {
890
+ "id": 5887,
891
+ "nodeType": "ParameterList",
892
+ "parameters": [
893
+ {
894
+ "constant": false,
895
+ "id": 5886,
896
+ "name": "",
897
+ "nodeType": "VariableDeclaration",
898
+ "scope": 5888,
899
+ "src": "503:7:23",
900
+ "stateVariable": false,
901
+ "storageLocation": "default",
902
+ "typeDescriptions": {
903
+ "typeIdentifier": "t_address",
904
+ "typeString": "address"
905
+ },
906
+ "typeName": {
907
+ "id": 5885,
908
+ "name": "address",
909
+ "nodeType": "ElementaryTypeName",
910
+ "src": "503:7:23",
911
+ "stateMutability": "nonpayable",
912
+ "typeDescriptions": {
913
+ "typeIdentifier": "t_address",
914
+ "typeString": "address"
915
+ }
916
+ },
917
+ "value": null,
918
+ "visibility": "internal"
919
+ }
920
+ ],
921
+ "src": "502:9:23"
922
+ },
923
+ "scope": 5985,
924
+ "src": "463:49:23",
925
+ "stateMutability": "view",
926
+ "superFunction": null,
927
+ "visibility": "external"
928
+ },
929
+ {
930
+ "body": null,
931
+ "documentation": null,
932
+ "id": 5893,
933
+ "implemented": false,
934
+ "kind": "function",
935
+ "modifiers": [],
936
+ "name": "pendingAdmin",
937
+ "nodeType": "FunctionDefinition",
938
+ "parameters": {
939
+ "id": 5889,
940
+ "nodeType": "ParameterList",
941
+ "parameters": [],
942
+ "src": "536:2:23"
943
+ },
944
+ "returnParameters": {
945
+ "id": 5892,
946
+ "nodeType": "ParameterList",
947
+ "parameters": [
948
+ {
949
+ "constant": false,
950
+ "id": 5891,
951
+ "name": "",
952
+ "nodeType": "VariableDeclaration",
953
+ "scope": 5893,
954
+ "src": "562:7:23",
955
+ "stateVariable": false,
956
+ "storageLocation": "default",
957
+ "typeDescriptions": {
958
+ "typeIdentifier": "t_address",
959
+ "typeString": "address"
960
+ },
961
+ "typeName": {
962
+ "id": 5890,
963
+ "name": "address",
964
+ "nodeType": "ElementaryTypeName",
965
+ "src": "562:7:23",
966
+ "stateMutability": "nonpayable",
967
+ "typeDescriptions": {
968
+ "typeIdentifier": "t_address",
969
+ "typeString": "address"
970
+ }
971
+ },
972
+ "value": null,
973
+ "visibility": "internal"
974
+ }
975
+ ],
976
+ "src": "561:9:23"
977
+ },
978
+ "scope": 5985,
979
+ "src": "515:56:23",
980
+ "stateMutability": "view",
981
+ "superFunction": null,
982
+ "visibility": "external"
983
+ },
984
+ {
985
+ "body": null,
986
+ "documentation": null,
987
+ "id": 5898,
988
+ "implemented": false,
989
+ "kind": "function",
990
+ "modifiers": [],
991
+ "name": "reservesManager",
992
+ "nodeType": "FunctionDefinition",
993
+ "parameters": {
994
+ "id": 5894,
995
+ "nodeType": "ParameterList",
996
+ "parameters": [],
997
+ "src": "598:2:23"
998
+ },
999
+ "returnParameters": {
1000
+ "id": 5897,
1001
+ "nodeType": "ParameterList",
1002
+ "parameters": [
1003
+ {
1004
+ "constant": false,
1005
+ "id": 5896,
1006
+ "name": "",
1007
+ "nodeType": "VariableDeclaration",
1008
+ "scope": 5898,
1009
+ "src": "624:7:23",
1010
+ "stateVariable": false,
1011
+ "storageLocation": "default",
1012
+ "typeDescriptions": {
1013
+ "typeIdentifier": "t_address",
1014
+ "typeString": "address"
1015
+ },
1016
+ "typeName": {
1017
+ "id": 5895,
1018
+ "name": "address",
1019
+ "nodeType": "ElementaryTypeName",
1020
+ "src": "624:7:23",
1021
+ "stateMutability": "nonpayable",
1022
+ "typeDescriptions": {
1023
+ "typeIdentifier": "t_address",
1024
+ "typeString": "address"
1025
+ }
1026
+ },
1027
+ "value": null,
1028
+ "visibility": "internal"
1029
+ }
1030
+ ],
1031
+ "src": "623:9:23"
1032
+ },
1033
+ "scope": 5985,
1034
+ "src": "574:59:23",
1035
+ "stateMutability": "view",
1036
+ "superFunction": null,
1037
+ "visibility": "external"
1038
+ },
1039
+ {
1040
+ "body": null,
1041
+ "documentation": null,
1042
+ "id": 5913,
1043
+ "implemented": false,
1044
+ "kind": "function",
1045
+ "modifiers": [],
1046
+ "name": "getLendingPool",
1047
+ "nodeType": "FunctionDefinition",
1048
+ "parameters": {
1049
+ "id": 5901,
1050
+ "nodeType": "ParameterList",
1051
+ "parameters": [
1052
+ {
1053
+ "constant": false,
1054
+ "id": 5900,
1055
+ "name": "uniswapV2Pair",
1056
+ "nodeType": "VariableDeclaration",
1057
+ "scope": 5913,
1058
+ "src": "662:21:23",
1059
+ "stateVariable": false,
1060
+ "storageLocation": "default",
1061
+ "typeDescriptions": {
1062
+ "typeIdentifier": "t_address",
1063
+ "typeString": "address"
1064
+ },
1065
+ "typeName": {
1066
+ "id": 5899,
1067
+ "name": "address",
1068
+ "nodeType": "ElementaryTypeName",
1069
+ "src": "662:7:23",
1070
+ "stateMutability": "nonpayable",
1071
+ "typeDescriptions": {
1072
+ "typeIdentifier": "t_address",
1073
+ "typeString": "address"
1074
+ }
1075
+ },
1076
+ "value": null,
1077
+ "visibility": "internal"
1078
+ }
1079
+ ],
1080
+ "src": "661:23:23"
1081
+ },
1082
+ "returnParameters": {
1083
+ "id": 5912,
1084
+ "nodeType": "ParameterList",
1085
+ "parameters": [
1086
+ {
1087
+ "constant": false,
1088
+ "id": 5903,
1089
+ "name": "initialized",
1090
+ "nodeType": "VariableDeclaration",
1091
+ "scope": 5913,
1092
+ "src": "712:16:23",
1093
+ "stateVariable": false,
1094
+ "storageLocation": "default",
1095
+ "typeDescriptions": {
1096
+ "typeIdentifier": "t_bool",
1097
+ "typeString": "bool"
1098
+ },
1099
+ "typeName": {
1100
+ "id": 5902,
1101
+ "name": "bool",
1102
+ "nodeType": "ElementaryTypeName",
1103
+ "src": "712:4:23",
1104
+ "typeDescriptions": {
1105
+ "typeIdentifier": "t_bool",
1106
+ "typeString": "bool"
1107
+ }
1108
+ },
1109
+ "value": null,
1110
+ "visibility": "internal"
1111
+ },
1112
+ {
1113
+ "constant": false,
1114
+ "id": 5905,
1115
+ "name": "lendingPoolId",
1116
+ "nodeType": "VariableDeclaration",
1117
+ "scope": 5913,
1118
+ "src": "734:20:23",
1119
+ "stateVariable": false,
1120
+ "storageLocation": "default",
1121
+ "typeDescriptions": {
1122
+ "typeIdentifier": "t_uint24",
1123
+ "typeString": "uint24"
1124
+ },
1125
+ "typeName": {
1126
+ "id": 5904,
1127
+ "name": "uint24",
1128
+ "nodeType": "ElementaryTypeName",
1129
+ "src": "734:6:23",
1130
+ "typeDescriptions": {
1131
+ "typeIdentifier": "t_uint24",
1132
+ "typeString": "uint24"
1133
+ }
1134
+ },
1135
+ "value": null,
1136
+ "visibility": "internal"
1137
+ },
1138
+ {
1139
+ "constant": false,
1140
+ "id": 5907,
1141
+ "name": "collateral",
1142
+ "nodeType": "VariableDeclaration",
1143
+ "scope": 5913,
1144
+ "src": "760:18:23",
1145
+ "stateVariable": false,
1146
+ "storageLocation": "default",
1147
+ "typeDescriptions": {
1148
+ "typeIdentifier": "t_address",
1149
+ "typeString": "address"
1150
+ },
1151
+ "typeName": {
1152
+ "id": 5906,
1153
+ "name": "address",
1154
+ "nodeType": "ElementaryTypeName",
1155
+ "src": "760:7:23",
1156
+ "stateMutability": "nonpayable",
1157
+ "typeDescriptions": {
1158
+ "typeIdentifier": "t_address",
1159
+ "typeString": "address"
1160
+ }
1161
+ },
1162
+ "value": null,
1163
+ "visibility": "internal"
1164
+ },
1165
+ {
1166
+ "constant": false,
1167
+ "id": 5909,
1168
+ "name": "borrowable0",
1169
+ "nodeType": "VariableDeclaration",
1170
+ "scope": 5913,
1171
+ "src": "784:19:23",
1172
+ "stateVariable": false,
1173
+ "storageLocation": "default",
1174
+ "typeDescriptions": {
1175
+ "typeIdentifier": "t_address",
1176
+ "typeString": "address"
1177
+ },
1178
+ "typeName": {
1179
+ "id": 5908,
1180
+ "name": "address",
1181
+ "nodeType": "ElementaryTypeName",
1182
+ "src": "784:7:23",
1183
+ "stateMutability": "nonpayable",
1184
+ "typeDescriptions": {
1185
+ "typeIdentifier": "t_address",
1186
+ "typeString": "address"
1187
+ }
1188
+ },
1189
+ "value": null,
1190
+ "visibility": "internal"
1191
+ },
1192
+ {
1193
+ "constant": false,
1194
+ "id": 5911,
1195
+ "name": "borrowable1",
1196
+ "nodeType": "VariableDeclaration",
1197
+ "scope": 5913,
1198
+ "src": "809:19:23",
1199
+ "stateVariable": false,
1200
+ "storageLocation": "default",
1201
+ "typeDescriptions": {
1202
+ "typeIdentifier": "t_address",
1203
+ "typeString": "address"
1204
+ },
1205
+ "typeName": {
1206
+ "id": 5910,
1207
+ "name": "address",
1208
+ "nodeType": "ElementaryTypeName",
1209
+ "src": "809:7:23",
1210
+ "stateMutability": "nonpayable",
1211
+ "typeDescriptions": {
1212
+ "typeIdentifier": "t_address",
1213
+ "typeString": "address"
1214
+ }
1215
+ },
1216
+ "value": null,
1217
+ "visibility": "internal"
1218
+ }
1219
+ ],
1220
+ "src": "707:125:23"
1221
+ },
1222
+ "scope": 5985,
1223
+ "src": "638:195:23",
1224
+ "stateMutability": "view",
1225
+ "superFunction": null,
1226
+ "visibility": "external"
1227
+ },
1228
+ {
1229
+ "body": null,
1230
+ "documentation": null,
1231
+ "id": 5920,
1232
+ "implemented": false,
1233
+ "kind": "function",
1234
+ "modifiers": [],
1235
+ "name": "allLendingPools",
1236
+ "nodeType": "FunctionDefinition",
1237
+ "parameters": {
1238
+ "id": 5916,
1239
+ "nodeType": "ParameterList",
1240
+ "parameters": [
1241
+ {
1242
+ "constant": false,
1243
+ "id": 5915,
1244
+ "name": "",
1245
+ "nodeType": "VariableDeclaration",
1246
+ "scope": 5920,
1247
+ "src": "861:4:23",
1248
+ "stateVariable": false,
1249
+ "storageLocation": "default",
1250
+ "typeDescriptions": {
1251
+ "typeIdentifier": "t_uint256",
1252
+ "typeString": "uint256"
1253
+ },
1254
+ "typeName": {
1255
+ "id": 5914,
1256
+ "name": "uint",
1257
+ "nodeType": "ElementaryTypeName",
1258
+ "src": "861:4:23",
1259
+ "typeDescriptions": {
1260
+ "typeIdentifier": "t_uint256",
1261
+ "typeString": "uint256"
1262
+ }
1263
+ },
1264
+ "value": null,
1265
+ "visibility": "internal"
1266
+ }
1267
+ ],
1268
+ "src": "860:6:23"
1269
+ },
1270
+ "returnParameters": {
1271
+ "id": 5919,
1272
+ "nodeType": "ParameterList",
1273
+ "parameters": [
1274
+ {
1275
+ "constant": false,
1276
+ "id": 5918,
1277
+ "name": "uniswapV2Pair",
1278
+ "nodeType": "VariableDeclaration",
1279
+ "scope": 5920,
1280
+ "src": "890:21:23",
1281
+ "stateVariable": false,
1282
+ "storageLocation": "default",
1283
+ "typeDescriptions": {
1284
+ "typeIdentifier": "t_address",
1285
+ "typeString": "address"
1286
+ },
1287
+ "typeName": {
1288
+ "id": 5917,
1289
+ "name": "address",
1290
+ "nodeType": "ElementaryTypeName",
1291
+ "src": "890:7:23",
1292
+ "stateMutability": "nonpayable",
1293
+ "typeDescriptions": {
1294
+ "typeIdentifier": "t_address",
1295
+ "typeString": "address"
1296
+ }
1297
+ },
1298
+ "value": null,
1299
+ "visibility": "internal"
1300
+ }
1301
+ ],
1302
+ "src": "889:23:23"
1303
+ },
1304
+ "scope": 5985,
1305
+ "src": "836:77:23",
1306
+ "stateMutability": "view",
1307
+ "superFunction": null,
1308
+ "visibility": "external"
1309
+ },
1310
+ {
1311
+ "body": null,
1312
+ "documentation": null,
1313
+ "id": 5925,
1314
+ "implemented": false,
1315
+ "kind": "function",
1316
+ "modifiers": [],
1317
+ "name": "allLendingPoolsLength",
1318
+ "nodeType": "FunctionDefinition",
1319
+ "parameters": {
1320
+ "id": 5921,
1321
+ "nodeType": "ParameterList",
1322
+ "parameters": [],
1323
+ "src": "946:2:23"
1324
+ },
1325
+ "returnParameters": {
1326
+ "id": 5924,
1327
+ "nodeType": "ParameterList",
1328
+ "parameters": [
1329
+ {
1330
+ "constant": false,
1331
+ "id": 5923,
1332
+ "name": "",
1333
+ "nodeType": "VariableDeclaration",
1334
+ "scope": 5925,
1335
+ "src": "972:4:23",
1336
+ "stateVariable": false,
1337
+ "storageLocation": "default",
1338
+ "typeDescriptions": {
1339
+ "typeIdentifier": "t_uint256",
1340
+ "typeString": "uint256"
1341
+ },
1342
+ "typeName": {
1343
+ "id": 5922,
1344
+ "name": "uint",
1345
+ "nodeType": "ElementaryTypeName",
1346
+ "src": "972:4:23",
1347
+ "typeDescriptions": {
1348
+ "typeIdentifier": "t_uint256",
1349
+ "typeString": "uint256"
1350
+ }
1351
+ },
1352
+ "value": null,
1353
+ "visibility": "internal"
1354
+ }
1355
+ ],
1356
+ "src": "971:6:23"
1357
+ },
1358
+ "scope": 5985,
1359
+ "src": "916:62:23",
1360
+ "stateMutability": "view",
1361
+ "superFunction": null,
1362
+ "visibility": "external"
1363
+ },
1364
+ {
1365
+ "body": null,
1366
+ "documentation": null,
1367
+ "id": 5930,
1368
+ "implemented": false,
1369
+ "kind": "function",
1370
+ "modifiers": [],
1371
+ "name": "bDeployer",
1372
+ "nodeType": "FunctionDefinition",
1373
+ "parameters": {
1374
+ "id": 5926,
1375
+ "nodeType": "ParameterList",
1376
+ "parameters": [],
1377
+ "src": "1002:2:23"
1378
+ },
1379
+ "returnParameters": {
1380
+ "id": 5929,
1381
+ "nodeType": "ParameterList",
1382
+ "parameters": [
1383
+ {
1384
+ "constant": false,
1385
+ "id": 5928,
1386
+ "name": "",
1387
+ "nodeType": "VariableDeclaration",
1388
+ "scope": 5930,
1389
+ "src": "1028:7:23",
1390
+ "stateVariable": false,
1391
+ "storageLocation": "default",
1392
+ "typeDescriptions": {
1393
+ "typeIdentifier": "t_address",
1394
+ "typeString": "address"
1395
+ },
1396
+ "typeName": {
1397
+ "id": 5927,
1398
+ "name": "address",
1399
+ "nodeType": "ElementaryTypeName",
1400
+ "src": "1028:7:23",
1401
+ "stateMutability": "nonpayable",
1402
+ "typeDescriptions": {
1403
+ "typeIdentifier": "t_address",
1404
+ "typeString": "address"
1405
+ }
1406
+ },
1407
+ "value": null,
1408
+ "visibility": "internal"
1409
+ }
1410
+ ],
1411
+ "src": "1027:9:23"
1412
+ },
1413
+ "scope": 5985,
1414
+ "src": "984:53:23",
1415
+ "stateMutability": "view",
1416
+ "superFunction": null,
1417
+ "visibility": "external"
1418
+ },
1419
+ {
1420
+ "body": null,
1421
+ "documentation": null,
1422
+ "id": 5935,
1423
+ "implemented": false,
1424
+ "kind": "function",
1425
+ "modifiers": [],
1426
+ "name": "cDeployer",
1427
+ "nodeType": "FunctionDefinition",
1428
+ "parameters": {
1429
+ "id": 5931,
1430
+ "nodeType": "ParameterList",
1431
+ "parameters": [],
1432
+ "src": "1058:2:23"
1433
+ },
1434
+ "returnParameters": {
1435
+ "id": 5934,
1436
+ "nodeType": "ParameterList",
1437
+ "parameters": [
1438
+ {
1439
+ "constant": false,
1440
+ "id": 5933,
1441
+ "name": "",
1442
+ "nodeType": "VariableDeclaration",
1443
+ "scope": 5935,
1444
+ "src": "1084:7:23",
1445
+ "stateVariable": false,
1446
+ "storageLocation": "default",
1447
+ "typeDescriptions": {
1448
+ "typeIdentifier": "t_address",
1449
+ "typeString": "address"
1450
+ },
1451
+ "typeName": {
1452
+ "id": 5932,
1453
+ "name": "address",
1454
+ "nodeType": "ElementaryTypeName",
1455
+ "src": "1084:7:23",
1456
+ "stateMutability": "nonpayable",
1457
+ "typeDescriptions": {
1458
+ "typeIdentifier": "t_address",
1459
+ "typeString": "address"
1460
+ }
1461
+ },
1462
+ "value": null,
1463
+ "visibility": "internal"
1464
+ }
1465
+ ],
1466
+ "src": "1083:9:23"
1467
+ },
1468
+ "scope": 5985,
1469
+ "src": "1040:53:23",
1470
+ "stateMutability": "view",
1471
+ "superFunction": null,
1472
+ "visibility": "external"
1473
+ },
1474
+ {
1475
+ "body": null,
1476
+ "documentation": null,
1477
+ "id": 5940,
1478
+ "implemented": false,
1479
+ "kind": "function",
1480
+ "modifiers": [],
1481
+ "name": "uniswapV2Factory",
1482
+ "nodeType": "FunctionDefinition",
1483
+ "parameters": {
1484
+ "id": 5936,
1485
+ "nodeType": "ParameterList",
1486
+ "parameters": [],
1487
+ "src": "1121:2:23"
1488
+ },
1489
+ "returnParameters": {
1490
+ "id": 5939,
1491
+ "nodeType": "ParameterList",
1492
+ "parameters": [
1493
+ {
1494
+ "constant": false,
1495
+ "id": 5938,
1496
+ "name": "",
1497
+ "nodeType": "VariableDeclaration",
1498
+ "scope": 5940,
1499
+ "src": "1147:7:23",
1500
+ "stateVariable": false,
1501
+ "storageLocation": "default",
1502
+ "typeDescriptions": {
1503
+ "typeIdentifier": "t_address",
1504
+ "typeString": "address"
1505
+ },
1506
+ "typeName": {
1507
+ "id": 5937,
1508
+ "name": "address",
1509
+ "nodeType": "ElementaryTypeName",
1510
+ "src": "1147:7:23",
1511
+ "stateMutability": "nonpayable",
1512
+ "typeDescriptions": {
1513
+ "typeIdentifier": "t_address",
1514
+ "typeString": "address"
1515
+ }
1516
+ },
1517
+ "value": null,
1518
+ "visibility": "internal"
1519
+ }
1520
+ ],
1521
+ "src": "1146:9:23"
1522
+ },
1523
+ "scope": 5985,
1524
+ "src": "1096:60:23",
1525
+ "stateMutability": "view",
1526
+ "superFunction": null,
1527
+ "visibility": "external"
1528
+ },
1529
+ {
1530
+ "body": null,
1531
+ "documentation": null,
1532
+ "id": 5945,
1533
+ "implemented": false,
1534
+ "kind": "function",
1535
+ "modifiers": [],
1536
+ "name": "simpleUniswapOracle",
1537
+ "nodeType": "FunctionDefinition",
1538
+ "parameters": {
1539
+ "id": 5941,
1540
+ "nodeType": "ParameterList",
1541
+ "parameters": [],
1542
+ "src": "1187:2:23"
1543
+ },
1544
+ "returnParameters": {
1545
+ "id": 5944,
1546
+ "nodeType": "ParameterList",
1547
+ "parameters": [
1548
+ {
1549
+ "constant": false,
1550
+ "id": 5943,
1551
+ "name": "",
1552
+ "nodeType": "VariableDeclaration",
1553
+ "scope": 5945,
1554
+ "src": "1213:7:23",
1555
+ "stateVariable": false,
1556
+ "storageLocation": "default",
1557
+ "typeDescriptions": {
1558
+ "typeIdentifier": "t_address",
1559
+ "typeString": "address"
1560
+ },
1561
+ "typeName": {
1562
+ "id": 5942,
1563
+ "name": "address",
1564
+ "nodeType": "ElementaryTypeName",
1565
+ "src": "1213:7:23",
1566
+ "stateMutability": "nonpayable",
1567
+ "typeDescriptions": {
1568
+ "typeIdentifier": "t_address",
1569
+ "typeString": "address"
1570
+ }
1571
+ },
1572
+ "value": null,
1573
+ "visibility": "internal"
1574
+ }
1575
+ ],
1576
+ "src": "1212:9:23"
1577
+ },
1578
+ "scope": 5985,
1579
+ "src": "1159:63:23",
1580
+ "stateMutability": "view",
1581
+ "superFunction": null,
1582
+ "visibility": "external"
1583
+ },
1584
+ {
1585
+ "body": null,
1586
+ "documentation": null,
1587
+ "id": 5952,
1588
+ "implemented": false,
1589
+ "kind": "function",
1590
+ "modifiers": [],
1591
+ "name": "createCollateral",
1592
+ "nodeType": "FunctionDefinition",
1593
+ "parameters": {
1594
+ "id": 5948,
1595
+ "nodeType": "ParameterList",
1596
+ "parameters": [
1597
+ {
1598
+ "constant": false,
1599
+ "id": 5947,
1600
+ "name": "uniswapV2Pair",
1601
+ "nodeType": "VariableDeclaration",
1602
+ "scope": 5952,
1603
+ "src": "1253:21:23",
1604
+ "stateVariable": false,
1605
+ "storageLocation": "default",
1606
+ "typeDescriptions": {
1607
+ "typeIdentifier": "t_address",
1608
+ "typeString": "address"
1609
+ },
1610
+ "typeName": {
1611
+ "id": 5946,
1612
+ "name": "address",
1613
+ "nodeType": "ElementaryTypeName",
1614
+ "src": "1253:7:23",
1615
+ "stateMutability": "nonpayable",
1616
+ "typeDescriptions": {
1617
+ "typeIdentifier": "t_address",
1618
+ "typeString": "address"
1619
+ }
1620
+ },
1621
+ "value": null,
1622
+ "visibility": "internal"
1623
+ }
1624
+ ],
1625
+ "src": "1252:23:23"
1626
+ },
1627
+ "returnParameters": {
1628
+ "id": 5951,
1629
+ "nodeType": "ParameterList",
1630
+ "parameters": [
1631
+ {
1632
+ "constant": false,
1633
+ "id": 5950,
1634
+ "name": "collateral",
1635
+ "nodeType": "VariableDeclaration",
1636
+ "scope": 5952,
1637
+ "src": "1294:18:23",
1638
+ "stateVariable": false,
1639
+ "storageLocation": "default",
1640
+ "typeDescriptions": {
1641
+ "typeIdentifier": "t_address",
1642
+ "typeString": "address"
1643
+ },
1644
+ "typeName": {
1645
+ "id": 5949,
1646
+ "name": "address",
1647
+ "nodeType": "ElementaryTypeName",
1648
+ "src": "1294:7:23",
1649
+ "stateMutability": "nonpayable",
1650
+ "typeDescriptions": {
1651
+ "typeIdentifier": "t_address",
1652
+ "typeString": "address"
1653
+ }
1654
+ },
1655
+ "value": null,
1656
+ "visibility": "internal"
1657
+ }
1658
+ ],
1659
+ "src": "1293:20:23"
1660
+ },
1661
+ "scope": 5985,
1662
+ "src": "1227:87:23",
1663
+ "stateMutability": "nonpayable",
1664
+ "superFunction": null,
1665
+ "visibility": "external"
1666
+ },
1667
+ {
1668
+ "body": null,
1669
+ "documentation": null,
1670
+ "id": 5959,
1671
+ "implemented": false,
1672
+ "kind": "function",
1673
+ "modifiers": [],
1674
+ "name": "createBorrowable0",
1675
+ "nodeType": "FunctionDefinition",
1676
+ "parameters": {
1677
+ "id": 5955,
1678
+ "nodeType": "ParameterList",
1679
+ "parameters": [
1680
+ {
1681
+ "constant": false,
1682
+ "id": 5954,
1683
+ "name": "uniswapV2Pair",
1684
+ "nodeType": "VariableDeclaration",
1685
+ "scope": 5959,
1686
+ "src": "1344:21:23",
1687
+ "stateVariable": false,
1688
+ "storageLocation": "default",
1689
+ "typeDescriptions": {
1690
+ "typeIdentifier": "t_address",
1691
+ "typeString": "address"
1692
+ },
1693
+ "typeName": {
1694
+ "id": 5953,
1695
+ "name": "address",
1696
+ "nodeType": "ElementaryTypeName",
1697
+ "src": "1344:7:23",
1698
+ "stateMutability": "nonpayable",
1699
+ "typeDescriptions": {
1700
+ "typeIdentifier": "t_address",
1701
+ "typeString": "address"
1702
+ }
1703
+ },
1704
+ "value": null,
1705
+ "visibility": "internal"
1706
+ }
1707
+ ],
1708
+ "src": "1343:23:23"
1709
+ },
1710
+ "returnParameters": {
1711
+ "id": 5958,
1712
+ "nodeType": "ParameterList",
1713
+ "parameters": [
1714
+ {
1715
+ "constant": false,
1716
+ "id": 5957,
1717
+ "name": "borrowable0",
1718
+ "nodeType": "VariableDeclaration",
1719
+ "scope": 5959,
1720
+ "src": "1385:19:23",
1721
+ "stateVariable": false,
1722
+ "storageLocation": "default",
1723
+ "typeDescriptions": {
1724
+ "typeIdentifier": "t_address",
1725
+ "typeString": "address"
1726
+ },
1727
+ "typeName": {
1728
+ "id": 5956,
1729
+ "name": "address",
1730
+ "nodeType": "ElementaryTypeName",
1731
+ "src": "1385:7:23",
1732
+ "stateMutability": "nonpayable",
1733
+ "typeDescriptions": {
1734
+ "typeIdentifier": "t_address",
1735
+ "typeString": "address"
1736
+ }
1737
+ },
1738
+ "value": null,
1739
+ "visibility": "internal"
1740
+ }
1741
+ ],
1742
+ "src": "1384:21:23"
1743
+ },
1744
+ "scope": 5985,
1745
+ "src": "1317:89:23",
1746
+ "stateMutability": "nonpayable",
1747
+ "superFunction": null,
1748
+ "visibility": "external"
1749
+ },
1750
+ {
1751
+ "body": null,
1752
+ "documentation": null,
1753
+ "id": 5966,
1754
+ "implemented": false,
1755
+ "kind": "function",
1756
+ "modifiers": [],
1757
+ "name": "createBorrowable1",
1758
+ "nodeType": "FunctionDefinition",
1759
+ "parameters": {
1760
+ "id": 5962,
1761
+ "nodeType": "ParameterList",
1762
+ "parameters": [
1763
+ {
1764
+ "constant": false,
1765
+ "id": 5961,
1766
+ "name": "uniswapV2Pair",
1767
+ "nodeType": "VariableDeclaration",
1768
+ "scope": 5966,
1769
+ "src": "1436:21:23",
1770
+ "stateVariable": false,
1771
+ "storageLocation": "default",
1772
+ "typeDescriptions": {
1773
+ "typeIdentifier": "t_address",
1774
+ "typeString": "address"
1775
+ },
1776
+ "typeName": {
1777
+ "id": 5960,
1778
+ "name": "address",
1779
+ "nodeType": "ElementaryTypeName",
1780
+ "src": "1436:7:23",
1781
+ "stateMutability": "nonpayable",
1782
+ "typeDescriptions": {
1783
+ "typeIdentifier": "t_address",
1784
+ "typeString": "address"
1785
+ }
1786
+ },
1787
+ "value": null,
1788
+ "visibility": "internal"
1789
+ }
1790
+ ],
1791
+ "src": "1435:23:23"
1792
+ },
1793
+ "returnParameters": {
1794
+ "id": 5965,
1795
+ "nodeType": "ParameterList",
1796
+ "parameters": [
1797
+ {
1798
+ "constant": false,
1799
+ "id": 5964,
1800
+ "name": "borrowable1",
1801
+ "nodeType": "VariableDeclaration",
1802
+ "scope": 5966,
1803
+ "src": "1477:19:23",
1804
+ "stateVariable": false,
1805
+ "storageLocation": "default",
1806
+ "typeDescriptions": {
1807
+ "typeIdentifier": "t_address",
1808
+ "typeString": "address"
1809
+ },
1810
+ "typeName": {
1811
+ "id": 5963,
1812
+ "name": "address",
1813
+ "nodeType": "ElementaryTypeName",
1814
+ "src": "1477:7:23",
1815
+ "stateMutability": "nonpayable",
1816
+ "typeDescriptions": {
1817
+ "typeIdentifier": "t_address",
1818
+ "typeString": "address"
1819
+ }
1820
+ },
1821
+ "value": null,
1822
+ "visibility": "internal"
1823
+ }
1824
+ ],
1825
+ "src": "1476:21:23"
1826
+ },
1827
+ "scope": 5985,
1828
+ "src": "1409:89:23",
1829
+ "stateMutability": "nonpayable",
1830
+ "superFunction": null,
1831
+ "visibility": "external"
1832
+ },
1833
+ {
1834
+ "body": null,
1835
+ "documentation": null,
1836
+ "id": 5971,
1837
+ "implemented": false,
1838
+ "kind": "function",
1839
+ "modifiers": [],
1840
+ "name": "initializeLendingPool",
1841
+ "nodeType": "FunctionDefinition",
1842
+ "parameters": {
1843
+ "id": 5969,
1844
+ "nodeType": "ParameterList",
1845
+ "parameters": [
1846
+ {
1847
+ "constant": false,
1848
+ "id": 5968,
1849
+ "name": "uniswapV2Pair",
1850
+ "nodeType": "VariableDeclaration",
1851
+ "scope": 5971,
1852
+ "src": "1532:21:23",
1853
+ "stateVariable": false,
1854
+ "storageLocation": "default",
1855
+ "typeDescriptions": {
1856
+ "typeIdentifier": "t_address",
1857
+ "typeString": "address"
1858
+ },
1859
+ "typeName": {
1860
+ "id": 5967,
1861
+ "name": "address",
1862
+ "nodeType": "ElementaryTypeName",
1863
+ "src": "1532:7:23",
1864
+ "stateMutability": "nonpayable",
1865
+ "typeDescriptions": {
1866
+ "typeIdentifier": "t_address",
1867
+ "typeString": "address"
1868
+ }
1869
+ },
1870
+ "value": null,
1871
+ "visibility": "internal"
1872
+ }
1873
+ ],
1874
+ "src": "1531:23:23"
1875
+ },
1876
+ "returnParameters": {
1877
+ "id": 5970,
1878
+ "nodeType": "ParameterList",
1879
+ "parameters": [],
1880
+ "src": "1563:0:23"
1881
+ },
1882
+ "scope": 5985,
1883
+ "src": "1501:63:23",
1884
+ "stateMutability": "nonpayable",
1885
+ "superFunction": null,
1886
+ "visibility": "external"
1887
+ },
1888
+ {
1889
+ "body": null,
1890
+ "documentation": null,
1891
+ "id": 5976,
1892
+ "implemented": false,
1893
+ "kind": "function",
1894
+ "modifiers": [],
1895
+ "name": "_setPendingAdmin",
1896
+ "nodeType": "FunctionDefinition",
1897
+ "parameters": {
1898
+ "id": 5974,
1899
+ "nodeType": "ParameterList",
1900
+ "parameters": [
1901
+ {
1902
+ "constant": false,
1903
+ "id": 5973,
1904
+ "name": "newPendingAdmin",
1905
+ "nodeType": "VariableDeclaration",
1906
+ "scope": 5976,
1907
+ "src": "1595:23:23",
1908
+ "stateVariable": false,
1909
+ "storageLocation": "default",
1910
+ "typeDescriptions": {
1911
+ "typeIdentifier": "t_address",
1912
+ "typeString": "address"
1913
+ },
1914
+ "typeName": {
1915
+ "id": 5972,
1916
+ "name": "address",
1917
+ "nodeType": "ElementaryTypeName",
1918
+ "src": "1595:7:23",
1919
+ "stateMutability": "nonpayable",
1920
+ "typeDescriptions": {
1921
+ "typeIdentifier": "t_address",
1922
+ "typeString": "address"
1923
+ }
1924
+ },
1925
+ "value": null,
1926
+ "visibility": "internal"
1927
+ }
1928
+ ],
1929
+ "src": "1594:25:23"
1930
+ },
1931
+ "returnParameters": {
1932
+ "id": 5975,
1933
+ "nodeType": "ParameterList",
1934
+ "parameters": [],
1935
+ "src": "1628:0:23"
1936
+ },
1937
+ "scope": 5985,
1938
+ "src": "1569:60:23",
1939
+ "stateMutability": "nonpayable",
1940
+ "superFunction": null,
1941
+ "visibility": "external"
1942
+ },
1943
+ {
1944
+ "body": null,
1945
+ "documentation": null,
1946
+ "id": 5979,
1947
+ "implemented": false,
1948
+ "kind": "function",
1949
+ "modifiers": [],
1950
+ "name": "_acceptAdmin",
1951
+ "nodeType": "FunctionDefinition",
1952
+ "parameters": {
1953
+ "id": 5977,
1954
+ "nodeType": "ParameterList",
1955
+ "parameters": [],
1956
+ "src": "1653:2:23"
1957
+ },
1958
+ "returnParameters": {
1959
+ "id": 5978,
1960
+ "nodeType": "ParameterList",
1961
+ "parameters": [],
1962
+ "src": "1664:0:23"
1963
+ },
1964
+ "scope": 5985,
1965
+ "src": "1632:33:23",
1966
+ "stateMutability": "nonpayable",
1967
+ "superFunction": null,
1968
+ "visibility": "external"
1969
+ },
1970
+ {
1971
+ "body": null,
1972
+ "documentation": null,
1973
+ "id": 5984,
1974
+ "implemented": false,
1975
+ "kind": "function",
1976
+ "modifiers": [],
1977
+ "name": "_setReservesManager",
1978
+ "nodeType": "FunctionDefinition",
1979
+ "parameters": {
1980
+ "id": 5982,
1981
+ "nodeType": "ParameterList",
1982
+ "parameters": [
1983
+ {
1984
+ "constant": false,
1985
+ "id": 5981,
1986
+ "name": "newReservesManager",
1987
+ "nodeType": "VariableDeclaration",
1988
+ "scope": 5984,
1989
+ "src": "1697:26:23",
1990
+ "stateVariable": false,
1991
+ "storageLocation": "default",
1992
+ "typeDescriptions": {
1993
+ "typeIdentifier": "t_address",
1994
+ "typeString": "address"
1995
+ },
1996
+ "typeName": {
1997
+ "id": 5980,
1998
+ "name": "address",
1999
+ "nodeType": "ElementaryTypeName",
2000
+ "src": "1697:7:23",
2001
+ "stateMutability": "nonpayable",
2002
+ "typeDescriptions": {
2003
+ "typeIdentifier": "t_address",
2004
+ "typeString": "address"
2005
+ }
2006
+ },
2007
+ "value": null,
2008
+ "visibility": "internal"
2009
+ }
2010
+ ],
2011
+ "src": "1696:28:23"
2012
+ },
2013
+ "returnParameters": {
2014
+ "id": 5983,
2015
+ "nodeType": "ParameterList",
2016
+ "parameters": [],
2017
+ "src": "1733:0:23"
2018
+ },
2019
+ "scope": 5985,
2020
+ "src": "1668:66:23",
2021
+ "stateMutability": "nonpayable",
2022
+ "superFunction": null,
2023
+ "visibility": "external"
2024
+ }
2025
+ ],
2026
+ "scope": 5986,
2027
+ "src": "28:1709:23"
2028
+ }
2029
+ ],
2030
+ "src": "0:1739:23"
2031
+ },
2032
+ "legacyAST": {
2033
+ "absolutePath": "/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/imx-univ2-core/interfaces/IFactory.sol",
2034
+ "exportedSymbols": {
2035
+ "IFactory": [
2036
+ 5985
2037
+ ]
2038
+ },
2039
+ "id": 5986,
2040
+ "nodeType": "SourceUnit",
2041
+ "nodes": [
2042
+ {
2043
+ "id": 5849,
2044
+ "literals": [
2045
+ "solidity",
2046
+ ">=",
2047
+ "0.5",
2048
+ ".0"
2049
+ ],
2050
+ "nodeType": "PragmaDirective",
2051
+ "src": "0:24:23"
2052
+ },
2053
+ {
2054
+ "baseContracts": [],
2055
+ "contractDependencies": [],
2056
+ "contractKind": "interface",
2057
+ "documentation": null,
2058
+ "fullyImplemented": false,
2059
+ "id": 5985,
2060
+ "linearizedBaseContracts": [
2061
+ 5985
2062
+ ],
2063
+ "name": "IFactory",
2064
+ "nodeType": "ContractDefinition",
2065
+ "nodes": [
2066
+ {
2067
+ "anonymous": false,
2068
+ "documentation": null,
2069
+ "id": 5865,
2070
+ "name": "LendingPoolInitialized",
2071
+ "nodeType": "EventDefinition",
2072
+ "parameters": {
2073
+ "id": 5864,
2074
+ "nodeType": "ParameterList",
2075
+ "parameters": [
2076
+ {
2077
+ "constant": false,
2078
+ "id": 5851,
2079
+ "indexed": true,
2080
+ "name": "uniswapV2Pair",
2081
+ "nodeType": "VariableDeclaration",
2082
+ "scope": 5865,
2083
+ "src": "80:29:23",
2084
+ "stateVariable": false,
2085
+ "storageLocation": "default",
2086
+ "typeDescriptions": {
2087
+ "typeIdentifier": "t_address",
2088
+ "typeString": "address"
2089
+ },
2090
+ "typeName": {
2091
+ "id": 5850,
2092
+ "name": "address",
2093
+ "nodeType": "ElementaryTypeName",
2094
+ "src": "80:7:23",
2095
+ "stateMutability": "nonpayable",
2096
+ "typeDescriptions": {
2097
+ "typeIdentifier": "t_address",
2098
+ "typeString": "address"
2099
+ }
2100
+ },
2101
+ "value": null,
2102
+ "visibility": "internal"
2103
+ },
2104
+ {
2105
+ "constant": false,
2106
+ "id": 5853,
2107
+ "indexed": true,
2108
+ "name": "token0",
2109
+ "nodeType": "VariableDeclaration",
2110
+ "scope": 5865,
2111
+ "src": "111:22:23",
2112
+ "stateVariable": false,
2113
+ "storageLocation": "default",
2114
+ "typeDescriptions": {
2115
+ "typeIdentifier": "t_address",
2116
+ "typeString": "address"
2117
+ },
2118
+ "typeName": {
2119
+ "id": 5852,
2120
+ "name": "address",
2121
+ "nodeType": "ElementaryTypeName",
2122
+ "src": "111:7:23",
2123
+ "stateMutability": "nonpayable",
2124
+ "typeDescriptions": {
2125
+ "typeIdentifier": "t_address",
2126
+ "typeString": "address"
2127
+ }
2128
+ },
2129
+ "value": null,
2130
+ "visibility": "internal"
2131
+ },
2132
+ {
2133
+ "constant": false,
2134
+ "id": 5855,
2135
+ "indexed": true,
2136
+ "name": "token1",
2137
+ "nodeType": "VariableDeclaration",
2138
+ "scope": 5865,
2139
+ "src": "135:22:23",
2140
+ "stateVariable": false,
2141
+ "storageLocation": "default",
2142
+ "typeDescriptions": {
2143
+ "typeIdentifier": "t_address",
2144
+ "typeString": "address"
2145
+ },
2146
+ "typeName": {
2147
+ "id": 5854,
2148
+ "name": "address",
2149
+ "nodeType": "ElementaryTypeName",
2150
+ "src": "135:7:23",
2151
+ "stateMutability": "nonpayable",
2152
+ "typeDescriptions": {
2153
+ "typeIdentifier": "t_address",
2154
+ "typeString": "address"
2155
+ }
2156
+ },
2157
+ "value": null,
2158
+ "visibility": "internal"
2159
+ },
2160
+ {
2161
+ "constant": false,
2162
+ "id": 5857,
2163
+ "indexed": false,
2164
+ "name": "collateral",
2165
+ "nodeType": "VariableDeclaration",
2166
+ "scope": 5865,
2167
+ "src": "162:18:23",
2168
+ "stateVariable": false,
2169
+ "storageLocation": "default",
2170
+ "typeDescriptions": {
2171
+ "typeIdentifier": "t_address",
2172
+ "typeString": "address"
2173
+ },
2174
+ "typeName": {
2175
+ "id": 5856,
2176
+ "name": "address",
2177
+ "nodeType": "ElementaryTypeName",
2178
+ "src": "162:7:23",
2179
+ "stateMutability": "nonpayable",
2180
+ "typeDescriptions": {
2181
+ "typeIdentifier": "t_address",
2182
+ "typeString": "address"
2183
+ }
2184
+ },
2185
+ "value": null,
2186
+ "visibility": "internal"
2187
+ },
2188
+ {
2189
+ "constant": false,
2190
+ "id": 5859,
2191
+ "indexed": false,
2192
+ "name": "borrowable0",
2193
+ "nodeType": "VariableDeclaration",
2194
+ "scope": 5865,
2195
+ "src": "182:19:23",
2196
+ "stateVariable": false,
2197
+ "storageLocation": "default",
2198
+ "typeDescriptions": {
2199
+ "typeIdentifier": "t_address",
2200
+ "typeString": "address"
2201
+ },
2202
+ "typeName": {
2203
+ "id": 5858,
2204
+ "name": "address",
2205
+ "nodeType": "ElementaryTypeName",
2206
+ "src": "182:7:23",
2207
+ "stateMutability": "nonpayable",
2208
+ "typeDescriptions": {
2209
+ "typeIdentifier": "t_address",
2210
+ "typeString": "address"
2211
+ }
2212
+ },
2213
+ "value": null,
2214
+ "visibility": "internal"
2215
+ },
2216
+ {
2217
+ "constant": false,
2218
+ "id": 5861,
2219
+ "indexed": false,
2220
+ "name": "borrowable1",
2221
+ "nodeType": "VariableDeclaration",
2222
+ "scope": 5865,
2223
+ "src": "203:19:23",
2224
+ "stateVariable": false,
2225
+ "storageLocation": "default",
2226
+ "typeDescriptions": {
2227
+ "typeIdentifier": "t_address",
2228
+ "typeString": "address"
2229
+ },
2230
+ "typeName": {
2231
+ "id": 5860,
2232
+ "name": "address",
2233
+ "nodeType": "ElementaryTypeName",
2234
+ "src": "203:7:23",
2235
+ "stateMutability": "nonpayable",
2236
+ "typeDescriptions": {
2237
+ "typeIdentifier": "t_address",
2238
+ "typeString": "address"
2239
+ }
2240
+ },
2241
+ "value": null,
2242
+ "visibility": "internal"
2243
+ },
2244
+ {
2245
+ "constant": false,
2246
+ "id": 5863,
2247
+ "indexed": false,
2248
+ "name": "lendingPoolId",
2249
+ "nodeType": "VariableDeclaration",
2250
+ "scope": 5865,
2251
+ "src": "224:18:23",
2252
+ "stateVariable": false,
2253
+ "storageLocation": "default",
2254
+ "typeDescriptions": {
2255
+ "typeIdentifier": "t_uint256",
2256
+ "typeString": "uint256"
2257
+ },
2258
+ "typeName": {
2259
+ "id": 5862,
2260
+ "name": "uint",
2261
+ "nodeType": "ElementaryTypeName",
2262
+ "src": "224:4:23",
2263
+ "typeDescriptions": {
2264
+ "typeIdentifier": "t_uint256",
2265
+ "typeString": "uint256"
2266
+ }
2267
+ },
2268
+ "value": null,
2269
+ "visibility": "internal"
2270
+ }
2271
+ ],
2272
+ "src": "79:164:23"
2273
+ },
2274
+ "src": "51:193:23"
2275
+ },
2276
+ {
2277
+ "anonymous": false,
2278
+ "documentation": null,
2279
+ "id": 5871,
2280
+ "name": "NewPendingAdmin",
2281
+ "nodeType": "EventDefinition",
2282
+ "parameters": {
2283
+ "id": 5870,
2284
+ "nodeType": "ParameterList",
2285
+ "parameters": [
2286
+ {
2287
+ "constant": false,
2288
+ "id": 5867,
2289
+ "indexed": false,
2290
+ "name": "oldPendingAdmin",
2291
+ "nodeType": "VariableDeclaration",
2292
+ "scope": 5871,
2293
+ "src": "269:23:23",
2294
+ "stateVariable": false,
2295
+ "storageLocation": "default",
2296
+ "typeDescriptions": {
2297
+ "typeIdentifier": "t_address",
2298
+ "typeString": "address"
2299
+ },
2300
+ "typeName": {
2301
+ "id": 5866,
2302
+ "name": "address",
2303
+ "nodeType": "ElementaryTypeName",
2304
+ "src": "269:7:23",
2305
+ "stateMutability": "nonpayable",
2306
+ "typeDescriptions": {
2307
+ "typeIdentifier": "t_address",
2308
+ "typeString": "address"
2309
+ }
2310
+ },
2311
+ "value": null,
2312
+ "visibility": "internal"
2313
+ },
2314
+ {
2315
+ "constant": false,
2316
+ "id": 5869,
2317
+ "indexed": false,
2318
+ "name": "newPendingAdmin",
2319
+ "nodeType": "VariableDeclaration",
2320
+ "scope": 5871,
2321
+ "src": "294:23:23",
2322
+ "stateVariable": false,
2323
+ "storageLocation": "default",
2324
+ "typeDescriptions": {
2325
+ "typeIdentifier": "t_address",
2326
+ "typeString": "address"
2327
+ },
2328
+ "typeName": {
2329
+ "id": 5868,
2330
+ "name": "address",
2331
+ "nodeType": "ElementaryTypeName",
2332
+ "src": "294:7:23",
2333
+ "stateMutability": "nonpayable",
2334
+ "typeDescriptions": {
2335
+ "typeIdentifier": "t_address",
2336
+ "typeString": "address"
2337
+ }
2338
+ },
2339
+ "value": null,
2340
+ "visibility": "internal"
2341
+ }
2342
+ ],
2343
+ "src": "268:50:23"
2344
+ },
2345
+ "src": "247:72:23"
2346
+ },
2347
+ {
2348
+ "anonymous": false,
2349
+ "documentation": null,
2350
+ "id": 5877,
2351
+ "name": "NewAdmin",
2352
+ "nodeType": "EventDefinition",
2353
+ "parameters": {
2354
+ "id": 5876,
2355
+ "nodeType": "ParameterList",
2356
+ "parameters": [
2357
+ {
2358
+ "constant": false,
2359
+ "id": 5873,
2360
+ "indexed": false,
2361
+ "name": "oldAdmin",
2362
+ "nodeType": "VariableDeclaration",
2363
+ "scope": 5877,
2364
+ "src": "337:16:23",
2365
+ "stateVariable": false,
2366
+ "storageLocation": "default",
2367
+ "typeDescriptions": {
2368
+ "typeIdentifier": "t_address",
2369
+ "typeString": "address"
2370
+ },
2371
+ "typeName": {
2372
+ "id": 5872,
2373
+ "name": "address",
2374
+ "nodeType": "ElementaryTypeName",
2375
+ "src": "337:7:23",
2376
+ "stateMutability": "nonpayable",
2377
+ "typeDescriptions": {
2378
+ "typeIdentifier": "t_address",
2379
+ "typeString": "address"
2380
+ }
2381
+ },
2382
+ "value": null,
2383
+ "visibility": "internal"
2384
+ },
2385
+ {
2386
+ "constant": false,
2387
+ "id": 5875,
2388
+ "indexed": false,
2389
+ "name": "newAdmin",
2390
+ "nodeType": "VariableDeclaration",
2391
+ "scope": 5877,
2392
+ "src": "355:16:23",
2393
+ "stateVariable": false,
2394
+ "storageLocation": "default",
2395
+ "typeDescriptions": {
2396
+ "typeIdentifier": "t_address",
2397
+ "typeString": "address"
2398
+ },
2399
+ "typeName": {
2400
+ "id": 5874,
2401
+ "name": "address",
2402
+ "nodeType": "ElementaryTypeName",
2403
+ "src": "355:7:23",
2404
+ "stateMutability": "nonpayable",
2405
+ "typeDescriptions": {
2406
+ "typeIdentifier": "t_address",
2407
+ "typeString": "address"
2408
+ }
2409
+ },
2410
+ "value": null,
2411
+ "visibility": "internal"
2412
+ }
2413
+ ],
2414
+ "src": "336:36:23"
2415
+ },
2416
+ "src": "322:51:23"
2417
+ },
2418
+ {
2419
+ "anonymous": false,
2420
+ "documentation": null,
2421
+ "id": 5883,
2422
+ "name": "NewReservesManager",
2423
+ "nodeType": "EventDefinition",
2424
+ "parameters": {
2425
+ "id": 5882,
2426
+ "nodeType": "ParameterList",
2427
+ "parameters": [
2428
+ {
2429
+ "constant": false,
2430
+ "id": 5879,
2431
+ "indexed": false,
2432
+ "name": "oldReservesManager",
2433
+ "nodeType": "VariableDeclaration",
2434
+ "scope": 5883,
2435
+ "src": "401:26:23",
2436
+ "stateVariable": false,
2437
+ "storageLocation": "default",
2438
+ "typeDescriptions": {
2439
+ "typeIdentifier": "t_address",
2440
+ "typeString": "address"
2441
+ },
2442
+ "typeName": {
2443
+ "id": 5878,
2444
+ "name": "address",
2445
+ "nodeType": "ElementaryTypeName",
2446
+ "src": "401:7:23",
2447
+ "stateMutability": "nonpayable",
2448
+ "typeDescriptions": {
2449
+ "typeIdentifier": "t_address",
2450
+ "typeString": "address"
2451
+ }
2452
+ },
2453
+ "value": null,
2454
+ "visibility": "internal"
2455
+ },
2456
+ {
2457
+ "constant": false,
2458
+ "id": 5881,
2459
+ "indexed": false,
2460
+ "name": "newReservesManager",
2461
+ "nodeType": "VariableDeclaration",
2462
+ "scope": 5883,
2463
+ "src": "429:26:23",
2464
+ "stateVariable": false,
2465
+ "storageLocation": "default",
2466
+ "typeDescriptions": {
2467
+ "typeIdentifier": "t_address",
2468
+ "typeString": "address"
2469
+ },
2470
+ "typeName": {
2471
+ "id": 5880,
2472
+ "name": "address",
2473
+ "nodeType": "ElementaryTypeName",
2474
+ "src": "429:7:23",
2475
+ "stateMutability": "nonpayable",
2476
+ "typeDescriptions": {
2477
+ "typeIdentifier": "t_address",
2478
+ "typeString": "address"
2479
+ }
2480
+ },
2481
+ "value": null,
2482
+ "visibility": "internal"
2483
+ }
2484
+ ],
2485
+ "src": "400:56:23"
2486
+ },
2487
+ "src": "376:81:23"
2488
+ },
2489
+ {
2490
+ "body": null,
2491
+ "documentation": null,
2492
+ "id": 5888,
2493
+ "implemented": false,
2494
+ "kind": "function",
2495
+ "modifiers": [],
2496
+ "name": "admin",
2497
+ "nodeType": "FunctionDefinition",
2498
+ "parameters": {
2499
+ "id": 5884,
2500
+ "nodeType": "ParameterList",
2501
+ "parameters": [],
2502
+ "src": "477:2:23"
2503
+ },
2504
+ "returnParameters": {
2505
+ "id": 5887,
2506
+ "nodeType": "ParameterList",
2507
+ "parameters": [
2508
+ {
2509
+ "constant": false,
2510
+ "id": 5886,
2511
+ "name": "",
2512
+ "nodeType": "VariableDeclaration",
2513
+ "scope": 5888,
2514
+ "src": "503:7:23",
2515
+ "stateVariable": false,
2516
+ "storageLocation": "default",
2517
+ "typeDescriptions": {
2518
+ "typeIdentifier": "t_address",
2519
+ "typeString": "address"
2520
+ },
2521
+ "typeName": {
2522
+ "id": 5885,
2523
+ "name": "address",
2524
+ "nodeType": "ElementaryTypeName",
2525
+ "src": "503:7:23",
2526
+ "stateMutability": "nonpayable",
2527
+ "typeDescriptions": {
2528
+ "typeIdentifier": "t_address",
2529
+ "typeString": "address"
2530
+ }
2531
+ },
2532
+ "value": null,
2533
+ "visibility": "internal"
2534
+ }
2535
+ ],
2536
+ "src": "502:9:23"
2537
+ },
2538
+ "scope": 5985,
2539
+ "src": "463:49:23",
2540
+ "stateMutability": "view",
2541
+ "superFunction": null,
2542
+ "visibility": "external"
2543
+ },
2544
+ {
2545
+ "body": null,
2546
+ "documentation": null,
2547
+ "id": 5893,
2548
+ "implemented": false,
2549
+ "kind": "function",
2550
+ "modifiers": [],
2551
+ "name": "pendingAdmin",
2552
+ "nodeType": "FunctionDefinition",
2553
+ "parameters": {
2554
+ "id": 5889,
2555
+ "nodeType": "ParameterList",
2556
+ "parameters": [],
2557
+ "src": "536:2:23"
2558
+ },
2559
+ "returnParameters": {
2560
+ "id": 5892,
2561
+ "nodeType": "ParameterList",
2562
+ "parameters": [
2563
+ {
2564
+ "constant": false,
2565
+ "id": 5891,
2566
+ "name": "",
2567
+ "nodeType": "VariableDeclaration",
2568
+ "scope": 5893,
2569
+ "src": "562:7:23",
2570
+ "stateVariable": false,
2571
+ "storageLocation": "default",
2572
+ "typeDescriptions": {
2573
+ "typeIdentifier": "t_address",
2574
+ "typeString": "address"
2575
+ },
2576
+ "typeName": {
2577
+ "id": 5890,
2578
+ "name": "address",
2579
+ "nodeType": "ElementaryTypeName",
2580
+ "src": "562:7:23",
2581
+ "stateMutability": "nonpayable",
2582
+ "typeDescriptions": {
2583
+ "typeIdentifier": "t_address",
2584
+ "typeString": "address"
2585
+ }
2586
+ },
2587
+ "value": null,
2588
+ "visibility": "internal"
2589
+ }
2590
+ ],
2591
+ "src": "561:9:23"
2592
+ },
2593
+ "scope": 5985,
2594
+ "src": "515:56:23",
2595
+ "stateMutability": "view",
2596
+ "superFunction": null,
2597
+ "visibility": "external"
2598
+ },
2599
+ {
2600
+ "body": null,
2601
+ "documentation": null,
2602
+ "id": 5898,
2603
+ "implemented": false,
2604
+ "kind": "function",
2605
+ "modifiers": [],
2606
+ "name": "reservesManager",
2607
+ "nodeType": "FunctionDefinition",
2608
+ "parameters": {
2609
+ "id": 5894,
2610
+ "nodeType": "ParameterList",
2611
+ "parameters": [],
2612
+ "src": "598:2:23"
2613
+ },
2614
+ "returnParameters": {
2615
+ "id": 5897,
2616
+ "nodeType": "ParameterList",
2617
+ "parameters": [
2618
+ {
2619
+ "constant": false,
2620
+ "id": 5896,
2621
+ "name": "",
2622
+ "nodeType": "VariableDeclaration",
2623
+ "scope": 5898,
2624
+ "src": "624:7:23",
2625
+ "stateVariable": false,
2626
+ "storageLocation": "default",
2627
+ "typeDescriptions": {
2628
+ "typeIdentifier": "t_address",
2629
+ "typeString": "address"
2630
+ },
2631
+ "typeName": {
2632
+ "id": 5895,
2633
+ "name": "address",
2634
+ "nodeType": "ElementaryTypeName",
2635
+ "src": "624:7:23",
2636
+ "stateMutability": "nonpayable",
2637
+ "typeDescriptions": {
2638
+ "typeIdentifier": "t_address",
2639
+ "typeString": "address"
2640
+ }
2641
+ },
2642
+ "value": null,
2643
+ "visibility": "internal"
2644
+ }
2645
+ ],
2646
+ "src": "623:9:23"
2647
+ },
2648
+ "scope": 5985,
2649
+ "src": "574:59:23",
2650
+ "stateMutability": "view",
2651
+ "superFunction": null,
2652
+ "visibility": "external"
2653
+ },
2654
+ {
2655
+ "body": null,
2656
+ "documentation": null,
2657
+ "id": 5913,
2658
+ "implemented": false,
2659
+ "kind": "function",
2660
+ "modifiers": [],
2661
+ "name": "getLendingPool",
2662
+ "nodeType": "FunctionDefinition",
2663
+ "parameters": {
2664
+ "id": 5901,
2665
+ "nodeType": "ParameterList",
2666
+ "parameters": [
2667
+ {
2668
+ "constant": false,
2669
+ "id": 5900,
2670
+ "name": "uniswapV2Pair",
2671
+ "nodeType": "VariableDeclaration",
2672
+ "scope": 5913,
2673
+ "src": "662:21:23",
2674
+ "stateVariable": false,
2675
+ "storageLocation": "default",
2676
+ "typeDescriptions": {
2677
+ "typeIdentifier": "t_address",
2678
+ "typeString": "address"
2679
+ },
2680
+ "typeName": {
2681
+ "id": 5899,
2682
+ "name": "address",
2683
+ "nodeType": "ElementaryTypeName",
2684
+ "src": "662:7:23",
2685
+ "stateMutability": "nonpayable",
2686
+ "typeDescriptions": {
2687
+ "typeIdentifier": "t_address",
2688
+ "typeString": "address"
2689
+ }
2690
+ },
2691
+ "value": null,
2692
+ "visibility": "internal"
2693
+ }
2694
+ ],
2695
+ "src": "661:23:23"
2696
+ },
2697
+ "returnParameters": {
2698
+ "id": 5912,
2699
+ "nodeType": "ParameterList",
2700
+ "parameters": [
2701
+ {
2702
+ "constant": false,
2703
+ "id": 5903,
2704
+ "name": "initialized",
2705
+ "nodeType": "VariableDeclaration",
2706
+ "scope": 5913,
2707
+ "src": "712:16:23",
2708
+ "stateVariable": false,
2709
+ "storageLocation": "default",
2710
+ "typeDescriptions": {
2711
+ "typeIdentifier": "t_bool",
2712
+ "typeString": "bool"
2713
+ },
2714
+ "typeName": {
2715
+ "id": 5902,
2716
+ "name": "bool",
2717
+ "nodeType": "ElementaryTypeName",
2718
+ "src": "712:4:23",
2719
+ "typeDescriptions": {
2720
+ "typeIdentifier": "t_bool",
2721
+ "typeString": "bool"
2722
+ }
2723
+ },
2724
+ "value": null,
2725
+ "visibility": "internal"
2726
+ },
2727
+ {
2728
+ "constant": false,
2729
+ "id": 5905,
2730
+ "name": "lendingPoolId",
2731
+ "nodeType": "VariableDeclaration",
2732
+ "scope": 5913,
2733
+ "src": "734:20:23",
2734
+ "stateVariable": false,
2735
+ "storageLocation": "default",
2736
+ "typeDescriptions": {
2737
+ "typeIdentifier": "t_uint24",
2738
+ "typeString": "uint24"
2739
+ },
2740
+ "typeName": {
2741
+ "id": 5904,
2742
+ "name": "uint24",
2743
+ "nodeType": "ElementaryTypeName",
2744
+ "src": "734:6:23",
2745
+ "typeDescriptions": {
2746
+ "typeIdentifier": "t_uint24",
2747
+ "typeString": "uint24"
2748
+ }
2749
+ },
2750
+ "value": null,
2751
+ "visibility": "internal"
2752
+ },
2753
+ {
2754
+ "constant": false,
2755
+ "id": 5907,
2756
+ "name": "collateral",
2757
+ "nodeType": "VariableDeclaration",
2758
+ "scope": 5913,
2759
+ "src": "760:18:23",
2760
+ "stateVariable": false,
2761
+ "storageLocation": "default",
2762
+ "typeDescriptions": {
2763
+ "typeIdentifier": "t_address",
2764
+ "typeString": "address"
2765
+ },
2766
+ "typeName": {
2767
+ "id": 5906,
2768
+ "name": "address",
2769
+ "nodeType": "ElementaryTypeName",
2770
+ "src": "760:7:23",
2771
+ "stateMutability": "nonpayable",
2772
+ "typeDescriptions": {
2773
+ "typeIdentifier": "t_address",
2774
+ "typeString": "address"
2775
+ }
2776
+ },
2777
+ "value": null,
2778
+ "visibility": "internal"
2779
+ },
2780
+ {
2781
+ "constant": false,
2782
+ "id": 5909,
2783
+ "name": "borrowable0",
2784
+ "nodeType": "VariableDeclaration",
2785
+ "scope": 5913,
2786
+ "src": "784:19:23",
2787
+ "stateVariable": false,
2788
+ "storageLocation": "default",
2789
+ "typeDescriptions": {
2790
+ "typeIdentifier": "t_address",
2791
+ "typeString": "address"
2792
+ },
2793
+ "typeName": {
2794
+ "id": 5908,
2795
+ "name": "address",
2796
+ "nodeType": "ElementaryTypeName",
2797
+ "src": "784:7:23",
2798
+ "stateMutability": "nonpayable",
2799
+ "typeDescriptions": {
2800
+ "typeIdentifier": "t_address",
2801
+ "typeString": "address"
2802
+ }
2803
+ },
2804
+ "value": null,
2805
+ "visibility": "internal"
2806
+ },
2807
+ {
2808
+ "constant": false,
2809
+ "id": 5911,
2810
+ "name": "borrowable1",
2811
+ "nodeType": "VariableDeclaration",
2812
+ "scope": 5913,
2813
+ "src": "809:19:23",
2814
+ "stateVariable": false,
2815
+ "storageLocation": "default",
2816
+ "typeDescriptions": {
2817
+ "typeIdentifier": "t_address",
2818
+ "typeString": "address"
2819
+ },
2820
+ "typeName": {
2821
+ "id": 5910,
2822
+ "name": "address",
2823
+ "nodeType": "ElementaryTypeName",
2824
+ "src": "809:7:23",
2825
+ "stateMutability": "nonpayable",
2826
+ "typeDescriptions": {
2827
+ "typeIdentifier": "t_address",
2828
+ "typeString": "address"
2829
+ }
2830
+ },
2831
+ "value": null,
2832
+ "visibility": "internal"
2833
+ }
2834
+ ],
2835
+ "src": "707:125:23"
2836
+ },
2837
+ "scope": 5985,
2838
+ "src": "638:195:23",
2839
+ "stateMutability": "view",
2840
+ "superFunction": null,
2841
+ "visibility": "external"
2842
+ },
2843
+ {
2844
+ "body": null,
2845
+ "documentation": null,
2846
+ "id": 5920,
2847
+ "implemented": false,
2848
+ "kind": "function",
2849
+ "modifiers": [],
2850
+ "name": "allLendingPools",
2851
+ "nodeType": "FunctionDefinition",
2852
+ "parameters": {
2853
+ "id": 5916,
2854
+ "nodeType": "ParameterList",
2855
+ "parameters": [
2856
+ {
2857
+ "constant": false,
2858
+ "id": 5915,
2859
+ "name": "",
2860
+ "nodeType": "VariableDeclaration",
2861
+ "scope": 5920,
2862
+ "src": "861:4:23",
2863
+ "stateVariable": false,
2864
+ "storageLocation": "default",
2865
+ "typeDescriptions": {
2866
+ "typeIdentifier": "t_uint256",
2867
+ "typeString": "uint256"
2868
+ },
2869
+ "typeName": {
2870
+ "id": 5914,
2871
+ "name": "uint",
2872
+ "nodeType": "ElementaryTypeName",
2873
+ "src": "861:4:23",
2874
+ "typeDescriptions": {
2875
+ "typeIdentifier": "t_uint256",
2876
+ "typeString": "uint256"
2877
+ }
2878
+ },
2879
+ "value": null,
2880
+ "visibility": "internal"
2881
+ }
2882
+ ],
2883
+ "src": "860:6:23"
2884
+ },
2885
+ "returnParameters": {
2886
+ "id": 5919,
2887
+ "nodeType": "ParameterList",
2888
+ "parameters": [
2889
+ {
2890
+ "constant": false,
2891
+ "id": 5918,
2892
+ "name": "uniswapV2Pair",
2893
+ "nodeType": "VariableDeclaration",
2894
+ "scope": 5920,
2895
+ "src": "890:21:23",
2896
+ "stateVariable": false,
2897
+ "storageLocation": "default",
2898
+ "typeDescriptions": {
2899
+ "typeIdentifier": "t_address",
2900
+ "typeString": "address"
2901
+ },
2902
+ "typeName": {
2903
+ "id": 5917,
2904
+ "name": "address",
2905
+ "nodeType": "ElementaryTypeName",
2906
+ "src": "890:7:23",
2907
+ "stateMutability": "nonpayable",
2908
+ "typeDescriptions": {
2909
+ "typeIdentifier": "t_address",
2910
+ "typeString": "address"
2911
+ }
2912
+ },
2913
+ "value": null,
2914
+ "visibility": "internal"
2915
+ }
2916
+ ],
2917
+ "src": "889:23:23"
2918
+ },
2919
+ "scope": 5985,
2920
+ "src": "836:77:23",
2921
+ "stateMutability": "view",
2922
+ "superFunction": null,
2923
+ "visibility": "external"
2924
+ },
2925
+ {
2926
+ "body": null,
2927
+ "documentation": null,
2928
+ "id": 5925,
2929
+ "implemented": false,
2930
+ "kind": "function",
2931
+ "modifiers": [],
2932
+ "name": "allLendingPoolsLength",
2933
+ "nodeType": "FunctionDefinition",
2934
+ "parameters": {
2935
+ "id": 5921,
2936
+ "nodeType": "ParameterList",
2937
+ "parameters": [],
2938
+ "src": "946:2:23"
2939
+ },
2940
+ "returnParameters": {
2941
+ "id": 5924,
2942
+ "nodeType": "ParameterList",
2943
+ "parameters": [
2944
+ {
2945
+ "constant": false,
2946
+ "id": 5923,
2947
+ "name": "",
2948
+ "nodeType": "VariableDeclaration",
2949
+ "scope": 5925,
2950
+ "src": "972:4:23",
2951
+ "stateVariable": false,
2952
+ "storageLocation": "default",
2953
+ "typeDescriptions": {
2954
+ "typeIdentifier": "t_uint256",
2955
+ "typeString": "uint256"
2956
+ },
2957
+ "typeName": {
2958
+ "id": 5922,
2959
+ "name": "uint",
2960
+ "nodeType": "ElementaryTypeName",
2961
+ "src": "972:4:23",
2962
+ "typeDescriptions": {
2963
+ "typeIdentifier": "t_uint256",
2964
+ "typeString": "uint256"
2965
+ }
2966
+ },
2967
+ "value": null,
2968
+ "visibility": "internal"
2969
+ }
2970
+ ],
2971
+ "src": "971:6:23"
2972
+ },
2973
+ "scope": 5985,
2974
+ "src": "916:62:23",
2975
+ "stateMutability": "view",
2976
+ "superFunction": null,
2977
+ "visibility": "external"
2978
+ },
2979
+ {
2980
+ "body": null,
2981
+ "documentation": null,
2982
+ "id": 5930,
2983
+ "implemented": false,
2984
+ "kind": "function",
2985
+ "modifiers": [],
2986
+ "name": "bDeployer",
2987
+ "nodeType": "FunctionDefinition",
2988
+ "parameters": {
2989
+ "id": 5926,
2990
+ "nodeType": "ParameterList",
2991
+ "parameters": [],
2992
+ "src": "1002:2:23"
2993
+ },
2994
+ "returnParameters": {
2995
+ "id": 5929,
2996
+ "nodeType": "ParameterList",
2997
+ "parameters": [
2998
+ {
2999
+ "constant": false,
3000
+ "id": 5928,
3001
+ "name": "",
3002
+ "nodeType": "VariableDeclaration",
3003
+ "scope": 5930,
3004
+ "src": "1028:7:23",
3005
+ "stateVariable": false,
3006
+ "storageLocation": "default",
3007
+ "typeDescriptions": {
3008
+ "typeIdentifier": "t_address",
3009
+ "typeString": "address"
3010
+ },
3011
+ "typeName": {
3012
+ "id": 5927,
3013
+ "name": "address",
3014
+ "nodeType": "ElementaryTypeName",
3015
+ "src": "1028:7:23",
3016
+ "stateMutability": "nonpayable",
3017
+ "typeDescriptions": {
3018
+ "typeIdentifier": "t_address",
3019
+ "typeString": "address"
3020
+ }
3021
+ },
3022
+ "value": null,
3023
+ "visibility": "internal"
3024
+ }
3025
+ ],
3026
+ "src": "1027:9:23"
3027
+ },
3028
+ "scope": 5985,
3029
+ "src": "984:53:23",
3030
+ "stateMutability": "view",
3031
+ "superFunction": null,
3032
+ "visibility": "external"
3033
+ },
3034
+ {
3035
+ "body": null,
3036
+ "documentation": null,
3037
+ "id": 5935,
3038
+ "implemented": false,
3039
+ "kind": "function",
3040
+ "modifiers": [],
3041
+ "name": "cDeployer",
3042
+ "nodeType": "FunctionDefinition",
3043
+ "parameters": {
3044
+ "id": 5931,
3045
+ "nodeType": "ParameterList",
3046
+ "parameters": [],
3047
+ "src": "1058:2:23"
3048
+ },
3049
+ "returnParameters": {
3050
+ "id": 5934,
3051
+ "nodeType": "ParameterList",
3052
+ "parameters": [
3053
+ {
3054
+ "constant": false,
3055
+ "id": 5933,
3056
+ "name": "",
3057
+ "nodeType": "VariableDeclaration",
3058
+ "scope": 5935,
3059
+ "src": "1084:7:23",
3060
+ "stateVariable": false,
3061
+ "storageLocation": "default",
3062
+ "typeDescriptions": {
3063
+ "typeIdentifier": "t_address",
3064
+ "typeString": "address"
3065
+ },
3066
+ "typeName": {
3067
+ "id": 5932,
3068
+ "name": "address",
3069
+ "nodeType": "ElementaryTypeName",
3070
+ "src": "1084:7:23",
3071
+ "stateMutability": "nonpayable",
3072
+ "typeDescriptions": {
3073
+ "typeIdentifier": "t_address",
3074
+ "typeString": "address"
3075
+ }
3076
+ },
3077
+ "value": null,
3078
+ "visibility": "internal"
3079
+ }
3080
+ ],
3081
+ "src": "1083:9:23"
3082
+ },
3083
+ "scope": 5985,
3084
+ "src": "1040:53:23",
3085
+ "stateMutability": "view",
3086
+ "superFunction": null,
3087
+ "visibility": "external"
3088
+ },
3089
+ {
3090
+ "body": null,
3091
+ "documentation": null,
3092
+ "id": 5940,
3093
+ "implemented": false,
3094
+ "kind": "function",
3095
+ "modifiers": [],
3096
+ "name": "uniswapV2Factory",
3097
+ "nodeType": "FunctionDefinition",
3098
+ "parameters": {
3099
+ "id": 5936,
3100
+ "nodeType": "ParameterList",
3101
+ "parameters": [],
3102
+ "src": "1121:2:23"
3103
+ },
3104
+ "returnParameters": {
3105
+ "id": 5939,
3106
+ "nodeType": "ParameterList",
3107
+ "parameters": [
3108
+ {
3109
+ "constant": false,
3110
+ "id": 5938,
3111
+ "name": "",
3112
+ "nodeType": "VariableDeclaration",
3113
+ "scope": 5940,
3114
+ "src": "1147:7:23",
3115
+ "stateVariable": false,
3116
+ "storageLocation": "default",
3117
+ "typeDescriptions": {
3118
+ "typeIdentifier": "t_address",
3119
+ "typeString": "address"
3120
+ },
3121
+ "typeName": {
3122
+ "id": 5937,
3123
+ "name": "address",
3124
+ "nodeType": "ElementaryTypeName",
3125
+ "src": "1147:7:23",
3126
+ "stateMutability": "nonpayable",
3127
+ "typeDescriptions": {
3128
+ "typeIdentifier": "t_address",
3129
+ "typeString": "address"
3130
+ }
3131
+ },
3132
+ "value": null,
3133
+ "visibility": "internal"
3134
+ }
3135
+ ],
3136
+ "src": "1146:9:23"
3137
+ },
3138
+ "scope": 5985,
3139
+ "src": "1096:60:23",
3140
+ "stateMutability": "view",
3141
+ "superFunction": null,
3142
+ "visibility": "external"
3143
+ },
3144
+ {
3145
+ "body": null,
3146
+ "documentation": null,
3147
+ "id": 5945,
3148
+ "implemented": false,
3149
+ "kind": "function",
3150
+ "modifiers": [],
3151
+ "name": "simpleUniswapOracle",
3152
+ "nodeType": "FunctionDefinition",
3153
+ "parameters": {
3154
+ "id": 5941,
3155
+ "nodeType": "ParameterList",
3156
+ "parameters": [],
3157
+ "src": "1187:2:23"
3158
+ },
3159
+ "returnParameters": {
3160
+ "id": 5944,
3161
+ "nodeType": "ParameterList",
3162
+ "parameters": [
3163
+ {
3164
+ "constant": false,
3165
+ "id": 5943,
3166
+ "name": "",
3167
+ "nodeType": "VariableDeclaration",
3168
+ "scope": 5945,
3169
+ "src": "1213:7:23",
3170
+ "stateVariable": false,
3171
+ "storageLocation": "default",
3172
+ "typeDescriptions": {
3173
+ "typeIdentifier": "t_address",
3174
+ "typeString": "address"
3175
+ },
3176
+ "typeName": {
3177
+ "id": 5942,
3178
+ "name": "address",
3179
+ "nodeType": "ElementaryTypeName",
3180
+ "src": "1213:7:23",
3181
+ "stateMutability": "nonpayable",
3182
+ "typeDescriptions": {
3183
+ "typeIdentifier": "t_address",
3184
+ "typeString": "address"
3185
+ }
3186
+ },
3187
+ "value": null,
3188
+ "visibility": "internal"
3189
+ }
3190
+ ],
3191
+ "src": "1212:9:23"
3192
+ },
3193
+ "scope": 5985,
3194
+ "src": "1159:63:23",
3195
+ "stateMutability": "view",
3196
+ "superFunction": null,
3197
+ "visibility": "external"
3198
+ },
3199
+ {
3200
+ "body": null,
3201
+ "documentation": null,
3202
+ "id": 5952,
3203
+ "implemented": false,
3204
+ "kind": "function",
3205
+ "modifiers": [],
3206
+ "name": "createCollateral",
3207
+ "nodeType": "FunctionDefinition",
3208
+ "parameters": {
3209
+ "id": 5948,
3210
+ "nodeType": "ParameterList",
3211
+ "parameters": [
3212
+ {
3213
+ "constant": false,
3214
+ "id": 5947,
3215
+ "name": "uniswapV2Pair",
3216
+ "nodeType": "VariableDeclaration",
3217
+ "scope": 5952,
3218
+ "src": "1253:21:23",
3219
+ "stateVariable": false,
3220
+ "storageLocation": "default",
3221
+ "typeDescriptions": {
3222
+ "typeIdentifier": "t_address",
3223
+ "typeString": "address"
3224
+ },
3225
+ "typeName": {
3226
+ "id": 5946,
3227
+ "name": "address",
3228
+ "nodeType": "ElementaryTypeName",
3229
+ "src": "1253:7:23",
3230
+ "stateMutability": "nonpayable",
3231
+ "typeDescriptions": {
3232
+ "typeIdentifier": "t_address",
3233
+ "typeString": "address"
3234
+ }
3235
+ },
3236
+ "value": null,
3237
+ "visibility": "internal"
3238
+ }
3239
+ ],
3240
+ "src": "1252:23:23"
3241
+ },
3242
+ "returnParameters": {
3243
+ "id": 5951,
3244
+ "nodeType": "ParameterList",
3245
+ "parameters": [
3246
+ {
3247
+ "constant": false,
3248
+ "id": 5950,
3249
+ "name": "collateral",
3250
+ "nodeType": "VariableDeclaration",
3251
+ "scope": 5952,
3252
+ "src": "1294:18:23",
3253
+ "stateVariable": false,
3254
+ "storageLocation": "default",
3255
+ "typeDescriptions": {
3256
+ "typeIdentifier": "t_address",
3257
+ "typeString": "address"
3258
+ },
3259
+ "typeName": {
3260
+ "id": 5949,
3261
+ "name": "address",
3262
+ "nodeType": "ElementaryTypeName",
3263
+ "src": "1294:7:23",
3264
+ "stateMutability": "nonpayable",
3265
+ "typeDescriptions": {
3266
+ "typeIdentifier": "t_address",
3267
+ "typeString": "address"
3268
+ }
3269
+ },
3270
+ "value": null,
3271
+ "visibility": "internal"
3272
+ }
3273
+ ],
3274
+ "src": "1293:20:23"
3275
+ },
3276
+ "scope": 5985,
3277
+ "src": "1227:87:23",
3278
+ "stateMutability": "nonpayable",
3279
+ "superFunction": null,
3280
+ "visibility": "external"
3281
+ },
3282
+ {
3283
+ "body": null,
3284
+ "documentation": null,
3285
+ "id": 5959,
3286
+ "implemented": false,
3287
+ "kind": "function",
3288
+ "modifiers": [],
3289
+ "name": "createBorrowable0",
3290
+ "nodeType": "FunctionDefinition",
3291
+ "parameters": {
3292
+ "id": 5955,
3293
+ "nodeType": "ParameterList",
3294
+ "parameters": [
3295
+ {
3296
+ "constant": false,
3297
+ "id": 5954,
3298
+ "name": "uniswapV2Pair",
3299
+ "nodeType": "VariableDeclaration",
3300
+ "scope": 5959,
3301
+ "src": "1344:21:23",
3302
+ "stateVariable": false,
3303
+ "storageLocation": "default",
3304
+ "typeDescriptions": {
3305
+ "typeIdentifier": "t_address",
3306
+ "typeString": "address"
3307
+ },
3308
+ "typeName": {
3309
+ "id": 5953,
3310
+ "name": "address",
3311
+ "nodeType": "ElementaryTypeName",
3312
+ "src": "1344:7:23",
3313
+ "stateMutability": "nonpayable",
3314
+ "typeDescriptions": {
3315
+ "typeIdentifier": "t_address",
3316
+ "typeString": "address"
3317
+ }
3318
+ },
3319
+ "value": null,
3320
+ "visibility": "internal"
3321
+ }
3322
+ ],
3323
+ "src": "1343:23:23"
3324
+ },
3325
+ "returnParameters": {
3326
+ "id": 5958,
3327
+ "nodeType": "ParameterList",
3328
+ "parameters": [
3329
+ {
3330
+ "constant": false,
3331
+ "id": 5957,
3332
+ "name": "borrowable0",
3333
+ "nodeType": "VariableDeclaration",
3334
+ "scope": 5959,
3335
+ "src": "1385:19:23",
3336
+ "stateVariable": false,
3337
+ "storageLocation": "default",
3338
+ "typeDescriptions": {
3339
+ "typeIdentifier": "t_address",
3340
+ "typeString": "address"
3341
+ },
3342
+ "typeName": {
3343
+ "id": 5956,
3344
+ "name": "address",
3345
+ "nodeType": "ElementaryTypeName",
3346
+ "src": "1385:7:23",
3347
+ "stateMutability": "nonpayable",
3348
+ "typeDescriptions": {
3349
+ "typeIdentifier": "t_address",
3350
+ "typeString": "address"
3351
+ }
3352
+ },
3353
+ "value": null,
3354
+ "visibility": "internal"
3355
+ }
3356
+ ],
3357
+ "src": "1384:21:23"
3358
+ },
3359
+ "scope": 5985,
3360
+ "src": "1317:89:23",
3361
+ "stateMutability": "nonpayable",
3362
+ "superFunction": null,
3363
+ "visibility": "external"
3364
+ },
3365
+ {
3366
+ "body": null,
3367
+ "documentation": null,
3368
+ "id": 5966,
3369
+ "implemented": false,
3370
+ "kind": "function",
3371
+ "modifiers": [],
3372
+ "name": "createBorrowable1",
3373
+ "nodeType": "FunctionDefinition",
3374
+ "parameters": {
3375
+ "id": 5962,
3376
+ "nodeType": "ParameterList",
3377
+ "parameters": [
3378
+ {
3379
+ "constant": false,
3380
+ "id": 5961,
3381
+ "name": "uniswapV2Pair",
3382
+ "nodeType": "VariableDeclaration",
3383
+ "scope": 5966,
3384
+ "src": "1436:21:23",
3385
+ "stateVariable": false,
3386
+ "storageLocation": "default",
3387
+ "typeDescriptions": {
3388
+ "typeIdentifier": "t_address",
3389
+ "typeString": "address"
3390
+ },
3391
+ "typeName": {
3392
+ "id": 5960,
3393
+ "name": "address",
3394
+ "nodeType": "ElementaryTypeName",
3395
+ "src": "1436:7:23",
3396
+ "stateMutability": "nonpayable",
3397
+ "typeDescriptions": {
3398
+ "typeIdentifier": "t_address",
3399
+ "typeString": "address"
3400
+ }
3401
+ },
3402
+ "value": null,
3403
+ "visibility": "internal"
3404
+ }
3405
+ ],
3406
+ "src": "1435:23:23"
3407
+ },
3408
+ "returnParameters": {
3409
+ "id": 5965,
3410
+ "nodeType": "ParameterList",
3411
+ "parameters": [
3412
+ {
3413
+ "constant": false,
3414
+ "id": 5964,
3415
+ "name": "borrowable1",
3416
+ "nodeType": "VariableDeclaration",
3417
+ "scope": 5966,
3418
+ "src": "1477:19:23",
3419
+ "stateVariable": false,
3420
+ "storageLocation": "default",
3421
+ "typeDescriptions": {
3422
+ "typeIdentifier": "t_address",
3423
+ "typeString": "address"
3424
+ },
3425
+ "typeName": {
3426
+ "id": 5963,
3427
+ "name": "address",
3428
+ "nodeType": "ElementaryTypeName",
3429
+ "src": "1477:7:23",
3430
+ "stateMutability": "nonpayable",
3431
+ "typeDescriptions": {
3432
+ "typeIdentifier": "t_address",
3433
+ "typeString": "address"
3434
+ }
3435
+ },
3436
+ "value": null,
3437
+ "visibility": "internal"
3438
+ }
3439
+ ],
3440
+ "src": "1476:21:23"
3441
+ },
3442
+ "scope": 5985,
3443
+ "src": "1409:89:23",
3444
+ "stateMutability": "nonpayable",
3445
+ "superFunction": null,
3446
+ "visibility": "external"
3447
+ },
3448
+ {
3449
+ "body": null,
3450
+ "documentation": null,
3451
+ "id": 5971,
3452
+ "implemented": false,
3453
+ "kind": "function",
3454
+ "modifiers": [],
3455
+ "name": "initializeLendingPool",
3456
+ "nodeType": "FunctionDefinition",
3457
+ "parameters": {
3458
+ "id": 5969,
3459
+ "nodeType": "ParameterList",
3460
+ "parameters": [
3461
+ {
3462
+ "constant": false,
3463
+ "id": 5968,
3464
+ "name": "uniswapV2Pair",
3465
+ "nodeType": "VariableDeclaration",
3466
+ "scope": 5971,
3467
+ "src": "1532:21:23",
3468
+ "stateVariable": false,
3469
+ "storageLocation": "default",
3470
+ "typeDescriptions": {
3471
+ "typeIdentifier": "t_address",
3472
+ "typeString": "address"
3473
+ },
3474
+ "typeName": {
3475
+ "id": 5967,
3476
+ "name": "address",
3477
+ "nodeType": "ElementaryTypeName",
3478
+ "src": "1532:7:23",
3479
+ "stateMutability": "nonpayable",
3480
+ "typeDescriptions": {
3481
+ "typeIdentifier": "t_address",
3482
+ "typeString": "address"
3483
+ }
3484
+ },
3485
+ "value": null,
3486
+ "visibility": "internal"
3487
+ }
3488
+ ],
3489
+ "src": "1531:23:23"
3490
+ },
3491
+ "returnParameters": {
3492
+ "id": 5970,
3493
+ "nodeType": "ParameterList",
3494
+ "parameters": [],
3495
+ "src": "1563:0:23"
3496
+ },
3497
+ "scope": 5985,
3498
+ "src": "1501:63:23",
3499
+ "stateMutability": "nonpayable",
3500
+ "superFunction": null,
3501
+ "visibility": "external"
3502
+ },
3503
+ {
3504
+ "body": null,
3505
+ "documentation": null,
3506
+ "id": 5976,
3507
+ "implemented": false,
3508
+ "kind": "function",
3509
+ "modifiers": [],
3510
+ "name": "_setPendingAdmin",
3511
+ "nodeType": "FunctionDefinition",
3512
+ "parameters": {
3513
+ "id": 5974,
3514
+ "nodeType": "ParameterList",
3515
+ "parameters": [
3516
+ {
3517
+ "constant": false,
3518
+ "id": 5973,
3519
+ "name": "newPendingAdmin",
3520
+ "nodeType": "VariableDeclaration",
3521
+ "scope": 5976,
3522
+ "src": "1595:23:23",
3523
+ "stateVariable": false,
3524
+ "storageLocation": "default",
3525
+ "typeDescriptions": {
3526
+ "typeIdentifier": "t_address",
3527
+ "typeString": "address"
3528
+ },
3529
+ "typeName": {
3530
+ "id": 5972,
3531
+ "name": "address",
3532
+ "nodeType": "ElementaryTypeName",
3533
+ "src": "1595:7:23",
3534
+ "stateMutability": "nonpayable",
3535
+ "typeDescriptions": {
3536
+ "typeIdentifier": "t_address",
3537
+ "typeString": "address"
3538
+ }
3539
+ },
3540
+ "value": null,
3541
+ "visibility": "internal"
3542
+ }
3543
+ ],
3544
+ "src": "1594:25:23"
3545
+ },
3546
+ "returnParameters": {
3547
+ "id": 5975,
3548
+ "nodeType": "ParameterList",
3549
+ "parameters": [],
3550
+ "src": "1628:0:23"
3551
+ },
3552
+ "scope": 5985,
3553
+ "src": "1569:60:23",
3554
+ "stateMutability": "nonpayable",
3555
+ "superFunction": null,
3556
+ "visibility": "external"
3557
+ },
3558
+ {
3559
+ "body": null,
3560
+ "documentation": null,
3561
+ "id": 5979,
3562
+ "implemented": false,
3563
+ "kind": "function",
3564
+ "modifiers": [],
3565
+ "name": "_acceptAdmin",
3566
+ "nodeType": "FunctionDefinition",
3567
+ "parameters": {
3568
+ "id": 5977,
3569
+ "nodeType": "ParameterList",
3570
+ "parameters": [],
3571
+ "src": "1653:2:23"
3572
+ },
3573
+ "returnParameters": {
3574
+ "id": 5978,
3575
+ "nodeType": "ParameterList",
3576
+ "parameters": [],
3577
+ "src": "1664:0:23"
3578
+ },
3579
+ "scope": 5985,
3580
+ "src": "1632:33:23",
3581
+ "stateMutability": "nonpayable",
3582
+ "superFunction": null,
3583
+ "visibility": "external"
3584
+ },
3585
+ {
3586
+ "body": null,
3587
+ "documentation": null,
3588
+ "id": 5984,
3589
+ "implemented": false,
3590
+ "kind": "function",
3591
+ "modifiers": [],
3592
+ "name": "_setReservesManager",
3593
+ "nodeType": "FunctionDefinition",
3594
+ "parameters": {
3595
+ "id": 5982,
3596
+ "nodeType": "ParameterList",
3597
+ "parameters": [
3598
+ {
3599
+ "constant": false,
3600
+ "id": 5981,
3601
+ "name": "newReservesManager",
3602
+ "nodeType": "VariableDeclaration",
3603
+ "scope": 5984,
3604
+ "src": "1697:26:23",
3605
+ "stateVariable": false,
3606
+ "storageLocation": "default",
3607
+ "typeDescriptions": {
3608
+ "typeIdentifier": "t_address",
3609
+ "typeString": "address"
3610
+ },
3611
+ "typeName": {
3612
+ "id": 5980,
3613
+ "name": "address",
3614
+ "nodeType": "ElementaryTypeName",
3615
+ "src": "1697:7:23",
3616
+ "stateMutability": "nonpayable",
3617
+ "typeDescriptions": {
3618
+ "typeIdentifier": "t_address",
3619
+ "typeString": "address"
3620
+ }
3621
+ },
3622
+ "value": null,
3623
+ "visibility": "internal"
3624
+ }
3625
+ ],
3626
+ "src": "1696:28:23"
3627
+ },
3628
+ "returnParameters": {
3629
+ "id": 5983,
3630
+ "nodeType": "ParameterList",
3631
+ "parameters": [],
3632
+ "src": "1733:0:23"
3633
+ },
3634
+ "scope": 5985,
3635
+ "src": "1668:66:23",
3636
+ "stateMutability": "nonpayable",
3637
+ "superFunction": null,
3638
+ "visibility": "external"
3639
+ }
3640
+ ],
3641
+ "scope": 5986,
3642
+ "src": "28:1709:23"
3643
+ }
3644
+ ],
3645
+ "src": "0:1739:23"
3646
+ },
3647
+ "compiler": {
3648
+ "name": "solc",
3649
+ "version": "0.5.16+commit.9c3226ce.Emscripten.clang"
3650
+ },
3651
+ "networks": {},
3652
+ "schemaVersion": "3.3.2",
3653
+ "updatedAt": "2021-01-07T23:07:24.827Z",
3654
+ "devdoc": {
3655
+ "methods": {}
3656
+ },
3657
+ "userdoc": {
3658
+ "methods": {}
3659
+ }
3660
+ }