```\n    uint256 unhedgedGlp = (state.unhedgedGlpInUsdc + dnUsdcDepositedPos).mulDivDown(\n        PRICE_PRECISION,\n        _getGlpPrice(state, !maximize)\n    );\n\n    // calculate current borrow amounts\n    (uint256 currentBtc, uint256 currentEth) = _getCurrentBorrows(state);\n    uint256 totalCurrentBorrowValue = _getBorrowValue(state, currentBtc, currentEth);\n\n    // add negative part to current borrow value which will be subtracted at the end\n    // convert usdc amount into glp amount\n    uint256 borrowValueGlp = (totalCurrentBorrowValue + dnUsdcDepositedNeg).mulDivDown(\n        PRICE_PRECISION,\n        _getGlpPrice(state, !maximize)\n    );\n\n    // if we need to minimize then add additional slippage\n    if (!maximize) unhedgedGlp = unhedgedGlp.mulDivDown(MAX_BPS - state.slippageThresholdGmxBps, MAX_BPS);\n    if (!maximize) borrowValueGlp = borrowValueGlp.mulDivDown(MAX_BPS - state.slippageThresholdGmxBps, MAX_BPS);\n```\n