class FairQueue implements BlockingQueue<E> {

   @Override
   public boolean add (E e)
   {
      if (offer (e))
      {
         return true;
      }
      else
      {
         throw new IllegalStateException ("Queue full");
      }
   }

   public  FairQueue();

}