code: public <T3> Pattern3<T1, T2, T3> and(Observable<T3> other) {
          if (other == null) {
              throw new NullPointerException();
          }
          return new Pattern3<T1, T2, T3>(o1, o2, other);
      }
docs: Creates a pattern that matches when all three observable sequences have an available element.
  
  @param other
  Observable sequence to match with the two previous sequences.
  @return Pattern object that matches when all observable sequences have an available element.