#include <string>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <map>
#include <stack>
#include <vector>
#include <queue>
#include <functional>
#include <set>
#include <iostream>
#include <deque>

using namespace std;


typedef long long int ll;


int n, i, j;

int ar[1000001];

void swapj(int arr[], int fi, int si, int d) {
    int i, temp;
    for(i = 0; i<d; i++) {
        temp = arr[fi + i];
        arr[fi + i] = arr[si + i];
        arr[si + i] = temp;
    }
}

void leftRotate(int arr[], int d, int n) {
    if(d == 0 || d == n)
        return;
    
    if(n-d == d) {
        swapj(arr, 0, n-d, d);
        return;
    }
    if(d < n-d) {
        swapj(arr, 0, n-d, d);
        leftRotate(arr, d, n-d);
    }
    else {
        swapj(arr, 0, d, n-d);
        leftRotate(arr+n-d, 2*d-n, d);
    }
}
int main () {
    
    freopen("kenobi.in", "r", stdin);
    freopen("kenobi.out", "w", stdout);
    
    scanf("%d\n", &n);
    
    char str[10];
    int value;
    for (i = 1; i <= n; i++) {
        scanf("%s %d", str, &value);
        if (str[0] == 'a') {
            ar[j++] = value;
        }
        else if (str[0] == 't') {
            j--;
        }
        else if (str[0] == 'm') {
            //rotate;
            leftRotate(ar, j/2, j);
        }
    }
    
    printf("%d\n", j);
    for (i = 0; i < j; i++) {
        printf("%d ", ar[i]);
    }
    
    
    return 0;
    
}