use conditional instead of SelectType