list search, improvment