#include using namespace std; const int N = 1e5 + 10; int tr[N][26], idx, cnt[N]; void insert(string str) { int p = 0; for (int i = 0; i < str.size(); i++) { int u = str[i] - 'a'; if (!tr[p][u]) tr[p][u] = ++idx; p = tr[p][u]; } cnt[p]++; } int query(string str) { int p = 0; for (int i = 0; i < str.size(); i++) { int u = str[i] - 'a'; if (!tr[p][u]) return 0; p = tr[p][u]; } return cnt[p]; } int main() { int n; cin >> n; while (n--) { char op; string str; cin >> op >> str; if (op == 'I') insert(str); else printf("%d\n", query(str)); } return 0; }