@validate('loop_runner')
def _import_runner(self, proposal):
    if isinstance(proposal.value, str):
        if (proposal.value in self.loop_runner_map):
            (runner, autoawait) = self.loop_runner_map[proposal.value]
            self.autoawait = autoawait
            return runner
        runner = import_item(proposal.value)
        if (not callable(runner)):
            raise ValueError('loop_runner must be callable')
        return runner
    if (not callable(proposal.value)):
        raise ValueError('loop_runner must be callable')
    return proposal.value
@validate('loop_runner')
def _import_runner(self, proposal):
    if isinstance(proposal.value, str):
        if (proposal.value in self.loop_runner_map):
            (runner, autoawait) = self.loop_runner_map[proposal.value]
            self.autoawait = autoawait
            return runner
        runner = import_item(proposal.value)
        if (not callable(runner)):
            raise ValueError('loop_runner must be callable')
        return runner
    if (not callable(proposal.value)):
        raise ValueError('loop_runner must be callable')
    return proposal.value