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

Сережа любит самые разные алгоритмы. Недавно он придумал новый алгоритм, на вход которому подается строка. Обозначим входную строку алгоритма как q = q1q2... qk. Алгоритм состоит из двух шагов:

  1. Найти любую непрерывную подпоследовательность (подстроку) из трех символов строки q, которая не равна ни одной из строк «zyx», «xzy», «yxz». Если q не содержит ни одной такой подпоследовательности, завершить алгоритм, иначе перейти к шагу 2.
  2. Переставить буквы в найденной подпоследовательности случайным образом, перейти к шагу 1.

Сережа считает, что алгоритм корректно работает на строке q, если существует хоть какая-то ненулевая вероятность того, что алгоритм завершится. Если же алгоритм в любом случае будет работать бесконечно долго на строке, считается, что он работает некорректно на ней.

Сережа хочет протестировать свой алгоритм. Для этого у него есть строка s = s1s2... sn, состоящая из n символов. Мальчик проводит серию из m тестов. В качестве i-го теста он подает на вход алгоритму строку slisli + 1... sri (1 ≤ li ≤ ri ≤ n). К сожалению, его реализация алгоритма работает слишком долго, поэтому Сережа обратился к вам за помощью. Для каждого теста (li, ri) определите, отработает алгоритм корректно на этом тесте или нет.

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

В первой строке содержится непустая строка s, ее длина (n) не превосходит 105. Гарантируется, что строка s состоит только из символов: 'x', 'y', 'z'.

Вторая строка содержит целое число m (1 ≤ m ≤ 105) — количество тестов. Следующие m строк содержат сами тесты. В i-ой строке записана пара целых чисел li, ri (1 ≤ li ≤ ri ≤ n).

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

Для каждого теста выведите «YES» (без кавычек), если алгоритм работает корректно на соответствующем тесте и «NO» (без кавычек) в противном случае.

Примеры
Входные данные
zyxxxxxxyyz
5
5 5
1 3
1 11
1 4
3 6
Выходные данные
YES
YES
NO
YES
NO
Примечание

В первом тесте в первом и втором тесте алгоритм всегда закончит работу за один шаг. В четвертом запросе можно получить строку «xzyx», на которой алгоритм закончит работу. В остальных запросах алгоритм работает некорректно.