```\nfunction baseOracleCircuitBreaker(\n    uint256 protocolPrice,\n    uint80 roundId,\n    int256 chainlinkPrice,\n    uint256 timeStamp,\n    uint256 chainlinkPriceInEth\n) private view returns (uint256 _protocolPrice) {\n    bool invalidFetchData = roundId == 0 || timeStamp == 0\n        || timeStamp > block.timestamp || chainlinkPrice <= 0\n        || block.timestamp > 2 hours + timeStamp;\n    // rest of code\n    if (invalidFetchData || priceDeviation) {\n        uint256 twapPrice = IDiamond(payable(address(this))).estimateWETHInUSDC(\n            Constants.UNISWAP_WETH_BASE_AMT, 30 minutes\n        );\n        uint256 twapPriceInEther = (twapPrice / Constants.DECIMAL_USDC) * 1 ether;\n        uint256 twapPriceInv = twapPriceInEther.inv();\n        if (twapPriceInEther == 0) {\n            revert Errors.InvalidTwapPrice();\n        }\n\n        if (invalidFetchData) {\n            return twapPriceInv; // @issue\n        } else {\n            // rest of code\n        }\n    } else {\n        return chainlinkPriceInEth;\n    }\n}\n```\n