@Nullable
  @Override
  protected PsiType inferNumericType(@NotNull PsiType ltype, @NotNull PsiType rtype, PsiElement e) {
    if (GrBinaryExpressionUtil.isBigDecimal(ltype, rtype)) return null;
    if (GrBinaryExpressionUtil.isFloatOrDouble(ltype, rtype)) return null;
    if (GrBinaryExpressionUtil.isLong(ltype, rtype)) return GrBinaryExpressionUtil.createLong(e);
    return GrBinaryExpressionUtil.createInteger(e);
  }
@Nullable
  @Override
  protected PsiType inferNumericType(@NotNull PsiType ltype, @NotNull PsiType rtype, PsiElement e)