\\print out integer n taking up exactly p columns printf(n,p)=for(j=1,p-lengthof(n),print1(" ")); print1(n) \\same as above, but left justified printfleft(n,p)= print1(n);for(j=1,p-lengthof(n),print1(" ")) \\length of printed value of n lengthof(n)=if(n==0,1,\ if(n<0,1+lengthof(-n),\ if(n<10,1,\ 1+lengthof(n\10)))) maxdet=1000000;minrank=0;maxrank=16; \\loop through all root systems v of rank at most 24 and print out \\those of determinant at most maxdet v=a(0); ra1=maxrank; for(a1=0,ra1/1,ra2=ra1-a1;\ for(a2=0,ra2/2,ra3=ra2-a2*2;\ for(a3=0,ra3/3,ra4=ra3-a3*3;\ for(a4=0,ra4/4,ra5=ra4-a4*4;\ for(a5=0,ra5/5,ra6=ra5-a5*5;\ for(a6=0,ra6/6,ra7=ra6-a6*6;\ for(a7=0,ra7/7,ra8=ra7-a7*7;\ for(a8=0,ra8/8,ra9=ra8-a8*8;\ for(a9=0,ra9/9,ra10=ra9-a9*9;\ for(a10=0,ra10/10,ra11=ra10-a10*10;\ for(a11=0,ra11/11,ra12=ra11-a11*11;\ for(a12=0,ra12/12,ra13=ra12-a12*12;\ for(a13=0,ra13/13,ra14=ra13-a13*13;\ for(a14=0,ra14/14,ra15=ra14-a14*14;\ for(a15=0,ra15/15,ra16=ra15-a15*15;\ for(a16=0,ra16/16,ra17=ra16-a16*16;\ for(a17=0,ra17/17,ra18=ra17-a17*17;\ for(a18=0,ra18/18,ra19=ra18-a18*18;\ for(a19=0,ra19/19,ra20=ra19-a19*19;\ for(a20=0,ra20/20,ra21=ra20-a20*20;\ for(a21=0,ra21/21,ra22=ra21-a21*21;\ for(a22=0,ra22/22,ra23=ra22-a22*22;\ for(a23=0,ra23/23,ra24=ra23-a23*23;\ for(a24=0,ra24/24,rd4=ra24-a24*24;\ for(d4=0,rd4/4,rd5=rd4-d4*4;\ for(d5=0,rd5/5,rd6=rd5-d5*5;\ for(d6=0,rd6/6,rd7=rd6-d6*6;\ for(d7=0,rd7/7,rd8=rd7-d7*7;\ for(d8=0,rd8/8,rd9=rd8-d8*8;\ for(d9=0,rd9/9,rd10=rd9-d9*9;\ for(d10=0,rd10/10,rd11=rd10-d10*10;\ for(d11=0,rd11/11,rd12=rd11-d11*11;\ for(d12=0,rd12/12,rd13=rd12-d12*12;\ for(d13=0,rd13/13,rd14=rd13-d13*13;\ for(d14=0,rd14/14,rd15=rd14-d14*14;\ for(d15=0,rd15/15,rd16=rd15-d15*15;\ for(d16=0,rd16/16,rd17=rd16-d16*16;\ for(d17=0,rd17/17,rd18=rd17-d17*17;\ for(d18=0,rd18/18,rd19=rd18-d18*18;\ for(d19=0,rd19/19,rd20=rd19-d19*19;\ for(d20=0,rd20/20,rd21=rd20-d20*20;\ for(d21=0,rd21/21,rd22=rd21-d21*21;\ for(d22=0,rd22/22,rd23=rd22-d22*22;\ for(d23=0,rd23/23,rd24=rd23-d23*23;\ for(d24=0,rd24/24,re6=rd24-d24*24;\ for(ee6=0,re6/6,re7=re6-ee6*6;\ for(ee7=0,re7/7,re8=re7-ee7*7;\ for(ee8=0,re8/8,defect=re8-ee8*8;\ v=[a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,\ a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,\ d4,d5,d6,d7,d8,d9,d10,d11,d12,\ d13,d14,d15,d16,d17,d18,d19,d20,d21,d22,d23,d24,\ ee6,ee7,ee8];\ determinant=detroot(v);\ if(determinant<=maxdet && rankroot(v)>=minrank && rankroot(v)<=maxrank,\ printf(rankroot(v),2);\ printf(determinant,5);\ print1(" ");\ cc=e8(v)*mass16;\ printf(numer(cc),25);\ if(denom(cc)>1,print1("/"),print1(" "));\ if(denom(cc)>1,printfleft(denom(cc),22),print1(" "));\ print1(" ");\ printroot(v);\ print();\ ,0)\ ))))))))))))))))))))))))))))))))))))))))))))))))