def METHOD_NAME(event_loop=None):
    """Notarization poller entry point: get everything set up, then enter the main loop.
    Args:
        event_loop (asyncio.BaseEventLoop, optional): the event loop to use.
            If None, use ``asyncio.get_event_loop()``. Defaults to None.
    """
    event_loop = event_loop or asyncio.get_event_loop()
    config = get_config_from_cmdln(sys.argv[1:])
    update_logging_config(config)
    log.info("Notarization poller starting up at {} UTC".format(arrow.utcnow().format()))
    log.info("Worker FQDN: {}".format(socket.getfqdn()))
    rm(config["work_dir"])
    makedirs(config["work_dir"])
    running_tasks = RunTasks(config)
    async def _handle_sigterm():
        log.info("SIGTERM received; shutting down")
        await running_tasks.cancel()
    def _handle_sigusr1():
        """Stop accepting new tasks."""
        log.info("SIGUSR1 received; no more tasks will be taken")
        running_tasks.is_stopped = True
    event_loop.add_signal_handler(signal.SIGTERM, lambda: asyncio.ensure_future(_handle_sigterm()))
    event_loop.add_signal_handler(signal.SIGUSR1, _handle_sigusr1)
    try:
        event_loop.run_until_complete(running_tasks.invoke())
    except Exception:
        log.critical("Fatal exception", exc_info=1)
        raise
    finally:
        log.info("Notarization poller stopped at {} UTC".format(arrow.utcnow().format()))
        log.info("Worker FQDN: {}".format(socket.getfqdn()))