For all other pairs of token <> ETH, on-chain oracles from Kyber are used.
In case no price can be fetched from Kyber, we check Uniswap V2, Sushiswap, Uniswap V1, in that order.
In case the above checks fail, there is a custom implementation to used to get prices specifically for LP tokens from Uniswap V2 pools, Balancer, Mooniswap and Curve as well as Yearn vault tokens.
In case still no fiat price could be found, the Coingecko is queried. If that fails as well, the asset won't have a fiat price on the Safe interface.
Currently, only the native token (xDai) has a fiat value. The Kraken DAI <> USD oracle is used for this one. If this request fails, we fall back to 1 DAI = 1 USD.