#include<stdio.h>
int main(){
	long long int n,m,u,v;
	scanf("%lld %lld",&n,&m);
	long long int a[n],b[n],t[m];
	for(long long int i=0;i<m;i++){
		scanf("%lld %lld %lld",&a[i],&b[i],&t[i]);
	}
	scanf("%lld %lld",&u,&v);
	long long int tr=u,trs=0;
	if(m==0||n==0){
	printf("-1");
	return 0;
	}
	else if(u==v){
	printf("0");
	return 0;
	}
	int pr=0;
	long long int br=0,trp;
	while(tr!=v){
		long long int maxp=u,maxnp=u,pozp=0,poznp=0;
		for(long long int i=0;i<m;i++){
			if(a[i]==tr){
			
			if(trs!=t[i]&&b[i]>maxp){
				maxp=b[i];
				trp=t[i];
			}
			if(trs==t[i]&&b[i]>maxp){
				maxnp=b[i];
				
			}
			}
		}
		if(maxp==tr&&maxnp==tr){
			printf("-1");
			return 0;
		}
		if(maxp<=maxnp){
			tr=maxnp;
		}
		else if(maxp>maxnp){
			br++;
			trs=trp;
			tr=maxp;
		}

	}
	printf("%lld",br);
	
}