@pendle/core-v2 4.4.6 → 4.5.0-beta-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.dbg.json +4 -0
  2. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.json +1073 -0
  3. package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.json +2 -2
  5. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  6. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  8. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +4 -0
  9. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.json +149 -0
  10. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  11. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  12. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  13. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +134 -72
  14. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
  15. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  16. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  17. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  18. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  19. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
  20. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  21. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  22. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  23. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  24. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  25. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  26. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  27. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  28. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  29. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -28
  30. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  31. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  32. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  33. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  34. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  35. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  36. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  37. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  38. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -124
  39. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
  40. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +3 -51
  41. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  42. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -50
  43. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +4 -0
  44. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +149 -0
  45. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  46. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -76
  47. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  48. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -92
  49. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +4 -0
  50. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +35 -0
  51. package/build/artifacts/contracts/router/RouterStorage.sol/RouterStorage.dbg.json +4 -0
  52. package/build/artifacts/contracts/router/RouterStorage.sol/RouterStorage.json +10 -0
  53. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  54. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  55. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  56. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  57. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  58. package/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol +55 -0
  59. package/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol +1 -1
  60. package/contracts/interfaces/IPActionStorageStatic.sol +1 -0
  61. package/contracts/interfaces/IPActionStorageV4.sol +25 -0
  62. package/contracts/interfaces/IPAllActionV3.sol +2 -2
  63. package/contracts/interfaces/IPMiniDiamond.sol +1 -0
  64. package/contracts/limit/LimitRouterBase.sol +48 -25
  65. package/contracts/router/ActionAddRemoveLiqV3.sol +12 -12
  66. package/contracts/router/ActionCallbackV3.sol +14 -13
  67. package/contracts/router/ActionMiscV3.sol +1 -3
  68. package/contracts/router/ActionStorageV4.sol +64 -0
  69. package/contracts/router/ActionSwapYTV3.sol +3 -3
  70. package/contracts/router/PendleRouterV4.sol +23 -0
  71. package/contracts/router/RouterStorage.sol +19 -0
  72. package/contracts/router/base/ActionBase.sol +5 -7
  73. package/contracts/router/base/MarketApproxLib.sol +18 -16
  74. package/deployments/1-core.json +1 -1
  75. package/deployments/1-markets/ENA-AUG2024.json +13 -0
  76. package/deployments/1-markets/EZETH-DEC2024.json +11 -0
  77. package/deployments/1-markets/SUSDE-JUL2024.json +13 -0
  78. package/deployments/1-markets/WEETH-DEC2024.json +13 -0
  79. package/deployments/10-core.json +1 -1
  80. package/deployments/42161-core.json +1 -1
  81. package/deployments/5000-core.json +1 -1
  82. package/deployments/56-core.json +1 -1
  83. package/deployments/56-markets/EZETH-BSC-SEP2024.json +13 -0
  84. package/package.json +1 -1
  85. package/typechain-types/ActionCallbackV3.ts +5 -5
  86. package/typechain-types/ActionStorageV4.ts +293 -0
  87. package/typechain-types/IPActionStorageV4.ts +293 -0
  88. package/typechain-types/IPAllActionV3.ts +208 -109
  89. package/typechain-types/PendleERC20WithSupplyCapSY.ts +1332 -0
  90. package/typechain-types/PendleRouterV4.ts +57 -0
  91. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -123
  92. package/typechain-types/factories/ActionCallbackV3__factory.ts +2 -50
  93. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  94. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  95. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -27
  96. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  97. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -49
  98. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  99. package/typechain-types/factories/ActionStorageV4__factory.ts +202 -0
  100. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -75
  101. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -91
  102. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  103. package/typechain-types/factories/IPActionStorageV4__factory.ts +164 -0
  104. package/typechain-types/factories/IPAllActionV3__factory.ts +134 -72
  105. package/typechain-types/factories/PendleERC20WithSupplyCapSY__factory.ts +1157 -0
  106. package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
  107. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  108. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  109. package/typechain-types/factories/PendleRouterV4__factory.ts +96 -0
  110. package/typechain-types/factories/PendleStTAOSY__factory.ts +1 -1
  111. package/typechain-types/hardhat.d.ts +31 -58
  112. package/typechain-types/index.ts +8 -14
  113. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +0 -4
  114. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.json +0 -93
  115. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +0 -4
  116. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.json +0 -87
  117. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +0 -4
  118. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +0 -1002
  119. package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.dbg.json +0 -4
  120. package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.json +0 -466
  121. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.dbg.json +0 -4
  122. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.json +0 -179
  123. package/contracts/interfaces/IDiamondCut.sol +0 -32
  124. package/contracts/interfaces/IDiamondLoupe.sol +0 -38
  125. package/contracts/router/PendleRouterHelper.sol +0 -305
  126. package/contracts/router/PendleRouterV3.sol +0 -235
