rt(l) = { my (t=[], p=l[1], w=1); for (i=2, #l, if (p==l[i], w++, t = concat(t, w); w = 1; p = l[i] ); ); concat(t, w) } a(n) = { my (b=binary(n)); for (k=0, oo, if (#b == 1, return (k), b = rt(b); ); ); } val = vector(100); u=0 for (n=1, oo, my (v=a(n)); if (!val[1+v], val[1+v] = n; while (val[1+u], print (u " " val[1+u]); u++))) quit