rewrite: search and list