 program adsaw;

var m,n,i :integer;
    list :array[1..100] of integer;

begin

readln(n);
m := 0;
for i := 1 to n do
  read(list[i]);

for i := 1 to n do
  m := list[i] + m;

if m = 0 then writeln('EASY')
  else writeln('HARD');

end.

var n, i, q: integer;
begin
    read(n);
    for i:=1 to n do begin
        read(q);
        if q = 1 then begin write('HARD'); exit; end;
        end;
    write('EASY');
end.

type mas = array[1..100] of longint;
var
    n, i: longint;
    chel: mas;
    ch: boolean;
begin
    read(n);
    ch:=True;
    for i:=1 to n do begin
        read(chel[i]);
        if chel[i]=1 then
            ch:=False;
    end;
    if ch then
        write('EASY')
    else
        write('HARD');
end.

Program jhdgfjqhwgbfjqevgbk;
var s,i,n,a:integer;
begin
readln(n);
s:=0;
for i:=1 to n do
  begin
  read(a);
  s:=s+a;
  end;
if s=0 then writeln('EASY')
       else writeln('HARD');
end.

const max=100;
var n,i:longint;
    a:array[1..max] of longint;
begin
        readln(n);
        for i:=1 to n do read(a[i]);
        for i:=1 to n do
        begin
            if a[i]=1 then
            begin
                write('HARD');
                readln;
                halt;
             end;
        end;
        write('EASY');
        readln;
end.

var
  n, i, j: integer;

begin
  read(n);
  for i := 1 to n do
  begin
    read(j);
    if j = 1 then
    begin
      write('HARD');
      exit;
    end;
  end;
  write('EASY');
end.

var
  k, n, i, x, code: longint;
  a: string;
begin
k := 0;
readln(n);
readln(a);
a := a + ' ';
for i := 1 to n do begin
val(copy(a, 1, 1), x, code);
if x = 1 then
inc(k);
delete(a, 1, pos(' ', a));
end;
if k > 0 then writeln('HARD')
else
writeln('EASY');
end.

var n,a:integer;
begin
read(n);
for var i:=1 to n do
begin
    read(a);
    if (a=1) then
    begin
        write('HARD');
        break;
    end
    else if (i=n) then write('EASY');
end;
end.

var n,a,sum:integer;
begin
    read(n);
    sum:=0;
    for var i:=1 to n do
    begin
        read(a);
        sum:=sum+a;
    end;
    if (sum>0) then
    begin
        write('HARD');
    end
    else
    begin
        write('EASY');
    end;
end.

var a:array[1..100] of byte;
n,i:byte;
b:boolean;
begin
 b:=true;
 read(n);
 for i:=1to n do read(a[i]);
 for i:=1to n do if a[i]=1 then b:=false;
 if b then write('EASY') else writeln('HARD');
readln();
end.

var
n,a,i,e:integer;

Begin

read(n);

e:=9;

for i:=1 to n do
begin
read(a);

if (a = 1) then e:=10;

end;

if (e = 9) then write('EASY')
			else write('HARD');

End.

var  i,n,k: integer;
     a: array [1..101] of integer;
  begin
   readln(n);
   k:=0;
   for i:=1 to n do
    begin
    read(a[i]);
    if a[i] = 1 then k:=k+1;
    end;
 if k=0 then writeln('EASY')
  else writeln('HARD');
 end.

