base = 2 anag = vector(2*mx=base^13, k, []) for (u=1, mx, m=fromdigits(vecsort(digits(u,base),,4),base); anag[m]=concat(anag[m],u)) { a = vector(2*mx); for (m=1, #anag, for (i=1, #anag[m], for (j=1, #anag[m], uv = anag[m][i]+anag[m][j]; a[uv]++; ); ); ); print ("0 1"); for (n=1, #a, print (n " " a[n]); ); } quit