import asyncio
import time


async def poll(client):
    while not await client.ready():
        await asyncio.sleep(0.5)

    def blocking_backoff():
        time.sleep(1)

    await asyncio.to_thread(blocking_backoff)
    return await client.result()


def sync_poll(client):
    time.sleep(0.5)
    return client.result()
