code: final public Selector BooleanTerm() throws ParseException {
                             Selector left, right=null;
      left = BooleanFactor();
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
      case AND:
        jj_consume_token(AND);
        right = BooleanTerm();
        break;
      default:
        jj_la1[1] = jj_gen;
        ;
      }
      if (right == null) {if (true) return left;}
      else {if (true) return new OperatorImpl(Operator.AND, left, right);}
      throw new Error("Missing return statement in function");
    }
docs: | BooleanFactor <AND> BooleanTerm