A. Страницы
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Пользователь ainta занимается созданием веб-сайта. Сегодня он разрабатывает навигацию по страницам сайта. Сайт ainta состоит из n страниц, пронумерованных целыми числами от 1 до n. Предположим, что сейчас посетитель сайта находится на p-ой странице, тогда навигация будет выглядеть следующим образом:

<< p - k p - k + 1 ... p - 1 (p) p + 1 ... p + k - 1 p + k >>

Когда посетитель кликает кнопку "<<", он переходит на страницу 1; когда посетитель кликает кнопку ">>", он переходит на страницу n. Если посетитель кликает некоторое число, он переходит на соответствующую страницу.

Чтобы навигация по сайту выглядела более презентабельно, требуется, чтобы выполнялись условия:

  • Если страница номер 1 отображается в навигации, то кнопку "<<" отображать не надо.
  • Если страница номер n отображается в навигации, то кнопку ">>" отображать не надо.
  • Если номер страницы меньше 1 или больше n, ее в навигации отображать не надо.
 

Вам заданы числа n, k, p. Помогите ainta, напишите программу, которая выведет строку навигации по заданным параметрам. Обратите внимание на тестовые примеры для лучшего понимания условия.

Входные данные

В первой и единственной строке содержатся три целых числа n, p, k (3 ≤ n ≤ 100; 1 ≤ p ≤ n; 1 ≤ k ≤ n)

Выходные данные

Выведите надлежащую строку навигации. Следуйте формату вывода из тестовых примеров.

Примеры
Входные данные
17 5 2
Выходные данные
<< 3 4 (5) 6 7 >> 
Входные данные
6 5 2
Выходные данные
<< 3 4 (5) 6 
Входные данные
6 1 2
Выходные данные
(1) 2 3 >> 
Входные данные
6 2 2
Выходные данные
1 (2) 3 4 >>
Входные данные
9 6 3
Выходные данные
<< 3 4 5 (6) 7 8 9
Входные данные
10 6 3
Выходные данные
<< 3 4 5 (6) 7 8 9 >>
Входные данные
8 5 4
Выходные данные
1 2 3 4 (5) 6 7 8