B. Запросы на строке
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам даны строка s и m запросов. Каждый запрос задаётся парой индексов li, ri и целым числом ki, и означает, что подстроку s[li... ri] нужно ki раз циклически сдвинуть вправо. Запросы нужно обрабатывать последовательно, друг за другом.

Циклический сдвиг вправо обозначает перемещение последнего символа на место первого и сдвиг всех остальных символов направо на одну позицию.

Например, если исходная строка s равна abacaba, то в случае запроса l1 = 3, r1 = 6, k1 = 1 получится строка abbacaa, если же после этого обработать запрос l2 = 1, r2 = 4, k2 = 2, то в результате получится строка baabcaa.

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

В первой строке находится строка s (1 ≤ |s| ≤ 10 000) — исходная строка, состоящая из строчных букв английского алфавита. Запись |s| обозначает длину строки s.

Во второй строке находится число m (1 ≤ m ≤ 300) — количество запросов циклического сдвига.

В i-й из следующих m строк находится тройка чисел li, ri и ki (1 ≤ li ≤ ri ≤ |s|, 1 ≤ ki ≤ 1 000 000) — параметры i-го запроса.

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

Выведите строку, которая получится после обработки всех m запросов.

Примеры
Входные данные
abacaba
2
3 6 1
1 4 2
Выходные данные
baabcaa
Примечание

Пример разобран в условии задачи.