#include <bits/stdc++.h>
using namespace std;
unordered_map<int, unordered_map<int, int> > mp;
void add(int v, int t, int val) {
  for (; t < 1e9 + 100; t += t & -t) {
    mp[v][t] += val;
  }
}
int ans(int v, int t) {
  int ret = 0;
  for (; t > 0; t &= t - 1) ret += mp[v][t];
  return ret;
}
int main() {
  ios::sync_with_stdio(0);
  int n;
  cin >> n;
  for (int i = 0; i < n; i++) {
    int a, t, x;
    cin >> a >> t >> x;
    if (a == 1) {
      add(x, t, 1);
    } else if (a == 2) {
      add(x, t, -1);
    } else {
      cout << ans(x, t) << endl;
    }
  }
}
