static boolean class_definition_header(PsiBuilder b, int l) {
    if (!recursion_guard_(b, l, "class_definition_header")) return false;
    boolean r;
    Marker m = enter_section_(b);
    r = classIdentifier(b, l + 1);
    r = r && class_definition_header_1(b, l + 1);
    r = r && nl_extends(b, l + 1);
    r = r && nl_implements(b, l + 1);
    r = r && nl_permits(b, l + 1);
    exit_section_(b, m, null, r);
    return r;
  }
static boolean class_definition_header(PsiBuilder b, int l)