Поликарп очень аккуратен. Даже числовые последовательности он набирает аккуратно, не то что его одноклассники. Если он видит последовательность, в которой нет пробела после запятой, стоят два пробела подряд или присутствует еще какая-либо неаккуратность, он тут же начинает ее исправлять. Например, запись «1,2 ,3,..., 10» он исправит на «1, 2, 3, ..., 10».
В этой задаче задана строка s, которая составлена последовательной записью частей, каждая из которых может быть:
- положительным целым числом произвольной длины (лидирующие нули недопустимы),
- символом «запятая» («,»),
- символом «пробел» (« »),
- многоточием («...» — т.е. тремя точками, записанными подряд).
Поликарп хочет добавлением и удалением пробелов в строке s добиться того, чтобы:
- после каждой запятой шел ровно один пробел (если запятая является последним символом строки, то это правило к ней не применимо),
- перед каждым многоточием был ровно один пробел (если многоточие начинает строку, то это правило к нему не применимо),
- если два подряд идущих числа разделялись исключительно пробелами (одним или более), то следует оставить ровно один из них,
- других пробелов быть не должно.
Автоматизируйте труд Поликарпа — напишите программу, которая будет обрабатывать заданную строку s.