program S1;
var a:array[1..1000000] of integer;
i,n,k:integer;
begin
readln(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n do
if a[i]=1 then k:=k+1;
if k>0 then
writeln('hard')
else writeln('easy');
end.

program abc;
var k,i,n:integer; f:boolean;
Begin
f:=true;
readLn(k);
for i:= 1 to k do
Begin
read(n);
if n = 1 then
Begin
f:=false;
break;
End;
End;
if f then writeLn('EASY')
else writeLn('HARD');
End.

var s,i,n:integer;
    a:array[1..100]of integer;
begin
 readln(n);
 for i:=1 to n do
  read(a[i]);

 s:=0;
 for i:=1 to n do
  s:=s+a[i];

 if(s>0)
 then write('HARD')
 else write('EASY');
end.

var a, b, c, i: integer;
begin
read(a);
b:=0;
for i:=1 to a do begin
    read(c);
    if c = 1 then b:=b+1;
    end;
if b = 0 then writeln('easy')
else writeln('hard');
end.

program z_a;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
    n, i, x: integer;
begin
    readln(n);
    for i := 1 to n do
    begin
        read(x);
        if (x = 1) then
        begin
            writeln('HARD');
            exit;
        end;
    end;
    writeln('EASY');
    readln;
end.

var
  i, n, x, f: integer;
Begin

  readln(n);
  for i:= 1 to n do
  begin
    read(x);
    if (x = 1) then
      f:= 1;
  end;

  if (f = 1) then
    writeln('HARD')
  else
    writeln('EASY');
End.

program z6;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  n, i, k: integer;
  b: boolean;

begin
  readln(n);
  for i:= 1 to n do begin
    read(k);
    if (k = 1) then
      b := true;
  end;
  if (b) then
    writeln('HARD')
  else
    writeln('EASY');
  readln;
end.

program rus;

{$APPTYPE CONSOLE}
{$o-}
uses
  SysUtils;
var a:array[1..100000]of LongInt;
//b:array[-100000..100000]of longint;
b,sum,j,a1,t,p,a2,b1,b2,c1,c2,max,min,i,o,n,k:longint;

begin

read(n);
for i:=1 to n do begin
  read(k);
  if k=1 then begin
    write('HARD');
    Halt(0);
  end;
end;
write('eAsY');
end.

var i,n,z:integer;
begin
     readln(n);
     for i:=1 to n do
     begin
          read(z);
          if z = 1 then
          begin
             write('HARD');
             exit;
          end;
     end;
     write('EASY');
end.

var i,kol,n:integer;
a:array [1..100] of integer;
begin
readln(n);
for i:=1 to n do
  read(a[i]);
kol:=0;
for i:=1 to n do begin
  if a[i] = 1 then
    kol:=kol+1;
end;
if kol>0 then writeln('HARD') else writeln('EASY');
end.

begin
  var n := ReadlnInteger;
  var a := ReadString.ToIntegers;
  if a.Any(x -> x = 1) then
    Write('HARD')
  else Write('EASY')
end.

var n,i:integer;
    a:array[1..100] of integer;
    s:string;
begin
readln(n);
s:='easy';
for i:=1 to n do read(a[i]);
for i:=1 to n do
if a[i] = 1 then
s:='Hard';
writeln(s);
end.

program NIKTOP2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var n,z,c:int64;
i:integer;
a:array [1..1000] of integer;

begin
read(n);
for i:=1 to n do begin
read(c);
if c=0 then
inc(z)
else begin
write('HARD');
halt(0);
end;
end;
write('EASY');
end.

var
n, b, i, a:integer;
begin
    readln(n);

    for i:= 1 to n do
    begin
        read(b);
        if b = 1 then
        begin
            a:= a+1;
        end
    end;
    if a >= 1 then
    begin
        writeln('HARD');
    end
    else
    begin
        writeln('EASY')
    end;
end.

var a,i,b:integer;
begin
  read(a);
  b:=0;
  i:=1;
  while (i <= a) and (b=0) do
  begin
    i:=i+1;
    read(b);
  end;
  if b=0 then
    write('EASY')
  else
    write('HARD');
end.

var
otv:array[1..100] of byte;
i,j,k,flag:byte;
ez,hr:string;
begin
ez:='Easy';
hr:='Hard';
readln(k);
for i:=1 to k do
read(otv[i]);
flag:=0;
for j:=1 to k do
begin
if otv[j]=1 then begin
writeln(hr);
flag:=0;
break;
end;
if ((otv[j]=0) and (flag<>1)) then
flag:=1;
end;
If (flag=1) then writeln(ez);
end.

var ans, a, n, i:longint;
begin
read(n);
for i:=1 to n do
   begin
   read(a);
   inc(ans,a);
   end;
if ans>0 then write('hard') else write('easy');
end.

var n,i,f,j,k :integer;
begin
read(n);
f := 0;
for j:=1 to n do
begin
read(i);
if i = 1 then
f := f + 1
else
k:=0;
end;
if f > 0 then
write('HARD')
else
write('EASY')
end.

program N2;
var
        n, i: LongInt;
        a: array [1..100] of Integer;

begin
        ReadLn (n);

        for i := 1 to n do
                Read (a[i]);
        ReadLn;

        for i := 1 to n do
                if a[i] = 1 then
                begin
                        WriteLn ('HARD');
                        Exit
                end;

        WriteLn ('EASY')
end.

var a: array [1..100] of integer;
n: integer;
i: integer;
c: integer;
begin
c:=0;
readln(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n do
if a[i]=1 then
begin
writeln('HARD');
break;
end
else
c:=c+1;
if c=n then
writeln('EASY');
end.

program Gay;
var n, a : Integer;
begin
Read(n, a);
for n := n downto 1 do
begin
if a = 1 then
a := 1
else Read(a);
end;
if a <> 1 then
Write('EASY')
else Write('HARD');
end.

Var a:array[1..1000] of Longint;
    N,i,dem:Longint;
Begin
    Readln(N);
    For i:=1 to N do read(a[i]);
    For i:=1 to N do
        If a[i]=1 then inc(dem);
    If dem=0 then writeln('EASY');
    If dem>0 then writeln('HARD');
End.

var i,k,n:integer;a:array[1..100] of integer;
begin
  read(n);
  for i:=1 to n do
  begin
    read(a[i]);
    if a[i]=0 then
      inc(k);

      end;
      if k=n then writeln('EASY') else writeln('HARD');
end.

var  n,i:longint;
     a:array[1..100] of longint;
BEGIN
readln(n);
for i:=1 to n do
 read(a[i]);

for i:=1 to n do
 begin
 if a[i]=1 then begin writeln('HARD');exit;end
 end;
writeln('EASY');

END.

Var n , i , k : Byte;
Begin
Readln(n);
i := 1;
While i <= n do
    Begin
    Read(k);
    If k = 1 then Break else Inc(i);
    End;
If k = 1 then Writeln('HARD') else Writeln('EASY');
End.

var a,k,n,p:integer;
begin
readln(n);
for a:=1 to n do
begin;
read(p);
if p=1 then k:=k+1;
end;

if k>0 then writeln('hard') else writeln('easy');
readln;
end.

program easy;
var i, n, a: integer;
begin
    readln(n);
    for i := 1 to n do begin
        read(a);
        if a = 1 then begin
            writeln('HARD');
            exit();
        end;
    end;
    writeln('EASY');
end.

var i,n,a:integer;
begin
  readln(n);
  while (n>0) and (a=0) do
  begin
  read(a);
  if a=1 then
  writeln('HARD');
  n:=n-1;
  end;
  if (n=0) and (a=0) then
  writeln('EASY');
end.

var i,n:longint;
    a:array[1..100000] of longint;
begin
    readln(n);
    for i:=1 to n do
    begin
        read(a[i]);
        if a[i]=1 then
        begin
            write('HARD');
            halt;
        end;
    end;
    write('EASY');
end.

var
n,i,j:integer;
a:array[0..1]of integer;
begin
readln(n);
for i:=1 to n do
begin
read(j);
a[j]:=a[j]+1;
end;
if a[0]=n then write('easy')else write('hard');
end.

var i,n,m,count:Integer;
begin
read(n);
count:=0;
for i:= 1 to n do
begin
read(m);
if m=1
then
inc(count);
end;
if count>0
then write('hard')
else
write('easy');
end.

var i, w:integer;
s:string;
q: array[1..100] of integer;
begin
w:=0;
read(i);
for i:=1 to i do
begin
read(q[i]);
if q[i]=1 then inc(w);
end;
if w>=1 then write('hard') else write('easy');
end.

var n, i, k, m: integer;
s: string;
begin
readln (n);
k:=0;
for i:=1 to n do
  begin
  read (k);
  m:= m+k;
  end;
    if m > 0then
    write ('HARD')
    else  write ('easy');

end.

var n,i,t:longint;
cc:boolean;
begin
readln(n);
cc:=false;
for i:=1 to n do
begin
read(t);
if t=1 then cc:=true;
end;
if cc=false then writeln('EASY')
else writeln('HARD');
readln;
end.

var n,i,a: integer;
s: boolean;
begin
  readln (n);
  for i:= 1 to n do
  begin
    read (a);
    if a=1 then
    begin
      s := false;
      break;
    end
            else s:= true;
  end;
  if s = false then writeln ('HARD')
              else writeln ('EASY');
end.

var
 x,i,n:longint;
 p:boolean;
begin
 readln(n);
 for i:=1 to n do
  begin
   read(x);
   if x=1 then p:=true;
  end;
 if p then write('HARD')
 else write('EASY');
end.

var
n,x,i,c:longint;
begin
readln(n);
for i:=1 to n do
 begin
read(x);
if x=1 then c:=1;
end;
if c=0 then writeln('EASY')
else
writeln('HARD');
end.

var  n,i,k:longint;
begin
readln(n);
for i:=1 to n do
begin
read(k);
if k=1 then begin write('HARD');exit;end;
end;
write('EASY');
end.

var
  n,i,x:longint;
begin
  readln(n);
  for i:=1 to n do
    begin
      read(x);
      if x=1 then
        begin
          writeln('HARD');
          halt;
        end;
    end;
  writeln('EASY');
end.

var
  n,i,x:longint;
  ok:boolean;
begin
  readln(n);
  ok:=true;
  for i:=1 to n do
  begin
    read(x);
    if x=1 then ok:=false;
  end;
  if ok then writeln('EASY')
        else writeln('HARD');
end.

var
  N, i, num, chet: longint;

begin
  read(N);
  for i := 1 to N do
  begin
    read(num);
    if(num = 1) then
      chet := 1;
  end;
  if(chet = 1) then
    write('HARD')
  else
    write('EASY');
end.

var
        n,i,x:longint;
begin
        readln(n);
        for i:=1 to n do
        begin
                read(x);
                if x=1 then
                begin
                        writeln('HARD');
                        exit;
                end;
        end;
        writeln('EASY');
end.

const Sz = 100;
var
a: array [1..Sz] of integer;
  N,s,i: integer;
begin
read(n);
 for i:=1 to n do begin
                 read(a[i]);
                 if a[i] = 1 then s:= s + 1;
                  end;
if s>0 then writeln('HARD') else writeln('easy');
end.

var a:array[1..100] of integer;
i,n,j,k:integer;
begin
readln(n);
for i:=1 to n do
read(a[i]);
k:=0;
for i:=1 to n do
if a[i]<>0 then inc(k);
if k>0 then writeln('HARD') else writeln('EASY');
end.

var
  n,i,c:longint;
  a: array[1..102] of longint;
begin
  read(n); c:=0;
  for i:= 1 to n do
    read(a[i]);
  for i:= 1 to n do
   if a[i]>0 then
    c:=1;
  if c=0 then
    write('EASY')
   else
     write('HARD')
end.

var C,I,A,n:integer;
begin
 readln(n);
 c:=0;
 FOR i:=1 to n do
  begin
   read(a);
   C:=c+a;
  end;
  if c<>0 then
  writeln('hard')
  else
  writeln('eASY');
end.

var a,b,i,n: integer;
begin
    read (n);
    b := 0;
    for i:=1 to n do begin
        read (a);
        b := b or a;
    end;
    if (b = 1) then write ('HARD') else write ('EASY');
end.

const
        fin='AIN.inp';fon='AIN.out';
var n,i,j,k,l:longint;
    a:array[1..10000000]of longint;
begin
//assign(input,fin);
//reset(input);
//assign(output,fon);
//rewrite(output);
readln(n);
for i:=1 to n do
        begin
        read(k);
        if k=1 then
                begin
                writeln('HARD');
                l:=1;
                break;
                end;
        end;
if l<>1 then writeln('EASY');
//close(input);close(output);
end.

var n,i,g,r,a:integer;
begin
readln (n);
for g:=1 to n do
begin
read (i);
if i>0 then a:=1
else a:=0;
r:=r+a;
end;
if r>0 then write ('HARD') else write ('EASY')
end.

var i,n,p:longint;
ic:boolean;
begin
readln(n);
ic:=true;
for i:=1 to n do
begin
read(p);
if p=1 then ic:=false;
end;
if ic=true then writeln('EASY') else writeln('HARD');
end.

var
    i,j,n,m:integer;
begin
    read(n);
    for i:=1 to n do
    begin
    read(m);
    j:=j+m;
    end;
    if j>=1 then writeln('HARD') else writeln('EASY');
end.

Program A;
Var n,i,b,C:integer;
Begin
  Readln(n);
  C:=0;
  for i:=1 to n do begin
    read(b);
    if b=1 then c:=1;
    end;
  if c=1 then writeln('HARD')
  else writeln('EASY');
end.

var n, i, q:integer;
f:boolean;
begin
readln (n);
f:=true;
for q:=1 to n do begin
read (i);
if (i=1) then
f:=false;
end;
if (f=false) then writeln ('Hard')
else writeln ('Easy');
end.

Program abc;
var i,n:integer;
x:array[1..1000000] of integer;
l:boolean;
begin
readln(n);
for i:=1 to n do
read(x[i]);
for i:=1 to n do
if x[i]=1 then l:=true;

if l then writeln('HARD') else writeln('EASY');
end.

var
 n,i,m,sum:integer;
begin
 readln(n);
 sum:=0;
for i:=1 to n do
 begin
  read(m);
  sum:=sum+m;
 end;
if sum>0 then
 writeln('Hard')
else
 writeln('Easy');
end.

var
 n,i,x:integer;
begin
  readln(N);

  for i:=1 to N do
  begin
    read(x);
    if (x=1) then
      break;
  end;
  if (x=1) then
     writeln('Hard')
  else
    writeln('Easy');
 end.

Program test_prog_1;
var k, b, n, i :integer;
begin
read (n);
for i:= 1 to n do
begin
read (b);
if b=1 then k:= k+1;
end;
if k<>0 then write ('hard')
else write ('easy');
end.

VAR A,F,I:INT64;
B: ARRAY [1..100000] OF BYTE;
BEGIN
F:=0;
READ(A);
FOR I:=1 TO A DO BEGIN
READ (B[I]);
IF B[I]=1 THEN F:=1;
END;
IF F=1 THEN WRITE('HARD') ELSE WRITE('EASY');
END.

var a,b,c,i,n:Integer;
 r: string;
begin
r:='easy';
readln(n);
for i:=1 to n do begin
 read(a);
  if a = 1 then
   r:= 'hard';
  end;
writeln(r);
end.

var n,i,k:integer;
a:array[1..100] of integer;
begin
readln(n);
k:=0;
for i:=1 to n do begin read(a[i]);end;
for i:=1 to n do begin
if a[i]=1 then k:=1;
end;
if k=1 then writeln('HARD') else writeln('EASY');
end.

var
  flag:boolean;
  n,a:integer;

begin
  flag:=true;

  readln(n);

  for var i:=1 to n do
  begin
    read(a);
    if (a=1) then flag:=false;
  end;

  if flag then writeln('EASY') else writeln('HARD');

end.

var n,m,p,r,a,x,y,max,s,min,albe,negre,c : longint;
b,v : array[0..100000] of longint;
da : boolean;
z : ansistring;
begin

	readln(n);

	da:=true;
	for c:=1 to n do
	begin
		read(a);

		if a=1 then
		da:=false;
	end;

	if da=true then writeln('easy') else
	writeln('hard');

end.

var t,x,a,b:integer;
begin
read (a);
t:=0;
for x:=1 to a do
  begin
  read(b);
  if b=1 then t:=1;
  end;
if t=0 then print ('Easy') else print ('Hard');
end.

program main;
var
    hard : boolean;
    i, n : integer;
    a : array[1..100] of integer;
begin
    readln(n);
    for i := 1 to n do read(a[i]);
    for i := 1 to n do begin
        if a[i] = 1
            then hard := true;
    end;
    if hard = true
        then writeln('Hard')
    else writeln('Easy');
end.

Program z1;
Var
 n,i,k:integer;
 y:string;
begin
y:='EASY';
Readln(n);
For i:=1 to n do begin
Read(k);
If k=1 then y:='HARD';
k:=0;
end;
Writeln(y)
end.

program zB;
var n,i,o,sl:integer;
begin
readln (n);
for i:=1 to n do
begin
read (o);
if o=1 then sl:=1
end;
if sl=1 then writeln('hard')
else writeln('easy')
end.

var n,i,g,m:integer;
begin
read(n);
m:=0;
for i:=1 to n do begin
read(g);
if g=1 then m:=m+g;
end;
if m>0 then write('HARD') else write('EASY');
end.

var
     n,i: integer;
     a: array[1..999] of integer;
begin
read(n);
for i:=1 to n do
    read(a[i]);
for i:=1 to n do
    if a[i]=1 then begin
       write('HARD');
       exit; end;
    write('EASY');
    end.

var n,z,i:integer;
    k: array[1..101] of byte;

 begin
   readln(n);
   z:=0;
   for i:=1 to n do
      begin
       read(k[i]);
       if k[i]=1 then
        z:=z+1;
      end;
      if z>0
      then writeln('HARD')
      else writeln('EASY');
 end.

var n, i, s: integer;
a: array [1..100] of integer;
begin
read(n);
for i:= 1 to n do
read(A[i]);
for i:= 1 to n do
s:=s+A[i];
if s>0 then
write('Hard')
else
write('Easy')
end.

program yok;
var
	cek:boolean;
	n,k,i:integer;
begin
	readln(n);
	cek:=true;
	for i:=1 to n do
	begin
		read(k);
		if (k=1) then
		cek:=false;
	end;
	if cek=false then
	writeln('HARD')
	else
	writeln('EASY');
end.

Program A;
Var n,i,b,C:integer;
Begin
  repeat
  Readln(n);
  Writeln('Неверные входные данные. Повторите попытку');
  until (n>0) and (n<100);
  C:=0;
  for i:=1 to n do begin
    read(b);
    if b=1 then c:=1 else if (b<>0) and (b<>1) then c:=2;
    end;
  if c=1 then writeln('HARD')
  else if c=2 then writeln('Неверные входные данные')
  else writeln('EASY');
end.

var
i, n, a:integer;
begin
read(n);
for i:=1 to n do
read(a);
if a=1 then write('hard')
else write('eaze');
end.

program loc;
type sir=array [1..100] of integer;
var n,i,k:integer;
    s:sir;
    b:boolean;
begin
readln(n);
for i:=1 to n do
readln(s[i]);
for i:=1 to n do
if s[i]=1 then b:=true;
if b=true then writeln('HARD') else writeln('EASY');
end.

var n,i,f,j :integer;
begin
read(n);
for j:=1 to n do
begin
read(i);
if i = 0 then
f := 0
else
f := 1;
end;
if f = 1 then
write('HARD')
else
write('EASY')
end.

{$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q-,R+,S+,T-,U-,V+,W-,X+,Y+,Z1}
{$MINSTACKSIZE $00004000}
{$MAXSTACKSIZE $00100000}
{$IMAGEBASE $00400000}
{$APPTYPE CONSOLE}

const filename='qc';
      oo=maxlongint div 2;
      eps=1e-6;
      eee=1e-21;

var qq,cc,a,aa:array[0..1000000]of longint;
    qc,he:array[0..2014,0..2014]of longint;
    ss,sss:array[0..10000]of string;
    s,s0,s1,s2,s3:string;
    x,y,z,xx,yy,zz,x0,y0,z0,x1,x2,x3,y1,y2,y3,z1,z2,z3:extended;
    res64,n64,nn64:int64;
    w,nt,ii,jj,n,m,q,c,q0,c0,q1,c1,q2,c2,q3,c3:longint;
    nn,mm,kk,u,v,res,cur,max,min:longint;
    test,ll,t,tt:longint;
    b,bb,bbb,b0,b1,b2,b3:boolean;
    ccc:char;

function mx(q,c:longint):longint;
  begin
  if q>c then mx:=q else mx:=c;
  end;

function mn(q,c:longint):longint;
  begin
  if q<c then mn:=q else mn:=c;
  end;

procedure init;
  begin
  assign(input,filename+'.in');
  assign(output,filename+'.out');
  reset(input);
  rewrite(output);
  end;

procedure fin;
  begin
  close(input);
  close(output);
  end;

procedure clear;
var i,j,k:longint;
  begin
  fillchar(qc,sizeof(qc),0);
  end;

procedure load;
var i,j,k:longint;
  begin
  end;

procedure save;
var i,j,k:longint;
  begin
  end;

procedure swap(var q,c:longint);
var i:longint;
    begin
    i:=q; q:=c; c:=i;
    end;

procedure run;
var i,j,k:longint;
  begin
  //init;
  readln(n);
  for i:=1 to n do
    begin
    read(k);
    if k>1 then begin writeln('HARD'); halt; end;
    end;
  writeln('EASY');
  end;

begin
nt:=1;
//readln(nt);
for test:=1 to nt do
  begin
  clear;
  load;
  run;
  save;
  end;
end.

var a, b, i: integer;
begin
read(a);
b:=0;
for i:=1 to a do
    if a = 1 then b:=b+1;
if a = 0 then writeln('easy')
else writeln('hard');
end.

var n,i,b:integer;
begin
read(n);
b:=0;
for i:=1 to n do begin
                 read(n);
                 if i=0 then b:=b+1;
                                  end;
if b=n then write('EASY') else write('HARD');
end.

var a,b:integer;
begin
read(a);
for a:=1 to a do
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
 end.

var
n, s, i, l: integer;
begin
READLN(n);
s := 1;
for i := 1 to n do
    begin
    READ(l);
    if (i = 1) then
        s := s + 1;
    end;
if (s = 0) then
    WRITELN('EASY')
else
    WRITELN('HARD');
end.

var c:char;
begin
  readln;
  while not eof do
  begin
    read(c);
    if c='0' then
      continue;
    writeln('HARD');
    halt;
  end;
  writeln('EASY');
end.

var i,n,m,count:Integer;
begin
read(n);
begin
for i:= 1 to n do
read(m);
if m=1
then
inc(count);
end;
if count>0
then write('hard')
else
write('easy');
end.

var n,i,t:longint;
cc:boolean;
begin
readln(n);
cc:=false;
for i:=1 to n do
begin
read(t);
if t=1 then begin writeln('HARD'); cc:=true; end;
end;
if cc=false then writeln('EASY');
readln;
end.

var i,n,m,count:Integer;
begin
read(n);
begin
for i:= 1 to n do
read(m);
if m=1
then
begin
inc(count);
write('hard');
HALT;
end;
 write('easy');
 end;
end.

var n,k, i,m:integer;
begin
readln(n);
for i:=1 to n  do
begin
readln(m);
if m=1 then k:=1;
end;
if k=1 then writeln('EASY') else writeln('HARD');
end.

program ff;
var a,b:integer;
begin
read(a);
for a:=1 to a do
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
 end.

var n,k, i,m:integer;
begin
readln(n);
for i:=1 to n  do
begin
readln(m);
if m=1 then k:=1;
end;
if k=1 then write('HARD') else write('EASY');
end.

var a,b,c,d,i,n:integer;
begin
readln(n);
if (n<=100) and (n>=1) then
  for c:=1 to n do begin
  if (i=0) or (i=1) then
    read(i);
    a:=a+i;
  end;
  if a>=1
          then writeln ('hard')
          else

          writeln ('easy',a);
end.

var
  n: shortint;
  f: integer;

begin
  readln(n);
  readln(f);
  if (f > 0) then
    writeln('HARD')
  else
    writeln('EASY');
end.

var
    a: array [1..100] of integer;
    i, n, k: integer;

begin
    for i := 1 to n do
        read(a[i]);
    k := 0;
    for i := 1 to n do
        if a[i] = 1 then inc(k);
    if k = 0 then writeln('easy')
    else writeln('hard');
end.

var n,k, i,m:integer;
begin
readln(n);
for i:=1 to n  do
begin
readln(m);
if m=1 then k:=1;
end;
if k=1 then writeln('HARD') else writeln('EASY');
end.

var i,n,m,count:Integer;
begin
read(n);
if n>=1
then
begin
for i:= 1 to n do
read(m);
if m=1
then
begin
inc(count);
write('hard');
exit;
end;
if count=0
then write('easy');
end;
end.

var a,i,n,x:integer;

begin
readln (n);
for x:= 1 to n do
begin
    read (i);
    a:= a+1;
    end;
if a <> 0 then
    writeln ('HARD')
    else
    writeln ('EASY');
end.

var
a:array[1..100] of integer;
i,n,s:integer;
begin
readln(n);
for i:=1 to n do read(a[i]);
for i:=1 to n do s:=s+a[i];
 if s=1 then writeln('HARD') else writeln('EASY');
end.

var a:array[1..100]of integer;
i,n,k:integer;
begin
    readln(n);
    k:=0;
    for i:=1 to n do
    read(a[i]);
    for i:=1 to n do
    if a[i]-1=0 then inc(k);
    if k>0 then writeln('HARD');
    end.

var a:Array[1..100]of integer; flag:boolean; n,i:integer;
begin
readln(n);
for i:=1 to n do read(a[i]);
for i:=1 to n do if a[i]=1 then flag:=True else flag:=False;
if flag=true then writeln('hard') else writeln('easy');
end.

var
  x,i,n:longint;
  blog:boolean;
begin
  readln(n);
  blog:=true;
  for i:=1 to n do
    begin
      read(x);
      if (x=1) then blog:=false;
    end;
  if blog then write('EASY')
          else write('HERD');
end.

var a: array [1..100] of integer;
n: integer;
i: integer;
c: integer;
begin
c:=0;
readln(n);
for i:=1 to n do
read(a[i]);
for i:=1 to n do
if a[i]=1 then
writeln('HARD')
else
c:=c+1;
if c=n then writeln('EASY');
end.

program loc;
var n,i,k:integer;
    b:boolean;
begin
readln(n);
for i:=1 to n do  begin
readln(k);
if k=1 then b:=true;
end;
if b=true then writeln('HARD') else writeln('EASY');
end.

var
a:array[1..1000]of longint;
j,i,p,n:longint;
begin
readln(n);
for i:=1 to n do
read(a[i]);
if a[i]=1 then begin write('HARD');exit;end;
write('EASY');
end.

var n,k,i:integer;
begin
	read(n);
	for i:=1 to n do
	begin
		read(k);
		if k=1 then
			begin
			writeln('HARD');
			exit;
			end;
	end;
	writeln('EAZY');
end.

var a,b,i:integer;
begin
read(a);
i:=1;
for i:=1 to a do begin
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
end;
 end.

program a1030a;
var q1,a2,i,n,b:integer;
a:array[1..100] of integer;
begin
readln(n);
for i:=1 to n do
begin
read(a[i]);

end;
for i:=1 to n do
begin
if a[i] = 0 then q1:=q1+1;
END;
if q1>0 then writeln ('HARD')
else
writeln ('EASY');
end.

var C,I,A,n:integer;
begin
 readln(n);
 c:=0;
 FOR i:=1 to n do
  begin
   read(a);
   C:=c+a;
  end;
  if c=0 then
  writeln('EASE')
  else
  writeln('HARD');
end.

program q;
  var n,i: integer;
    a,k:string;
begin
  readln(n);
  while (n<0) or (n>100) do begin
  readln(n);
  end;
  readln(k);
  while length(k)-((length(k)-1)/2)<>n do begin
    read(k);
  end;
  for i:=1 to n do begin
    if k[i]='1' then begin
      a:='HARD';
      write(a);
    break;
    end;
  end;
  if a<>'HARD' then write('EASY');
end.

var
i,k, n, a:integer;
begin
read(n);
k:=0;
for i:=1 to n do
begin
read(a);
if a=1 then k:=1;
end;
if k=1 then write('hard')
else write('eazy');
end.

var
otv:array[1..100] of byte;
i,j,k,flag:byte;
ez,hr:string;
begin
ez:='Easy';
hr:='Hard';
readln(k);
for i:=1 to k do
read(otv[i]);
flag:=0;
for j:=1 to k do
begin
if otv[j]=1 then begin
writeln(hr);
break;
end;
if ((otv[j]=0) and (flag<>1)) then
flag:=1;
end;
If flag=1 then writeln(ez);
end.

var
n,a,i,e:integer;

Begin

readln(n);

e:=9;

for i:=1 to n do
begin
readln(a);

if (a = 1) then e:=10;

end;

if (e = 9) then writeln('EASY')
			else writeln('HARD');

End.

Var  y: array[1..1000] of integer;
a,b,n,d,q,i: integer;
begin
readln(n);
for i:=1 to n do
read(y[i]);
for i:=1 to n do
if y[i]=1 then begin   writeln('HARD'); break; end

else  writeln('EASY') ;

end.

var t,n,i,k,x,a,b:integer;
begin

 readln(n);

 for i:=1 to n do begin read(x);  if a=0 then inc(a) else begin writeln('Hard'); break; end;  end;

 if a=n then writeln('Easy');

end.

program Z_1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
    n, i, a, k: integer;

begin
    readln(n);
    k := 0;
    for i := 1 to n do
      read(a);
      if (a = 1) then
          inc(k);
    if (k = 0) then
        writeln('EASY')
    else
        writeln('HARD');
    readln;
end.

var a, b, i: integer;
begin
read(a);
b:=0;
for i:=1 to a do
    if a = 1 then b:=b+1;
if a = 0 then writeln('easy')
else writeln('hard');
end.

var a,i,n,x:integer;

begin
readln (n);
for x:= 1 to n do
begin
    read (i);
    a:= a+1;
    end;
if a <> 0 then
    writeln ('HARD')
    else
    writeln ('EASY');
end.

var
a:array[1..100] of integer;
i,n,s:integer;
begin
readln(n);
for i:=1 to n do read(a[i]);
for i:=1 to n do s:=s+a[i];
 if s=1 then writeln('HARD') else writeln('EASY');
end.

var n,k, i,m:integer;
begin
readln(n);
for i:=1 to n  do
begin
readln(m);
if m=1 then k:=1;
end;
if k=1 then writeln('EASY') else writeln('HARD');
end.

var n,i:integer;
    k: array[1..100] of integer;

 begin
   readln(n);
   for i:=1 to n do
      read(k[i]);
      if k[i]=0 then write('EASY')
      else write('HARD');

 end.

begin
  var n := ReadInteger;
  var a := ReadString.ToIntegers;
  if a.Any(x -> x = 1) then
    Write('HARD')
  else Write('EASY')
end.

var
  n, i, a, b: integer;

begin
  readln(n);
  for i := 1 to n do
  begin
    read(a);
    b := b + a;
  end;
  if b > 0 then
    writeln('HARD')
  else
    writeln('EAZY');
end.

var i,n,m,count:Integer;
begin
read(n);
begin
for i:= 1 to n do
read(m);
if m=1
then
inc(count);
end;
if count>0
then write('hard')
else
write('easy');
end.

var i,n,z:integer;
begin
     readln(n);
     for i:=1 to n do
     begin
          read(z);
          if z = 1 then
          begin
             write('HARD');
             exit;
          end;
     end;
     write('EAZY');
end.

program easy;
var i, n, a: integer;
begin
    readln(n);
    for i := 1 to n do begin
        readln(a);
        if a = 1 then begin
            writeln('HARD');
            exit();
        end;
    end;
    writeln('EASY');
end.

var n,i,s,a:integer;
begin
        readln(n);
        for i:= 1 to n do
        begin
                readln(a);
                s:=s+a;
        end;
        if s = 0  then writeln('EASY')
        else writeln('HARD');
readln;
end.

var n,i,a:integer;
begin
        read(n);
        for i:= 1 to n do read(a);
                if a = 0 then writeln('EASY')
                        else writeln('HARD');
end.

var a,i,o,j:integer;
begin
readln(j);
for i:=1 to j do begin
  read(a);
  if (a = 1) then begin
    writeln('HARD');
    j:= 0;
  end else begin
    writeln('EASY');
    j:= 0;
  end;
end;
end.

var
i, n, k:integer;
begin
read(n);
k:=0;
while n>0 do begin
read(k);
if i>0 then k:=1;
n:=n-1;
end;
if k=1 then writeln('HARD') else writeln('EASY');
end.

begin
  var n := ReadInteger;
  var a := ReadString.ToIntegers;
  if a.Any(x -> x = 1) then
    Print('HARD')
  else Print('EASY')
end.

program ff;
var a,b:integer;
begin
read(a);
for a:=1 to a do
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
 end.

var n,k, i,m:integer;
begin
readln(n);
for i:=1 to n  do
begin
readln(m);
if m=1 then k:=1;
end;
if k=1 then write('HARD') else write('EASY');
end.

var i,n,m,count:Integer;
begin
read(n);
begin
for i:= 1 to n do
read(m);
if m=1
then
begin
inc(count);
write('hard');
exit;
end;
 write('easy');
 end;
end.

Var a:array[1..1000] of integer;
    n,i,b:integer;
    begin
    b:=0;
    for i:=1 to n do begin
    read(a[i]);
    if a[i]=1 then begin write('hard'); b:=1; halt; end;
    end;
    if b=0 then write('easy');
    end.

var a:array[1..100]of integer;
i,n,k:integer;
begin
    readln(n);
    k:=0;
    for i:=1 to n do
    read(a[i]);
    for i:=1 to n do
    if a[i]-1=0 then inc(k);
    if k>0 then writeln('HARD');
    end.

var a,b,i:integer;
begin
i:=1;
read(a);

for i:=1 to a do begin
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
end;
 end.

var a,i,e:integer;
    s:string;
begin
  readln(a);
  readln(s);
  i:=0;
  e:=0;
  if s[1] = '1' then
   e:=e+1;
  if s[1] = '0' then
   e:=0
  else
    while (s[i] <> '1') or (i <> a) do
    begin
     if s[i] = '1' then
     e:=e+1;
     i:=1+i;
    end;
  if e = 0 then
   write('EASY')
  else
   write('HARD');
end.

program Pro2;
 Uses sysutils,StrUtils;
var
 n,otvet:string;
 a,i:integer;
 resa,l:integer;

begin
readln(n);
readln(otvet);
a:=strtoint(n);
otvet:=AnsiReplaceStr(otvet,' ','');
resa:=0;
for i:=1 to a do
begin
l:=strtoint(otvet[i]);
resa:=resa xor l;
end;
if resa=0 then writeln('EASY') else writeln('HARD');
end.

var n, i , temp:longint;

begin
    readln(n);
    for i := 1 to n do
        begin
            readln(temp);
            if temp = 1 then begin write('HARD'); exit; end;
        end;
    write('EASY');
end.

var
 n,i,x:longint;
 p,p1:boolean;
begin
 readln(n);
 for i:=1 to n do
  begin
   read(x);
   if x=0 then p:=true;
  end;
 if (p=true) then writeln('HARD')
             else writeln('EASY');
end.

var
i, n, a:integer;
begin
read(n);
for i:=1 to n do
read(a);
if a=1 then write('hard')
else write('eaze');
end.

var n,k,i:integer;
begin
	read(n);
	for i:=1 to n do
	begin
		read(k);
		if k=1 then
			begin
			writeln('HARD');
			exit;
			end;
	end;
	writeln('EAZY');
end.

var a,b,i:integer;
begin
read(a);
i:=1;
for i:=1 to a do
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
 end.

var i,n,m,count:Integer;
begin
read(n);
for i:= 1 to n do
read(m);
if m=1
then
begin
inc(count);
write('hard');
exit;
end;
if count=0
then write('easy');
end.

begin
  var n := ReadInteger;
  var a := ReadString.ToIntegers;
  if a.Any(x -> x = 1) then
    Print('HARD')
  else Print('EASY')
end.

Var a,b,c,d,q: integer;
begin
readln(c);
for d:=1 to c do
read(a);
for d:=1 to c do
if a<>0 then  q:=q+1
else q:=q+0;
if q=0 then writeln('EASY')
else writeln('HARD');
end.

program n_1;
var n, i, g: integer;
a: array [1..100] of integer;
begin
readln(n);
g:=0;
for i:=1 to n do
begin
read(a[i]);
if (a[i]=1) and (g = 0) then
begin
write('HARD');
g:=1;
end;
end;
if (i=100) then
write('EASY');
end.

var n,i,a:integer;
begin
        read(n);
        for i:= 1 to n do read(a);
                if a = 0 then writeln('EASY')
                        else writeln('HARD');
end.

var C,I,A,n:integer;
begin
 readln(n);
 c:=0;
 FOR i:=1 to n do
  begin
   read(a);
   C:=c+a;
  end;
  if c=0 then
  writeln('EASE')
  else
  writeln('HARD');
end.

var a,b,i:integer;
begin
read(a);
i:=1;
for i:=1 to a do begin
read(b);
if b=1 then writeln('HARD') else  writeln('EASY');
end;
 end.

var n:array[1..100] of integer;
   j,i,k:integer;
begin
readln(k);
j:=0;
for i:=1 to k do
begin
readln(n[i]);
j:=j+n[i];
end;
if j-1<0 then write('easy')else
write('hard');
readln;
end.

var
i, n, k:integer;
begin
read(n);
k:=0;
while n>0 do begin
read(k);
if i>0 then k:=1;
n:=n-1;
end;
if k=1 then writeln('HARD') else writeln('EASY');
end.

var
 n,i,m:integer;

begin
 readln(n);
for i:=1 to n do
 begin
  read(m);
 end;
if m=1 then
  begin
   writeln('Hard');
 end
else
 writeln('EASY');
end.

var
 n,i,m:integer;
begin
 readln(n);
for i:=1 to n do
 begin
  read(m);
 end;
if m=1 then
   writeln('Hard')
else
 writeln('EASY');
end.


var a,b:array[1..488] of longint;
winn,draww,win,draw,i,j,s1,s2,f1,f2:longint;
begin
 for i:=1 to 4 do
  read(a[i],b[i]);
  s1:=a[1];
  s2:=b[2];
  f1:=a[2];
  f2:=b[1];
 if(a[3]>s2)and(b[4]>s1) then begin win:=1; end;
 if(a[4]>s2)and(b[3]>s1) then begin win:=1; end;
 if(a[3]>=s2)or(b[4]>=s1) then begin draw:=1; end;
 if(a[4]>=s2)or(b[3]>=s1) then begin draw:=1; end;
 if(a[3]>f2)and(b[4]>f1) then begin winn:=1; end;
 if(a[4]>f2)and(b[3]>f1) then begin winn:=1; end;
 if(a[3]>=f2)or(b[4]>=f1) then begin draww:=1; end;
 if(a[4]>=f2)or(b[3]>=f1) then begin draww:=1; end;
 if win+winn=2 then writeln('Team 2')
 else if draw+draww=2 then Writeln('Draw')
 else
 Writeln('Team 1');
end.

const   fi='';
        fo='';
        s1='Team 1';
        s2='Team 2';
        s0='Draw';
var     f,g:Text;
        a,b,stop:array[1..4] of integer;
        i,tam,tam2,att1,def1,att2,def2:integer;
begin
        assign(f,fi);
        reset(f);
        assign(G,fo);
        rewrite(g);
        for i:=1 to 4 do
                readln(F,a[i],b[i]);
        close(f);

        for i:=1 to 2 do
        begin
                att1:=a[i];
                def1:=b[3-i];
                att2:=a[3];
                def2:=b[4];
                if (att2>def1) and (def2>att1) then tam:=2
                        else if (att2<def1) and (Def2<att1) then tam:=1
                                else tam:=0;
                if tam=2 then stop[i]:=2 else
                begin
                        att2:=a[4];
                        def2:=b[3];
                        if (att2>def1) and (def2>att1) then tam2:=2
                        else if (att2<def1) and (Def2<att1) then tam2:=1
                                else tam2:=0;
                        if tam2=2 then stop[i]:=2 else
                                if (tam=0) or (tam2=0) then stop[i]:=0
                                        else stop[i]:=1;
                end;
        end;
        if (stop[1]=2) and (stop[2]=2) then writeln(G,s2)
                else if (Stop[1]=1) or (stop[2]=1) then writeln(G,s1)
                        else writeln(g,s0);
        close(g);
end.

program cs_3;
var
   x,y	: array[0..1] of array[0..1] of longint;
   i,j,z: longint;
   win	: array[0..1] of integer;
   a,d	: array[0..1] of longint;
begin
   readln(x[0,0],x[0,1]);
   readln(x[1,0],x[1,1]);
   readln(y[0,0],y[0,1]);
   readln(y[1,0],y[1,1]);
   z:=0;
   for i:=0 to 1 do begin
      a[0]:=x[i,0]; d[0]:=x[1-i,1];
      win[0]:=0; win[1]:=0;
      for j:=0 to 1 do begin
	 a[1]:=y[j,0]; d[1]:=y[1-j,1];
	 {writeln(a[0],' ',d[0]);
	 writeln(a[1],' ',d[1]);}
	 if ((a[0]>d[1]) and (d[0]>a[1])) then begin
	    win[j]:=1;
	 end;
	 if ((a[1]>d[0]) and (d[1]>a[0])) then begin
	    win[j]:=2;
	 end;
      end;
      if ((win[0]=1) and (win[1]=1)) then begin
	 writeln('Team 1');
	 exit;
      end;
      if ((win[0]=2) or (win[1]=2)) then
	 z:=z+1;

   end;
   if (z>=2) then begin
      writeln('Team 2');
      exit;
   end;
   {for i:=0 to 1 do begin
      a[0]:=y[i,0]; d[0]:=y[1-i,1];
      win[0]:=0; win[1]:=0;
      for j:=0 to 1 do begin
	 a[1]:=x[j,0]; d[1]:=x[1-j,1];
	 writeln(a[0],' ',d[0]);
	 writeln(a[1],' ',d[1]);
	 if ((a[0]>d[1]) and (d[0]>a[1])) then begin
	    win[j]:=2;
	 end;
	 if ((a[1]>d[0]) and (d[1]>a[0])) then begin
	    win[j]:=1;
	 end;
      end;
      if ((win[0]=2) and (win[1]=2)) then begin
	 writeln('Team 2');
	 exit;
      end;
   end;}
   writeln('Draw');
end.

var a,b,c:array[1..4] of longint;
    i,j,k,m,l,o,p,n,ans,ans1,ans2,ans3:longint;
 begin
  for i:=1 to 4 do read(a[i],b[i]);
  if (a[1]<b[3]) and (b[2]<a[4]) then ans:=1;
  if (a[1]<b[4]) and (b[2]<a[3]) then ans:=1;
  if (a[2]<b[3]) and (b[1]<a[4]) then ans1:=1;
  if (a[2]<b[4]) and (b[1]<a[3]) then ans1:=1;
  if (a[1]>b[3]) and (b[2]>a[4]) and (a[1]>b[4]) and (b[2]>a[3]) then ans2:=1;
  if (a[2]>b[3]) and (b[1]>a[4]) and (a[2]>b[4]) and (b[1]>a[3]) then ans2:=1;
  if (ans+ans1=2) then write('Team 2')
  else if (ans2=1) then write('Team 1')
  else write('Draw')
 End.

var a,b:array[1..4]of integer;
    i,x1,x2:integer;
function max(x,y:integer):integer;
begin
    if x>y then
        max:=x
    else
        max:=y;
end;

function check(a1,d1:integer):integer;
begin
    if ((a[3]>d1)and(b[4]>a1))or((a[4]>d1)and(b[3]>a1)) then
        check:=-1
    else
        if ((d1>a[3])and(a1>b[4]))and((d1>a[4])and(a1>b[3])) then
            check:=1
        else
            check:=0;
end;

begin
    for i:=1 to 4 do
        readln(a[i],b[i]);
    x1:=check(a[1],b[2]);
    x2:=check(a[2],b[1]);
    case max(x1,x2) of
        -1:writeln('Team 2');
         0:writeln('Draw');
         1:writeln('Team 1');
    end;
    readln;
end.

type r=record def:integer; at:integer; end;
var a,b,c,d:r;
begin
 Readln(a.def,a.at);
 Readln(b.def,b.at);
 Readln(c.def,c.at);
 Readln(d.def,d.at);
 if ((a.def>c.at) and (a.def>d.at) and (b.at>c.def) and (b.at>d.def)) or ((b.def>c.at) and (b.def>d.at) and (a.at>c.def) and (a.at>d.def)) then
  writeln('Team 1')
 else
  if (((c.def>a.at) and (d.at>b.def)) or ((d.def>a.at) and (c.at>b.def))) and (((c.def>b.at) and (d.at>a.def)) or ((d.def>b.at) and (c.at>a.def))) then
   writeln('Team 2')
  else
   writeln('Draw');
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q,dem:integer;
f:text;
a:array[1..4,1..2] of integer;
kt1,kt2:boolean;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 kt1:=false;kt2:=false;
 for i:=1 to 2 do
  begin
   dem:=0;
   if i=1 then j:=2 else j:=1;
   for k:=3 to 4 do
    begin
     if k=3 then q:=4 else q:=3;
     if (a[i,1] < a[q,2]) and (a[j,2] < a[k,1]) then
        if i=1 then kt1:=true else kt2:=true;
    end;
  end;

  if (kt1=true) and (kt2=true) then writeln('Team 2') else

  writeln('Draw');
end.

var a,b:array[1..4] of longint;
    i:longint;

procedure finish(x:longint);
begin
if x=1 then write('Team 1');
if x=2 then write('Team 2');
if x=3 then write('Draw');
halt;
end;

BEGIN
for i:=1 to 4 do readln(a[i],b[i]);
if (a[1]>b[3]) and (b[2]>a[4]) and (a[1]>b[4]) and (b[2]>a[3]) then finish(1);
if (a[2]>b[3]) and (b[1]>a[4]) and (a[2]>b[4]) and (b[1]>a[3]) then finish(1);
if (((a[3]>b[1]) and (b[4]>a[2])) or ((a[4]>b[1]) and (b[3]>a[2]))) and (((a[3]>b[2]) and (b[4]>a[1])) or ((a[4]>b[2]) and (b[3]>a[1]))) then finish(2);
finish(3);
END.

var
 a,b:array[1..4]of longint;
 i,m,n,k,l,w,s,j,k1,k2,k3:longint;

begin
 for i:=1 to 4 do readln(a[i],b[i]);

 if (b[1]>a[3])and(b[1]>a[4])and(a[2]>b[3])and(a[2]>b[4]) then begin writeln('Team 1'); halt; end;
 if (a[1]>b[3])and(a[1]>b[4])and(b[2]>a[3])and(b[2]>a[4]) then begin writeln('Team 1'); halt; end;

 if ((a[1]<b[3])and(b[2]<a[4]))or((a[1]<b[4])and(b[2]<a[3])) then inc(k);
 if ((a[2]<b[3])and(b[1]<a[4]))or((a[2]<b[4])and(b[1]<a[3])) then inc(k);
 if k=2 then writeln('Team 2') else writeln('Draw');
end.

var
     F1,F2:Boolean;
     o1,o2,o3,o4,n1,n2,n3,n4:Longint;
begin
     Readln(o1,n1);
     Readln(o2,n2);
     Readln(o3,n3);
     Readln(o4,n4);
     F1:=False;
     F2:=False;
     if (((o2>n4) and (n1>o3)) and  ((o2>n3) and (n1>o4))) or
     (((o1>n4) and (n2>o3)) and ((o1>n3) and (n2>o4))) then Writeln('Team 1')
                                                       else
     if (((n4>o1) and (o3>n2)) or ((n3>o1) and (o4>n2))) and
     (((n4>o2) and (o3>n1)) or ((n3>o2) and (o4>n1))) then Writeln('Team 2')
                                                      else Writeln('Draw');
 end.

var a1,b1,a2,b2,a3,b3,a4,b4,x,y:longint;
    t1,t2,d:boolean;

begin

  t1:=false;t2:=false;d:=false;

  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);

  {First Case}
  if (a1>b3) and (b2>a4) and (a1>b4) and (b2>a3) then
    begin
      writeln('Team 1');
      halt;
    end;
  if (a2>b3) and (b1>a4) and (a2>b4) and (b1>a3) then
    begin
      writeln('Team 1');
      halt;
    end;

  //////////////////////

  {First Case}
  if ((a3>b2) and (b4>a1)) or ((a4>b2) and (b3>a1)) then
    if ((a3>b1) and (b4>a2)) or ((a4>b1) and (b3>a2))
      then
        begin
          writeln('Team 2');
          halt;
        end;

  writeln('Draw');

end.

{$r-,s-,q-,i-,o+}
var
  a1,b1,a2,b2,a3,b3,a4,b4:longint;
begin
  readln(a1,b1); readln(a2,b2); readln(a3,b3); readln(a4,b4);
  if ((a1>b3) and (b2>a4) and (a1>b4) and (b2>a3)) or
     ((a2>b3) and (b1>a4) and (a2>b4) and (b1>a3)) then begin writeln('Team 1'); halt(0); end;
  if (((a3>b2) and (b4>a1)) or ((a4>b2) and (b3>a1))) and
     (((a3>b1) and (b4>a2)) or ((a4>b1) and (b3>a2))) then begin writeln('Team 2'); halt(0); end;
  writeln('Draw');
end.

var a1,a2,a3,a4,d1,d2,d3,d4 : longint;
begin
readln ( a1, d1);
readln ( a2, d2);
readln ( a3, d3);
readln ( a4, d4);

if (a1>d3) and
   (a1>d4) and
   (d2>a3) and
   (d2>a4) then writeln('Team 1') else
if (a2>d3) and
   (a2>d4) and
   (d1>a3) and
   (d1>a4) then writeln('Team 1') else

if ( ( ( a3 > d2 ) and ( d4 > a1 ) )  or
     ( ( a4 > d2 ) and ( d3 > a1 ) ) ) and
   ( ( ( a3 > d1 ) and ( d4 > a2 ) ) or
     ( ( a4 > d1 ) and ( d3 > a2 ) ) )  then writeln('Team 2')
                                    else writeln('Draw');

end.

var
 i,j,n,m,k,kol,ans,res:longint;
 b,a:array[0..1000] of longint;
 fa,fb:boolean;
procedure ch1;
begin
 writeln('Team 1');
 halt;
end;

procedure ch2;
begin
 writeln('Team 2');
 halt;
end;

begin
{ assign(input,'input.txt');
 reset(input);
 assign(output,'output.txt');
 rewrite(output);     }
 for i:=1 to 4 do readln(a[i],b[i]);
 if (b[1]>a[3])and(b[1]>a[4])and(a[2]>b[3])and(a[2]>b[4]) then ch1;
 if (b[2]>a[3])and(b[2]>a[4])and(a[1]>b[3])and(a[1]>b[4]) then ch1;

 if ((b[3]>a[1])and(a[4]>b[2]))or((b[4]>a[1])and(a[3]>b[2])) then fa:=true;
 if ((b[4]>a[2])and(a[3]>b[1]))or((b[3]>a[2])and(a[4]>b[1])) then fb:=true;
 if (fa)and(fb) then ch2;
 writeln('Draw');
end.

Var a,b,n,m,x,y,k,l,q,p,t:longint;
  Begin
    Read(a,b,n,m);
    Read(x,y,k,l);
    q:=0;
    p:=0;
    if (a>y)and(m>k)then q:=1 else
    if (a<y)and(m<k)then q:=2
                    else q:=3;
    if (a>l)and(m>x)then p:=1 else
    if (a<l)and(m<x)then p:=2
                    else p:=3;
    if (q=1)and(p=1)then q:=1 else
    if (q=2)or(p=2)then q:=2
                   else q:=3;
    t:=0;
    p:=0;
    if (n>y)and(b>k)then t:=1 else
    if (n<y)and(b<k)then t:=2
                    else t:=3;
    if (n>l)and(b>x)then p:=1 else
    if (n<l)and(b<x)then p:=2
                    else p:=3;
    if (t=1)and(p=1)then t:=1 else
    if (t=2)or(p=2)then t:=2
                   else t:=3;
    if (q=1)or(t=1)then begin Write('Team 1');exit end;
    if (q=2)and(t=2)then begin Write('Team 2');exit end;
    Write('Draw')
  End.

const   fi      =       '';
        fo      =       '';
type    int     =       longint;
var     a,b,T   :       array[1..4]     of      int;
        i       :       int;
        ok      :       array[1..4]     of      boolean;
{}
function Tinh(t1,c1,t2,c2: int): int;
begin
        if (t1>t2)and(c1>c2) then Tinh := 1
           else if (t1<t2)and(c1<c2) then Tinh := 2
                else tinh := 0;
end;
{}
begin
        assign(input,fi);       reset(input);
        assign(output,fo);      rewrite(output);
        for i:=1 to 4 do readln(a[i],b[i]);
        T[1] := Tinh(a[1],b[2],b[3],a[4]);
        T[2] := Tinh(a[1],b[2],b[4],a[3]);
        T[3] := Tinh(a[2],b[1],b[3],a[4]);
        T[4] := Tinh(a[2],b[1],b[4],a[3]);
        OK[1] := (T[1]=1)and(T[2]=1);
        OK[2] := (T[3]=1)and(T[4]=1);
        OK[3] := (T[1]=2)or(T[2]=2);
        OK[4] := (T[3]=2)or(T[4]=2);
        if Ok[1] or Ok[2] then writeln('Team 1')
           else if OK[3] and OK[4] then writeln('Team 2')
                  else writeln('Draw');
        close(input);
        close(output);
end.

program yan;
  type state= record n,z:longint; end;
  var ar:array[1..4]of state;
      a,b,c,d:state; x,y,n,m:longint;
  function prov(j:state; x:longint):longint;
    begin
      if (j.z>ar[x].n)and(j.n>ar[x].z) then exit(1);
      if (j.z<ar[x].n)and(j.n<ar[x].z) then exit(2);
      exit(0);
    end;
  function win(j:state):longint;
    var o,p:longint;
    begin
      o:=prov(j,3); p:=prov(j,4);
      if (o=p)and(p=1) then exit(1);
      if (o=2)or(p=2) then exit(2);
      exit(0);
    end;
begin
  readln(a.z,a.n);
  readln(b.z,b.n);
  readln(c.z,c.n);
  readln(d.z,d.n);
  ar[1].z:=a.z; ar[1].n:=b.n;
  ar[2].z:=b.z; ar[2].n:=a.n;
  ar[3].z:=c.z; ar[3].n:=d.n;
  ar[4].z:=d.z; ar[4].n:=c.n;
  x:=win(ar[1]); y:=win(ar[2]);
  if (x=1)or(y=1) then
    begin
      write('Team 1');
      exit;
    end;
  if (x=2)and(y=2) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw');
end.

var
  a,b : array [0..100] of longint;
  i,j,x1,x2,y1,y2,f,y,t,h1,h2 : longint;
begin
  readln(a[1],b[1]);
  readln(a[2],b[2]);
  readln(a[3],b[3]);
  readln(a[4],b[4]);
  for i:=1 to 2 do
   begin
    h1:=2-i+1;
    f:=0;
    t:=0;
    for j:=3 to 4 do
     begin
      h2:=4-j+3;
      x1:=a[i];
      x2:=b[h1];
      y1:=a[j];
      y2:=b[h2];
      if (x1>y2) and (x2>y1) then inc(t);
      if (y1>x2) and (y2>x1) then inc(f);
     end;
    if t=2 then begin writeln('Team 1'); exit; end;
    if f>0 then inc(y);
   end;
  if y=2 then begin writeln('Team 2'); exit; end
  else writeln('Draw');
end.

var a1,a2,b1,b2,i,j,k,k1,k2:longint;
    a,b:array[0..5] of longint;
 begin
  for i:=1 to 4 do
   read(a[i],b[i]);

  for i:=1 to 2 do
   begin
    if (i=1) then begin a1:=a[1];b1:=b[2]; end
             else begin a1:=a[2];b1:=b[1]; end;

    k1:=0;
    k2:=0;
    for j:=1 to 2 do
     begin
      if (j=1) then begin a2:=a[3];b2:=b[4]; end
               else begin a2:=a[4];b2:=b[3]; end;

      if (a1>b2) and (b1>a2) then inc(k1)
      else
      if (a2>b1) and (b2>a1) then inc(k2);
     end;

    if (k1=2) then begin writeln('Team 1');halt;end;
    if (k2>0) then inc(k);
   end;

  if (k=2) then writeln('Team 2')
           else writeln('Draw');
 end.

var a,b: array[1..4] of longint;
    i: longint;

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

    for i:=1 to 4 do  read(a[i],b[i]);

    if (a[1]>b[3]) and (b[2]>a[4]) and (a[1]>b[4]) and (b[2]>a[3]) or
       (a[2]>b[3]) and (b[1]>a[4]) and (a[2]>b[4]) and (b[1]>a[3])
      then writeln('Team 1')
      else if ((b[3]>a[1]) and (a[4]>b[2]) or (b[4]>a[1]) and (a[3]>b[2])) and
              ((b[3]>a[2]) and (a[4]>b[1]) or (b[4]>a[2]) and (a[3]>b[1]))
             then writeln('Team 2') else  writeln('Draw')

end.

function f(a,b,c,d:longint):boolean;
begin
  if (a > c) and (b > d) then
    exit(True);
  exit(False);
end;

var
  a,b:array[1..4]of longint;
  i:longint;

begin
  for i:=1 to 4 do
    read(a[i],b[i]);
    if (f(a[1],b[2],b[3],a[4]) and f(a[1],b[2],b[4],a[3])) or (f(a[2],b[1],b[3],a[4]) and f(a[2],b[1],b[4],a[3])) then
    begin
      write('Team 1');
      exit;
    end;
  if (f(a[3],b[4],b[1],a[2]) or f(a[4],b[3],b[1],a[2])) and (f(a[3],b[4],b[2],a[1]) or f(a[4],b[3],b[2],a[1])) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw')
end.

function f(a,b,c,d:longint):boolean;
begin
  if (a>c) and (b>d) then
    exit(True);
  exit(False);
end;

var
  a,b:array[1..4]of longint;
  i:longint;

begin
  for i:=1 to 4 do
    read(a[i],b[i]);
  if (f(a[1],b[2],b[3],a[4]) and f(a[1],b[2],b[4],a[3])) or (f(a[2],b[1],b[3],a[4]) and f(a[2],b[1],b[4],a[3])) then
    begin
      write('Team 1');
      exit;
    end;
  if (f(a[3],b[4],b[1],a[2]) or f(a[4],b[3],b[1],a[2])) and (f(a[3],b[4],b[2],a[1]) or f(a[4],b[3],b[2],a[1])) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw')
end.

var a:array [0..200,0..200] of longint;
d,t,e,blok:array [0..1000] of longint;
x,y,z,i,j,n,m,q,w:longint;
 begin
   read(d[1],t[1]);
   read(d[2],t[2]);
   read(d[3],t[3]);
   read(d[4],t[4]);
   if (d[1]>t[3]) and (t[2]>d[4]) and (d[1]>t[4]) and (t[2]>d[3]) then begin write('Team 1'); halt; end;
   if (d[2]>t[3]) and (t[1]>d[4]) and (d[2]>t[4]) and (t[1]>d[3]) then begin write('Team 1'); halt; end;
   if (d[1]<t[3]) and (t[2]<d[4]) then begin x:=1; end;
   if (d[1]<t[4]) and (t[2]<d[3]) then begin x:=1; end;
   if (d[2]<t[3]) and (t[1]<d[4]) then begin y:=1; end;
   if (d[2]<t[4]) and (t[1]<d[3]) then begin y:=1; end;
   if (x=1) and (y=1) then write('Team 2') else
   writeln('Draw');

 end.

function f(a, b, c, d:longint):boolean;
begin
  if (a > c) and (b > d) then
    exit(True);
  exit(False);
end;

var
  a,b:array[1..4]of longint;
  i:longint;

begin
  for i:=1 to 4 do
    read(a[i],b[i]);
    if (f(a[1],b[2],b[3],a[4]) and f(a[1],b[2],b[4],a[3])) or (f(a[2],b[1],b[3],a[4]) and f(a[2],b[1],b[4],a[3])) then
    begin
      write('Team 1');
      exit;
    end;
  if (f(a[3],b[4],b[1],a[2]) or f(a[4],b[3],b[1],a[2])) and (f(a[3],b[4],b[2],a[1]) or f(a[4],b[3],b[2],a[1])) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw')
end.

{$MODE OBJFPC}
{$IFNDEF HOANG}
{$R-,Q-,S-,I-}
{$OPTIMIZATION LEVEL2}
{$INLINE ON}
{$ELSE}
{$INLINE OFF}
{$ENDIF}

program Task;
const
  InputFile  = '';
  OutputFile = '';
type
  TPlayer = record
    sdefend, sattack: Integer;
  end;
var
  fi, fo: TextFile;
  a, b, c, d: TPlayer;

procedure Enter;
begin
  ReadLn(fi, a.sdefend, a.sattack);
  ReadLn(fi, b.sdefend, b.sattack);
  ReadLn(fi, c.sdefend, c.sattack);
  ReadLn(fi, d.sdefend, d.sattack);
end;

function Win(const L1, L2, R1, R2: TPlayer): Boolean;
begin
  Result := (L1.sdefend > R2.sattack) and (L2.sattack > R1.sdefend);
end;

procedure Solve;
var
  flag1, flag2: Boolean;
begin
  flag1 := Win(a, b, c, d) and Win(a, b, d, c) or
           Win(b, a, c, d) and Win(b, a, d, c);
  flag2 := (Win(c, d, a, b) or Win(d, c, a, b)) and
           (Win(c, d, b, a) or Win(d, c, b, a));
  if not flag1 and not flag2 then WriteLn(fo, 'Draw')
  else
    if flag1 then WriteLn(fo, 'Team 1')
    else WriteLn(fo, 'Team 2');
end;

begin
  AssignFile(fi, InputFile); Reset(fi);
  AssignFile(fo, OutputFile); Rewrite(fo);
  try
    Enter;
    Solve;
  finally
    CloseFile(fi); CloseFile(fo);
  end;
end.

var
  a,d:array[1..4] of longint;
  cnt,i:longint;

procedure ans(s:string);
begin
  writeln(s);
  halt;
end;

begin
  for i:=1 to 4 do readln(a[i],d[i]);
  if ((a[1]>d[3]) and (d[2]>a[4])) and ((a[1]>d[4]) and (d[2]>a[3])) then ans('Team 1');
  if ((d[1]>a[3]) and (a[2]>d[4])) and ((d[1]>a[4]) and (a[2]>d[3])) then ans('Team 1');
  cnt:=0;
  if ((a[3]>d[1]) and (d[4]>a[2])) or ((a[4]>d[1]) and (d[3]>a[2])) then inc(cnt);
  if ((a[3]>d[2]) and (d[4]>a[1])) or ((a[4]>d[2]) and (d[3]>a[1])) then inc(cnt);
  if (cnt=2) then ans('Team 2') else ans('Draw');
end.

var
 def:array[1..4] of longint;
 atk:array[1..4] of longint;
 i,j:longint;
 ans:integer;
 sit_win:array[1..4] of longint;
 contr:array[1..4,1..4,1..2] of boolean;

begin
 For i:=1 to 4 do read(def[i],atk[i]);
 For i:=1 to 4 do
  For j:=1 to 4 do
  begin
   If def[i]>atk[j] Then contr[i,j,1]:=true;
   If atk[i]>def[j] Then contr[i,j,2]:=true;
  end;
 For i:=1 to 2 do
 begin
  For j:=1 to 2 do
  begin
   If (contr[i,j+2,1] and contr[3-i,5-j,2]) Then sit_win[i*2+j-2]:=1;
   If (contr[j+2,i,2] and contr[5-j,3-i,1]) Then sit_win[i*2+j-2]:=2;
  end;
 end;
 ans:=0;
 If ((sit_win[1]=1) and (sit_win[2]=1)) or ((sit_win[3]=1) and (sit_win[4]=1)) Then ans:=1;
 If ((sit_win[1]=2) or (sit_win[2]=2)) and ((sit_win[3]=2) or (sit_win[4]=2)) Then ans:=2;
 Case ans of
  0:writeln('Draw');
  1:writeln('Team 1');
  2:writeln('Team 2');
 end;
 readln;
 readln;
end.

Var a1,b1,c1,d1,a2,b2,c2,d2:longint;
function proverka(x,y,z,k:longint):boolean;
begin
  if (x>y)and(z>k)
  then proverka:=true
  else proverka:=false;
end;
begin
//  Assign(input,'input.txt'); reset(input);
//  Assign(output,'output.txt'); rewrite(output);
  read(a1,b1,c1,d1,a2,b2,c2,d2);
  if (proverka(a1,b2,d1,c2) and proverka(a1,d2,d1,a2)) or (proverka(c1,b2,b1,c2) and proverka(c1,d2,b1,a2))
  then begin writeln('Team 1'); halt(0) end;
  if (proverka(a2,b1,d2,c1) or proverka(c2,b1,b2,c1))and (proverka(a2,d1,d2,a1) or proverka(c2,d1,b2,a1))
  then writeln('Team 2')
  else writeln('Draw');
end.

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var   i:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if ( ((a[1]>b[3]) and (a[1]>b[4]) and (b[2]>a[3]) and (b[2]>a[4])) or ((a[2]>b[3]) and (a[2]>b[4]) and (b[1]>a[3]) and (b[1]>a[4])) )
      then writeln ('Team 1') else
  if ( (((a[1]<b[3]) and (b[2]<a[4])) or ((a[1]<b[4]) and (b[2]<a[3])))   and   (((a[2]<b[3]) and (b[1]<a[4])) or ((a[2]<b[4]) and (b[1]<a[3]))) )
      then writeln ('Team 2') else writeln ('Draw');

end.

Var a1,a2,a3,a4,b1,b2,b3,b4,k:longint;
begin
//  assign(input,'input.txt');assign(output,'output.txt');
  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);
  if ((a1>b3) and (a1>b4))and((b2>a3)and(b2>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a2>b3) and (a2>b4))and((b1>a3)and(b1>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  k:=0;
{  if ((a3>b1)and(b4>a2))or((a3>b2)and(b4>a1)) then
    inc(k);
  if ((a4>b1)and(b3>a2))or((a4>b2)and(b3>a1)) then
    inc(k);}
  if ((a3>b1)and(b4>a2))or((a4>b1)and(b3>a2)) then
    inc(k);
  if ((a3>b2)and(b4>a1))or((a4>b2)and(b3>a1)) then
    inc(k);
  if k>=2 then writeln('Team 2')
  else writeln('Draw');
end.

var a,b: array[1..4] of longint;
    i,amax,bmax: longint;

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

    for i:=1 to 4 do  read(a[i],b[i]);
    if (a[1]>=a[2]) and (b[2]>=b[1]) then begin amax:=1; bmax:=2 end
      else if (a[2]>=a[1]) and (b[1]>=b[2]) then begin amax:=2; bmax:=1 end
             else begin amax:=1; bmax:=2 end;

    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) or
       (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3])
      then writeln('Team 1')
      else if (a[3]>a[amax]) and (b[4]>b[bmax]) or (a[4]>a[amax]) and (b[3]>b[bmax])
             then writeln('Team 2') else  writeln('Draw')

