<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def make_all_day(self):
 """Transforms self to an all-day event. The event will span all the days from the begin to the end day. """

        if self.all_day:
            # Do nothing if we already are a all day event
            return

        begin_day = self.begin.floor('day')
        end_day = self.end.floor('day')

        self._begin = begin_day

        # for a one day event, we don't need a _end_time
        if begin_day == end_day:
            self._end_time = None
        else:
            self._end_time = end_day + timedelta(days=1)

        self._duration = None
        self._begin_precision = 'day'