uses topologia;

const MAXM = 100000;
var N, M, i  : longint;
    U, V     : array[0..MAXM-1] of longint;
    T        : array[0..2] of longint;
    fr, fw   : text;

begin
    assign(fr, 'input.txt');
    assign(fw, 'output.txt');
    reset(fr);
    rewrite(fw);

    read(fr, N, M);
    for i:=0 to M-1 do read(fr, U[i], V[i]);
    close(fr);

    Analizza(N, M, U, V, T);
    writeln(fw, T[0], ' ', T[1], ' ', T[2]);
    close(fw);
end.
