#include <bits/stdc++.h>
using namespace std;
int main() {
  set<int> wi, hi;
  multiset<int> sizew, sizeh;
  int w, h, n;
  cin >> w >> h >> n;
  wi.insert(0);
  wi.insert(w);
  hi.insert(0);
  hi.insert(h);
  sizew.insert(w);
  sizeh.insert(h);
  for (int i = 0; i < n; i++) {
    char c;
    int x;
    cin >> c >> x;
    if (c == 'V') {
      wi.insert(x);
      auto t = wi.find(x);
      ++t;
      auto rigth = t;
      --t;
      --t;
      auto left = t;
      t++;
      sizew.insert(*t - *left);
      sizew.insert(*rigth - *t);
      int dist = *rigth - *left;
      sizew.erase(sizew.find(dist));
      cout << (long long)(*sizeh.rbegin()) * ((long long)*sizew.rbegin())
           << endl;
    } else {
      hi.insert(x);
      auto t = hi.find(x);
      ++t;
      auto rigth = t;
      --t;
      --t;
      auto left = t;
      t++;
      sizeh.insert(*t - *left);
      sizeh.insert(*rigth - *t);
      int dist = *rigth - *left;
      sizeh.erase(sizeh.find(dist));
      cout << (long long)(*sizeh.rbegin()) * ((long long)*sizew.rbegin())
           << endl;
    }
  }
  return 0;
}
