@SafeVarargs public static AndPredicate and(Predicate<Composite> left,Predicate<Composite> right,Predicate<Composite>... optionalRight){
  return new AndPredicate(prepend(left,prepend(right,Arrays.asList(optionalRight))));
}

@ SafeVarargs public static AndPredicate and ( Predicate < Composite > left , Predicate < Composite > right , Predicate < Composite > ... optionalRight ) { return new AndPredicate ( prepend ( left , prepend ( right , Arrays . asList ( optionalRight ) ) ) ) ; }
create a new and specification .
