ATM

Time limit2sMemory limit512 MB

Problem

In the Indian city of Siruseri, every road is one-way. At every intersection where roads meet there is an ATM (cash machine) of the Bank of Siruseri. The city has a famous restaurant chain, the Outback Curry House; each of its branches sits at an intersection (though not every intersection has one), and it accepts cash only.

Bandici, who lives in Siruseri, wants to throw a family party at this restaurant this afternoon. Short on cash, he plans to withdraw as much money as possible from ATMs on the way to the restaurant. Starting from the intersection where his home is, he drives around and withdraws all the cash in the ATM of every intersection he passes through. His final destination may be any intersection that has an Outback Curry House branch.

Bandici knows in advance how much cash each ATM holds. He may travel along the same road or through the same intersection several times, but the ATMs are never refilled, so an intersection visited again yields no more cash. That is, the cash at each intersection is withdrawn only on the first visit.

For example, the city in the sample input below has 6 intersections. Starting the withdrawals at intersection 1, Bandici can follow the route $1 \to 2 \to 4 \to 1 \to 2 \to 3 \to 5$ and withdraw 47 in total (intersections 1 and 2 are passed again, but their cash is collected only once).

Write a program that computes the maximum amount of cash Bandici can withdraw while travelling from the starting intersection to some restaurant.

Input

The first line contains the number of intersections $N$ and the number of roads $M$ ($N, M \le 500000$). The intersections are numbered from $1$ to $N$.

Each of the next $M$ lines describes one road with two integers: the number of its start intersection and the number of its end intersection. Each road is one-way, directed from the start intersection to the end intersection.

The next $N$ lines give the amount of cash in the ATM of each intersection, one per line, in order from intersection $1$ to intersection $N$. Each amount is an integer between $0$ and $4000$, inclusive.

The next line contains two integers $S$ and $P$: $S$ is the number of the starting intersection (where the withdrawals begin), and $P$ is the number of restaurants ($1 \le P \le N$). The last line contains $P$ integers, the numbers of the intersections that have a restaurant.

In every input, at least one restaurant is reachable from the starting intersection by following the one-way roads.

Output

Print a single integer: the maximum amount of cash Bandici can withdraw while travelling from the starting intersection to some restaurant.