procedure mread(f: string; var m: matrix);
var
  i,j,n: integer;
  s: longstring;
  t: text;
begin { mread }
  write('(mread ',trim(f)); flush(output);
  reset(t,f);
  readln(t,n);
  if n<>lmax then writeln('mread: error - input matrix has wrong dim')
  else begin
    for i:=0 to lmax do for j:=0 to lmax do with m[i,j] do begin
      readln(t,s);
      srset(s,l);
      if trunc and (l.si<0) then rtowinfty(l);
      readln(t,s);
      srset(s,u);
      if trunc and (u.si>0) then rtowinfty(u);
    end;
  end;
  write(')'); flush(output);
end { mread };

