Откат

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

Сергей работает системным администратором в очень крупной компании. Естественно, в круг его обязанностей входит резервное копирование информации, хранящейся на различных серверах и <<откат>> к предыдущей версии в случае возникновения проблем.

В данный момент Сергей борется с проблемой недостатка места для хранения информации для восстановления. Он решил перенести часть информации на новые сервера. К сожалению, если что-то случится во время переноса, он не сможет произвести откат, поэтому процедура переноса должна быть тщательно спланирована.

На данный момент у Сергея хранятся nn точек восстановления различных серверов, пронумерованных от 1 до nn. Точка восстановления с номером ii позволяет произвести откат для сервера a_ia\_i. Сергей решил разбить перенос на этапы, при этом на каждом этапе в случае возникновения проблем будут доступны точки восстановления с номерами l,l+1,,rl, l + 1, \ldots, r для некоторых ll и rr.

Для того, чтобы спланировать перенос данных оптимальным образом, Сергею необходимо научиться отвечать на запросы: для заданного ll, при каком минимальном rr в процессе переноса будут доступны точки восстановления не менее чем kk различных серверов.

Помогите Сергею.

입력

Первая строка входного файла содержит два целых числа nn и mm, разделенные пробелами --- количество точек восстановления и количество серверов (1n,m100,0001 \le n, m \le 100\\,000). Вторая строка содержит nn целых чисел a_1,a_2,,a_na\_1, a\_2, \ldots, a\_n --- номера серверов, которым соответствуют точки восстановления (1a_im1 \le a\_i \le m).

Третья строка входного файла содержит qq --- количество запросов, которые необходимо обработать (1q100,0001 \le q \le 100\\,000). В процессе обработки запросов необходимо поддерживать число~pp, исходно оно равно~0. Каждый запрос задается парой чисел x_ix\_i и y_iy\_i, используйте их для получения данных запроса следующим образом: l_i=((x_i+p)modn)+1l\_i = \left((x\_i + p) \bmod n\right) + 1, k_i=((y_i+p)modm)+1k\_i = \left((y\_i + p) \bmod m\right) + 1 (1l_i,x_in1 \le l\_i,x\_i \le n, 1k_i,y_im1\le k\_i, y\_i \le m). Пусть ответ на ii-й запрос равен~rr. После выполнения этого запроса, следует присвоить pp значение rr.

출력

На каждый запрос выведите одно число --- искомое минимальное rr, либо 0, если такого rr не существует.