docs: public static StringBuilder describeParameterizable(StringBuilder buf, Class<?> pcls, int width, String indent) throws ClassInstantiationException {
      println(buf, width, "Description for class " + pcls.getName());
  
      Title title = pcls.getAnnotation(Title.class);
      if(title != null && title.value() != null && !title.value().isEmpty()) {
        println(buf, width, title.value());
      }
  
      Description desc = pcls.getAnnotation(Description.class);
      if(desc != null && desc.value() != null && !desc.value().isEmpty()) {
        println(buf, width, desc.value());
      }
  
      for(Reference ref : pcls.getAnnotationsByType(Reference.class)) {
        if(!ref.prefix().isEmpty()) {
          println(buf, width, ref.prefix());
        }
        println(buf, width, ref.authors());
        println(buf, width, ref.title());
        println(buf, width, ref.booktitle());
        if(ref.url().length() > 0) {
          println(buf, width, ref.url());
        }
      }
  
      SerializedParameterization config = new SerializedParameterization();
      TrackParameters track = new TrackParameters(config);
      @SuppressWarnings("unused")
      Object p = ClassGenericsUtil.tryInstantiate(Object.class, pcls, track);
      Collection<TrackedParameter> options = track.getAllParameters();
      if(!options.isEmpty()) {
        OptionUtil.formatForConsole(buf, width, options);
      }
      return buf;
    }