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

struct a {
	int data;
	struct a *next,*prev;
};
typedef struct a *NP;

NP make1node(int, NP,NP);
NP find(int);
NP del(int);
NP insert(int);
void print(void);

NP head;
NP tail;

int main() {
	int in,status,n,i,flag=0;
	char order[12];
	NP t;
	tail = make1node(-2,NULL,head);
	head = make1node(-1,tail,NULL);
	scanf("%d", &n);
	//printf("DEBUG1\n");
	for (i = 0; i < n; i++) {
		//printf("DEBUG2\n");
		scanf("%s", order);
		//printf("%d", i + 1);
		if (strcmp(order, "insert") == 0) {
			scanf("%d", &in);
			insert(in);
			/*if (flag == 0) {
				tail->prev = head->next;
				flag = 1;
			}*/
			//printf("Insert\n");
		}
		else if (strcmp(order, "delete") == 0) {
			scanf("%d", &in);
			del(in);
			//if (head->next == NULL && flag==1) flag = 0;
			//printf("Delete\n");
		}
		else if (strncmp(order, "deleteF",7) == 0) {
			t = head->next;
			head->next = t->next;
			t->next->prev = head;
			free(t);
			//printf("DleteFirst\n");
		}
		else if (strncmp(order, "deleteL",7) == 0) {
			/*t = head;
			while (t->next->next!=NULL) {
				t = t->next;
			}
			t->next = NULL;
			*/
			
			tail->prev=tail->prev->prev;
			tail->prev->next = tail;

			//free(tail->prev);

			//printf("DeleteLast\n");
		}
		//print();
	}
	//printf("DEBUG3\n");
	print();
	return 0;
}

NP make1node(int key, NP p1,NP p2) {
	NP n;
	n = (NP)malloc(sizeof(struct a));
	n->data = key;
	n->next = p1;
	n->prev = p2;
	return n;
}

NP find(int key) {
	NP n;
	for (n = head; n->next != NULL; n = n->next) {
		if (n->next->data == key) return n;
	}
	return NULL;
}

NP insert(int key) {
	NP newnode;
	newnode = make1node(key, head->next,head);

	head->next->prev = newnode;
	head->next = newnode;

	return newnode;
}

NP del(int key) {
	NP n,delnode;

	if ((n = find(key)) != NULL) {
		delnode = n->next;
		n->next = delnode->next;
		delnode->next->prev = n;
		free(delnode);
		return n;
	}
	else return NULL;
}

void print(void) {
	NP t;
	for (t = head->next; t->next != tail; t = t->next) {
		printf("%d ", t->data);
	}
	printf("%d\n", t->data);
}
