eucqr:=proc(m,n) local a, b, j, q, r, s, t, v, w; a := m; b := n; t := n; for j from 1 while t >= 1 do t := irem(a, b, 's'); r[j] := t; q[j] := s; a := b; b := t; od; # j is now 1 too large j := j-1; v:=[q['k']$ 'k'=1..j]; w:=[r['k']$ 'k'=1..j]; [v,w] end: printf("%s\n", "Loaded eucqr");