+english_counts = collections.defaultdict(int)
+with open('count_1l.txt', 'r') as f:
+ for line in f:
+ (letter, count) = line.split("\t")
+ english_counts[letter] = int(count)
+normalised_english_counts = norms.normalise(english_counts)
+
+choices, weights = zip(*weighted_choices)
+cumdist = list(itertools.accumulate(weights))
+x = random.random() * cumdist[-1]
+choices[bisect.bisect(cumdist, x)]
+
+