code: private static Selector processAND(Selector sel0, Selector sel1) {
      sel0 = DNF0(sel0);
      sel1 = DNF0(sel1);
      if (sel0 instanceof Operator) {
        Operator oper = (Operator) sel0;
        if (oper.getOp() == Selector.OR)
          return makeOR(processAND(oper.getOperands()[0], sel1),
                        processAND(oper.getOperands()[1], sel1));
      }
      // Left operand is not OR, so treat it as an atom while exploring the right operand
      return processANDRight(sel0, sel1);
    }
docs: Subroutine of DNF0 to process AND nodes