#include<stdio.h>
#include<string.h>

void findLCP(char **string, int n) {
    if (n == 0) {
        printf("Invalid input\n");
        return;
    }
    
    char *first = strings[0];
    int len = strlen(first);
    for (int i =1; i < n; i++) {
        int j = 0;
        while (J < len && j < strlen(strings[i]) && first[j] == strings[i][j]) {
            j++;
        }
        len = j;
    }
    
    if (len == 0) {
        printf("\n");
    } else {
        for (int i = 0; i < len; i++) {
            printf("%c", first[i]);
        }
        printf("\n");
    }
} 

int main() {
    int n;
    scanf("%d", &n);
    getchar();
    
    char *strings[n];
    for (int i = 0; i < n; i++) {
        strings[i] = malloc(101 * sizeof(char));
        fgets(strings[i], 100, stdin);
        strings[i][strcspn(strings[i], "\n")] = 0;
    }
    
    findLCP(strings, n);
    
    for (int i = 0; i < n; i++) {
        free(strings[i]);
    }
    return 0;
}