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

int N;
bool visited[1005];
char a[1005][1005];
int cnt=0,k=0;
int cc;
int t[2];

void dfs(int pos){
  if(visited[pos])return;
  visited[pos]=true;
  cc++;
  for(int i=0;i<N;i++)
    if(a[pos][i]=='Y')
      dfs(i);
}

int main(){ 
  cin>>N;
  for(int i=0;i<N;i++){
    for(int j=0;j<N;j++){
      cin>>a[i][j];
      if(a[i][j]=='Y')cnt++;
    }
  }
  for(int i=0;i<N;i++){
    if(visited[i])continue;
    k++;
    cc=0;
    dfs(i);
    t[cc%2]++;    
  }
  cnt/=2;
  
  int total=N*(N-1)/2;
  
  if(N%2==1 || t[1]%2==1){
    if( (total-cnt)%2==1 )cout<<"Taro"<<endl;
    else cout<<"Hanako"<<endl;
    return 0;
  }
  
  if(t[0]==0&&t[1]==2){
    if( (total-cnt)%2==0 )cout<<"Taro"<<endl;
    else cout<<"Hanako"<<endl;
    return 0;
  }

  if(t[0]==1&&t[1]==2){
    cout<<"Taro"<<endl;
    return 0;
  }
  
  if( (total-cnt)%2==1 )cout<<"Taro"<<endl;
  else cout<<"Hanako"<<endl;
  
  return 0;
}