public static Type getExactSubtype(Type type, Class<?> rawSubtype) {
    return uncapture(GenericTypeReflector.getExactSubType(type, rawSubtype));
  }
@Test
  public void getExactSubtype() {
    assertThat(
            Reflection.getExactSubtype(
                Types.parameterizedType(Collection.class, Person.class), ArrayList.class))
        .isEqualTo(Types.parameterizedType(ArrayList.class, Person.class));
  }