import sys from heapq import heappop, heappush read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines N, M = map(int, readline().split()) S, T = map(int, readline().split()) X = [complex(0, 0)] * (N + 1) for i in range(1, N + 1): p, q = map(int, readline().split()) X[i] = complex(p, q) G = [[] for _ in range(N + 1)] m = map(int, read().split()) for p, q in zip(m, m): d = abs(X[p] - X[q]) G[p].append((q, d)) G[q].append((p, d)) INF = 10.0**18 dist = [INF] * (N+1) q = [(0, S)] dist[S] = 0 while q: dv, v = heappop(q) if dv != dist[v]: continue for w, d in G[v]: dw = dv + d if dist[w] > dw: dist[w] = dw heappush(q, (dw, w)) print(dist[T])