Introduce SelectionType enum