<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def dataSources(loop=None, executor=None):
 """Returns a dictionary mapping available DSNs to their descriptions. :param loop: asyncio compatible event loop :param executor: instance of custom ThreadPoolExecutor, if not supplied default executor will be used :return dict: mapping of dsn to driver description """

    loop = loop or asyncio.get_event_loop()
    sources = await loop.run_in_executor(executor, _dataSources)
    return sources