@Nullable
  @NonNls
  static String calculateReplacementExpression(PsiMethodCallExpression expression,
                                               CommentTracker commentTracker,
                                               boolean fullyQualified) {
    final PsiReferenceExpression methodExpression = expression.getMethodExpression();
    final PsiNewExpression qualifier = ObjectUtils.tryCast(methodExpression.getQualifierExpression(), PsiNewExpression.class);
    if (qualifier == null) return null;
    final PsiExpressionList argumentList = qualifier.getArgumentList();
    if (argumentList == null || argumentList.getExpressionCount() != 1) return null;
    final PsiExpression arg = argumentList.getExpressions()[0];
    final PsiType type = qualifier.getType();
    if (type == null) return null;
    final String name = fullyQualified ? type.getCanonicalText() : type.getPresentableText();
    final String conversionName = JavaPsiBoxingUtils.getParseMethod(type);
    if (TypeUtils.typeEquals(CommonClassNames.JAVA_LANG_BOOLEAN, type) && !PsiUtil.isLanguageLevel5OrHigher(expression)) {
      return name + '.' + "valueOf" + '(' + commentTracker.text(arg) + ").booleanValue()";
    }
    return name + '.' + conversionName + '(' + commentTracker.text(arg) + ')';
  }
@Nullable
  @NonNls
  static String calculateReplacementExpression(PsiMethodCallExpression expression,
                                               CommentTracker commentTracker,
                                               boolean fullyQualified)