@pendle/core-v2 4.5.0 → 4.5.1-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 (39) hide show
  1. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  3. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.json +1156 -34
  4. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  5. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +1183 -61
  6. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  7. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  8. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  9. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  10. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
  11. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  12. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +1158 -36
  13. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  14. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
  15. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  16. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
  17. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  18. package/contracts/interfaces/IPActionMiscV3.sol +92 -0
  19. package/contracts/router/ActionMiscV3.sol +150 -36
  20. package/contracts/router/ActionSwapYTV3.sol +0 -85
  21. package/contracts/router/base/ActionBase.sol +106 -1
  22. package/deployments/merkle-distribution/2024-04-25.json +14930 -0
  23. package/package.json +1 -1
  24. package/typechain-types/ActionMiscV3.ts +573 -16
  25. package/typechain-types/IPActionMiscV3.ts +573 -16
  26. package/typechain-types/IPAllActionV3.ts +480 -0
  27. package/typechain-types/ISwellSimpleStakingERC20.ts +289 -0
  28. package/typechain-types/PendleSwellRswETHStakingSY.ts +1325 -0
  29. package/typechain-types/PendleSwellStakingERC20SY.ts +1299 -0
  30. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
  31. package/typechain-types/factories/ActionMiscV3__factory.ts +1157 -35
  32. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
  33. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
  34. package/typechain-types/factories/IPActionMiscV3__factory.ts +1156 -34
  35. package/typechain-types/factories/IPAllActionV3__factory.ts +1183 -61
  36. package/typechain-types/factories/ISwellSimpleStakingERC20__factory.ts +226 -0
  37. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  38. package/typechain-types/factories/PendleSwellRswETHStakingSY__factory.ts +1106 -0
  39. package/typechain-types/factories/PendleSwellStakingERC20SY__factory.ts +1112 -0
@@ -350,29 +350,56 @@ const _abi = [
350
350
  {
351
351
  indexed: true,
352
352
  internalType: "address",
353
- name: "receiver",
353
+ name: "market",
354
354
  type: "address",
355
355
  },
356
356
  {
357
357
  indexed: true,
358
358
  internalType: "address",
359
- name: "YT",
359
+ name: "receiver",
360
360
  type: "address",
361
361
  },
362
362
  {
363
363
  indexed: false,
364
364
  internalType: "uint256",
365
- name: "netSyIn",
365
+ name: "netLpIn",
366
366
  type: "uint256",
367
367
  },
368
368
  {
369
+ components: [
370
+ {
371
+ internalType: "uint256",
372
+ name: "netPtFromRemove",
373
+ type: "uint256",
374
+ },
375
+ {
376
+ internalType: "uint256",
377
+ name: "netSyFromRemove",
378
+ type: "uint256",
379
+ },
380
+ {
381
+ internalType: "uint256",
382
+ name: "netPtRedeem",
383
+ type: "uint256",
384
+ },
385
+ {
386
+ internalType: "uint256",
387
+ name: "netSyFromRedeem",
388
+ type: "uint256",
389
+ },
390
+ {
391
+ internalType: "uint256",
392
+ name: "totalSyOut",
393
+ type: "uint256",
394
+ },
395
+ ],
369
396
  indexed: false,
370
- internalType: "uint256",
371
- name: "netPyOut",
372
- type: "uint256",
397
+ internalType: "struct IPActionMiscV3.ExitPostExpReturnParams",
398
+ name: "params",
399
+ type: "tuple",
373
400
  },
374
401
  ],
375
- name: "MintPyFromSy",
402
+ name: "ExitPostExpToSy",
376
403
  type: "event",
377
404
  },
