code: public static Object emptyValueOf(Type type) {
      return EMPTIES.getOrDefault(Types.getRawType(type), () -> null).get();
    }
docs: This returns well known empty values for well-known java types. This returns null for types not
  in the following list.
  
  <ul>
  <li>{@code [Bb]oolean}</li>
  <li>{@code byte[]}</li>
  <li>{@code Collection}</li>
  <li>{@code Iterator}</li>
  <li>{@code List}</li>
  <li>{@code Map}</li>
  <li>{@code Set}</li>
  </ul>
  
  <p/>
  When {@link Feign.Builder#decode404() decoding HTTP 404 status}, you'll need to teach decoders
  a default empty value for a type. This method cheaply supports typical types by only looking at
  the raw type (vs type hierarchy). Decorate for sophistication.