#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct Node {
    char song[101];
    struct Node *next;
} Node;

Node* insertEnd(Node* head, char *song) {
    Node* newNode = (Node*)malloc(sizeof(Node));
    strcpy(newNode->song, song);
    if (!head) {
        newNode->next = newNode;
        return newNode;
    }
    Node* temp = head;
    while (temp->next != head)
        temp = temp->next;
    temp->next = newNode;
    newNode->next = head;
    return head;
}

int deleteSong(Node **head, char *song) {
    if (!head || !*head) return -2;
    Node *curr = *head, *prev = NULL;
    do {
        if (strcmp(curr->song, song) == 0) {
            if (curr == *head) {
                if (curr->next == curr) { // Only one node
                    free(curr);
                    *head = NULL;
                    return -1;
                }
                Node *last = *head;
                while (last->next != *head)
                    last = last->next;
                last->next = curr->next;
                *head = curr->next;
                free(curr);
                return 1;
            } else {
                prev->next = curr->next;
                free(curr);
                return 1;
            }
        }
        prev = curr;
        curr = curr->next;
    } while (curr != *head);
    return 0;
}

void printList(Node* head) {
    if (!head) return;
    Node* temp = head;
    do {
        printf("%s", temp->song);
        temp = temp->next;
        if(temp != head) printf(" ");
    } while (temp != head);
    printf("\n");
}

void freeList(Node* head) {
    if (!head) return;
    Node *curr = head->next;
    while (curr != head) {
        Node* next = curr->next;
        free(curr);
        curr = next;
    }
    free(head);
}

int main() {
    int n, readcount = 0;
    if (scanf("%d", &n) != 1 || n <= 0) {
        printf("Invalid input\n");
        return 0;
    }
    Node* head = NULL;
    char song[101];
    for (int i = 0; i < n; i++) {
        if (scanf("%100s", song) != 1) {
            printf("Invalid input\n");
            freeList(head);
            return 0;
        }
        head = insertEnd(head, song);
        readcount++;
    }
    char toDelete[101];
    if (scanf("%100s", toDelete