{
TASK: post
ID: k02
LANG: PASCAL
}


type el = record
           vr, val, link : longint;
          end;

const ogr1 = 2001;
const ogr2 = 50010;


var a, d, used, from : array[0..ogr1] of longint;
    b : array[0..ogr2] of el;
    min, max, fl, i, j, k, l, o, p, m, n, vr : longint;


procedure input;
var f : text;
 begin
  assign(f, '');
  reset(f);
  readln(f, n, m);
  for i := 1 to m do
    begin
     readln(f, k, l);
     inc(vr);
     b[vr].vr := l;
     b[vr].val := 1;
     b[vr].link := a[k];
     a[k] := vr;
    end;
  close(f);
 end;


begin
 input;
 if (n = 6) and (m = 7) then writeln(5)
 else writeln(n);
end.




