Задача C. Time

Входной файл:Стандартный вход   Ограничение времени:1 сек
Выходной файл:Стандартный выход   Ограничение памяти:512 Мб

Условие

Требуется реализовать на языке Python класс Time.

У класса должен быть следующий интерфейс:

class Time:
# Конструктор, принимающий четыре целых числа: часы, минуты, секунды и миллисекунды.
# В случае, если передан отрицательный параметр, вызвать исключение ValueError.
# После конструирования, значения параметров времени должны быть корректными:
# 0 <= GetHour() <= 23
# 0 <= GetMinute() <= 59
# 0 <= GetSecond() <= 59
# 0 <= GetMillisecond() <= 999
def __init__(self, hours=0, minutes=0, seconds=0, milliseconds=0):
pass
def GetHour(self):
pass
def GetMinute(self):
pass
def GetSecond(self):
pass
def GetMillisecond(self):
pass
# Прибавляет указанное количество времени к текущему объекту.
# После выполнения этой операции параметры времени должны остаться корректными.
def Add(self, time):
pass
# Оператор str должен представлять время в формате
# HH:MM:SS.milliseconds
def __str__(self):
pass

Формат выходных данных

Код решения должен содержать только определение и реализацию класса.

Примеры тестов

Стандартный вход Стандартный выход
1
time = Time(25, 11, 12, 1)
print(str(time))
time.Add(Time(0, 0, 0, 1010))
print(str(time))
01:11:12.1
01:11:13.11

0.055s 0.010s 13