end.

var a,b: array[1..4] of longint;
    i: longint;

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

    for i:=1 to 4 do  read(a[i],b[i]);

    if (a[1]>b[3]) and (b[2]>a[4]) and (a[1]>b[4]) and (b[2]>a[3]) or
       (a[2]>b[3]) and (b[1]>a[4]) and (a[2]>b[4]) and (b[1]>a[3])
      then writeln('Team 1')
      else if (b[3]>a[1]) and (a[4]>b[2]) or (b[4]>a[1]) and (a[3]>b[2]) or
              (b[3]>a[2]) and (a[4]>b[1]) or (b[4]>a[2]) and (a[3]>b[1])
             then writeln('Team 2') else  writeln('Draw')

end.

var a,b: array[1..4] of longint;
    i: longint;

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

    for i:=1 to 4 do  read(a[i],b[i]);

    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) or
       (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3])
      then writeln('Team 1')
      else if (a[3]>a[1]) and (b[4]>b[2]) or (a[4]>a[1]) and (b[3]>b[2]) or
              (a[3]>a[2]) and (b[4]>b[1]) or (a[4]>a[2]) and (b[3]>b[1])
             then writeln('Team 2') else  writeln('Draw')

end.

var a:array [0..200,0..200] of longint;
d,t,e,blok:array [0..1000] of longint;
x,y,z,i,j,n,m,q,w:longint;
 begin
   read(d[1],t[1]);
   read(d[2],t[2]);
   read(d[3],t[3]);
   read(d[4],t[4]);
   if (d[1]>d[3]) and (t[2]>t[4])  and (d[1]>d[4]) and (t[2]>t[3]) then begin write('Team 1'); halt; end;
   if (d[2]>d[3]) and (t[1]>t[4]) and (d[2]>d[4]) and (t[1]>t[3]) then begin write('Team 1'); halt; end;
   if (d[1]<d[3]) and (t[2]<t[4]) then begin write('Team 2'); halt; end;
   if (d[1]<d[4]) and (t[2]<t[3]) then begin write('Team 2'); halt; end;
   if (d[2]<d[3]) and (t[1]<t[4]) then begin write('Team 2');halt; end;
   if (d[2]<d[4]) and (t[1]<t[3]) then begin write('Team 2'); halt; end;
   writeln('Draw');

 end.

