#include <bits/stdc++.h>
using namespace std;
#pragma comment(linker, "/STACK:1000000000")
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  long long w, h, n;
  cin >> w >> h >> n;
  set<pair<long long, long long> > se, se1;
  se.insert(make_pair(w, w));
  se1.insert(make_pair(h, h));
  multiset<long long> ms, ms1;
  multiset<long long>::iterator it;
  ms.insert(w);
  ms1.insert(h);
  char ch;
  long long a, b, c;
  pair<long long, long long> pr;
  for (long long i = 0; i < n; ++i) {
    cin >> ch >> a;
    if (ch == 'V') {
      pr = *se.lower_bound(make_pair(a, 1));
      se.erase(pr);
      se.insert(make_pair(pr.first, pr.first - a));
      se.insert(make_pair(a, pr.second - (pr.first - a)));
      ms.erase(ms.lower_bound(pr.second));
      ms.insert(pr.first - a);
      ms.insert(pr.second - (pr.first - a));
    } else {
      pr = *se1.lower_bound(make_pair(a, 1));
      se1.erase(pr);
      se1.insert(make_pair(pr.first, pr.first - a));
      se1.insert(make_pair(a, pr.second - (pr.first - a)));
      ms1.erase(ms1.lower_bound(pr.second));
      ms1.insert(pr.first - a);
      ms1.insert(pr.second - (pr.first - a));
    }
    it = ms.end();
    --it;
    a = (*it);
    it = ms1.end();
    --it;
    cout << a * (*it) << '\n';
  }
  return 0;
}
