Пример задачи, есть время от 10 до 20 часов, есть занятые промежутки в этом времени, скажем 12:30 - 13:00, и 16:00 - 17:30, подобные занятые интервалы могут быть в любом количестве и в любом отрезке времени, мне нужно получить не занятые, т.е. свободные промежутки времени, как это сделать?