> take 20 $ map fst $ hammFrom 1 [1,2,3,4,5,6,8,9,10,12,15,16,18,20,24,25,27,30,32,36] > take 2 $ map fst $ hammFrom 1691 [2125764000,2147483648] > mapM_ print $ take 10 $ hammFrom 1 (1,[2,3,5]) (2,[3,4,5,6,10]) (3,[4,5,6,9,10,15]) (4,[5,6,8,9,10,12,15,20]) (5,[6,8,9,10,12,15,20,25]) (6,[8,9,10,12,15,18,20,25,30]) (8,[9,10,12,15,16,18,20,24,25,30,40]) (9,[10,12,15,16,18,20,24,25,27,30,40,45]) (10,[12,15,16,18,20,24,25,27,30,40,45,50]) (12,[15,16,18,20,24,25,27,30,36,40,45,50,60]) > map (length . snd . head . hammFrom) [2000,4000,8000,16000] [402,638,1007,1596] > map (logBase 2) $ zipWith (/) =<< tail $ [402,638,1007,1596] [0.67,0.66,0.66]