Mainnet oracles are incompatible with wstETH causing many popular yields strategies to be broken
ChainlinkAdapterOracle.sol#L111-L125\\n```\\n    uint256 decimals = registry.decimals(token, USD);\\n    (\\n        uint80 roundID,\\n        int256 answer,\\n        ,\\n        uint256 updatedAt,\\n        uint80 answeredInRound\\n    ) = registry.latestRoundData(token, USD);\\n    if (updatedAt < block.timestamp - maxDelayTime)\\n        revert Errors.PRICE_OUTDATED(token_);\\n    if (answer <= 0) revert Errors.PRICE_NEGATIVE(token_);\\n    if (answeredInRound < roundID) revert Errors.PRICE_OUTDATED(token_);\\n\\n    return\\n        (answer.toUint256() * Constants.PRICE_PRECISION) / 10 ** decimals;\\n```\\n\\nChainlinkAdapterOracle only supports single asset price data. This makes it completely incompatible with wstETH because chainlink doesn't have a wstETH oracle on mainnet. Additionally Band protocol doesn't offer a wstETH oracle either. This only leaves Uniswap oracles which are highly dangerous given their low liquidity.
Create a special bypass specifically for wstETH utilizing the stETH oracle and it's current exchange rate.
Mainnet oracles are incompatible with wstETH causing many popular yields strategies to be broken
```\\n    uint256 decimals = registry.decimals(token, USD);\\n    (\\n        uint80 roundID,\\n        int256 answer,\\n        ,\\n        uint256 updatedAt,\\n        uint80 answeredInRound\\n    ) = registry.latestRoundData(token, USD);\\n    if (updatedAt < block.timestamp - maxDelayTime)\\n        revert Errors.PRICE_OUTDATED(token_);\\n    if (answer <= 0) revert Errors.PRICE_NEGATIVE(token_);\\n    if (answeredInRound < roundID) revert Errors.PRICE_OUTDATED(token_);\\n\\n    return\\n        (answer.toUint256() * Constants.PRICE_PRECISION) / 10 ** decimals;\\n```\\n