package java.util; import checkers.javari.quals.*; public interface Deque<E> extends Queue<E> { public abstract void addFirst(E a1); public abstract void addLast(E a1); public abstract boolean offerFirst(E a1); public abstract boolean offerLast(E a1); public abstract E removeFirst(); public abstract E removeLast(); public abstract E pollFirst(); public abstract E pollLast(); public abstract E getFirst() @ReadOnly; public abstract E getLast() @ReadOnly ; public abstract E peekFirst() @ReadOnly; public abstract E peekLast() @ReadOnly; public abstract boolean removeFirstOccurrence(@ReadOnly Object a1); public abstract boolean removeLastOccurrence(@ReadOnly Object a1); public abstract boolean add(E a1); public abstract boolean offer(E a1); public abstract E remove(); public abstract E poll(); public abstract E element(); public abstract E peek() @ReadOnly; public abstract void push(E a1); public abstract E pop(); public abstract boolean remove(@ReadOnly Object a1); public abstract boolean contains(@ReadOnly Object a1) @ReadOnly; public abstract int size() @ReadOnly; public abstract @PolyRead Iterator<E> iterator() @PolyRead; public abstract @PolyRead Iterator<E> descendingIterator() @PolyRead; }