@pendle/core-v2 5.3.1 → 5.4.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 (244) hide show
  1. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.json +0 -37
  3. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  4. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  5. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.json +0 -115
  6. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.json +0 -37
  8. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  9. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.json +0 -37
  10. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  11. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.json +0 -37
  12. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  13. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.json +0 -37
  14. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  15. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.json +0 -179
  16. package/build/artifacts/contracts/interfaces/IPActionVePendleStatic.sol/IPActionVePendleStatic.dbg.json +1 -1
  17. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  18. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +0 -257
  19. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  20. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  21. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  22. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  23. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  24. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.json +0 -37
  25. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  26. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.json +0 -37
  27. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  28. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +0 -37
  29. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  30. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  31. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  32. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  33. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  34. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  35. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  36. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  37. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  38. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  39. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  40. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  41. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  42. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -39
  43. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  44. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  45. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +4 -0
  46. package/build/artifacts/contracts/{router/swap-aggregator/kyberswap/l1-contracts/ScalingDataLib.sol/ScalingDataLib.json → offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json} +4 -4
  47. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +4 -0
  48. package/build/artifacts/contracts/{router/swap-aggregator/kyberswap/l2-contracts/BytesHelper.sol/BytesHelper.json → offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json} +4 -4
  49. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  50. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  51. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -39
  52. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  53. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -117
  54. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
  55. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -39
  56. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  57. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -39
  58. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  59. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -39
  60. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  61. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -181
  62. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  63. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
  64. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  65. package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
  66. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  67. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  68. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
  69. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  70. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
  71. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  72. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
  73. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  74. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
  75. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +4 -0
  76. package/build/artifacts/contracts/router/math/{MarketApproxLib.sol/MarketApproxPtInLib.json → MarketApproxLibV2.sol/MarketApproxPtInLibV2.json} +4 -4
  77. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +4 -0
  78. package/build/artifacts/contracts/router/math/{MarketApproxLib.sol/MarketApproxPtOutLib.json → MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json} +4 -4
  79. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  80. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  81. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  82. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  83. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  84. package/contracts/interfaces/IPActionAddRemoveLiqV3.sol +1 -1
  85. package/contracts/interfaces/IPActionMarketAuxStatic.sol +2 -1
  86. package/contracts/interfaces/IPActionMiscV3.sol +1 -7
  87. package/contracts/interfaces/IPActionStorageStatic.sol +1 -1
  88. package/contracts/interfaces/IPActionSwapPTV3.sol +1 -1
  89. package/contracts/interfaces/IPActionSwapYTV3.sol +1 -17
  90. package/contracts/interfaces/IPActionVePendleStatic.sol +1 -0
  91. package/contracts/interfaces/IPAllEventsV3.sol +0 -8
  92. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +2 -2
  93. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +8 -7
  94. package/contracts/{router/math/MarketApproxLib.sol → offchain-helpers/router-static/base/MarketApproxLibV1.sol} +13 -13
  95. package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +1 -1
  96. package/contracts/router/ActionAddRemoveLiqV3.sol +4 -4
  97. package/contracts/router/ActionMiscV3.sol +0 -14
  98. package/contracts/router/ActionSwapYTV3.sol +2 -65
  99. package/contracts/router/base/ActionBase.sol +5 -6
  100. package/contracts/router/math/MarketApproxLibV2.sol +479 -0
  101. package/contracts/router/swap-aggregator/IPSwapAggregator.sol +8 -1
  102. package/contracts/router/swap-aggregator/PendleSwap.sol +0 -2
  103. package/deployments/1-core.json +5 -5
  104. package/package.json +1 -1
  105. package/typechain-types/ActionAddRemoveLiqV3.ts +2000 -0
  106. package/typechain-types/ActionInfoStatic.ts +310 -0
  107. package/typechain-types/ActionMarketAuxStatic.ts +903 -0
  108. package/typechain-types/ActionMarketCoreStatic.ts +1974 -0
  109. package/typechain-types/ActionMintRedeemStatic.ts +435 -0
  110. package/typechain-types/ActionMiscV3.ts +2213 -0
  111. package/typechain-types/ActionSimple.ts +1544 -0
  112. package/typechain-types/ActionStorageStatic.ts +1345 -0
  113. package/typechain-types/ActionStorageV4.ts +1270 -0
  114. package/typechain-types/ActionSwapPTV3.ts +1507 -0
  115. package/typechain-types/ActionSwapYTV3.ts +1507 -0
  116. package/typechain-types/ActionVePendleStatic.ts +113 -0
  117. package/typechain-types/IKyberScalingHelper.ts +108 -0
  118. package/typechain-types/IOdosRouterV2.ts +147 -0
  119. package/typechain-types/IPActionAddRemoveLiqV3.ts +2000 -0
  120. package/typechain-types/IPActionAddRemoveLiqV3Events.ts +499 -0
  121. package/typechain-types/IPActionMarketAuxStatic.ts +859 -0
  122. package/typechain-types/IPActionMiscV3.ts +2213 -0
  123. package/typechain-types/IPActionMiscV3Events.ts +463 -0
  124. package/typechain-types/IPActionSimple.ts +1544 -0
  125. package/typechain-types/IPActionStorageEvents.ts +97 -0
  126. package/typechain-types/IPActionStorageStatic.ts +1268 -0
  127. package/typechain-types/IPActionStorageV4.ts +1270 -0
  128. package/typechain-types/IPActionSwapPTV3.ts +1507 -0
  129. package/typechain-types/IPActionSwapPTV3Events.ts +125 -0
  130. package/typechain-types/IPActionSwapYTV3.ts +1507 -0
  131. package/typechain-types/IPActionSwapYTV3Events.ts +125 -0
  132. package/typechain-types/IPActionVePendleStatic.ts +113 -0
  133. package/typechain-types/IPAllActionV3.ts +4210 -0
  134. package/typechain-types/IPAllEventsV3.ts +1080 -0
  135. package/typechain-types/IPRouterStatic.ts +4633 -0
  136. package/typechain-types/IPSwapAggregator.ts +187 -0
  137. package/typechain-types/PendlePoolDeployHelper.ts +342 -0
  138. package/typechain-types/PendleRouterStatic.ts +57 -0
  139. package/typechain-types/PendleRouterV4.ts +57 -0
  140. package/typechain-types/PendleSwap.ts +208 -0
  141. package/typechain-types/Reflector.ts +95 -0
  142. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +3533 -0
  143. package/typechain-types/factories/ActionInfoStatic__factory.ts +360 -0
  144. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +780 -0
  145. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1449 -0
  146. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +304 -0
  147. package/typechain-types/factories/ActionMiscV3__factory.ts +3056 -0
  148. package/typechain-types/factories/ActionSimple__factory.ts +1939 -0
  149. package/typechain-types/factories/ActionStorageStatic__factory.ts +1576 -0
  150. package/typechain-types/factories/ActionStorageV4__factory.ts +1504 -0
  151. package/typechain-types/factories/ActionSwapPTV3__factory.ts +2556 -0
  152. package/typechain-types/factories/ActionSwapYTV3__factory.ts +2556 -0
  153. package/typechain-types/factories/ActionVePendleStatic__factory.ts +155 -0
  154. package/typechain-types/factories/IKyberScalingHelper__factory.ts +55 -0
  155. package/typechain-types/factories/IOdosRouterV2__factory.ts +94 -0
  156. package/typechain-types/factories/IPActionAddRemoveLiqV3Events__factory.ts +582 -0
  157. package/typechain-types/factories/IPActionAddRemoveLiqV3__factory.ts +3421 -0
  158. package/typechain-types/factories/IPActionMarketAuxStatic__factory.ts +622 -0
  159. package/typechain-types/factories/IPActionMiscV3Events__factory.ts +608 -0
  160. package/typechain-types/factories/IPActionMiscV3__factory.ts +3005 -0
  161. package/typechain-types/factories/IPActionSimple__factory.ts +1840 -0
  162. package/typechain-types/factories/IPActionStorageEvents__factory.ts +68 -0
  163. package/typechain-types/factories/IPActionStorageStatic__factory.ts +1498 -0
  164. package/typechain-types/factories/IPActionStorageV4__factory.ts +1466 -0
  165. package/typechain-types/factories/IPActionSwapPTV3Events__factory.ts +116 -0
  166. package/typechain-types/factories/IPActionSwapPTV3__factory.ts +2454 -0
  167. package/typechain-types/factories/IPActionSwapYTV3Events__factory.ts +116 -0
  168. package/typechain-types/factories/IPActionSwapYTV3__factory.ts +2454 -0
  169. package/typechain-types/factories/IPActionVePendleStatic__factory.ts +59 -0
  170. package/typechain-types/factories/IPAllActionV3__factory.ts +7860 -0
  171. package/typechain-types/factories/IPAllEventsV3__factory.ts +1363 -0
  172. package/typechain-types/factories/IPRouterStatic__factory.ts +3956 -0
  173. package/typechain-types/factories/IPSwapAggregator__factory.ts +136 -0
  174. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +345 -0
  175. package/typechain-types/factories/PendleRouterStatic__factory.ts +88 -0
  176. package/typechain-types/factories/PendleRouterV4__factory.ts +96 -0
  177. package/typechain-types/factories/PendleSwap__factory.ts +188 -0
  178. package/typechain-types/factories/Reflector__factory.ts +84 -0
  179. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +0 -4
  180. package/build/artifacts/contracts/router/math/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +0 -4
  181. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.dbg.json +0 -4
  182. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol/IAggregationExecutor.json +0 -65
  183. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutorOptimistic.sol/IAggregationExecutorOptimistic.dbg.json +0 -4
  184. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutorOptimistic.sol/IAggregationExecutorOptimistic.json +0 -194
  185. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelper.sol/IExecutorHelper.dbg.json +0 -4
  186. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelper.sol/IExecutorHelper.json +0 -1787
  187. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2.sol/IExecutorHelperL2.dbg.json +0 -4
  188. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2.sol/IExecutorHelperL2.json +0 -2873
  189. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2Struct.sol/IExecutorHelperL2Struct.dbg.json +0 -4
  190. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2Struct.sol/IExecutorHelperL2Struct.json +0 -10
  191. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperStruct.sol/IExecutorHelperStruct.dbg.json +0 -4
  192. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperStruct.sol/IExecutorHelperStruct.json +0 -10
  193. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.dbg.json +0 -4
  194. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol/IMetaAggregationRouterV2.json +0 -215
  195. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IBebopV3.sol/IBebopV3.dbg.json +0 -4
  196. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IBebopV3.sol/IBebopV3.json +0 -10
  197. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberDSLO.sol/IKyberDSLO.dbg.json +0 -4
  198. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberDSLO.sol/IKyberDSLO.json +0 -10
  199. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberLO.sol/IKyberLO.dbg.json +0 -4
  200. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberLO.sol/IKyberLO.json +0 -10
  201. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l1-contracts/InputScalingHelper.sol/InputScalingHelper.dbg.json +0 -4
  202. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l1-contracts/InputScalingHelper.sol/InputScalingHelper.json +0 -10
  203. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l1-contracts/ScalingDataLib.sol/ScalingDataLib.dbg.json +0 -4
  204. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/BytesHelper.sol/BytesHelper.dbg.json +0 -4
  205. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataReader.sol/CalldataReader.dbg.json +0 -4
  206. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataReader.sol/CalldataReader.json +0 -10
  207. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataWriter.sol/CalldataWriter.dbg.json +0 -4
  208. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataWriter.sol/CalldataWriter.json +0 -10
  209. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/Common.sol/Common.dbg.json +0 -4
  210. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/Common.sol/Common.json +0 -10
  211. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/DexScaler.sol/DexScaler.dbg.json +0 -4
  212. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/DexScaler.sol/DexScaler.json +0 -10
  213. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ExecutorReader.sol/ExecutorReader.dbg.json +0 -4
  214. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ExecutorReader.sol/ExecutorReader.json +0 -10
  215. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/InputScalingHelperL2.sol/InputScalingHelperL2.dbg.json +0 -4
  216. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/InputScalingHelperL2.sol/InputScalingHelperL2.json +0 -10
  217. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ScalingDataL2Lib.sol/ScalingDataL2Lib.dbg.json +0 -4
  218. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/l2-contracts/ScalingDataL2Lib.sol/ScalingDataL2Lib.json +0 -10
  219. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/libraries/BytesHelper.sol/BytesHelper.dbg.json +0 -4
  220. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/libraries/BytesHelper.sol/BytesHelper.json +0 -10
  221. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/libraries/RevertReasonParser.sol/RevertReasonParser.dbg.json +0 -4
  222. package/build/artifacts/contracts/router/swap-aggregator/kyberswap/libraries/RevertReasonParser.sol/RevertReasonParser.json +0 -10
  223. package/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutor.sol +0 -31
  224. package/contracts/router/swap-aggregator/kyberswap/interfaces/IAggregationExecutorOptimistic.sol +0 -63
  225. package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelper.sol +0 -164
  226. package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2.sol +0 -483
  227. package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperL2Struct.sol +0 -412
  228. package/contracts/router/swap-aggregator/kyberswap/interfaces/IExecutorHelperStruct.sol +0 -459
  229. package/contracts/router/swap-aggregator/kyberswap/interfaces/IMetaAggregationRouterV2.sol +0 -47
  230. package/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IBebopV3.sol +0 -23
  231. package/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberDSLO.sol +0 -36
  232. package/contracts/router/swap-aggregator/kyberswap/interfaces/pools/IKyberLO.sol +0 -32
  233. package/contracts/router/swap-aggregator/kyberswap/l1-contracts/InputScalingHelper.sol +0 -354
  234. package/contracts/router/swap-aggregator/kyberswap/l1-contracts/ScalingDataLib.sol +0 -521
  235. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/BytesHelper.sol +0 -93
  236. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataReader.sol +0 -404
  237. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/CalldataWriter.sol +0 -118
  238. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/Common.sol +0 -41
  239. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/DexScaler.sol +0 -684
  240. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/ExecutorReader.sol +0 -61
  241. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/InputScalingHelperL2.sol +0 -373
  242. package/contracts/router/swap-aggregator/kyberswap/l2-contracts/ScalingDataL2Lib.sol +0 -273
  243. package/contracts/router/swap-aggregator/kyberswap/libraries/BytesHelper.sol +0 -32
  244. package/contracts/router/swap-aggregator/kyberswap/libraries/RevertReasonParser.sol +0 -75
