Fuzzy search algorithm

