축구장을 r행 c열 격자로 나타낸다. 선수는 저마다 격자 한 칸을 차지하고, 공격수 o명과 수비수 d명은 모두 다른 칸에 서 있다. 공격수는 입력에 나온 순서대로 1번부터 차례로 번호를 받고, 공은 1번 공격수가 잡고 있다.
수비수는 패스를 가로채려고 인접한 칸으로 움직일 수 있다. 그래서 수비수 한 명이 지키는 범위는 자기가 선 칸에 변이나 꼭짓점으로 맞닿은 여덟 칸을 더한 아홉 칸이다. 이 가운데 격자 밖으로 나가는 칸은 빼고 센다. 수비수 여러 명이 지키는 범위는 겹쳐도 된다.
k번 공격수가 열려 있는지는 선분 하나로 판정한다. 1번 공격수가 선 칸의 중심과 k번 공격수가 선 칸의 중심을 선분으로 잇고, 이 선분이 수비수가 지키는 칸을 한 점도 건드리지 않으면 k번 공격수는 열려 있다. 지키는 칸의 꼭짓점 한 점만 스쳐도 패스는 가로채인다. 수비수가 1번 공격수의 칸이나 받는 사람의 칸을 지키고 있으면 선분의 끝점이 이미 그 칸 안에 있으므로 그 패스는 열리지 않는다. 공격수는 다른 공격수의 패스를 막지 않는다.
1번 공격수가 패스할 수 있는 공격수를 모두 구하라.
입력은 테스트 케이스 여러 개로 이루어진다.
각 테스트 케이스의 첫 줄에 정수 네 개 r, c, o, d가 공백으로 구분되어 주어진다. 차례로 격자의 행 수, 열 수, 공격수 수, 수비수 수다. (1≤r≤50, 1≤c≤50, 1≤o, 0≤d, o+d≤r×c)
다음 o개 줄에는 공격수가 선 칸의 행 번호와 열 번호가 한 줄에 한 명씩 주어진다. 행 번호와 열 번호는 0부터 시작하므로 행 번호는 r보다 작고 열 번호는 c보다 작다. 이어지는 d개 줄에는 같은 형식으로 수비수의 위치가 주어진다. 두 선수가 같은 칸에 서는 경우는 없다.
공격수는 주어진 순서대로 1번부터 번호를 받고, 1번이 공을 잡고 있다.
0 0 0 0이 적힌 줄이 나오면 입력이 끝난다. 이 줄은 테스트 케이스가 아니다.
각 테스트 케이스마다 한 줄에 Case x:를 출력하고, 이어서 1번 공격수가 패스할 수 있는 공격수의 번호를 오름차순으로 출력한다. 번호 앞에는 공백을 하나씩 붙인다. x는 1부터 세는 테스트 케이스 번호다.
패스할 수 있는 공격수가 없으면 번호 없이 Case x:만 출력한다.