#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100005 * 3, INF = 2 * (int)1e9;
int w, h, n;
set<pair<int, int> > W, H;
set<int> wco, hco;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> w >> h >> n;
  W.insert(make_pair(-w, 0));
  wco.insert(0);
  wco.insert(w);
  H.insert(make_pair(-h, 0));
  hco.insert(0);
  hco.insert(h);
  while (n--) {
    string s;
    int v;
    cin >> s >> v;
    if (s[0] == 'H') {
      set<int>::iterator it = hco.lower_bound(v);
      int R = *it;
      it--;
      int L = *it;
      H.erase(make_pair(L - R, L));
      H.insert(make_pair(L - v, L));
      H.insert(make_pair(v - R, v));
      hco.insert(v);
    } else {
      set<int>::iterator it = wco.lower_bound(v);
      int R = *it;
      it--;
      int L = *it;
      W.erase(make_pair(L - R, L));
      W.insert(make_pair(L - v, L));
      W.insert(make_pair(v - R, v));
      wco.insert(v);
    }
    cout << ((long long)(W.begin()->first)) * (H.begin()->first) << "\n";
  }
  return 0;
}
