#include <stdio.h>
#include <stdlib.h>
 
typedef struct node{
  struct node *prev;
  int key;
  struct node *next;
} D;
 
D *head;
 
void insert(int v);
void delete(D *v);
void find(int v);
 
int main()
{
  int i,n,v;
  char cmd[16];
  D *temp;
   
  head=malloc(sizeof(D));
  head->key=-1;
  head->prev=head;
  head->next=head;
   
  scanf("%d",&n);
  for(i=0;i<n;i++){
    scanf("%s",cmd);
    if(cmd[0]=='i'){
      scanf("%d",&v);
      insert(v);
    }
    else if(cmd[6]=='F') delete(head->next);
    else if(cmd[6]=='L') delete(head->prev);
    else{
      scanf("%d",&v);
      find(v);
    }
  }
 
  temp=head->next;
  while(temp->next->key!=-1){
    printf("%d ",temp->key);
    temp=temp->next;
  }
  if(temp->key!=-1) printf("%d\n",temp->key);
   
  return 0;
}
 
void insert(int v){
 
  D *temp;
   
  temp=malloc(sizeof(D));
  temp->key=v;
  temp->next=head->next;
  temp->prev=head;
 
  head->next=temp;
  temp->next->prev=temp;
}
 
void delete(D *v){
 
  v->prev->next=v->next;
  v->next->prev=v->prev;
   
  free(v);
}
 
void find(int v){
   
  D *temp;
  temp=head;
   
  while(temp->next->key!=-1){
    temp=temp->next;
    if(temp->key==v){
      delete(temp);
      break;
    }
  }
}