You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: workers.rs
    path of file: ./repos/nox/crates/nox-tests/tests
    
    the code of the file until where you have to start completion: use connected_client::ConnectedClient;
use created_swarm::make_swarms;
use eyre::Context;
use hex::FromHex;
use log_utils::enable_logs;
use maplit::hashmap;
use serde_json::{json, Value};
use workers::CUID;

pub(crate) async fn create_worker(client: &mut ConnectedClient, deal_id: &str) -> String {
    let init_id_1 =
        <CUID>::from_hex("54ae1b506c260367a054f80800a545f23e32c6bc4a8908c9a794cb8dad23e5ea")
            .unwrap();
    let unit_ids = vec![init_id_1];
    let data = hashmap! {
        "deal_id"
    
pub(crate) async fn create_worker(client: &mut ConnectedClient, deal_id: &str) -> String {
    let init_id_1 =
        <CUID>::from_hex("54ae1b506c260367a054f80800a545f23e32c6bc4a8908c9a794cb8dad23e5ea")
            .unwrap();
    let unit_ids = vec![init_id_1];
    let data = hashmap! {
        "deal_id" => json!(deal_id.to_string()),
        "relay" => json!(client.node.to_string()),
        "client" => json!(client.peer_id.to_string()),
        "cu_ids" => json!(unit_ids)
    };

    let response = client
        .execute_particle(
            r#"
            (seq
                (call relay ("worker" "create") [deal_id cu_ids] worker_peer_id)
                (call client ("return" "") [worker_peer_id])
            )"#,
            data.clone(),
        )
        .await
        .unwrap();

    let worker_id = response[0].as_str().unwrap().to_string();
    assert_ne!(worker_id.len(), 0);

    worker_id
}