code: @SuppressWarnings("unchecked")
      private <T> TypedStringConverter<T> findConverterQuiet(final Class<T> cls) {
          if (cls == null) {
              throw new IllegalArgumentException("Class must not be null");
          }
          TypedStringConverter<T> conv = (TypedStringConverter<T>) registered.get(cls);
          if (conv == CACHED_NULL) {
              return null;
          }
          if (conv == null) {
              try {
                  conv = findAnyConverter(cls);
              } catch (RuntimeException ex) {
                  registered.putIfAbsent(cls, CACHED_NULL);
                  throw ex;
              }
              if (conv == null) {
                  registered.putIfAbsent(cls, CACHED_NULL);
                  return null;
              }
              registered.putIfAbsent(cls, conv);
          }
          return conv;
      }
docs: Finds a converter searching registered and annotated.
  
  @param <T>  the type of the converter
  @param cls  the class to find a method for, not null
  @return the converter, null if no converter
  @throws RuntimeException if invalid