public class Disjunction implements Predicate {
 
  private Predicate p, q;
  
  public Disjunction(Predicate p, Predicate q) {
    this.p = p;
    this.q = q;
  }
  
  public boolean of(Object x) {
    return p.of(x) || q.of(x);
  }
}
