custom selection method