Roll provided date backward to next offset only if not on offset.

def rollback(self, dt):
        """
        Roll provided date backward to next offset only if not on offset.
        """
        if not self.onOffset(dt):
            businesshours = self._get_business_hours_by_sec
            if self.n >= 0:
                dt = self._prev_opening_time(
                    dt) + timedelta(seconds=businesshours)
            else:
                dt = self._next_opening_time(
                    dt) + timedelta(seconds=businesshours)
        return dt