private static boolean assignment_expression_0(PsiBuilder b, int l) {
    if (!recursion_guard_(b, l, "assignment_expression_0")) return false;
    boolean r;
    r = consumeTokenSmart(b, ASSIGN);
    if (!r) r = consumeTokenSmart(b, MULT_ASSIGN);
    if (!r) r = consumeTokenSmart(b, DIV_ASSIGN);
    if (!r) r = consumeTokenSmart(b, MOD_ASSIGN);
    if (!r) r = consumeTokenSmart(b, PLUS_ASSIGN);
    if (!r) r = consumeTokenSmart(b, MINUS_ASSIGN);
    if (!r) r = consumeTokenSmart(b, SHIFT_LEFT_ASSIGN);
    if (!r) r = consumeTokenSmart(b, SHIFT_RIGHT_ASSIGN);
    if (!r) r = consumeTokenSmart(b, BIT_AND_ASSIGN);
    if (!r) r = consumeTokenSmart(b, BIT_XOR_ASSIGN);
    if (!r) r = consumeTokenSmart(b, BIT_OR_ASSIGN);
    return r;
  }
private static boolean assignment_expression_0(PsiBuilder b, int l)