@venusprotocol/isolated-pools 4.3.0-dev.1 → 4.3.0-dev.3

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 (101) hide show
  1. package/deployments/arbitrumone/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_timeBased.json +552 -0
  2. package/deployments/arbitrumone/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  3. package/deployments/arbitrumone.json +352 -0
  4. package/deployments/arbitrumone_addresses.json +1 -0
  5. package/deployments/arbitrumsepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump25000bps_timeBased.json +552 -0
  6. package/deployments/arbitrumsepolia/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  7. package/deployments/arbitrumsepolia.json +352 -0
  8. package/deployments/arbitrumsepolia_addresses.json +1 -0
  9. package/deployments/basemainnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump25000bps_timeBased.json +552 -0
  10. package/deployments/basemainnet/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  11. package/deployments/basemainnet.json +352 -0
  12. package/deployments/basemainnet_addresses.json +1 -0
  13. package/deployments/basesepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump25000bps_timeBased.json +552 -0
  14. package/deployments/basesepolia/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  15. package/deployments/basesepolia.json +352 -0
  16. package/deployments/basesepolia_addresses.json +1 -0
  17. package/deployments/bscmainnet/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000.json +608 -0
  18. package/deployments/bscmainnet/JumpRateModelV2_base200bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000.json +608 -0
  19. package/deployments/bscmainnet/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  20. package/deployments/bscmainnet.json +797 -151
  21. package/deployments/bscmainnet_addresses.json +2 -1
  22. package/deployments/bsctestnet/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000.json +608 -0
  23. package/deployments/bsctestnet/JumpRateModelV2_base200bps_slope1000bps_jump25000bps_kink7000bps_bpy21024000.json +608 -0
  24. package/deployments/bsctestnet/JumpRateModelV2_base200bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000.json +608 -0
  25. package/deployments/bsctestnet/JumpRateModelV2_base200bps_slope1000bps_jump30000bps_kink5000bps_bpy21024000.json +608 -0
  26. package/deployments/bsctestnet/JumpRateModelV2_base200bps_slope1000bps_jump30000bps_kink7000bps_bpy21024000.json +608 -0
  27. package/deployments/bsctestnet/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  28. package/deployments/bsctestnet.json +1826 -26
  29. package/deployments/bsctestnet_addresses.json +5 -0
  30. package/deployments/ethereum/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy2628000.json +17 -17
  31. package/deployments/ethereum/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink9200bps_bpy2628000.json +608 -0
  32. package/deployments/ethereum/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy2628000.json +552 -0
  33. package/deployments/ethereum/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  34. package/deployments/ethereum.json +1644 -932
  35. package/deployments/ethereum_addresses.json +3 -1
  36. package/deployments/opbnbmainnet/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy63072000.json +608 -0
  37. package/deployments/opbnbmainnet/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  38. package/deployments/opbnbmainnet.json +360 -0
  39. package/deployments/opbnbmainnet_addresses.json +1 -0
  40. package/deployments/opbnbtestnet/JumpRateModelV2_base0bps_slope1000bps_jump8000bps_kink8000bps_bpy63072000.json +608 -0
  41. package/deployments/opbnbtestnet/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  42. package/deployments/opbnbtestnet.json +360 -0
  43. package/deployments/opbnbtestnet_addresses.json +1 -0
  44. package/deployments/sepolia/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy2628000.json +22 -22
  45. package/deployments/sepolia/JumpRateModelV2_base0bps_slope1000bps_jump25000bps_kink9200bps_bpy2628000.json +608 -0
  46. package/deployments/sepolia/JumpRateModelV2_base0bps_slope1000bps_jump30000bps_kink8000bps_bpy2628000.json +608 -0
  47. package/deployments/sepolia/JumpRateModelV2_base0bps_slope1000bps_jump8000bps_kink8000bps_bpy2628000.json +608 -0
  48. package/deployments/sepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump8000bps_bpy2628000.json +552 -0
  49. package/deployments/sepolia/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  50. package/deployments/sepolia.json +3177 -1745
  51. package/deployments/sepolia_addresses.json +5 -1
  52. package/deployments/unichainmainnet/JumpRateModelV2_base0bps_slope900bps_jump20000bps_kink4500bps_timeBased.json +608 -0
  53. package/deployments/unichainmainnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_timeBased.json +552 -0
  54. package/deployments/unichainmainnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump8000bps_timeBased.json +552 -0
  55. package/deployments/unichainmainnet/VToken_vUSD/342/202/2560_Core.json +257 -0
  56. package/deployments/unichainmainnet/VToken_vWBTC_Core.json +257 -0
  57. package/deployments/unichainmainnet/solcInputs/e39e34c59c5bc8d293cb758a621be058.json +460 -0
  58. package/deployments/unichainmainnet/solcInputs/f28d03c2f8781c2e1894b10843f4ae81.json +490 -0
  59. package/deployments/unichainmainnet.json +3900 -2688
  60. package/deployments/unichainmainnet_addresses.json +5 -0
  61. package/deployments/unichainsepolia/JumpRateModelV2_base0bps_slope900bps_jump20000bps_kink4500bps_timeBased.json +608 -0
  62. package/deployments/unichainsepolia/MockUSD/342/202/2560.json +458 -0
  63. package/deployments/unichainsepolia/MockWBTC.json +458 -0
  64. package/deployments/unichainsepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump25000bps_timeBased.json +552 -0
  65. package/deployments/unichainsepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump8000bps_timeBased.json +552 -0
  66. package/deployments/unichainsepolia/VToken_vUSD/342/202/2560_Core.json +257 -0
  67. package/deployments/unichainsepolia/VToken_vWBTC_Core.json +257 -0
  68. package/deployments/unichainsepolia/solcInputs/2779d74bb5f3dd850decc06e31b696d8.json +457 -0
  69. package/deployments/unichainsepolia/solcInputs/f28d03c2f8781c2e1894b10843f4ae81.json +490 -0
  70. package/deployments/unichainsepolia.json +4609 -2779
  71. package/deployments/unichainsepolia_addresses.json +7 -0
  72. package/deployments/zksyncmainnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_timeBased.json +651 -0
  73. package/deployments/zksyncmainnet/solcInputs/7d5e24cf7eed31f5c766d099cfd34b80.json +454 -0
  74. package/deployments/zksyncmainnet.json +352 -0
  75. package/deployments/zksyncmainnet_addresses.json +1 -0
  76. package/deployments/zksyncsepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump25000bps_timeBased.json +651 -0
  77. package/deployments/zksyncsepolia/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump8000bps_timeBased.json +613 -0
  78. package/deployments/zksyncsepolia/solcInputs/7d5e24cf7eed31f5c766d099cfd34b80.json +454 -0
  79. package/deployments/zksyncsepolia.json +704 -0
  80. package/deployments/zksyncsepolia_addresses.json +2 -0
  81. package/dist/deployments/arbitrumone.json +352 -0
  82. package/dist/deployments/arbitrumsepolia.json +352 -0
  83. package/dist/deployments/basemainnet.json +352 -0
  84. package/dist/deployments/basesepolia.json +352 -0
  85. package/dist/deployments/bscmainnet.json +797 -151
  86. package/dist/deployments/bsctestnet.json +1826 -26
  87. package/dist/deployments/ethereum.json +1644 -932
  88. package/dist/deployments/opbnbmainnet.json +360 -0
  89. package/dist/deployments/opbnbtestnet.json +360 -0
  90. package/dist/deployments/sepolia.json +3177 -1745
  91. package/dist/deployments/unichainmainnet.json +3900 -2688
  92. package/dist/deployments/unichainsepolia.json +4609 -2779
  93. package/dist/deployments/zksyncmainnet.json +352 -0
  94. package/dist/deployments/zksyncsepolia.json +704 -0
  95. package/dist/helpers/deploymentConfig.js +218 -79
  96. package/dist/typechain/factories/IVToken__factory.d.ts +1 -5
  97. package/dist/typechain/factories/IVToken__factory.js +1 -201
  98. package/package.json +1 -1
  99. package/typechain/IVToken.d.ts +4 -341
  100. package/typechain/factories/IVToken__factory.ts +1 -201
  101. package/deployments/bscmainnet/VToken_vHAY_Stablecoins.json +0 -246
