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