@pendle/core-v2 1.4.0-testnet → 1.4.1-testnet

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 (51) hide show
  1. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  3. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  4. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  5. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  6. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.dbg.json +4 -0
  8. package/build/artifacts/contracts/interfaces/IPLiquidityMigrator.sol/IPLiquidityMigrator.json +655 -0
  9. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  10. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  11. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  12. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  13. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  14. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  15. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  16. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  17. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  18. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  19. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  20. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  21. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  22. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  23. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  24. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  25. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  26. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  27. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  28. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  29. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  30. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  31. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  32. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  33. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  34. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +4 -0
  35. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +773 -0
  36. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  37. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  38. package/deployments/43113-core.json +1 -1
  39. package/package.json +1 -1
  40. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  41. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  42. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  43. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  44. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  45. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  46. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  47. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  48. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  49. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  50. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  51. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
@@ -0,0 +1,773 @@
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": "address",
15
+ "name": "_WETH",
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": "fromMarket",
29
+ "type": "address"
30
+ },
31
+ {
32
+ "indexed": true,
33
+ "internalType": "address",
34
+ "name": "toMarket",
35
+ "type": "address"
36
+ },
37
+ {
38
+ "indexed": true,
39
+ "internalType": "address",
40
+ "name": "user",
41
+ "type": "address"
42
+ },
43
+ {
44
+ "indexed": false,
45
+ "internalType": "uint256",
46
+ "name": "netLpToRemove",
47
+ "type": "uint256"
48
+ },
49
+ {
50
+ "indexed": false,
51
+ "internalType": "uint256",
52
+ "name": "netLpOut",
53
+ "type": "uint256"
54
+ },
55
+ {
56
+ "indexed": false,
57
+ "internalType": "uint256",
58
+ "name": "netYtOut",
59
+ "type": "uint256"
60
+ }
61
+ ],
62
+ "name": "MigrateDifferentSyKeepYt",
63
+ "type": "event"
64
+ },
65
+ {
66
+ "anonymous": false,
67
+ "inputs": [
68
+ {
69
+ "indexed": true,
70
+ "internalType": "address",
71
+ "name": "fromMarket",
72
+ "type": "address"
73
+ },
74
+ {
75
+ "indexed": true,
76
+ "internalType": "address",
77
+ "name": "toMarket",
78
+ "type": "address"
79
+ },
80
+ {
81
+ "indexed": true,
82
+ "internalType": "address",
83
+ "name": "user",
84
+ "type": "address"
85
+ },
86
+ {
87
+ "indexed": false,
88
+ "internalType": "uint256",
89
+ "name": "netLpToRemove",
90
+ "type": "uint256"
91
+ },
92
+ {
93
+ "indexed": false,
94
+ "internalType": "uint256",
95
+ "name": "netLpOut",
96
+ "type": "uint256"
97
+ }
98
+ ],
99
+ "name": "MigrateDifferentSyNormal",
100
+ "type": "event"
101
+ },
102
+ {
103
+ "anonymous": false,
104
+ "inputs": [
105
+ {
106
+ "indexed": true,
107
+ "internalType": "address",
108
+ "name": "fromMarket",
109
+ "type": "address"
110
+ },
111
+ {
112
+ "indexed": true,
113
+ "internalType": "address",
114
+ "name": "toMarket",
115
+ "type": "address"
116
+ },
117
+ {
118
+ "indexed": true,
119
+ "internalType": "address",
120
+ "name": "user",
121
+ "type": "address"
122
+ },
123
+ {
124
+ "indexed": false,
125
+ "internalType": "uint256",
126
+ "name": "netLpToRemove",
127
+ "type": "uint256"
128
+ },
129
+ {
130
+ "indexed": false,
131
+ "internalType": "uint256",
132
+ "name": "netLpOut",
133
+ "type": "uint256"
134
+ },
135
+ {
136
+ "indexed": false,
137
+ "internalType": "uint256",
138
+ "name": "netYtOut",
139
+ "type": "uint256"
140
+ }
141
+ ],
142
+ "name": "MigrateSameSyKeepYt",
143
+ "type": "event"
144
+ },
145
+ {
146
+ "anonymous": false,
147
+ "inputs": [
148
+ {
149
+ "indexed": true,
150
+ "internalType": "address",
151
+ "name": "fromMarket",
152
+ "type": "address"
153
+ },
154
+ {
155
+ "indexed": true,
156
+ "internalType": "address",
157
+ "name": "toMarket",
158
+ "type": "address"
159
+ },
160
+ {
161
+ "indexed": true,
162
+ "internalType": "address",
163
+ "name": "user",
164
+ "type": "address"
165
+ },
166
+ {
167
+ "indexed": false,
168
+ "internalType": "uint256",
169
+ "name": "netLpToRemove",
170
+ "type": "uint256"
171
+ },
172
+ {
173
+ "indexed": false,
174
+ "internalType": "uint256",
175
+ "name": "netLpOut",
176
+ "type": "uint256"
177
+ }
178
+ ],
179
+ "name": "MigrateSameSyNormal",
180
+ "type": "event"
181
+ },
182
+ {
183
+ "inputs": [
184
+ {
185
+ "internalType": "address",
186
+ "name": "receiver",
187
+ "type": "address"
188
+ },
189
+ {
190
+ "internalType": "address",
191
+ "name": "market",
192
+ "type": "address"
193
+ },
194
+ {
195
+ "internalType": "uint256",
196
+ "name": "minLpOut",
197
+ "type": "uint256"
198
+ },
199
+ {
200
+ "internalType": "uint256",
201
+ "name": "minYtOut",
202
+ "type": "uint256"
203
+ },
204
+ {
205
+ "components": [
206
+ {
207
+ "internalType": "address",
208
+ "name": "tokenIn",
209
+ "type": "address"
210
+ },
211
+ {
212
+ "internalType": "uint256",
213
+ "name": "netTokenIn",
214
+ "type": "uint256"
215
+ },
216
+ {
217
+ "internalType": "address",
218
+ "name": "tokenMintSy",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "internalType": "address",
223
+ "name": "bulk",
224
+ "type": "address"
225
+ },
226
+ {
227
+ "internalType": "address",
228
+ "name": "pendleSwap",
229
+ "type": "address"
230
+ },
231
+ {
232
+ "components": [
233
+ {
234
+ "internalType": "enum SwapType",
235
+ "name": "swapType",
236
+ "type": "uint8"
237
+ },
238
+ {
239
+ "internalType": "address",
240
+ "name": "extRouter",
241
+ "type": "address"
242
+ },
243
+ {
244
+ "internalType": "bytes",
245
+ "name": "extCalldata",
246
+ "type": "bytes"
247
+ },
248
+ {
249
+ "internalType": "bool",
250
+ "name": "needScale",
251
+ "type": "bool"
252
+ }
253
+ ],
254
+ "internalType": "struct SwapData",
255
+ "name": "swapData",
256
+ "type": "tuple"
257
+ }
258
+ ],
259
+ "internalType": "struct TokenInput",
260
+ "name": "input",
261
+ "type": "tuple"
262
+ }
263
+ ],
264
+ "name": "addLiquiditySingleTokenKeepYtWithEth",
265
+ "outputs": [
266
+ {
267
+ "internalType": "uint256",
268
+ "name": "netLpOut",
269
+ "type": "uint256"
270
+ },
271
+ {
272
+ "internalType": "uint256",
273
+ "name": "netYtOut",
274
+ "type": "uint256"
275
+ }
276
+ ],
277
+ "stateMutability": "payable",
278
+ "type": "function"
279
+ },
280
+ {
281
+ "inputs": [
282
+ {
283
+ "components": [
284
+ {
285
+ "internalType": "address",
286
+ "name": "market",
287
+ "type": "address"
288
+ },
289
+ {
290
+ "internalType": "uint256",
291
+ "name": "netLpToRemove",
292
+ "type": "uint256"
293
+ },
294
+ {
295
+ "internalType": "bool",
296
+ "name": "doRedeemRewards",
297
+ "type": "bool"
298
+ },
299
+ {
300
+ "components": [
301
+ {
302
+ "internalType": "address",
303
+ "name": "tokenOut",
304
+ "type": "address"
305
+ },
306
+ {
307
+ "internalType": "uint256",
308
+ "name": "minTokenOut",
309
+ "type": "uint256"
310
+ },
311
+ {
312
+ "internalType": "address",
313
+ "name": "tokenRedeemSy",
314
+ "type": "address"
315
+ },
316
+ {
317
+ "internalType": "address",
318
+ "name": "bulk",
319
+ "type": "address"
320
+ },
321
+ {
322
+ "internalType": "address",
323
+ "name": "pendleSwap",
324
+ "type": "address"
325
+ },
326
+ {
327
+ "components": [
328
+ {
329
+ "internalType": "enum SwapType",
330
+ "name": "swapType",
331
+ "type": "uint8"
332
+ },
333
+ {
334
+ "internalType": "address",
335
+ "name": "extRouter",
336
+ "type": "address"
337
+ },
338
+ {
339
+ "internalType": "bytes",
340
+ "name": "extCalldata",
341
+ "type": "bytes"
342
+ },
343
+ {
344
+ "internalType": "bool",
345
+ "name": "needScale",
346
+ "type": "bool"
347
+ }
348
+ ],
349
+ "internalType": "struct SwapData",
350
+ "name": "swapData",
351
+ "type": "tuple"
352
+ }
353
+ ],
354
+ "internalType": "struct TokenOutput",
355
+ "name": "output",
356
+ "type": "tuple"
357
+ }
358
+ ],
359
+ "internalType": "struct IPLiquidityMigrator.RemoveLiquiditySingleTokenStruct",
360
+ "name": "fromMarket",
361
+ "type": "tuple"
362
+ },
363
+ {
364
+ "components": [
365
+ {
366
+ "internalType": "address",
367
+ "name": "market",
368
+ "type": "address"
369
+ },
370
+ {
371
+ "internalType": "uint256",
372
+ "name": "minLpOut",
373
+ "type": "uint256"
374
+ },
375
+ {
376
+ "internalType": "uint256",
377
+ "name": "minYtOut",
378
+ "type": "uint256"
379
+ },
380
+ {
381
+ "internalType": "address",
382
+ "name": "bulk",
383
+ "type": "address"
384
+ }
385
+ ],
386
+ "internalType": "struct IPLiquidityMigrator.AddLiquiditySingleTokenKeepYtStruct",
387
+ "name": "toMarket",
388
+ "type": "tuple"
389
+ }
390
+ ],
391
+ "name": "migrateDifferentSyKeepYt",
392
+ "outputs": [
393
+ {
394
+ "internalType": "uint256",
395
+ "name": "netLpOut",
396
+ "type": "uint256"
397
+ },
398
+ {
399
+ "internalType": "uint256",
400
+ "name": "netYtOut",
401
+ "type": "uint256"
402
+ },
403
+ {
404
+ "internalType": "uint256",
405
+ "name": "netTokenZapIn",
406
+ "type": "uint256"
407
+ },
408
+ {
409
+ "internalType": "uint256",
410
+ "name": "netSyFeeOfRemove",
411
+ "type": "uint256"
412
+ }
413
+ ],
414
+ "stateMutability": "nonpayable",
415
+ "type": "function"
416
+ },
417
+ {
418
+ "inputs": [
419
+ {
420
+ "components": [
421
+ {
422
+ "internalType": "address",
423
+ "name": "market",
424
+ "type": "address"
425
+ },
426
+ {
427
+ "internalType": "uint256",
428
+ "name": "netLpToRemove",
429
+ "type": "uint256"
430
+ },
431
+ {
432
+ "internalType": "bool",
433
+ "name": "doRedeemRewards",
434
+ "type": "bool"
435
+ },
436
+ {
437
+ "components": [
438
+ {
439
+ "internalType": "address",
440
+ "name": "tokenOut",
441
+ "type": "address"
442
+ },
443
+ {
444
+ "internalType": "uint256",
445
+ "name": "minTokenOut",
446
+ "type": "uint256"
447
+ },
448
+ {
449
+ "internalType": "address",
450
+ "name": "tokenRedeemSy",
451
+ "type": "address"
452
+ },
453
+ {
454
+ "internalType": "address",
455
+ "name": "bulk",
456
+ "type": "address"
457
+ },
458
+ {
459
+ "internalType": "address",
460
+ "name": "pendleSwap",
461
+ "type": "address"
462
+ },
463
+ {
464
+ "components": [
465
+ {
466
+ "internalType": "enum SwapType",
467
+ "name": "swapType",
468
+ "type": "uint8"
469
+ },
470
+ {
471
+ "internalType": "address",
472
+ "name": "extRouter",
473
+ "type": "address"
474
+ },
475
+ {
476
+ "internalType": "bytes",
477
+ "name": "extCalldata",
478
+ "type": "bytes"
479
+ },
480
+ {
481
+ "internalType": "bool",
482
+ "name": "needScale",
483
+ "type": "bool"
484
+ }
485
+ ],
486
+ "internalType": "struct SwapData",
487
+ "name": "swapData",
488
+ "type": "tuple"
489
+ }
490
+ ],
491
+ "internalType": "struct TokenOutput",
492
+ "name": "output",
493
+ "type": "tuple"
494
+ }
495
+ ],
496
+ "internalType": "struct IPLiquidityMigrator.RemoveLiquiditySingleTokenStruct",
497
+ "name": "fromMarket",
498
+ "type": "tuple"
499
+ },
500
+ {
501
+ "components": [
502
+ {
503
+ "internalType": "address",
504
+ "name": "market",
505
+ "type": "address"
506
+ },
507
+ {
508
+ "internalType": "uint256",
509
+ "name": "minLpOut",
510
+ "type": "uint256"
511
+ },
512
+ {
513
+ "internalType": "uint256",
514
+ "name": "guessNetTokenIn",
515
+ "type": "uint256"
516
+ },
517
+ {
518
+ "components": [
519
+ {
520
+ "internalType": "uint256",
521
+ "name": "guessMin",
522
+ "type": "uint256"
523
+ },
524
+ {
525
+ "internalType": "uint256",
526
+ "name": "guessMax",
527
+ "type": "uint256"
528
+ },
529
+ {
530
+ "internalType": "uint256",
531
+ "name": "guessOffchain",
532
+ "type": "uint256"
533
+ },
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "maxIteration",
537
+ "type": "uint256"
538
+ },
539
+ {
540
+ "internalType": "uint256",
541
+ "name": "eps",
542
+ "type": "uint256"
543
+ }
544
+ ],
545
+ "internalType": "struct ApproxParams",
546
+ "name": "guessPtReceivedFromSy",
547
+ "type": "tuple"
548
+ },
549
+ {
550
+ "internalType": "address",
551
+ "name": "bulk",
552
+ "type": "address"
553
+ }
554
+ ],
555
+ "internalType": "struct IPLiquidityMigrator.AddLiquiditySingleTokenStruct",
556
+ "name": "toMarket",
557
+ "type": "tuple"
558
+ }
559
+ ],
560
+ "name": "migrateDifferentSyNormal",
561
+ "outputs": [
562
+ {
563
+ "internalType": "uint256",
564
+ "name": "netLpOut",
565
+ "type": "uint256"
566
+ },
567
+ {
568
+ "internalType": "uint256",
569
+ "name": "netTokenZapIn",
570
+ "type": "uint256"
571
+ },
572
+ {
573
+ "internalType": "uint256",
574
+ "name": "netSyFeeOfRemove",
575
+ "type": "uint256"
576
+ },
577
+ {
578
+ "internalType": "uint256",
579
+ "name": "netSyFeeOfAdd",
580
+ "type": "uint256"
581
+ }
582
+ ],
583
+ "stateMutability": "nonpayable",
584
+ "type": "function"
585
+ },
586
+ {
587
+ "inputs": [
588
+ {
589
+ "components": [
590
+ {
591
+ "internalType": "address",
592
+ "name": "market",
593
+ "type": "address"
594
+ },
595
+ {
596
+ "internalType": "uint256",
597
+ "name": "netLpToRemove",
598
+ "type": "uint256"
599
+ },
600
+ {
601
+ "internalType": "bool",
602
+ "name": "doRedeemRewards",
603
+ "type": "bool"
604
+ }
605
+ ],
606
+ "internalType": "struct IPLiquidityMigrator.RemoveLiquiditySingleSyStruct",
607
+ "name": "fromMarket",
608
+ "type": "tuple"
609
+ },
610
+ {
611
+ "components": [
612
+ {
613
+ "internalType": "address",
614
+ "name": "market",
615
+ "type": "address"
616
+ },
617
+ {
618
+ "internalType": "uint256",
619
+ "name": "minLpOut",
620
+ "type": "uint256"
621
+ },
622
+ {
623
+ "internalType": "uint256",
624
+ "name": "minYtOut",
625
+ "type": "uint256"
626
+ }
627
+ ],
628
+ "internalType": "struct IPLiquidityMigrator.AddLiquiditySingleSyKeepYtStruct",
629
+ "name": "toMarket",
630
+ "type": "tuple"
631
+ }
632
+ ],
633
+ "name": "migrateSameSyKeepYt",
634
+ "outputs": [
635
+ {
636
+ "internalType": "uint256",
637
+ "name": "netLpOut",
638
+ "type": "uint256"
639
+ },
640
+ {
641
+ "internalType": "uint256",
642
+ "name": "netYtOut",
643
+ "type": "uint256"
644
+ },
645
+ {
646
+ "internalType": "uint256",
647
+ "name": "netSyMigrated",
648
+ "type": "uint256"
649
+ },
650
+ {
651
+ "internalType": "uint256",
652
+ "name": "netSyFeeOfRemove",
653
+ "type": "uint256"
654
+ }
655
+ ],
656
+ "stateMutability": "nonpayable",
657
+ "type": "function"
658
+ },
659
+ {
660
+ "inputs": [
661
+ {
662
+ "components": [
663
+ {
664
+ "internalType": "address",
665
+ "name": "market",
666
+ "type": "address"
667
+ },
668
+ {
669
+ "internalType": "uint256",
670
+ "name": "netLpToRemove",
671
+ "type": "uint256"
672
+ },
673
+ {
674
+ "internalType": "bool",
675
+ "name": "doRedeemRewards",
676
+ "type": "bool"
677
+ }
678
+ ],
679
+ "internalType": "struct IPLiquidityMigrator.RemoveLiquiditySingleSyStruct",
680
+ "name": "fromMarket",
681
+ "type": "tuple"
682
+ },
683
+ {
684
+ "components": [
685
+ {
686
+ "internalType": "address",
687
+ "name": "market",
688
+ "type": "address"
689
+ },
690
+ {
691
+ "internalType": "uint256",
692
+ "name": "minLpOut",
693
+ "type": "uint256"
694
+ },
695
+ {
696
+ "internalType": "uint256",
697
+ "name": "guessNetSyIn",
698
+ "type": "uint256"
699
+ },
700
+ {
701
+ "components": [
702
+ {
703
+ "internalType": "uint256",
704
+ "name": "guessMin",
705
+ "type": "uint256"
706
+ },
707
+ {
708
+ "internalType": "uint256",
709
+ "name": "guessMax",
710
+ "type": "uint256"
711
+ },
712
+ {
713
+ "internalType": "uint256",
714
+ "name": "guessOffchain",
715
+ "type": "uint256"
716
+ },
717
+ {
718
+ "internalType": "uint256",
719
+ "name": "maxIteration",
720
+ "type": "uint256"
721
+ },
722
+ {
723
+ "internalType": "uint256",
724
+ "name": "eps",
725
+ "type": "uint256"
726
+ }
727
+ ],
728
+ "internalType": "struct ApproxParams",
729
+ "name": "guessPtReceivedFromSy",
730
+ "type": "tuple"
731
+ }
732
+ ],
733
+ "internalType": "struct IPLiquidityMigrator.AddLiquiditySingleSyStruct",
734
+ "name": "toMarket",
735
+ "type": "tuple"
736
+ }
737
+ ],
738
+ "name": "migrateSameSyNormal",
739
+ "outputs": [
740
+ {
741
+ "internalType": "uint256",
742
+ "name": "netLpOut",
743
+ "type": "uint256"
744
+ },
745
+ {
746
+ "internalType": "uint256",
747
+ "name": "netSyMigrated",
748
+ "type": "uint256"
749
+ },
750
+ {
751
+ "internalType": "uint256",
752
+ "name": "netSyFeeOfRemove",
753
+ "type": "uint256"
754
+ },
755
+ {
756
+ "internalType": "uint256",
757
+ "name": "netSyFeeOfAdd",
758
+ "type": "uint256"
759
+ }
760
+ ],
761
+ "stateMutability": "nonpayable",
762
+ "type": "function"
763
+ },
764
+ {
765
+ "stateMutability": "payable",
766
+ "type": "receive"
767
+ }
768
+ ],
769
+ "bytecode": "0x60c06040523480156200001157600080fd5b5060405162001cd738038062001cd7833981016040819052620000349162000069565b6001600160a01b039182166080521660a052620000a1565b80516001600160a01b03811681146200006457600080fd5b919050565b600080604083850312156200007d57600080fd5b62000088836200004c565b915062000098602084016200004c565b90509250929050565b60805160a051611ba762000130600039600081816102f9015281816103230152818161088101526108a90152600081816103440152818161037f015281816104e601528181610514015281816106e3015281816107110152818161080a015281816108d401528181610902015281816109f801528181610a2601528181610c370152610c650152611ba76000f3fe60806040526004361061004e5760003560e01c80630ad501961461005a57806314b85a4b1461009f5780632ef6d1c9146100bf578063af0b5331146100df578063cbcc90401461010757600080fd5b3661005557005b600080fd5b34801561006657600080fd5b5061007a6100753660046112b7565b610127565b6040805194855260208501939093529183015260608201526080015b60405180910390f35b3480156100ab57600080fd5b5061007a6100ba3660046112fe565b6101bf565b3480156100cb57600080fd5b5061007a6100da366004611343565b610261565b6100f26100ed36600461139d565b6102ef565b60408051928352602083019190915201610096565b34801561011357600080fd5b5061007a610122366004611419565b61040c565b600080600080610136866104b5565b90925090506101458583610667565b9094509250336101586020870187611474565b6001600160a01b031661016e6020890189611474565b6001600160a01b03167faf6dca616e79396f39fcb576a69ef8d3fb0c4caaf645e5d929ef3d6b08f65022896020013588886040516101ae93929190611491565b60405180910390a492959194509250565b6000806000806101ce866107dd565b90925090506101f8856101e460608901896114a7565b6101f2906020810190611474565b8461086e565b90945092503361020b6020870187611474565b6001600160a01b03166102216020890189611474565b6001600160a01b03167ff565eb0e0c861782c25cf31e93e390da6a56998e84c1548acbc928d29d7ee24a896020013588886040516101ae93929190611491565b600080600080610270866104b5565b909350915061027f858461097c565b9094509050336102926020870187611474565b6001600160a01b03166102a86020890189611474565b6001600160a01b03167f6a25562572697a334d713ccc48674406a31caf524663da2d775175665a55d9688960200135886040516101ae929190918252602082015260400190565b60008061031e60007f000000000000000000000000000000000000000000000000000000000000000034610a91565b6103687f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610b58565b604051636fde40a760e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063dfbc814e906103bc908a908a908a908a908a90600401611674565b60408051808303816000875af11580156103da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fe91906116ae565b909890975095505050505050565b60008060008061041b866107dd565b90935091506104458561043160608901896114a7565b61043f906020810190611474565b85610c1c565b9094509050336104586020870187611474565b6001600160a01b031661046e6020890189611474565b6001600160a01b03167fbf87379fee2f51a4dad77f8f8a1063ab5a619e4958dd9d362f5e79592acd4dd88960200135886040516101ae929190918252602082015260400190565b6000806104d46104c86020850185611474565b33308660200135610d38565b61050a6104e46020850185611474565b7f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663178d29d3306105476020870187611474565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015260208601356044820152600060648201526084015b60408051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c991906116ae565b90925090506105de60608401604085016116d2565b15610662576105f06020840184611474565b604051639262187b60e01b81523360048201526001600160a01b039190911690639262187b906024016000604051808303816000875af1158015610638573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106609190810190611735565b505b915091565b600080806106786020860186611474565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156106b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d991906117da565b50509050610707817f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663844384aa336107446020890189611474565b604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820188905260208901356064830152880135608482015260a4015b60408051808303816000875af11580156107ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d191906116ae565b90969095509350505050565b6000806107f06104c86020850185611474565b6108006104e46020850185611474565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663690807ad3061083d6020870187611474565b602087013561084f60608901896114a7565b6040518563ffffffff1660e01b81526004016105879493929190611827565b6000806001600160a01b0384166108ce577f000000000000000000000000000000000000000000000000000000000000000093506108ce60007f000000000000000000000000000000000000000000000000000000000000000085610a91565b6108f8847f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663dfbc814e336109356020890189611474565b8860200135896040013561095c8a8a8d60600160208101906109579190611474565b610d59565b6040518663ffffffff1660e01b815260040161078f95949392919061194e565b6000808061098d6020860186611474565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156109ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ee91906117da565b50509050610a1c817f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663409c7a8933610a596020890189611474565b878960200135610a718b6060018c604001358c610dd6565b6040518663ffffffff1660e01b815260040161078f9594939291906119b8565b6001600160a01b038316610af857816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015610ada57600080fd5b505af1158015610aee573d6000803e3d6000fd5b5050505050505050565b604051632e1a7d4d60e01b8152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505b505050565b6001600160a01b038216610b6a575050565b610b7c60026001600160601b03611a02565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610bd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf99190611a28565b1015610c1857610c0b82826000610eff565b610c188282600019610eff565b5050565b600080806001600160a01b038516610c315750825b610c5b857f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663015491d18233610c9960208b018b611474565b8a60200135610cb08c6060018d604001358c610dd6565b610cc98c8c8f6101000160208101906109579190611474565b6040518763ffffffff1660e01b8152600401610ce9959493929190611a41565b604080518083038185885af1158015610d06573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d2b91906116ae565b9097909650945050505050565b8015610d5357610d536001600160a01b038516848484611009565b50505050565b610dac6040805160c081018252600080825260208083018290528284018290526060808401839052608080850184905285519081018652838152918201839052938101849052928301529060a082015290565b6001600160a01b0380851660408301819052825260208201849052821660608201525b9392505050565b610e086040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b8360400135600003610e7f578335158015610e2857506000198460200135145b610e695760405162461bcd60e51b815260206004820152600d60248201526c696e76616c696420677565737360981b60448201526064015b60405180910390fd5b610e7836859003850185611a81565b9050610dcf565b6040805160a081019091528084610e97858835611af0565b610ea19190611b1b565b815260200184848760200135610eb79190611af0565b610ec19190611b1b565b815260200184610ed5856040890135611af0565b610edf9190611b1b565b815260200185606001358152602001856080013581525090509392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691610f5b9190611b2f565b6000604051808303816000865af19150503d8060008114610f98576040519150601f19603f3d011682016040523d82523d6000602084013e610f9d565b606091505b5091509150818015610fc7575080511580610fc7575080806020019051810190610fc79190611b41565b6110025760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b6044820152606401610e60565b5050505050565b604080516001600160a01b038581166024830152848116604483015260648083018590528351808403909101815260849092018352602080830180516001600160e01b03166323b872dd60e01b17905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610d53928792916000916110a191851690849061111e565b805190915015610b5357808060200190518101906110bf9190611b41565b610b535760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e60565b606061112d8484600085611135565b949350505050565b6060824710156111965760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610e60565b6001600160a01b0385163b6111ed5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e60565b600080866001600160a01b031685876040516112099190611b2f565b60006040518083038185875af1925050503d8060008114611246576040519150601f19603f3d011682016040523d82523d6000602084013e61124b565b606091505b509150915061125b828286611266565b979650505050505050565b60608315611275575081610dcf565b8251156112855782518084602001fd5b8160405162461bcd60e51b8152600401610e609190611b5e565b6000606082840312156112b157600080fd5b50919050565b60008060c083850312156112ca57600080fd5b6112d4848461129f565b91506112e3846060850161129f565b90509250929050565b6000608082840312156112b157600080fd5b60008060a0838503121561131157600080fd5b82356001600160401b0381111561132757600080fd5b611333858286016112ec565b9250506112e384602085016112ec565b60008082840361016081121561135857600080fd5b611362858561129f565b9250610100605f198201121561137757600080fd5b506060830190509250929050565b6001600160a01b038116811461139a57600080fd5b50565b600080600080600060a086880312156113b557600080fd5b85356113c081611385565b945060208601356113d081611385565b9350604086013592506060860135915060808601356001600160401b038111156113f957600080fd5b860160c0818903121561140b57600080fd5b809150509295509295909350565b60008082840361014081121561142e57600080fd5b83356001600160401b0381111561144457600080fd5b611450868287016112ec565b935050610120601f198201121561146657600080fd5b506020830190509250929050565b60006020828403121561148657600080fd5b8135610dcf81611385565b9283526020830191909152604082015260600190565b6000823560be198336030181126114bd57600080fd5b9190910192915050565b600481106114e557634e487b7160e01b600052602160045260246000fd5b9052565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b801515811461139a57600080fd5b803561152b81611512565b919050565b600081356004811061154157600080fd5b61154b84826114c7565b50602082013561155a81611385565b6001600160a01b03166020840152604082013536839003601e1901811261158057600080fd5b82016020810190356001600160401b0381111561159c57600080fd5b8036038213156115ab57600080fd5b608060408601526115c06080860182846114e9565b9150506115cf60608401611520565b8015156060860152509392505050565b600081356115ec81611385565b6001600160a01b0390811684526020838101359085015260408301359061161282611385565b908116604085015260608301359061162982611385565b908116606085015260808301359061164082611385565b16608084015260a082013536839003607e1901811261165e57600080fd5b60c060a085015261112d60c08501848301611530565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061125b908301846115df565b600080604083850312156116c157600080fd5b505080516020909101519092909150565b6000602082840312156116e457600080fd5b8135610dcf81611512565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561172d5761172d6116ef565b604052919050565b6000602080838503121561174857600080fd5b82516001600160401b038082111561175f57600080fd5b818501915085601f83011261177357600080fd5b815181811115611785576117856116ef565b8060051b9150611796848301611705565b81815291830184019184810190888411156117b057600080fd5b938501935b838510156117ce578451825293850193908501906117b5565b98975050505050505050565b6000806000606084860312156117ef57600080fd5b83516117fa81611385565b602085015190935061180b81611385565b604085015190925061181c81611385565b809150509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061185a908301846115df565b9695505050505050565b60005b8381101561187f578181015183820152602001611867565b50506000910152565b600081518084526118a0816020860160208601611864565b601f01601f19169290920160200192915050565b600060018060a01b038083511684526020830151602085015280604084015116604085015280606084015116606085015280608084015116608085015260a083015160c060a086015261190b60c0860182516114c7565b8160208201511660e0860152604081015191506080610100860152611934610140860183611888565b915060608101511515610120860152508091505092915050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061125b908301846118b4565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b6001600160a01b038681168252851660208201526040810184905260608101839052610120810161185a6080830184611988565b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680611a1c57611a1c6119ec565b92169190910492915050565b600060208284031215611a3a57600080fd5b5051919050565b6001600160a01b03868116825285166020820152604081018490526000610120611a6e6060840186611988565b806101008401526117ce818401856118b4565b600060a08284031215611a9357600080fd5b60405160a081016001600160401b0381118282101715611ab557611ab56116ef565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013560808201528091505092915050565b8082028115828204841417611b1557634e487b7160e01b600052601160045260246000fd5b92915050565b600082611b2a57611b2a6119ec565b500490565b600082516114bd818460208701611864565b600060208284031215611b5357600080fd5b8151610dcf81611512565b602081526000610dcf602083018461188856fea26469706673582212202419139220dc2672cfe897ecf1053edda5b3dd5cf9b0f98675391def047b126864736f6c63430008110033",
770
+ "deployedBytecode": "0x60806040526004361061004e5760003560e01c80630ad501961461005a57806314b85a4b1461009f5780632ef6d1c9146100bf578063af0b5331146100df578063cbcc90401461010757600080fd5b3661005557005b600080fd5b34801561006657600080fd5b5061007a6100753660046112b7565b610127565b6040805194855260208501939093529183015260608201526080015b60405180910390f35b3480156100ab57600080fd5b5061007a6100ba3660046112fe565b6101bf565b3480156100cb57600080fd5b5061007a6100da366004611343565b610261565b6100f26100ed36600461139d565b6102ef565b60408051928352602083019190915201610096565b34801561011357600080fd5b5061007a610122366004611419565b61040c565b600080600080610136866104b5565b90925090506101458583610667565b9094509250336101586020870187611474565b6001600160a01b031661016e6020890189611474565b6001600160a01b03167faf6dca616e79396f39fcb576a69ef8d3fb0c4caaf645e5d929ef3d6b08f65022896020013588886040516101ae93929190611491565b60405180910390a492959194509250565b6000806000806101ce866107dd565b90925090506101f8856101e460608901896114a7565b6101f2906020810190611474565b8461086e565b90945092503361020b6020870187611474565b6001600160a01b03166102216020890189611474565b6001600160a01b03167ff565eb0e0c861782c25cf31e93e390da6a56998e84c1548acbc928d29d7ee24a896020013588886040516101ae93929190611491565b600080600080610270866104b5565b909350915061027f858461097c565b9094509050336102926020870187611474565b6001600160a01b03166102a86020890189611474565b6001600160a01b03167f6a25562572697a334d713ccc48674406a31caf524663da2d775175665a55d9688960200135886040516101ae929190918252602082015260400190565b60008061031e60007f000000000000000000000000000000000000000000000000000000000000000034610a91565b6103687f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610b58565b604051636fde40a760e11b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063dfbc814e906103bc908a908a908a908a908a90600401611674565b60408051808303816000875af11580156103da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fe91906116ae565b909890975095505050505050565b60008060008061041b866107dd565b90935091506104458561043160608901896114a7565b61043f906020810190611474565b85610c1c565b9094509050336104586020870187611474565b6001600160a01b031661046e6020890189611474565b6001600160a01b03167fbf87379fee2f51a4dad77f8f8a1063ab5a619e4958dd9d362f5e79592acd4dd88960200135886040516101ae929190918252602082015260400190565b6000806104d46104c86020850185611474565b33308660200135610d38565b61050a6104e46020850185611474565b7f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663178d29d3306105476020870187611474565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015260208601356044820152600060648201526084015b60408051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c991906116ae565b90925090506105de60608401604085016116d2565b15610662576105f06020840184611474565b604051639262187b60e01b81523360048201526001600160a01b039190911690639262187b906024016000604051808303816000875af1158015610638573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106609190810190611735565b505b915091565b600080806106786020860186611474565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156106b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d991906117da565b50509050610707817f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663844384aa336107446020890189611474565b604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301526044820188905260208901356064830152880135608482015260a4015b60408051808303816000875af11580156107ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d191906116ae565b90969095509350505050565b6000806107f06104c86020850185611474565b6108006104e46020850185611474565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663690807ad3061083d6020870187611474565b602087013561084f60608901896114a7565b6040518563ffffffff1660e01b81526004016105879493929190611827565b6000806001600160a01b0384166108ce577f000000000000000000000000000000000000000000000000000000000000000093506108ce60007f000000000000000000000000000000000000000000000000000000000000000085610a91565b6108f8847f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663dfbc814e336109356020890189611474565b8860200135896040013561095c8a8a8d60600160208101906109579190611474565b610d59565b6040518663ffffffff1660e01b815260040161078f95949392919061194e565b6000808061098d6020860186611474565b6001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156109ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ee91906117da565b50509050610a1c817f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663409c7a8933610a596020890189611474565b878960200135610a718b6060018c604001358c610dd6565b6040518663ffffffff1660e01b815260040161078f9594939291906119b8565b6001600160a01b038316610af857816001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015610ada57600080fd5b505af1158015610aee573d6000803e3d6000fd5b5050505050505050565b604051632e1a7d4d60e01b8152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505b505050565b6001600160a01b038216610b6a575050565b610b7c60026001600160601b03611a02565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015610bd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf99190611a28565b1015610c1857610c0b82826000610eff565b610c188282600019610eff565b5050565b600080806001600160a01b038516610c315750825b610c5b857f0000000000000000000000000000000000000000000000000000000000000000610b58565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663015491d18233610c9960208b018b611474565b8a60200135610cb08c6060018d604001358c610dd6565b610cc98c8c8f6101000160208101906109579190611474565b6040518763ffffffff1660e01b8152600401610ce9959493929190611a41565b604080518083038185885af1158015610d06573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d2b91906116ae565b9097909650945050505050565b8015610d5357610d536001600160a01b038516848484611009565b50505050565b610dac6040805160c081018252600080825260208083018290528284018290526060808401839052608080850184905285519081018652838152918201839052938101849052928301529060a082015290565b6001600160a01b0380851660408301819052825260208201849052821660608201525b9392505050565b610e086040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b8360400135600003610e7f578335158015610e2857506000198460200135145b610e695760405162461bcd60e51b815260206004820152600d60248201526c696e76616c696420677565737360981b60448201526064015b60405180910390fd5b610e7836859003850185611a81565b9050610dcf565b6040805160a081019091528084610e97858835611af0565b610ea19190611b1b565b815260200184848760200135610eb79190611af0565b610ec19190611b1b565b815260200184610ed5856040890135611af0565b610edf9190611b1b565b815260200185606001358152602001856080013581525090509392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691610f5b9190611b2f565b6000604051808303816000865af19150503d8060008114610f98576040519150601f19603f3d011682016040523d82523d6000602084013e610f9d565b606091505b5091509150818015610fc7575080511580610fc7575080806020019051810190610fc79190611b41565b6110025760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b6044820152606401610e60565b5050505050565b604080516001600160a01b038581166024830152848116604483015260648083018590528351808403909101815260849092018352602080830180516001600160e01b03166323b872dd60e01b17905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610d53928792916000916110a191851690849061111e565b805190915015610b5357808060200190518101906110bf9190611b41565b610b535760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e60565b606061112d8484600085611135565b949350505050565b6060824710156111965760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610e60565b6001600160a01b0385163b6111ed5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e60565b600080866001600160a01b031685876040516112099190611b2f565b60006040518083038185875af1925050503d8060008114611246576040519150601f19603f3d011682016040523d82523d6000602084013e61124b565b606091505b509150915061125b828286611266565b979650505050505050565b60608315611275575081610dcf565b8251156112855782518084602001fd5b8160405162461bcd60e51b8152600401610e609190611b5e565b6000606082840312156112b157600080fd5b50919050565b60008060c083850312156112ca57600080fd5b6112d4848461129f565b91506112e3846060850161129f565b90509250929050565b6000608082840312156112b157600080fd5b60008060a0838503121561131157600080fd5b82356001600160401b0381111561132757600080fd5b611333858286016112ec565b9250506112e384602085016112ec565b60008082840361016081121561135857600080fd5b611362858561129f565b9250610100605f198201121561137757600080fd5b506060830190509250929050565b6001600160a01b038116811461139a57600080fd5b50565b600080600080600060a086880312156113b557600080fd5b85356113c081611385565b945060208601356113d081611385565b9350604086013592506060860135915060808601356001600160401b038111156113f957600080fd5b860160c0818903121561140b57600080fd5b809150509295509295909350565b60008082840361014081121561142e57600080fd5b83356001600160401b0381111561144457600080fd5b611450868287016112ec565b935050610120601f198201121561146657600080fd5b506020830190509250929050565b60006020828403121561148657600080fd5b8135610dcf81611385565b9283526020830191909152604082015260600190565b6000823560be198336030181126114bd57600080fd5b9190910192915050565b600481106114e557634e487b7160e01b600052602160045260246000fd5b9052565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b801515811461139a57600080fd5b803561152b81611512565b919050565b600081356004811061154157600080fd5b61154b84826114c7565b50602082013561155a81611385565b6001600160a01b03166020840152604082013536839003601e1901811261158057600080fd5b82016020810190356001600160401b0381111561159c57600080fd5b8036038213156115ab57600080fd5b608060408601526115c06080860182846114e9565b9150506115cf60608401611520565b8015156060860152509392505050565b600081356115ec81611385565b6001600160a01b0390811684526020838101359085015260408301359061161282611385565b908116604085015260608301359061162982611385565b908116606085015260808301359061164082611385565b16608084015260a082013536839003607e1901811261165e57600080fd5b60c060a085015261112d60c08501848301611530565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061125b908301846115df565b600080604083850312156116c157600080fd5b505080516020909101519092909150565b6000602082840312156116e457600080fd5b8135610dcf81611512565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561172d5761172d6116ef565b604052919050565b6000602080838503121561174857600080fd5b82516001600160401b038082111561175f57600080fd5b818501915085601f83011261177357600080fd5b815181811115611785576117856116ef565b8060051b9150611796848301611705565b81815291830184019184810190888411156117b057600080fd5b938501935b838510156117ce578451825293850193908501906117b5565b98975050505050505050565b6000806000606084860312156117ef57600080fd5b83516117fa81611385565b602085015190935061180b81611385565b604085015190925061181c81611385565b809150509250925092565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061185a908301846115df565b9695505050505050565b60005b8381101561187f578181015183820152602001611867565b50506000910152565b600081518084526118a0816020860160208601611864565b601f01601f19169290920160200192915050565b600060018060a01b038083511684526020830151602085015280604084015116604085015280606084015116606085015280608084015116608085015260a083015160c060a086015261190b60c0860182516114c7565b8160208201511660e0860152604081015191506080610100860152611934610140860183611888565b915060608101511515610120860152508091505092915050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a06080820181905260009061125b908301846118b4565b80518252602081015160208301526040810151604083015260608101516060830152608081015160808301525050565b6001600160a01b038681168252851660208201526040810184905260608101839052610120810161185a6080830184611988565b634e487b7160e01b600052601260045260246000fd5b60006001600160601b0383811680611a1c57611a1c6119ec565b92169190910492915050565b600060208284031215611a3a57600080fd5b5051919050565b6001600160a01b03868116825285166020820152604081018490526000610120611a6e6060840186611988565b806101008401526117ce818401856118b4565b600060a08284031215611a9357600080fd5b60405160a081016001600160401b0381118282101715611ab557611ab56116ef565b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013560808201528091505092915050565b8082028115828204841417611b1557634e487b7160e01b600052601160045260246000fd5b92915050565b600082611b2a57611b2a6119ec565b500490565b600082516114bd818460208701611864565b600060208284031215611b5357600080fd5b8151610dcf81611512565b602081526000610dcf602083018461188856fea26469706673582212202419139220dc2672cfe897ecf1053edda5b3dd5cf9b0f98675391def047b126864736f6c63430008110033",
771
+ "linkReferences": {},
772
+ "deployedLinkReferences": {}
773
+ }