\START92\ \COMMENT=Single file dated Thu Dec 4 00:09:27 20 \NAME=invids2 \FILE=day2.invids2.92f (str) Func Local start,end,dims,dime,startn,endn,starte,ende,startne,endne,i,j,t,result,dime0,dims0,end0,start0,seen inString(str,"-")\->\i left(str,i-1)\->\start0 right(str,dim(str)-i)\->\end0 0\->\result dim(start0)\->\dims0 dim(end0)\->\dime0 {}\->\seen For j,2,dime0 mod(dims0,j)\->\i If i\!=\0 Then string(10^(floor(log(expr(start0))+j-i)))\->\start dim(start)\->\dims Else start0\->\start dims0\->\dims EndIf mod(dime0,j)\->\i If i\!=\0 Then string(10^(floor(log(expr(end0)))-i+1)-1)\->\end dim(end)\->\dime Else end0\->\end dime0\->\dime EndIf left(start,dims/j)\->\startn left(end,dime/j)\->\endn expr(startn)\->\startne expr(endn)\->\endne expr(start)\->\starte expr(end)\->\ende \(C)\ skip if end < last invalid If expr(end)\>=\expr(startn&startn) Then For i,startne,endne string(i)\->\t expr(repeats(t,j))\->\t If t\>=\starte and t\<=\ende and ?contains(seen,t) Then augment(seen,{t})\->\seen result+t\->\result EndIf EndFor EndIf EndFor Return result EndFunc \STOP92\