#include <bits/stdc++.h>
using namespace std;

int main(){
  int N;
  cin>>N;
  vector<vector<pair<int,int>>> A(N);
  for(int i=0;i<N;i++){
    int a;
    cin>>a;
    for(int j=0;j<a;j++){
      int k,l;
      cin>>k>>l;
      A.at(i).push_back(make_pair(k-1,l));
    }
  }
  int k=0;
  for(int tmp=0;tmp<(1<<N);tmp++){
    bitset<15> s(tmp);
    bool bo=false;
    for(int i=0;i<N;i++){
      if(!s.test(i))
        continue;
      for(pair<int,int> j:A.at(i)){
        if(s[j.first]^j.second){
          bo=true;
          break;
        }
      }
      if(bo)
        break;
    }
    if(bo)
      continue;
    k=max(k,(int)(s.count()));
  }
  cout<<k<<endl;
}