@Override
  protected void invoke(@NotNull ActionContext context, @NotNull PsiTypeElement typeElement, @NotNull ModPsiUpdater updater) {
    final PsiType type = typeElement.getType();
    PsiType boxedType;
    if (type instanceof PsiPrimitiveType primitiveType) {
      boxedType = primitiveType.getBoxedType(typeElement);
    } else {
      LOG.assertTrue(type instanceof PsiWildcardType);
      final PsiWildcardType wildcardType = (PsiWildcardType)type;
      final PsiClassType boxedBound = ((PsiPrimitiveType)wildcardType.getBound()).getBoxedType(typeElement);
      LOG.assertTrue(boxedBound != null);
      boxedType = wildcardType.isExtends() ? PsiWildcardType.createExtends(typeElement.getManager(), boxedBound) 
                                           : PsiWildcardType.createSuper(typeElement.getManager(), boxedBound);
    }
    LOG.assertTrue(boxedType != null);
    typeElement.replace(JavaPsiFacade.getElementFactory(context.project()).createTypeElement(boxedType));
  }
@Override
  protected void invoke(@NotNull ActionContext context, @NotNull PsiTypeElement typeElement, @NotNull ModPsiUpdater updater)