import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
//61题
//旋转链表
//思路:
//题目要求向右移动k位,反向思路:向左移动(len-k)%len位
public class leetcode {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
BufferedReader IN = new BufferedReader(new InputStreamReader(System.in));
String res;
int i = 0;
while((res = IN.readLine()) != null) {
// System.out.println(res);
String []r = res.split(",");
ListN head = new ListN(0);
ListN p = head;
while(i < r.length) {
int value = Integer.parseInt(r[i]);
ListN n = new ListN(value);
p.next = n;
p = p.next;
i++;
}
// p.next = head;
p.next = null;
res = IN.readLine();
int k = Integer.parseInt(res);
// System.out.println(head.next == null);
solve(head.next,k);
}
System.out.println("end");
}
static Scanner in = new Scanner(System.in);
public static void solve(ListN head,int k) {
ListN p = head;
int len = 1;
while(p.next != null) {
len++;
p = p.next;
}
k %= len;
// System.out.println(len);
p.next = head;
p = head;
k = len - k;
int s = 0;
while(s != k) {
p = p.next;
s++;
}
// System.out.println(k);
ListN result = p;
ListN q = result;
int count = 1;
while(count <= len) {
p = p.next;
q.next = p;
q = q.next;
count++;
}
// System.out.println(count);
p = result;
q = result;
count = 1;
while(count <= len) {
System.out.print(p.val+"->");
count++;
if(count > len)
break;
p = p.next;
}
p.next = null;
System.out.println();
p = result;
while(result != null) {
System.out.print(result.val+"->");
result = result.next;
}
}
private static class ListN {
int val;
ListN next;
ListN(int x) { val = x; }
}
}