control and shift selection are implemented