#include<stdio.h>
#include<string.h>

#define M 1128979
#define S 20

char T[M][S];

void insert(long num ,char ch[]){
    int i;
    int h1 = num % M;
    int h2 = 1 + (num % (M-1));
    int h;

    i=0;
    while(i<M){
        h = (h1 + i * h2)%M;
        if(T[h][0]=='\0'){
            strcpy(T[h],ch);
            break;
        }
        i++;
    }
}

int find(long num,char ch[]){
    int i,f=0;
    int h1 = num % M;
    int h2 = 1 + num%(M-1);
    int h;

    i=0;
    while(i < M){
        h = (h1 + i * h2) % M;
        if(strcmp(T[h],ch) == 0) return 1;
        else if(strlen(T[h]) == 0) return 0;
        i++;
    }
    return 0;
}

int main(){
    int n,j,i;
    long num,p;
    char ch[12];
    char com[7];

    for(i=0; i<M; i++){
        for(j=0; j<S; j++){
            T[i][j]='\0';
        }
    }

    scanf("%d",&n);
    for(i=0; i<n; i++){
        scanf("%s",com);
        scanf("%s",ch);
        num = 0;
        p=1;
        for(j=0; j<strlen(ch); j++){
            if(ch[j] == 'A'){
                num += 1*p;
            }else if(ch[j] == 'C'){
                num += 2*p;
            }else if(ch[j] == 'G'){
                num += 3*p;
            }else if(ch[j] == 'T'){
                num += 4*p;
            }
            p *= 3;
        }

        if(!strcmp("insert",com)){
            insert(num,ch);
        }else if(!strcmp("find",com)){
            if(find(num,ch)){
                printf("yes\n");
            }else{
                printf("no\n");
            }
        }
    }
    return 0;
}


