Kraj IOI składa się z $N$ miasteczek, ponumerowanych od miasteczka $1$ do miasteczka $N$, połączonych ze sobą drogami. W kraju IOI jest $K$ dróg, a każda droga łączy $2$ różne miasteczka. Samochody mogą swobodnie poruszać się po drogach w obu kierunkach, ale nie można przedostać się z jednego miasteczka do drugiego inaczej niż drogami.
JOI-kun, który mieszka w miasteczku $1$ w kraju IOI, postanowił pojechać taksówką do domu swojej babci mieszkającej w miasteczku $N$. W kraju IOI działa $N$ korporacji taksówkowych – od korporacji taksówkowej $1$ do korporacji taksówkowej $N$. Korporacje taksówkowe w kraju IOI mają następujące, nieco specyficzne zasady:
- Do taksówki korporacji taksówkowej $i$ można wsiąść wyłącznie w miasteczku $i$.
- Opłata za kurs taksówką korporacji taksówkowej $i$ wynosi $C_i$ niezależnie od przebytej odległości.
- Taksówka korporacji taksówkowej $i$ od momentu wsiądźcia może przejechać ciągiem co najwyżej $R_i$ dróg.
Na przykład, gdy $R_1 = 2$, wsiadając w miasteczku $1$ do taksówki korporacji $1$, można przejechać co najwyżej $2$ drogi, a zatem aby pokonać $3$ lub więcej dróg, należy przesiąść się do innej taksówki w pewnym miasteczku pośrednim.
JOI-kun nie może wsiadać do taksówki ani z niej wysiadać w żadnym miejscu poza miasteczkami. Nie może również korzystać z żadnego innego środka transportu niż taksówka. Napisz program, który wyznaczy minimalną łączną opłatę potrzebną, aby JOI-kun dotarł do miasteczka $N$.
Wejście
Wejście składa się z $1 + N + K$ wierszy.
W $1$. wierszu znajdują się $2$ liczby całkowite $N, K$ ($2 \le N \le 5000$, $N - 1 \le K \le 10000$) oddzielone spacją. Oznaczają one, że kraj IOI składa się z $N$ miasteczek oraz że liczba dróg w kraju IOI wynosi $K$.
W $i$-tym wierszu ($1 \le i \le N$) spośród kolejnych $N$ wierszy znajdują się $2$ liczby całkowite $C_i, R_i$ ($1 \le C_i \le 10000$, $1 \le R_i \le N$) oddzielone spacją. Oznaczają one, że opłata za kurs taksówką korporacji $i$ wynosi $C_i$ oraz że od momentu zajęcia miejsca można nią przejechać ciągiem co najwyżej $R_i$ dróg.
W $j$-tym wierszu ($1 \le j \le K$) spośród kolejnych $K$ wierszy znajdują się $2$ różne liczby całkowite $A_j, B_j$ ($1 \le A_j < B_j \le N$) oddzielone spacją. Oznacza to, że pomiędzy miasteczkiem $A_j$ a miasteczkiem $B_j$ istnieje droga. Ta sama para $(A_j, B_j)$ nie pojawia się $2$ lub więcej razy.
W podanych danych wejściowych gwarantowane jest, że z każdego miasteczka można dotrzeć do każdego innego miasteczka, przesiadając się między taksówkami.
Wyjście
Wypisz w $1$ wierszu liczbę całkowitą oznaczającą minimalną łączną opłatę potrzebną, aby JOI-kun dostał się z miasteczka $1$ do miasteczka $N$.
Przykład
Wejście 1
6 6 400 2 200 1 600 3 1000 1 300 5 700 4 1 2 2 3 3 6 4 6 1 5 2 4
Wyjście 1
700
Uwagi
Powyższy przykład odpowiada poniższemu rysunkowi. Kółka oznaczają miasteczka, a linie – drogi.
W tym przykładzie, aby dotrzeć do miasteczka $6$ przy minimalnym koszcie, JOI-kun postępuje następująco:
- Wsiada do taksówki w miasteczku $1$ i jedzie do miasteczka $5$. (Opłata $400$)
- Wsiada do taksówki w miasteczku $5$ i jedzie do miasteczka $6$. (Opłata $300$)
Ponieważ łączna opłata przy wyborze takiej trasy wynosi $400 + 300 = 700$, należy wypisać $700$.