빌보는 대(大)고블린에게 붙잡혀 있는 난쟁이들에게 메시지를 보내려 합니다. 메시지를 전달할 방법은 있지만, 오크들이 중간에 가로챌 위험이 있습니다. 그래서 빌보는 (머리가 좋기로 유명하지 않은 오크들을 속이기에는 충분한) 아주 간단한 방식으로 메시지를 암호화하기로 합니다.
구체적으로, 메시지에 담긴 각 단어의 글자들을 오른쪽으로 일정한 수만큼 밀고, 끝에서 넘친 글자는 앞으로 돌아오게(순환) 합니다. 예를 들어 "oakenshield"를 3만큼 밀면 "eldoakenshi"가 되고, "gandalf"를 2만큼 밀면 "lfganda"가 됩니다. 각 단어는 서로 다른 수만큼 밀리며, 미는 수는 항상 그 단어의 글자 수보다 작습니다.
빌보가 메시지를 암호화하도록 돕는 프로그램을 작성하세요.
첫 번째 줄에 테스트 케이스의 개수 $T$ ($T < 100$)가 주어집니다. 이어지는 각 줄에는 하나의 테스트 케이스가 주어지며, 단어 $w$(문자열)와 정수 $n$이 공백으로 구분됩니다. $0 < n < |w|$ 임이 보장됩니다.
각 테스트 케이스마다 한 줄씩, 단어 $w$의 모든 글자를 오른쪽으로 $n$칸 밀고(끝에서 넘친 글자는 앞으로 순환) 만들어진 단어를 다음 형식으로 출력하세요.
Shifting w by n positions gives us: result
여기서 w는 원래 단어, n은 민 칸 수, result는 밀어서 얻은 단어입니다.