2.转圈游戏 

2.转圈游戏 

Description

暑假开始了,夏令营的日子也来临了。住进宿舍的第一天晚上,小A和新认识的同学们在宿舍里玩起了转圈游戏。编号为0~n-1的n个小伙伴围成一圈,他们坐的位置也被编号为了0~n-1。最初,第0号小伙伴在第0号位置,第1号小伙伴在第1号位置......依此类推。
游戏规则如下:每一轮第0号位置上的小伙伴顺时针走到第m号位置,第1号位置小伙伴走到第m+1号位置....依此类推,第n−m号位置上的小伙伴走到第0号位置,第n-m+1 号位置上的小伙伴走到第1号位置......第n-1号位置上的小伙伴顺时针走到第m-1号位置。
这个游戏实在太好玩了,以至于小A和他的小伙伴们玩了10^k轮,请问x号小伙伴最后走到了第几号位置。

Format

Input

从文件circle.in中读取数据。
第一行有四个由单个空格分隔的整数n,m,k,x,意义如题所示。

Output

输出到文件circle.out中去。
仅一行一个整数,表示10^k轮后第x号小伙伴的最终位置编号。

Sample 1

Input

10 3 4 5

Output

5

Limitation

1s, 128MiB for each test case.
对于30%的数据,0 < k < 7;
对于80%的数据,0 < k < 10^7;
对于100%的数据,1 <n < 1,000,000,0 < m < n,0 ≤ x < n,0 < k < 10^9.