#include <bits/stdc++.h>
using namespace std;
void read(int& x) {
  bool fu = 0;
  char c;
  for (c = getchar(); c <= 32; c = getchar())
    ;
  if (c == '-') fu = 1, c = getchar();
  for (x = 0; c > 32; c = getchar()) x = x * 10 + c - '0';
  if (fu) x = -x;
};
char getc() {
  char c;
  for (c = getchar(); c <= 32; c = getchar())
    ;
  return c;
}
const int N = 100010;
int n, i, j, k, l, p, x, a[N], s0, s1;
int b[N];
int main() {
  read(n);
  for (i = 1; i <= n; i++) read(a[i]);
  for (i = 1; i <= n && a[i] == 0; i++) printf("0\n");
  for (; i <= n; i = j + 1) {
    for (j = i; j <= n && a[j] > 0; j++)
      ;
    j--;
    if (j + 1 > n) {
      for (k = i; k <= n; k++) printf("pushStack\n");
      break;
    }
    b[0] = 0;
    for (k = i; k <= j; k++) b[++b[0]] = a[k];
    sort(b + 1, b + 1 + b[0]);
    if (b[0] == 0)
      printf("0\n");
    else if (b[0] == 1)
      printf("pushStack\n1 popStack\n");
    else if (b[0] == 2)
      printf("pushStack\npushQueue\n2 popStack popQueue\n");
    else {
      p = b[b[0] - 2];
      for (k = i; k <= j; k++)
        if (a[k] >= p) break;
      s0 = k;
      for (k = j; k >= i; k--)
        if (a[k] >= p) break;
      s1 = k;
      if (s1 <= s0) printf("- -\n");
      for (k = i; k <= j; k++)
        if (k == s1)
          printf("pushStack\n");
        else if (k == s0)
          printf("pushQueue\n");
        else if (a[k] >= p)
          printf("pushFront\n");
        else if (k < s1)
          printf("pushStack\n");
        else
          printf("pushQueue\n");
      printf("3 popStack popQueue popFront\n");
    }
    j++;
  }
  scanf("\n");
  return 0;
}