var a:array [0..200,0..200] of longint;
d,t,e,blok:array [0..1000] of longint;
x,y,z,i,j,n,m,q,w:longint;
 begin
   read(d[1],t[1]);
   read(d[2],t[2]);
   read(d[3],t[3]);
   read(d[4],t[4]);
   if (d[1]>t[3]) and (t[2]>d[4]) and (d[1]>t[4]) and (t[2]>d[3]) then begin write('Team 1'); halt; end;
   if (d[2]>t[3]) and (t[1]>d[4]) and (d[2]>t[4]) and (t[1]>d[3]) then begin write('Team 1'); halt; end;
   if (d[1]<t[3]) and (t[2]<d[4]) then begin write('Team 2'); halt; end;
   if (d[1]<t[4]) and (t[2]<d[3]) then begin write('Team 2'); halt; end;
   if (d[2]<t[3]) and (t[1]<d[4]) then begin write('Team 2'); halt; end;
   if (d[2]<t[4]) and (t[1]<d[3]) then begin write('Team 2'); halt; end;
   writeln('Draw');

 end.

Var a1,b1,c1,d1,a2,b2,c2,d2:longint;
function proverka(x,y,z,k:longint):boolean;
begin
  if (x>y)and(z>k)
  then proverka:=true
  else proverka:=false;
