using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Sante
{
    class Program
    {
        static int Nadji(int[,]matrica, int u, int v,int radi)
        {
            if(u==v)
            {
                return 0;
            }
            int najmanji=int.MaxValue;
            for (int i = 0; i < matrica.GetLength(0); i++)
            {
                if (u == matrica[i, 0] && matrica[i, 2] == radi)
                {
                    int trenutni = Nadji(matrica, matrica[i, 1], v, radi);
                    if(najmanji>trenutni)
                    {
                        najmanji = trenutni;
                    }
                }
                else if (u == matrica[i, 0] && radi == 1)
                {
                    int trenutni = 1+Nadji(matrica, matrica[i, 1], v, 0);
                    if (najmanji > trenutni)
                    {
                        najmanji = trenutni;
                    }
                }
                else if (u == matrica[i, 0] && radi == 0)
                {
                    int trenutni = 1 + Nadji(matrica, matrica[i, 1], v, 1);
                    if (najmanji > trenutni)
                    {
                        najmanji = trenutni;
                    }
                }
            }
            if(najmanji!=int.MaxValue)
            {
                return najmanji;
            }
            else
            {
                return 20000;
            }
        }
        static void Main(string[] args)
        {
            string[] unos = Console.ReadLine().Split();
            int n = int.Parse(unos[0]);
            int m = int.Parse(unos[1]);
            int[,] matrica = new int[m, 3];
            for(int i=0;i<m;i++)
            {
                unos = Console.ReadLine().Split();
                matrica[i, 0] = int.Parse(unos[0]);
                matrica[i, 1] = int.Parse(unos[1]);
                matrica[i, 2] = int.Parse(unos[2]);
            }
            unos = Console.ReadLine().Split();
            int u = int.Parse(unos[0]);
            int v = int.Parse(unos[1]);
            int radi = 0;
            int rez = Nadji(matrica, u, v, radi);
            if (rez < 20000)
            {
                Console.WriteLine(rez);
            }
            else
            {
                Console.WriteLine(-1);
            }
        }
    }
}