@venusprotocol/venus-protocol 9.8.0-dev.17 → 9.8.0-dev.18

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 (86) hide show
  1. package/deploy/016-rate-model-checkpoint.ts +6 -6
  2. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  3. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  4. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump50000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  5. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  6. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  7. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope300bps_jump45000bps_kink9000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  8. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  9. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  10. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink7500bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  11. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  12. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base200bps_slope10000bps_jump30000bps_kink100bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  13. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  14. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  15. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  16. package/deployments/bscmainnet/CheckpointView_From_JumpRateModel_base5000bps_slope3000bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  17. package/deployments/bscmainnet/CheckpointView_From_TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  18. package/deployments/bscmainnet/CheckpointView_From_TwoKinks_base0bps_slope450bps_kink7000bps_slope214000bps_base20bps_kink28000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  19. package/deployments/bscmainnet/CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope0bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  20. package/deployments/bscmainnet/CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope24000bps_bpy21024000_To_bpy42048000_At_1751250600.json +153 -0
  21. package/deployments/bscmainnet/JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy42048000.json +394 -0
  22. package/deployments/bscmainnet/JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy42048000.json +394 -0
  23. package/deployments/bscmainnet/JumpRateModel_base0bps_slope1000bps_jump50000bps_kink8000bps_bpy42048000.json +394 -0
  24. package/deployments/bscmainnet/JumpRateModel_base0bps_slope1500bps_jump30000bps_kink6000bps_bpy42048000.json +394 -0
  25. package/deployments/bscmainnet/JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy42048000.json +394 -0
  26. package/deployments/bscmainnet/JumpRateModel_base0bps_slope300bps_jump45000bps_kink9000bps_bpy42048000.json +394 -0
  27. package/deployments/bscmainnet/JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy42048000.json +394 -0
  28. package/deployments/bscmainnet/JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy42048000.json +394 -0
  29. package/deployments/bscmainnet/JumpRateModel_base0bps_slope900bps_jump20000bps_kink7500bps_bpy42048000.json +394 -0
  30. package/deployments/bscmainnet/JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy42048000.json +394 -0
  31. package/deployments/bscmainnet/JumpRateModel_base200bps_slope10000bps_jump30000bps_kink100bps_bpy42048000.json +394 -0
  32. package/deployments/bscmainnet/JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy42048000.json +394 -0
  33. package/deployments/bscmainnet/JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy42048000.json +394 -0
  34. package/deployments/bscmainnet/JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy42048000.json +394 -0
  35. package/deployments/bscmainnet/JumpRateModel_base5000bps_slope3000bps_jump30000bps_kink6000bps_bpy42048000.json +394 -0
  36. package/deployments/bscmainnet/SetCheckpointBscmainnet.json +13 -13
  37. package/deployments/bscmainnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy42048000.json +443 -0
  38. package/deployments/bscmainnet/TwoKinks_base0bps_slope450bps_kink7000bps_slope214000bps_base20bps_kink28000bps_jump30000bps_bpy42048000.json +443 -0
  39. package/deployments/bscmainnet/WhitePaperInterestRateModel_base0bps_slope0bps_bpy42048000.json +325 -0
  40. package/deployments/bscmainnet/WhitePaperInterestRateModel_base0bps_slope24000bps_bpy42048000.json +325 -0
  41. package/deployments/bscmainnet/solcInputs/562ab186f59f60709f089c3eb137d5e4.json +34 -0
  42. package/deployments/bscmainnet/solcInputs/9ff62a1d4992e88b10501b0dc555f416.json +340 -0
  43. package/deployments/bscmainnet/solcInputs/c5572179a30630626defa699e42df19f.json +34 -0
  44. package/deployments/bscmainnet.json +9662 -3169
  45. package/deployments/bscmainnet_addresses.json +39 -1
  46. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump10900bps_kink8000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  47. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  48. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  49. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  50. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope500bps_jump5000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  51. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  52. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  53. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  54. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  55. package/deployments/bsctestnet/CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  56. package/deployments/bsctestnet/CheckpointView_From_TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  57. package/deployments/bsctestnet/CheckpointView_From_TwoKinks_base0bps_slope350bps_kink8000bps_slope217500bps_base20bps_kink29000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  58. package/deployments/bsctestnet/CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope10000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  59. package/deployments/bsctestnet/CheckpointView_From_WhitePaperInterestRateModel_base200bps_slope1000bps_bpy21024000_To_bpy42048000_At_1748243100.json +153 -0
  60. package/deployments/bsctestnet/JumpRateModel_base0bps_slope1000bps_jump10900bps_kink8000bps_bpy42048000.json +394 -0
  61. package/deployments/bsctestnet/JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy42048000.json +394 -0
  62. package/deployments/bsctestnet/JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy42048000.json +394 -0
  63. package/deployments/bsctestnet/JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy42048000.json +394 -0
  64. package/deployments/bsctestnet/JumpRateModel_base0bps_slope500bps_jump5000bps_kink8000bps_bpy42048000.json +394 -0
  65. package/deployments/bsctestnet/JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy42048000.json +394 -0
  66. package/deployments/bsctestnet/JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy42048000.json +394 -0
  67. package/deployments/bsctestnet/JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy42048000.json +394 -0
  68. package/deployments/bsctestnet/JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy42048000.json +394 -0
  69. package/deployments/bsctestnet/JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy42048000.json +394 -0
  70. package/deployments/bsctestnet/SetCheckpointBsctestnet.json +12 -12
  71. package/deployments/bsctestnet/TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy42048000.json +443 -0
  72. package/deployments/bsctestnet/TwoKinks_base0bps_slope350bps_kink8000bps_slope217500bps_base20bps_kink29000bps_jump30000bps_bpy42048000.json +443 -0
  73. package/deployments/bsctestnet/WhitePaperInterestRateModel_base0bps_slope10000bps_bpy42048000.json +325 -0
  74. package/deployments/bsctestnet/WhitePaperInterestRateModel_base200bps_slope1000bps_bpy42048000.json +325 -0
  75. package/deployments/bsctestnet/solcInputs/2ed6cb8f8bf831211e3bb044371ae657.json +34 -0
  76. package/deployments/bsctestnet/solcInputs/8251c7f4c76847afe95bbea4bdd1127f.json +34 -0
  77. package/deployments/bsctestnet/solcInputs/9ff62a1d4992e88b10501b0dc555f416.json +340 -0
  78. package/deployments/bsctestnet/solcInputs/dee41539f978b3def31e02aaee92eb7b.json +34 -0
  79. package/deployments/bsctestnet.json +6780 -2002
  80. package/deployments/bsctestnet_addresses.json +29 -1
  81. package/dist/deploy/016-rate-model-checkpoint.js +6 -6
  82. package/dist/deployments/bscmainnet.json +9662 -3169
  83. package/dist/deployments/bsctestnet.json +6780 -2002
  84. package/dist/helpers/chains.d.ts +2 -2
  85. package/dist/helpers/chains.js +2 -2
  86. package/package.json +1 -1
