add selection and cleanup picking