pub fn decode(token: Token) -> anyhow::Result<Self> {
        let tokens = token.into_tuple().context("not a tuple")?;
        anyhow::ensure!(tokens.len() == 3);
        let mut t = tokens.into_iter();
        let mut next = || t.next().unwrap();
        Ok(Self {
            recursion_node_level_vk_hash: next()
                .into_fixed_bytes()
                .and_then(|x| x.try_into().ok())
                .context("recursion_node_level_vk_hash")?,
            recursion_leaf_level_vk_hash: next()
                .into_fixed_bytes()
                .and_then(|x| x.try_into().ok())
                .context("recursion_leaf_level_vk_hash")?,
            recursion_circuits_set_vks_hash: next()
                .into_fixed_bytes()
                .and_then(|x| x.try_into().ok())
                .context("recursion_circuits_set_vks_hash")?,
        })
    }
Decodes `VerifierParams` from a RLP token.
Returns an error if token doesn't match the `schema()`.
core/lib/types/src/abi.rs