async fn send<M: 'static + Middleware, B: Borrow<M>, D: Detokenize>(
        &mut self,
        name: String,
        call: FunctionCall<B, M, D>,
    ) -> anyhow::Result<()> {
        let hash = call.send().await.with_context(|| name.clone())?.tx_hash();
        if global_config().verbose {
            logger::debug(format!("Sent transaction {name}: {hash:?}"));
        }
        self.0.push((hash, name));
        Ok(())
    }
Sends a transactions and stores the transaction hash.
zkstack_cli/crates/zkstack/src/commands/consensus/mod.rs