@@ -0,0 +1,613 @@
1
+ {
2
+ "address": "0x73cF3585bE170f3813E1C26eBc0fd9042daCFB30",
3
+ "abi": [
4
+ {
5
+ "inputs": [
6
+ {
7
+ "internalType": "int256",
8
+ "name": "baseRatePerYear_",
9
+ "type": "int256"
10
+ },
11
+ {
12
+ "internalType": "int256",
13
+ "name": "multiplierPerYear_",
14
+ "type": "int256"
15
+ },
16
+ {
17
+ "internalType": "int256",
18
+ "name": "kink1_",
19
+ "type": "int256"
20
+ },
21
+ {
22
+ "internalType": "int256",
23
+ "name": "multiplier2PerYear_",
24
+ "type": "int256"
25
+ },
26
+ {
27
+ "internalType": "int256",
28
+ "name": "baseRate2PerYear_",
29
+ "type": "int256"
30
+ },
31
+ {
32
+ "internalType": "int256",
33
+ "name": "kink2_",
34
+ "type": "int256"
35
+ },
36
+ {
37
+ "internalType": "int256",
38
+ "name": "jumpMultiplierPerYear_",
39
+ "type": "int256"
40
+ },
41
+ {
42
+ "internalType": "bool",
43
+ "name": "timeBased_",
44
+ "type": "bool"
45
+ },
46
+ {
47
+ "internalType": "uint256",
48
+ "name": "blocksPerYear_",
49
+ "type": "uint256"
50
+ }
51
+ ],
52
+ "stateMutability": "nonpayable",
53
+ "type": "constructor"
54
+ },
55
+ {
56
+ "inputs": [],
57
+ "name": "InvalidBlocksPerYear",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [],
62
+ "name": "InvalidKink",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "inputs": [],
67
+ "name": "InvalidTimeBasedConfiguration",
68
+ "type": "error"
69
+ },
70
+ {
71
+ "inputs": [],
72
+ "name": "NegativeValueNotAllowed",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [],
77
+ "name": "BASE_RATE_2_PER_BLOCK_OR_SECOND",
78
+ "outputs": [
79
+ {
80
+ "internalType": "int256",
81
+ "name": "",
82
+ "type": "int256"
83
+ }
84
+ ],
85
+ "stateMutability": "view",
86
+ "type": "function"
87
+ },
88
+ {
89
+ "inputs": [],
90
+ "name": "BASE_RATE_PER_BLOCK_OR_SECOND",
91
+ "outputs": [
92
+ {
93
+ "internalType": "int256",
94
+ "name": "",
95
+ "type": "int256"
96
+ }
97
+ ],
98
+ "stateMutability": "view",
99
+ "type": "function"
100
+ },
101
+ {
102
+ "inputs": [],
103
+ "name": "JUMP_MULTIPLIER_PER_BLOCK_OR_SECOND",
104
+ "outputs": [
105
+ {
106
+ "internalType": "int256",
107
+ "name": "",
108
+ "type": "int256"
109
+ }
110
+ ],
111
+ "stateMutability": "view",
112
+ "type": "function"
113
+ },
114
+ {
115
+ "inputs": [],
116
+ "name": "KINK_1",
117
+ "outputs": [
118
+ {
119
+ "internalType": "int256",
120
+ "name": "",
121
+ "type": "int256"
122
+ }
123
+ ],
124
+ "stateMutability": "view",
125
+ "type": "function"
126
+ },
127
+ {
128
+ "inputs": [],
129
+ "name": "KINK_2",
130
+ "outputs": [
131
+ {
132
+ "internalType": "int256",
133
+ "name": "",
134
+ "type": "int256"
135
+ }
136
+ ],
137
+ "stateMutability": "view",
138
+ "type": "function"
139
+ },
140
+ {
141
+ "inputs": [],
142
+ "name": "MULTIPLIER_2_PER_BLOCK_OR_SECOND",
143
+ "outputs": [
144
+ {
145
+ "internalType": "int256",
146
+ "name": "",
147
+ "type": "int256"
148
+ }
149
+ ],
150
+ "stateMutability": "view",
151
+ "type": "function"
152
+ },
153
+ {
154
+ "inputs": [],
155
+ "name": "MULTIPLIER_PER_BLOCK_OR_SECOND",
156
+ "outputs": [
157
+ {
158
+ "internalType": "int256",
159
+ "name": "",
160
+ "type": "int256"
161
+ }
162
+ ],
163
+ "stateMutability": "view",
164
+ "type": "function"
165
+ },
166
+ {
167
+ "inputs": [],
168
+ "name": "RATE_1",
169
+ "outputs": [
170
+ {
171
+ "internalType": "int256",
172
+ "name": "",
173
+ "type": "int256"
174
+ }
175
+ ],
176
+ "stateMutability": "view",
177
+ "type": "function"
178
+ },
179
+ {
180
+ "inputs": [],
181
+ "name": "RATE_2",
182
+ "outputs": [
183
+ {
184
+ "internalType": "int256",
185
+ "name": "",
186
+ "type": "int256"
187
+ }
188
+ ],
189
+ "stateMutability": "view",
190
+ "type": "function"
191
+ },
192
+ {
193
+ "inputs": [],
194
+ "name": "blocksOrSecondsPerYear",
195
+ "outputs": [
196
+ {
197
+ "internalType": "uint256",
198
+ "name": "",
199
+ "type": "uint256"
200
+ }
201
+ ],
202
+ "stateMutability": "view",
203
+ "type": "function"
204
+ },
205
+ {
206
+ "inputs": [],
207
+ "name": "getBlockNumberOrTimestamp",
208
+ "outputs": [
209
+ {
210
+ "internalType": "uint256",
211
+ "name": "",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "stateMutability": "view",
216
+ "type": "function"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "uint256",
222
+ "name": "cash",
223
+ "type": "uint256"
224
+ },
225
+ {
226
+ "internalType": "uint256",
227
+ "name": "borrows",
228
+ "type": "uint256"
229
+ },
230
+ {
231
+ "internalType": "uint256",
232
+ "name": "reserves",
233
+ "type": "uint256"
234
+ },
235
+ {
236
+ "internalType": "uint256",
237
+ "name": "badDebt",
238
+ "type": "uint256"
239
+ }
240
+ ],
241
+ "name": "getBorrowRate",
242
+ "outputs": [
243
+ {
244
+ "internalType": "uint256",
245
+ "name": "",
246
+ "type": "uint256"
247
+ }
248
+ ],
249
+ "stateMutability": "view",
250
+ "type": "function"
251
+ },
252
+ {
253
+ "inputs": [
254
+ {
255
+ "internalType": "uint256",
256
+ "name": "cash",
257
+ "type": "uint256"
258
+ },
259
+ {
260
+ "internalType": "uint256",
261
+ "name": "borrows",
262
+ "type": "uint256"
263
+ },
264
+ {
265
+ "internalType": "uint256",
266
+ "name": "reserves",
267
+ "type": "uint256"
268
+ },
269
+ {
270
+ "internalType": "uint256",
271
+ "name": "reserveFactorMantissa",
272
+ "type": "uint256"
273
+ },
274
+ {
275
+ "internalType": "uint256",
276
+ "name": "badDebt",
277
+ "type": "uint256"
278
+ }
279
+ ],
280
+ "name": "getSupplyRate",
281
+ "outputs": [
282
+ {
283
+ "internalType": "uint256",
284
+ "name": "",
285
+ "type": "uint256"
286
+ }
287
+ ],
288
+ "stateMutability": "view",
289
+ "type": "function"
290
+ },
291
+ {
292
+ "inputs": [],
293
+ "name": "isInterestRateModel",
294
+ "outputs": [
295
+ {
296
+ "internalType": "bool",
297
+ "name": "",
298
+ "type": "bool"
299
+ }
300
+ ],
301
+ "stateMutability": "pure",
302
+ "type": "function"
303
+ },
304
+ {
305
+ "inputs": [],
306
+ "name": "isTimeBased",
307
+ "outputs": [
308
+ {
309
+ "internalType": "bool",
310
+ "name": "",
311
+ "type": "bool"
312
+ }
313
+ ],
314
+ "stateMutability": "view",
315
+ "type": "function"
316
+ },
317
+ {
318
+ "inputs": [
319
+ {
320
+ "internalType": "uint256",
321
+ "name": "cash",
322
+ "type": "uint256"
323
+ },
324
+ {
325
+ "internalType": "uint256",
326
+ "name": "borrows",
327
+ "type": "uint256"
328
+ },
329
+ {
330
+ "internalType": "uint256",
331
+ "name": "reserves",
332
+ "type": "uint256"
333
+ },
334
+ {
335
+ "internalType": "uint256",
336
+ "name": "badDebt",
337
+ "type": "uint256"
338
+ }
339
+ ],
340
+ "name": "utilizationRate",
341
+ "outputs": [
342
+ {
343
+ "internalType": "uint256",
344
+ "name": "",
345
+ "type": "uint256"
346
+ }
347
+ ],
348
+ "stateMutability": "pure",
349
+ "type": "function"
350
+ }
351
+ ],
352
+ "transactionHash": "0x47a262434ac110d5a95bb5eb93d83f126a8d9f89935b7fcbf353887101d2e8d1",
353
+ "receipt": {
354
+ "to": "0x0000000000000000000000000000000000008006",
355
+ "from": "0x4d5E5466D79088B81f85A5ab6dE24Db46343EdD0",
356
+ "contractAddress": "0x73cF3585bE170f3813E1C26eBc0fd9042daCFB30",
357
+ "transactionIndex": 0,
358
+ "gasUsed": "196434",
359
+ "logsBloom": "0x00000000020400000000000000000000000000000000000000000000000000000000000000000000000040000000000080000000000000000000000000000000000000000000040010000008000040000000000044000000000000000000080000000000000000000000000000000000000000000000000000000010000000000000000000000000000004000000000000000100000000000000000000000000000000000000100000000200800000002000000000000000002000010000000000000002008000000000000000000000000000000100000000000000000000000000000000000000020000000000000000000000000000000000000000000000",
360
+ "blockHash": "0xde9fd41eb51c093984254544c6b693caef799914b096b0168857fc8770d9b11c",
361
+ "transactionHash": "0x47a262434ac110d5a95bb5eb93d83f126a8d9f89935b7fcbf353887101d2e8d1",
362
+ "logs": [
363
+ {
364
+ "transactionIndex": 0,
365
+ "blockNumber": 5209415,
366
+ "transactionHash": "0x47a262434ac110d5a95bb5eb93d83f126a8d9f89935b7fcbf353887101d2e8d1",
367
+ "address": "0x000000000000000000000000000000000000800A",
368
+ "topics": [
369
+ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
370
+ "0x0000000000000000000000004d5e5466d79088b81f85a5ab6de24db46343edd0",
371
+ "0x0000000000000000000000000000000000000000000000000000000000008001"
372
+ ],
373
+ "data": "0x00000000000000000000000000000000000000000000000000000aa5249ab400",
374
+ "logIndex": 0,
375
+ "blockHash": "0xde9fd41eb51c093984254544c6b693caef799914b096b0168857fc8770d9b11c"
376
+ },
377
+ {
378
+ "transactionIndex": 0,
379
+ "blockNumber": 5209415,
380
+ "transactionHash": "0x47a262434ac110d5a95bb5eb93d83f126a8d9f89935b7fcbf353887101d2e8d1",
381
+ "address": "0x0000000000000000000000000000000000008006",
382
+ "topics": [
383
+ "0x290afdae231a3fc0bbae8b1af63698b0a1d79b21ad17df0342dfb952fe74f8e5",
384
+ "0x0000000000000000000000004d5e5466d79088b81f85a5ab6de24db46343edd0",
385
+ "0x01000173da8abd19059b8d84f16b0b94e7fe0772568ce7a1655cfcb0b42e88fc",
386
+ "0x00000000000000000000000073cf3585be170f3813e1c26ebc0fd9042dacfb30"
387
+ ],
388
+ "data": "0x",
389
+ "logIndex": 1,
390
+ "blockHash": "0xde9fd41eb51c093984254544c6b693caef799914b096b0168857fc8770d9b11c"
391
+ },
392
+ {
393
+ "transactionIndex": 0,
394
+ "blockNumber": 5209415,
395
+ "transactionHash": "0x47a262434ac110d5a95bb5eb93d83f126a8d9f89935b7fcbf353887101d2e8d1",
396
+ "address": "0x000000000000000000000000000000000000800A",
397
+ "topics": [
398
+ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
399
+ "0x0000000000000000000000000000000000000000000000000000000000008001",
400
+ "0x0000000000000000000000004d5e5466d79088b81f85a5ab6de24db46343edd0"
401
+ ],
402
+ "data": "0x0000000000000000000000000000000000000000000000000000062dbf226f80",
403
+ "logIndex": 2,
404
+ "blockHash": "0xde9fd41eb51c093984254544c6b693caef799914b096b0168857fc8770d9b11c"
405
+ }
406
+ ],
407
+ "blockNumber": 5209415,
408
+ "cumulativeGasUsed": "0",
409
+ "status": 1,
410
+ "byzantium": true
411
+ },
412
+ "args": [
413
+ "0",
414
+ "100000000000000000",
415
+ "800000000000000000",
416
+ "700000000000000000",
417
+ "0",
418
+ "900000000000000000",
419
+ "800000000000000000",
420
+ true,
421
+ 0
422
+ ],
423
+ "numDeployments": 1,
424
+ "solcInputHash": "7d5e24cf7eed31f5c766d099cfd34b80",
425
+ "metadata": {
426
+ "llvm_options": [],
427
+ "optimizer_settings": {
428
+ "is_debug_logging_enabled": false,
429
+ "is_fallback_to_size_enabled": false,
430
+ "is_verify_each_enabled": false,
431
+ "level_back_end": "Aggressive",
432
+ "level_middle_end": "Aggressive",
433
+ "level_middle_end_size": "Zero"
434
+ },
435
+ "solc_version": "0.8.25",
436
+ "solc_zkvm_edition": "1.0.2",
437
+ "source_metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.d94a798c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"baseRatePerYear_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"multiplierPerYear_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"kink1_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"multiplier2PerYear_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"baseRate2PerYear_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"kink2_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"jumpMultiplierPerYear_\",\"type\":\"int256\"},{\"internalType\":\"bool\",\"name\":\"timeBased_\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"blocksPerYear_\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"InvalidBlocksPerYear\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidKink\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidTimeBasedConfiguration\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NegativeValueNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BASE_RATE_2_PER_BLOCK_OR_SECOND\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BASE_RATE_PER_BLOCK_OR_SECOND\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"JUMP_MULTIPLIER_PER_BLOCK_OR_SECOND\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"KINK_1\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"KINK_2\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MULTIPLIER_2_PER_BLOCK_OR_SECOND\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MULTIPLIER_PER_BLOCK_OR_SECOND\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RATE_1\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RATE_2\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"blocksOrSecondsPerYear\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBlockNumberOrTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"borrows\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserves\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"badDebt\",\"type\":\"uint256\"}],\"name\":\"getBorrowRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"borrows\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserves\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserveFactorMantissa\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"badDebt\",\"type\":\"uint256\"}],\"name\":\"getSupplyRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isInterestRateModel\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isTimeBased\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"borrows\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserves\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"badDebt\",\"type\":\"uint256\"}],\"name\":\"utilizationRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Venus\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"baseRate2PerYear_\":\"The additonal base APR after hitting KINK_1, as a mantissa (scaled by EXP_SCALE)\",\"baseRatePerYear_\":\"The approximate target base APR, as a mantissa (scaled by EXP_SCALE)\",\"blocksPerYear_\":\"The number of blocks per year\",\"jumpMultiplierPerYear_\":\"The multiplier after hitting KINK_2\",\"kink1_\":\"The utilization point at which the multiplier2 is applied\",\"kink2_\":\"The utilization point at which the jump multiplier is applied\",\"multiplier2PerYear_\":\"The rate of increase or decrease in interest rate wrt utilization after hitting KINK_1 (scaled by EXP_SCALE)\",\"multiplierPerYear_\":\"The rate of increase or decrease in interest rate wrt utilization (scaled by EXP_SCALE)\",\"timeBased_\":\"A boolean indicating whether the contract is based on time or block.\"}},\"getBlockNumberOrTimestamp()\":{\"details\":\"Function to simply retrieve block number or block timestamp\",\"returns\":{\"_0\":\"Current block number or block timestamp\"}},\"getBorrowRate(uint256,uint256,uint256,uint256)\":{\"params\":{\"badDebt\":\"The amount of badDebt in the market\",\"borrows\":\"The amount of borrows in the market\",\"cash\":\"The amount of cash in the market\",\"reserves\":\"The amount of reserves in the market\"},\"returns\":{\"_0\":\"The borrow rate percentage per slot (block or second) as a mantissa (scaled by EXP_SCALE)\"}},\"getSupplyRate(uint256,uint256,uint256,uint256,uint256)\":{\"params\":{\"badDebt\":\"The amount of badDebt in the market\",\"borrows\":\"The amount of borrows in the market\",\"cash\":\"The amount of cash in the market\",\"reserveFactorMantissa\":\"The current reserve factor for the market\",\"reserves\":\"The amount of reserves in the market\"},\"returns\":{\"_0\":\"The supply rate percentage per slot (block or second) as a mantissa (scaled by EXP_SCALE)\"}},\"isInterestRateModel()\":{\"returns\":{\"_0\":\"Always true\"}},\"utilizationRate(uint256,uint256,uint256,uint256)\":{\"params\":{\"badDebt\":\"The amount of badDebt in the market\",\"borrows\":\"The amount of borrows in the market\",\"cash\":\"The amount of cash in the market\",\"reserves\":\"The amount of reserves in the market (currently unused)\"},\"returns\":{\"_0\":\"The utilization rate as a mantissa between [0, MANTISSA_ONE]\"}}},\"title\":\"TwoKinksInterestRateModel\",\"version\":1},\"userdoc\":{\"errors\":{\"InvalidBlocksPerYear()\":[{\"notice\":\"Thrown when blocks per year is invalid\"}],\"InvalidKink()\":[{\"notice\":\"Thrown when the kink points are not in the correct order\"}],\"InvalidTimeBasedConfiguration()\":[{\"notice\":\"Thrown when time based but blocks per year is provided\"}],\"NegativeValueNotAllowed()\":[{\"notice\":\"Thrown when a negative value is not allowed\"}]},\"kind\":\"user\",\"methods\":{\"BASE_RATE_2_PER_BLOCK_OR_SECOND()\":{\"notice\":\"The base interest rate per block or second which is the y-intercept when utilization rate hits KINK_1 scaled by EXP_SCALE\"},\"BASE_RATE_PER_BLOCK_OR_SECOND()\":{\"notice\":\"The base interest rate per block or second which is the y-intercept when utilization rate is 0 scaled by EXP_SCALE\"},\"JUMP_MULTIPLIER_PER_BLOCK_OR_SECOND()\":{\"notice\":\"The multiplier of utilization rate per block or second that gives the slope 3 of interest rate scaled by EXP_SCALE\"},\"KINK_1()\":{\"notice\":\"The utilization point at which the multiplier2 is applied\"},\"KINK_2()\":{\"notice\":\"The utilization point at which the jump multiplier is applied\"},\"MULTIPLIER_2_PER_BLOCK_OR_SECOND()\":{\"notice\":\"The multiplier of utilization rate per block or second that gives the slope 2 of the interest rate scaled by EXP_SCALE\"},\"MULTIPLIER_PER_BLOCK_OR_SECOND()\":{\"notice\":\"The multiplier of utilization rate per block or second that gives the slope 1 of the interest rate scaled by EXP_SCALE\"},\"RATE_1()\":{\"notice\":\"The maximum kink interest rate scaled by EXP_SCALE\"},\"RATE_2()\":{\"notice\":\"The maximum kink interest rate scaled by EXP_SCALE\"},\"blocksOrSecondsPerYear()\":{\"notice\":\"Stores blocksPerYear if isTimeBased is true else secondsPerYear is stored\"},\"constructor\":{\"notice\":\"Construct an interest rate model\"},\"getBorrowRate(uint256,uint256,uint256,uint256)\":{\"notice\":\"Calculates the current borrow rate per slot (block or second)\"},\"getSupplyRate(uint256,uint256,uint256,uint256,uint256)\":{\"notice\":\"Calculates the current supply rate per slot (block or second)\"},\"isInterestRateModel()\":{\"notice\":\"Indicator that this is an InterestRateModel contract (for inspection)\"},\"isTimeBased()\":{\"notice\":\"Acknowledges if a contract is time based or not\"},\"utilizationRate(uint256,uint256,uint256,uint256)\":{\"notice\":\"Calculates the utilization rate of the market: `(borrows + badDebt) / (cash + borrows + badDebt - reserves)`\"}},\"notice\":\"An interest rate model with two different slope increase or decrease each after a certain utilization threshold called **kink** is reached.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/TwoKinksInterestRateModel.sol\":\"TwoKinksInterestRateModel\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"details\":{\"constantOptimizer\":false,\"cse\":false,\"deduplicate\":false,\"inliner\":false,\"jumpdestRemover\":false,\"orderLiterals\":false,\"peephole\":false,\"simpleCounterForLoopUncheckedIncrement\":true,\"yul\":true,\"yulDetails\":{\"optimizerSteps\":\"dhfoDgvulfnTUtnIf[xa[r]EscLMcCTUtTOntnfDIulLculVcul [j]Tpeulxa[rul]xa[r]cLgvifCTUca[r]LSsTFOtfDnca[r]Iulc]jmul[jul] VcTOcul jmul:fDnTOcmu\",\"stackAllocation\":true}},\"runs\":200},\"remappings\":[]},\"sources\":{\"@venusprotocol/solidity-utilities/contracts/TimeManagerV8.sol\":{\"keccak256\":\"0x57a2bbb9b8e02b1c0a5c0e305fef1328a22db56c3d4b148c362010a6e767243c\",\"license\":\"BSD-3-Clause\",\"urls\":[\"bzz-raw://01c6af010cbff93563f2175d48702f5d901beb59b0e3315ed2a5583dfa53ee21\",\"dweb:/ipfs/QmY7sfvoQ1kEQtLhPdSA3bQdV4u3hT563RSvuCtgSrQUmx\"]},\"@venusprotocol/solidity-utilities/contracts/constants.sol\":{\"keccak256\":\"0x14de93ead464da249af31bea0e3bcfb62ec693bea3475fb4d90f055ac81dc5eb\",\"license\":\"BSD-3-Clause\",\"urls\":[\"bzz-raw://6134b92b2bc5bad1c6e088d0d092736eede6dfe2cf7dadc573f1396a9d690274\",\"dweb:/ipfs/QmXwKV4SY7CdCaCaDqXudcLxVLB4vUfbwMiH9kH6HhWpiy\"]},\"contracts/InterestRateModel.sol\":{\"keccak256\":\"0xc4fda1ab75ebe4b187b707c4f10c58780f343cf343c537f641dc75d3cd28ab51\",\"license\":\"BSD-3-Clause\",\"urls\":[\"bzz-raw://8cf703e1c44ebd4977200275e7c8c480081f1f6f54bedb6b0a070af04a8c733d\",\"dweb:/ipfs/QmUNCCcYZxftVaf4SdqXUpjeeyNe9Kqr45dbNguBGY5X1h\"]},\"contracts/TwoKinksInterestRateModel.sol\":{\"keccak256\":\"0x4967cdef63fd2095fbaae94fd426d0900f8c785d64f135fe03a1f83ba290f9b6\",\"license\":\"BSD-3-Clause\",\"urls\":[\"bzz-raw://5c59e89a5b5e8113e18fab148a440f28db4f6ea30ba3b44d3e13af6fb83a7842\",\"dweb:/ipfs/Qmabm9ogKsYdHAVdJK7QKVzN42mjeuLtPDLrKhsuiTVqZM\"]},\"contracts/lib/constants.sol\":{\"keccak256\":\"0x54ab3a6f3bc87569ed12370f3470a1ec84cea9796d4d0ccf3d07dd4280c044aa\",\"license\":\"BSD-3-Clause\",\"urls\":[\"bzz-raw://be1b725f8bf381f0a0e14b5fc676fcd38fbcbda868f6ec0b5163cfa4cb25e548\",\"dweb:/ipfs/QmdDLtw2sVdVy8RhHWeoNVaEzQJhykgbHdPrGeFRKRcPgw\"]}},\"version\":1}",
438
+ "zk_version": "1.5.3"
439
+ },
440
+ "bytecode": "0x0001000000000002001d000000000002000000000901034f000000000009035500000000010900190000006001100270000001400110019700000001002001900000001f0000c13d0000008002000039000000400020043f000000040010008c000002000000413d000000000209043b000000e0022002700000014d0020009c000000540000213d000001590020009c000000670000213d0000015f0020009c000000890000213d000001620020009c0000015f0000613d000001630020009c000002000000c13d0000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02c40000040f000001ce0000013d0000000002000416000000000002004b000002000000c13d0000001f0210003900000141022001970000020002200039000000400020043f0000001f0410018f00000142051001980000020002500039000000300000613d0000020006000039000000000709034f000000007807043c0000000006860436000000000026004b0000002c0000c13d000000000004004b0000003d0000613d000000000359034f0000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000320435000001200010008c000002000000413d000002e00400043d000000000004004b0000000001000039000000010100c039000000000014004b000002000000c13d000002c00600043d000002a00700043d000002800900043d000002600a00043d000002400b00043d000002200c00043d000002000100043d000003000200043d000000000004004b000000980000613d000000000002004b000000ca0000c13d00000145020000410000000103000039000000ce0000013d0000014e0020009c000000780000213d000001540020009c0000009d0000213d000001570020009c0000016a0000613d000001580020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001100000001001d001000000000003d000080050100003900000044030000390000000004000415000000110440008a000001df0000013d0000015a0020009c000000ac0000213d0000015d0020009c000001750000613d0000015e0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001900000001001d001800800000003d000080050100003900000044030000390000000004000415000000190440008a000001df0000013d0000014f0020009c000000bb0000213d000001520020009c0000017c0000613d000001530020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000b00000001001d000a00e00000003d0000800501000039000000440300003900000000040004150000000b0440008a000001df0000013d000001600020009c0000018f0000613d000001610020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001b00000001001d001a01400000003d0000800501000039000000440300003900000000040004150000001b0440008a000001df0000013d000000000002004b000000cd0000c13d000000400100043d0000014302000041000002040000013d000001550020009c000001c90000613d000001560020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000f00000001001d000e00600000003d0000800501000039000000440300003900000000040004150000000f0440008a000001df0000013d0000015b0020009c000001d50000613d0000015c0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001500000001001d001400a00000003d000080050100003900000044030000390000000004000415000000150440008a000001df0000013d000001500020009c000001e50000613d000001510020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000900000001001d000800c00000003d000080050100003900000044030000390000000004000415000000090440008a000001df0000013d000000400100043d0000014602000041000002040000013d0000000203000039000000a00040043f000000800020043f000000c00030043f000001470010009c0000015c0000213d000001480090009c0000015c0000813d0000014700b0009c000002020000213d00000000000b004b000002020000613d0000000000b7004b000000000800001900000148080020410000014803b001970000014804700197000000000534013f000000000034004b00000000030000190000014803004041000001480050009c000000000308c019000000000003004b000002020000613d000600000006001d000500000007001d000700000002001d000400000009001d00030000000a001d00020000000b001d00010000000c001d04fd02260000040f000001000010043f0000000101000029000000070200002904fd02260000040f000000e00010043f0000000201000029000001200010043f0000000301000029000000070200002904fd02260000040f000001400010043f0000000401000029000000070200002904fd02260000040f000001600010043f0000000501000029000001a00010043f0000000601000029000000070200002904fd02260000040f000001c00010043f000001200100043d000000e00200043d04fd02450000040f000001482110012c000001480220c09900000148030000410006014b40300133000000060310014f000001480440c099000700000004001d00000000014200d9000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001000200043d04fd02670000040f000001800010043f000001200100043d000001a00200043d0000000001120049000001400200043d04fd02450000040f000001482110012c000000060310014f000001480220c09900000007012000fa000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001600200043d04fd02670000040f000001e00010043f000000800200043d000001400000044300000160002004430000002002000039000000a00300043d0000018000200443000001a0003004430000004003000039000000c00400043d000001c000300443000001e0004004430000006003000039000000e00400043d000002000030044300000220004004430000008003000039000001000400043d00000240003004430000026000400443000000a003000039000001200400043d0000028000300443000002a000400443000000c003000039000001400400043d000002c000300443000002e000400443000000e003000039000001600400043d000003000030044300000320004004430000010003000039000001800400043d000003400030044300000360004004430000012003000039000001a00400043d0000038000300443000003a0004004430000014003000039000001c00400043d000003c000300443000003e00040044300000160030000390000040000300443000004200010044300000100002004430000000c0100003900000120001004430000014c01000041000004fe0001042e000000400100043d0000014902000041000002040000013d0000000001000416000000000001004b000002000000c13d0000000001000412001d00000001001d001c01000000003d0000800501000039000000440300003900000000040004150000001d0440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000001000412001300000001001d001201600000003d000080050100003900000044030000390000000004000415000000130440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000101000039000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412000d00000001001d000c00200000003d0000800501000039000000440300003900000000040004150000000d0440008a0000000504400210000001640200004104fd04da0000040f000000000001004b0000000001000039000000010100c039000000800010043f0000016501000041000004fe0001042e000000a40010008c000002000000413d0000000001000416000000000001004b000002000000c13d0000008401900370000000000401043b0000004401900370000000000301043b0000006401900370000000000101043b0000016d0010009c0000020a0000813d000500000001001d0000000401900370000000000101043b000400000001001d0000002402900370000000000202043b000300000002001d000700000004001d0000000704000029000600000003001d04fd02c40000040f000000030700002900000004060000290000000605000029000000070400002900000005020000290000014b0320009900000000023100a9000000000001004b000001b30000613d00000000011200d9000000000031004b0000020a0000c13d0000014b0220012a00000000017200a9000000000007004b000001ba0000613d00000000037100d9000000000023004b0000020a0000c13d000000000076001a0000020a0000413d0000000002760019000000000042001a0000020a0000413d0000000002420019000000000252004b0000020a0000413d000002240000c13d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02a10000040f000000400200043d0000000000120435000001400020009c000001400200804100000040012002100000016a011001c7000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412001700000001001d001601200000003d000080050100003900000044030000390000000004000415000000170440008a0000000504400210000001640200004104fd04da0000040f000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000016401000041000000000010044300000000010004120000000400100443000000400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000000010010008c000002100000613d000000020010008c0000021e0000c13d000001690100004100000000001004430000000001000414000002130000013d0000000001000019000004ff00010430000000400100043d0000014a020000410000000000210435000001400010009c0000014001008041000000400110021000000144011001c7000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001670100004100000000001004430000000001000414000001400010009c0000014001008041000000c00110021000000168011001c70000800b0200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000001ce0000013d000000000001042f0000016b01000041000000000010043f0000005101000039000000040010043f0000016c01000041000004ff0001043000000000012100d9000001ce0000013d000000000002004b000002390000613d000001480010009c0000022c0000c13d0000016e0020009c0000023f0000613d000001483220012c000001480330c099000001484110012c000000000221013f000001480440c09900000000013400d9000000ff022002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000000000001042d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000000003010019000001480030009c0000024a0000413d000001480020009c000002610000613d00000000013200a9000000000003004b000002600000613d0000016e0030009c000002520000c13d0000014804000041000001480010009c0000025e0000613d000001484330012c000001480440c099000001486510012c000000000335013f000001480660c09900000000044600d9000000ff033002120000000005430049000000000335019f0000000003046019000000000004004b000000000403c019000000000024004b000002610000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff0001043000000000030100190000000001320019000000000021004b0000000004000019000001480400804100000148051001970000014806200197000000000765013f000000000065004b00000000080000190000014808004041000001480070009c000000000804c019000000000065004b00000000040000190000014804002041000000000021004b00000000020000190000014802004041000001480070009c000000000402c019000000000004004b0000000002000039000000010200c039000001480030009c00000000040000390000000104004039000000000224016f000000000008004b0000000004000039000000010400c039000000ff03300270000000000343016f00000000002301a00000028b0000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001470010009c0000029f0000213d000000830010008c0000029f0000a13d00000000040003670000000401400370000000000101043b0000002402400370000000000202043b0000004403400370000000000303043b0000006404400370000000000404043b000000000001042d0000000001000019000004ff00010430000000000024001a000002b80000413d000000000624001a000002b60000613d0000014b056000d100000000066500d90000014b0060009c000002b80000c13d000000000012001a000002b80000413d0000000001120019000000000041001a000002b80000413d0000000001410019000000000131004b000002b80000413d000002be0000613d00000000011500d90000014b0010009c0000014b01008041000000000001042d0000000001000019000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300004000000000002000000000024001a000004cd0000413d000000000624001a000002db0000613d0000014b056000d100000000066500d90000014b0060009c000004cd0000c13d000000000012001a000004cd0000413d0000000001120019000000000041001a000004cd0000413d0000000001410019000000000131004b000004cd0000413d000004d30000613d00000000011500d90000014b0010009c0000014b01008041000400000001001d000002dc0000013d000400000000001d0000016401000041000000000010044300000000010004120000000400100443000000a00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b000000040300002900000148063001970000014801500197000000000216013f000000000016004b00000000010000190000014801002041000000000453004b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b000003640000613d000000600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000004061000b9000000040000006b0000031c0000613d0000000402000029000001483220012c000001480330c099000001485460012c000000000224013f000001480550c09900000000033500d9000000ff022002120000000004320049000000000224019f0000000002036019000000000003004b000000000302c019000000000013004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000800100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000401043b000000000134001900000148034001970000014805100197000000000635013f000000000035004b00000000030000190000014803002041000000000041004b00000000040000190000014804004041000001480060009c000000000304c019000000000007004b0000000004000039000000010400c039000000000002004b0000000002000039000000010200c039000000000003004b00000000020460190000000100200190000004c00000c13d000004cd0000013d000300000006001d000100000005001d000200000004001d000001200100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b0000014801500197000000030210014f000000030010006b00000000010000190000014801002041000000040450006b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b0000041f0000613d000000c00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000203000029000001480030009c000003940000413d000001480010009c000004cd0000613d00000000063100a90000000104000029000000040040006b000003ab0000613d0000016e0030009c0000039d0000c13d0000014802000041000001480060009c000003a90000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000e00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000101043b00000000053100190000014803100197000301480050019b000000030430014f000000030030006b00000000030000190000014803002041000400000005001d000000000015004b00000000010000190000014801004041000001480040009c000000000301c019000000000007004b0000000001000039000000010100c039000000000002004b0000000002000039000000010200c039000000000003004b0000000002016019000000010020008c000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000201043b0000000401200029000000040010006c000000000300001900000148030080410000014804100197000000030540014f000000030040006c00000000060000190000014806004041000001480050009c000000000603c019000000030040006c00000000030000190000014803002041000000040010006c00000000040000190000014804004041000001480050009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000006004b000004ba0000013d000200000005001d000300000004001d000001400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000303000029000001480030009c000004320000413d000001480010009c000004cd0000613d00000000063100a90000000204000029000000040040006b000004490000613d0000016e0030009c0000043b0000c13d0000014802000041000001480060009c000004470000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c70000800502000039000400000006001d04fd04f80000040f00000148030000410000014b4330012b000001480440c0990000000405000029000001486550012c000000000335013f000001480660c09900000000054600d9000000ff033002120000000004530049000000000334019f0000000003056019000000000005004b000000000503c019000400000005001d0000000100200190000004cc0000613d000000000101043b000300000001001d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000003080000290000000002810019000000000082004b0000000003000019000001480300804100000148042001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000082004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480010009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff01100270000000000141016f00000000003101a0000004cd0000c13d00000004080000290000000001820019000000000081004b0000000003000019000001480300804100000148041001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000081004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff02200270000000000242016f00000000003201a0000004cd0000c13d000000000001004b000000000200001900000148020020410000014803100197000000000003004b00000000040000190000014804004041000001480030009c000000000402c019000000000004004b0000000001006019000000000001042d000000000001042f0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff00010430000000000001042f00000000050100190000000000200443000000050030008c000004e80000413d000000040100003900000000020000190000000506200210000000000664001900000005066002700000000006060031000000000161043a0000000102200039000000000031004b000004e00000413d000001400030009c000001400300804100000060013002100000000002000414000001400020009c0000014002008041000000c002200210000000000112019f00000171011001c7000000000205001904fd04f80000040f0000000100200190000004f70000613d000000000101043b000000000001042d000000000001042f000004fb002104230000000102000039000000000001042d0000000002000019000000000001042d000004fd00000432000004fe0001042e000004ff0001043000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe009c8f7ec0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000001e13380ae0fcab3000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000000000000000000000000000000000000000000000000000000000083041cea00000000000000000000000000000000000000000000000000000000e132c83a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a76400000000000200000000000000000000000000000340000001000000000000000000000000000000000000000000000000000000000000000000000000005d0054c300000000000000000000000000000000000000000000000000000000c7ad089400000000000000000000000000000000000000000000000000000000e1d146fa00000000000000000000000000000000000000000000000000000000e1d146fb00000000000000000000000000000000000000000000000000000000ef882f1900000000000000000000000000000000000000000000000000000000c7ad089500000000000000000000000000000000000000000000000000000000d783c4c80000000000000000000000000000000000000000000000000000000070d3c43e0000000000000000000000000000000000000000000000000000000070d3c43f00000000000000000000000000000000000000000000000000000000a22ed0f8000000000000000000000000000000000000000000000000000000005d0054c4000000000000000000000000000000000000000000000000000000006857249c000000000000000000000000000000000000000000000000000000002191f9290000000000000000000000000000000000000000000000000000000038afe9c30000000000000000000000000000000000000000000000000000000038afe9c4000000000000000000000000000000000000000000000000000000003b53e888000000000000000000000000000000000000000000000000000000002191f92a0000000000000000000000000000000000000000000000000000000033da3267000000000000000000000000000000000000000000000000000000000cde8d1b000000000000000000000000000000000000000000000000000000000cde8d1c0000000000000000000000000000000000000000000000000000000010c68e4b0000000000000000000000000000000000000000000000000000000000084e8900000000000000000000000000000000000000000000000000000000073b8a74310ab089e4439a4c15d089f94afb7896ff553aecb10793d0ab882de59d99a32e00000000000000000000000000000000000000200000008000000000000000000200000200000000000000000000000000000044000000000000000000000000796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d95539132020000020000000000000000000000000000000400000000000000000000000042cbb15ccdc3cad6266b0e7a08c0454b23bf29dc2df74b6f3c209e9336465bd100000000000000000000000000000000000000200000000000000000000000004e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a7640001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0001fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000020000020000000000000000000000000000000000000000000000000000000061bc716780b22c5bcf77025ef457daddb49dd153f543825b3252bb0f9adfacbc",
441
+ "deployedBytecode": "0x0001000000000002001d000000000002000000000901034f000000000009035500000000010900190000006001100270000001400110019700000001002001900000001f0000c13d0000008002000039000000400020043f000000040010008c000002000000413d000000000209043b000000e0022002700000014d0020009c000000540000213d000001590020009c000000670000213d0000015f0020009c000000890000213d000001620020009c0000015f0000613d000001630020009c000002000000c13d0000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02c40000040f000001ce0000013d0000000002000416000000000002004b000002000000c13d0000001f0210003900000141022001970000020002200039000000400020043f0000001f0410018f00000142051001980000020002500039000000300000613d0000020006000039000000000709034f000000007807043c0000000006860436000000000026004b0000002c0000c13d000000000004004b0000003d0000613d000000000359034f0000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000320435000001200010008c000002000000413d000002e00400043d000000000004004b0000000001000039000000010100c039000000000014004b000002000000c13d000002c00600043d000002a00700043d000002800900043d000002600a00043d000002400b00043d000002200c00043d000002000100043d000003000200043d000000000004004b000000980000613d000000000002004b000000ca0000c13d00000145020000410000000103000039000000ce0000013d0000014e0020009c000000780000213d000001540020009c0000009d0000213d000001570020009c0000016a0000613d000001580020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001100000001001d001000000000003d000080050100003900000044030000390000000004000415000000110440008a000001df0000013d0000015a0020009c000000ac0000213d0000015d0020009c000001750000613d0000015e0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001900000001001d001800800000003d000080050100003900000044030000390000000004000415000000190440008a000001df0000013d0000014f0020009c000000bb0000213d000001520020009c0000017c0000613d000001530020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000b00000001001d000a00e00000003d0000800501000039000000440300003900000000040004150000000b0440008a000001df0000013d000001600020009c0000018f0000613d000001610020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001b00000001001d001a01400000003d0000800501000039000000440300003900000000040004150000001b0440008a000001df0000013d000000000002004b000000cd0000c13d000000400100043d0000014302000041000002040000013d000001550020009c000001c90000613d000001560020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000f00000001001d000e00600000003d0000800501000039000000440300003900000000040004150000000f0440008a000001df0000013d0000015b0020009c000001d50000613d0000015c0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001500000001001d001400a00000003d000080050100003900000044030000390000000004000415000000150440008a000001df0000013d000001500020009c000001e50000613d000001510020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000900000001001d000800c00000003d000080050100003900000044030000390000000004000415000000090440008a000001df0000013d000000400100043d0000014602000041000002040000013d0000000203000039000000a00040043f000000800020043f000000c00030043f000001470010009c0000015c0000213d000001480090009c0000015c0000813d0000014700b0009c000002020000213d00000000000b004b000002020000613d0000000000b7004b000000000800001900000148080020410000014803b001970000014804700197000000000534013f000000000034004b00000000030000190000014803004041000001480050009c000000000308c019000000000003004b000002020000613d000600000006001d000500000007001d000700000002001d000400000009001d00030000000a001d00020000000b001d00010000000c001d04fd02260000040f000001000010043f0000000101000029000000070200002904fd02260000040f000000e00010043f0000000201000029000001200010043f0000000301000029000000070200002904fd02260000040f000001400010043f0000000401000029000000070200002904fd02260000040f000001600010043f0000000501000029000001a00010043f0000000601000029000000070200002904fd02260000040f000001c00010043f000001200100043d000000e00200043d04fd02450000040f000001482110012c000001480220c09900000148030000410006014b40300133000000060310014f000001480440c099000700000004001d00000000014200d9000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001000200043d04fd02670000040f000001800010043f000001200100043d000001a00200043d0000000001120049000001400200043d04fd02450000040f000001482110012c000000060310014f000001480220c09900000007012000fa000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001600200043d04fd02670000040f000001e00010043f000000800200043d000001400000044300000160002004430000002002000039000000a00300043d0000018000200443000001a0003004430000004003000039000000c00400043d000001c000300443000001e0004004430000006003000039000000e00400043d000002000030044300000220004004430000008003000039000001000400043d00000240003004430000026000400443000000a003000039000001200400043d0000028000300443000002a000400443000000c003000039000001400400043d000002c000300443000002e000400443000000e003000039000001600400043d000003000030044300000320004004430000010003000039000001800400043d000003400030044300000360004004430000012003000039000001a00400043d0000038000300443000003a0004004430000014003000039000001c00400043d000003c000300443000003e00040044300000160030000390000040000300443000004200010044300000100002004430000000c0100003900000120001004430000014c01000041000004fe0001042e000000400100043d0000014902000041000002040000013d0000000001000416000000000001004b000002000000c13d0000000001000412001d00000001001d001c01000000003d0000800501000039000000440300003900000000040004150000001d0440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000001000412001300000001001d001201600000003d000080050100003900000044030000390000000004000415000000130440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000101000039000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412000d00000001001d000c00200000003d0000800501000039000000440300003900000000040004150000000d0440008a0000000504400210000001640200004104fd04da0000040f000000000001004b0000000001000039000000010100c039000000800010043f0000016501000041000004fe0001042e000000a40010008c000002000000413d0000000001000416000000000001004b000002000000c13d0000008401900370000000000401043b0000004401900370000000000301043b0000006401900370000000000101043b0000016d0010009c0000020a0000813d000500000001001d0000000401900370000000000101043b000400000001001d0000002402900370000000000202043b000300000002001d000700000004001d0000000704000029000600000003001d04fd02c40000040f000000030700002900000004060000290000000605000029000000070400002900000005020000290000014b0320009900000000023100a9000000000001004b000001b30000613d00000000011200d9000000000031004b0000020a0000c13d0000014b0220012a00000000017200a9000000000007004b000001ba0000613d00000000037100d9000000000023004b0000020a0000c13d000000000076001a0000020a0000413d0000000002760019000000000042001a0000020a0000413d0000000002420019000000000252004b0000020a0000413d000002240000c13d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02a10000040f000000400200043d0000000000120435000001400020009c000001400200804100000040012002100000016a011001c7000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412001700000001001d001601200000003d000080050100003900000044030000390000000004000415000000170440008a0000000504400210000001640200004104fd04da0000040f000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000016401000041000000000010044300000000010004120000000400100443000000400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000000010010008c000002100000613d000000020010008c0000021e0000c13d000001690100004100000000001004430000000001000414000002130000013d0000000001000019000004ff00010430000000400100043d0000014a020000410000000000210435000001400010009c0000014001008041000000400110021000000144011001c7000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001670100004100000000001004430000000001000414000001400010009c0000014001008041000000c00110021000000168011001c70000800b0200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000001ce0000013d000000000001042f0000016b01000041000000000010043f0000005101000039000000040010043f0000016c01000041000004ff0001043000000000012100d9000001ce0000013d000000000002004b000002390000613d000001480010009c0000022c0000c13d0000016e0020009c0000023f0000613d000001483220012c000001480330c099000001484110012c000000000221013f000001480440c09900000000013400d9000000ff022002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000000000001042d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000000003010019000001480030009c0000024a0000413d000001480020009c000002610000613d00000000013200a9000000000003004b000002600000613d0000016e0030009c000002520000c13d0000014804000041000001480010009c0000025e0000613d000001484330012c000001480440c099000001486510012c000000000335013f000001480660c09900000000044600d9000000ff033002120000000005430049000000000335019f0000000003046019000000000004004b000000000403c019000000000024004b000002610000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff0001043000000000030100190000000001320019000000000021004b0000000004000019000001480400804100000148051001970000014806200197000000000765013f000000000065004b00000000080000190000014808004041000001480070009c000000000804c019000000000065004b00000000040000190000014804002041000000000021004b00000000020000190000014802004041000001480070009c000000000402c019000000000004004b0000000002000039000000010200c039000001480030009c00000000040000390000000104004039000000000224016f000000000008004b0000000004000039000000010400c039000000ff03300270000000000343016f00000000002301a00000028b0000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001470010009c0000029f0000213d000000830010008c0000029f0000a13d00000000040003670000000401400370000000000101043b0000002402400370000000000202043b0000004403400370000000000303043b0000006404400370000000000404043b000000000001042d0000000001000019000004ff00010430000000000024001a000002b80000413d000000000624001a000002b60000613d0000014b056000d100000000066500d90000014b0060009c000002b80000c13d000000000012001a000002b80000413d0000000001120019000000000041001a000002b80000413d0000000001410019000000000131004b000002b80000413d000002be0000613d00000000011500d90000014b0010009c0000014b01008041000000000001042d0000000001000019000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300004000000000002000000000024001a000004cd0000413d000000000624001a000002db0000613d0000014b056000d100000000066500d90000014b0060009c000004cd0000c13d000000000012001a000004cd0000413d0000000001120019000000000041001a000004cd0000413d0000000001410019000000000131004b000004cd0000413d000004d30000613d00000000011500d90000014b0010009c0000014b01008041000400000001001d000002dc0000013d000400000000001d0000016401000041000000000010044300000000010004120000000400100443000000a00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b000000040300002900000148063001970000014801500197000000000216013f000000000016004b00000000010000190000014801002041000000000453004b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b000003640000613d000000600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000004061000b9000000040000006b0000031c0000613d0000000402000029000001483220012c000001480330c099000001485460012c000000000224013f000001480550c09900000000033500d9000000ff022002120000000004320049000000000224019f0000000002036019000000000003004b000000000302c019000000000013004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000800100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000401043b000000000134001900000148034001970000014805100197000000000635013f000000000035004b00000000030000190000014803002041000000000041004b00000000040000190000014804004041000001480060009c000000000304c019000000000007004b0000000004000039000000010400c039000000000002004b0000000002000039000000010200c039000000000003004b00000000020460190000000100200190000004c00000c13d000004cd0000013d000300000006001d000100000005001d000200000004001d000001200100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b0000014801500197000000030210014f000000030010006b00000000010000190000014801002041000000040450006b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b0000041f0000613d000000c00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000203000029000001480030009c000003940000413d000001480010009c000004cd0000613d00000000063100a90000000104000029000000040040006b000003ab0000613d0000016e0030009c0000039d0000c13d0000014802000041000001480060009c000003a90000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000e00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000101043b00000000053100190000014803100197000301480050019b000000030430014f000000030030006b00000000030000190000014803002041000400000005001d000000000015004b00000000010000190000014801004041000001480040009c000000000301c019000000000007004b0000000001000039000000010100c039000000000002004b0000000002000039000000010200c039000000000003004b0000000002016019000000010020008c000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000201043b0000000401200029000000040010006c000000000300001900000148030080410000014804100197000000030540014f000000030040006c00000000060000190000014806004041000001480050009c000000000603c019000000030040006c00000000030000190000014803002041000000040010006c00000000040000190000014804004041000001480050009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000006004b000004ba0000013d000200000005001d000300000004001d000001400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000303000029000001480030009c000004320000413d000001480010009c000004cd0000613d00000000063100a90000000204000029000000040040006b000004490000613d0000016e0030009c0000043b0000c13d0000014802000041000001480060009c000004470000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c70000800502000039000400000006001d04fd04f80000040f00000148030000410000014b4330012b000001480440c0990000000405000029000001486550012c000000000335013f000001480660c09900000000054600d9000000ff033002120000000004530049000000000334019f0000000003056019000000000005004b000000000503c019000400000005001d0000000100200190000004cc0000613d000000000101043b000300000001001d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000003080000290000000002810019000000000082004b0000000003000019000001480300804100000148042001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000082004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480010009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff01100270000000000141016f00000000003101a0000004cd0000c13d00000004080000290000000001820019000000000081004b0000000003000019000001480300804100000148041001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000081004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff02200270000000000242016f00000000003201a0000004cd0000c13d000000000001004b000000000200001900000148020020410000014803100197000000000003004b00000000040000190000014804004041000001480030009c000000000402c019000000000004004b0000000001006019000000000001042d000000000001042f0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff00010430000000000001042f00000000050100190000000000200443000000050030008c000004e80000413d000000040100003900000000020000190000000506200210000000000664001900000005066002700000000006060031000000000161043a0000000102200039000000000031004b000004e00000413d000001400030009c000001400300804100000060013002100000000002000414000001400020009c0000014002008041000000c002200210000000000112019f00000171011001c7000000000205001904fd04f80000040f0000000100200190000004f70000613d000000000101043b000000000001042d000000000001042f000004fb002104230000000102000039000000000001042d0000000002000019000000000001042d000004fd00000432000004fe0001042e000004ff0001043000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe009c8f7ec0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000001e13380ae0fcab3000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000000000000000000000000000000000000000000000000000000000083041cea00000000000000000000000000000000000000000000000000000000e132c83a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a76400000000000200000000000000000000000000000340000001000000000000000000000000000000000000000000000000000000000000000000000000005d0054c300000000000000000000000000000000000000000000000000000000c7ad089400000000000000000000000000000000000000000000000000000000e1d146fa00000000000000000000000000000000000000000000000000000000e1d146fb00000000000000000000000000000000000000000000000000000000ef882f1900000000000000000000000000000000000000000000000000000000c7ad089500000000000000000000000000000000000000000000000000000000d783c4c80000000000000000000000000000000000000000000000000000000070d3c43e0000000000000000000000000000000000000000000000000000000070d3c43f00000000000000000000000000000000000000000000000000000000a22ed0f8000000000000000000000000000000000000000000000000000000005d0054c4000000000000000000000000000000000000000000000000000000006857249c000000000000000000000000000000000000000000000000000000002191f9290000000000000000000000000000000000000000000000000000000038afe9c30000000000000000000000000000000000000000000000000000000038afe9c4000000000000000000000000000000000000000000000000000000003b53e888000000000000000000000000000000000000000000000000000000002191f92a0000000000000000000000000000000000000000000000000000000033da3267000000000000000000000000000000000000000000000000000000000cde8d1b000000000000000000000000000000000000000000000000000000000cde8d1c0000000000000000000000000000000000000000000000000000000010c68e4b0000000000000000000000000000000000000000000000000000000000084e8900000000000000000000000000000000000000000000000000000000073b8a74310ab089e4439a4c15d089f94afb7896ff553aecb10793d0ab882de59d99a32e00000000000000000000000000000000000000200000008000000000000000000200000200000000000000000000000000000044000000000000000000000000796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d95539132020000020000000000000000000000000000000400000000000000000000000042cbb15ccdc3cad6266b0e7a08c0454b23bf29dc2df74b6f3c209e9336465bd100000000000000000000000000000000000000200000000000000000000000004e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a7640001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0001fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000020000020000000000000000000000000000000000000000000000000000000061bc716780b22c5bcf77025ef457daddb49dd153f543825b3252bb0f9adfacbc",
442
+ "devdoc": {
443
+ "author": "Venus",
444
+ "kind": "dev",
445
+ "methods": {
446
+ "constructor": {
447
+ "params": {
448
+ "baseRate2PerYear_": "The additonal base APR after hitting KINK_1, as a mantissa (scaled by EXP_SCALE)",
449
+ "baseRatePerYear_": "The approximate target base APR, as a mantissa (scaled by EXP_SCALE)",
450
+ "blocksPerYear_": "The number of blocks per year",
451
+ "jumpMultiplierPerYear_": "The multiplier after hitting KINK_2",
452
+ "kink1_": "The utilization point at which the multiplier2 is applied",
453
+ "kink2_": "The utilization point at which the jump multiplier is applied",
454
+ "multiplier2PerYear_": "The rate of increase or decrease in interest rate wrt utilization after hitting KINK_1 (scaled by EXP_SCALE)",
455
+ "multiplierPerYear_": "The rate of increase or decrease in interest rate wrt utilization (scaled by EXP_SCALE)",
456
+ "timeBased_": "A boolean indicating whether the contract is based on time or block."
457
+ }
458
+ },
459
+ "getBlockNumberOrTimestamp()": {
460
+ "details": "Function to simply retrieve block number or block timestamp",
461
+ "returns": {
462
+ "_0": "Current block number or block timestamp"
463
+ }
464
+ },
465
+ "getBorrowRate(uint256,uint256,uint256,uint256)": {
466
+ "params": {
467
+ "badDebt": "The amount of badDebt in the market",
468
+ "borrows": "The amount of borrows in the market",
469
+ "cash": "The amount of cash in the market",
470
+ "reserves": "The amount of reserves in the market"
471
+ },
472
+ "returns": {
473
+ "_0": "The borrow rate percentage per slot (block or second) as a mantissa (scaled by EXP_SCALE)"
474
+ }
475
+ },
476
+ "getSupplyRate(uint256,uint256,uint256,uint256,uint256)": {
477
+ "params": {
478
+ "badDebt": "The amount of badDebt in the market",
479
+ "borrows": "The amount of borrows in the market",
480
+ "cash": "The amount of cash in the market",
481
+ "reserveFactorMantissa": "The current reserve factor for the market",
482
+ "reserves": "The amount of reserves in the market"
483
+ },
484
+ "returns": {
485
+ "_0": "The supply rate percentage per slot (block or second) as a mantissa (scaled by EXP_SCALE)"
486
+ }
487
+ },
488
+ "isInterestRateModel()": {
489
+ "returns": {
490
+ "_0": "Always true"
491
+ }
492
+ },
493
+ "utilizationRate(uint256,uint256,uint256,uint256)": {
494
+ "params": {
495
+ "badDebt": "The amount of badDebt in the market",
496
+ "borrows": "The amount of borrows in the market",
497
+ "cash": "The amount of cash in the market",
498
+ "reserves": "The amount of reserves in the market (currently unused)"
499
+ },
500
+ "returns": {
501
+ "_0": "The utilization rate as a mantissa between [0, MANTISSA_ONE]"
502
+ }
503
+ }
504
+ },
505
+ "title": "TwoKinksInterestRateModel",
506
+ "version": 1
507
+ },
508
+ "userdoc": {
509
+ "errors": {
510
+ "InvalidBlocksPerYear()": [
511
+ {
512
+ "notice": "Thrown when blocks per year is invalid"
513
+ }
514
+ ],
515
+ "InvalidKink()": [
516
+ {
517
+ "notice": "Thrown when the kink points are not in the correct order"
518
+ }
519
+ ],
520
+ "InvalidTimeBasedConfiguration()": [
521
+ {
522
+ "notice": "Thrown when time based but blocks per year is provided"
523
+ }
524
+ ],
525
+ "NegativeValueNotAllowed()": [
526
+ {
527
+ "notice": "Thrown when a negative value is not allowed"
528
+ }
529
+ ]
530
+ },
531
+ "kind": "user",
532
+ "methods": {
533
+ "BASE_RATE_2_PER_BLOCK_OR_SECOND()": {
534
+ "notice": "The base interest rate per block or second which is the y-intercept when utilization rate hits KINK_1 scaled by EXP_SCALE"
535
+ },
536
+ "BASE_RATE_PER_BLOCK_OR_SECOND()": {
537
+ "notice": "The base interest rate per block or second which is the y-intercept when utilization rate is 0 scaled by EXP_SCALE"
538
+ },
539
+ "JUMP_MULTIPLIER_PER_BLOCK_OR_SECOND()": {
540
+ "notice": "The multiplier of utilization rate per block or second that gives the slope 3 of interest rate scaled by EXP_SCALE"
541
+ },
542
+ "KINK_1()": {
543
+ "notice": "The utilization point at which the multiplier2 is applied"
544
+ },
545
+ "KINK_2()": {
546
+ "notice": "The utilization point at which the jump multiplier is applied"
547
+ },
548
+ "MULTIPLIER_2_PER_BLOCK_OR_SECOND()": {
549
+ "notice": "The multiplier of utilization rate per block or second that gives the slope 2 of the interest rate scaled by EXP_SCALE"
550
+ },
551
+ "MULTIPLIER_PER_BLOCK_OR_SECOND()": {
552
+ "notice": "The multiplier of utilization rate per block or second that gives the slope 1 of the interest rate scaled by EXP_SCALE"
553
+ },
554
+ "RATE_1()": {
555
+ "notice": "The maximum kink interest rate scaled by EXP_SCALE"
556
+ },
557
+ "RATE_2()": {
558
+ "notice": "The maximum kink interest rate scaled by EXP_SCALE"
559
+ },
560
+ "blocksOrSecondsPerYear()": {
561
+ "notice": "Stores blocksPerYear if isTimeBased is true else secondsPerYear is stored"
562
+ },
563
+ "constructor": {
564
+ "notice": "Construct an interest rate model"
565
+ },
566
+ "getBorrowRate(uint256,uint256,uint256,uint256)": {
567
+ "notice": "Calculates the current borrow rate per slot (block or second)"
568
+ },
569
+ "getSupplyRate(uint256,uint256,uint256,uint256,uint256)": {
570
+ "notice": "Calculates the current supply rate per slot (block or second)"
571
+ },
572
+ "isInterestRateModel()": {
573
+ "notice": "Indicator that this is an InterestRateModel contract (for inspection)"
574
+ },
575
+ "isTimeBased()": {
576
+ "notice": "Acknowledges if a contract is time based or not"
577
+ },
578
+ "utilizationRate(uint256,uint256,uint256,uint256)": {
579
+ "notice": "Calculates the utilization rate of the market: `(borrows + badDebt) / (cash + borrows + badDebt - reserves)`"
580
+ }
581
+ },
582
+ "notice": "An interest rate model with two different slope increase or decrease each after a certain utilization threshold called **kink** is reached.",
583
+ "version": 1
584
+ },
585
+ "storageLayout": {
586
+ "storage": [
587
+ {
588
+ "astId": 10243,
589
+ "contract": "contracts/TwoKinksInterestRateModel.sol:TwoKinksInterestRateModel",
590
+ "label": "__gap",
591
+ "offset": 0,
592
+ "slot": "0",
593
+ "type": "t_array(t_uint256)48_storage"
594
+ }
595
+ ],
596
+ "types": {
597
+ "t_array(t_uint256)48_storage": {
598
+ "base": "t_uint256",
599
+ "encoding": "inplace",
600
+ "label": "uint256[48]",
601
+ "numberOfBytes": "1536"
602
+ },
603
+ "t_uint256": {
604
+ "encoding": "inplace",
605
+ "label": "uint256",
606
+ "numberOfBytes": "32"
607
+ }
608
+ }
609
+ },
610
+ "factoryDeps": [
611
+ "0x0001000000000002001d000000000002000000000901034f000000000009035500000000010900190000006001100270000001400110019700000001002001900000001f0000c13d0000008002000039000000400020043f000000040010008c000002000000413d000000000209043b000000e0022002700000014d0020009c000000540000213d000001590020009c000000670000213d0000015f0020009c000000890000213d000001620020009c0000015f0000613d000001630020009c000002000000c13d0000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02c40000040f000001ce0000013d0000000002000416000000000002004b000002000000c13d0000001f0210003900000141022001970000020002200039000000400020043f0000001f0410018f00000142051001980000020002500039000000300000613d0000020006000039000000000709034f000000007807043c0000000006860436000000000026004b0000002c0000c13d000000000004004b0000003d0000613d000000000359034f0000000304400210000000000502043300000000054501cf000000000545022f000000000303043b0000010004400089000000000343022f00000000034301cf000000000353019f0000000000320435000001200010008c000002000000413d000002e00400043d000000000004004b0000000001000039000000010100c039000000000014004b000002000000c13d000002c00600043d000002a00700043d000002800900043d000002600a00043d000002400b00043d000002200c00043d000002000100043d000003000200043d000000000004004b000000980000613d000000000002004b000000ca0000c13d00000145020000410000000103000039000000ce0000013d0000014e0020009c000000780000213d000001540020009c0000009d0000213d000001570020009c0000016a0000613d000001580020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001100000001001d001000000000003d000080050100003900000044030000390000000004000415000000110440008a000001df0000013d0000015a0020009c000000ac0000213d0000015d0020009c000001750000613d0000015e0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001900000001001d001800800000003d000080050100003900000044030000390000000004000415000000190440008a000001df0000013d0000014f0020009c000000bb0000213d000001520020009c0000017c0000613d000001530020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000b00000001001d000a00e00000003d0000800501000039000000440300003900000000040004150000000b0440008a000001df0000013d000001600020009c0000018f0000613d000001610020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001b00000001001d001a01400000003d0000800501000039000000440300003900000000040004150000001b0440008a000001df0000013d000000000002004b000000cd0000c13d000000400100043d0000014302000041000002040000013d000001550020009c000001c90000613d000001560020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000f00000001001d000e00600000003d0000800501000039000000440300003900000000040004150000000f0440008a000001df0000013d0000015b0020009c000001d50000613d0000015c0020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412001500000001001d001400a00000003d000080050100003900000044030000390000000004000415000000150440008a000001df0000013d000001500020009c000001e50000613d000001510020009c000002000000c13d0000000001000416000000000001004b000002000000c13d0000000001000412000900000001001d000800c00000003d000080050100003900000044030000390000000004000415000000090440008a000001df0000013d000000400100043d0000014602000041000002040000013d0000000203000039000000a00040043f000000800020043f000000c00030043f000001470010009c0000015c0000213d000001480090009c0000015c0000813d0000014700b0009c000002020000213d00000000000b004b000002020000613d0000000000b7004b000000000800001900000148080020410000014803b001970000014804700197000000000534013f000000000034004b00000000030000190000014803004041000001480050009c000000000308c019000000000003004b000002020000613d000600000006001d000500000007001d000700000002001d000400000009001d00030000000a001d00020000000b001d00010000000c001d04fd02260000040f000001000010043f0000000101000029000000070200002904fd02260000040f000000e00010043f0000000201000029000001200010043f0000000301000029000000070200002904fd02260000040f000001400010043f0000000401000029000000070200002904fd02260000040f000001600010043f0000000501000029000001a00010043f0000000601000029000000070200002904fd02260000040f000001c00010043f000001200100043d000000e00200043d04fd02450000040f000001482110012c000001480220c09900000148030000410006014b40300133000000060310014f000001480440c099000700000004001d00000000014200d9000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001000200043d04fd02670000040f000001800010043f000001200100043d000001a00200043d0000000001120049000001400200043d04fd02450000040f000001482110012c000000060310014f000001480220c09900000007012000fa000000ff023002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000001600200043d04fd02670000040f000001e00010043f000000800200043d000001400000044300000160002004430000002002000039000000a00300043d0000018000200443000001a0003004430000004003000039000000c00400043d000001c000300443000001e0004004430000006003000039000000e00400043d000002000030044300000220004004430000008003000039000001000400043d00000240003004430000026000400443000000a003000039000001200400043d0000028000300443000002a000400443000000c003000039000001400400043d000002c000300443000002e000400443000000e003000039000001600400043d000003000030044300000320004004430000010003000039000001800400043d000003400030044300000360004004430000012003000039000001a00400043d0000038000300443000003a0004004430000014003000039000001c00400043d000003c000300443000003e00040044300000160030000390000040000300443000004200010044300000100002004430000000c0100003900000120001004430000014c01000041000004fe0001042e000000400100043d0000014902000041000002040000013d0000000001000416000000000001004b000002000000c13d0000000001000412001d00000001001d001c01000000003d0000800501000039000000440300003900000000040004150000001d0440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000001000412001300000001001d001201600000003d000080050100003900000044030000390000000004000415000000130440008a000001df0000013d0000000001000416000000000001004b000002000000c13d0000000101000039000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412000d00000001001d000c00200000003d0000800501000039000000440300003900000000040004150000000d0440008a0000000504400210000001640200004104fd04da0000040f000000000001004b0000000001000039000000010100c039000000800010043f0000016501000041000004fe0001042e000000a40010008c000002000000413d0000000001000416000000000001004b000002000000c13d0000008401900370000000000401043b0000004401900370000000000301043b0000006401900370000000000101043b0000016d0010009c0000020a0000813d000500000001001d0000000401900370000000000101043b000400000001001d0000002402900370000000000202043b000300000002001d000700000004001d0000000704000029000600000003001d04fd02c40000040f000000030700002900000004060000290000000605000029000000070400002900000005020000290000014b0320009900000000023100a9000000000001004b000001b30000613d00000000011200d9000000000031004b0000020a0000c13d0000014b0220012a00000000017200a9000000000007004b000001ba0000613d00000000037100d9000000000023004b0000020a0000c13d000000000076001a0000020a0000413d0000000002760019000000000042001a0000020a0000413d0000000002420019000000000252004b0000020a0000413d000002240000c13d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000000002000416000000000002004b000002000000c13d04fd02910000040f04fd02a10000040f000000400200043d0000000000120435000001400020009c000001400200804100000040012002100000016a011001c7000004fe0001042e0000000001000416000000000001004b000002000000c13d0000000001000412001700000001001d001601200000003d000080050100003900000044030000390000000004000415000000170440008a0000000504400210000001640200004104fd04da0000040f000000800010043f0000016501000041000004fe0001042e0000000001000416000000000001004b000002000000c13d0000016401000041000000000010044300000000010004120000000400100443000000400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000000010010008c000002100000613d000000020010008c0000021e0000c13d000001690100004100000000001004430000000001000414000002130000013d0000000001000019000004ff00010430000000400100043d0000014a020000410000000000210435000001400010009c0000014001008041000000400110021000000144011001c7000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001670100004100000000001004430000000001000414000001400010009c0000014001008041000000c00110021000000168011001c70000800b0200003904fd04f80000040f00000001002001900000021d0000613d000000000101043b000001ce0000013d000000000001042f0000016b01000041000000000010043f0000005101000039000000040010043f0000016c01000041000004ff0001043000000000012100d9000001ce0000013d000000000002004b000002390000613d000001480010009c0000022c0000c13d0000016e0020009c0000023f0000613d000001483220012c000001480330c099000001484110012c000000000221013f000001480440c09900000000013400d9000000ff022002120000000003120049000000000223019f0000000002016019000000000001004b000000000102c019000000000001042d0000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000000003010019000001480030009c0000024a0000413d000001480020009c000002610000613d00000000013200a9000000000003004b000002600000613d0000016e0030009c000002520000c13d0000014804000041000001480010009c0000025e0000613d000001484330012c000001480440c099000001486510012c000000000335013f000001480660c09900000000044600d9000000ff033002120000000005430049000000000335019f0000000003046019000000000004004b000000000403c019000000000024004b000002610000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff0001043000000000030100190000000001320019000000000021004b0000000004000019000001480400804100000148051001970000014806200197000000000765013f000000000065004b00000000080000190000014808004041000001480070009c000000000804c019000000000065004b00000000040000190000014804002041000000000021004b00000000020000190000014802004041000001480070009c000000000402c019000000000004004b0000000002000039000000010200c039000001480030009c00000000040000390000000104004039000000000224016f000000000008004b0000000004000039000000010400c039000000ff03300270000000000343016f00000000002301a00000028b0000c13d000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff00010430000001470010009c0000029f0000213d000000830010008c0000029f0000a13d00000000040003670000000401400370000000000101043b0000002402400370000000000202043b0000004403400370000000000303043b0000006404400370000000000404043b000000000001042d0000000001000019000004ff00010430000000000024001a000002b80000413d000000000624001a000002b60000613d0000014b056000d100000000066500d90000014b0060009c000002b80000c13d000000000012001a000002b80000413d0000000001120019000000000041001a000002b80000413d0000000001410019000000000131004b000002b80000413d000002be0000613d00000000011500d90000014b0010009c0000014b01008041000000000001042d0000000001000019000000000001042d0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff000104300004000000000002000000000024001a000004cd0000413d000000000624001a000002db0000613d0000014b056000d100000000066500d90000014b0060009c000004cd0000c13d000000000012001a000004cd0000413d0000000001120019000000000041001a000004cd0000413d0000000001410019000000000131004b000004cd0000413d000004d30000613d00000000011500d90000014b0010009c0000014b01008041000400000001001d000002dc0000013d000400000000001d0000016401000041000000000010044300000000010004120000000400100443000000a00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b000000040300002900000148063001970000014801500197000000000216013f000000000016004b00000000010000190000014801002041000000000453004b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b000003640000613d000000600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000004061000b9000000040000006b0000031c0000613d0000000402000029000001483220012c000001480330c099000001485460012c000000000224013f000001480550c09900000000033500d9000000ff022002120000000004320049000000000224019f0000000002036019000000000003004b000000000302c019000000000013004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000800100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000401043b000000000134001900000148034001970000014805100197000000000635013f000000000035004b00000000030000190000014803002041000000000041004b00000000040000190000014804004041000001480060009c000000000304c019000000000007004b0000000004000039000000010400c039000000000002004b0000000002000039000000010200c039000000000003004b00000000020460190000000100200190000004c00000c13d000004cd0000013d000300000006001d000100000005001d000200000004001d000001200100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000501043b0000014801500197000000030210014f000000030010006b00000000010000190000014801002041000000040450006b00000000030000190000014803004041000001480020009c000000000103c0190000016402000041000000000020044300000000020004120000000400200443000000000001004b0000041f0000613d000000c00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000203000029000001480030009c000003940000413d000001480010009c000004cd0000613d00000000063100a90000000104000029000000040040006b000003ab0000613d0000016e0030009c0000039d0000c13d0000014802000041000001480060009c000003a90000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d000400000006001d0000016401000041000000000010044300000000010004120000000400100443000000e00100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d00000148020000410000014b3220012b000001480330c0990000000409000029000001485490012c000000000424013f000001480550c0990000016f0090009c0000000006000019000001480600404100000148079001970000014808700167000001480070009c00000000020000190000014802002041000001480080009c000000000206c019000001700090009c00000000060000190000014806002041000001480070009c00000000070000190000014807004041000001480080009c000000000706c01900000000033500d9000000ff044002120000000005340049000000000445019f0000000004036019000000000003004b000000000304c019000000000101043b00000000053100190000014803100197000301480050019b000000030430014f000000030030006b00000000030000190000014803002041000400000005001d000000000015004b00000000010000190000014801004041000001480040009c000000000301c019000000000007004b0000000001000039000000010100c039000000000002004b0000000002000039000000010200c039000000000003004b0000000002016019000000010020008c000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000201043b0000000401200029000000040010006c000000000300001900000148030080410000014804100197000000030540014f000000030040006c00000000060000190000014806004041000001480050009c000000000603c019000000030040006c00000000030000190000014803002041000000040010006c00000000040000190000014804004041000001480050009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000006004b000004ba0000013d000200000005001d000300000004001d000001400100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b0000000303000029000001480030009c000004320000413d000001480010009c000004cd0000613d00000000063100a90000000204000029000000040040006b000004490000613d0000016e0030009c0000043b0000c13d0000014802000041000001480060009c000004470000613d000001483230012c000001480330c099000001485460012c000000000424013f000001480550c09900000000023500d9000000ff034002120000000004230049000000000334019f0000000003026019000000000002004b000000000203c019000000000012004b000004cd0000c13d0000016401000041000000000010044300000000010004120000000400100443000001600100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c70000800502000039000400000006001d04fd04f80000040f00000148030000410000014b4330012b000001480440c0990000000405000029000001486550012c000000000335013f000001480660c09900000000054600d9000000ff033002120000000004530049000000000334019f0000000003056019000000000005004b000000000503c019000400000005001d0000000100200190000004cc0000613d000000000101043b000300000001001d0000016401000041000000000010044300000000010004120000000400100443000001000100003900000024001004430000000001000414000001400010009c0000014001008041000000c00110021000000166011001c7000080050200003904fd04f80000040f0000000100200190000004cc0000613d000000000101043b00000003080000290000000002810019000000000082004b0000000003000019000001480300804100000148042001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000082004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480010009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff01100270000000000141016f00000000003101a0000004cd0000c13d00000004080000290000000001820019000000000081004b0000000003000019000001480300804100000148041001970000014805800197000000000654013f000000000054004b00000000070000190000014807004041000001480060009c000000000703c019000000000054004b00000000030000190000014803002041000000000081004b00000000040000190000014804004041000001480060009c000000000304c019000000000003004b0000000003000039000000010300c039000001480020009c00000000040000390000000104004039000000000334016f000000000007004b0000000004000039000000010400c039000000ff02200270000000000242016f00000000003201a0000004cd0000c13d000000000001004b000000000200001900000148020020410000014803100197000000000003004b00000000040000190000014804004041000001480030009c000000000402c019000000000004004b0000000001006019000000000001042d000000000001042f0000016b01000041000000000010043f0000001101000039000000040010043f0000016c01000041000004ff000104300000016b01000041000000000010043f0000001201000039000000040010043f0000016c01000041000004ff00010430000000000001042f00000000050100190000000000200443000000050030008c000004e80000413d000000040100003900000000020000190000000506200210000000000664001900000005066002700000000006060031000000000161043a0000000102200039000000000031004b000004e00000413d000001400030009c000001400300804100000060013002100000000002000414000001400020009c0000014002008041000000c002200210000000000112019f00000171011001c7000000000205001904fd04f80000040f0000000100200190000004f70000613d000000000101043b000000000001042d000000000001042f000004fb002104230000000102000039000000000001042d0000000002000019000000000001042d000004fd00000432000004fe0001042e000004ff0001043000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe009c8f7ec0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000001e13380ae0fcab3000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000000000000000000000000000000000000000000000000000000000083041cea00000000000000000000000000000000000000000000000000000000e132c83a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a76400000000000200000000000000000000000000000340000001000000000000000000000000000000000000000000000000000000000000000000000000005d0054c300000000000000000000000000000000000000000000000000000000c7ad089400000000000000000000000000000000000000000000000000000000e1d146fa00000000000000000000000000000000000000000000000000000000e1d146fb00000000000000000000000000000000000000000000000000000000ef882f1900000000000000000000000000000000000000000000000000000000c7ad089500000000000000000000000000000000000000000000000000000000d783c4c80000000000000000000000000000000000000000000000000000000070d3c43e0000000000000000000000000000000000000000000000000000000070d3c43f00000000000000000000000000000000000000000000000000000000a22ed0f8000000000000000000000000000000000000000000000000000000005d0054c4000000000000000000000000000000000000000000000000000000006857249c000000000000000000000000000000000000000000000000000000002191f9290000000000000000000000000000000000000000000000000000000038afe9c30000000000000000000000000000000000000000000000000000000038afe9c4000000000000000000000000000000000000000000000000000000003b53e888000000000000000000000000000000000000000000000000000000002191f92a0000000000000000000000000000000000000000000000000000000033da3267000000000000000000000000000000000000000000000000000000000cde8d1b000000000000000000000000000000000000000000000000000000000cde8d1c0000000000000000000000000000000000000000000000000000000010c68e4b0000000000000000000000000000000000000000000000000000000000084e8900000000000000000000000000000000000000000000000000000000073b8a74310ab089e4439a4c15d089f94afb7896ff553aecb10793d0ab882de59d99a32e00000000000000000000000000000000000000200000008000000000000000000200000200000000000000000000000000000044000000000000000000000000796b89b91644bc98cd93958e4c9038275d622183e25ac5af08cc6b5d95539132020000020000000000000000000000000000000400000000000000000000000042cbb15ccdc3cad6266b0e7a08c0454b23bf29dc2df74b6f3c209e9336465bd100000000000000000000000000000000000000200000000000000000000000004e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000000000000000de0b6b3a7640001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0001fffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000020000020000000000000000000000000000000000000000000000000000000061bc716780b22c5bcf77025ef457daddb49dd153f543825b3252bb0f9adfacbc"
612
+ ]
613
+ }