#include <bits/stdc++.h>
#define rep(i,l,r) for(int i=l;i<=r;++i)
using namespace std;
int f[124][124];
int n,a,b;
const int INF=0x3f3f3f;
int main(){
memset(f,INF,sizeof(f));
cin>>n>>a>>b;
rep(i,1,n){
int k;
cin>>k;
rep(j,1,k){
int to;
cin>>to;
if(j==1)
f[i][to]=0;
else
f[i][to]=1;
}
}
rep(k,1,n)
rep(x,1,n)
rep(y,1,n)
if(x!=y)
f[x][y]=min(f[x][y],f[x][k]+f[k][y]);
else
f[x][y]=0;
if(f[a][b]==INF)
cout<<-1;
else
cout<<f[a][b];
}