You are given an undirected connected graph consisting of $$$n$$$ vertices and $$$m$$$ edges. There are no self-loops and multiple edges in the graph. You have to find any path $$$P$$$ between the specified vertices $$$s$$$ and $$$t$$$ such that:
The first line contains four integers $$$n$$$, $$$m$$$, $$$s$$$, $$$t$$$ ($$$2 \le n \le 2\,000$$$; $$$n-1 \le m \le 25\,000$$$; $$$1 \le s, t \le n$$$, $$$s\neq t$$$) — the number of vertices and edges in the graph, and the endpoints of the path $$$P$$$, respectively.
The next $$$m$$$ lines describe the edges: edge $$$i$$$ is defined by a pair of vertices $$$a_i$$$, $$$b_i$$$ ($$$1 \le a_i, b_i \le n$$$, $$$a_i \ne b_i$$$), where $$$a_i$$$ and $$$b_i$$$ are the vertices connected by the $$$i$$$-th edge.
It is guaranteed that there are no self-loops and multiple edges in the given graph.
If the desired path $$$P$$$ does not exist, print $$$-1$$$ in a single line.
Otherwise, in the first line, print the number $$$k$$$ — the number of vertices in the path $$$P$$$. In the second line, print $$$k$$$ distinct integers, $$$v_1, v_2, \ldots, v_k$$$ ($$$1\le v_i \le n$$$, $$$v_1=s$$$, $$$v_k=t$$$, $$$v_i$$$ and $$$v_{i+1}$$$ are connected by an edge for any $$$1 \le i \lt k$$$) — the vertex numbers in the path $$$P$$$.
If there are multiple answers, print any of them.
3 3 1 21 22 33 1
3 1 3 2
5 4 1 51 22 33 44 5
-1
| Name |
|---|