@@ -0,0 +1,394 @@
1
+ {
2
+ "address": "0x3DC78Fe78fd3084CAAd0DC881b4Eb98B6151A5f3",
3
+ "abi": [
4
+ {
5
+ "inputs": [
6
+ {
7
+ "internalType": "uint256",
8
+ "name": "baseRatePerYear",
9
+ "type": "uint256"
10
+ },
11
+ {
12
+ "internalType": "uint256",
13
+ "name": "multiplierPerYear",
14
+ "type": "uint256"
15
+ },
16
+ {
17
+ "internalType": "uint256",
18
+ "name": "jumpMultiplierPerYear",
19
+ "type": "uint256"
20
+ },
21
+ {
22
+ "internalType": "uint256",
23
+ "name": "kink_",
24
+ "type": "uint256"
25
+ },
26
+ {
27
+ "internalType": "uint256",
28
+ "name": "blocksPerYear_",
29
+ "type": "uint256"
30
+ }
31
+ ],
32
+ "payable": false,
33
+ "stateMutability": "nonpayable",
34
+ "type": "constructor"
35
+ },
36
+ {
37
+ "anonymous": false,
38
+ "inputs": [
39
+ {
40
+ "indexed": false,
41
+ "internalType": "uint256",
42
+ "name": "baseRatePerBlock",
43
+ "type": "uint256"
44
+ },
45
+ {
46
+ "indexed": false,
47
+ "internalType": "uint256",
48
+ "name": "multiplierPerBlock",
49
+ "type": "uint256"
50
+ },
51
+ {
52
+ "indexed": false,
53
+ "internalType": "uint256",
54
+ "name": "jumpMultiplierPerBlock",
55
+ "type": "uint256"
56
+ },
57
+ {
58
+ "indexed": false,
59
+ "internalType": "uint256",
60
+ "name": "kink",
61
+ "type": "uint256"
62
+ }
63
+ ],
64
+ "name": "NewInterestParams",
65
+ "type": "event"
66
+ },
67
+ {
68
+ "constant": true,
69
+ "inputs": [],
70
+ "name": "baseRatePerBlock",
71
+ "outputs": [
72
+ {
73
+ "internalType": "uint256",
74
+ "name": "",
75
+ "type": "uint256"
76
+ }
77
+ ],
78
+ "payable": false,
79
+ "stateMutability": "view",
80
+ "type": "function"
81
+ },
82
+ {
83
+ "constant": true,
84
+ "inputs": [],
85
+ "name": "blocksPerYear",
86
+ "outputs": [
87
+ {
88
+ "internalType": "uint256",
89
+ "name": "",
90
+ "type": "uint256"
91
+ }
92
+ ],
93
+ "payable": false,
94
+ "stateMutability": "view",
95
+ "type": "function"
96
+ },
97
+ {
98
+ "constant": true,
99
+ "inputs": [
100
+ {
101
+ "internalType": "uint256",
102
+ "name": "cash",
103
+ "type": "uint256"
104
+ },
105
+ {
106
+ "internalType": "uint256",
107
+ "name": "borrows",
108
+ "type": "uint256"
109
+ },
110
+ {
111
+ "internalType": "uint256",
112
+ "name": "reserves",
113
+ "type": "uint256"
114
+ }
115
+ ],
116
+ "name": "getBorrowRate",
117
+ "outputs": [
118
+ {
119
+ "internalType": "uint256",
120
+ "name": "",
121
+ "type": "uint256"
122
+ }
123
+ ],
124
+ "payable": false,
125
+ "stateMutability": "view",
126
+ "type": "function"
127
+ },
128
+ {
129
+ "constant": true,
130
+ "inputs": [
131
+ {
132
+ "internalType": "uint256",
133
+ "name": "cash",
134
+ "type": "uint256"
135
+ },
136
+ {
137
+ "internalType": "uint256",
138
+ "name": "borrows",
139
+ "type": "uint256"
140
+ },
141
+ {
142
+ "internalType": "uint256",
143
+ "name": "reserves",
144
+ "type": "uint256"
145
+ },
146
+ {
147
+ "internalType": "uint256",
148
+ "name": "reserveFactorMantissa",
149
+ "type": "uint256"
150
+ }
151
+ ],
152
+ "name": "getSupplyRate",
153
+ "outputs": [
154
+ {
155
+ "internalType": "uint256",
156
+ "name": "",
157
+ "type": "uint256"
158
+ }
159
+ ],
160
+ "payable": false,
161
+ "stateMutability": "view",
162
+ "type": "function"
163
+ },
164
+ {
165
+ "constant": true,
166
+ "inputs": [],
167
+ "name": "isInterestRateModel",
168
+ "outputs": [
169
+ {
170
+ "internalType": "bool",
171
+ "name": "",
172
+ "type": "bool"
173
+ }
174
+ ],
175
+ "payable": false,
176
+ "stateMutability": "view",
177
+ "type": "function"
178
+ },
179
+ {
180
+ "constant": true,
181
+ "inputs": [],
182
+ "name": "jumpMultiplierPerBlock",
183
+ "outputs": [
184
+ {
185
+ "internalType": "uint256",
186
+ "name": "",
187
+ "type": "uint256"
188
+ }
189
+ ],
190
+ "payable": false,
191
+ "stateMutability": "view",
192
+ "type": "function"
193
+ },
194
+ {
195
+ "constant": true,
196
+ "inputs": [],
197
+ "name": "kink",
198
+ "outputs": [
199
+ {
200
+ "internalType": "uint256",
201
+ "name": "",
202
+ "type": "uint256"
203
+ }
204
+ ],
205
+ "payable": false,
206
+ "stateMutability": "view",
207
+ "type": "function"
208
+ },
209
+ {
210
+ "constant": true,
211
+ "inputs": [],
212
+ "name": "multiplierPerBlock",
213
+ "outputs": [
214
+ {
215
+ "internalType": "uint256",
216
+ "name": "",
217
+ "type": "uint256"
218
+ }
219
+ ],
220
+ "payable": false,
221
+ "stateMutability": "view",
222
+ "type": "function"
223
+ },
224
+ {
225
+ "constant": true,
226
+ "inputs": [
227
+ {
228
+ "internalType": "uint256",
229
+ "name": "cash",
230
+ "type": "uint256"
231
+ },
232
+ {
233
+ "internalType": "uint256",
234
+ "name": "borrows",
235
+ "type": "uint256"
236
+ },
237
+ {
238
+ "internalType": "uint256",
239
+ "name": "reserves",
240
+ "type": "uint256"
241
+ }
242
+ ],
243
+ "name": "utilizationRate",
244
+ "outputs": [
245
+ {
246
+ "internalType": "uint256",
247
+ "name": "",
248
+ "type": "uint256"
249
+ }
250
+ ],
251
+ "payable": false,
252
+ "stateMutability": "pure",
253
+ "type": "function"
254
+ }
255
+ ],
256
+ "transactionHash": "0x7aea2cfb508b2ca78e343bdd8fd7ad87722c1b72fcb96a7baec145e5b9869f0f",
257
+ "receipt": {
258
+ "to": null,
259
+ "from": "0x55A9f5374Af30E3045FB491f1da3C2E8a74d168D",
260
+ "contractAddress": "0x3DC78Fe78fd3084CAAd0DC881b4Eb98B6151A5f3",
261
+ "transactionIndex": 353,
262
+ "gasUsed": "510816",
263
+ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000080000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000",
264
+ "blockHash": "0xda2516168ef614bd08882f0a70d85d17532ad02df79ae2175ac14b1623625c8d",
265
+ "transactionHash": "0x7aea2cfb508b2ca78e343bdd8fd7ad87722c1b72fcb96a7baec145e5b9869f0f",
266
+ "logs": [
267
+ {
268
+ "transactionIndex": 353,
269
+ "blockNumber": 51200337,
270
+ "transactionHash": "0x7aea2cfb508b2ca78e343bdd8fd7ad87722c1b72fcb96a7baec145e5b9869f0f",
271
+ "address": "0x3DC78Fe78fd3084CAAd0DC881b4Eb98B6151A5f3",
272
+ "topics": ["0x6960ab234c7ef4b0c9197100f5393cfcde7c453ac910a27bd2000aa1dd4c068d"],
273
+ "data": "0x00000000000000000000000000000000000000000000000000000002c4c4e29900000000000000000000000000000000000000000000000000000001a942ee5c000000000000000000000000000000000000000000000000000000109c9d4f9b0000000000000000000000000000000000000000000000000853a0d2313c0000",
274
+ "logIndex": 2858,
275
+ "blockHash": "0xda2516168ef614bd08882f0a70d85d17532ad02df79ae2175ac14b1623625c8d"
276
+ }
277
+ ],
278
+ "blockNumber": 51200337,
279
+ "cumulativeGasUsed": "75959456",
280
+ "status": 1,
281
+ "byzantium": true
282
+ },
283
+ "args": ["500000000000000000", "300000000000000000", "3000000000000000000", "600000000000000000", 42048000],
284
+ "numDeployments": 1,
285
+ "solcInputHash": "e320c561182ff12e19eb2c016b653f9e",
286
+ "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"baseRatePerYear\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"multiplierPerYear\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"jumpMultiplierPerYear\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"kink_\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"blocksPerYear_\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"baseRatePerBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"multiplierPerBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"jumpMultiplierPerBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"kink\",\"type\":\"uint256\"}],\"name\":\"NewInterestParams\",\"type\":\"event\"},{\"constant\":true,\"inputs\":[],\"name\":\"baseRatePerBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"blocksPerYear\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"borrows\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserves\",\"type\":\"uint256\"}],\"name\":\"getBorrowRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"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\"}],\"name\":\"getSupplyRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isInterestRateModel\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"jumpMultiplierPerBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"kink\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"multiplierPerBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"cash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"borrows\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reserves\",\"type\":\"uint256\"}],\"name\":\"utilizationRate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Venus\",\"methods\":{\"constructor\":{\"params\":{\"baseRatePerYear\":\"The approximate target base APR, as a mantissa (scaled by 1e18)\",\"blocksPerYear_\":\"The approximate number of blocks per year to assume\",\"jumpMultiplierPerYear\":\"The multiplierPerBlock after hitting a specified utilization point\",\"kink_\":\"The utilization point at which the jump multiplier is applied\",\"multiplierPerYear\":\"The rate of increase in interest rate wrt utilization (scaled by 1e18)\"}},\"getBorrowRate(uint256,uint256,uint256)\":{\"params\":{\"borrows\":\"The amount of borrows in the market\",\"cash\":\"The amount of cash in the market\",\"reserves\":\"The amount of reserves in the market\"},\"return\":\"The borrow rate percentage per block as a mantissa (scaled by 1e18)\"},\"getSupplyRate(uint256,uint256,uint256,uint256)\":{\"params\":{\"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\"},\"return\":\"The supply rate percentage per block as a mantissa (scaled by 1e18)\"},\"utilizationRate(uint256,uint256,uint256)\":{\"params\":{\"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)\"},\"return\":\"The utilization rate as a mantissa between [0, 1e18]\"}},\"title\":\"Venus's JumpRateModel Contract\"},\"userdoc\":{\"methods\":{\"constructor\":\"Construct an interest rate model\",\"getBorrowRate(uint256,uint256,uint256)\":{\"notice\":\"Calculates the current borrow rate per block, with the error code expected by the market\"},\"getSupplyRate(uint256,uint256,uint256,uint256)\":{\"notice\":\"Calculates the current supply rate per block\"},\"utilizationRate(uint256,uint256,uint256)\":{\"notice\":\"Calculates the utilization rate of the market: `borrows / (cash + borrows - reserves)`\"}}}},\"settings\":{\"compilationTarget\":{\"contracts/InterestRateModels/JumpRateModel.sol\":\"JumpRateModel\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"useLiteralContent\":true},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/InterestRateModels/InterestRateModel.sol\":{\"content\":\"// SPDX-License-Identifier: BSD-3-Clause\\npragma solidity ^0.5.16;\\n\\n/**\\n * @title Venus's InterestRateModel Interface\\n * @author Venus\\n */\\ncontract InterestRateModel {\\n /// @notice Indicator that this is an InterestRateModel contract (for inspection)\\n bool public constant isInterestRateModel = true;\\n\\n /**\\n * @notice Calculates the current borrow interest rate per block\\n * @param cash The total amount of cash the market has\\n * @param borrows The total amount of borrows the market has outstanding\\n * @param reserves The total amnount of reserves the market has\\n * @return The borrow rate per block (as a percentage, and scaled by 1e18)\\n */\\n function getBorrowRate(uint cash, uint borrows, uint reserves) external view returns (uint);\\n\\n /**\\n * @notice Calculates the current supply interest rate per block\\n * @param cash The total amount of cash the market has\\n * @param borrows The total amount of borrows the market has outstanding\\n * @param reserves The total amnount of reserves the market has\\n * @param reserveFactorMantissa The current reserve factor the market has\\n * @return The supply rate per block (as a percentage, and scaled by 1e18)\\n */\\n function getSupplyRate(\\n uint cash,\\n uint borrows,\\n uint reserves,\\n uint reserveFactorMantissa\\n ) external view returns (uint);\\n}\\n\",\"keccak256\":\"0x786416e63346afec50151e44b993dbbdb12f94cd3f2c9dba631afe237353605f\"},\"contracts/InterestRateModels/JumpRateModel.sol\":{\"content\":\"// SPDX-License-Identifier: BSD-3-Clause\\npragma solidity ^0.5.16;\\n\\nimport \\\"../Utils/SafeMath.sol\\\";\\nimport \\\"./InterestRateModel.sol\\\";\\n\\n/**\\n * @title Venus's JumpRateModel Contract\\n * @author Venus\\n */\\ncontract JumpRateModel is InterestRateModel {\\n using SafeMath for uint;\\n\\n event NewInterestParams(uint baseRatePerBlock, uint multiplierPerBlock, uint jumpMultiplierPerBlock, uint kink);\\n\\n /**\\n * @notice The approximate number of blocks per year that is assumed by the interest rate model\\n */\\n uint public blocksPerYear;\\n\\n /**\\n * @notice The multiplier of utilization rate that gives the slope of the interest rate\\n */\\n uint public multiplierPerBlock;\\n\\n /**\\n * @notice The base interest rate which is the y-intercept when utilization rate is 0\\n */\\n uint public baseRatePerBlock;\\n\\n /**\\n * @notice The multiplierPerBlock after hitting a specified utilization point\\n */\\n uint public jumpMultiplierPerBlock;\\n\\n /**\\n * @notice The utilization point at which the jump multiplier is applied\\n */\\n uint public kink;\\n\\n /**\\n * @notice Construct an interest rate model\\n * @param baseRatePerYear The approximate target base APR, as a mantissa (scaled by 1e18)\\n * @param multiplierPerYear The rate of increase in interest rate wrt utilization (scaled by 1e18)\\n * @param jumpMultiplierPerYear The multiplierPerBlock after hitting a specified utilization point\\n * @param kink_ The utilization point at which the jump multiplier is applied\\n * @param blocksPerYear_ The approximate number of blocks per year to assume\\n */\\n constructor(\\n uint baseRatePerYear,\\n uint multiplierPerYear,\\n uint jumpMultiplierPerYear,\\n uint kink_,\\n uint blocksPerYear_\\n ) public {\\n blocksPerYear = blocksPerYear_;\\n baseRatePerBlock = baseRatePerYear.div(blocksPerYear_);\\n multiplierPerBlock = multiplierPerYear.div(blocksPerYear_);\\n jumpMultiplierPerBlock = jumpMultiplierPerYear.div(blocksPerYear_);\\n kink = kink_;\\n\\n emit NewInterestParams(baseRatePerBlock, multiplierPerBlock, jumpMultiplierPerBlock, kink);\\n }\\n\\n /**\\n * @notice Calculates the utilization rate of the market: `borrows / (cash + borrows - reserves)`\\n * @param cash The amount of cash in the market\\n * @param borrows The amount of borrows in the market\\n * @param reserves The amount of reserves in the market (currently unused)\\n * @return The utilization rate as a mantissa between [0, 1e18]\\n */\\n function utilizationRate(uint cash, uint borrows, uint reserves) public pure returns (uint) {\\n // Utilization rate is 0 when there are no borrows\\n if (borrows == 0) {\\n return 0;\\n }\\n\\n return borrows.mul(1e18).div(cash.add(borrows).sub(reserves));\\n }\\n\\n /**\\n * @notice Calculates the current borrow rate per block, with the error code expected by the market\\n * @param cash The amount of cash in the market\\n * @param borrows The amount of borrows in the market\\n * @param reserves The amount of reserves in the market\\n * @return The borrow rate percentage per block as a mantissa (scaled by 1e18)\\n */\\n function getBorrowRate(uint cash, uint borrows, uint reserves) public view returns (uint) {\\n uint util = utilizationRate(cash, borrows, reserves);\\n\\n if (util <= kink) {\\n return util.mul(multiplierPerBlock).div(1e18).add(baseRatePerBlock);\\n } else {\\n uint normalRate = kink.mul(multiplierPerBlock).div(1e18).add(baseRatePerBlock);\\n uint excessUtil = util.sub(kink);\\n return excessUtil.mul(jumpMultiplierPerBlock).div(1e18).add(normalRate);\\n }\\n }\\n\\n /**\\n * @notice Calculates the current supply rate per block\\n * @param cash The amount of cash in the market\\n * @param borrows The amount of borrows in the market\\n * @param reserves The amount of reserves in the market\\n * @param reserveFactorMantissa The current reserve factor for the market\\n * @return The supply rate percentage per block as a mantissa (scaled by 1e18)\\n */\\n function getSupplyRate(\\n uint cash,\\n uint borrows,\\n uint reserves,\\n uint reserveFactorMantissa\\n ) public view returns (uint) {\\n uint oneMinusReserveFactor = uint(1e18).sub(reserveFactorMantissa);\\n uint borrowRate = getBorrowRate(cash, borrows, reserves);\\n uint rateToPool = borrowRate.mul(oneMinusReserveFactor).div(1e18);\\n return utilizationRate(cash, borrows, reserves).mul(rateToPool).div(1e18);\\n }\\n}\\n\",\"keccak256\":\"0x87c701db44c54772c6884ef71da11a78747be65a705065c25d8deb8b85b98c98\"},\"contracts/Utils/SafeMath.sol\":{\"content\":\"pragma solidity ^0.5.16;\\n\\n/**\\n * @dev Wrappers over Solidity's arithmetic operations with added overflow\\n * checks.\\n *\\n * Arithmetic operations in Solidity wrap on overflow. This can easily result\\n * in bugs, because programmers usually assume that an overflow raises an\\n * error, which is the standard behavior in high level programming languages.\\n * `SafeMath` restores this intuition by reverting the transaction when an\\n * operation overflows.\\n *\\n * Using this library instead of the unchecked operations eliminates an entire\\n * class of bugs, so it's recommended to use it always.\\n */\\nlibrary SafeMath {\\n /**\\n * @dev Returns the addition of two unsigned integers, reverting on\\n * overflow.\\n *\\n * Counterpart to Solidity's `+` operator.\\n *\\n * Requirements:\\n * - Addition cannot overflow.\\n */\\n function add(uint256 a, uint256 b) internal pure returns (uint256) {\\n return add(a, b, \\\"SafeMath: addition overflow\\\");\\n }\\n\\n /**\\n * @dev Returns the subtraction of two unsigned integers, reverting with custom message on\\n * overflow (when the result is negative).\\n *\\n * Counterpart to Solidity's `-` operator.\\n *\\n * Requirements:\\n * - Subtraction cannot overflow.\\n */\\n function add(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {\\n uint256 c = a + b;\\n require(c >= a, errorMessage);\\n\\n return c;\\n }\\n\\n /**\\n * @dev Returns the subtraction of two unsigned integers, reverting on\\n * overflow (when the result is negative).\\n *\\n * Counterpart to Solidity's `-` operator.\\n *\\n * Requirements:\\n * - Subtraction cannot overflow.\\n */\\n function sub(uint256 a, uint256 b) internal pure returns (uint256) {\\n return sub(a, b, \\\"SafeMath: subtraction overflow\\\");\\n }\\n\\n /**\\n * @dev Returns the subtraction of two unsigned integers, reverting with custom message on\\n * overflow (when the result is negative).\\n *\\n * Counterpart to Solidity's `-` operator.\\n *\\n * Requirements:\\n * - Subtraction cannot overflow.\\n */\\n function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {\\n require(b <= a, errorMessage);\\n uint256 c = a - b;\\n\\n return c;\\n }\\n\\n /**\\n * @dev Returns the multiplication of two unsigned integers, reverting on\\n * overflow.\\n *\\n * Counterpart to Solidity's `*` operator.\\n *\\n * Requirements:\\n * - Multiplication cannot overflow.\\n */\\n function mul(uint256 a, uint256 b) internal pure returns (uint256) {\\n // Gas optimization: this is cheaper than requiring 'a' not being zero, but the\\n // benefit is lost if 'b' is also tested.\\n // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522\\n if (a == 0) {\\n return 0;\\n }\\n\\n uint256 c = a * b;\\n require(c / a == b, \\\"SafeMath: multiplication overflow\\\");\\n\\n return c;\\n }\\n\\n /**\\n * @dev Returns the integer division of two unsigned integers. Reverts on\\n * division by zero. The result is rounded towards zero.\\n *\\n * Counterpart to Solidity's `/` operator. Note: this function uses a\\n * `revert` opcode (which leaves remaining gas untouched) while Solidity\\n * uses an invalid opcode to revert (consuming all remaining gas).\\n *\\n * Requirements:\\n * - The divisor cannot be zero.\\n */\\n function div(uint256 a, uint256 b) internal pure returns (uint256) {\\n return div(a, b, \\\"SafeMath: division by zero\\\");\\n }\\n\\n /**\\n * @dev Returns the integer division of two unsigned integers. Reverts with custom message on\\n * division by zero. The result is rounded towards zero.\\n *\\n * Counterpart to Solidity's `/` operator. Note: this function uses a\\n * `revert` opcode (which leaves remaining gas untouched) while Solidity\\n * uses an invalid opcode to revert (consuming all remaining gas).\\n *\\n * Requirements:\\n * - The divisor cannot be zero.\\n */\\n function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {\\n // Solidity only automatically asserts when dividing by 0\\n require(b > 0, errorMessage);\\n uint256 c = a / b;\\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\\n\\n return c;\\n }\\n\\n /**\\n * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\\n * Reverts when dividing by zero.\\n *\\n * Counterpart to Solidity's `%` operator. This function uses a `revert`\\n * opcode (which leaves remaining gas untouched) while Solidity uses an\\n * invalid opcode to revert (consuming all remaining gas).\\n *\\n * Requirements:\\n * - The divisor cannot be zero.\\n */\\n function mod(uint256 a, uint256 b) internal pure returns (uint256) {\\n return mod(a, b, \\\"SafeMath: modulo by zero\\\");\\n }\\n\\n /**\\n * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),\\n * Reverts with custom message when dividing by zero.\\n *\\n * Counterpart to Solidity's `%` operator. This function uses a `revert`\\n * opcode (which leaves remaining gas untouched) while Solidity uses an\\n * invalid opcode to revert (consuming all remaining gas).\\n *\\n * Requirements:\\n * - The divisor cannot be zero.\\n */\\n function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {\\n require(b != 0, errorMessage);\\n return a % b;\\n }\\n}\\n\",\"keccak256\":\"0x9431fd772ed4abc038cdfe9ce6c0066897bd1685ad45848748d1952935d5b8ef\"}},\"version\":1}",
287
+ "bytecode": "0x608060405234801561001057600080fd5b50604051610812380380610812833981810160405260a081101561003357600080fd5b50805160208083015160408401516060850151608090950151600081905593949193909261006c908690839061039d6100ff821b17901c565b60025561008484826100ff602090811b61039d17901c565b60015561009c83826100ff602090811b61039d17901c565b60038190556004839055600254600154604080519283526020830191909152818101929092526060810184905290517f6960ab234c7ef4b0c9197100f5393cfcde7c453ac910a27bd2000aa1dd4c068d9181900360800190a150505050506101f0565b600061014783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061014e60201b60201c565b9392505050565b600081836101da5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561019f578181015183820152602001610187565b50505050905090810190601f1680156101cc5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816101e657fe5b0495945050505050565b610613806101ff6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063a385fb9611610066578063a385fb9614610120578063b816881614610128578063b9f9850a14610157578063f14039de1461015f578063fd2da3391461016757610093565b806315f24053146100985780632191f92a146100d35780636e71e2d8146100ef5780638726bb8914610118575b600080fd5b6100c1600480360360608110156100ae57600080fd5b508035906020810135906040013561016f565b60408051918252519081900360200190f35b6100db610247565b604080519115158252519081900360200190f35b6100c16004803603606081101561010557600080fd5b508035906020810135906040013561024c565b6100c161029e565b6100c16102a4565b6100c16004803603608081101561013e57600080fd5b50803590602081013590604081013590606001356102aa565b6100c1610329565b6100c161032f565b6100c1610335565b60008061017d85858561024c565b905060045481116101cf576101c76002546101bb670de0b6b3a76400006101af6001548661033b90919063ffffffff16565b9063ffffffff61039d16565b9063ffffffff6103df16565b915050610240565b60006101fa6002546101bb670de0b6b3a76400006101af60015460045461033b90919063ffffffff16565b905060006102136004548461042190919063ffffffff16565b905061023a826101bb670de0b6b3a76400006101af6003548661033b90919063ffffffff16565b93505050505b9392505050565b600181565b60008261025b57506000610240565b61029661027e83610272878763ffffffff6103df16565b9063ffffffff61042116565b6101af85670de0b6b3a764000063ffffffff61033b16565b949350505050565b60015481565b60005481565b6000806102c5670de0b6b3a76400008463ffffffff61042116565b905060006102d487878761016f565b905060006102f4670de0b6b3a76400006101af848663ffffffff61033b16565b905061031d670de0b6b3a76400006101af836103118c8c8c61024c565b9063ffffffff61033b16565b98975050505050505050565b60035481565b60025481565b60045481565b60008261034a57506000610397565b8282028284828161035757fe5b04146103945760405162461bcd60e51b81526004018080602001828103825260218152602001806105be6021913960400191505060405180910390fd5b90505b92915050565b600061039483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610463565b600061039483836040518060400160405280601b81526020017f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815250610505565b600061039483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610563565b600081836104ef5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104b457818101518382015260200161049c565b50505050905090810190601f1680156104e15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816104fb57fe5b0495945050505050565b6000838301828582101561055a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156104b457818101518382015260200161049c565b50949350505050565b600081848411156105b55760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156104b457818101518382015260200161049c565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a7231582076f402780e45198caeb5a97509b16371116a983a8839bd7e095f45668ff596b864736f6c63430005100032",
288
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063a385fb9611610066578063a385fb9614610120578063b816881614610128578063b9f9850a14610157578063f14039de1461015f578063fd2da3391461016757610093565b806315f24053146100985780632191f92a146100d35780636e71e2d8146100ef5780638726bb8914610118575b600080fd5b6100c1600480360360608110156100ae57600080fd5b508035906020810135906040013561016f565b60408051918252519081900360200190f35b6100db610247565b604080519115158252519081900360200190f35b6100c16004803603606081101561010557600080fd5b508035906020810135906040013561024c565b6100c161029e565b6100c16102a4565b6100c16004803603608081101561013e57600080fd5b50803590602081013590604081013590606001356102aa565b6100c1610329565b6100c161032f565b6100c1610335565b60008061017d85858561024c565b905060045481116101cf576101c76002546101bb670de0b6b3a76400006101af6001548661033b90919063ffffffff16565b9063ffffffff61039d16565b9063ffffffff6103df16565b915050610240565b60006101fa6002546101bb670de0b6b3a76400006101af60015460045461033b90919063ffffffff16565b905060006102136004548461042190919063ffffffff16565b905061023a826101bb670de0b6b3a76400006101af6003548661033b90919063ffffffff16565b93505050505b9392505050565b600181565b60008261025b57506000610240565b61029661027e83610272878763ffffffff6103df16565b9063ffffffff61042116565b6101af85670de0b6b3a764000063ffffffff61033b16565b949350505050565b60015481565b60005481565b6000806102c5670de0b6b3a76400008463ffffffff61042116565b905060006102d487878761016f565b905060006102f4670de0b6b3a76400006101af848663ffffffff61033b16565b905061031d670de0b6b3a76400006101af836103118c8c8c61024c565b9063ffffffff61033b16565b98975050505050505050565b60035481565b60025481565b60045481565b60008261034a57506000610397565b8282028284828161035757fe5b04146103945760405162461bcd60e51b81526004018080602001828103825260218152602001806105be6021913960400191505060405180910390fd5b90505b92915050565b600061039483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610463565b600061039483836040518060400160405280601b81526020017f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815250610505565b600061039483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610563565b600081836104ef5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104b457818101518382015260200161049c565b50505050905090810190601f1680156104e15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816104fb57fe5b0495945050505050565b6000838301828582101561055a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156104b457818101518382015260200161049c565b50949350505050565b600081848411156105b55760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156104b457818101518382015260200161049c565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a7231582076f402780e45198caeb5a97509b16371116a983a8839bd7e095f45668ff596b864736f6c63430005100032",
289
+ "devdoc": {
290
+ "author": "Venus",
291
+ "methods": {
292
+ "constructor": {
293
+ "params": {
294
+ "baseRatePerYear": "The approximate target base APR, as a mantissa (scaled by 1e18)",
295
+ "blocksPerYear_": "The approximate number of blocks per year to assume",
296
+ "jumpMultiplierPerYear": "The multiplierPerBlock after hitting a specified utilization point",
297
+ "kink_": "The utilization point at which the jump multiplier is applied",
298
+ "multiplierPerYear": "The rate of increase in interest rate wrt utilization (scaled by 1e18)"
299
+ }
300
+ },
301
+ "getBorrowRate(uint256,uint256,uint256)": {
302
+ "params": {
303
+ "borrows": "The amount of borrows in the market",
304
+ "cash": "The amount of cash in the market",
305
+ "reserves": "The amount of reserves in the market"
306
+ },
307
+ "return": "The borrow rate percentage per block as a mantissa (scaled by 1e18)"
308
+ },
309
+ "getSupplyRate(uint256,uint256,uint256,uint256)": {
310
+ "params": {
311
+ "borrows": "The amount of borrows in the market",
312
+ "cash": "The amount of cash in the market",
313
+ "reserveFactorMantissa": "The current reserve factor for the market",
314
+ "reserves": "The amount of reserves in the market"
315
+ },
316
+ "return": "The supply rate percentage per block as a mantissa (scaled by 1e18)"
317
+ },
318
+ "utilizationRate(uint256,uint256,uint256)": {
319
+ "params": {
320
+ "borrows": "The amount of borrows in the market",
321
+ "cash": "The amount of cash in the market",
322
+ "reserves": "The amount of reserves in the market (currently unused)"
323
+ },
324
+ "return": "The utilization rate as a mantissa between [0, 1e18]"
325
+ }
326
+ },
327
+ "title": "Venus's JumpRateModel Contract"
328
+ },
329
+ "userdoc": {
330
+ "methods": {
331
+ "constructor": "Construct an interest rate model",
332
+ "getBorrowRate(uint256,uint256,uint256)": {
333
+ "notice": "Calculates the current borrow rate per block, with the error code expected by the market"
334
+ },
335
+ "getSupplyRate(uint256,uint256,uint256,uint256)": {
336
+ "notice": "Calculates the current supply rate per block"
337
+ },
338
+ "utilizationRate(uint256,uint256,uint256)": {
339
+ "notice": "Calculates the utilization rate of the market: `borrows / (cash + borrows - reserves)`"
340
+ }
341
+ }
342
+ },
343
+ "storageLayout": {
344
+ "storage": [
345
+ {
346
+ "astId": 9365,
347
+ "contract": "contracts/InterestRateModels/JumpRateModel.sol:JumpRateModel",
348
+ "label": "blocksPerYear",
349
+ "offset": 0,
350
+ "slot": "0",
351
+ "type": "t_uint256"
352
+ },
353
+ {
354
+ "astId": 9367,
355
+ "contract": "contracts/InterestRateModels/JumpRateModel.sol:JumpRateModel",
356
+ "label": "multiplierPerBlock",
357
+ "offset": 0,
358
+ "slot": "1",
359
+ "type": "t_uint256"
360
+ },
361
+ {
362
+ "astId": 9369,
363
+ "contract": "contracts/InterestRateModels/JumpRateModel.sol:JumpRateModel",
364
+ "label": "baseRatePerBlock",
365
+ "offset": 0,
366
+ "slot": "2",
367
+ "type": "t_uint256"
368
+ },
369
+ {
370
+ "astId": 9371,
371
+ "contract": "contracts/InterestRateModels/JumpRateModel.sol:JumpRateModel",
372
+ "label": "jumpMultiplierPerBlock",
373
+ "offset": 0,
374
+ "slot": "3",
375
+ "type": "t_uint256"
376
+ },
377
+ {
378
+ "astId": 9373,
379
+ "contract": "contracts/InterestRateModels/JumpRateModel.sol:JumpRateModel",
380
+ "label": "kink",
381
+ "offset": 0,
382
+ "slot": "4",
383
+ "type": "t_uint256"
384
+ }
385
+ ],
386
+ "types": {
387
+ "t_uint256": {
388
+ "encoding": "inplace",
389
+ "label": "uint256",
390
+ "numberOfBytes": "32"
391
+ }
392
+ }
393
+ }
394
+ }
@@ -1,5 +1,5 @@
1
1
  {
2
- "address": "0xB3eE9073a1a394ef242d27267C1A5D3b9ed739fA",
2
+ "address": "0xCD6956823F1Aaa5be19a6827aFC6d32AD1ef8800",
3
3
  "abi": [
4
4
  {
5
5
  "inputs": [],
@@ -14,28 +14,28 @@
14
14
  "type": "function"
15
15
  }
16
16
  ],
17
- "transactionHash": "0x2b22c9e451f9cd8b245a4c444db08fc2f04efe0d82c05c262e9b4a31e2cf9710",
17
+ "transactionHash": "0x79e7eba0a54e333db6bb1f8ea442e2825c63eec6a69caa5e1cd99f84a7a007ec",
18
18
  "receipt": {
19
19
  "to": null,
20
20
  "from": "0x55A9f5374Af30E3045FB491f1da3C2E8a74d168D",
21
- "contractAddress": "0xB3eE9073a1a394ef242d27267C1A5D3b9ed739fA",
22
- "transactionIndex": 168,
23
- "gasUsed": "1021063",
21
+ "contractAddress": "0xCD6956823F1Aaa5be19a6827aFC6d32AD1ef8800",
22
+ "transactionIndex": 158,
23
+ "gasUsed": "1098750",
24
24
  "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
25
- "blockHash": "0xab1b360c1ab1ce2e66c78ff7e497c8e5f9ac7b406b0abf461660fb7948728955",
26
- "transactionHash": "0x2b22c9e451f9cd8b245a4c444db08fc2f04efe0d82c05c262e9b4a31e2cf9710",
25
+ "blockHash": "0xf1f57af56c411004d5f93ded466d46ada6fe20065659df81aba863d1ec6595fc",
26
+ "transactionHash": "0x79e7eba0a54e333db6bb1f8ea442e2825c63eec6a69caa5e1cd99f84a7a007ec",
27
27
  "logs": [],
28
- "blockNumber": 48555945,
29
- "cumulativeGasUsed": "19385312",
28
+ "blockNumber": 51959452,
29
+ "cumulativeGasUsed": "26107527",
30
30
  "status": 1,
31
31
  "byzantium": true
32
32
  },
33
33
  "args": [],
34
34
  "numDeployments": 1,
35
- "solcInputHash": "842e9e01c7cc8fd2f7629c41479754cf",
36
- "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"Unauthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/generated/SetCheckpointBscmainnet.sol\":\"SetCheckpointBscmainnet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/generated/SetCheckpointBscmainnet.sol\":{\"content\":\"\\n// SPDX-License-Identifier: BSD-3-Clause\\npragma solidity 0.8.25;\\n\\ninterface VBNBAdminInterface {\\n function setInterestRateModel(address) external;\\n}\\n\\ninterface VTokenInterface {\\n function _setInterestRateModel(address) external;\\n}\\n\\ncontract SetCheckpointBscmainnet {\\n error Unauthorized();\\n\\n function run() external {\\n if (msg.sender != 0x939bD8d64c0A9583A7Dcea9933f7b21697ab6396) {\\n revert Unauthorized();\\n }\\n \\n // vUSDC -> CheckpointView_From_TwoKinks_base0bps_slope1500bps_kink8000bps_slope29000bps_base20bps_kink29000bps_jump30000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xecA88125a5ADbe82614ffC12D0DB554E2e2867C8)._setInterestRateModel(0x81d6ae3EEa177d5D052B329dc74d39B935569359);\\n \\n // vUSDT -> CheckpointView_From_TwoKinks_base0bps_slope1500bps_kink8000bps_slope29000bps_base20bps_kink29000bps_jump30000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xfD5840Cd36d94D7229439859C0112a4185BC0255)._setInterestRateModel(0x81d6ae3EEa177d5D052B329dc74d39B935569359);\\n \\n // vBUSD -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope0bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x95c78222B3D6e262426483D42CfA53685A67Ab9D)._setInterestRateModel(0x4088e11DF221314896c2Aaed72074F89928e5b59);\\n \\n // vSXP -> CheckpointView_From_JumpRateModel_base5000bps_slope3000bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x2fF3d0F6990a40261c66E1ff2017aCBc282EB6d0)._setInterestRateModel(0xE508AF8fE95D508EF284DDFd76610EDBef8Cb8E9);\\n \\n // vXVS -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope24000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x151B1e2635A717bcDc836ECd6FbB62B674FE3E1D)._setInterestRateModel(0x9318f66729007281D4C4545c04b046C437bD77E5);\\n \\n // vBNB -> CheckpointView_From_TwoKinks_base0bps_slope350bps_kink8000bps_slope217500bps_base20bps_kink29000bps_jump30000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VBNBAdminInterface(0x9A7890534d9d91d473F28cB97962d176e2B65f1d).setInterestRateModel(0xfCFE909330FF50D2c72715cBEC4E54c476c27CEC);\\n \\n // vBTC -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink7500bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x882C173bC7Ff3b7786CA16dfeD3DFFfb9Ee7847B)._setInterestRateModel(0x4a03AbcC888020c779bB362b4C1D2869485bDEe4);\\n \\n // vETH -> CheckpointView_From_JumpRateModel_base0bps_slope300bps_jump45000bps_kink9000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xf508fCD89b8bd15579dc79A6827cB4686A3592c8)._setInterestRateModel(0xEBb072c6336f1d0a7d8BBf1c82d9C9F7D6485Fa4);\\n \\n // vLTC -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x57A5297F2cB2c0AaC9D554660acd6D385Ab50c6B)._setInterestRateModel(0xD574F5186cEEf3f4801A9A8C6fe257ef71493371);\\n \\n // vXRP -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xB248a295732e0225acd3337607cc01068e3b9c10)._setInterestRateModel(0xD574F5186cEEf3f4801A9A8C6fe257ef71493371);\\n \\n // vBCH -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x5F0388EBc2B94FA8E123F404b79cCF5f40b29176)._setInterestRateModel(0x0E6F99766c947F85c242b8328837b39c8bB887c6);\\n \\n // vDOT -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x1610bc33319e9398de5f57B33a5b184c806aD217)._setInterestRateModel(0x0E6F99766c947F85c242b8328837b39c8bB887c6);\\n \\n // vLINK -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x650b940a1033B8A1b1873f78730FcFC73ec11f1f)._setInterestRateModel(0xD574F5186cEEf3f4801A9A8C6fe257ef71493371);\\n \\n // vDAI -> CheckpointView_From_JumpRateModel_base0bps_slope1750bps_jump25000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x334b3eCB4DCa3593BCCC3c7EBD1A1C1d1780FBF1)._setInterestRateModel(0x42Ef8ecCEe0782a4E644B3EB39761fb6c696ccF2);\\n \\n // vFIL -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xf91d58b5aE142DAcC749f58A49FCBac340Cb0343)._setInterestRateModel(0xEd279B5eAde8E54175941F188d16067c6341Cd1A);\\n \\n // vBETH -> CheckpointView_From_JumpRateModel_base0bps_slope1500bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x972207A639CC1B374B893cc33Fa251b55CEB7c07)._setInterestRateModel(0x7857738486E813b5BCb6cA62B46F6b2ee029609B);\\n \\n // vADA -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x9A0AF7FDb2065Ce470D72664DE73cAE409dA28Ec)._setInterestRateModel(0x0E6F99766c947F85c242b8328837b39c8bB887c6);\\n \\n // vDOGE -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xec3422Ef92B2fb59e84c8B02Ba73F1fE84Ed8D71)._setInterestRateModel(0xEd279B5eAde8E54175941F188d16067c6341Cd1A);\\n \\n // vMATIC -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x5c9476FcD6a4F9a3654139721c949c2233bBbBc8)._setInterestRateModel(0xD574F5186cEEf3f4801A9A8C6fe257ef71493371);\\n \\n // vCAKE -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x86aC3974e2BD0d60825230fa6F355fF11409df5c)._setInterestRateModel(0xEd279B5eAde8E54175941F188d16067c6341Cd1A);\\n \\n // vAAVE -> CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x26DA28954763B92139ED49283625ceCAf52C6f94)._setInterestRateModel(0x83671a928e8D4c34F9f8faD06bd8356Fdb524A0F);\\n \\n // vTUSDOLD -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope0bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x08CEB3F4a7ed3500cA0982bcd0FC7816688084c3)._setInterestRateModel(0x4088e11DF221314896c2Aaed72074F89928e5b59);\\n \\n // vTRXOLD -> CheckpointView_From_JumpRateModel_base200bps_slope10000bps_jump30000bps_kink100bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x61eDcFe8Dd6bA3c891CB9bEc2dc7657B3B422E93)._setInterestRateModel(0x06Da1E5e6Ba1E0CA26ac92907b5b30D32789426A);\\n \\n // vTRX -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xC5D3466aA484B040eE977073fcF337f2c00071c1)._setInterestRateModel(0x0E6F99766c947F85c242b8328837b39c8bB887c6);\\n \\n // vWBETH -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x6CFdEc747f37DAf3b87a35a1D9c8AD3063A1A8A0)._setInterestRateModel(0x747943C45eB782Db9E04f6f54Ea5f27Cc6627e4A);\\n \\n // vTUSD -> CheckpointView_From_JumpRateModel_base0bps_slope1750bps_jump25000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xBf762cd5991cA1DCdDaC9ae5C638F5B5Dc3Bee6E)._setInterestRateModel(0x42Ef8ecCEe0782a4E644B3EB39761fb6c696ccF2);\\n \\n // vUNI -> CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x27FF564707786720C71A2e5c1490A63266683612)._setInterestRateModel(0x83671a928e8D4c34F9f8faD06bd8356Fdb524A0F);\\n \\n // vFDUSD -> CheckpointView_From_JumpRateModel_base0bps_slope750bps_jump50000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xC4eF4229FEc74Ccfe17B2bdeF7715fAC740BA0ba)._setInterestRateModel(0x717dbabeCc502c8712e7646ab6801F802a997C20);\\n \\n // vTWT -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x4d41a36D04D97785bcEA57b057C412b278e6Edcc)._setInterestRateModel(0xEd279B5eAde8E54175941F188d16067c6341Cd1A);\\n \\n // vSolvBTC -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xf841cb62c19fCd4fF5CD0AaB5939f3140BaaC3Ea)._setInterestRateModel(0x3BA66110c585Cb4032A0289bf4Cd8F983d556b10);\\n \\n // vTHE -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x86e06EAfa6A1eA631Eab51DE500E3D474933739f)._setInterestRateModel(0xc6cC40ca4e90d151261f6524b97C3D4997479621);\\n \\n // vSOL -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0xBf515bA4D1b52FFdCeaBF20d31D705Ce789F2cEC)._setInterestRateModel(0xEd279B5eAde8E54175941F188d16067c6341Cd1A);\\n \\n // vlisUSD -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x689E0daB47Ab16bcae87Ec18491692BF621Dc6Ab)._setInterestRateModel(0xF8e641695f89A5919DF03Edd9ECdA3D0dc89aAA9);\\n \\n // vPT-sUSDE-26JUN2025 -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x9e4E5fed5Ac5B9F732d0D850A615206330Bf1866)._setInterestRateModel(0xF8e641695f89A5919DF03Edd9ECdA3D0dc89aAA9);\\n \\n // vsUSDe -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x699658323d58eE25c69F1a29d476946ab011bD18)._setInterestRateModel(0xF8e641695f89A5919DF03Edd9ECdA3D0dc89aAA9);\\n \\n // vUSDe -> CheckpointView_From_JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy10512000_To_bpy21024000_At_1745903100\\n VTokenInterface(0x74ca6930108F775CC667894EEa33843e691680d7)._setInterestRateModel(0xa91617Ba1a6CCF61a70c7e4b0a2A36c7726bb3f6);\\n }\\n}\",\"keccak256\":\"0xa436bae271ac019d3c31a56f55d52932babc36412a0900fd9d50328452ec4766\",\"license\":\"BSD-3-Clause\"}},\"version\":1}",
37
- "bytecode": "0x6080604052348015600f57600080fd5b506111858061001f6000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063c040622614610030575b600080fd5b61003861003a565b005b73939bd8d64c0a9583a7dcea9933f7b21697ab6396331461006d576040516282b42960e81b815260040160405180910390fd5b60405163f2b3abbd60e01b81527381d6ae3eea177d5d052b329dc74d39b935569359600482015273eca88125a5adbe82614ffc12d0db554e2e2867c89063f2b3abbd90602401600060405180830381600087803b1580156100cd57600080fd5b505af11580156100e1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527381d6ae3eea177d5d052b329dc74d39b935569359600482015273fd5840cd36d94d7229439859c0112a4185bc0255925063f2b3abbd9150602401600060405180830381600087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734088e11df221314896c2aaed72074f89928e5b5960048201527395c78222b3d6e262426483d42cfa53685a67ab9d925063f2b3abbd9150602401600060405180830381600087803b1580156101bd57600080fd5b505af11580156101d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273e508af8fe95d508ef284ddfd76610edbef8cb8e96004820152732ff3d0f6990a40261c66e1ff2017acbc282eb6d0925063f2b3abbd9150602401600060405180830381600087803b15801561023557600080fd5b505af1158015610249573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152739318f66729007281d4c4545c04b046c437bd77e5600482015273151b1e2635a717bcdc836ecd6fbb62b674fe3e1d925063f2b3abbd9150602401600060405180830381600087803b1580156102ad57600080fd5b505af11580156102c1573d6000803e3d6000fd5b50506040516345e6a00b60e11b815273fcfe909330ff50d2c72715cbec4e54c476c27cec6004820152739a7890534d9d91d473f28cb97962d176e2b65f1d9250638bcd40169150602401600060405180830381600087803b15801561032557600080fd5b505af1158015610339573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734a03abcc888020c779bb362b4c1d2869485bdee4600482015273882c173bc7ff3b7786ca16dfed3dfffb9ee7847b925063f2b3abbd9150602401600060405180830381600087803b15801561039d57600080fd5b505af11580156103b1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ebb072c6336f1d0a7d8bbf1c82d9c9f7d6485fa4600482015273f508fcd89b8bd15579dc79a6827cb4686a3592c8925063f2b3abbd9150602401600060405180830381600087803b15801561041557600080fd5b505af1158015610429573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef7149337160048201527357a5297f2cb2c0aac9d554660acd6d385ab50c6b925063f2b3abbd9150602401600060405180830381600087803b15801561048d57600080fd5b505af11580156104a1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef71493371600482015273b248a295732e0225acd3337607cc01068e3b9c10925063f2b3abbd9150602401600060405180830381600087803b15801561050557600080fd5b505af1158015610519573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152735f0388ebc2b94fa8e123f404b79ccf5f40b29176925063f2b3abbd9150602401600060405180830381600087803b15801561057d57600080fd5b505af1158015610591573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152731610bc33319e9398de5f57b33a5b184c806ad217925063f2b3abbd9150602401600060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef71493371600482015273650b940a1033b8a1b1873f78730fcfc73ec11f1f925063f2b3abbd9150602401600060405180830381600087803b15801561066d57600080fd5b505af1158015610681573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527342ef8eccee0782a4e644b3eb39761fb6c696ccf2600482015273334b3ecb4dca3593bccc3c7ebd1a1c1d1780fbf1925063f2b3abbd9150602401600060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273f91d58b5ae142dacc749f58a49fcbac340cb0343925063f2b3abbd9150602401600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737857738486e813b5bcb6ca62b46f6b2ee029609b600482015273972207a639cc1b374b893cc33fa251b55ceb7c07925063f2b3abbd9150602401600060405180830381600087803b1580156107d557600080fd5b505af11580156107e9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152739a0af7fdb2065ce470d72664de73cae409da28ec925063f2b3abbd9150602401600060405180830381600087803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273ec3422ef92b2fb59e84c8b02ba73f1fe84ed8d71925063f2b3abbd9150602401600060405180830381600087803b1580156108c557600080fd5b505af11580156108d9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef714933716004820152735c9476fcd6a4f9a3654139721c949c2233bbbbc8925063f2b3abbd9150602401600060405180830381600087803b15801561093d57600080fd5b505af1158015610951573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a60048201527386ac3974e2bd0d60825230fa6f355ff11409df5c925063f2b3abbd9150602401600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527383671a928e8d4c34f9f8fad06bd8356fdb524a0f60048201527326da28954763b92139ed49283625cecaf52c6f94925063f2b3abbd9150602401600060405180830381600087803b158015610a2d57600080fd5b505af1158015610a41573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734088e11df221314896c2aaed72074f89928e5b5960048201527308ceb3f4a7ed3500ca0982bcd0fc7816688084c3925063f2b3abbd9150602401600060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527306da1e5e6ba1e0ca26ac92907b5b30d32789426a60048201527361edcfe8dd6ba3c891cb9bec2dc7657b3b422e93925063f2b3abbd9150602401600060405180830381600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c6600482015273c5d3466aa484b040ee977073fcf337f2c00071c1925063f2b3abbd9150602401600060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273747943c45eb782db9e04f6f54ea5f27cc6627e4a6004820152736cfdec747f37daf3b87a35a1d9c8ad3063a1a8a0925063f2b3abbd9150602401600060405180830381600087803b158015610c0d57600080fd5b505af1158015610c21573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527342ef8eccee0782a4e644b3eb39761fb6c696ccf2600482015273bf762cd5991ca1dcddac9ae5c638f5b5dc3bee6e925063f2b3abbd9150602401600060405180830381600087803b158015610c8557600080fd5b505af1158015610c99573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527383671a928e8d4c34f9f8fad06bd8356fdb524a0f60048201527327ff564707786720c71a2e5c1490a63266683612925063f2b3abbd9150602401600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273717dbabecc502c8712e7646ab6801f802a997c20600482015273c4ef4229fec74ccfe17b2bdef7715fac740ba0ba925063f2b3abbd9150602401600060405180830381600087803b158015610d7557600080fd5b505af1158015610d89573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a6004820152734d41a36d04d97785bcea57b057c412b278e6edcc925063f2b3abbd9150602401600060405180830381600087803b158015610ded57600080fd5b505af1158015610e01573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152733ba66110c585cb4032a0289bf4cd8f983d556b10600482015273f841cb62c19fcd4ff5cd0aab5939f3140baac3ea925063f2b3abbd9150602401600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273c6cc40ca4e90d151261f6524b97c3d499747962160048201527386e06eafa6a1ea631eab51de500e3d474933739f925063f2b3abbd9150602401600060405180830381600087803b158015610edd57600080fd5b505af1158015610ef1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273bf515ba4d1b52ffdceabf20d31d705ce789f2cec925063f2b3abbd9150602401600060405180830381600087803b158015610f5557600080fd5b505af1158015610f69573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa9600482015273689e0dab47ab16bcae87ec18491692bf621dc6ab925063f2b3abbd9150602401600060405180830381600087803b158015610fcd57600080fd5b505af1158015610fe1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa96004820152739e4e5fed5ac5b9f732d0d850a615206330bf1866925063f2b3abbd9150602401600060405180830381600087803b15801561104557600080fd5b505af1158015611059573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa9600482015273699658323d58ee25c69f1a29d476946ab011bd18925063f2b3abbd9150602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273a91617ba1a6ccf61a70c7e4b0a2a36c7726bb3f660048201527374ca6930108f775cc667894eea33843e691680d7925063f2b3abbd9150602401600060405180830381600087803b15801561113557600080fd5b505af1158015611149573d6000803e3d6000fd5b5050505056fea2646970667358221220f27eb85f33e1154db04b501410029eba73d26e3d0d99d7d705e372519411621d64736f6c63430008190033",
38
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063c040622614610030575b600080fd5b61003861003a565b005b73939bd8d64c0a9583a7dcea9933f7b21697ab6396331461006d576040516282b42960e81b815260040160405180910390fd5b60405163f2b3abbd60e01b81527381d6ae3eea177d5d052b329dc74d39b935569359600482015273eca88125a5adbe82614ffc12d0db554e2e2867c89063f2b3abbd90602401600060405180830381600087803b1580156100cd57600080fd5b505af11580156100e1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527381d6ae3eea177d5d052b329dc74d39b935569359600482015273fd5840cd36d94d7229439859c0112a4185bc0255925063f2b3abbd9150602401600060405180830381600087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734088e11df221314896c2aaed72074f89928e5b5960048201527395c78222b3d6e262426483d42cfa53685a67ab9d925063f2b3abbd9150602401600060405180830381600087803b1580156101bd57600080fd5b505af11580156101d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273e508af8fe95d508ef284ddfd76610edbef8cb8e96004820152732ff3d0f6990a40261c66e1ff2017acbc282eb6d0925063f2b3abbd9150602401600060405180830381600087803b15801561023557600080fd5b505af1158015610249573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152739318f66729007281d4c4545c04b046c437bd77e5600482015273151b1e2635a717bcdc836ecd6fbb62b674fe3e1d925063f2b3abbd9150602401600060405180830381600087803b1580156102ad57600080fd5b505af11580156102c1573d6000803e3d6000fd5b50506040516345e6a00b60e11b815273fcfe909330ff50d2c72715cbec4e54c476c27cec6004820152739a7890534d9d91d473f28cb97962d176e2b65f1d9250638bcd40169150602401600060405180830381600087803b15801561032557600080fd5b505af1158015610339573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734a03abcc888020c779bb362b4c1d2869485bdee4600482015273882c173bc7ff3b7786ca16dfed3dfffb9ee7847b925063f2b3abbd9150602401600060405180830381600087803b15801561039d57600080fd5b505af11580156103b1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ebb072c6336f1d0a7d8bbf1c82d9c9f7d6485fa4600482015273f508fcd89b8bd15579dc79a6827cb4686a3592c8925063f2b3abbd9150602401600060405180830381600087803b15801561041557600080fd5b505af1158015610429573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef7149337160048201527357a5297f2cb2c0aac9d554660acd6d385ab50c6b925063f2b3abbd9150602401600060405180830381600087803b15801561048d57600080fd5b505af11580156104a1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef71493371600482015273b248a295732e0225acd3337607cc01068e3b9c10925063f2b3abbd9150602401600060405180830381600087803b15801561050557600080fd5b505af1158015610519573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152735f0388ebc2b94fa8e123f404b79ccf5f40b29176925063f2b3abbd9150602401600060405180830381600087803b15801561057d57600080fd5b505af1158015610591573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152731610bc33319e9398de5f57b33a5b184c806ad217925063f2b3abbd9150602401600060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef71493371600482015273650b940a1033b8a1b1873f78730fcfc73ec11f1f925063f2b3abbd9150602401600060405180830381600087803b15801561066d57600080fd5b505af1158015610681573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527342ef8eccee0782a4e644b3eb39761fb6c696ccf2600482015273334b3ecb4dca3593bccc3c7ebd1a1c1d1780fbf1925063f2b3abbd9150602401600060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273f91d58b5ae142dacc749f58a49fcbac340cb0343925063f2b3abbd9150602401600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737857738486e813b5bcb6ca62b46f6b2ee029609b600482015273972207a639cc1b374b893cc33fa251b55ceb7c07925063f2b3abbd9150602401600060405180830381600087803b1580156107d557600080fd5b505af11580156107e9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c66004820152739a0af7fdb2065ce470d72664de73cae409da28ec925063f2b3abbd9150602401600060405180830381600087803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273ec3422ef92b2fb59e84c8b02ba73f1fe84ed8d71925063f2b3abbd9150602401600060405180830381600087803b1580156108c557600080fd5b505af11580156108d9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d574f5186ceef3f4801a9a8c6fe257ef714933716004820152735c9476fcd6a4f9a3654139721c949c2233bbbbc8925063f2b3abbd9150602401600060405180830381600087803b15801561093d57600080fd5b505af1158015610951573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a60048201527386ac3974e2bd0d60825230fa6f355ff11409df5c925063f2b3abbd9150602401600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527383671a928e8d4c34f9f8fad06bd8356fdb524a0f60048201527326da28954763b92139ed49283625cecaf52c6f94925063f2b3abbd9150602401600060405180830381600087803b158015610a2d57600080fd5b505af1158015610a41573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152734088e11df221314896c2aaed72074f89928e5b5960048201527308ceb3f4a7ed3500ca0982bcd0fc7816688084c3925063f2b3abbd9150602401600060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527306da1e5e6ba1e0ca26ac92907b5b30d32789426a60048201527361edcfe8dd6ba3c891cb9bec2dc7657b3b422e93925063f2b3abbd9150602401600060405180830381600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152730e6f99766c947f85c242b8328837b39c8bb887c6600482015273c5d3466aa484b040ee977073fcf337f2c00071c1925063f2b3abbd9150602401600060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273747943c45eb782db9e04f6f54ea5f27cc6627e4a6004820152736cfdec747f37daf3b87a35a1d9c8ad3063a1a8a0925063f2b3abbd9150602401600060405180830381600087803b158015610c0d57600080fd5b505af1158015610c21573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527342ef8eccee0782a4e644b3eb39761fb6c696ccf2600482015273bf762cd5991ca1dcddac9ae5c638f5b5dc3bee6e925063f2b3abbd9150602401600060405180830381600087803b158015610c8557600080fd5b505af1158015610c99573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527383671a928e8d4c34f9f8fad06bd8356fdb524a0f60048201527327ff564707786720c71a2e5c1490a63266683612925063f2b3abbd9150602401600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273717dbabecc502c8712e7646ab6801f802a997c20600482015273c4ef4229fec74ccfe17b2bdef7715fac740ba0ba925063f2b3abbd9150602401600060405180830381600087803b158015610d7557600080fd5b505af1158015610d89573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a6004820152734d41a36d04d97785bcea57b057c412b278e6edcc925063f2b3abbd9150602401600060405180830381600087803b158015610ded57600080fd5b505af1158015610e01573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152733ba66110c585cb4032a0289bf4cd8f983d556b10600482015273f841cb62c19fcd4ff5cd0aab5939f3140baac3ea925063f2b3abbd9150602401600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273c6cc40ca4e90d151261f6524b97c3d499747962160048201527386e06eafa6a1ea631eab51de500e3d474933739f925063f2b3abbd9150602401600060405180830381600087803b158015610edd57600080fd5b505af1158015610ef1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273ed279b5eade8e54175941f188d16067c6341cd1a600482015273bf515ba4d1b52ffdceabf20d31d705ce789f2cec925063f2b3abbd9150602401600060405180830381600087803b158015610f5557600080fd5b505af1158015610f69573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa9600482015273689e0dab47ab16bcae87ec18491692bf621dc6ab925063f2b3abbd9150602401600060405180830381600087803b158015610fcd57600080fd5b505af1158015610fe1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa96004820152739e4e5fed5ac5b9f732d0d850a615206330bf1866925063f2b3abbd9150602401600060405180830381600087803b15801561104557600080fd5b505af1158015611059573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f8e641695f89a5919df03edd9ecda3d0dc89aaa9600482015273699658323d58ee25c69f1a29d476946ab011bd18925063f2b3abbd9150602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273a91617ba1a6ccf61a70c7e4b0a2a36c7726bb3f660048201527374ca6930108f775cc667894eea33843e691680d7925063f2b3abbd9150602401600060405180830381600087803b15801561113557600080fd5b505af1158015611149573d6000803e3d6000fd5b5050505056fea2646970667358221220f27eb85f33e1154db04b501410029eba73d26e3d0d99d7d705e372519411621d64736f6c63430008190033",
35
+ "solcInputHash": "562ab186f59f60709f089c3eb137d5e4",
36
+ "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"Unauthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/generated/SetCheckpointBscmainnet.sol\":\"SetCheckpointBscmainnet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/generated/SetCheckpointBscmainnet.sol\":{\"content\":\"\\n// SPDX-License-Identifier: BSD-3-Clause\\npragma solidity 0.8.25;\\n\\ninterface VBNBAdminInterface {\\n function setInterestRateModel(address) external;\\n}\\n\\ninterface VTokenInterface {\\n function _setInterestRateModel(address) external;\\n}\\n\\ncontract SetCheckpointBscmainnet {\\n error Unauthorized();\\n\\n function run() external {\\n if (msg.sender != 0x939bD8d64c0A9583A7Dcea9933f7b21697ab6396) {\\n revert Unauthorized();\\n }\\n \\n // vUSDC -> CheckpointView_From_TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xecA88125a5ADbe82614ffC12D0DB554E2e2867C8)._setInterestRateModel(0x08437b3C0BeA58fE6eC696a04c9675E0980b9469);\\n \\n // vUSDT -> CheckpointView_From_TwoKinks_base0bps_slope1000bps_kink8000bps_slope27000bps_base20bps_kink29000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xfD5840Cd36d94D7229439859C0112a4185BC0255)._setInterestRateModel(0x08437b3C0BeA58fE6eC696a04c9675E0980b9469);\\n \\n // vBUSD -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope0bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x95c78222B3D6e262426483D42CfA53685A67Ab9D)._setInterestRateModel(0x02448c05fdd44c1dCcdc54A29fe02E8f43f31BF7);\\n \\n // vSXP -> CheckpointView_From_JumpRateModel_base5000bps_slope3000bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x2fF3d0F6990a40261c66E1ff2017aCBc282EB6d0)._setInterestRateModel(0xbF6BdB41dbCB5ABA54189767d113e7c5155aB70A);\\n \\n // vXVS -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope24000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x151B1e2635A717bcDc836ECd6FbB62B674FE3E1D)._setInterestRateModel(0x170bE58D5C1983f03DC287AB9aBffC7DA16f862b);\\n \\n // vBNB -> CheckpointView_From_TwoKinks_base0bps_slope450bps_kink7000bps_slope214000bps_base20bps_kink28000bps_jump30000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VBNBAdminInterface(0x9A7890534d9d91d473F28cB97962d176e2B65f1d).setInterestRateModel(0xF78db86E58dc1b76569a0b3105EF5186033911A1);\\n \\n // vBTC -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink7500bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x882C173bC7Ff3b7786CA16dfeD3DFFfb9Ee7847B)._setInterestRateModel(0xa84189107aF59BF132F3e7dd45DD201C0bb25bF4);\\n \\n // vETH -> CheckpointView_From_JumpRateModel_base0bps_slope300bps_jump45000bps_kink9000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xf508fCD89b8bd15579dc79A6827cB4686A3592c8)._setInterestRateModel(0x38Dd273fE7590403f554F350a7c3c592e8227EB7);\\n \\n // vLTC -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x57A5297F2cB2c0AaC9D554660acd6D385Ab50c6B)._setInterestRateModel(0xf7B5F7856E0520D66c03F32D576eECD9156dAb29);\\n \\n // vXRP -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xB248a295732e0225acd3337607cc01068e3b9c10)._setInterestRateModel(0xf7B5F7856E0520D66c03F32D576eECD9156dAb29);\\n \\n // vBCH -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x5F0388EBc2B94FA8E123F404b79cCF5f40b29176)._setInterestRateModel(0x1326346bDA0BFC3AC7F5BFb0F6eA7f4302A65bCd);\\n \\n // vDOT -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x1610bc33319e9398de5f57B33a5b184c806aD217)._setInterestRateModel(0x1326346bDA0BFC3AC7F5BFb0F6eA7f4302A65bCd);\\n \\n // vLINK -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x650b940a1033B8A1b1873f78730FcFC73ec11f1f)._setInterestRateModel(0xf7B5F7856E0520D66c03F32D576eECD9156dAb29);\\n \\n // vDAI -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x334b3eCB4DCa3593BCCC3c7EBD1A1C1d1780FBF1)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vFIL -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xf91d58b5aE142DAcC749f58A49FCBac340Cb0343)._setInterestRateModel(0x7611a9A201524594633B2eb5A8Ea42A9418c9811);\\n \\n // vBETH -> CheckpointView_From_JumpRateModel_base0bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x972207A639CC1B374B893cc33Fa251b55CEB7c07)._setInterestRateModel(0x968D2f613F0517eaE22f898529c4658Db8C578BC);\\n \\n // vADA -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x9A0AF7FDb2065Ce470D72664DE73cAE409dA28Ec)._setInterestRateModel(0x1326346bDA0BFC3AC7F5BFb0F6eA7f4302A65bCd);\\n \\n // vDOGE -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xec3422Ef92B2fb59e84c8B02Ba73F1fE84Ed8D71)._setInterestRateModel(0x7611a9A201524594633B2eb5A8Ea42A9418c9811);\\n \\n // vMATIC -> CheckpointView_From_JumpRateModel_base200bps_slope1200bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x5c9476FcD6a4F9a3654139721c949c2233bBbBc8)._setInterestRateModel(0xf7B5F7856E0520D66c03F32D576eECD9156dAb29);\\n \\n // vCAKE -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x86aC3974e2BD0d60825230fa6F355fF11409df5c)._setInterestRateModel(0x7611a9A201524594633B2eb5A8Ea42A9418c9811);\\n \\n // vAAVE -> CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x26DA28954763B92139ED49283625ceCAf52C6f94)._setInterestRateModel(0x107F2b97dcd259Aa373709bF1021aD120a2FED98);\\n \\n // vTUSDOLD -> CheckpointView_From_WhitePaperInterestRateModel_base0bps_slope0bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x08CEB3F4a7ed3500cA0982bcd0FC7816688084c3)._setInterestRateModel(0x02448c05fdd44c1dCcdc54A29fe02E8f43f31BF7);\\n \\n // vTRXOLD -> CheckpointView_From_JumpRateModel_base200bps_slope10000bps_jump30000bps_kink100bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x61eDcFe8Dd6bA3c891CB9bEc2dc7657B3B422E93)._setInterestRateModel(0xb2bd70eD38E928470B5aF2F01E799c1d3b4d8796);\\n \\n // vTRX -> CheckpointView_From_JumpRateModel_base200bps_slope1500bps_jump30000bps_kink6000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xC5D3466aA484B040eE977073fcF337f2c00071c1)._setInterestRateModel(0x1326346bDA0BFC3AC7F5BFb0F6eA7f4302A65bCd);\\n \\n // vWBETH -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump20000bps_kink7500bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x6CFdEc747f37DAf3b87a35a1D9c8AD3063A1A8A0)._setInterestRateModel(0xd7079bCE4A9cA17a71787928E40252547444C3D3);\\n \\n // vTUSD -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xBf762cd5991cA1DCdDaC9ae5C638F5B5Dc3Bee6E)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vUNI -> CheckpointView_From_JumpRateModel_base0bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x27FF564707786720C71A2e5c1490A63266683612)._setInterestRateModel(0x107F2b97dcd259Aa373709bF1021aD120a2FED98);\\n \\n // vFDUSD -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump50000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xC4eF4229FEc74Ccfe17B2bdeF7715fAC740BA0ba)._setInterestRateModel(0x8D3A052b88acF368Da24f5313901e4e63E0E78Cf);\\n \\n // vTWT -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x4d41a36D04D97785bcEA57b057C412b278e6Edcc)._setInterestRateModel(0x7611a9A201524594633B2eb5A8Ea42A9418c9811);\\n \\n // vSolvBTC -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xf841cb62c19fCd4fF5CD0AaB5939f3140BaaC3Ea)._setInterestRateModel(0x44a94a5e96bc6e36f4775E6229e2487860d4b7F0);\\n \\n // vTHE -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump35000bps_kink4500bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x86e06EAfa6A1eA631Eab51DE500E3D474933739f)._setInterestRateModel(0x44C49a0Df8bBfA49ED967C65db0E92BA7B40DF65);\\n \\n // vSOL -> CheckpointView_From_JumpRateModel_base200bps_slope2000bps_jump30000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xBf515bA4D1b52FFdCeaBF20d31D705Ce789F2cEC)._setInterestRateModel(0x7611a9A201524594633B2eb5A8Ea42A9418c9811);\\n \\n // vlisUSD -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x689E0daB47Ab16bcae87Ec18491692BF621Dc6Ab)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vPT-sUSDE-26JUN2025 -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x9e4E5fed5Ac5B9F732d0D850A615206330Bf1866)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vsUSDe -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x699658323d58eE25c69F1a29d476946ab011bD18)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vUSDe -> CheckpointView_From_JumpRateModel_base0bps_slope750bps_jump5000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x74ca6930108F775CC667894EEa33843e691680d7)._setInterestRateModel(0xfEA1ca128dDbAf830EFC4e0d5CD5E152AE504cC7);\\n \\n // vUSD1 -> CheckpointView_From_JumpRateModel_base0bps_slope1000bps_jump25000bps_kink8000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0x0C1DA220D301155b87318B90692Da8dc43B67340)._setInterestRateModel(0xBB951B0B38ae86CeF2f3d642F5ac7591FD5D2f4b);\\n \\n // vxSolvBTC -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xd804dE60aFD05EE6B89aab5D152258fD461B07D5)._setInterestRateModel(0x44a94a5e96bc6e36f4775E6229e2487860d4b7F0);\\n \\n // vasBNB -> CheckpointView_From_JumpRateModel_base0bps_slope900bps_jump20000bps_kink5000bps_bpy21024000_To_bpy42048000_At_1751250600\\n VTokenInterface(0xCC1dB43a06d97f736C7B045AedD03C6707c09BDF)._setInterestRateModel(0x44a94a5e96bc6e36f4775E6229e2487860d4b7F0);\\n }\\n}\",\"keccak256\":\"0xddec8d3c8420586c17b2ae20757330ca12a4695295cea609ac4cd8e63604b704\",\"license\":\"BSD-3-Clause\"}},\"version\":1}",
37
+ "bytecode": "0x6080604052348015600f57600080fd5b506112ed8061001f6000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063c040622614610030575b600080fd5b61003861003a565b005b73939bd8d64c0a9583a7dcea9933f7b21697ab6396331461006d576040516282b42960e81b815260040160405180910390fd5b60405163f2b3abbd60e01b81527308437b3c0bea58fe6ec696a04c9675e0980b9469600482015273eca88125a5adbe82614ffc12d0db554e2e2867c89063f2b3abbd90602401600060405180830381600087803b1580156100cd57600080fd5b505af11580156100e1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527308437b3c0bea58fe6ec696a04c9675e0980b9469600482015273fd5840cd36d94d7229439859c0112a4185bc0255925063f2b3abbd9150602401600060405180830381600087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527302448c05fdd44c1dccdc54a29fe02e8f43f31bf760048201527395c78222b3d6e262426483d42cfa53685a67ab9d925063f2b3abbd9150602401600060405180830381600087803b1580156101bd57600080fd5b505af11580156101d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bf6bdb41dbcb5aba54189767d113e7c5155ab70a6004820152732ff3d0f6990a40261c66e1ff2017acbc282eb6d0925063f2b3abbd9150602401600060405180830381600087803b15801561023557600080fd5b505af1158015610249573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273170be58d5c1983f03dc287ab9abffc7da16f862b600482015273151b1e2635a717bcdc836ecd6fbb62b674fe3e1d925063f2b3abbd9150602401600060405180830381600087803b1580156102ad57600080fd5b505af11580156102c1573d6000803e3d6000fd5b50506040516345e6a00b60e11b815273f78db86e58dc1b76569a0b3105ef5186033911a16004820152739a7890534d9d91d473f28cb97962d176e2b65f1d9250638bcd40169150602401600060405180830381600087803b15801561032557600080fd5b505af1158015610339573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273a84189107af59bf132f3e7dd45dd201c0bb25bf4600482015273882c173bc7ff3b7786ca16dfed3dfffb9ee7847b925063f2b3abbd9150602401600060405180830381600087803b15801561039d57600080fd5b505af11580156103b1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527338dd273fe7590403f554f350a7c3c592e8227eb7600482015273f508fcd89b8bd15579dc79a6827cb4686a3592c8925063f2b3abbd9150602401600060405180830381600087803b15801561041557600080fd5b505af1158015610429573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab2960048201527357a5297f2cb2c0aac9d554660acd6d385ab50c6b925063f2b3abbd9150602401600060405180830381600087803b15801561048d57600080fd5b505af11580156104a1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab29600482015273b248a295732e0225acd3337607cc01068e3b9c10925063f2b3abbd9150602401600060405180830381600087803b15801561050557600080fd5b505af1158015610519573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152735f0388ebc2b94fa8e123f404b79ccf5f40b29176925063f2b3abbd9150602401600060405180830381600087803b15801561057d57600080fd5b505af1158015610591573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152731610bc33319e9398de5f57b33a5b184c806ad217925063f2b3abbd9150602401600060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab29600482015273650b940a1033b8a1b1873f78730fcfc73ec11f1f925063f2b3abbd9150602401600060405180830381600087803b15801561066d57600080fd5b505af1158015610681573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273334b3ecb4dca3593bccc3c7ebd1a1c1d1780fbf1925063f2b3abbd9150602401600060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273f91d58b5ae142dacc749f58a49fcbac340cb0343925063f2b3abbd9150602401600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273968d2f613f0517eae22f898529c4658db8c578bc600482015273972207a639cc1b374b893cc33fa251b55ceb7c07925063f2b3abbd9150602401600060405180830381600087803b1580156107d557600080fd5b505af11580156107e9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152739a0af7fdb2065ce470d72664de73cae409da28ec925063f2b3abbd9150602401600060405180830381600087803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273ec3422ef92b2fb59e84c8b02ba73f1fe84ed8d71925063f2b3abbd9150602401600060405180830381600087803b1580156108c557600080fd5b505af11580156108d9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab296004820152735c9476fcd6a4f9a3654139721c949c2233bbbbc8925063f2b3abbd9150602401600060405180830381600087803b15801561093d57600080fd5b505af1158015610951573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c981160048201527386ac3974e2bd0d60825230fa6f355ff11409df5c925063f2b3abbd9150602401600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273107f2b97dcd259aa373709bf1021ad120a2fed9860048201527326da28954763b92139ed49283625cecaf52c6f94925063f2b3abbd9150602401600060405180830381600087803b158015610a2d57600080fd5b505af1158015610a41573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527302448c05fdd44c1dccdc54a29fe02e8f43f31bf760048201527308ceb3f4a7ed3500ca0982bcd0fc7816688084c3925063f2b3abbd9150602401600060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273b2bd70ed38e928470b5af2f01e799c1d3b4d879660048201527361edcfe8dd6ba3c891cb9bec2dc7657b3b422e93925063f2b3abbd9150602401600060405180830381600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd600482015273c5d3466aa484b040ee977073fcf337f2c00071c1925063f2b3abbd9150602401600060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d7079bce4a9ca17a71787928e40252547444c3d36004820152736cfdec747f37daf3b87a35a1d9c8ad3063a1a8a0925063f2b3abbd9150602401600060405180830381600087803b158015610c0d57600080fd5b505af1158015610c21573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273bf762cd5991ca1dcddac9ae5c638f5b5dc3bee6e925063f2b3abbd9150602401600060405180830381600087803b158015610c8557600080fd5b505af1158015610c99573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273107f2b97dcd259aa373709bf1021ad120a2fed9860048201527327ff564707786720c71a2e5c1490a63266683612925063f2b3abbd9150602401600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152738d3a052b88acf368da24f5313901e4e63e0e78cf600482015273c4ef4229fec74ccfe17b2bdef7715fac740ba0ba925063f2b3abbd9150602401600060405180830381600087803b158015610d7557600080fd5b505af1158015610d89573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c98116004820152734d41a36d04d97785bcea57b057c412b278e6edcc925063f2b3abbd9150602401600060405180830381600087803b158015610ded57600080fd5b505af1158015610e01573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273f841cb62c19fcd4ff5cd0aab5939f3140baac3ea925063f2b3abbd9150602401600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344c49a0df8bbfa49ed967c65db0e92ba7b40df6560048201527386e06eafa6a1ea631eab51de500e3d474933739f925063f2b3abbd9150602401600060405180830381600087803b158015610edd57600080fd5b505af1158015610ef1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273bf515ba4d1b52ffdceabf20d31d705ce789f2cec925063f2b3abbd9150602401600060405180830381600087803b158015610f5557600080fd5b505af1158015610f69573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273689e0dab47ab16bcae87ec18491692bf621dc6ab925063f2b3abbd9150602401600060405180830381600087803b158015610fcd57600080fd5b505af1158015610fe1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b6004820152739e4e5fed5ac5b9f732d0d850a615206330bf1866925063f2b3abbd9150602401600060405180830381600087803b15801561104557600080fd5b505af1158015611059573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273699658323d58ee25c69f1a29d476946ab011bd18925063f2b3abbd9150602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273fea1ca128ddbaf830efc4e0d5cd5e152ae504cc760048201527374ca6930108f775cc667894eea33843e691680d7925063f2b3abbd9150602401600060405180830381600087803b15801561113557600080fd5b505af1158015611149573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b6004820152730c1da220d301155b87318b90692da8dc43b67340925063f2b3abbd9150602401600060405180830381600087803b1580156111ad57600080fd5b505af11580156111c1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273d804de60afd05ee6b89aab5d152258fd461b07d5925063f2b3abbd9150602401600060405180830381600087803b15801561122557600080fd5b505af1158015611239573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273cc1db43a06d97f736c7b045aedd03c6707c09bdf925063f2b3abbd9150602401600060405180830381600087803b15801561129d57600080fd5b505af11580156112b1573d6000803e3d6000fd5b5050505056fea2646970667358221220edbfdb0565a83bd36612a8d68881b4650a7a559befd776a0915f0de99d08fbd864736f6c63430008190033",
38
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063c040622614610030575b600080fd5b61003861003a565b005b73939bd8d64c0a9583a7dcea9933f7b21697ab6396331461006d576040516282b42960e81b815260040160405180910390fd5b60405163f2b3abbd60e01b81527308437b3c0bea58fe6ec696a04c9675e0980b9469600482015273eca88125a5adbe82614ffc12d0db554e2e2867c89063f2b3abbd90602401600060405180830381600087803b1580156100cd57600080fd5b505af11580156100e1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527308437b3c0bea58fe6ec696a04c9675e0980b9469600482015273fd5840cd36d94d7229439859c0112a4185bc0255925063f2b3abbd9150602401600060405180830381600087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527302448c05fdd44c1dccdc54a29fe02e8f43f31bf760048201527395c78222b3d6e262426483d42cfa53685a67ab9d925063f2b3abbd9150602401600060405180830381600087803b1580156101bd57600080fd5b505af11580156101d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bf6bdb41dbcb5aba54189767d113e7c5155ab70a6004820152732ff3d0f6990a40261c66e1ff2017acbc282eb6d0925063f2b3abbd9150602401600060405180830381600087803b15801561023557600080fd5b505af1158015610249573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273170be58d5c1983f03dc287ab9abffc7da16f862b600482015273151b1e2635a717bcdc836ecd6fbb62b674fe3e1d925063f2b3abbd9150602401600060405180830381600087803b1580156102ad57600080fd5b505af11580156102c1573d6000803e3d6000fd5b50506040516345e6a00b60e11b815273f78db86e58dc1b76569a0b3105ef5186033911a16004820152739a7890534d9d91d473f28cb97962d176e2b65f1d9250638bcd40169150602401600060405180830381600087803b15801561032557600080fd5b505af1158015610339573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273a84189107af59bf132f3e7dd45dd201c0bb25bf4600482015273882c173bc7ff3b7786ca16dfed3dfffb9ee7847b925063f2b3abbd9150602401600060405180830381600087803b15801561039d57600080fd5b505af11580156103b1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527338dd273fe7590403f554f350a7c3c592e8227eb7600482015273f508fcd89b8bd15579dc79a6827cb4686a3592c8925063f2b3abbd9150602401600060405180830381600087803b15801561041557600080fd5b505af1158015610429573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab2960048201527357a5297f2cb2c0aac9d554660acd6d385ab50c6b925063f2b3abbd9150602401600060405180830381600087803b15801561048d57600080fd5b505af11580156104a1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab29600482015273b248a295732e0225acd3337607cc01068e3b9c10925063f2b3abbd9150602401600060405180830381600087803b15801561050557600080fd5b505af1158015610519573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152735f0388ebc2b94fa8e123f404b79ccf5f40b29176925063f2b3abbd9150602401600060405180830381600087803b15801561057d57600080fd5b505af1158015610591573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152731610bc33319e9398de5f57b33a5b184c806ad217925063f2b3abbd9150602401600060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab29600482015273650b940a1033b8a1b1873f78730fcfc73ec11f1f925063f2b3abbd9150602401600060405180830381600087803b15801561066d57600080fd5b505af1158015610681573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273334b3ecb4dca3593bccc3c7ebd1a1c1d1780fbf1925063f2b3abbd9150602401600060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273f91d58b5ae142dacc749f58a49fcbac340cb0343925063f2b3abbd9150602401600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273968d2f613f0517eae22f898529c4658db8c578bc600482015273972207a639cc1b374b893cc33fa251b55ceb7c07925063f2b3abbd9150602401600060405180830381600087803b1580156107d557600080fd5b505af11580156107e9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd6004820152739a0af7fdb2065ce470d72664de73cae409da28ec925063f2b3abbd9150602401600060405180830381600087803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273ec3422ef92b2fb59e84c8b02ba73f1fe84ed8d71925063f2b3abbd9150602401600060405180830381600087803b1580156108c557600080fd5b505af11580156108d9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273f7b5f7856e0520d66c03f32d576eecd9156dab296004820152735c9476fcd6a4f9a3654139721c949c2233bbbbc8925063f2b3abbd9150602401600060405180830381600087803b15801561093d57600080fd5b505af1158015610951573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c981160048201527386ac3974e2bd0d60825230fa6f355ff11409df5c925063f2b3abbd9150602401600060405180830381600087803b1580156109b557600080fd5b505af11580156109c9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273107f2b97dcd259aa373709bf1021ad120a2fed9860048201527326da28954763b92139ed49283625cecaf52c6f94925063f2b3abbd9150602401600060405180830381600087803b158015610a2d57600080fd5b505af1158015610a41573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527302448c05fdd44c1dccdc54a29fe02e8f43f31bf760048201527308ceb3f4a7ed3500ca0982bcd0fc7816688084c3925063f2b3abbd9150602401600060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273b2bd70ed38e928470b5af2f01e799c1d3b4d879660048201527361edcfe8dd6ba3c891cb9bec2dc7657b3b422e93925063f2b3abbd9150602401600060405180830381600087803b158015610b1d57600080fd5b505af1158015610b31573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152731326346bda0bfc3ac7f5bfb0f6ea7f4302a65bcd600482015273c5d3466aa484b040ee977073fcf337f2c00071c1925063f2b3abbd9150602401600060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273d7079bce4a9ca17a71787928e40252547444c3d36004820152736cfdec747f37daf3b87a35a1d9c8ad3063a1a8a0925063f2b3abbd9150602401600060405180830381600087803b158015610c0d57600080fd5b505af1158015610c21573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273bf762cd5991ca1dcddac9ae5c638f5b5dc3bee6e925063f2b3abbd9150602401600060405180830381600087803b158015610c8557600080fd5b505af1158015610c99573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273107f2b97dcd259aa373709bf1021ad120a2fed9860048201527327ff564707786720c71a2e5c1490a63266683612925063f2b3abbd9150602401600060405180830381600087803b158015610cfd57600080fd5b505af1158015610d11573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152738d3a052b88acf368da24f5313901e4e63e0e78cf600482015273c4ef4229fec74ccfe17b2bdef7715fac740ba0ba925063f2b3abbd9150602401600060405180830381600087803b158015610d7557600080fd5b505af1158015610d89573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c98116004820152734d41a36d04d97785bcea57b057c412b278e6edcc925063f2b3abbd9150602401600060405180830381600087803b158015610ded57600080fd5b505af1158015610e01573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273f841cb62c19fcd4ff5cd0aab5939f3140baac3ea925063f2b3abbd9150602401600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344c49a0df8bbfa49ed967c65db0e92ba7b40df6560048201527386e06eafa6a1ea631eab51de500e3d474933739f925063f2b3abbd9150602401600060405180830381600087803b158015610edd57600080fd5b505af1158015610ef1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b8152737611a9a201524594633b2eb5a8ea42a9418c9811600482015273bf515ba4d1b52ffdceabf20d31d705ce789f2cec925063f2b3abbd9150602401600060405180830381600087803b158015610f5557600080fd5b505af1158015610f69573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273689e0dab47ab16bcae87ec18491692bf621dc6ab925063f2b3abbd9150602401600060405180830381600087803b158015610fcd57600080fd5b505af1158015610fe1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b6004820152739e4e5fed5ac5b9f732d0d850a615206330bf1866925063f2b3abbd9150602401600060405180830381600087803b15801561104557600080fd5b505af1158015611059573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b600482015273699658323d58ee25c69f1a29d476946ab011bd18925063f2b3abbd9150602401600060405180830381600087803b1580156110bd57600080fd5b505af11580156110d1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273fea1ca128ddbaf830efc4e0d5cd5e152ae504cc760048201527374ca6930108f775cc667894eea33843e691680d7925063f2b3abbd9150602401600060405180830381600087803b15801561113557600080fd5b505af1158015611149573d6000803e3d6000fd5b505060405163f2b3abbd60e01b815273bb951b0b38ae86cef2f3d642f5ac7591fd5d2f4b6004820152730c1da220d301155b87318b90692da8dc43b67340925063f2b3abbd9150602401600060405180830381600087803b1580156111ad57600080fd5b505af11580156111c1573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273d804de60afd05ee6b89aab5d152258fd461b07d5925063f2b3abbd9150602401600060405180830381600087803b15801561122557600080fd5b505af1158015611239573d6000803e3d6000fd5b505060405163f2b3abbd60e01b81527344a94a5e96bc6e36f4775e6229e2487860d4b7f0600482015273cc1db43a06d97f736c7b045aedd03c6707c09bdf925063f2b3abbd9150602401600060405180830381600087803b15801561129d57600080fd5b505af11580156112b1573d6000803e3d6000fd5b5050505056fea2646970667358221220edbfdb0565a83bd36612a8d68881b4650a7a559befd776a0915f0de99d08fbd864736f6c63430008190033",
39
39
  "devdoc": {
40
40
  "kind": "dev",
41
41
  "methods": {},