def ensure_iterables(*iterables, loop=None):
for iterable in iterables:
if inspect.isawaitable(iterable):
future = asyncio.ensure_future(iterable, loop=loop)
yield future_iterator(future)
else:
yield iterable