

#include <iostream>
#include <cstdio>
#include <string>
#include <algorithm>
#include <deque>
#include <ctime>
using namespace std;

char buf[256];
FILE* in, *out;
int n;
char str[10];
int value;
deque<int> l;
deque<int> r;

int main()
{


        freopen("kenobi.in","r", stdin);
		freopen("kenobi.out","w", stdout);
		

        scanf("%d", &n);

        for (int i = 0; i < n; i++) {
            scanf("%s %d", str, &value);

            switch (str[0]) {
                case 'a':
                    r.push_back(value);
                    break;
                case 't':
                    r.pop_back();
                    break;
                case 'm':
                    deque<int> tmp = l;
                    l = r;
                    r = tmp;
                    break;
            }
            if (l.size() > r.size()) {
                r.push_front(l.back());
                l.pop_back();
            } else if (l.size() < r.size() -1)  {
                l.push_back(r.front());
                r.pop_front();
            }
        }
        printf("%d\n", l.size()+r.size());
        while (!l.empty()) {
            printf("%d ", l.front());
            l.pop_front();
        }
        while (!r.empty()) {
            printf("%d ", r.front());
            r.pop_front();
        }
        

    return 0;
}

