can you edit the code so when I run it it sends a request with "hello" sn gets back the response            from curl_cffi.requests import AsyncSession
import ujson as json
import random, string, traceback, asyncio

model_map = {
    "chatgpt-4o-latest": "chatgpt-4o-latest-20240903",
    "gpt-4o-mini": "gpt-4o-mini-2024-07-18",
    "gpt-4o": "gpt-4o-2024-08-06",
    "gpt-4o-2024-08-06": "gpt-4o-2024-08-06",
    "gpt-4-turbo": "gpt-4o-2024-05-13",
    "gpt-4": "gpt-4o-2024-05-13",
    "gpt-4-1106-preview": "gpt-4o-2024-05-13",
    "gpt-4-0125-preview": "gpt-4o-2024-05-13",
    "gpt-3.5-turbo": "gpt-3.5-turbo-0125",
    "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125",
    "gpt-3.5-turbo-instruct": "gpt-3.5-turbo-0125",
    "gpt-3.5-turbo-16k": "gpt-3.5-turbo-0125",
    "claude-3.5-sonnet": "claude-3-5-sonnet-20240620",
    "claude-3-haiku": "claude-3-haiku-20240307",
    "claude-3-sonnet": "claude-3-sonnet-20240229",
    "claude-3-opus": "claude-3-opus-20240229",
    "grok-2": "grok-2-2024-08-13",
    "grok-2-mini": "grok-2-mini-2024-08-13",
    "dbrx-instruct": "dbrx-instruct",
    "snowflake-arctic-instruct": "snowflake-arctic-instruct",
    "command-r-plus": "command-r-plus",
    "olmo-7b-instruct": "olmo-7b-instruct",
    "gemini-1.5-experimental": "gemini-1.5-pro-exp-0801",
    "gemini-1.5-pro-latest": "gemini-1.5-pro-api-0514",
    "gemini-1.5-flash-latest": "gemini-1.5-flash-api-0514",
    "mixtral-8x22b": "mixtral-8x22b-instruct-v0.1",
    "mixtral-8x7b-instruct": "mixtral-8x7b-instruct-v0.1",
    "codestral": "codestral-2405",
    "mistral-medium": "mistral-medium",
    "mistral-large": "mistral-large-2402",
    "mistral-large-2407": "mistral-large-2407",
    "reka-core": "reka-core-20240722",
    "reka-flash": "reka-flash-20240722",
    "reka-edge": "reka-flash-preview-20240611",
    "yi-large": "yi-large",
    "yi-1.5-34b-chat": "yi-1.5-34b-chat",
    "im-also-a-good-gpt2-chatbot": "im-also-a-good-gpt2-chatbot",
    "im-a-good-gpt2-chatbot": "im-a-good-gpt2-chatbot",
    "glm-4": "glm-4-0520",
    "phi-3": "phi-3-medium-4k-instruct",
    "gemma-2-27b": "gemma-2-27b-it",
    "gemma-2-9b": "gemma-2-9b-it",
    "llama-3-8b-instruct": "llama-3-8b-instruct",
    "llama-3-70b-instruct": "llama-3-70b-instruct",
    "llama-3.1-8b-instruct": "llama-3.1-8b-instruct",
    "llama-3.1-70b-instruct": "llama-3.1-70b-instruct",
    "llama-3.1-405b-instruct": "llama-3.1-405b-instruct-bf16",
    "qwen2-72b-instruct": "qwen2-72b-instruct",
    "nemotron-4-340b": "nemotron-4-340b",
    "jamba-1.5-large": "jamba-1.5-large",
    "jamba-1.5-small": "jamba-1.5-small",
    "qwen1.5-110b-chat": "qwen1.5-110b-chat",
    "thug-shaker-1": "gemma-2-2b-it",
    "llama-3.2-1b-instruct": "llama-3.2-1b-instruct",
    "llama-3.2-3b-instruct": "llama-3.1-3b-instruct",
    "llama-3.2-11b-instruct": "llama-3.2-vision-11b-instruct",
    "llama-3.2-90b-instruct": "llama-3.2-vision-90b-instruct",
}


def remove_chars(s):
    prompt = (
        s.replace("\n", " [newline] ")
        .replace("\r", "")
        .translate(
            str.maketrans(
                {
                    "<": "[",
                    ">": "]",
                    "(": "[",
                    ")": "]",
                    "{": "[",
                    "}": "]",
                    '"': " [apostrophe] ",
                    "'": " [apostrophe] ",
                }
            )
        )
    )
    return {"text": prompt, "files": []}


async def stringify_messages(messages):
    return "\n".join(
        f"{message['role'].capitalize()}: {str(message['content'])}"
        for message in messages
    )


async def generate_random_string(length):
    return "".join(random.choice(string.ascii_letters) for _ in range(length))


