import sys input = sys.stdin.readline from collections import deque T=int(input()) for tests in range(T): N,M=list(map(int,input().split())) S=[list(map(int,input().split())) for i in range(M)] E=[[] for i in range(N+1)] for a,b,c in S: if c==1: E[a].append(b) E[b].append(a) D1=[1<<30]*(N+1) D2=[1<<30]*(N+1) Q=deque([1]) D1[1]=0 while Q: x=Q.popleft() for to in E[x]: if D1[to]>D1[x]+1: D1[to]=D1[x]+1 Q.append(to) if D1[N]D2[x]+1: D2[to]=D2[x]+1 Q.append(to) ANS=1<<30 for a,b,c in S: if c==2: if D1[a]