#include <bits/stdc++.h>
using namespace std;
struct node {
  int a, x, y;
  node(){};
  node(int A, int X, int Y) {
    a = A;
    x = X;
    y = Y;
  }
  bool operator<(const node t) const { return a < t.a; }
};
int i, n, q;
set<node> s;
int main() {
  ios::sync_with_stdio(0);
  cin >> n >> q;
  s.insert(node(0, 0, 0));
  for (i = 1; i <= q; i++) {
    int x, y;
    char c;
    cin >> x >> y >> c;
    set<node>::iterator it = s.upper_bound(node(x, 0, 0));
    it--;
    node tmp = *it;
    if (x == it->a) {
      printf("0\n");
      continue;
    }
    if (c == 'U') {
      printf("%d\n", y - it->y);
      s.insert(node(x, x, it->y));
    } else {
      printf("%d\n", x - it->x);
      s.erase(it);
      s.insert(node(tmp.a, tmp.x, y));
      s.insert(node(x, tmp.x, tmp.y));
    }
  }
  return 0;
}
