from heapq import* (n,m,l,s,e),*es,ts=[[*map(int,s.split())]for s in open(0)] g=[[]for _ in range(n)] for a,b,t in es: a-=1;b-=1 g[a]+=(b,t), g[b]+=(a,t), INF=1<<60 def f(x): s=[INF]*n s[x]=0 q=[(0,x)] while q: c,p=heappop(q) if s[p]c+nc: s[v]=c+nc heappush(q,(s[v],v)) return s s0=f(0) sn=f(n-1) ans=INF for i in ts: i-=1 a=s0[i]+sn[i]+1 if s0[i]<=s: a+=abs(s-s0[i]) elif s+e