rework the select assignment