pub async fn get_values(&mut self, hashed_keys: &[H256]) -> DalResult<HashMap<H256, H256>> {
        let Some(l2_block_number) = self
            .storage
            .blocks_dal()
            .get_sealed_l2_block_number()
            .await?
        else {
            let err = Instrumented::new("get_values")
                .with_arg("hashed_keys", &hashed_keys)
                .constraint_error(anyhow::anyhow!("no sealed l2 blocks"));
            return Err(err);
        };
        let storage_map = self
            .storage
            .storage_logs_dal()
            .get_storage_values(hashed_keys, l2_block_number)
            .await?;
        Ok(storage_map
            .into_iter()
            .map(|(key, value)| (key, value.unwrap_or_default()))
            .collect())
    }
Gets the current values for the specified `hashed_keys`. The returned map has requested hashed keys as keys
and current storage values as values. Uses state of the latest sealed L2 block.
Returns error if there is no sealed L2 blocks.
core/lib/dal/src/storage_web3_dal.rs