record largint(coeff,nextl) procedure mpy(g1,g2) local prod if /(g1 | g2) then return &null # zero product prod := g1.coeff * g2.coeff return largint(prod % base, add(mpy(largint(g1.coeff),g2.nextl),mpy(g1.nextl,g2), largint(prod / base))) end