static boolean elemental_pattern(PsiBuilder b, int l) {
    if (!recursion_guard_(b, l, "elemental_pattern")) return false;
    boolean r;
    r = enumeration_pattern(b, l + 1);
    if (!r) r = flat_pattern(b, l + 1);
    if (!r) r = asterisk_pattern(b, l + 1);
    if (!r) r = double_asterisk_pattern(b, l + 1);
    if (!r) r = question_pattern(b, l + 1);
    if (!r) r = char_class_pattern(b, l + 1);
    return r;
  }
static boolean elemental_pattern(PsiBuilder b, int l)