Задачі
Система миттєвого обміну повідомленнями
Система миттєвого обміну повідомленнями
Крілик Стью для спілкування з кріликом Роджером використовує "складну" систему шифрування -- а щоб ніхто не здогадався.
Усі повідомлення складаються виключно з малих латинських букв: \textbf{a}..\textbf{z}. Для шифрування повідомлень використовують такий алгоритм: Один крок шифрування -- взяти початкове повідомлення і кожну букву замінити трійкою букв, перша і третя з яких дорівнюють початковій, а друга -- наступній в алфавіті після початкової (після останньої в алфавіті знову йде перша). Наприклад, буква \textbf{g} шифрується \textbf{ghg}, а букви \textbf{z} -- \textbf{zaz}, \textbf{a} -- \textbf{aba} тощо. Таким чином повідомлення \textbf{hello} перетворюється на \textbf{hihefelmllmlopo}.
Для шифрування початкове повідомлення перетворили \textbf{k} разів, і Стью стало цікаво, скільки різних букв потрібно для того, щоб набрати частину зашифрованого повідомлення від \textbf{a}-ї до \textbf{b}-ї букви включно (якщо нумерувати від нуля).
\InputFile
У першому рядку -- єдине число \textbf{T} (\textbf{1} ≤ \textbf{T} ≤ \textbf{1000}), кількість тестів. Кожен тест складається з двох рядків. Перший з них містить непорожній рядок букв -- початкове повідомлення, що складається не більше ніж зі \textbf{100} малих латинських букв. Другий рядок містить три цілих числа, відокремлених пропусками: \textbf{k}, \textbf{a}, \textbf{b} -- кількість ітерацій алгоритму, початок і кінець відрізка відповідно (\textbf{0} ≤ \textbf{k} ≤ \textbf{15}, \textbf{a} ≤ \textbf{b}, \textbf{0} ≤ \textbf{a}, \textbf{b} < \textbf{довжини зашифрованого повідомлення}).
\OutputFile
Для кожного тесту в окремий рядок виведіть відповідь.
Вхідні дані #1
4 a 1 0 0 a 1 0 1 ab 1 0 3 ab 1 0 4
Вихідні дані #1
1 2 2 3