#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define MAX 100

// Structure for double-ended queue
typedef struct {
    char containers[MAX][101];
    int front, back;
} Deque;

// Initialize deque
void initDeque(Deque *dq) {
    dq->front = -1;
    dq->back = -1;
}

// Check if deque is empty
int isEmpty(Deque *dq) {
    return dq->front == -1;
}

// Check if container name is valid (only alphabets)
int isValidName(char *name) {
    for (int i = 0; name[i] != '\0'; i++) {
        if (!isalpha(name[i])) {
            return 0;
        }
    }
    return 1;
}

// Add container to front
void addFront(Deque *dq, char *name) {
    if (isEmpty(dq)) {
        dq->front = dq->back = 0;
        strcpy(dq->containers[dq->front], name);
    } else if (dq->front > 0) {
        dq->front--;
        strcpy(dq->containers[dq->front], name);
    } else {