class FairQueue implements BlockingQueue<E> {

   @Override
   public boolean addAll (Collection<? extends E> c)
   {
      if (c == null)
      {
         throw new NullPointerException ();
      }
      if (c == this)
      {
         throw new IllegalArgumentException ();
      }
      boolean modified = false;
      for (E e : c)
      {
         if (add (e))
         {
            modified = true;
         }
      }
      return modified;
   }

   public  FairQueue();

}