/// <summary>
        /// Generate town cards
        /// </summary>
        private List <TownPair> GetData(int count)
        {
            _createdNames.Clear();
            var result    = new List <TownPair>();
            var firstPair = new TownPair(
                CompileWord(_possibleLetters, _minWordSize),
                CompileWord(_possibleLetters, _minWordSize));

            result.Add(firstPair);
            var currentPair = firstPair;

            for (int i = 0; i < count - 2; i++)
            {
                var newPair = GetNewPairBasedOnExisting(_possibleLetters, currentPair, _minWordSize);
                result.Add(newPair);
                currentPair = newPair;
            }

            return(result);
        }
 /// <summary>
 /// To mimic real data we need to know previous pair to build next
 /// </summary>
 private TownPair GetNewPairBasedOnExisting(List <char> letters, TownPair pair, int wordSize)
 {
     return(new TownPair(pair.To, CompileWord(letters, wordSize)));
 }