밥과 앨리스는 새로운 암호화 방식을 사용하기로 했다. 이 방식은 공개키 암호가 아니라 두 사람만 아는 비밀 키에 기반한다.
비밀 키는 1 이상 n 이하의 서로 다른 정수 n개로 이루어진 수열 a1,a2,…,an 이다. 즉 a는 1부터 n까지의 순열이다.
암호화는 다음 원리를 따른다. 메시지를 키 아래에 나란히 적어 메시지의 각 문자를 키의 각 숫자와 위치가 맞도록 정렬한다. 메시지에서 위치 i에 있는 문자는 암호화된 메시지의 위치 ai로 옮겨진다. 이렇게 얻은 암호문에 같은 과정을 다시 적용하며, 이를 총 k번 반복한다. k번째 암호화가 끝나면 그 결과를 주고받는다.
메시지의 길이는 항상 n 이하이다. 메시지가 n보다 짧으면 길이가 정확히 n이 되도록 끝에 공백을 채운다.
키와 여러 개의 (반복 횟수 k, 메시지) 쌍이 주어질 때, 각 메시지를 k번 암호화한 결과를 출력하는 프로그램을 작성하라.
입력은 여러 개의 블록으로 이루어진다.
각 블록의 첫 줄에는 정수 n (0<n≤200) 이 주어진다. 다음 줄에는 서로 다르며 각각 1 이상 n 이하인 n개의 정수, 즉 키가 공백으로 구분되어 주어진다. 그 다음 줄들에는 정수 k와 아스키 문자로 이루어진 메시지가 공백 하나로 구분되어 주어진다. 각 줄은 개행으로 끝나며, 이 개행 문자는 메시지에 포함되지 않는다. 블록은 숫자 0 하나만 있는 줄로 끝난다.
마지막 블록 다음에는 숫자 0 하나만 있는 줄이 한 번 더 나오며, 이는 입력의 끝을 뜻한다.
k는 매우 클 수 있다.
각 (반복 횟수, 메시지) 쌍마다 암호화된 메시지를 한 줄에 하나씩 출력한다. 출력되는 모든 줄은 길이가 정확히 n이며, 채워 넣은 메시지 끝의 공백까지 그대로 유지한다. 여러 블록의 결과는 입력에 나온 순서대로 이어서 출력하며, 블록 사이에 빈 줄을 넣지 않는다.