K 미술관은 벽이 많은 특이한 구조로 유명하다. 내부를 밝히려고 한 벽의 양 끝 모서리에 전등 두 개를 설치했는데, 이 두 전등만으로 건물 내부에 빛이 닿지 않는 곳이 없다. 즉 건물 내부의 모든 지점은 적어도 한 전등에서 빛을 받는다.
정보올림피아드를 준비하는 홍길동은 이 건물을 좋아해서 시간이 날 때마다 관람하러 온다. 하루는 관람하다가 미술관 내부의 두 지점을 잇는 최단 경로는 어떤 모양일까 하는 의문이 떠올랐다. 일반적인 다각형에서 최단 경로 알고리즘을 구현하느라 애먹었던 기억을 떠올리면서, 전등 두 개로 모든 곳을 비추는 이 특이한 구조라면 최단 경로를 쉽게 구할 수 있지 않을까 생각했다.
미술관은 정점이 n개인 다각형 P=(v0,v1,…,vn−1)로 나타낸다. 정점 목록은 다각형의 경계를 반시계방향으로 따라가며 정점을 차례로 늘어놓은 것이다. 전등이 설치된 자리는 정점 v0과 v1이다. 변 (v0,v1)은 수평 선분이고, v0의 x좌표는 항상 v1의 x좌표보다 작다. v0과 v1을 뺀 나머지 정점은 모두 y좌표가 v0의 y좌표보다 크다.
미술관 내부의 지점 q가 전등 v의 빛을 받는다는 말은, 두 점 q와 v를 잇는 선분이 P의 바깥과 만나지 않는다는 뜻이다. P의 모든 점이 v0 또는 v1에서 빛을 받는다는 사실에 유의하라.

그림 1. 다각형의 모든 점이 v0 또는 v1에서 빛을 받는다.
그림 1의 다각형에서 정점 v8과 v11은 v1에서만 빛을 받고, v3과 v4는 v0에서만 빛을 받는다. 나머지 정점은 두 전등 모두에서 빛을 받는다. 두 정점 사이의 최단 경로가 다각형의 정점에서만 꺾인다는 사실은 잘 알려져 있다. 예를 들어 두 정점 v4와 v11 사이의 최단 경로는 (v4,v5,v9,v11)이고, 두 정점 v5와 v1 사이의 최단 경로는 선분 하나인 (v5,v1)이다.
홍길동을 도와서, 다각형 P의 두 정점이 주어질 때 두 정점 사이의 최단 경로를 구하는 프로그램을 작성하시오. 경로의 길이는 경로를 이루는 선분들의 유클리드 길이를 모두 더한 값이다.
첫째 줄에 다각형 P의 정점 개수를 나타내는 정수 n이 주어진다 (3≤n≤100000). 둘째 줄부터 n개 줄에는 v0부터 시작하여 한 줄에 하나씩 P의 정점 vi의 좌표를 나타내는 정수 두 개가 주어진다 (i=0,1,…,n−1). 각 좌표는 −109 이상 109 이하다.
P의 모든 점은 v0 또는 v1에서 빛을 받는다. v0과 v1의 y좌표는 같고, v0은 v1보다 x좌표가 작다. v0과 v1을 뺀 나머지 정점은 모두 v0보다 y좌표가 크다. P의 경계를 따라 연속한 어떤 세 정점도 한 직선 위에 있지 않다.
마지막 줄에는 최단 경로를 구하려는 두 정점 vi와 vj의 번호인 정수 i와 j가 주어진다 (i=j). vi가 출발점이고 vj가 도착점이다.
입력으로 주어진 두 정점 vi와 vj를 잇는 최단 경로를 (w0,w1,…,wm−1)이라고 하자. 여기서 w0=vi, wm−1=vj이고, wk (1≤k≤m−2)는 최단 경로가 꺾이는 점이다. 첫째 줄에 m을 출력하고, 둘째 줄에 wk에 해당하는 P의 정점 번호를 순서대로 출력한다 (0≤k≤m−1). 최단 경로가 어떤 정점을 지나가더라도 그 점에서 꺾이지 않으면 그 번호는 출력하지 않는다.