#define STRLEN 15
#define N 1046527
#include <stdio.h>
#include <string.h>

char dict[N][STRLEN];

//将字母转化为数字
int lton(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;
    }    
    else {
        return -1;
    }
}

long long getKey(char str[]) {
    long long sum = 0;
    int p = 1;
    for (int i = 0; i < strlen(str); i++) {
        sum += p * lton(str[i]);
        p *= 5;
    }
    return sum;
}

int h1(long long key) {
    return key % N;
}

//这里为什么要模 N-1 呢
int h2(long long key) {
    return 1 + (key % (N - 1));
}

int h(long long key, int i) {
    return (h1(key) + i * h2(key)) % N;
}

int insert(char str[]) {
    long long key = getKey(str);
    int i = 0;
    while (1) {
        int hash = h(key, i);
        if (strlen(dict[hash]) == 0) {
            strcpy(dict[hash], str);
            return 0;
        }
        i++;
    }
    return 0;
}

int find(char str[]) {
    int i = 0;
    long long key = getKey(str);
    while (1) {
        int hash = h(key, i);
        if (strcmp(dict[hash], str) == 0) {
            return 1;
        }
        else if (strlen(dict[hash]) == 0) {
            return 0;
        }
        i++;
    }
    return 0;
}

int main() {
    char com[9], str[STRLEN];
    int n = 0;
    // 初始化
    for (int i = 0; i < N; i++) {
        dict[i][0] = '\0';
    }
    scanf("%d", &n);
    for (int i = 0 ; i < n; i++) {
        scanf("%s %s", com, str);
        if (com[0] == 'i') {
            insert(str);
        }
        else {
            if (find(str)) {
                printf("yes\n");
            }
            else {
                printf("no\n");
            }
        }
    }
    return 0;
}
