@Nullable
  public static String getNonAnonymousClassName(@NotNull PsiClass aClass) {
    if (PsiUtil.isLocalOrAnonymousClass(aClass)) {
      return null;
    }
    if (aClass instanceof PsiImplicitClass a) {
      return ClassUtil.getJVMClassName(a);
    }
    String name = aClass.getName();
    if (name == null) {
      return null;
    }
    PsiClass parentClass = PsiTreeUtil.getParentOfType(aClass, PsiClass.class, true);
    if (parentClass != null) {
      final String parentName = getNonAnonymousClassName(parentClass);
      if (parentName == null) {
        return null;
      }
      return parentName + "$" + name;
    }
    return DebuggerManager.getInstance(aClass.getProject()).getVMClassQualifiedName(aClass);
  }
@Nullable
  public static String getNonAnonymousClassName(@NotNull PsiClass aClass)