Kicker (table football) is a board game based on football, in which players control the footballers' figures mounted on rods by using bars to get the ball into the opponent's goal. When playing two on two, one player of each team controls the goalkeeper and the full-backs (plays defence), the other player controls the half-backs and forwards (plays attack).Two teams of company Q decided to battle each other. Let's enumerate players from both teams by integers from 1 to 4. The first and second player play in the first team, the third and the fourth one play in the second team. For each of the four players we know their game skills in defence and attack. The defence skill of the i-th player is ai, the attack skill is bi.Before the game, the teams determine how they will play. First the players of the first team decide who will play in the attack, and who will play in the defence. Then the second team players do the same, based on the choice of their opponents.We will define a team's defence as the defence skill of player of the team who plays defence. Similarly, a team's attack is the attack skill of the player of the team who plays attack. We assume that one team is guaranteed to beat the other one, if its defence is strictly greater than the opponent's attack and its attack is strictly greater than the opponent's defence.The teams of company Q know each other's strengths and therefore arrange their teams optimally. Identify the team that is guaranteed to win (if both teams act optimally) or tell that there is no such team.

The input contain the players' description in four lines. The i-th line contains two space-separated integers ai and bi (1 ≤ ai, bi ≤ 100) — the defence and the attack skill of the i-th player, correspondingly.

If the first team can win, print phrase "Team 1" (without the quotes), if the second team can win, print phrase "Team 2" (without the quotes). If no of the teams can definitely win, print "Draw" (without the quotes).

NoteLet consider the first test sample. The first team can definitely win if it will choose the following arrangement: the first player plays attack, the second player plays defence.Consider the second sample. The order of the choosing roles for players makes sense in this sample. As the members of the first team choose first, the members of the second team can beat them (because they know the exact defence value and attack value of the first team).

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.

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.

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..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.

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.

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 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.