#include <bits/stdc++.h>
using namespace std;
vector<pair<int, int> > St;
vector<int> En;
int N, M, Pos[300005];
long long T;
int main() {
  scanf("%d%d%I64d", &N, &M, &T);
  long long r = 0;
  for (int i = 1; i <= N; i++) {
    static char S[10];
    int s, fin;
    scanf("%d%s", &s, S);
    s--;
    St.push_back(pair<int, int>(s, i));
    if (S[0] == 'L') {
      fin = (s - T % M + M) % M;
      r -= (T + fin - s) / M;
    } else {
      fin = (s + T % M) % M;
      r += (T + s - fin) / M;
    }
    En.push_back(fin);
    r = (r % N + N) % N;
  }
  sort(En.begin(), En.end());
  sort(St.begin(), St.end());
  for (int i = 0; i < St.size(); i++) Pos[St[i].second] = En[(i + r) % N];
  for (int i = 1; i <= N; i++) printf("%d%c", Pos[i] + 1, i == N ? '\n' : ' ');
  return 0;
}
