def farey( n ) =
res = seq()
a, b, c, d = 0, 1, 1, n
res += "$a/$b"
while c <= n
k = (n + b)\d
a, b, c, d = c, d, k*c - a, k*d - b
for i <- 1..11
println( "$i: ${farey(i).mkString(', ')}" )
for i <- 100..1000 by 100
println( "$i: ${farey(i).length()}" )