end;
begin
//  Assign(input,'input.txt'); reset(input);
//  Assign(output,'output.txt'); rewrite(output);
  read(a1,b1,c1,d1,a2,b2,c2,d2);
  if proverka(a1,b2,d1,c2) or proverka(a1,d2,d1,a2) or proverka(c1,b2,b1,c2) or proverka(c1,d2,b1,a2)
  then begin writeln('Team 1'); halt(0) end;
  if proverka(a2,b1,d2,c1) or proverka(a2,d1,d2,a1)or proverka(c2,b1,b2,c1) or proverka(c2,d1,b2,a1)
  then writeln('Team 2')
  else writeln('Draw');
end.

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num1,num2:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>=a[2]) and (b[1]<=b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>=a[1]) and (b[2]<=b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num1:=0;
      num2:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num1) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then inc(num2);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num1) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then inc(num2);
      if (num1=2)  then writeln('Team 1') else
      if (num2=2) or (num2=1) then writeln('Team 2') else writeln('Draw');
    end;
end.

{

2 4
1 1
3 5
4 1

}

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>a[2]) and (b[1]<b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>a[1]) and (b[2]<b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      if (num=2) then writeln('Team 1') else
      if (num=-2) or (num=-1) then writeln('Team 2') else writeln('Draw');
    end;
end.

{

2 3
1 2
1 1
1 1

}

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>a[2]) and (b[1]<b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>a[1]) and (b[2]<b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      if (num=2) or (num=1) then writeln('Team 1') else
      if num=-2 then writeln('Team 2') else writeln('Draw');
    end;
end.

{

2 3
1 2
1 1
1 1

}

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num1,num2:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>=a[2]) and (b[1]<=b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>=a[1]) and (b[2]<=b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num1:=0;
      num2:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num1) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then inc(num2);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num1) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then inc(num2);
      if (num1=2)  then writeln('Team 1') else
      if (num2=2) then writeln('Team 2') else writeln('Draw');
    end;
