better selection functionality