import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
Queue<Integer> queue = new LinkedList<>();
Stack<Integer> stack = new Stack<>();
PriorityQueue<Integer> ascInt = new PriorityQueue<>();
PriorityQueue<DescInteger> descInt = new PriorityQueue<>();
/* Type your code here. */
while (scnr.hasNext()) {
boolean isQueue = true;
boolean isStack = true;
boolean isPriority = true;
queue.clear();
stack.clear();
ascInt.clear();
descInt.clear();
int n = Integer.parseInt(scnr.nextLine());
if (n == 0) {
break;
}
while (n-- > 0) {
String[] ops = scnr.nextLine().split(" ");
String op = ops[0];
int element = Integer.parseInt(ops[1]);
if ("push".equals(op)) {
queue.add(element);
stack.add(element);
ascInt.add(element);
descInt.add(new DescInteger(element));
} else {
isQueue = isQueue && !queue.isEmpty() && element == queue.poll();
isStack = isStack && !stack.isEmpty() && element == stack.pop();
isPriority = isPriority &&
((!ascInt.isEmpty() && element == ascInt.remove()) ||
(!descInt.isEmpty() && element == descInt.remove().integer) );
}
}
if (!isQueue && !isStack && !isPriority) {
System.out.println("impossible");
} else if (isQueue && !isStack && !isPriority) {
System.out.println("queue");
} else if (!isQueue && isStack && !isPriority) {
System.out.println("stack");
} else if (!isQueue && !isStack) {
System.out.println("priority queue");
} else{
System.out.println("not sure");
}
}
scnr.close();
}
}
class DescInteger implements Comparable {
int integer;
DescInteger(int integer) {
this.integer = integer;
}
@Override
public int compareTo(DescInteger o) {
return Integer.compare(o.integer, integer);
}
}