code: public static void setInternalState(Object object, Object value, Class<?> where) {
          setField(object, value, findField(object, new AssignableFromFieldTypeMatcherStrategy(getType(value)), where));
      }
docs: Set the value of a field using reflection at at specific place in the
  class hierarchy (<tt>where</tt>). This first field assignable to
  <tt>object</tt> will then be set to <tt>value</tt>.
  
  @param object the object to modify
  @param value  the new value of the field
  @param where  the class in the hierarchy where the field is defined