static boolean separated_item_head(PsiBuilder b, int l, Parser _item_end, Parser _element, Parser _separated_recovery) {
    if (!recursion_guard_(b, l, "separated_item_head")) return false;
    boolean r, p;
    Marker m = enter_section_(b, l, _NONE_);
    r = separated_item_head_0(b, l + 1, _item_end, _separated_recovery);
    p = r; // pin = 1
    r = r && _element.parse(b, l);
    exit_section_(b, l, m, r, p, _separated_recovery);
    return r || p;
  }
static boolean separated_item_head(PsiBuilder b, int l, Parser _item_end, Parser _element, Parser _separated_recovery)