implemented option select