#include<iostream>
#include<stack>
#include<vector>
#include <map>
#include <queue>
#include<string.h>
using namespace std;
typedef pair<int,int> P;
int node[200][200];
int main()
{
  int n;
  cin>>n;
  memset(node,-1,sizeof(node));
  for(;n--;)
    {
      int k,t;
      cin>>k>>t;
      for(int i=0;i<t;i++)
	{
	  int tmp;
	  cin>>tmp;
	  node[k][tmp]=1;
	}
    }
  int p;
  cin>>p;
  for(;p--;)
    {
      int s,d,v;
      cin>>s>>d>>v;
      int ans=-1;

      queue<P> qu;
      int c[200];
      memset(c,-1,sizeof(c));
      for(int i=0;i<200;i++)
	{
	  if(v-1>0)
	    if(node[s][i]==1)
	      qu.push(P(i,v-1));
	}
      while(!qu.empty())
	{
	  P a = qu.front();
	  qu.pop();
	  //      cout<<a.first<<" "<<a.second<<endl;
	  if(a.first==d)
	    {
	      ans=v-a.second+1;
	      break;
	    }
	  for(int i=0;i<200;i++)
	    {
	      if(node[a.first][i]==1)
		{
		  if(a.second-1>0)
		    {
		      if(c[i]==-1)
			{
			  c[i]=a.second-1;
			  qu.push(P(i,a.second-1));	    
			}
		    }
		}
	    } 
	}
      
      
      if(ans==-1)
	cout<<"NA"<<endl;
      else
	cout<<ans<<endl;
      
    }
  
}