[enh][mod] search refactor