added ISelectableConstrainTypes behavior