#include <bits/stdc++.h>
using namespace std;
int main() {
  long long w, h, n;
  cin >> w >> h >> n;
  set<long long> vertical;
  set<long long> horizontal;
  map<long long, long long> vert;
  map<long long, long long> hori;
  vert[w] = 1;
  hori[h] = 1;
  vertical.insert(0);
  vertical.insert(w);
  horizontal.insert(0);
  horizontal.insert(h);
  for (int i = int(0); i < int(n); i++) {
    char c;
    long long x;
    cin >> c >> x;
    if (c == 'V') {
      long long low = *(--vertical.lower_bound(x));
      long long high = *(vertical.upper_bound(x));
      vertical.insert(x);
      vert[high - low]--;
      if (vert[high - low] == 0) vert.erase(high - low);
      vert[high - x]++;
      vert[x - low]++;
    } else {
      long long low = *(--horizontal.lower_bound(x));
      long long high = *(horizontal.upper_bound(x));
      horizontal.insert(x);
      hori[high - low]--;
      if (hori[high - low] == 0) hori.erase(high - low);
      hori[high - x]++;
      hori[x - low]++;
    }
    cout << (hori.rbegin()->first) * (vert.rbegin()->first) << endl;
  }
  return 0;
}
