implementing cell selection