class CommandQueue implements Iterable<Pair<Command, Integer>> {

    public Pair<Command, Integer> first() {
        if (size() == 0) {
            return null;
        }

        return queue.peek();
    }

    public  CommandQueue();
    public  CommandQueue(CommandQueue commandQueue);

}