eolymp
bolt
Try our new interface for solving problems
Problems

Переворот

Переворот

Time limit 2 seconds
Memory limit 64 MiB

Дан массив. Нужно научиться обрабатывать два типа запросов:

  • 1 L R - перевернуть отрезок [L, R];

  • 2 L R - найти минимум на отрезке [L, R].

Input data

Первая строка входного файла содержит два числа n, m (1n, m10^5). Во второй строке находится n чисел a_i(1a_i10^9) - исходный массив. Остальные m строк содержат запросы, в формате, описанном выше. Для чисел L,R выполняется ограничение (1L, Rn).

Output data

На каждый запрос типа 2 выведите ответ на него в отдельной строке.

Examples

Input example #1
10 7
5 3 2 3 12 6 7 5 10 12
2 4 9
1 4 6
2 1 8
1 1 8
1 8 9
2 1 7
2 3 6
Output example #1
3
2
2
2