public static boolean list_or_map(PsiBuilder b, int l) {
    if (!recursion_guard_(b, l, "list_or_map")) return false;
    if (!nextTokenIsSmart(b, T_LBRACK)) return false;
    boolean r;
    Marker m = enter_section_(b);
    r = empty_list(b, l + 1);
    if (!r) r = empty_map(b, l + 1);
    if (!r) r = non_empty_list_or_map(b, l + 1);
    exit_section_(b, m, LIST_OR_MAP, r);
    return r;
  }
public static boolean list_or_map(PsiBuilder b, int l)