#include<stdio.h>
#include<stdlib.h>
#include<string.h>
 
 typedef struct Node{
        int key;
        struct Node *next;
        struct Node *prev;
        }*NodePointer;
 
 

 
 NodePointer nil;
 
/*
 リストの検索
*/
 NodePointer listSearch(int key){
         NodePointer i;
// 初めから最後まで探す
         for(i=nil;i->next!=nil;i=i->next){
                 if(i->next->key==key)return i->next;
                 }
        return NULL;
        }
 
/*
 新規ノードの作成
*/
 void init(){
        nil=malloc(sizeof(struct Node));
// 新規ノードのリンクを初期化
        nil->next=nil;
        nil->prev=nil;
        }
 
 void printList(){
        NodePointer cur=nil->next;
        int isf=1;
        while(1){
// 初めから最後まで探す
              if(cur==nil)break;
              if(isf==0)printf(" ");
              printf("%d",cur->key);
              cur=cur->next;
              isf=0;
              }
        printf("\n");
        }
 
 void deleteNode(NodePointer t){
        t->next->prev=t->prev;
        t->prev->next=t->next;
        free(t);
        }
     
 void deleteFirst(){
        NodePointer t=nil->next;
        if(t==nil)return;
        deleteNode(t);
        }
  
 void deleteLast(){
         NodePointer i;
         i=nil->prev;
         deleteNode(i);
        }
 
 void delete(int key){
         NodePointer i;
         i=listSearch(key);
         if(i!=NULL)deleteNode(i);
        }
 
 void insert(int key){
        NodePointer x;
        x=malloc(sizeof(struct Node));
        x->key=key;
        x->next=nil->next;
        nil->next->prev=x;
        nil->next=x;
        x->prev=nil;
        }
 
 int main(){
        int key,n,i;

        char com[20];

        scanf("%d",&n);
        init();
        for(i=0;i<n;i++){
                scanf("%s%d",com,&key);
                if(com[0]=='i'){insert(key);}
                else if(com[0]=='d'){
                          if(strlen(com)>6){
                                 if(com[6]=='F')deleteFirst();
                                 else if(com[6]=='L')deleteLast();
                                 }
                           else{delete(key);}
                           
                           }
                }
        printList();
        return 0;
        }