end.

{

1 1
1 2
2 0
0 3

}

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>a[2]) and (b[1]<b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>a[1]) and (b[2]<b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      if num=2 then writeln('Team 1') else
      if num=-2 then writeln('Team 2') else writeln('Draw');
    end;
end.

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num1,num2:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if ( ((a[1]>a[3]) and (a[1]>a[4]) and (b[2]>b[3]) and (b[2]>b[4])) or ((a[2]>a[3]) and (a[2]>a[4]) and (b[1]>b[3]) and (b[1]>b[4])) )
      then writeln ('Team 1') else
  if ( (((a[1]<a[3]) and (b[2]<b[4])) or ((a[1]<a[4]) and (b[2]<b[3])))   and   (((a[2]<a[3]) and (b[1]<b[4])) or ((a[2]<a[4]) and (b[1]<b[3]))) )
      then writeln ('Team 2') else writeln ('Draw');

end.

{

2 4
1 1
3 5
4 1

}

program CCC;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var i,max_a,max_b,num:integer;
      a: array [1..5] of integer;
      b: array [1..5] of integer;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if (a[1]>a[2]) and (b[1]<b[2]) then
    begin
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

  if (a[2]>a[1]) and (b[2]<b[1]) then
    begin
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then writeln('Team 1') else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then writeln('Team 2') else writeln('Draw');
    end else

    begin
      num:=0;
      max_a:=a[1];
      max_b:=b[2];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      max_a:=a[2];
      max_b:=b[1];
      if (max_a>a[3]) and (max_a>a[4]) and (max_b>b[3]) and (max_b>b[4]) then inc(num) else
        if ((a[3]>max_a) and (b[4]>max_b)) or ((a[4]>max_a) and (b[3]>max_b)) then dec(num);
      if (num=2) or (num=1) then writeln('Team 1') else
      if (num=-2) or (num=-1) then writeln('Team 2') else writeln('Draw');
    end;
end.

{

2 3
1 2
1 1
1 1

}

Var a1,a2,a3,a4,b1,b2,b3,b4:longint;
begin
//  assign(input,'input.txt');assign(output,'output.txt');
  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);
  if ((a1>a3) and (a1>a4))and((b2>b3)and(b2>b4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a2>a3) and (a2>a4))and((b1>b3)and(b1>b4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a3>a1)and(b4>b2))or((a3>a2)and(b4>b1))or
     ((a4>a1)and(b3>b2))or((a4>a2)and(b3>b1)) then
    writeln('Team 2')
  else writeln('Draw');
end.

Var a1,a2,a3,a4,b1,b2,b3,b4:longint;
begin
//  assign(input,'input.txt');assign(output,'output.txt');
  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);
  if ((a1>b3) and (a1>b4))and((b2>a3)and(b2>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a2>b3) and (a2>b4))and((b1>a3)and(b1>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a3>b1)and(b4>a2))or((a3>b2)and(b4>a1))or
     ((a4>b1)and(b3>a2))or((a4>b2)and(b3>a1)) then
    writeln('Team 2')
  else writeln('Draw');
end.

