*/
public static <TC extends Collection<? super T>, S, T> TC convertedCollection(Collection<? extends S> source, Converter<? super S, ? extends T> converter, Class<TC> destinationType) {
try {
return addAll(source, destinationType.newInstance(), converter);
} catch (InstantiationException | IllegalAccessException e) {
throw new ConversionException(e);
}
}