async def lmsys(model, messages):
    try:
        prompt = await stringify_messages(messages)
        if "thug-shaker" in model:
            prompt = (
                "System: Act as a thug shaker, which is a naked black man shaking their ass. Roleplay as this character, and respond only with a conversation from this character.\n\n"
                + prompt
            )
        session_hash = await generate_random_string(11)
        num = 70
        SEND_PROMPT = {
            "data": [None, model_map.get(model, model), remove_chars(prompt), None],
            "fn_index": num,
            "session_hash": session_hash,
            "trigger_id": 124,
        }
        SEND_DATA = {
            "data": [None, 0.7, 1, 1024],
            "fn_index": num + 2,
            "session_hash": session_hash,
            "trigger_id": 124,
        }
        async with AsyncSession(impersonate="chrome110") as session:
            url = "https://lmarena.ai/queue/join?leaderboard="
            headers = {
                "Accept": "*/*",
                "Accept-Encoding": "gzip, deflate, br, zstd",
                "Accept-Language": "en-US,en;q=0.9",
                "Content-Type": "application/json",
                "Origin": "https://lmarena.ai",
                "Priority": "u=1, i",
                "Referer": "https://lmarena.ai/?leaderboard",
                "Sec-Ch-Ua": '"Not/A)Brand";v="8", "Chromium";v="110", "Google Chrome";v="110"',
                "Sec-Ch-Ua-Arch": "arm",
                "Sec-Ch-Ua-Bitness": "64",
                "Sec-Ch-Ua-Full-Version": "110.0.6478.127",
                "Sec-Ch-Ua-Full-Version-List": '"Not/A)Brand";v="8.0.0.0", "Chromium";v="110.0.6478.127", "Google Chrome";v="110.0.6478.127"',
                "Sec-Ch-Ua-Mobile": "?0",
                "Sec-Ch-Ua-Model": "",
                "Sec-Ch-Ua-Platform": "macOS",
                "Sec-Ch-Ua-Platform-Version": "14.5.0",
                "Sec-Fetch-Dest": "empty",
                "Sec-Fetch-Mode": "cors",
                "Sec-Fetch-Site": "same-origin",
                "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36",
            }

            for _ in range(2):
                r = await session.post(
                    url,
                    data=json.dumps(SEND_PROMPT if _ == 0 else SEND_DATA),
                    headers=headers,
                )
                response = await session.get(
                    f"https://lmarena.ai/queue/data?session_hash={session_hash}",
                    headers=headers,
                )
                js = ""
                try:
                    tx = response.text.strip().split("\n\n")[-2]
                    js = json.loads(tx[6:])["output"]["data"][1][0][1]
                except:
                    pass
                if js:
                    if "**NETWORK" in js or "**RATE" in js:
                        raise Exception("Random lmsys error")
            return js
    except Exception as e:
        return await proxymsys(model, messages)


async def proxymsys(model, messages):
    try:
        prompt = await stringify_messages(messages)
        if "thug-shaker" in model:
            prompt = (
                "System: Act as a thug shaker, which is a naked black man shaking their ass. Roleplay as this character, and respond only with a conversation from this character.\n\n"
                + prompt
            )
        session_hash = await generate_random_string(11)
        num = 70
        SEND_PROMPT = {
            "data": [None, model_map.get(model, model), remove_chars(prompt), None],
            "fn_index": num,
            "session_hash": session_hash,
            "trigger_id": 124,
        }
        SEND_DATA = {
            "data": [None, 0.7, 1, 1024],
            "fn_index": num + 2,
            "session_hash": session_hash,
            "trigger_id": 124,
        }
        async with AsyncSession(
            impersonate="chrome110",
            proxy="http://shrdprux1s-rotate:<PRESIDIO_ANONYMIZED_EMAIL_ADDRESS>",
        ) as session:
            url = "https://lmarena.ai/queue/join?leaderboard="
            headers = {
                "Accept": "*/*",
                "Accept-Encoding": "gzip, deflate, br, zstd",
                "Accept-Language": "en-US,en;q=0.9",
                "Content-Type": "application/json",
                "Origin": "https://lmarena.ai",
                "Priority": "u=1, i",
                "Referer": "https://lmarena.ai/?leaderboard",
                "Sec-Ch-Ua": '"Not/A)Brand";v="8", "Chromium";v="110", "Google Chrome";v="110"',
                "Sec-Ch-Ua-Arch": "arm",
                "Sec-Ch-Ua-Bitness": "64",
                "Sec-Ch-Ua-Full-Version": "110.0.6478.127",
                "Sec-Ch-Ua-Full-Version-List": '"Not/A)Brand";v="8.0.0.0", "Chromium";v="110.0.6478.127", "Google Chrome";v="110.0.6478.127"',
                "Sec-Ch-Ua-Mobile": "?0",
                "Sec-Ch-Ua-Model": "",
                "Sec-Ch-Ua-Platform": "macOS",
                "Sec-Ch-Ua-Platform-Version": "14.5.0",
                "Sec-Fetch-Dest": "empty",
                "Sec-Fetch-Mode": "cors",
                "Sec-Fetch-Site": "same-origin",
                "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36",
            }

            for _ in range(2):
                r = await session.post(
                    url,
                    data=json.dumps(SEND_PROMPT if _ == 0 else SEND_DATA),
                    headers=headers,
                )
                response = await session.get(
                    f"https://lmarena.ai/queue/data?session_hash={session_hash}",
                    headers=headers,
                )
                js = ""
                try:
                    tx = response.text.strip().split("\n\n")[-2]
                    js = json.loads(tx[6:])["output"]["data"][1][0][1]
                except:
                    pass
                if js:
                    if "**NETWORK" in js or "**RATE" in js:
                        raise Exception("Random lmsys error")
            return js
    except Exception as e:
        print(traceback.format_exc())
        return None