class Utils {

    public static String getDisplayString(Class<? extends Annotation> annotationType, @Nullable Annotation annotation) {<FILL_FUNCTION_BODY>}

    public static String getDisplayString(Object object) {
        if (object instanceof Class && ((Class<?>) object).isAnnotation()) {
            //noinspection unchecked
            return getDisplayString((Class<? extends Annotation>) object, null);
        }
        if (object instanceof Annotation) {
            Annotation annotation = (Annotation) object;
            return getDisplayString(annotation.annotationType(), annotation);
        }
        return object.toString();
    }

    public static boolean isMarker(Class<? extends Annotation> annotationType) {
        return annotationType.getDeclaredMethods().length == 0;
    }
}

        if (annotation == null) {
            return "@" + ReflectionUtils.getDisplayName(annotationType);
        }
        String typeName = annotationType.getName();
        String str = annotation.toString();
        return str.startsWith("@" + typeName)
                ? "@" + ReflectionUtils.getDisplayName(annotationType) + str.substring(typeName.length() + 1)
                : str;
    
<no_super_class>