From ffffca237f1ee360b7e4591e9f013dbf1e3bcdbf Mon Sep 17 00:00:00 2001 From: Anukul Pandey Date: Fri, 22 Aug 2025 04:07:48 +0530 Subject: [PATCH] fix: stake output --- src/utils/math.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/utils/math.ts b/src/utils/math.ts index abc9e48..2f66d74 100644 --- a/src/utils/math.ts +++ b/src/utils/math.ts @@ -271,8 +271,8 @@ export const ensureAmount = (token: TokenWithAmount): void => ensure( export const getOutputAmount = (token: TokenWithAmount, pool: Pool): number => { const inputAmount = new BN(assertAmount(token.amount)).multipliedBy(997); - const inputReserves = new BN(pool.reserve1); - const outputReserves = new BN(pool.reserve2); + const inputReserves = new BN(pool.reserve1).div(new BN(10).pow(pool.token1.decimals)); + const outputReserves = new BN(pool.reserve2).div(new BN(10).pow(pool.token2.decimals)); const numerator = inputAmount.multipliedBy(outputReserves); const denominator = inputReserves.multipliedBy(1000).plus(inputAmount); @@ -283,8 +283,8 @@ export const getOutputAmount = (token: TokenWithAmount, pool: Pool): number => { export const getInputAmount = (token: TokenWithAmount, pool: Pool): number => { const outputAmount = new BN(assertAmount(token.amount)); - const inputReserves = new BN(pool.reserve1); - const outputReserves = new BN(pool.reserve2); + const inputReserves = new BN(pool.reserve1).div(new BN(10).pow(pool.token1.decimals)); + const outputReserves = new BN(pool.reserve2).div(new BN(10).pow(pool.token2.decimals)); const numerator = inputReserves.multipliedBy(outputAmount).multipliedBy(1000); const denominator = outputReserves.minus(outputAmount).multipliedBy(997);