#include "bits/stdc++.h" #define REP(i, n, N) for(ll i=(n); i<(N); i++) #define RREP(i, n, N) for(ll i=(N-1); i>=n; i--) #define CK(n, a, b) ((a)<=(n)&&(n)<(b)) #define ALL(v) (v).begin(),(v).end() #define MCP(a, b) memcpy(b,a,sizeof(b)) #define p(s) cout<<(s)<> typedef long long ll; using namespace std; const ll mod = 1e9 + 7; const ll inf = 1e18; vector vt[25]; int main() { int N,num; cin>>N; REP(i,0,N){ cin>>num; if(num==0){ int n,m; cin>>n>>m; string B; REP(j,0,m){ cin>>B; vt[n].push_back(B); } sort(ALL(vt[n])); }else if(num==1){ string B; cin>>B; int ans=-1; REP(j,1,21){ if(binary_search(ALL(vt[j]),B)){ auto itr = lower_bound(ALL(vt[j]),B); vt[j].erase(itr); ans=j; break; } } p(ans); }else{ int C; cin>>C; vt[C].clear(); } } return 0; }