<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 _start(self):
 """ Start coroutine. runs on_start coroutine and then runs the _step coroutine where the body of the behaviour is called. """

        self.agent._alive.wait()
        try:
            await self.on_start()
        except Exception as e:
            logger.error("Exception running on_start in behaviour {}: {}".format(self, e))
            self.kill(exit_code=e)
        await self._step()
        self._is_done.clear()