fuzzy matcher refactoring