#include <iostream>

using namespace std;

struct putanje{
    int pocetak,kraj;
    bool promena;
};

int main(){
    int N,M,u,v,br=0;
    bool stanje=false;
    cin >> N >> M;
    putanje santa[N];
    for(int i=0;i<M;i++){
        cin >> santa[i].pocetak >> santa[i].kraj >> santa[i].promena;
    }
    cin >> u >> v;
    while(u!=v){
        int j=0;
        for(;santa[j].kraj!=v && j<N;j++);
        if(j==N){
            std::cout << "-1";
            return 0;
        }
        if(stanje!=santa[j].promena){
            v=santa[j].pocetak;
            stanje=!stanje;
            br++;
        }       
        v=santa[j].pocetak; 
    }
    std::cout << (stanje==false ? br:br+1);
}