public static boolean operation(PsiBuilder b, int l, int g) {
    if (!recursion_guard_(b, l, "operation")) return false;
    addVariant(b, "<operation>");
    boolean r, p;
    Marker m = enter_section_(b, l, _NONE_, "<operation>");
    r = logical_bitwise_negation_operation(b, l + 1);
    if (!r) r = unary_operation(b, l + 1);
    if (!r) r = pre_operation(b, l + 1);
    if (!r) r = array_operation(b, l + 1);
    if (!r) r = literal_operation(b, l + 1);
    if (!r) r = parentheses_operation(b, l + 1);
    p = r;
    r = r && operation_0(b, l + 1, g);
    exit_section_(b, l, m, null, r, p, null);
    return r || p;
  }
public static boolean operation(PsiBuilder b, int l, int g)