void main(){
  import std.stdio, std.string, std.conv, std.algorithm;

  int n; rd(n);

  int id;
  int s12, s23, s31;
  int l, r;

  while(n--){
    auto args=readln.split.to!(int[]);
    auto w=args[0], as=args[1..$];
    int[] p=[1, 2, 3];
    foreach(a; as){
      if(a==0) swap(p[0], p[1]);
      else swap(p[1], p[2]);
    }
    auto o1=p[0], o2=p[1], o3=p[2];
    if(o1==1 && o2==2 && o3==3) id++;
    if(o1==2 && o2==1 && o3==3) s12++;
    if(o1==1 && o2==3 && o3==2) s23++;
    if(o1==3 && o2==2 && o3==1) s31++;
    if(o1==2 && o2==3 && o3==1) l++;
    if(o1==3 && o2==1 && o3==2) r++;
  }

  if(id){
    writeln("yes");
  }else if(s12>=2 || s23>=2 || s31>=2){
    writeln("yes");
  }else if(l>=3 || r>=3){
    writeln("yes");
  }else if(l>=1 && r>=1){
    writeln("yes");
  }else if((l>=1 || r>=1) && s12>=1 && s23>=1){
    writeln("yes");
  }else if((l>=1 || r>=1) && s23>=1 && s31>=1){
    writeln("yes");
  }else if((l>=1 || r>=1) && s31>=1 && s12>=1){
    writeln("yes");
  }else{
    writeln("no");
  }
}


void rd(T...)(ref T x){
  import std.stdio, std.string, std.conv;
  auto l=readln.split;
  assert(l.length==x.length);
  foreach(i, ref e; x){
    e=l[i].to!(typeof(e));
  }
}

