#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define L 13
#define SIZE 1000000

typedef struct node *link;
struct node{
	char str[L];
	link next;
};
link map[SIZE];

int hash(char *str){
	int i,h=0;
	for(i=0;str[i]!='\0';i++)
		h=(h*137+str[i])%SIZE;
	return h;
}

link NEW(char *str, link next){ 
	link x = malloc(sizeof(*x));
	strcpy(x->str,str); 
	x->next = next;     
	return x;                         
}


void add_hash(char *str){
	int h=hash(str);
	map[h]=NEW(str,map[h]);
}

void remove_hash(char *str){
	int h=hash(str);
	link t,temp;
	//for(t=map[h];t!=NULL;t=t->next);
	
	if(!strcmp(str,map[h]->str)){
		map[h]=NULL;
	}else{
		for(t=map[h];t->next!=NULL;t=t->next){
			if(!strcmp(t->next->str,str)){
				temp=t->next;
				t->next=temp->next;
				break;
			}
		}
	}
}

int find_hash(char *str){
	int h=hash(str);
	link t;
	for(t=map[h];t!=NULL;t=t->next){
		if(!strcmp(str,t->str)){
			return 1;
		}
	}
	return 0;
}

int main(void){
	int n,i;
	char str[L];
	char c[L];
	
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%s %s",c,str);
		
		if(!strcmp(c,"insert")){
			add_hash(str);
		}else if(!strcmp(c,"remove")){
			remove_hash(str);
		}else if(!strcmp(c,"find")){
			if(find_hash(str)==1)printf("yes\n");
			else printf("no\n");
		}
	}
	
	return 0;
}