Names Default to Here(1); here:registerSize = 14; vectorize = Function({inString,registerSize = here:registerSize},{i,nDigits,outVec,patStartLength}, nDigits = Length(inString); outVec = J(Ceiling(nDigits/registerSize),1,0); i = 1; patStartLength = Mod(Length(inString),registerSize); If(patStartLength, Pat Match(inString,Pat Len(patStartLength) >> outVec[i++] + Pat Repeat(Pat Len(registerSize) >> outVec[i++])), Pat Match(inString,Pat Repeat(Pat Len(registerSize)>> outVec[i++])) ); outVec; ); multiplyBig = Function({n1,n2},{i,j,mResults,n1Neg=0,n2Neg=0}, If(Starts With(n1,"-"),n1Neg = 1;n1 = Substr(n1,2)); If(Starts With(n2,"-"),n2Neg = 1;n2 = Substr(n2,2)); If(Length(n1)