N,M,P,Y=map(int,input().split()) con=[[] for _ in range(N)] for _ in range(M): A,B,C=map(int,input().split()) ; A-=1 ; B-=1 con[A].append((B,C)) con[B].append((A,C)) from heapq import heappush,heappop def dijkstra(start): inf=1<<60 ; re=[inf for _ in range(len(con))] ; re[start]=0 q=[] ; heappush(q,(0,start)) while q: d,e=heappop(q) if re[e]