@@ -1,684 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.0;
3
-
4
- import {CalldataReader} from "./CalldataReader.sol";
5
- import {IExecutorHelperL2} from "../interfaces/IExecutorHelperL2.sol";
6
- import {IExecutorHelperL2Struct} from "../interfaces/IExecutorHelperL2Struct.sol";
7
- import {IBebopV3} from "../interfaces/pools/IBebopV3.sol";
8
- import {BytesHelper} from "./BytesHelper.sol";
9
- import {Common} from "./Common.sol";
10
- import {IKyberDSLO} from "../interfaces/pools/IKyberDSLO.sol";
11
- import {IKyberLO} from "../interfaces/pools/IKyberLO.sol";
12
-
13
- /// @title DexScaler
14
- /// @notice Contain functions to scale DEX structs
15
- /// @dev For this repo's scope, we only care about swap amounts, so we just need to decode until we get swap amounts
16
- library DexScaler {
17
- using BytesHelper for bytes;
18
- using CalldataReader for bytes;
19
- using Common for bytes;
20
-
21
- function scaleUniSwap(
22
- bytes memory data,
23
- uint256 oldAmount,
24
- uint256 newAmount
25
- ) internal pure returns (bytes memory) {
26
- uint256 startByte;
27
- // decode
28
- (, startByte) = data._readPool(startByte);
29
- (, startByte) = data._readRecipient(startByte);
30
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
31
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleUniSwap");
32
- }
33
-
34
- function scaleStableSwap(
35
- bytes memory data,
36
- uint256 oldAmount,
37
- uint256 newAmount
38
- ) internal pure returns (bytes memory) {
39
- uint256 startByte;
40
- (, startByte) = data._readPool(startByte);
41
- (, startByte) = data._readUint8(startByte);
42
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
43
- return
44
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleStableSwap");
45
- }
46
-
47
- function scaleCurveSwap(
48
- bytes memory data,
49
- uint256 oldAmount,
50
- uint256 newAmount
51
- ) internal pure returns (bytes memory) {
52
- uint256 startByte;
53
- bool canGetIndex;
54
- (canGetIndex, startByte) = data._readBool(0);
55
- (, startByte) = data._readPool(startByte);
56
- if (!canGetIndex) {
57
- (, startByte) = data._readAddress(startByte);
58
- (, startByte) = data._readUint8(startByte);
59
- }
60
- (, startByte) = data._readUint8(startByte);
61
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
62
- return
63
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleCurveSwap");
64
- }
65
-
66
- function scaleUniswapV3KSElastic(
67
- bytes memory data,
68
- uint256 oldAmount,
69
- uint256 newAmount
70
- ) internal pure returns (bytes memory) {
71
- uint256 startByte;
72
- (, startByte) = data._readRecipient(startByte);
73
- (, startByte) = data._readPool(startByte);
74
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
75
- return
76
- data.write16Bytes(
77
- startByte,
78
- oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount,
79
- "scaleUniswapV3KSElastic"
80
- );
81
- }
82
-
83
- function scaleBalancerV2(
84
- bytes memory data,
85
- uint256 oldAmount,
86
- uint256 newAmount
87
- ) internal pure returns (bytes memory) {
88
- uint256 startByte;
89
- (, startByte) = data._readPool(startByte);
90
- (, startByte) = data._readBytes32(startByte);
91
- (, startByte) = data._readUint8(startByte);
92
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
93
- return
94
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleBalancerV2");
95
- }
96
-
97
- function scaleDODO(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
98
- uint256 startByte;
99
- (, startByte) = data._readRecipient(startByte);
100
- (, startByte) = data._readPool(startByte);
101
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
102
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleDODO");
103
- }
104
-
105
- function scaleGMX(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
106
- uint256 startByte;
107
- // decode
108
- (, startByte) = data._readPool(startByte);
109
-
110
- (, startByte) = data._readAddress(startByte);
111
-
112
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
113
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleGMX");
114
- }
115
-
116
- function scaleSynthetix(
117
- bytes memory data,
118
- uint256 oldAmount,
119
- uint256 newAmount
120
- ) internal pure returns (bytes memory) {
121
- uint256 startByte;
122
-
123
- // decode
124
- (, startByte) = data._readPool(startByte);
125
-
126
- (, startByte) = data._readAddress(startByte);
127
- (, startByte) = data._readBytes32(startByte);
128
-
129
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
130
- return
131
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleSynthetix");
132
- }
133
-
134
- function scaleWrappedstETH(
135
- bytes memory data,
136
- uint256 oldAmount,
137
- uint256 newAmount
138
- ) internal pure returns (bytes memory) {
139
- uint256 startByte;
140
-
141
- // decode
142
- (, startByte) = data._readPool(startByte);
143
-
144
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
145
- return
146
- data.write16Bytes(
147
- startByte,
148
- oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount,
149
- "scaleWrappedstETH"
150
- );
151
- }
152
-
153
- function scaleStETH(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
154
- (uint256 swapAmount, ) = data._readUint128AsUint256(0);
155
- return data.write16Bytes(0, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleStETH");
156
- }
157
-
158
- function scalePlatypus(
159
- bytes memory data,
160
- uint256 oldAmount,
161
- uint256 newAmount
162
- ) internal pure returns (bytes memory) {
163
- uint256 startByte;
164
-
165
- // decode
166
- (, startByte) = data._readPool(startByte);
167
-
168
- (, startByte) = data._readAddress(startByte);
169
-
170
- (, startByte) = data._readRecipient(startByte);
171
-
172
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
173
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scalePlatypus");
174
- }
175
-
176
- function scalePSM(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
177
- uint256 startByte;
178
-
179
- // decode
180
- (, startByte) = data._readPool(startByte);
181
-
182
- (, startByte) = data._readAddress(startByte);
183
-
184
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
185
-
186
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scalePSM");
187
- }
188
-
189
- function scaleMaverick(
190
- bytes memory data,
191
- uint256 oldAmount,
192
- uint256 newAmount
193
- ) internal pure returns (bytes memory) {
194
- uint256 startByte;
195
-
196
- // decode
197
- (, startByte) = data._readPool(startByte);
198
-
199
- (, startByte) = data._readAddress(startByte);
200
-
201
- (, startByte) = data._readRecipient(startByte);
202
-
203
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
204
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleMaverick");
205
- }
206
-
207
- function scaleSyncSwap(
208
- bytes memory data,
209
- uint256 oldAmount,
210
- uint256 newAmount
211
- ) internal pure returns (bytes memory) {
212
- uint256 startByte;
213
-
214
- // decode
215
- (, startByte) = data._readBytes(startByte);
216
- (, startByte) = data._readPool(startByte);
217
-
218
- (, startByte) = data._readAddress(startByte);
219
-
220
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
221
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleSyncSwap");
222
- }
223
-
224
- function scaleAlgebraV1(
225
- bytes memory data,
226
- uint256 oldAmount,
227
- uint256 newAmount
228
- ) internal pure returns (bytes memory) {
229
- uint256 startByte;
230
-
231
- (, startByte) = data._readRecipient(startByte);
232
-
233
- (, startByte) = data._readPool(startByte);
234
-
235
- (, startByte) = data._readAddress(startByte);
236
-
237
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
238
-
239
- return
240
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleAlgebraV1");
241
- }
242
-
243
- function scaleBalancerBatch(
244
- bytes memory data,
245
- uint256 oldAmount,
246
- uint256 newAmount
247
- ) internal pure returns (bytes memory) {
248
- uint256 startByte;
249
-
250
- // decode
251
- (, startByte) = data._readPool(startByte);
252
-
253
- (, startByte) = data._readBytes32Array(startByte);
254
- (, startByte) = data._readAddressArray(startByte);
255
- (, startByte) = data._readBytesArray(startByte);
256
-
257
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte);
258
- return
259
- data.write16Bytes(
260
- startByte,
261
- oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount,
262
- "scaleBalancerBatch"
263
- );
264
- }
265
-
266
- function scaleMantis(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
267
- uint256 startByte;
268
-
269
- (, startByte) = data._readPool(startByte); // pool
270
-
271
- (, startByte) = data._readAddress(startByte); // tokenOut
272
-
273
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte); // amount
274
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleMantis");
275
- }
276
-
277
- function scaleIziSwap(
278
- bytes memory data,
279
- uint256 oldAmount,
280
- uint256 newAmount
281
- ) internal pure returns (bytes memory) {
282
- uint256 startByte;
283
-
284
- (, startByte) = data._readPool(startByte); // pool
285
-
286
- (, startByte) = data._readAddress(startByte); // tokenOut
287
-
288
- // recipient
289
- (, startByte) = data._readRecipient(startByte);
290
-
291
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte); // amount
292
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleIziSwap");
293
- }
294
-
295
- function scaleTraderJoeV2(
296
- bytes memory data,
297
- uint256 oldAmount,
298
- uint256 newAmount
299
- ) internal pure returns (bytes memory) {
300
- uint256 startByte;
301
-
302
- // recipient
303
- (, startByte) = data._readRecipient(startByte);
304
-
305
- (, startByte) = data._readPool(startByte); // pool
306
-
307
- (, startByte) = data._readAddress(startByte); // tokenOut
308
-
309
- (, startByte) = data._readBool(startByte); // isV2
310
-
311
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte); // amount
312
- return
313
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleTraderJoeV2");
314
- }
315
-
316
- function scaleLevelFiV2(
317
- bytes memory data,
318
- uint256 oldAmount,
319
- uint256 newAmount
320
- ) internal pure returns (bytes memory) {
321
- uint256 startByte;
322
-
323
- (, startByte) = data._readPool(startByte); // pool
324
-
325
- (, startByte) = data._readAddress(startByte); // tokenOut
326
-
327
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte); // amount
328
- return
329
- data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleLevelFiV2");
330
- }
331
-
332
- function scaleGMXGLP(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
333
- uint256 startByte;
334
-
335
- (, startByte) = data._readPool(startByte); // pool
336
-
337
- (, startByte) = data._readAddress(startByte); // yearnVault
338
-
339
- uint8 directionFlag;
340
- (directionFlag, startByte) = data._readUint8(startByte);
341
- if (directionFlag == 1) (, startByte) = data._readAddress(startByte); // tokenOut
342
-
343
- (uint256 swapAmount, ) = data._readUint128AsUint256(startByte); // amount
344
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (swapAmount * newAmount) / oldAmount, "scaleGMXGLP");
345
- }
346
-
347
- function scaleVooi(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
348
- uint256 startByte;
349
-
350
- (, startByte) = data._readPool(startByte); // pool
351
-
352
- (, startByte) = data._readUint8(startByte); // toId
353
-
354
- (uint256 fromAmount, ) = data._readUint128AsUint256(startByte); // amount
355
-
356
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (fromAmount * newAmount) / oldAmount, "scaleVooi");
357
- }
358
-
359
- function scaleVelocoreV2(
360
- bytes memory data,
361
- uint256 oldAmount,
362
- uint256 newAmount
363
- ) internal pure returns (bytes memory) {
364
- uint256 startByte;
365
-
366
- (, startByte) = data._readPool(startByte); // pool
367
-
368
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
369
-
370
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleVelocoreV2");
371
- }
372
-
373
- function scaleKokonut(
374
- bytes memory data,
375
- uint256 oldAmount,
376
- uint256 newAmount
377
- ) internal pure returns (bytes memory) {
378
- uint256 startByte;
379
-
380
- (, startByte) = data._readPool(startByte); // pool
381
-
382
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
383
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleKokonut");
384
- }
385
-
386
- function scaleBalancerV1(
387
- bytes memory data,
388
- uint256 oldAmount,
389
- uint256 newAmount
390
- ) internal pure returns (bytes memory) {
391
- uint256 startByte;
392
-
393
- (, startByte) = data._readPool(startByte); // pool
394
-
395
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
396
-
397
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleBalancerV1");
398
- }
399
-
400
- function scaleArbswapStable(
401
- bytes memory data,
402
- uint256 oldAmount,
403
- uint256 newAmount
404
- ) internal pure returns (bytes memory) {
405
- uint256 startByte;
406
-
407
- (, startByte) = data._readPool(startByte); // pool
408
-
409
- (uint256 dx, ) = data._readUint128AsUint256(startByte); // dx
410
-
411
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (dx * newAmount) / oldAmount, "scaleArbswapStable");
412
- }
413
-
414
- function scaleBancorV2(
415
- bytes memory data,
416
- uint256 oldAmount,
417
- uint256 newAmount
418
- ) internal pure returns (bytes memory) {
419
- uint256 startByte;
420
-
421
- (, startByte) = data._readPool(startByte); // pool
422
-
423
- (, startByte) = data._readAddressArray(startByte); // swapPath
424
-
425
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
426
-
427
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleBancorV2");
428
- }
429
-
430
- function scaleAmbient(
431
- bytes memory data,
432
- uint256 oldAmount,
433
- uint256 newAmount
434
- ) internal pure returns (bytes memory) {
435
- uint256 startByte;
436
-
437
- (, startByte) = data._readPool(startByte); // pool
438
-
439
- (uint128 qty, ) = data._readUint128(startByte); // amount
440
-
441
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (qty * newAmount) / oldAmount, "scaleAmbient");
442
- }
443
-
444
- function scaleLighterV2(
445
- bytes memory data,
446
- uint256 oldAmount,
447
- uint256 newAmount
448
- ) internal pure returns (bytes memory) {
449
- uint256 startByte;
450
-
451
- (, startByte) = data._readPool(startByte); // orderbook
452
-
453
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
454
-
455
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleLighterV2");
456
- }
457
-
458
- function scaleMaiPSM(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
459
- uint256 startByte;
460
- (, startByte) = data._readPool(startByte); // pool
461
-
462
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
463
-
464
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleMaiPSM");
465
- }
466
-
467
- function scaleKyberRFQ(
468
- bytes memory data,
469
- uint256 oldAmount,
470
- uint256 newAmount
471
- ) internal pure returns (bytes memory) {
472
- uint256 startByte;
473
- (, startByte) = data._readPool(startByte); // rfq
474
- (, startByte) = data._readOrderRFQ(startByte); // order
475
- (, startByte) = data._readBytes(startByte); // signature
476
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
477
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleKyberRFQ");
478
- }
479
-
480
- function scaleDSLO(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
481
- uint256 startByte;
482
-
483
- (, startByte) = data._readPool(startByte); // kyberLOAddress
484
-
485
- (, startByte) = data._readAddress(startByte); // makerAsset
486
-
487
- // (, startByte) = data._readAddress(startByte); // don't have takerAsset
488
-
489
- (
490
- IKyberDSLO.FillBatchOrdersParams memory params,
491
- ,
492
- uint256 takingAmountStartByte,
493
- uint256 thresholdStartByte
494
- ) = data._readDSLOFillBatchOrdersParams(startByte); // FillBatchOrdersParams
495
-
496
- data = data.write16Bytes(
497
- takingAmountStartByte,
498
- oldAmount == 0 ? 0 : (params.takingAmount * newAmount) / oldAmount,
499
- "scaleDSLO"
500
- );
501
-
502
- return data.write16Bytes(thresholdStartByte, 1, "scaleThreshold");
503
- }
504
-
505
- function scaleKyberLimitOrder(
506
- bytes memory data,
507
- uint256 oldAmount,
508
- uint256 newAmount
509
- ) internal pure returns (bytes memory) {
510
- uint256 startByte;
511
-
512
- (, startByte) = data._readPool(startByte); // kyberLOAddress
513
-
514
- (, startByte) = data._readAddress(startByte); // makerAsset
515
-
516
- // (, startByte) = data._readAddress(startByte); // takerAsset
517
-
518
- (
519
- IKyberLO.FillBatchOrdersParams memory params,
520
- ,
521
- uint256 takingAmountStartByte,
522
- uint256 thresholdStartByte
523
- ) = data._readLOFillBatchOrdersParams(startByte); // FillBatchOrdersParams
524
-
525
- data = data.write16Bytes(
526
- takingAmountStartByte,
527
- oldAmount == 0 ? 0 : (params.takingAmount * newAmount) / oldAmount,
528
- "scaleLO"
529
- );
530
- return data.write16Bytes(thresholdStartByte, 1, "scaleThreshold");
531
- }
532
-
533
- function scaleHashflow(
534
- bytes memory data,
535
- uint256 oldAmount,
536
- uint256 newAmount
537
- ) internal pure returns (bytes memory) {
538
- uint256 startByte;
539
-
540
- (, startByte) = data._readAddress(startByte); // router
541
-
542
- (IExecutorHelperL2.RFQTQuote memory rfqQuote, , uint256 ebtaStartByte) = data._readRFQTQuote(startByte); // RFQTQuote
543
-
544
- return
545
- data.write16Bytes(
546
- ebtaStartByte,
547
- oldAmount == 0 ? 0 : (rfqQuote.effectiveBaseTokenAmount * newAmount) / oldAmount,
548
- "scaleHashflow"
549
- );
550
- }
551
-
552
- function scaleNative(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
553
- require(newAmount < oldAmount, "Native: not support scale up");
554
-
555
- uint256 startByte;
556
- bytes memory strData;
557
- uint256 amountStartByte;
558
- uint256 amount;
559
- uint256 multihopAndOffset;
560
- uint256 strDataStartByte;
561
-
562
- (, startByte) = data._readAddress(startByte); // target
563
-
564
- amountStartByte = startByte;
565
- (amount, startByte) = data._readUint128AsUint256(startByte); // amount
566
-
567
- strDataStartByte = startByte;
568
- (strData, startByte) = data._readBytes(startByte); // data
569
-
570
- (, startByte) = data._readAddress(startByte); // tokenIn
571
- (, startByte) = data._readAddress(startByte); // tokenOut
572
- (, startByte) = data._readAddress(startByte); // recipient
573
- (multihopAndOffset, startByte) = data._readUint256(startByte); // multihopAndOffset
574
-
575
- require(multihopAndOffset >> 255 == 0, "Native: Multihop not supported");
576
-
577
- amount = (amount * newAmount) / oldAmount;
578
-
579
- uint256 amountInOffset = uint256(uint64(multihopAndOffset >> 64));
580
- uint256 amountOutMinOffset = uint256(uint64(multihopAndOffset));
581
- // bytes memory newCallData = strData;
582
-
583
- strData = strData.write32Bytes(amountInOffset, amount, "ScaleStructDataAmount");
584
-
585
- // update amount out min if needed
586
- if (amountOutMinOffset != 0) {
587
- strData = strData.write32Bytes(amountOutMinOffset, 1, "ScaleStructDataAmountOutMin");
588
- }
589
-
590
- data.write16Bytes(amountStartByte, amount, "scaleNativeAmount");
591
-
592
- return data.writeBytes(strDataStartByte + 4, strData);
593
- }
594
-
595
- function scaleBebop(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
596
- require(newAmount < oldAmount, "Bebop: not support scale up");
597
-
598
- uint256 startByte;
599
- uint256 amount;
600
- uint256 amountStartByte;
601
- uint256 txDataStartByte;
602
- bytes memory txData;
603
-
604
- (, startByte) = data._readPool(startByte); // pool
605
-
606
- amountStartByte = startByte;
607
- (amount, startByte) = data._readUint128AsUint256(startByte); // amount
608
- txDataStartByte = startByte;
609
- (txData, startByte) = data._readBytes(startByte); // data
610
-
611
- amount = (amount * newAmount) / oldAmount;
612
-
613
- {
614
- // update calldata with new swap amount
615
- (bytes4 selector, bytes memory callData) = txData.splitCalldata();
616
-
617
- (IBebopV3.Single memory s, IBebopV3.MakerSignature memory m, ) = abi.decode(
618
- callData,
619
- (IBebopV3.Single, IBebopV3.MakerSignature, uint256)
620
- );
621
-
622
- txData = bytes.concat(bytes4(selector), abi.encode(s, m, amount));
623
- }
624
-
625
- data.write16Bytes(amountStartByte, amount, "scaleBebopAmount");
626
-
627
- return data.writeBytes(txDataStartByte + 4, txData);
628
- }
629
-
630
- function scaleMantleUsd(
631
- bytes memory data,
632
- uint256 oldAmount,
633
- uint256 newAmount
634
- ) internal pure returns (bytes memory) {
635
- (uint256 isWrapAndAmount, ) = data._readUint256(0);
636
-
637
- bool _isWrap = isWrapAndAmount >> 255 == 1;
638
- uint256 _amount = uint256(uint128(isWrapAndAmount));
639
-
640
- //scale amount
641
- _amount = oldAmount == 0 ? 0 : (_amount * newAmount) / oldAmount;
642
-
643
- // reset and create new variable for isWrap and amount
644
- isWrapAndAmount = 0;
645
- isWrapAndAmount |= uint256(uint128(_amount));
646
- isWrapAndAmount |= uint256(_isWrap ? 1 : 0) << 255;
647
- return abi.encode(isWrapAndAmount);
648
- }
649
-
650
- function scaleKelp(bytes memory data, uint256 oldAmount, uint256 newAmount) internal pure returns (bytes memory) {
651
- uint256 startByte;
652
-
653
- (, startByte) = data._readPool(startByte); // pool
654
-
655
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
656
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleKelp");
657
- }
658
-
659
- function scaleSymbioticLRT(
660
- bytes memory data,
661
- uint256 oldAmount,
662
- uint256 newAmount
663
- ) internal pure returns (bytes memory) {
664
- uint256 startByte;
665
-
666
- (, startByte) = data._readPool(startByte); // vault
667
-
668
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
669
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleSymbioticLRT");
670
- }
671
-
672
- function scaleMaverickV2(
673
- bytes memory data,
674
- uint256 oldAmount,
675
- uint256 newAmount
676
- ) internal pure returns (bytes memory) {
677
- uint256 startByte;
678
-
679
- (, startByte) = data._readPool(startByte); // pool
680
-
681
- (uint256 amount, ) = data._readUint128AsUint256(startByte); // amount
682
- return data.write16Bytes(startByte, oldAmount == 0 ? 0 : (amount * newAmount) / oldAmount, "scaleMaverickV2");
683
- }
684
- }