Var a1,a2,a3,a4,b1,b2,b3,b4,k:longint;
begin
//  assign(input,'input.txt');assign(output,'output.txt');
  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);
  if ((a1>b3) and (a1>b4))and((b2>a3)and(b2>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  if ((a2>b3) and (a2>b4))and((b1>a3)and(b1>a4)) then
    begin
      writeln('Team 1');
      halt(0);
    end;
  k:=0;
  if ((a3>b1)and(b4>a2))or((a3>b2)and(b4>a1)) then
    inc(k);
  if ((a4>b1)and(b3>a2))or((a4>b2)and(b3>a1)) then
    inc(k);
  if k>=2 then writeln('Team 2')
  else writeln('Draw');
end.

var a,b:array[1..488] of longint;
win,draw,i,j,s1,s2,f1,f2:longint;
begin
 for i:=1 to 4 do
  read(a[i],b[i]);
  s1:=a[1];
  s2:=b[2];
  f1:=a[2];
  f2:=b[2];
 if(a[3]>s2)and(b[4]>s1) then begin win:=1; end;
 if(a[4]>s2)and(b[3]>s1) then begin win:=1; end;
 if(a[3]>=s2)or(b[4]>=s1) then begin draw:=1; end;
 if(a[4]>=s2)or(b[3]>=s1) then begin draw:=1; end;
 if(a[3]>f2)and(b[4]>f1) then begin win:=win+1; end;
 if(a[4]>f2)and(b[3]>f1) then begin win:=win+1; end;
 if(a[3]>=f2)or(b[4]>=f1) then begin draw:=draw+1; end;
 if(a[4]>=f2)or(b[3]>=f1) then begin draw:=draw+1; end;
 if win=2 then writeln('Team 2')
 else if draw=2 then Writeln('Draw')
 else
 Writeln('Team 1');
end.

var a,b:array[1..488] of longint;
i,j,s1,s2:longint;
begin
 for i:=1 to 4 do
  read(a[i],b[i]);
  if(a[1]>=a[2])and(b[2]>=b[1]) then begin s1:=a[1]; s2:=b[2]; end
  else begin s1:=b[1]; s2:=a[2]; end;
 if(a[3]>s2)and(b[4]>s1) then begin writeln('Team 2'); exit; end;
 if(a[4]>s2)and(b[3]>s1) then begin writeln('Team 2'); exit; end;
 if(a[3]>=s2)or(b[4]>=s1) then begin writeln('Draw'); exit; end;
 if(a[4]>=s2)or(b[3]>=s1) then begin writeln('Draw'); exit; end;
 Writeln('Team 1');
end.

var i,j,n, x, x1,x2, dx, y, y1,y2, ans1, ans2: LongInt;
a,b: array[0..101] of LongInt;
begin
  for i:=1 to 4 do
  Readln(a[i],b[i]);

  x1:=a[1]+b[2];
  x2:=a[2]+b[1];

  if x1=x2 then
  begin
    if ((a[3]>a[1]) and (b[4]>b[2]) or (a[4]>a[1]) and (b[3]>b[2])) or ((a[3]>a[2]) and (b[4]>b[1]) or (a[4]>a[2]) and (b[3]>b[1])) then Writeln('Team 2') else
    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) and (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end else
  if x1>x2 then
  begin
    if ((a[3]>a[1]) and (b[4]>b[2]) or (a[4]>a[1]) and (b[3]>b[2])) then Writeln('Team 2') else
    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end else
  begin
    if (a[3]>a[2]) and (b[4]>b[1]) or (a[4]>a[2]) and (b[3]>b[1]) then Writeln('Team 2') else
    if (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end;
end.

var i,j,n, x, x1,x2, dx, y, y1,y2, ans1, ans2: LongInt;
a,b: array[0..101] of LongInt;
begin
  for i:=1 to 4 do
  Readln(a[i],b[i]);

  x1:=a[1]+b[2];
  x2:=a[2]+b[1];

  ans1:=0;
  if a[1]>a[3] then inc(ans1);
  if b[2]>b[4] then inc(ans1);
  if a[1]>a[4] then inc(ans1);
  if b[2]>b[3] then inc(ans1);

  ans2:=0;
  if a[2]>a[3] then inc(ans2);
  if b[1]>b[4] then inc(ans2);
  if a[2]>a[4] then inc(ans2);
  if b[1]>b[3] then inc(ans2);

  if ans1>ans2 then
  begin
    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) then Writeln('Team 1') else
    if (a[1]<a[3]) and (b[2]<b[4]) or (a[1]<a[4]) and (b[2]<b[3]) then Writeln('Team 2') else Writeln('Draw');
  end else
  begin
    if (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3]) then Writeln('Team 1') else
    if (a[2]<a[3]) and (b[1]<b[4]) or (a[2]<a[4]) and (b[1]<b[3]) then Writeln('Team 2') else Writeln('Draw');
  end;
end.

var i,j,n, x, x1,x2, dx, y, y1,y2, ans1, ans2: LongInt;
a,b: array[0..101] of LongInt;
begin
  for i:=1 to 4 do
  Readln(a[i],b[i]);

  x1:=a[1]+b[2];
  x2:=a[2]+b[1];

  if x1=x2 then
  begin
    if ((a[3]>a[1]) and (b[4]>b[2]) or (a[4]>a[1]) and (b[3]>b[2])) and ((a[3]>a[2]) and (b[4]>b[1]) or (a[4]>a[2]) and (b[3]>b[1])) then Writeln('Team 2') else
    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) and (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end else
  if x1>x2 then
  begin
    if ((a[3]>a[1]) and (b[4]>b[2]) or (a[4]>a[1]) and (b[3]>b[2])) then Writeln('Team 2') else
    if (a[1]>a[3]) and (b[2]>b[4]) and (a[1]>a[4]) and (b[2]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end else
  begin
    if (a[3]>a[2]) and (b[4]>b[1]) or (a[4]>a[2]) and (b[3]>b[1]) then Writeln('Team 2') else
    if (a[2]>a[3]) and (b[1]>b[4]) and (a[2]>a[4]) and (b[1]>b[3]) then Writeln('Team 1') else
    Writeln('Draw');
  end;
end.

var a,b,c:array[1..4] of longint;
    i,j,k,m,l,o,p,n,ans,ans1,ans2,ans3:longint;
 begin
  for i:=1 to 4 do read(a[i],b[i]);
  if (a[1]<b[3]) and (b[2]<a[4]) then ans:=1;
  if (a[1]<b[4]) and (b[2]<a[3]) then ans:=1;
  if (a[2]<b[3]) and (b[1]<a[4]) then ans1:=1;
  if (a[2]<b[4]) and (b[1]<a[3]) then ans1:=1;
  if (a[1]>b[3]) and (b[2]>a[4]) then ans2:=1;
  if (a[1]>b[4]) and (b[2]>a[3]) then ans2:=1;
  if (a[2]>b[3]) and (b[1]>a[4]) then ans3:=1;
  if (a[2]>b[4]) and (b[1]>a[3]) then ans3:=1;
  if (ans+ans1=2) then write('Team 2')
  else if (ans2+ans3=1) then write('Team 1')
  else write('Draw')
 End.

var a,b,c:array[1..4] of longint;
    i,j,k,m,l,o,p,n,ans,ans1,ans2,ans3:longint;
 begin
  for i:=1 to 4 do read(a[i],b[i]);
  if (a[1]<b[3]) and (b[2]<a[4]) then ans:=1;
  if (a[1]<b[4]) and (b[2]<a[3]) then ans:=1;
  if (a[2]<b[3]) and (b[1]<a[4]) then ans1:=1;
  if (a[2]<b[4]) and (b[1]<a[3]) then ans1:=1;
  if (a[1]>b[3]) and (b[2]>a[4]) then ans2:=1;
  if (a[1]>b[4]) and (b[2]>a[3]) then ans2:=1;
  if (a[2]>b[3]) and (b[1]>a[4]) then ans3:=1;
  if (a[2]>b[4]) and (b[1]>a[3]) then ans3:=1;
  if (ans+ans1=2) then write('Team 2')
  else if (ans2+ans3=2) then write('Team 1')
  else write('Draw')
 End.

var a,b:array[1..4]of integer;
    i,p,q:integer;
function max(x,y:integer):integer;
begin
    if x>y then max:=x
    else max:=y;
end;

begin
    for i:=1 to 4 do
        readln(a[i],b[i]);
    if ((a[1]>max(b[3],b[4]))and(b[2]>max(a[3],a[4])))or((a[2]>max(b[3],b[4]))and(b[1]>max(a[3],a[4]))) then
        writeln('Team 1')
    else
        if ((a[3]>max(b[1],b[2]))and(b[4]>max(a[1],a[2])))or((a[4]>max(b[1],b[2]))and(b[3]>max(a[1],a[2]))) then
            writeln('Team 2')
        else
            writeln('Draw');
    readln;
end.

var a,b:array[1..4]of integer;
    i,p,q:integer;
function max(x,y:integer):integer;
begin
    if x>y then max:=x
    else max:=y;
end;

begin
    for i:=1 to 4 do
        readln(a[i],b[i]);
    p:=1;
    if a[p]<a[3-p] then p:=3-p;
    q:=3;
    if a[q]<a[7-q] then q:=7-q;
    if a[p]>a[q] then
        if a[3-p]>a[q] then
            if max(b[1],b[2])>max(b[3],b[4]) then
                writeln('Team 1')
            else
                writeln('Draw')
        else
            if max(b[3],b[4])<b[3-p] then
                writeln('Team 1')
            else
                writeln('Draw')
    else
        if a[p]=a[q] then
            writeln('Draw')
        else begin
            if a[p]<a[7-q] then
                if max(b[3],b[4])>max(b[1],b[2]) then
                    writeln('Team 2')
                else writeln('Draw')
            else
                if max(b[1],b[2])<b[7-q] then
                    writeln('Team 2')
                else
                    writeln('Draw')

        end;
    readln;
end.

var a,b:array[1..4]of integer;
    i,p,q:integer;
function max(x,y:integer):integer;
begin
    if x>y then max:=x
    else max:=y;
end;

begin
    for i:=1 to 4 do
        readln(a[i],b[i]);
    p:=1;
    if a[p]<a[3-p] then p:=3-p;
    q:=3;
    if b[q]<b[7-q] then q:=7-q;
    if a[p]>b[q] then
        if a[3-p]>b[q] then
            if max(b[1],b[2])>max(a[3],a[4]) then
                writeln('Team 1')
            else
                writeln('Draw')
        else
            if b[3-p]>max(a[3],a[4]) then
                writeln('Team 1')
            else
                writeln('Draw')
    else
        if a[p]=b[q] then
            writeln('Draw')
        else
            if a[p]<b[7-q] then
                if max(a[3],a[4])>max(b[1],b[2]) then
                    writeln('Team 2')
                else
                    writeln('Draw')
            else
                if a[7-q]>b[3-p] then
                    writeln('Team 2')
                else
                    writeln('Draw');
    readln;
end.

var a,b:array[1..4]of integer;
    i,p,q:integer;
function max(x,y:integer):integer;
begin
    if x>y then max:=x
    else max:=y;
end;

begin
    for i:=1 to 4 do
        readln(a[i],b[i]);
    p:=1;
    if a[p]<a[3-p] then p:=3-p;
    q:=3;
    if a[q]<a[7-q] then q:=7-q;
    if a[p]>a[q] then
        if a[3-p]>a[q] then
            if max(b[1],b[2])>max(b[3],b[4]) then
                writeln('Team 1')
            else
                writeln('Draw')
        else
            if max(b[3],b[4])<b[3-p] then
                writeln('Team 1')
            else
                writeln('Draw')
    else
        if a[p]=a[q] then
            writeln('Draw')
        else begin
            if a[p]<a[7-q] then
                if max(b[3],b[4])>max(b[1],b[2]) then
                    writeln('Team 2')
                else writeln('Draw')
            else
                if b[3-p]<b[7-q] then
                    writeln('Team 2')
                else
                    writeln('Draw')

        end;
    readln;
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then
      begin
       writeln('Team 2');
       exit;
      end;
    end;
  end;

 writeln('Draw');
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q,dem:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then inc(dem);
    end;
  end;

 if dem>=2 then writeln('Team 2') else
        writeln('Draw')
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q,dem:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then inc(dem);
    end;
  end;

 if dem=2 then writeln('Team 2') else
        writeln('Draw')
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q,dem:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then inc(dem);
    end;
  end;

 if dem=2 then writeln('Team 2') else
        writeln('Draw')
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 if a[1,1] < a[2,1] then
  begin
   swap(a[1,1],a[2,1]);
   swap(a[1,2],a[2,2]);
  end;
 if a[3,1] < a[4,1] then
  begin
   swap(a[3,1],a[4,1]);
   swap(a[3,2],a[4,2]);
  end;

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if ((a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]))
   or ((a[i,2] > a[3,1]) and (a[i,2] > a[4,1])
     and (a[j,1] > a[3,2]) and (a[j,1] > a[4,2])) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then
      begin
       writeln('Team 2');
       exit;
      end;
    end;
  end;

 writeln('Draw');
end.

{$MODE OBJFPC}

program kicker;
var i,n,j,k,q,dem:integer;
f:text;
a:array[1..4,1..2] of integer;

procedure swap(var a,b:integer);
 var i:integer;
 begin
  i:=a;a:=b;b:=i;
 end;

begin
 assign(f,'');
 reset(f);
 for i:=1 to 4 do readln(f,a[i,1],a[i,2]);
 close(f);

 for i:=1 to 2 do
  begin
   if i=1 then j:=2 else j:=1;
   if (a[i,1] > a[3,2]) and (a[i,1] > a[4,2])
     and (a[j,2] > a[3,1]) and (a[j,2] > a[4,1]) then
      begin
       writeln('Team 1');
       exit;
      end;
  end;

 for i:=3 to 4 do
  begin
   dem:=0;
   if i=3 then j:=4 else j:=3;
   for k:=1 to 2 do
    begin
     if k=1 then q:=2 else q:=1;
     if (a[i,1] > a[q,2]) and (a[j,2] > a[k,1]) then inc(dem);
    end;
  end;

 if dem=2 then writeln('Team 2') else
        writeln('Draw')
end.

var
  a,b : array[1..4] of longint;
  at1,at2,za1,za2,i,at3,za3,at4,za4 : longint;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  at1:=b[1]; za1:=a[2];
  at2:=b[2]; za2:=a[1];
  at3:=b[3]; za3:=a[4];
  at4:=b[4]; za4:=a[3];
  if (at1 > at3) and (at1 > at4) and (za1 > za3) and (za1 > za4) then writeln('Team 1') else
  if ((at3 > at1) and (za3 > za1)) or ((at4 > at1) and (za4 > za1)) or
     ((at3 > at2) and (za3 > za2)) or ((at4 > at2) and (za4 > za2)) then writeln('Team 2') else writeln('Draw');
end.

var
  a,b : array[1..4] of longint;
  at1,at2,za1,za2,i,at3,za3 : longint;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  if a[1] > a[2] then begin at1:=b[2]; za1:=a[1]; end else
  if a[1] < a[2] then begin at1:=b[1]; za1:=a[2]; end else
  if a[1] = a[2] then begin
    if b[1] > b[2] then begin at1:=b[1]; za1:=a[2]; end else
                        begin at1:=b[2]; za1:=a[1]; end;
  end;

  if a[3] > a[4] then begin at2:=b[4]; za2:=a[3]; end else
  if a[3] < a[4] then begin at2:=b[3]; za2:=a[4]; end else
  if a[3] = a[4] then begin
    if b[3] > b[4] then begin at2:=b[3]; za2:=a[4]; end else
                        begin at2:=b[4]; za2:=a[3]; end;
  end;

  if b[3] > b[4] then begin at3:=b[3]; za3:=a[4]; end else
  if b[3] < b[4] then begin at3:=b[4]; za3:=a[3]; end else
  if b[3] = b[4] then begin
    if a[3] > a[4] then begin at3:=b[4]; za3:=a[3]; end
                   else begin at3:=b[3]; za3:=a[4]; end;
  end;
  if (at1 > at2) and (za1 > za2) and (at1 > at3) and (za1 > za3) then writeln('Team 1') else
  if ((at2 > at1) and (za2 > za1)) or ((at3 > at1) and (za3 > za1)) then writeln('Team 2') else writeln('Draw');
end.

var
  a,b : array[1..4] of longint;
  at1,at2,za1,za2,i,at3,za3,at4,za4 : longint;

begin
  for i:=1 to 4 do readln(a[i],b[i]);
  at1:=b[1]; za1:=a[2];
  at2:=b[2]; za2:=a[1];
  at3:=b[3]; za3:=a[4];
  at4:=b[4]; za4:=a[3];
  if ((at1 > at3) and (za1 > za3)) or ((at1 > at4) and (za1 > za4)) or
     ((at2 > at3) and (za2 > za3)) or ((at2 > at4) and (za2 > za4)) then writeln('Team 1') else
  if ((at3 > at1) and (za3 > za1)) or ((at4 > at1) and (za4 > za1)) or
     ((at3 > at2) and (za3 > za2)) or ((at4 > at2) and (za4 > za2)) then writeln('Team 2') else writeln('Draw');
end.

var
 a,a1,b,b1,c,c1,d,d1,w,l,s,k,k1:longint;
begin
 readln(a,b);
 readln(c,d);
 readln(a1,b1);
 readln(c1,d1);
 if ((a>d1)and(a>b1))or((c>d1)and(c>b1)) then writeln('Draw') else writeln('Team 2');
end.

var
     F1,F2:Boolean;
     o1,o2,o3,o4,n1,n2,n3,n4:Longint;
begin
     Readln(o1,n1);
     Readln(o2,n2);
     Readln(o3,n3);
     Readln(o4,n4);
     F1:=False;
     F2:=False;
     if ((n4>o1) and (o3>n2)) or ((n3>o1) and (o4>n2)) then F2:=True
                                                       else
     if ((o1>n4) and (n2>o3)) and ((o1>n3) and (n2>o4)) then F1:=True;
     if ((n4>o2) and (o3>n1)) or ((n3>o2) and (o4>n1)) then F2:=True
                                                       else
     if ((o2>n4) and (n1>o3)) and  ((o2>n3) and (n1>o4)) then F1:=True;
     if F1 then Writeln('Team 1')
           else
     if F2 then Writeln('Team 2')
           else Writeln('Draw');
 end.

var a1,b1,a2,b2,a3,b3,a4,b4,x,y:longint;
    t1,t2,d:boolean;

begin

  t1:=false;t2:=false;d:=false;

  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);

  {First Case}
  if (a1>b3) and (a1>b4) and (b2>a3) and (b2>b4) then
    begin
      writeln('Team 1');
      halt;
    end;
  {Second Case}
  if (a2>b3) and (a2>b4) and (b1>a3) and (b1>b4) then
    begin
      writeln('Team 1');
      halt;
    end;

  //////////////////////

  {First Case}
  if ((a3>b2) and (b4>a1)) or ((a4>b2) and (b3>a1)) then
    if ((a3>b1) and (b4>a2)) or ((a4>b1) and (b3>a2))
      then
        begin
          writeln('Team 2');
          halt;
        end;

  writeln('Draw');

