smarter autocomplete