@pendle/core-v2 4.5.2 → 4.6.0

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