end.

var a1,b1,a2,b2,a3,b3,a4,b4,x,y:longint;
    t1,t2,d:boolean;

begin

  t1:=false;t2:=false;d:=false;

  readln(a1,b1);
  readln(a2,b2);
  readln(a3,b3);
  readln(a4,b4);

  {First Case}
  if (a1>b3) and (a1>b4) and (b2>a3) and (b2>b4) then
    begin
      writeln('Team 1');
      halt;
    end;
  {Second Case}
  if (a2>b3) and (a2>b4) and (b1>a3) and (b1>b4) then
    begin
      writeln('Team 1');
      halt;
    end;

  //////////////////////

  {First Case}
  if (a3>b1) and (a3>b2) then
    if ((b4>a1) and (b4>=a2)) or ((b4>a2) and (b4>=a1)) then
      begin
        writeln('Team 2');
        halt;
      end;

  {Second Case}
  if (a4>b1) and (a4>b2) then
    if ((b3>a1) and (b3>=a2)) or ((b3>a2) and (b3>=a1)) then
      begin
        writeln('Team 2');
        halt;
      end;

  writeln('Draw');

end.

var a1,a2,a3,a4,d1,d2,d3,d4 : longint;
begin
readln ( a1, d1);
readln ( a2, d2);
readln ( a3, d3);
readln ( a4, d4);

if (a1>d3) and
   (a1>d4) and
   (d2>a3) and
   (d2>a4) then writeln('Team 1') else
if (a2>d3) and
   (a2>d4) and
   (d1>a3) and
   (d1>a4) then writeln('Team 1') else

if ( ( ( a3 > d2 ) and ( d4 > a1) )  or
     ( ( a4 > d2 ) and ( d4 > a1) ) ) and
   ( ( ( a3 > d1 ) and ( d4 > a2) ) or
     ( ( a4 > d1 ) and ( d3 > a2) ) )  then writeln('Team 2')
                                    else writeln('Draw');

end.

var
 i,j,n,m,k,kol,ans,res:longint;
 b,a:array[0..1000] of longint;
 fa,fb:boolean;
procedure ch1;
begin
 writeln('Team 1');
 halt;
end;

procedure ch2;
begin
 writeln('Team 2');
 halt;
end;

begin
{ assign(input,'input.txt');
 reset(input);
 assign(output,'output.txt');
 rewrite(output);  }
 for i:=1 to 4 do readln(a[i],b[i]);
 if (b[1]>a[3])and(b[1]>a[4])and(a[2]>b[3])and(a[2]>b[4]) then ch1;
 if (b[2]>a[3])and(b[2]>a[4])and(a[1]>b[3])and(a[1]>b[4]) then ch1;

 if ((b[1]<a[3])and(b[1]<a[4]))or((a[2]<b[3])and(a[2]<b[4])) then fa:=true;
 if ((b[2]<a[3])and(b[2]<a[4]))or((a[1]<b[3])and(a[1]<b[4])) then fb:=true;

 if (fa)and(fb) then ch2;
 writeln('Draw');
end.

program yan;
  type state= record n,z:longint; end;
  var ar:array[1..4]of state;
      a,b,c,d:state; x,y,n,m:longint;
  function prov(j:state; x:longint):longint;
    begin
      if (j.z>ar[x].n)and(j.n>ar[x].z) then exit(1);
      if (j.z<ar[x].n)and(j.n<ar[x].z) then exit(2);
      exit(0);
    end;
  function win(j:state):longint;
    var o,p:longint;
    begin
      o:=prov(j,3); p:=prov(j,4);
      if (o=p)and(p=1) then exit(1);
      if (o=2)or(p=2) then exit(2);
      exit(0);
    end;
begin
  readln(a.z,a.n);
  readln(b.z,b.n);
  readln(c.z,c.n);
  readln(d.z,d.n);
  ar[1].z:=a.z; ar[1].n:=b.z;
  ar[2].z:=b.z; ar[2].n:=a.n;
  ar[3].z:=c.z; ar[3].n:=d.n;
  ar[4].z:=d.z; ar[4].n:=c.n;
  x:=win(ar[1]); y:=win(ar[2]);
  if (x=1)or(y=1) then
    begin
      write('Team 1');
      exit;
    end;
  if (x=2)and(y=2) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw');
end.

var a1,a2,b1,b2,i,j,k,k1,k2:longint;
    a,b:array[0..5] of longint;
 begin
  for i:=1 to 4 do
   read(a[i],b[i]);

  for i:=1 to 2 do
   begin
    if (i=1) then begin a1:=a[1];b1:=b[2]; end
             else begin a1:=a[2];b1:=b[1]; end;

    k1:=0;
    k2:=0;
    for j:=1 to 2 do
     begin
      if (j=1) then begin a2:=a[3];b2:=b[4]; end
               else begin a2:=a[4];b2:=b[3]; end;

      if (a1>a2) and (b1>b2) then inc(k1)
      else
      if (a2>a1) and (b2>b1) then inc(k2);
     end;

    if (k1=2) then begin writeln('Team 1');halt;end;
    if (k2>0) then inc(k);
   end;

  if (k=2) then writeln('Team 2')
           else writeln('Draw');
 end.

function f(a,b,c,d:longint):boolean;
begin
  if (a>c) and (b>d) then
    exit(True);
  exit(False);
end;

var
  a,b:array[1..4]of longint;
  i:longint;

begin
  for i:=1 to 4 do
    read(a[i],b[i]);
  if (f(a[1],b[2],a[3],a[4]) and f(a[1],b[2],a[4],b[3])) or (f(a[2],b[1],a[3],a[4]) and f(a[2],b[1],a[4],b[3])) then
    begin
      write('Team 1');
      exit;
    end;
  if (f(a[3],b[4],a[1],a[2]) or f(a[4],b[3],a[1],b[2])) or (f(a[3],b[4],a[2],a[1]) and f(a[3],b[4],a[2],b[1])) then
    begin
      write('Team 2');
      exit;
    end;
  write('Draw')
end.

var
 def:array[1..4] of longint;
 atk:array[1..4] of longint;
 i,j:longint;
 ans:integer;
 contr:array[1..4,1..4,1..2] of boolean;

begin
 For i:=1 to 4 do read(def[i],atk[i]);
 For i:=1 to 4 do
  For j:=1 to 4 do
  begin
   If def[i]>atk[j] Then contr[i,j,1]:=true;
   If atk[i]>atk[j] Then contr[i,j,2]:=true;
  end;
 For i:=1 to 2 do
 begin
  j:=0;
  If contr[i,3,1] then inc(j);
  If contr[i,4,1] then inc(j);
  If contr[3-i,3,2] then inc(j);
  If contr[3-i,4,2] then inc(j);
  If j=4 then
  begin
   ans:=1;
  end
  else
  begin
   If j=3 Then
   begin
    If ans<>1 then ans:=-1;
   end
   else
   begin
    If j=2 Then
    begin
     If not((contr[i,3,1] and contr[3-i,4,2]) or (contr[i,4,1] and contr[3-i,3,2])) then
     begin
      If ans<>1 then ans:=-1;
     end
     else
     begin
      If (contr[3,i,2] and contr[4,3-i,1]) or (contr[4,i,2] and contr[3,3-i,1]) Then
      begin
       If (ans<>1) and (ans<>-1) Then ans:=2;
      end
      else
      begin
       If ans<>1 then ans:=-1;
      end;
     end;
    end
    else
    begin
     j:=0;
     If contr[2+i,1,1] then inc(j);
     If contr[2+i,2,1] then inc(j);
     If contr[5-i,1,2] then inc(j);
     If contr[5-i,2,2] then inc(j);
     Case j of
      0: If ans<>1 then ans:=-1;
      1: If ans<>1 then ans:=-1;
      2: If (contr[2+i,1,1] and contr[5-i,2,2]) or (contr[2+i,2,1] and contr[5-i,1,2]) or (contr[2+i,1,2] and contr[5-i,2,1]) or (contr[2+i,2,2] and contr[5-i,1,1]) Then If ans=0 Then ans:=2;
      3: If ans=0 Then ans:=2;
     end;
    end;
   end;
  end;
 end;
 Case ans of
  -1:writeln('Draw');
  2:writeln('Team 2');
  1:writeln('Team 1');
 end;
 readln;
 readln;
end.

var
 def:array[1..4] of longint;
 atk:array[1..4] of longint;
 i,j:longint;
 ans:integer;
 contr:array[1..4,1..4,1..2] of boolean;

begin
 For i:=1 to 4 do read(def[i],atk[i]);
 For i:=1 to 4 do
  For j:=1 to 4 do
  begin
   If def[i]>atk[j] Then contr[i,j,1]:=true;
   If atk[i]>atk[j] Then contr[i,j,2]:=true;
  end;
 For i:=1 to 2 do
 begin
  j:=0;
  If contr[i,3,1] then inc(j);
  If contr[i,4,1] then inc(j);
  If contr[3-i,3,2] then inc(j);
  If contr[3-i,4,2] then inc(j);
  If j=4 then
  begin
   ans:=1;
  end
  else
  begin
   If j=3 Then
   begin
    If ans<>1 then ans:=-1;
   end
   else
   begin
    If j=2 Then
    begin
     If (contr[i,3,1] and contr[i,4,1]) or (contr[3-i,3,1] and contr[3-i,4,1]) or (contr[i,3,1] and contr[3-i,3,2]) or (contr[i,4,1] and contr[3-i,4,2]) then
     begin
      If ans<>1 then ans:=-1;
     end
     else
     begin
      If (ans<>1) and (ans<>-1) Then ans:=2;
     end;
    end
    else
    begin
     If (ans<>1) and (ans<>-1) then ans:=2;
    end;
   end;
  end;
 end;
 Case ans of
  -1:writeln('Draw');
  2:writeln('Team 2');
  1:writeln('Team 1');
 end;
 readln;
 readln;
end.

var
 def:array[1..4] of longint;
 atk:array[1..4] of longint;
 i,j:longint;
 ans:integer;
 contr:array[1..4,1..4,1..2] of boolean;

begin
 For i:=1 to 4 do read(def[i],atk[i]);
 For i:=1 to 4 do
  For j:=1 to 4 do
  begin
   If def[i]>atk[j] Then contr[i,j,1]:=true;
   If atk[i]>atk[j] Then contr[i,j,2]:=true;
  end;
 For i:=1 to 2 do
 begin
  j:=0;
  If contr[i,3,1] then inc(j);
  If contr[i,4,1] then inc(j);
  If contr[3-i,3,2] then inc(j);
  If contr[3-i,4,2] then inc(j);
  If j=4 then
  begin
   ans:=1;
  end
  else
  begin
   If j=3 Then
   begin
    If ans<>1 then ans:=-1;
   end
   else
   begin
    If j=2 Then
    begin
     If not((contr[i,3,1] and contr[3-i,4,2]) or (contr[i,4,1] and contr[3-i,3,2])) then
     begin
      If ans<>1 then ans:=-1;
     end
     else
     begin
      If (contr[3,i,2] and contr[4,3-i,1]) or (contr[4,i,2] and contr[3,3-i,1]) Then
      begin
       If (ans<>1) and (ans<>-1) Then ans:=2;
      end
      else
      begin
       If ans<>1 then ans:=-1;
      end;
     end;
    end
    else
    begin
     j:=0;
     If contr[2+i,1,1] then inc(j);
     If contr[2+i,2,1] then inc(j);
     If contr[5-i,1,2] then inc(j);
     If contr[5-i,2,2] then inc(j);
     Case j of
      0: If ans<>1 then ans:=-1;
      1: If ans<>1 then ans:=-1;
      2: If (contr[2+i,1,1] and contr[5-i,2,2]) or (contr[2+i,2,1] and contr[5-i,1,2]) or (contr[2+i,1,2] and contr[5-i,2,1]) or (contr[2+i,2,2] and contr[5-i,1,1]) Then
         begin
          If ans=0 Then ans:=2;
         end
         else
         begin
          If ans<>1 then ans:=-1;
         end;
      3: If ans=0 Then ans:=2;
     end;
    end;
   end;
  end;
 end;
 Case ans of
  -1:writeln('Draw');
  2:writeln('Team 2');
  1:writeln('Team 1');
 end;
 readln;
 readln;
end.

var
 def:array[1..4] of longint;
 atk:array[1..4] of longint;
 i,j:longint;
 ans:integer;
 contr:array[1..4,1..4,1..2] of boolean;

begin
 For i:=1 to 4 do read(def[i],atk[i]);
 For i:=1 to 4 do
  For j:=1 to 4 do
  begin
   If def[i]>atk[j] Then contr[i,j,1]:=true;
   If atk[i]>atk[j] Then contr[i,j,2]:=true;
  end;
 For i:=1 to 2 do
 begin
  j:=0;
  If contr[i,3,1] then inc(j);
  If contr[i,4,1] then inc(j);
  If contr[3-i,3,2] then inc(j);
  If contr[3-i,4,2] then inc(j);
  If j=4 then
  begin
   ans:=1;
  end
  else
  begin
   If j=3 Then
   begin
    If ans<>1 then ans:=-1;
   end
   else
   begin
    If j=2 Then
    begin
     If (contr[i,3,1] and contr[i,4,1]) or (contr[3-i,3,1] and contr[3-i,4,1]) then
     begin
      If ans<>1 then ans:=-1;
     end
     else
     begin
      If (ans<>1) and (ans<>-1) Then ans:=2;
     end;
    end
    else
    begin
     If (ans<>1) and (ans<>-1) then ans:=2;
    end;
   end;
  end;
 end;
 Case ans of
  -1:writeln('Draw');
  2:writeln('Team 2');
  1:writeln('Team 1');
 end;
 readln;
 readln;
end.