#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100005;
long long vis[MAXN], T;
int n, m, s;
void go() {
  s = s < m ? (s + T) % n : (s + (n - 1) * T) % n;
  if (!(--T)) {
    printf("%d\n", s + 1);
    exit(0);
  }
}
int main() {
  scanf("%d%d%d%lld", &n, &m, &s, &T);
  --s;
  while (T % n) go();
  vis[s] = T;
  while (true) {
    for (int i = 0; i < n; i++) go();
    if (vis[s])
      T %= vis[s] - T;
    else
      vis[s] = T;
    if (T == 0) break;
    if (T <= 1E7)
      while (true) go();
  }
  printf("%d\n", s + 1);
  return 0;
}
