#include <stdio.h>
#include <string.h>
#define M 1046527
#define L 14

char H[M][L];
int getChar(char ch){
  switch(ch){
  case 'A':
	return 1;
  case 'C':
	return 2;
  case 'G':
	return 3;
  case 'T':
	return 4;
  default :
	return 0;
  }
}
long long getKey(char str[]){
  int i;
  long long weight=1;
  long long key=0;
  for(i=0; i<strlen(str); ++i){
	key+=getChar(str[i])*weight;
	weight*=5;
  }
  return key;
}
int h1(long long key){
  return key % M;
}
int h2(long long key){
  return (1+(key % (M-1)));
}

int insert(char str[]){
  long long key;
  key=getKey(str);
  int i, h;
  for(i=0; i<M; ++i){
	h=(h1(key)+i*h2(key));
	if(strcmp(H[h], str)==0)
	  return 1;
	else if(strlen(H[h])==0){
	  strcpy(H[h], str);
	  return 0;
	}
  }
  return 0;
}
int find(char str[]){
  long long key;
  key=getKey(str);
  int i, h;
  for(i=0; i<M; ++i){
	h=(h1(key)+i*h2(key));
	if(strcmp(H[h], str)==0)
	  return 1;
	else if(strlen(H[h])==0)
	  return 0;
  }
  return 0;
}
int main(){
  int n;
  char line[100];  
  int i;
  char *str_ptr;
  fgets(line, sizeof(line), stdin);
  sscanf(line, "%d", &n);
  for(i=0; i<M; ++i){
	H[i][0]='\0';
  }
  for(i=0; i<n; ++i){
	fgets(line, sizeof(line), stdin);
	if(line[strlen(line)-1]=='\n')
	  line[strlen(line)-1]='\0';
	str_ptr=strtok(line, " ");
	if(strcmp(str_ptr, "insert")==0){
	  str_ptr=strtok(NULL, " ");
	  insert(str_ptr);
	}else if(strcmp(str_ptr, "find")==0){
	  str_ptr=strtok(NULL, " ");
	  if(find(str_ptr)==1)
		printf("yes\n");
	  else if(find(str_ptr)==0)
		printf("no\n");
	}
	  
  }
  return 0;
}

