#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define M 5000000

int hashfunc(int);
int h1(int);
int h2(int);
int chartoint(char);
void findhashfunc(int,char *);
int getkey(char *);

char strstack[M][12];

int main(){
  int n,i,k,key;
  char str[12],scanstr[12];
  scanf("%d",&n);
   for(i=0;i<M;i++){
      strstack[i][0]='\0';
      } 
  
  
  for(i=0;i<n;i++){
    scanf("%s",str);
    if(strcmp("insert",str)==0){
      scanf("%s",scanstr);
      key=getkey(scanstr);
      
      k=hashfunc(key);
      strcpy(strstack[k],scanstr);
     
      
     
      
    }
    else if(strcmp("find",str)==0){
      scanf("%s",scanstr);
       k=getkey(scanstr);
     
      findhashfunc(k,scanstr);
      
    }
    else exit(1);
  }
  return 0;
}
int chartoint(char c){
  if(c=='A')return 1;
  else if(c=='C')return 2;
  else if(c=='G')return 3;
  else if(c=='T')return 4;
  return 0;
}
int hashfunc(int k){
  int i=0,l,H1,H2;
  H1=h1(k);
  H2=h2(k);
  while(1){
    l=(H1+i*H2)%M;
    i++;
    if(strstack[l][0]=='\0') return l;
}
  return 0;
}
int h1(int k){
  return k%M;
}
int h2(int k){
  return 1+k%(M-1);
}
void findhashfunc(int k,char scanstr[]){
  int i=0,H1,H2,l;
  H1=h1(k);
  H2=h2(k);
  while(1){
    l=(H1+i*H2)%M;
    if(strcmp(strstack[l],scanstr)==0) {printf("yes\n");return;}
    else if(strstack[l][0]=='\0'){ printf("no\n"); return;}
    i++;
   
  }
      printf("no\n");
}
int getkey(char scanstr[])
{
  int i,p,k;
    k=0;
      p=1;
      for(i=0;i<strlen(scanstr);i++){

	k+=p*chartoint(scanstr[i]);
	p*=5;
        
      }
      return k;
}

  
    
  
  
   
  
  

