#include<bits/stdc++.h>
using namespace std;
int g[501][501],n,m,as,s,a[10001],i,j,k;
int main()
{
cin>>m>>n;
memset(g,10000,sizeof(g));
for(i=1;i<=m;i++)
{
s=0,as=1;
while(as!=10)
{
++s;
cin>>a[s];
as=getchar();
}
for(j=1;j<=s-1;j++)
for(k=j+1;k<=s;k++)
g[a[j]][a[k]]=1;
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
g[i][j]=min(g[i][j],g[i][k]+g[k][j]);
if(g[1][n]>=10000) cout<<"NO";
else cout<<g[1][n]-1;
return 0;
}