378
405
  {
@@ -387,13 +414,13 @@ const _abi = [
387
414
  {
388
415
  indexed: true,
389
416
  internalType: "address",
390
- name: "tokenIn",
417
+ name: "market",
391
418
  type: "address",
392
419
  },
393
420
  {
394
421
  indexed: true,
395
422
  internalType: "address",
396
- name: "YT",
423
+ name: "token",
397
424
  type: "address",
398
425
  },
399
426
  {
@@ -405,23 +432,50 @@ const _abi = [
405
432
  {
406
433
  indexed: false,
407
434
  internalType: "uint256",
408
- name: "netTokenIn",
435
+ name: "netLpIn",
409
436
  type: "uint256",
410
437
  },
411
438
  {
412
439
  indexed: false,
413
440
  internalType: "uint256",
414
- name: "netPyOut",
441
+ name: "totalTokenOut",
415
442
  type: "uint256",
416
443
  },
417
444
  {
445
+ components: [
446
+ {
447
+ internalType: "uint256",
448
+ name: "netPtFromRemove",
449
+ type: "uint256",
450
+ },
451
+ {
452
+ internalType: "uint256",
453
+ name: "netSyFromRemove",
454
+ type: "uint256",
455
+ },
456
+ {
457
+ internalType: "uint256",
458
+ name: "netPtRedeem",
459
+ type: "uint256",
460
+ },
461
+ {
462
+ internalType: "uint256",
463
+ name: "netSyFromRedeem",
464
+ type: "uint256",
465
+ },
466
+ {
467
+ internalType: "uint256",
468
+ name: "totalSyOut",
469
+ type: "uint256",
470
+ },
471
+ ],
418
472
  indexed: false,
419
- internalType: "uint256",
420
- name: "netSyInterm",
421
- type: "uint256",
473
+ internalType: "struct IPActionMiscV3.ExitPostExpReturnParams",
474
+ name: "params",
475
+ type: "tuple",
422
476
  },
423
477
  ],
424
- name: "MintPyFromToken",
478
+ name: "ExitPostExpToToken",
425
479
  type: "event",
426
480
  },
427
481
  {
@@ -436,35 +490,76 @@ const _abi = [
436
490
  {
437
491
  indexed: true,
438
492
  internalType: "address",
439
- name: "tokenIn",
493
+ name: "market",
440
494
  type: "address",
441
495
  },
442
496
  {
443
497
  indexed: true,
444
498
  internalType: "address",
445
- name: "SY",
446
- type: "address",
447
- },
448
- {
449
- indexed: false,
450
- internalType: "address",
451
499
  name: "receiver",
452
500
  type: "address",
453
501
  },
454
502
  {
455
503
  indexed: false,
456
504
  internalType: "uint256",
457
- name: "netTokenIn",
505
+ name: "netLpToRemove",
458
506
  type: "uint256",
459
507
  },
460
508
  {
509
+ components: [
510
+ {
511
+ internalType: "uint256",
512
+ name: "netPtFromRemove",
513
+ type: "uint256",
514
+ },
515
+ {
516
+ internalType: "uint256",
517
+ name: "netSyFromRemove",
518
+ type: "uint256",
519
+ },
520
+ {
521
+ internalType: "uint256",
522
+ name: "netPyRedeem",
523
+ type: "uint256",
524
+ },
525
+ {
526
+ internalType: "uint256",
527
+ name: "netSyFromRedeem",
528
+ type: "uint256",
529
+ },
530
+ {
531
+ internalType: "uint256",
532
+ name: "netPtSwap",
533
+ type: "uint256",
534
+ },
535
+ {
536
+ internalType: "uint256",
537
+ name: "netYtSwap",
538
+ type: "uint256",
539
+ },
540
+ {
541
+ internalType: "uint256",
542
+ name: "netSyFromSwap",
543
+ type: "uint256",
544
+ },
545
+ {
546
+ internalType: "uint256",
547
+ name: "netSyFee",
548
+ type: "uint256",
549
+ },
550
+ {
551
+ internalType: "uint256",
552
+ name: "totalSyOut",
553
+ type: "uint256",
554
+ },
555
+ ],
461
556
  indexed: false,
462
- internalType: "uint256",
463
- name: "netSyOut",
464
- type: "uint256",
557
+ internalType: "struct IPActionMiscV3.ExitPreExpReturnParams",
558
+ name: "params",
559
+ type: "tuple",
465
560
  },
466
561
  ],
467
- name: "MintSyFromToken",
562
+ name: "ExitPreExpToSy",
468
563
  type: "event",
469
564
  },
470
565
  {
@@ -473,17 +568,94 @@ const _abi = [
473
568
  {
474
569
  indexed: true,
475
570
  internalType: "address",
476
- name: "previousOwner",
571
+ name: "caller",
477
572
  type: "address",
478
573
  },
479
574
  {
480
575
  indexed: true,
481
576
  internalType: "address",
482
- name: "newOwner",
577
+ name: "market",
578
+ type: "address",
579
+ },
580
+ {
581
+ indexed: true,
582
+ internalType: "address",
583
+ name: "token",
483
584
  type: "address",
484
585
  },
586
+ {
587
+ indexed: false,
588
+ internalType: "address",
589
+ name: "receiver",
590
+ type: "address",
591
+ },
592
+ {
593
+ indexed: false,
594
+ internalType: "uint256",
595
+ name: "netLpToRemove",
596
+ type: "uint256",
597
+ },
598
+ {
599
+ indexed: false,
600
+ internalType: "uint256",
601
+ name: "totalTokenOut",
602
+ type: "uint256",
603
+ },
604
+ {
605
+ components: [
606
+ {
607
+ internalType: "uint256",
608
+ name: "netPtFromRemove",
609
+ type: "uint256",
610
+ },
611
+ {
612
+ internalType: "uint256",
613
+ name: "netSyFromRemove",
614
+ type: "uint256",
615
+ },
616
+ {
617
+ internalType: "uint256",
618
+ name: "netPyRedeem",
619
+ type: "uint256",
620
+ },
621
+ {
622
+ internalType: "uint256",
623
+ name: "netSyFromRedeem",
624
+ type: "uint256",
625
+ },
626
+ {
627
+ internalType: "uint256",
628
+ name: "netPtSwap",
629
+ type: "uint256",
630
+ },
631
+ {
632
+ internalType: "uint256",
633
+ name: "netYtSwap",
634
+ type: "uint256",
635
+ },
636
+ {
637
+ internalType: "uint256",
638
+ name: "netSyFromSwap",
639
+ type: "uint256",
640
+ },
641
+ {
642
+ internalType: "uint256",
643
+ name: "netSyFee",
644
+ type: "uint256",
645
+ },
646
+ {
647
+ internalType: "uint256",
648
+ name: "totalSyOut",
649
+ type: "uint256",
650
+ },
651
+ ],
652
+ indexed: false,
653
+ internalType: "struct IPActionMiscV3.ExitPreExpReturnParams",
654
+ name: "params",
655
+ type: "tuple",
656
+ },
485
657
  ],
486
- name: "OwnershipTransferred",
658
+ name: "ExitPreExpToToken",
487
659
  type: "event",
488
660
  },
489
661
  {
@@ -510,17 +682,17 @@ const _abi = [
510
682
  {
511
683
  indexed: false,
512
684
  internalType: "uint256",
513
- name: "netPyIn",
685
+ name: "netSyIn",
514
686
  type: "uint256",
515
687
  },
516
688
  {
517
689
  indexed: false,
518
690
  internalType: "uint256",
519
- name: "netSyOut",
691
+ name: "netPyOut",
520
692
  type: "uint256",
521
693
  },
522
694
  ],
523
- name: "RedeemPyToSy",
695
+ name: "MintPyFromSy",
524
696
  type: "event",
525
697
  },
526
698
  {
@@ -535,7 +707,7 @@ const _abi = [
535
707
  {
536
708
  indexed: true,
537
709
  internalType: "address",
538
- name: "tokenOut",
710
+ name: "tokenIn",
539
711
  type: "address",
540
712
  },
541
713
  {
@@ -553,13 +725,13 @@ const _abi = [
553
725
  {
554
726
  indexed: false,
555
727
  internalType: "uint256",
556
- name: "netPyIn",
728
+ name: "netTokenIn",
557
729
  type: "uint256",
558
730
  },
559
731
  {
560
732
  indexed: false,
561
733
  internalType: "uint256",
562
- name: "netTokenOut",
734
+ name: "netPyOut",
563
735
  type: "uint256",
564
736
  },
565
737
  {
@@ -569,7 +741,7 @@ const _abi = [
569
741
  type: "uint256",
570
742
  },
571
743
  ],
572
- name: "RedeemPyToToken",
744
+ name: "MintPyFromToken",
573
745
  type: "event",
574
746
  },
575
747
  {
@@ -584,7 +756,7 @@ const _abi = [
584
756
  {
585
757
  indexed: true,
586
758
  internalType: "address",
587
- name: "tokenOut",
759
+ name: "tokenIn",
588
760
  type: "address",
589
761
  },
590
762
  {
@@ -602,17 +774,17 @@ const _abi = [
602
774
  {
603
775
  indexed: false,
604
776
  internalType: "uint256",
605
- name: "netSyIn",
777
+ name: "netTokenIn",
606
778
  type: "uint256",
607
779
  },
608
780
  {
609
781
  indexed: false,
610
782
  internalType: "uint256",
611
- name: "netTokenOut",
783
+ name: "netSyOut",
612
784
  type: "uint256",
613
785
  },
614
786
  ],
615
- name: "RedeemSyToToken",
787
+ name: "MintSyFromToken",
616
788
  type: "event",
617
789
  },
618
790
  {
@@ -621,13 +793,26 @@ const _abi = [
621
793
  {
622
794
  indexed: true,
623
795
  internalType: "address",
624
- name: "caller",
796
+ name: "previousOwner",
625
797
  type: "address",
626
798
  },
627
799
  {
628
800
  indexed: true,
629
801
  internalType: "address",
630
- name: "market",
802
+ name: "newOwner",
803
+ type: "address",
804
+ },
805
+ ],
806
+ name: "OwnershipTransferred",
807
+ type: "event",
808
+ },
809
+ {
810
+ anonymous: false,
811
+ inputs: [
812
+ {
813
+ indexed: true,
814
+ internalType: "address",
815
+ name: "caller",
631
816
  type: "address",
632
817
  },
633
818
  {
@@ -637,15 +822,15 @@ const _abi = [
637
822
  type: "address",
638
823
  },
639
824
  {
640
- indexed: false,
641
- internalType: "uint256",
642
- name: "netLpToRemove",
643
- type: "uint256",
825
+ indexed: true,
826
+ internalType: "address",
827
+ name: "YT",
828
+ type: "address",
644
829
  },
645
830
  {
646
831
  indexed: false,
647
832
  internalType: "uint256",
648
- name: "netPtOut",
833
+ name: "netPyIn",
649
834
  type: "uint256",
650
835
  },
651
836
  {
@@ -655,7 +840,7 @@ const _abi = [
655
840
  type: "uint256",
656
841
  },
657
842
  ],
658
- name: "RemoveLiquidityDualSyAndPt",
843
+ name: "RedeemPyToSy",
659
844
  type: "event",
660
845
  },
661
846
  {
@@ -670,13 +855,13 @@ const _abi = [
670
855
  {
671
856
  indexed: true,
672
857
  internalType: "address",
673
- name: "market",
858
+ name: "tokenOut",
674
859
  type: "address",
675
860
  },
676
861
  {
677
862
  indexed: true,
678
863
  internalType: "address",
679
- name: "tokenOut",
864
+ name: "YT",
680
865
  type: "address",
681
866
  },
682
867
  {
@@ -688,13 +873,7 @@ const _abi = [
688
873
  {
689
874
  indexed: false,
690
875
  internalType: "uint256",
691
- name: "netLpToRemove",
692
- type: "uint256",
693
- },
694
- {
695
- indexed: false,
696
- internalType: "uint256",
697
- name: "netPtOut",
876
+ name: "netPyIn",
698
877
  type: "uint256",
699
878
  },
700
879
  {
@@ -710,7 +889,7 @@ const _abi = [
710
889
  type: "uint256",
711
890
  },
712
891
  ],
713
- name: "RemoveLiquidityDualTokenAndPt",
892
+ name: "RedeemPyToToken",
714
893
  type: "event",
715
894
  },
716
895
  {
@@ -725,13 +904,154 @@ const _abi = [
725
904
  {
726
905
  indexed: true,
727
906
  internalType: "address",
728
- name: "market",
907
+ name: "tokenOut",
729
908
  type: "address",
730
909
  },
731
910
  {
732
911
  indexed: true,
733
912
  internalType: "address",
734
- name: "receiver",
913
+ name: "SY",
914
+ type: "address",
915
+ },
916
+ {
917
+ indexed: false,
918
+ internalType: "address",
919
+ name: "receiver",
920
+ type: "address",
921
+ },
922
+ {
923
+ indexed: false,
924
+ internalType: "uint256",
925
+ name: "netSyIn",
926
+ type: "uint256",
927
+ },
928
+ {
929
+ indexed: false,
930
+ internalType: "uint256",
931
+ name: "netTokenOut",
932
+ type: "uint256",
933
+ },
934
+ ],
935
+ name: "RedeemSyToToken",
936
+ type: "event",
937
+ },
938
+ {
939
+ anonymous: false,
940
+ inputs: [
941
+ {
942
+ indexed: true,
943
+ internalType: "address",
944
+ name: "caller",
945
+ type: "address",
946
+ },
947
+ {
948
+ indexed: true,
949
+ internalType: "address",
950
+ name: "market",
951
+ type: "address",
952
+ },
953
+ {
954
+ indexed: true,
955
+ internalType: "address",
956
+ name: "receiver",
957
+ type: "address",
958
+ },
959
+ {
960
+ indexed: false,
961
+ internalType: "uint256",
962
+ name: "netLpToRemove",
963
+ type: "uint256",
964
+ },
965
+ {
966
+ indexed: false,
967
+ internalType: "uint256",
968
+ name: "netPtOut",
969
+ type: "uint256",
970
+ },
971
+ {
972
+ indexed: false,
973
+ internalType: "uint256",
974
+ name: "netSyOut",
975
+ type: "uint256",
976
+ },
977
+ ],
978
+ name: "RemoveLiquidityDualSyAndPt",
979
+ type: "event",
980
+ },
981
+ {
982
+ anonymous: false,
983
+ inputs: [
984
+ {
985
+ indexed: true,
986
+ internalType: "address",
987
+ name: "caller",
988
+ type: "address",
989
+ },
990
+ {
991
+ indexed: true,
992
+ internalType: "address",
993
+ name: "market",
994
+ type: "address",
995
+ },
996
+ {
997
+ indexed: true,
998
+ internalType: "address",
999
+ name: "tokenOut",
1000
+ type: "address",
1001
+ },
1002
+ {
1003
+ indexed: false,
1004
+ internalType: "address",
1005
+ name: "receiver",
1006
+ type: "address",
1007
+ },
1008
+ {
1009
+ indexed: false,
1010
+ internalType: "uint256",
1011
+ name: "netLpToRemove",
1012
+ type: "uint256",
1013
+ },
1014
+ {
1015
+ indexed: false,
1016
+ internalType: "uint256",
1017
+ name: "netPtOut",
1018
+ type: "uint256",
1019
+ },
1020
+ {
1021
+ indexed: false,
1022
+ internalType: "uint256",
1023
+ name: "netTokenOut",
1024
+ type: "uint256",
1025
+ },
1026
+ {
1027
+ indexed: false,
1028
+ internalType: "uint256",
1029
+ name: "netSyInterm",
1030
+ type: "uint256",
1031
+ },
1032
+ ],
1033
+ name: "RemoveLiquidityDualTokenAndPt",
1034
+ type: "event",
1035
+ },
1036
+ {
1037
+ anonymous: false,
1038
+ inputs: [
1039
+ {
1040
+ indexed: true,
1041
+ internalType: "address",
1042
+ name: "caller",
1043
+ type: "address",
1044
+ },
1045
+ {
1046
+ indexed: true,
1047
+ internalType: "address",
1048
+ name: "market",
1049
+ type: "address",
1050
+ },
1051
+ {
1052
+ indexed: true,
1053
+ internalType: "address",
1054
+ name: "receiver",
735
1055
  type: "address",
736
1056
  },
737
1057
  {
@@ -2220,6 +2540,808 @@ const _abi = [
2220
2540
  stateMutability: "nonpayable",
2221
2541
  type: "function",
2222
2542
  },
2543
+ {
2544
+ inputs: [
2545
+ {
2546
+ internalType: "address",
2547
+ name: "receiver",
2548
+ type: "address",
2549
+ },
2550
+ {
2551
+ internalType: "address",
2552
+ name: "market",
2553
+ type: "address",
2554
+ },
2555
+ {
2556
+ internalType: "uint256",
2557
+ name: "netPtIn",
2558
+ type: "uint256",
2559
+ },
2560
+ {
2561
+ internalType: "uint256",
2562
+ name: "netLpIn",
2563
+ type: "uint256",
2564
+ },
2565
+ {
2566
+ internalType: "uint256",
2567
+ name: "minSyOut",
2568
+ type: "uint256",
2569
+ },
2570
+ ],
2571
+ name: "exitPostExpToSy",
2572
+ outputs: [
2573
+ {
2574
+ components: [
2575
+ {
2576
+ internalType: "uint256",
2577
+ name: "netPtFromRemove",
2578
+ type: "uint256",
2579
+ },
2580
+ {
2581
+ internalType: "uint256",
2582
+ name: "netSyFromRemove",
2583
+ type: "uint256",
2584
+ },
2585
+ {
2586
+ internalType: "uint256",
2587
+ name: "netPtRedeem",
2588
+ type: "uint256",
2589
+ },
2590
+ {
2591
+ internalType: "uint256",
2592
+ name: "netSyFromRedeem",
2593
+ type: "uint256",
2594
+ },
2595
+ {
2596
+ internalType: "uint256",
2597
+ name: "totalSyOut",
2598
+ type: "uint256",
2599
+ },
2600
+ ],
2601
+ internalType: "struct IPActionMiscV3.ExitPostExpReturnParams",
2602
+ name: "params",
2603
+ type: "tuple",
2604
+ },
2605
+ ],
2606
+ stateMutability: "nonpayable",
2607
+ type: "function",
2608
+ },
2609
+ {
2610
+ inputs: [
2611
+ {
2612
+ internalType: "address",
2613
+ name: "receiver",
2614
+ type: "address",
2615
+ },
2616
+ {
2617
+ internalType: "address",
2618
+ name: "market",
2619
+ type: "address",
2620
+ },
2621
+ {
2622
+ internalType: "uint256",
2623
+ name: "netPtIn",
2624
+ type: "uint256",
2625
+ },
2626
+ {
2627
+ internalType: "uint256",
2628
+ name: "netLpIn",
2629
+ type: "uint256",
2630
+ },
2631
+ {
2632
+ components: [
2633
+ {
2634
+ internalType: "address",
2635
+ name: "tokenOut",
2636
+ type: "address",
2637
+ },
2638
+ {
2639
+ internalType: "uint256",
2640
+ name: "minTokenOut",
2641
+ type: "uint256",
2642
+ },
2643
+ {
2644
+ internalType: "address",
2645
+ name: "tokenRedeemSy",
2646
+ type: "address",
2647
+ },
2648
+ {
2649
+ internalType: "address",
2650
+ name: "pendleSwap",
2651
+ type: "address",
2652
+ },
2653
+ {
2654
+ components: [
2655
+ {
2656
+ internalType: "enum SwapType",
2657
+ name: "swapType",
2658
+ type: "uint8",
2659
+ },
2660
+ {
2661
+ internalType: "address",
2662
+ name: "extRouter",
2663
+ type: "address",
2664
+ },
2665
+ {
2666
+ internalType: "bytes",
2667
+ name: "extCalldata",
2668
+ type: "bytes",
2669
+ },
2670
+ {
2671
+ internalType: "bool",
2672
+ name: "needScale",
2673
+ type: "bool",
2674
+ },
2675
+ ],
2676
+ internalType: "struct SwapData",
2677
+ name: "swapData",
2678
+ type: "tuple",
2679
+ },
2680
+ ],
2681
+ internalType: "struct TokenOutput",
2682
+ name: "output",
2683
+ type: "tuple",
2684
+ },
2685
+ ],
2686
+ name: "exitPostExpToToken",
2687
+ outputs: [
2688
+ {
2689
+ internalType: "uint256",
2690
+ name: "netTokenOut",
2691
+ type: "uint256",
2692
+ },
2693
+ {
2694
+ components: [
2695
+ {
2696
+ internalType: "uint256",
2697
+ name: "netPtFromRemove",
2698
+ type: "uint256",
2699
+ },
2700
+ {
2701
+ internalType: "uint256",
2702
+ name: "netSyFromRemove",
2703
+ type: "uint256",
2704
+ },
2705
+ {
2706
+ internalType: "uint256",
2707
+ name: "netPtRedeem",
2708
+ type: "uint256",
2709
+ },
2710
+ {
2711
+ internalType: "uint256",
2712
+ name: "netSyFromRedeem",
2713
+ type: "uint256",
2714
+ },
2715
+ {
2716
+ internalType: "uint256",
2717
+ name: "totalSyOut",
2718
+ type: "uint256",
2719
+ },
2720
+ ],
2721
+ internalType: "struct IPActionMiscV3.ExitPostExpReturnParams",
2722
+ name: "params",
2723
+ type: "tuple",
2724
+ },
2725
+ ],
2726
+ stateMutability: "nonpayable",
2727
+ type: "function",
2728
+ },
2729
+ {
2730
+ inputs: [
2731
+ {
2732
+ internalType: "address",
2733
+ name: "receiver",
2734
+ type: "address",
2735
+ },
2736
+ {
2737
+ internalType: "address",
2738
+ name: "market",
2739
+ type: "address",
2740
+ },
2741
+ {
2742
+ internalType: "uint256",
2743
+ name: "netPtIn",
2744
+ type: "uint256",
2745
+ },
2746
+ {
2747
+ internalType: "uint256",
2748
+ name: "netYtIn",
2749
+ type: "uint256",
2750
+ },
2751
+ {
2752
+ internalType: "uint256",
2753
+ name: "netLpIn",
2754
+ type: "uint256",
2755
+ },
2756
+ {
2757
+ internalType: "uint256",
2758
+ name: "minSyOut",
2759
+ type: "uint256",
2760
+ },
2761
+ {
2762
+ components: [
2763
+ {
2764
+ internalType: "address",
2765
+ name: "limitRouter",
2766
+ type: "address",
2767
+ },
2768
+ {
2769
+ internalType: "uint256",
2770
+ name: "epsSkipMarket",
2771
+ type: "uint256",
2772
+ },
2773
+ {
2774
+ components: [
2775
+ {
2776
+ components: [
2777
+ {
2778
+ internalType: "uint256",
2779
+ name: "salt",
2780
+ type: "uint256",
2781
+ },
2782
+ {
2783
+ internalType: "uint256",
2784
+ name: "expiry",
2785
+ type: "uint256",
2786
+ },
2787
+ {
2788
+ internalType: "uint256",
2789
+ name: "nonce",
2790
+ type: "uint256",
2791
+ },
2792
+ {
2793
+ internalType: "enum IPLimitOrderType.OrderType",
2794
+ name: "orderType",
2795
+ type: "uint8",
2796
+ },
2797
+ {
2798
+ internalType: "address",
2799
+ name: "token",
2800
+ type: "address",
2801
+ },
2802
+ {
2803
+ internalType: "address",
2804
+ name: "YT",
2805
+ type: "address",
2806
+ },
2807
+ {
2808
+ internalType: "address",
2809
+ name: "maker",
2810
+ type: "address",
2811
+ },
2812
+ {
2813
+ internalType: "address",
2814
+ name: "receiver",
2815
+ type: "address",
2816
+ },
2817
+ {
2818
+ internalType: "uint256",
2819
+ name: "makingAmount",
2820
+ type: "uint256",
2821
+ },
2822
+ {
2823
+ internalType: "uint256",
2824
+ name: "lnImpliedRate",
2825
+ type: "uint256",
2826
+ },
2827
+ {
2828
+ internalType: "uint256",
2829
+ name: "failSafeRate",
2830
+ type: "uint256",
2831
+ },
2832
+ {
2833
+ internalType: "bytes",
2834
+ name: "permit",
2835
+ type: "bytes",
2836
+ },
2837
+ ],
2838
+ internalType: "struct Order",
2839
+ name: "order",
2840
+ type: "tuple",
2841
+ },
2842
+ {
2843
+ internalType: "bytes",
2844
+ name: "signature",
2845
+ type: "bytes",
2846
+ },
2847
+ {
2848
+ internalType: "uint256",
2849
+ name: "makingAmount",
2850
+ type: "uint256",
2851
+ },
2852
+ ],
2853
+ internalType: "struct FillOrderParams[]",
2854
+ name: "normalFills",
2855
+ type: "tuple[]",
2856
+ },
2857
+ {
2858
+ components: [
2859
+ {
2860
+ components: [
2861
+ {
2862
+ internalType: "uint256",
2863
+ name: "salt",
2864
+ type: "uint256",
2865
+ },
2866
+ {
2867
+ internalType: "uint256",
2868
+ name: "expiry",
2869
+ type: "uint256",
2870
+ },
2871
+ {
2872
+ internalType: "uint256",
2873
+ name: "nonce",
2874
+ type: "uint256",
2875
+ },
2876
+ {
2877
+ internalType: "enum IPLimitOrderType.OrderType",
2878
+ name: "orderType",
2879
+ type: "uint8",
2880
+ },
2881
+ {
2882
+ internalType: "address",
2883
+ name: "token",
2884
+ type: "address",
2885
+ },
2886
+ {
2887
+ internalType: "address",
2888
+ name: "YT",
2889
+ type: "address",
2890
+ },
2891
+ {
2892
+ internalType: "address",
2893
+ name: "maker",
2894
+ type: "address",
2895
+ },
2896
+ {
2897
+ internalType: "address",
2898
+ name: "receiver",
2899
+ type: "address",
2900
+ },
2901
+ {
2902
+ internalType: "uint256",
2903
+ name: "makingAmount",
2904
+ type: "uint256",
2905
+ },
2906
+ {
2907
+ internalType: "uint256",
2908
+ name: "lnImpliedRate",
2909
+ type: "uint256",
2910
+ },
2911
+ {
2912
+ internalType: "uint256",
2913
+ name: "failSafeRate",
2914
+ type: "uint256",
2915
+ },
2916
+ {
2917
+ internalType: "bytes",
2918
+ name: "permit",
2919
+ type: "bytes",
2920
+ },
2921
+ ],
2922
+ internalType: "struct Order",
2923
+ name: "order",
2924
+ type: "tuple",
2925
+ },
2926
+ {
2927
+ internalType: "bytes",
2928
+ name: "signature",
2929
+ type: "bytes",
2930
+ },
2931
+ {
2932
+ internalType: "uint256",
2933
+ name: "makingAmount",
2934
+ type: "uint256",
2935
+ },
2936
+ ],
2937
+ internalType: "struct FillOrderParams[]",
2938
+ name: "flashFills",
2939
+ type: "tuple[]",
2940
+ },
2941
+ {
2942
+ internalType: "bytes",
2943
+ name: "optData",
2944
+ type: "bytes",
2945
+ },
2946
+ ],
2947
+ internalType: "struct LimitOrderData",
2948
+ name: "limit",
2949
+ type: "tuple",
2950
+ },
2951
+ ],
2952
+ name: "exitPreExpToSy",
2953
+ outputs: [
2954
+ {
2955
+ components: [
2956
+ {
2957
+ internalType: "uint256",
2958
+ name: "netPtFromRemove",
2959
+ type: "uint256",
2960
+ },
2961
+ {
2962
+ internalType: "uint256",
2963
+ name: "netSyFromRemove",
2964
+ type: "uint256",
2965
+ },
2966
+ {
2967
+ internalType: "uint256",
2968
+ name: "netPyRedeem",
2969
+ type: "uint256",
2970
+ },
2971
+ {
2972
+ internalType: "uint256",
2973
+ name: "netSyFromRedeem",
2974
+ type: "uint256",
2975
+ },
2976
+ {
2977
+ internalType: "uint256",
2978
+ name: "netPtSwap",
2979
+ type: "uint256",
2980
+ },
2981
+ {
2982
+ internalType: "uint256",
2983
+ name: "netYtSwap",
2984
+ type: "uint256",
2985
+ },
2986
+ {
2987
+ internalType: "uint256",
2988
+ name: "netSyFromSwap",
2989
+ type: "uint256",
2990
+ },
2991
+ {
2992
+ internalType: "uint256",
2993
+ name: "netSyFee",
2994
+ type: "uint256",
2995
+ },
2996
+ {
2997
+ internalType: "uint256",
2998
+ name: "totalSyOut",
2999
+ type: "uint256",
3000
+ },
3001
+ ],
3002
+ internalType: "struct IPActionMiscV3.ExitPreExpReturnParams",
3003
+ name: "params",
3004
+ type: "tuple",
3005
+ },
3006
+ ],
3007
+ stateMutability: "nonpayable",
3008
+ type: "function",
3009
+ },
3010
+ {
3011
+ inputs: [
3012
+ {
3013
+ internalType: "address",
3014
+ name: "receiver",
3015
+ type: "address",
3016
+ },
3017
+ {
3018
+ internalType: "address",
3019
+ name: "market",
3020
+ type: "address",
3021
+ },
3022
+ {
3023
+ internalType: "uint256",
3024
+ name: "netPtIn",
3025
+ type: "uint256",
3026
+ },
3027
+ {
3028
+ internalType: "uint256",
3029
+ name: "netYtIn",
3030
+ type: "uint256",
3031
+ },
3032
+ {
3033
+ internalType: "uint256",
3034
+ name: "netLpIn",
3035
+ type: "uint256",
3036
+ },
3037
+ {
3038
+ components: [
3039
+ {
3040
+ internalType: "address",
3041
+ name: "tokenOut",
3042
+ type: "address",
3043
+ },
3044
+ {
3045
+ internalType: "uint256",
3046
+ name: "minTokenOut",
3047
+ type: "uint256",
3048
+ },
3049
+ {
3050
+ internalType: "address",
3051
+ name: "tokenRedeemSy",
3052
+ type: "address",
3053
+ },
3054
+ {
3055
+ internalType: "address",
3056
+ name: "pendleSwap",
3057
+ type: "address",
3058
+ },
3059
+ {
3060
+ components: [
3061
+ {
3062
+ internalType: "enum SwapType",
3063
+ name: "swapType",
3064
+ type: "uint8",
3065
+ },
3066
+ {
3067
+ internalType: "address",
3068
+ name: "extRouter",
3069
+ type: "address",
3070
+ },
3071
+ {
3072
+ internalType: "bytes",
3073
+ name: "extCalldata",
3074
+ type: "bytes",
3075
+ },
3076
+ {
3077
+ internalType: "bool",
3078
+ name: "needScale",
3079
+ type: "bool",
3080
+ },
3081
+ ],
3082
+ internalType: "struct SwapData",
3083
+ name: "swapData",
3084
+ type: "tuple",
3085
+ },
3086
+ ],
3087
+ internalType: "struct TokenOutput",
3088
+ name: "output",
3089
+ type: "tuple",
3090
+ },
3091
+ {
3092
+ components: [
3093
+ {
3094
+ internalType: "address",
3095
+ name: "limitRouter",
3096
+ type: "address",
3097
+ },
3098
+ {
3099
+ internalType: "uint256",
3100
+ name: "epsSkipMarket",
3101
+ type: "uint256",
3102
+ },
3103
+ {
3104
+ components: [
3105
+ {
3106
+ components: [
3107
+ {
3108
+ internalType: "uint256",
3109
+ name: "salt",
3110
+ type: "uint256",
3111
+ },
3112
+ {
3113
+ internalType: "uint256",
3114
+ name: "expiry",
3115
+ type: "uint256",
3116
+ },
3117
+ {
3118
+ internalType: "uint256",
3119
+ name: "nonce",
3120
+ type: "uint256",
3121
+ },
3122
+ {
3123
+ internalType: "enum IPLimitOrderType.OrderType",
3124
+ name: "orderType",
3125
+ type: "uint8",
3126
+ },
3127
+ {
3128
+ internalType: "address",
3129
+ name: "token",
3130
+ type: "address",
3131
+ },
3132
+ {
3133
+ internalType: "address",
3134
+ name: "YT",
3135
+ type: "address",
3136
+ },
3137
+ {
3138
+ internalType: "address",
3139
+ name: "maker",
3140
+ type: "address",
3141
+ },
3142
+ {
3143
+ internalType: "address",
3144
+ name: "receiver",
3145
+ type: "address",
3146
+ },
3147
+ {
3148
+ internalType: "uint256",
3149
+ name: "makingAmount",
3150
+ type: "uint256",
3151
+ },
3152
+ {
3153
+ internalType: "uint256",
3154
+ name: "lnImpliedRate",
3155
+ type: "uint256",
3156
+ },
3157
+ {
3158
+ internalType: "uint256",
3159
+ name: "failSafeRate",
3160
+ type: "uint256",
3161
+ },
3162
+ {
3163
+ internalType: "bytes",
3164
+ name: "permit",
3165
+ type: "bytes",
3166
+ },
3167
+ ],
3168
+ internalType: "struct Order",
3169
+ name: "order",
3170
+ type: "tuple",
3171
+ },
3172
+ {
3173
+ internalType: "bytes",
3174
+ name: "signature",
3175
+ type: "bytes",
3176
+ },
3177
+ {
3178
+ internalType: "uint256",
3179
+ name: "makingAmount",
3180
+ type: "uint256",
3181
+ },
3182
+ ],
3183
+ internalType: "struct FillOrderParams[]",
3184
+ name: "normalFills",
3185
+ type: "tuple[]",
3186
+ },
3187
+ {
3188
+ components: [
3189
+ {
3190
+ components: [
3191
+ {
3192
+ internalType: "uint256",
3193
+ name: "salt",
3194
+ type: "uint256",
3195
+ },
3196
+ {
3197
+ internalType: "uint256",
3198
+ name: "expiry",
3199
+ type: "uint256",
3200
+ },
3201
+ {
3202
+ internalType: "uint256",
3203
+ name: "nonce",
3204
+ type: "uint256",
3205
+ },
3206
+ {
3207
+ internalType: "enum IPLimitOrderType.OrderType",
3208
+ name: "orderType",
3209
+ type: "uint8",
3210
+ },
3211
+ {
3212
+ internalType: "address",
3213
+ name: "token",
3214
+ type: "address",
3215
+ },
3216
+ {
3217
+ internalType: "address",
3218
+ name: "YT",
3219
+ type: "address",
3220
+ },
3221
+ {
3222
+ internalType: "address",
3223
+ name: "maker",
3224
+ type: "address",
3225
+ },
3226
+ {
3227
+ internalType: "address",
3228
+ name: "receiver",
3229
+ type: "address",
3230
+ },
3231
+ {
3232
+ internalType: "uint256",
3233
+ name: "makingAmount",
3234
+ type: "uint256",
3235
+ },
3236
+ {
3237
+ internalType: "uint256",
3238
+ name: "lnImpliedRate",
3239
+ type: "uint256",
3240
+ },
3241
+ {
3242
+ internalType: "uint256",
3243
+ name: "failSafeRate",
3244
+ type: "uint256",
3245
+ },
3246
+ {
3247
+ internalType: "bytes",
3248
+ name: "permit",
3249
+ type: "bytes",
3250
+ },
3251
+ ],
3252
+ internalType: "struct Order",
3253
+ name: "order",
3254
+ type: "tuple",
3255
+ },
3256
+ {
3257
+ internalType: "bytes",
3258
+ name: "signature",
3259
+ type: "bytes",
3260
+ },
3261
+ {
3262
+ internalType: "uint256",
3263
+ name: "makingAmount",
3264
+ type: "uint256",
3265
+ },
3266
+ ],
3267
+ internalType: "struct FillOrderParams[]",
3268
+ name: "flashFills",
3269
+ type: "tuple[]",
3270
+ },
3271
+ {
3272
+ internalType: "bytes",
3273
+ name: "optData",
3274
+ type: "bytes",
3275
+ },
3276
+ ],
3277
+ internalType: "struct LimitOrderData",
3278
+ name: "limit",
3279
+ type: "tuple",
3280
+ },
3281
+ ],
3282
+ name: "exitPreExpToToken",
3283
+ outputs: [
3284
+ {
3285
+ internalType: "uint256",
3286
+ name: "netTokenOut",
3287
+ type: "uint256",
3288
+ },
3289
+ {
3290
+ components: [
3291
+ {
3292
+ internalType: "uint256",
3293
+ name: "netPtFromRemove",
3294
+ type: "uint256",
3295
+ },
3296
+ {
3297
+ internalType: "uint256",
3298
+ name: "netSyFromRemove",
3299
+ type: "uint256",
3300
+ },
3301
+ {
3302
+ internalType: "uint256",
3303
+ name: "netPyRedeem",
3304
+ type: "uint256",
3305
+ },
3306
+ {
3307
+ internalType: "uint256",
3308
+ name: "netSyFromRedeem",
3309
+ type: "uint256",
3310
+ },
3311
+ {
3312
+ internalType: "uint256",
3313
+ name: "netPtSwap",
3314
+ type: "uint256",
3315
+ },
3316
+ {
3317
+ internalType: "uint256",
3318
+ name: "netYtSwap",
3319
+ type: "uint256",
3320
+ },
3321
+ {
3322
+ internalType: "uint256",
3323
+ name: "netSyFromSwap",
3324
+ type: "uint256",
3325
+ },
3326
+ {
3327
+ internalType: "uint256",
3328
+ name: "netSyFee",
3329
+ type: "uint256",
3330
+ },
3331
+ {
3332
+ internalType: "uint256",
3333
+ name: "totalSyOut",
3334
+ type: "uint256",
3335
+ },
3336
+ ],
3337
+ internalType: "struct IPActionMiscV3.ExitPreExpReturnParams",
3338
+ name: "params",
3339
+ type: "tuple",
3340
+ },
3341
+ ],
3342
+ stateMutability: "nonpayable",
3343
+ type: "function",
3344
+ },
2223
3345
  {
2224
3346
  inputs: [
2225
3347
  {