@Override
  protected void processIntention(@NotNull PsiElement element, @NotNull ActionContext context, @NotNull ModPsiUpdater updater) {
    final GrLiteral exp = (GrLiteral)element;
    @NonNls String textString = exp.getText().replaceAll("_", "");
    final int textLength = textString.length();
    final char lastChar = textString.charAt(textLength - 1);
    final boolean isLong = lastChar == 'l' || lastChar == 'L';
    if (isLong) {
      textString = textString.substring(0, textLength - 1);
    }
    final BigInteger val;
    if (textString.startsWith("0x") || textString.startsWith("0X")) {
      final String rawIntString = textString.substring(2);
      val = new BigInteger(rawIntString, 16);
    }
    else if (textString.startsWith("0b") || textString.startsWith("0B")) {
      final String rawString = textString.substring(2);
      val = new BigInteger(rawString, 2);
    }
    else {
      final String rawIntString = textString.substring(1);
      val = new BigInteger(rawIntString, 8);
    }
    String decimalString = val.toString(10);
    if (isLong) {
      decimalString += 'L';
    }
    PsiImplUtil.replaceExpression(decimalString, exp);
  }
@Override
  protected void processIntention(@NotNull PsiElement element, @NotNull ActionContext context, @NotNull ModPsiUpdater updater)