code: protected DropDownChoice<T> newChildChoice(final String id, final IModel<T> model,
  			final IModel<? extends List<? extends T>> choices, final IChoiceRenderer<? super T> renderer) {
  		final DropDownChoice<T> cc = new LocalisedDropDownChoice<>(id, model, choices, renderer);
  		cc.setOutputMarkupId(true);
  		return cc;
  	}
docs: Factory method for creating the new child {@link DropDownChoice}. This
  method is invoked in the constructor from the derived classes and can be
  overridden so users can provide their own version of a new child
  {@link DropDownChoice}.
  
  @param id
  the id
  @param model
  the model
  @param choices
  the choices
  @param renderer
  the renderer
  @return the new child {@link DropDownChoice}.