<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def aborting_function():
 """There is a 50% chance that this function will AbortAndRestart or complete successfully. The 50% chance simply represents a process that will fail half the time and succeed half the time. """

    import random

    logging.info('In aborting_function')

    if random.random() < .5:
        from furious.errors import AbortAndRestart

        logging.info('Getting ready to restart')

        # Raise AbortAndRestart like an Exception, and watch the magic happen.
        raise AbortAndRestart()

    logging.info('No longer restarting')