#include <bits/stdc++.h>
using namespace std;
int main() {
  int W, HH, N;
  map<long long, long long> H, V;
  set<long long> h, v;
  scanf("%d %d %d ", &W, &HH, &N);
  h.insert(0);
  h.insert(HH);
  H[HH] = 1;
  v.insert(0);
  v.insert(W);
  V[W] = 1;
  for (long long i = 0; i < (N); i++) {
    char ch;
    long long a;
    ch = getchar();
    scanf("%lld", &a);
    getchar();
    if (ch == 'H') {
      h.insert(a);
      typeof(h.begin()) it = h.find(a);
      long long a1, a2;
      a1 = *(--it);
      it++;
      it++;
      a2 = *it;
      H[a2 - a1]--;
      if (H[a2 - a1] == 0) H.erase(a2 - a1);
      H[a2 - a]++;
      H[a - a1]++;
    } else {
      v.insert(a);
      typeof(v.begin()) it = v.find(a);
      long long a1, a2;
      a1 = *(--it);
      it++;
      it++;
      a2 = *it;
      V[a2 - a1]--;
      if (V[a2 - a1] == 0) V.erase(a2 - a1);
      V[a2 - a]++;
      V[a - a1]++;
    }
    printf("%lld\n", H.rbegin()->first * V.rbegin()->first);
  }
  return 0;
}
