if (!p.deallocate()) { throw new IllegalStateException( "Object has already been returned to this pool");
if (!p.deallocate()) { throw new IllegalStateException( "Object has already been returned to this pool or is invalid");
if (!p.deallocate()) { throw new IllegalStateException( "Object has already been returned to this pool");
if (!p.deallocate()) { throw new IllegalStateException( "Object has already been returned to this pool or is invalid");