@@ -1,1002 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "PendleRouterHelper",
4
- "sourceName": "contracts/router/PendleRouterHelper.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "_ROUTER",
11
- "type": "address"
12
- },
13
- {
14
- "internalType": "contract IAddressProvider",
15
- "name": "provider",
16
- "type": "address"
17
- }
18
- ],
19
- "stateMutability": "nonpayable",
20
- "type": "constructor"
21
- },
22
- {
23
- "anonymous": false,
24
- "inputs": [
25
- {
26
- "indexed": true,
27
- "internalType": "address",
28
- "name": "caller",
29
- "type": "address"
30
- },
31
- {
32
- "indexed": true,
33
- "internalType": "address",
34
- "name": "market",
35
- "type": "address"
36
- },
37
- {
38
- "indexed": true,
39
- "internalType": "address",
40
- "name": "receiver",
41
- "type": "address"
42
- },
43
- {
44
- "indexed": false,
45
- "internalType": "uint256",
46
- "name": "netSyIn",
47
- "type": "uint256"
48
- },
49
- {
50
- "indexed": false,
51
- "internalType": "uint256",
52
- "name": "netLpOut",
53
- "type": "uint256"
54
- }
55
- ],
56
- "name": "AddLiquiditySingleSy",
57
- "type": "event"
58
- },
59
- {
60
- "anonymous": false,
61
- "inputs": [
62
- {
63
- "indexed": true,
64
- "internalType": "address",
65
- "name": "caller",
66
- "type": "address"
67
- },
68
- {
69
- "indexed": true,
70
- "internalType": "address",
71
- "name": "market",
72
- "type": "address"
73
- },
74
- {
75
- "indexed": true,
76
- "internalType": "address",
77
- "name": "receiver",
78
- "type": "address"
79
- },
80
- {
81
- "indexed": false,
82
- "internalType": "uint256",
83
- "name": "netSyIn",
84
- "type": "uint256"
85
- },
86
- {
87
- "indexed": false,
88
- "internalType": "uint256",
89
- "name": "netLpOut",
90
- "type": "uint256"
91
- },
92
- {
93
- "indexed": false,
94
- "internalType": "uint256",
95
- "name": "netYtOut",
96
- "type": "uint256"
97
- }
98
- ],
99
- "name": "AddLiquiditySingleSyKeepYt",
100
- "type": "event"
101
- },
102
- {
103
- "anonymous": false,
104
- "inputs": [
105
- {
106
- "indexed": true,
107
- "internalType": "address",
108
- "name": "caller",
109
- "type": "address"
110
- },
111
- {
112
- "indexed": true,
113
- "internalType": "address",
114
- "name": "market",
115
- "type": "address"
116
- },
117
- {
118
- "indexed": true,
119
- "internalType": "address",
120
- "name": "token",
121
- "type": "address"
122
- },
123
- {
124
- "indexed": false,
125
- "internalType": "address",
126
- "name": "receiver",
127
- "type": "address"
128
- },
129
- {
130
- "indexed": false,
131
- "internalType": "uint256",
132
- "name": "netTokenIn",
133
- "type": "uint256"
134
- },
135
- {
136
- "indexed": false,
137
- "internalType": "uint256",
138
- "name": "netLpOut",
139
- "type": "uint256"
140
- }
141
- ],
142
- "name": "AddLiquiditySingleToken",
143
- "type": "event"
144
- },
145
- {
146
- "anonymous": false,
147
- "inputs": [
148
- {
149
- "indexed": true,
150
- "internalType": "address",
151
- "name": "caller",
152
- "type": "address"
153
- },
154
- {
155
- "indexed": true,
156
- "internalType": "address",
157
- "name": "market",
158
- "type": "address"
159
- },
160
- {
161
- "indexed": true,
162
- "internalType": "address",
163
- "name": "token",
164
- "type": "address"
165
- },
166
- {
167
- "indexed": false,
168
- "internalType": "address",
169
- "name": "receiver",
170
- "type": "address"
171
- },
172
- {
173
- "indexed": false,
174
- "internalType": "uint256",
175
- "name": "netTokenIn",
176
- "type": "uint256"
177
- },
178
- {
179
- "indexed": false,
180
- "internalType": "uint256",
181
- "name": "netLpOut",
182
- "type": "uint256"
183
- },
184
- {
185
- "indexed": false,
186
- "internalType": "uint256",
187
- "name": "netYtOut",
188
- "type": "uint256"
189
- }
190
- ],
191
- "name": "AddLiquiditySingleTokenKeepYt",
192
- "type": "event"
193
- },
194
- {
195
- "anonymous": false,
196
- "inputs": [
197
- {
198
- "indexed": true,
199
- "internalType": "address",
200
- "name": "caller",
201
- "type": "address"
202
- },
203
- {
204
- "indexed": true,
205
- "internalType": "address",
206
- "name": "market",
207
- "type": "address"
208
- },
209
- {
210
- "indexed": true,
211
- "internalType": "address",
212
- "name": "receiver",
213
- "type": "address"
214
- },
215
- {
216
- "indexed": false,
217
- "internalType": "uint256",
218
- "name": "netLpToRemove",
219
- "type": "uint256"
220
- },
221
- {
222
- "indexed": false,
223
- "internalType": "uint256",
224
- "name": "netSyOut",
225
- "type": "uint256"
226
- }
227
- ],
228
- "name": "RemoveLiquiditySingleSy",
229
- "type": "event"
230
- },
231
- {
232
- "anonymous": false,
233
- "inputs": [
234
- {
235
- "indexed": true,
236
- "internalType": "address",
237
- "name": "caller",
238
- "type": "address"
239
- },
240
- {
241
- "indexed": true,
242
- "internalType": "address",
243
- "name": "market",
244
- "type": "address"
245
- },
246
- {
247
- "indexed": true,
248
- "internalType": "address",
249
- "name": "token",
250
- "type": "address"
251
- },
252
- {
253
- "indexed": false,
254
- "internalType": "address",
255
- "name": "receiver",
256
- "type": "address"
257
- },
258
- {
259
- "indexed": false,
260
- "internalType": "uint256",
261
- "name": "netLpToRemove",
262
- "type": "uint256"
263
- },
264
- {
265
- "indexed": false,
266
- "internalType": "uint256",
267
- "name": "netTokenOut",
268
- "type": "uint256"
269
- }
270
- ],
271
- "name": "RemoveLiquiditySingleToken",
272
- "type": "event"
273
- },
274
- {
275
- "inputs": [],
276
- "name": "ROUTER",
277
- "outputs": [
278
- {
279
- "internalType": "contract RouterV2InterfaceForRouterHelper",
280
- "name": "",
281
- "type": "address"
282
- }
283
- ],
284
- "stateMutability": "view",
285
- "type": "function"
286
- },
287
- {
288
- "inputs": [],
289
- "name": "WETH",
290
- "outputs": [
291
- {
292
- "internalType": "address",
293
- "name": "",
294
- "type": "address"
295
- }
296
- ],
297
- "stateMutability": "view",
298
- "type": "function"
299
- },
300
- {
301
- "inputs": [
302
- {
303
- "internalType": "address",
304
- "name": "receiver",
305
- "type": "address"
306
- },
307
- {
308
- "internalType": "address",
309
- "name": "market",
310
- "type": "address"
311
- },
312
- {
313
- "internalType": "uint256",
314
- "name": "minLpOut",
315
- "type": "uint256"
316
- },
317
- {
318
- "internalType": "uint256",
319
- "name": "minYtOut",
320
- "type": "uint256"
321
- },
322
- {
323
- "components": [
324
- {
325
- "internalType": "address",
326
- "name": "tokenIn",
327
- "type": "address"
328
- },
329
- {
330
- "internalType": "uint256",
331
- "name": "netTokenIn",
332
- "type": "uint256"
333
- },
334
- {
335
- "internalType": "address",
336
- "name": "tokenMintSy",
337
- "type": "address"
338
- },
339
- {
340
- "internalType": "address",
341
- "name": "pendleSwap",
342
- "type": "address"
343
- },
344
- {
345
- "components": [
346
- {
347
- "internalType": "enum SwapType",
348
- "name": "swapType",
349
- "type": "uint8"
350
- },
351
- {
352
- "internalType": "address",
353
- "name": "extRouter",
354
- "type": "address"
355
- },
356
- {
357
- "internalType": "bytes",
358
- "name": "extCalldata",
359
- "type": "bytes"
360
- },
361
- {
362
- "internalType": "bool",
363
- "name": "needScale",
364
- "type": "bool"
365
- }
366
- ],
367
- "internalType": "struct SwapData",
368
- "name": "swapData",
369
- "type": "tuple"
370
- }
371
- ],
372
- "internalType": "struct TokenInput",
373
- "name": "input",
374
- "type": "tuple"
375
- }
376
- ],
377
- "name": "addLiquiditySingleTokenKeepYtWithEth",
378
- "outputs": [
379
- {
380
- "internalType": "uint256",
381
- "name": "netLpOut",
382
- "type": "uint256"
383
- },
384
- {
385
- "internalType": "uint256",
386
- "name": "netYtOut",
387
- "type": "uint256"
388
- }
389
- ],
390
- "stateMutability": "payable",
391
- "type": "function"
392
- },
393
- {
394
- "inputs": [
395
- {
396
- "components": [
397
- {
398
- "internalType": "address",
399
- "name": "market",
400
- "type": "address"
401
- },
402
- {
403
- "internalType": "uint256",
404
- "name": "netLpToRemove",
405
- "type": "uint256"
406
- },
407
- {
408
- "internalType": "bool",
409
- "name": "doRedeemRewards",
410
- "type": "bool"
411
- }
412
- ],
413
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleSyStruct",
414
- "name": "fromMarket",
415
- "type": "tuple"
416
- }
417
- ],
418
- "name": "removeLiquiditySingleSy",
419
- "outputs": [
420
- {
421
- "internalType": "uint256",
422
- "name": "netSyOut",
423
- "type": "uint256"
424
- },
425
- {
426
- "internalType": "uint256",
427
- "name": "netSyFee",
428
- "type": "uint256"
429
- }
430
- ],
431
- "stateMutability": "nonpayable",
432
- "type": "function"
433
- },
434
- {
435
- "inputs": [
436
- {
437
- "components": [
438
- {
439
- "internalType": "address",
440
- "name": "market",
441
- "type": "address"
442
- },
443
- {
444
- "internalType": "uint256",
445
- "name": "netLpToRemove",
446
- "type": "uint256"
447
- },
448
- {
449
- "internalType": "bool",
450
- "name": "doRedeemRewards",
451
- "type": "bool"
452
- },
453
- {
454
- "components": [
455
- {
456
- "internalType": "address",
457
- "name": "tokenOut",
458
- "type": "address"
459
- },
460
- {
461
- "internalType": "uint256",
462
- "name": "minTokenOut",
463
- "type": "uint256"
464
- },
465
- {
466
- "internalType": "address",
467
- "name": "tokenRedeemSy",
468
- "type": "address"
469
- },
470
- {
471
- "internalType": "address",
472
- "name": "pendleSwap",
473
- "type": "address"
474
- },
475
- {
476
- "components": [
477
- {
478
- "internalType": "enum SwapType",
479
- "name": "swapType",
480
- "type": "uint8"
481
- },
482
- {
483
- "internalType": "address",
484
- "name": "extRouter",
485
- "type": "address"
486
- },
487
- {
488
- "internalType": "bytes",
489
- "name": "extCalldata",
490
- "type": "bytes"
491
- },
492
- {
493
- "internalType": "bool",
494
- "name": "needScale",
495
- "type": "bool"
496
- }
497
- ],
498
- "internalType": "struct SwapData",
499
- "name": "swapData",
500
- "type": "tuple"
501
- }
502
- ],
503
- "internalType": "struct TokenOutput",
504
- "name": "output",
505
- "type": "tuple"
506
- }
507
- ],
508
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleTokenStruct",
509
- "name": "fromMarket",
510
- "type": "tuple"
511
- }
512
- ],
513
- "name": "removeLiquiditySingleToken",
514
- "outputs": [
515
- {
516
- "internalType": "uint256",
517
- "name": "netTokenOut",
518
- "type": "uint256"
519
- },
520
- {
521
- "internalType": "uint256",
522
- "name": "netSyFee",
523
- "type": "uint256"
524
- }
525
- ],
526
- "stateMutability": "nonpayable",
527
- "type": "function"
528
- },
529
- {
530
- "inputs": [
531
- {
532
- "components": [
533
- {
534
- "internalType": "address",
535
- "name": "market",
536
- "type": "address"
537
- },
538
- {
539
- "internalType": "uint256",
540
- "name": "netLpToRemove",
541
- "type": "uint256"
542
- },
543
- {
544
- "internalType": "bool",
545
- "name": "doRedeemRewards",
546
- "type": "bool"
547
- },
548
- {
549
- "components": [
550
- {
551
- "internalType": "address",
552
- "name": "tokenOut",
553
- "type": "address"
554
- },
555
- {
556
- "internalType": "uint256",
557
- "name": "minTokenOut",
558
- "type": "uint256"
559
- },
560
- {
561
- "internalType": "address",
562
- "name": "tokenRedeemSy",
563
- "type": "address"
564
- },
565
- {
566
- "internalType": "address",
567
- "name": "pendleSwap",
568
- "type": "address"
569
- },
570
- {
571
- "components": [
572
- {
573
- "internalType": "enum SwapType",
574
- "name": "swapType",
575
- "type": "uint8"
576
- },
577
- {
578
- "internalType": "address",
579
- "name": "extRouter",
580
- "type": "address"
581
- },
582
- {
583
- "internalType": "bytes",
584
- "name": "extCalldata",
585
- "type": "bytes"
586
- },
587
- {
588
- "internalType": "bool",
589
- "name": "needScale",
590
- "type": "bool"
591
- }
592
- ],
593
- "internalType": "struct SwapData",
594
- "name": "swapData",
595
- "type": "tuple"
596
- }
597
- ],
598
- "internalType": "struct TokenOutput",
599
- "name": "output",
600
- "type": "tuple"
601
- }
602
- ],
603
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleTokenStruct",
604
- "name": "fromMarket",
605
- "type": "tuple"
606
- },
607
- {
608
- "components": [
609
- {
610
- "internalType": "address",
611
- "name": "market",
612
- "type": "address"
613
- },
614
- {
615
- "internalType": "uint256",
616
- "name": "minLpOut",
617
- "type": "uint256"
618
- },
619
- {
620
- "internalType": "uint256",
621
- "name": "minYtOut",
622
- "type": "uint256"
623
- }
624
- ],
625
- "internalType": "struct IPRouterHelper.AddLiquiditySingleTokenKeepYtStruct",
626
- "name": "toMarket",
627
- "type": "tuple"
628
- }
629
- ],
630
- "name": "transferLiquidityDifferentSyKeepYt",
631
- "outputs": [
632
- {
633
- "internalType": "uint256",
634
- "name": "netLpOut",
635
- "type": "uint256"
636
- },
637
- {
638
- "internalType": "uint256",
639
- "name": "netYtOut",
640
- "type": "uint256"
641
- },
642
- {
643
- "internalType": "uint256",
644
- "name": "netTokenZapIn",
645
- "type": "uint256"
646
- },
647
- {
648
- "internalType": "uint256",
649
- "name": "netSyFeeOfRemove",
650
- "type": "uint256"
651
- }
652
- ],
653
- "stateMutability": "nonpayable",
654
- "type": "function"
655
- },
656
- {
657
- "inputs": [
658
- {
659
- "components": [
660
- {
661
- "internalType": "address",
662
- "name": "market",
663
- "type": "address"
664
- },
665
- {
666
- "internalType": "uint256",
667
- "name": "netLpToRemove",
668
- "type": "uint256"
669
- },
670
- {
671
- "internalType": "bool",
672
- "name": "doRedeemRewards",
673
- "type": "bool"
674
- },
675
- {
676
- "components": [
677
- {
678
- "internalType": "address",
679
- "name": "tokenOut",
680
- "type": "address"
681
- },
682
- {
683
- "internalType": "uint256",
684
- "name": "minTokenOut",
685
- "type": "uint256"
686
- },
687
- {
688
- "internalType": "address",
689
- "name": "tokenRedeemSy",
690
- "type": "address"
691
- },
692
- {
693
- "internalType": "address",
694
- "name": "pendleSwap",
695
- "type": "address"
696
- },
697
- {
698
- "components": [
699
- {
700
- "internalType": "enum SwapType",
701
- "name": "swapType",
702
- "type": "uint8"
703
- },
704
- {
705
- "internalType": "address",
706
- "name": "extRouter",
707
- "type": "address"
708
- },
709
- {
710
- "internalType": "bytes",
711
- "name": "extCalldata",
712
- "type": "bytes"
713
- },
714
- {
715
- "internalType": "bool",
716
- "name": "needScale",
717
- "type": "bool"
718
- }
719
- ],
720
- "internalType": "struct SwapData",
721
- "name": "swapData",
722
- "type": "tuple"
723
- }
724
- ],
725
- "internalType": "struct TokenOutput",
726
- "name": "output",
727
- "type": "tuple"
728
- }
729
- ],
730
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleTokenStruct",
731
- "name": "fromMarket",
732
- "type": "tuple"
733
- },
734
- {
735
- "components": [
736
- {
737
- "internalType": "address",
738
- "name": "market",
739
- "type": "address"
740
- },
741
- {
742
- "internalType": "uint256",
743
- "name": "minLpOut",
744
- "type": "uint256"
745
- },
746
- {
747
- "internalType": "uint256",
748
- "name": "guessNetTokenIn",
749
- "type": "uint256"
750
- },
751
- {
752
- "components": [
753
- {
754
- "internalType": "uint256",
755
- "name": "guessMin",
756
- "type": "uint256"
757
- },
758
- {
759
- "internalType": "uint256",
760
- "name": "guessMax",
761
- "type": "uint256"
762
- },
763
- {
764
- "internalType": "uint256",
765
- "name": "guessOffchain",
766
- "type": "uint256"
767
- },
768
- {
769
- "internalType": "uint256",
770
- "name": "maxIteration",
771
- "type": "uint256"
772
- },
773
- {
774
- "internalType": "uint256",
775
- "name": "eps",
776
- "type": "uint256"
777
- }
778
- ],
779
- "internalType": "struct ApproxParams",
780
- "name": "guessPtReceivedFromSy",
781
- "type": "tuple"
782
- }
783
- ],
784
- "internalType": "struct IPRouterHelper.AddLiquiditySingleTokenStruct",
785
- "name": "toMarket",
786
- "type": "tuple"
787
- }
788
- ],
789
- "name": "transferLiquidityDifferentSyNormal",
790
- "outputs": [
791
- {
792
- "internalType": "uint256",
793
- "name": "netLpOut",
794
- "type": "uint256"
795
- },
796
- {
797
- "internalType": "uint256",
798
- "name": "netTokenZapIn",
799
- "type": "uint256"
800
- },
801
- {
802
- "internalType": "uint256",
803
- "name": "netSyFeeOfRemove",
804
- "type": "uint256"
805
- },
806
- {
807
- "internalType": "uint256",
808
- "name": "netSyFeeOfAdd",
809
- "type": "uint256"
810
- }
811
- ],
812
- "stateMutability": "nonpayable",
813
- "type": "function"
814
- },
815
- {
816
- "inputs": [
817
- {
818
- "components": [
819
- {
820
- "internalType": "address",
821
- "name": "market",
822
- "type": "address"
823
- },
824
- {
825
- "internalType": "uint256",
826
- "name": "netLpToRemove",
827
- "type": "uint256"
828
- },
829
- {
830
- "internalType": "bool",
831
- "name": "doRedeemRewards",
832
- "type": "bool"
833
- }
834
- ],
835
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleSyStruct",
836
- "name": "fromMarket",
837
- "type": "tuple"
838
- },
839
- {
840
- "components": [
841
- {
842
- "internalType": "address",
843
- "name": "market",
844
- "type": "address"
845
- },
846
- {
847
- "internalType": "uint256",
848
- "name": "minLpOut",
849
- "type": "uint256"
850
- },
851
- {
852
- "internalType": "uint256",
853
- "name": "minYtOut",
854
- "type": "uint256"
855
- }
856
- ],
857
- "internalType": "struct IPRouterHelper.AddLiquiditySingleSyKeepYtStruct",
858
- "name": "toMarket",
859
- "type": "tuple"
860
- }
861
- ],
862
- "name": "transferLiquiditySameSyKeepYt",
863
- "outputs": [
864
- {
865
- "internalType": "uint256",
866
- "name": "netLpOut",
867
- "type": "uint256"
868
- },
869
- {
870
- "internalType": "uint256",
871
- "name": "netYtOut",
872
- "type": "uint256"
873
- },
874
- {
875
- "internalType": "uint256",
876
- "name": "netSyZapIn",
877
- "type": "uint256"
878
- },
879
- {
880
- "internalType": "uint256",
881
- "name": "netSyFeeOfRemove",
882
- "type": "uint256"
883
- }
884
- ],
885
- "stateMutability": "nonpayable",
886
- "type": "function"
887
- },
888
- {
889
- "inputs": [
890
- {
891
- "components": [
892
- {
893
- "internalType": "address",
894
- "name": "market",
895
- "type": "address"
896
- },
897
- {
898
- "internalType": "uint256",
899
- "name": "netLpToRemove",
900
- "type": "uint256"
901
- },
902
- {
903
- "internalType": "bool",
904
- "name": "doRedeemRewards",
905
- "type": "bool"
906
- }
907
- ],
908
- "internalType": "struct IPRouterHelper.RemoveLiquiditySingleSyStruct",
909
- "name": "fromMarket",
910
- "type": "tuple"
911
- },
912
- {
913
- "components": [
914
- {
915
- "internalType": "address",
916
- "name": "market",
917
- "type": "address"
918
- },
919
- {
920
- "internalType": "uint256",
921
- "name": "minLpOut",
922
- "type": "uint256"
923
- },
924
- {
925
- "internalType": "uint256",
926
- "name": "guessNetSyIn",
927
- "type": "uint256"
928
- },
929
- {
930
- "components": [
931
- {
932
- "internalType": "uint256",
933
- "name": "guessMin",
934
- "type": "uint256"
935
- },
936
- {
937
- "internalType": "uint256",
938
- "name": "guessMax",
939
- "type": "uint256"
940
- },
941
- {
942
- "internalType": "uint256",
943
- "name": "guessOffchain",
944
- "type": "uint256"
945
- },
946
- {
947
- "internalType": "uint256",
948
- "name": "maxIteration",
949
- "type": "uint256"
950
- },
951
- {
952
- "internalType": "uint256",
953
- "name": "eps",
954
- "type": "uint256"
955
- }
956
- ],
957
- "internalType": "struct ApproxParams",
958
- "name": "guessPtReceivedFromSy",
959
- "type": "tuple"
960
- }
961
- ],
962
- "internalType": "struct IPRouterHelper.AddLiquiditySingleSyStruct",
963
- "name": "toMarket",
964
- "type": "tuple"
965
- }
966
- ],
967
- "name": "transferLiquiditySameSyNormal",
968
- "outputs": [
969
- {
970
- "internalType": "uint256",
971
- "name": "netLpOut",
972
- "type": "uint256"
973
- },
974
- {
975
- "internalType": "uint256",
976
- "name": "netSyZapIn",
977
- "type": "uint256"
978
- },
979
- {
980
- "internalType": "uint256",
981
- "name": "netSyFeeOfRemove",
982
- "type": "uint256"
983
- },
984
- {
985
- "internalType": "uint256",
986
- "name": "netSyFeeOfAdd",
987
- "type": "uint256"
988
- }
989
- ],
990
- "stateMutability": "nonpayable",
991
- "type": "function"
992
- },
993
- {
994
- "stateMutability": "payable",
995
- "type": "receive"
996
- }
997
- ],
998
- "bytecode": "0x60c06040523480156200001157600080fd5b506040516200247d3803806200247d8339810160408190526200003491620002e8565b6001600160a01b0382166080526200004e81600162000073565b6001600160a01b031660a08190526080516200006b9190620000e9565b5050620003eb565b604051634a83e9cd60e11b8152600481018290526000906001600160a01b03841690639507d39a90602401602060405180830381865afa158015620000bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e2919062000327565b9392505050565b6001600160a01b038216620000fc575050565b6200011060026001600160601b0362000347565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa1580156200016a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019091906200037c565b1015620001b457620001a582826000620001b8565b620001b48282600019620001b8565b5050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b179052915160009283929087169162000216919062000396565b6000604051808303816000865af19150503d806000811462000255576040519150601f19603f3d011682016040523d82523d6000602084013e6200025a565b606091505b50915091508180156200028857508051158062000288575080806020019051810190620002889190620003c7565b620002c85760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640160405180910390fd5b5050505050565b6001600160a01b0381168114620002e557600080fd5b50565b60008060408385031215620002fc57600080fd5b82516200030981620002cf565b60208401519092506200031c81620002cf565b809150509250929050565b6000602082840312156200033a57600080fd5b8151620000e281620002cf565b60006001600160601b03838116806200037057634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b6000602082840312156200038f57600080fd5b5051919050565b6000825160005b81811015620003b957602081860181015185830152016200039d565b506000920191825250919050565b600060208284031215620003da57600080fd5b81518015158114620000e257600080fd5b60805160a051611ffd6200048060003960008181610166015281816102150152818161026c0152818161099101526109b901526000818160c5015281816102ac015281816103f20152818161042001528181610660015281816109e401528181610a1201528181610c7e01528181610cac01528181610e4501528181610e7301528181610fad0152610fdb0152611ffd6000f3fe60806040526004361061007a5760003560e01c806323a90d6c1461008657806332fe7b26146100b35780633428bbb2146100f457806388ee62a514610134578063ad5c464814610154578063b558229a14610188578063c7f36371146101a8578063d64bccb3146101c8578063f1f6f7cd146101e857600080fd5b3661008157005b600080fd5b6100996100943660046116a7565b610208565b604080519283526020830191909152015b60405180910390f35b3480156100bf57600080fd5b506100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040516100aa9190611723565b34801561010057600080fd5b5061011461010f366004611761565b61037a565b6040805194855260208501939093529183015260608201526080016100aa565b34801561014057600080fd5b5061009961014f3660046117af565b6103c1565b34801561016057600080fd5b506100e77f000000000000000000000000000000000000000000000000000000000000000081565b34801561019457600080fd5b506101146101a33660046117f6565b6105e9565b3480156101b457600080fd5b506101146101c3366004611823565b610615565b3480156101d457600080fd5b506100996101e336600461184f565b610633565b3480156101f457600080fd5b5061011461020336600461186b565b61080e565b6000806001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001661024260208501856118b1565b6001600160a01b03161461025557600080fd5b6102656000338560200135610847565b61029560007f000000000000000000000000000000000000000000000000000000000000000085602001356108b8565b604051633dbe1c5560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690633dbe1c55906102e9908a908a908a908a908a90600401611a56565b60408051808303816000875af1158015610307573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032b9190611a90565b60405191935091506000906001600160a01b038816903390600080516020611fa88339815191529061036890839060208a01359089908990611ab4565b60405180910390a49550959350505050565b600080600080610389866103c1565b90925090506103b38561039f6060890189611ada565b6103ad9060208101906118b1565b8461097e565b909790965091945092509050565b6000806103e06103d460208501856118b1565b33308660200135610b1d565b6104166103f060208501856118b1565b7f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016639997780f3061045360208701876118b1565b60208701356104656060890189611ada565b6040518563ffffffff1660e01b81526004016104849493929190611afa565b60408051808303816000875af11580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190611a90565b90925090506104db6060840160408501611b37565b15610561576104ed60208401846118b1565b6001600160a01b0316639262187b336040518263ffffffff1660e01b81526004016105189190611723565b6000604051808303816000875af1158015610537573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261055f9190810190611b9a565b505b61056e6060840184611ada565b61057c9060208101906118b1565b6001600160a01b031661059260208501856118b1565b6001600160a01b0316336001600160a01b03167f3fff08e8137afe866dce7ced13ddc12d684db61b80b0ac5cb9e54961c9dd8a21338760200135876040516105dc93929190611c3f565b60405180910390a4915091565b6000806000806105f886610633565b90935091506106078584610c02565b909793965091945090925050565b60008060008061062486610633565b90925090506103b38583610dc9565b6000806106466103d460208501856118b1565b6106566103f060208501856118b1565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663178d29d33061069360208701876118b1565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152602086013560448201526000606482015260840160408051808303816000875af11580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107149190611a90565b90925090506107296060840160408501611b37565b156107af5761073b60208401846118b1565b6001600160a01b0316639262187b336040518263ffffffff1660e01b81526004016107669190611723565b6000604051808303816000875af1158015610785573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ad9190810190611b9a565b505b336107bd60208501856118b1565b6001600160a01b0316336001600160a01b03167fd31f02c44717b409d13b92ec9d2eaf1427fb4e63f85f4777f1458fb8d93877618660200135866040516105dc929190918252602082015260400190565b60008060008061081d866103c1565b9093509150610607856108336060890189611ada565b6108419060208101906118b1565b85610f92565b6001600160a01b03831661089d578034146108985760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b60448201526064015b60405180910390fd5b505050565b8015610898576108986001600160a01b038416833084611105565b6001600160a01b03831661091f57816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b15801561090157600080fd5b505af1158015610915573d6000803e3d6000fd5b5050505050505050565b604051632e1a7d4d60e01b8152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b15801561096157600080fd5b505af1158015610975573d6000803e3d6000fd5b50505050505050565b6000806001600160a01b0384166109de577f000000000000000000000000000000000000000000000000000000000000000093506109de60007f0000000000000000000000000000000000000000000000000000000000000000856108b8565b610a08847f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016633dbe1c5533610a4560208901896118b1565b88602001358960400135610a598a8a61115f565b6040518663ffffffff1660e01b8152600401610a79959493929190611d3d565b60408051808303816000875af1158015610a97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abb9190611a90565b90925090506001600160a01b038416610ad760208701876118b1565b6001600160a01b0316336001600160a01b0316600080516020611fa883398151915233878787604051610b0d9493929190611ab4565b60405180910390a4935093915050565b8015610b3857610b386001600160a01b038516848484611105565b50505050565b6001600160a01b038216610b50575050565b610b6260026001600160601b03611d8d565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610bbb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bdf9190611db3565b1015610bfe57610bf182826000611188565b610bfe8282600019611188565b5050565b60008080610c1360208601866118b1565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610c50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c749190611dcc565b50509050610ca2817f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663409c7a8933610cdf60208901896118b1565b878960200135610cf78b6060018c604001358c611292565b6040518663ffffffff1660e01b8152600401610d17959493929190611e49565b60408051808303816000875af1158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190611a90565b909350915033610d6c60208701876118b1565b6001600160a01b0316336001600160a01b03167fb51950711c9b21dc7888d41f68a19540231ffb5f0d19d8f75cbccaf90ffa7fa58787604051610db9929190918252602082015260400190565b60405180910390a4509250929050565b60008080610dda60208601866118b1565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610e17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3b9190611dcc565b50509050610e69817f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663844384aa33610ea660208901896118b1565b604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820188905260208901356064830152880135608482015260a40160408051808303816000875af1158015610f0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f329190611a90565b909350915033610f4560208701876118b1565b60408051878152602081018790529081018590526001600160a01b03919091169033907fc8437d84f52d1e20cc82487e336feadb2d39ede00af7711b6a58abf39392328f90606001610db9565b600080806001600160a01b038516610fa75750825b610fd1857f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663042ffd41823361100f60208b018b6118b1565b8a602001356110268c6060018d604001358c611292565b6110308c8c61115f565b6040518763ffffffff1660e01b8152600401611050959493929190611e7d565b604080518083038185885af115801561106d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110929190611a90565b90935091506001600160a01b0385166110ae60208801886118b1565b6001600160a01b0316336001600160a01b03167ff83776e5b667a2b471f92ddfd482749c61b5328b832d375097638c2c08818f3b3388886040516110f493929190611c3f565b60405180910390a450935093915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610b389085906113b7565b61116761161c565b6001600160a01b038316604082018190528152602081018290525b92915050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291516000928392908716916111e49190611ebd565b6000604051808303816000865af19150503d8060008114611221576040519150601f19603f3d011682016040523d82523d6000602084013e611226565b606091505b50915091508180156112505750805115806112505750808060200190518101906112509190611ecf565b61128b5760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161088f565b5050505050565b6112c46040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b83604001356000036113365783351580156112e457506000198460200135145b6113205760405162461bcd60e51b815260206004820152600d60248201526c696e76616c696420677565737360981b604482015260640161088f565b61132f36859003850185611eec565b90506113b0565b6040805160a08101909152808461134e858835611f5b565b6113589190611f80565b81526020018484876020013561136e9190611f5b565b6113789190611f80565b81526020018461138c856040890135611f5b565b6113969190611f80565b815260200185606001358152602001856080013581525090505b9392505050565b600061140c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661148c9092919063ffffffff16565b905080516000148061142d57508080602001905181019061142d9190611ecf565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161088f565b606061149b84846000856114a3565b949350505050565b6060824710156115045760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161088f565b600080866001600160a01b031685876040516115209190611ebd565b60006040518083038185875af1925050503d806000811461155d576040519150601f19603f3d011682016040523d82523d6000602084013e611562565b606091505b50915091506115738783838761157e565b979650505050505050565b606083156115ed5782516000036115e6576001600160a01b0385163b6115e65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161088f565b508161149b565b61149b83838151156116025781518083602001fd5b8060405162461bcd60e51b815260040161088f9190611f94565b6040518060a0016040528060006001600160a01b031681526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161168a604080516080810190915280600081526000602082018190526060604083018190529091015290565b905290565b6001600160a01b03811681146116a457600080fd5b50565b600080600080600060a086880312156116bf57600080fd5b85356116ca8161168f565b945060208601356116da8161168f565b9350604086013592506060860135915060808601356001600160401b0381111561170357600080fd5b860160a0818903121561171557600080fd5b809150509295509295909350565b6001600160a01b0391909116815260200190565b60006080828403121561174957600080fd5b50919050565b60006060828403121561174957600080fd5b6000806080838503121561177457600080fd5b82356001600160401b0381111561178a57600080fd5b61179685828601611737565b9250506117a6846020850161174f565b90509250929050565b6000602082840312156117c157600080fd5b81356001600160401b038111156117d757600080fd5b61149b84828501611737565b6000610100828403121561174957600080fd5b600080610160838503121561180a57600080fd5b611814848461174f565b91506117a684606085016117e3565b60008060c0838503121561183657600080fd5b611840848461174f565b91506117a6846060850161174f565b60006060828403121561186157600080fd5b6113b0838361174f565b600080610120838503121561187f57600080fd5b82356001600160401b0381111561189557600080fd5b6118a185828601611737565b9250506117a684602085016117e3565b6000602082840312156118c357600080fd5b81356113b08161168f565b600481106118ec57634e487b7160e01b600052602160045260246000fd5b9052565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b80151581146116a457600080fd5b803561193281611919565b919050565b600081356119448161168f565b6001600160a01b0390811684526020838101359085015260408301359061196a8261168f565b90811660408501526060830135906119818261168f565b908116606085015260808301359036849003607e190182126119a257600080fd5b60a06080860152908301908135600481106119bc57600080fd5b6119c960a08701826118ce565b5060208201356119d88161168f565b1660c0850152604081013536829003601e190181126119f657600080fd5b81016020810190356001600160401b03811115611a1257600080fd5b803603821315611a2157600080fd5b608060e0870152611a37610120870182846118f0565b915050611a4660608301611927565b801515610100870152915061149b565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061157390830184611937565b60008060408385031215611aa357600080fd5b505080516020909101519092909150565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b60008235609e19833603018112611af057600080fd5b9190910192915050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611b2d90830184611937565b9695505050505050565b600060208284031215611b4957600080fd5b81356113b081611919565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715611b9257611b92611b54565b604052919050565b60006020808385031215611bad57600080fd5b82516001600160401b0380821115611bc457600080fd5b818501915085601f830112611bd857600080fd5b815181811115611bea57611bea611b54565b8060051b9150611bfb848301611b6a565b8181529183018401918481019088841115611c1557600080fd5b938501935b83851015611c3357845182529385019390850190611c1a565b98975050505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015611c7b578181015183820152602001611c63565b50506000910152565b60008151808452611c9c816020860160208601611c60565b601f01601f19169290920160200192915050565b600060018060a01b0380835116845260208301516020850152806040840151166040850152806060840151166060850152608083015160a06080860152611cfb60a0860182516118ce565b8160208201511660c086015260408101519150608060e0860152611d23610120860183611c84565b915060608101511515610100860152508091505092915050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061157390830184611cb0565b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680611da757611da7611d77565b92169190910492915050565b600060208284031215611dc557600080fd5b5051919050565b600080600060608486031215611de157600080fd5b8351611dec8161168f565b6020850151909350611dfd8161168f565b6040850151909250611e0e8161168f565b809150509250925092565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b6001600160a01b0386811682528516602082015260408101849052606081018390526101208101611b2d6080830184611e19565b6001600160a01b03868116825285166020820152604081018490526000610120611eaa6060840186611e19565b80610100840152611c3381840185611cb0565b60008251611af0818460208701611c60565b600060208284031215611ee157600080fd5b81516113b081611919565b600060a08284031215611efe57600080fd5b60405160a081016001600160401b0381118282101715611f2057611f20611b54565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013560808201528091505092915050565b808202811582820484141761118257634e487b7160e01b600052601160045260246000fd5b600082611f8f57611f8f611d77565b500490565b6020815260006113b06020830184611c8456fe43eb84d5f21c53e2b7be07b8fc06cbbb55af094a111c91c7ddc6513fed4d0352a2646970667358221220f8dc52e42cbd341c80e1f1dab7af894f0ee265078f58f2288b413b60f540ffb064736f6c63430008170033",
999
- "deployedBytecode": "0x60806040526004361061007a5760003560e01c806323a90d6c1461008657806332fe7b26146100b35780633428bbb2146100f457806388ee62a514610134578063ad5c464814610154578063b558229a14610188578063c7f36371146101a8578063d64bccb3146101c8578063f1f6f7cd146101e857600080fd5b3661008157005b600080fd5b6100996100943660046116a7565b610208565b604080519283526020830191909152015b60405180910390f35b3480156100bf57600080fd5b506100e77f000000000000000000000000000000000000000000000000000000000000000081565b6040516100aa9190611723565b34801561010057600080fd5b5061011461010f366004611761565b61037a565b6040805194855260208501939093529183015260608201526080016100aa565b34801561014057600080fd5b5061009961014f3660046117af565b6103c1565b34801561016057600080fd5b506100e77f000000000000000000000000000000000000000000000000000000000000000081565b34801561019457600080fd5b506101146101a33660046117f6565b6105e9565b3480156101b457600080fd5b506101146101c3366004611823565b610615565b3480156101d457600080fd5b506100996101e336600461184f565b610633565b3480156101f457600080fd5b5061011461020336600461186b565b61080e565b6000806001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001661024260208501856118b1565b6001600160a01b03161461025557600080fd5b6102656000338560200135610847565b61029560007f000000000000000000000000000000000000000000000000000000000000000085602001356108b8565b604051633dbe1c5560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690633dbe1c55906102e9908a908a908a908a908a90600401611a56565b60408051808303816000875af1158015610307573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032b9190611a90565b60405191935091506000906001600160a01b038816903390600080516020611fa88339815191529061036890839060208a01359089908990611ab4565b60405180910390a49550959350505050565b600080600080610389866103c1565b90925090506103b38561039f6060890189611ada565b6103ad9060208101906118b1565b8461097e565b909790965091945092509050565b6000806103e06103d460208501856118b1565b33308660200135610b1d565b6104166103f060208501856118b1565b7f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016639997780f3061045360208701876118b1565b60208701356104656060890189611ada565b6040518563ffffffff1660e01b81526004016104849493929190611afa565b60408051808303816000875af11580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c69190611a90565b90925090506104db6060840160408501611b37565b15610561576104ed60208401846118b1565b6001600160a01b0316639262187b336040518263ffffffff1660e01b81526004016105189190611723565b6000604051808303816000875af1158015610537573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261055f9190810190611b9a565b505b61056e6060840184611ada565b61057c9060208101906118b1565b6001600160a01b031661059260208501856118b1565b6001600160a01b0316336001600160a01b03167f3fff08e8137afe866dce7ced13ddc12d684db61b80b0ac5cb9e54961c9dd8a21338760200135876040516105dc93929190611c3f565b60405180910390a4915091565b6000806000806105f886610633565b90935091506106078584610c02565b909793965091945090925050565b60008060008061062486610633565b90925090506103b38583610dc9565b6000806106466103d460208501856118b1565b6106566103f060208501856118b1565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663178d29d33061069360208701876118b1565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152602086013560448201526000606482015260840160408051808303816000875af11580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107149190611a90565b90925090506107296060840160408501611b37565b156107af5761073b60208401846118b1565b6001600160a01b0316639262187b336040518263ffffffff1660e01b81526004016107669190611723565b6000604051808303816000875af1158015610785573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107ad9190810190611b9a565b505b336107bd60208501856118b1565b6001600160a01b0316336001600160a01b03167fd31f02c44717b409d13b92ec9d2eaf1427fb4e63f85f4777f1458fb8d93877618660200135866040516105dc929190918252602082015260400190565b60008060008061081d866103c1565b9093509150610607856108336060890189611ada565b6108419060208101906118b1565b85610f92565b6001600160a01b03831661089d578034146108985760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b60448201526064015b60405180910390fd5b505050565b8015610898576108986001600160a01b038416833084611105565b6001600160a01b03831661091f57816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b15801561090157600080fd5b505af1158015610915573d6000803e3d6000fd5b5050505050505050565b604051632e1a7d4d60e01b8152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b15801561096157600080fd5b505af1158015610975573d6000803e3d6000fd5b50505050505050565b6000806001600160a01b0384166109de577f000000000000000000000000000000000000000000000000000000000000000093506109de60007f0000000000000000000000000000000000000000000000000000000000000000856108b8565b610a08847f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016633dbe1c5533610a4560208901896118b1565b88602001358960400135610a598a8a61115f565b6040518663ffffffff1660e01b8152600401610a79959493929190611d3d565b60408051808303816000875af1158015610a97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abb9190611a90565b90925090506001600160a01b038416610ad760208701876118b1565b6001600160a01b0316336001600160a01b0316600080516020611fa883398151915233878787604051610b0d9493929190611ab4565b60405180910390a4935093915050565b8015610b3857610b386001600160a01b038516848484611105565b50505050565b6001600160a01b038216610b50575050565b610b6260026001600160601b03611d8d565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610bbb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bdf9190611db3565b1015610bfe57610bf182826000611188565b610bfe8282600019611188565b5050565b60008080610c1360208601866118b1565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610c50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c749190611dcc565b50509050610ca2817f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663409c7a8933610cdf60208901896118b1565b878960200135610cf78b6060018c604001358c611292565b6040518663ffffffff1660e01b8152600401610d17959493929190611e49565b60408051808303816000875af1158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d599190611a90565b909350915033610d6c60208701876118b1565b6001600160a01b0316336001600160a01b03167fb51950711c9b21dc7888d41f68a19540231ffb5f0d19d8f75cbccaf90ffa7fa58787604051610db9929190918252602082015260400190565b60405180910390a4509250929050565b60008080610dda60208601866118b1565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610e17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3b9190611dcc565b50509050610e69817f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663844384aa33610ea660208901896118b1565b604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820188905260208901356064830152880135608482015260a40160408051808303816000875af1158015610f0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f329190611a90565b909350915033610f4560208701876118b1565b60408051878152602081018790529081018590526001600160a01b03919091169033907fc8437d84f52d1e20cc82487e336feadb2d39ede00af7711b6a58abf39392328f90606001610db9565b600080806001600160a01b038516610fa75750825b610fd1857f0000000000000000000000000000000000000000000000000000000000000000610b3e565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663042ffd41823361100f60208b018b6118b1565b8a602001356110268c6060018d604001358c611292565b6110308c8c61115f565b6040518763ffffffff1660e01b8152600401611050959493929190611e7d565b604080518083038185885af115801561106d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110929190611a90565b90935091506001600160a01b0385166110ae60208801886118b1565b6001600160a01b0316336001600160a01b03167ff83776e5b667a2b471f92ddfd482749c61b5328b832d375097638c2c08818f3b3388886040516110f493929190611c3f565b60405180910390a450935093915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610b389085906113b7565b61116761161c565b6001600160a01b038316604082018190528152602081018290525b92915050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291516000928392908716916111e49190611ebd565b6000604051808303816000865af19150503d8060008114611221576040519150601f19603f3d011682016040523d82523d6000602084013e611226565b606091505b50915091508180156112505750805115806112505750808060200190518101906112509190611ecf565b61128b5760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640161088f565b5050505050565b6112c46040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b83604001356000036113365783351580156112e457506000198460200135145b6113205760405162461bcd60e51b815260206004820152600d60248201526c696e76616c696420677565737360981b604482015260640161088f565b61132f36859003850185611eec565b90506113b0565b6040805160a08101909152808461134e858835611f5b565b6113589190611f80565b81526020018484876020013561136e9190611f5b565b6113789190611f80565b81526020018461138c856040890135611f5b565b6113969190611f80565b815260200185606001358152602001856080013581525090505b9392505050565b600061140c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661148c9092919063ffffffff16565b905080516000148061142d57508080602001905181019061142d9190611ecf565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161088f565b606061149b84846000856114a3565b949350505050565b6060824710156115045760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161088f565b600080866001600160a01b031685876040516115209190611ebd565b60006040518083038185875af1925050503d806000811461155d576040519150601f19603f3d011682016040523d82523d6000602084013e611562565b606091505b50915091506115738783838761157e565b979650505050505050565b606083156115ed5782516000036115e6576001600160a01b0385163b6115e65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161088f565b508161149b565b61149b83838151156116025781518083602001fd5b8060405162461bcd60e51b815260040161088f9190611f94565b6040518060a0016040528060006001600160a01b031681526020016000815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161168a604080516080810190915280600081526000602082018190526060604083018190529091015290565b905290565b6001600160a01b03811681146116a457600080fd5b50565b600080600080600060a086880312156116bf57600080fd5b85356116ca8161168f565b945060208601356116da8161168f565b9350604086013592506060860135915060808601356001600160401b0381111561170357600080fd5b860160a0818903121561171557600080fd5b809150509295509295909350565b6001600160a01b0391909116815260200190565b60006080828403121561174957600080fd5b50919050565b60006060828403121561174957600080fd5b6000806080838503121561177457600080fd5b82356001600160401b0381111561178a57600080fd5b61179685828601611737565b9250506117a6846020850161174f565b90509250929050565b6000602082840312156117c157600080fd5b81356001600160401b038111156117d757600080fd5b61149b84828501611737565b6000610100828403121561174957600080fd5b600080610160838503121561180a57600080fd5b611814848461174f565b91506117a684606085016117e3565b60008060c0838503121561183657600080fd5b611840848461174f565b91506117a6846060850161174f565b60006060828403121561186157600080fd5b6113b0838361174f565b600080610120838503121561187f57600080fd5b82356001600160401b0381111561189557600080fd5b6118a185828601611737565b9250506117a684602085016117e3565b6000602082840312156118c357600080fd5b81356113b08161168f565b600481106118ec57634e487b7160e01b600052602160045260246000fd5b9052565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b80151581146116a457600080fd5b803561193281611919565b919050565b600081356119448161168f565b6001600160a01b0390811684526020838101359085015260408301359061196a8261168f565b90811660408501526060830135906119818261168f565b908116606085015260808301359036849003607e190182126119a257600080fd5b60a06080860152908301908135600481106119bc57600080fd5b6119c960a08701826118ce565b5060208201356119d88161168f565b1660c0850152604081013536829003601e190181126119f657600080fd5b81016020810190356001600160401b03811115611a1257600080fd5b803603821315611a2157600080fd5b608060e0870152611a37610120870182846118f0565b915050611a4660608301611927565b801515610100870152915061149b565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061157390830184611937565b60008060408385031215611aa357600080fd5b505080516020909101519092909150565b6001600160a01b0394909416845260208401929092526040830152606082015260800190565b60008235609e19833603018112611af057600080fd5b9190910192915050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611b2d90830184611937565b9695505050505050565b600060208284031215611b4957600080fd5b81356113b081611919565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715611b9257611b92611b54565b604052919050565b60006020808385031215611bad57600080fd5b82516001600160401b0380821115611bc457600080fd5b818501915085601f830112611bd857600080fd5b815181811115611bea57611bea611b54565b8060051b9150611bfb848301611b6a565b8181529183018401918481019088841115611c1557600080fd5b938501935b83851015611c3357845182529385019390850190611c1a565b98975050505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b60005b83811015611c7b578181015183820152602001611c63565b50506000910152565b60008151808452611c9c816020860160208601611c60565b601f01601f19169290920160200192915050565b600060018060a01b0380835116845260208301516020850152806040840151166040850152806060840151166060850152608083015160a06080860152611cfb60a0860182516118ce565b8160208201511660c086015260408101519150608060e0860152611d23610120860183611c84565b915060608101511515610100860152508091505092915050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061157390830184611cb0565b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680611da757611da7611d77565b92169190910492915050565b600060208284031215611dc557600080fd5b5051919050565b600080600060608486031215611de157600080fd5b8351611dec8161168f565b6020850151909350611dfd8161168f565b6040850151909250611e0e8161168f565b809150509250925092565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b6001600160a01b0386811682528516602082015260408101849052606081018390526101208101611b2d6080830184611e19565b6001600160a01b03868116825285166020820152604081018490526000610120611eaa6060840186611e19565b80610100840152611c3381840185611cb0565b60008251611af0818460208701611c60565b600060208284031215611ee157600080fd5b81516113b081611919565b600060a08284031215611efe57600080fd5b60405160a081016001600160401b0381118282101715611f2057611f20611b54565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013560808201528091505092915050565b808202811582820484141761118257634e487b7160e01b600052601160045260246000fd5b600082611f8f57611f8f611d77565b500490565b6020815260006113b06020830184611c8456fe43eb84d5f21c53e2b7be07b8fc06cbbb55af094a111c91c7ddc6513fed4d0352a2646970667358221220f8dc52e42cbd341c80e1f1dab7af894f0ee265078f58f2288b413b60f540ffb064736f6c63430008170033",
1000
- "linkReferences": {},
1001
- "deployedLinkReferences": {}
1002
- }