code: public <T> int createWithForeignDao(T foreignData) throws SQLException {
  		@SuppressWarnings("unchecked")
  		Dao<T, ?> castDao = (Dao<T, ?>) foreignDao;
  		return castDao.create(foreignData);
  	}
docs: Pass the foreign data argument to the foreign {@link Dao#create(Object)} method.