async def async_all(gen, *, check=_isawaitable):
    for elem in gen:
        if check(elem):
            elem = (await elem)
        if (not elem):
            return False
    return True
async def async_all(gen, *, check=_isawaitable):
    for elem in gen:
        if check(elem):
            elem = (await elem)
        if (not elem):
            return False
    return True