make much faster on huge dataset

isCandidate variable is result of a heavy calculation. However it absolutely not necessary if there is only one list, and if the lists merged just before 'populate suggestions' no need to check for it because shortestList became the candidate list.