#include <iostream>
#include <map>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
  int n;
  while(cin >> n && n) {
    multimap<int,string> ans;
    for(int i=0; i<n; i++) {
      string name;
      cin >> name;
      int x,rank=500;
      for(int j=0; j<n-1; j++) {
	cin >> x;
	if(x==0) {
	  rank+=1000;
	} else if(x==1) {
	  rank--;
	}
      }
      string t=name;
      ans.insert(make_pair(rank,t));
    }
    vector<string> a;
    int d[n],k=-1,m=-1;
    fill(d,d+n,0);

    for(multimap<int,string>::reverse_iterator it=ans.rbegin(); it!=ans.rend(); it++) {
      if(m!=it->first) {
	k++;
	m=it->first;
      }
      d[k]++;
      a.push_back(it->second);
    }
    k=0;
    for(int i=0; i<n; i++) {
      for(int j=i+d[k]-1; j>=i; j--) cout << a[j] << endl;
      i+=d[k]-1;
      k++;
    }
  }
  return 0;
}
