상자 떼가 당신을 공격하고 있습니다. 상자는 모두 $N$개 ($0 \le N \le 1000$)이며, 각 상자는 변이 좌표축과 평행한 축 정렬 직사각형입니다. 당신에게는 방어 수단으로 거대한 레이저가 있습니다.
레이저는 원점에 놓여 있고, 정해진 한 방향으로 광선 하나를 발사합니다. 광선이 어떤 상자에 닿으면 그 상자를 파괴하고 그 상자에서 반사됩니다.
반사 규칙은 광선이 상자에 처음 닿는 위치에 따라 정해집니다.
파괴된 상자는 사라지므로, 광선은 그 뒤로 그 상자가 있던 자리를 자유롭게 통과할 수 있습니다.
파괴되는 상자들의 번호를 파괴되는 순서대로 출력하세요.
어떤 두 상자도 공통점을 갖지 않으며, 어떤 상자도 원점을 내부나 경계에 포함하지 않음이 보장됩니다.
첫째 줄에 상자의 개수 $N$이 주어집니다.
둘째 줄에 두 정수 $dx$와 $dy$ ($-1000 \le dx, dy \le 1000$, 둘이 동시에 $0$은 아님)가 주어집니다. 아무 방해가 없을 때 원점에서 발사된 광선은 점 $(dx, dy)$를 지납니다.
이어지는 $N$개의 줄에는 각각 네 정수 $x_i$, $y_i$, $w_i$, $h_i$ ($-1000 \le x_i, y_i \le 1000$, $1 \le w_i, h_i \le 1000$)가 주어지며, 이는 $i$번째 상자를 나타냅니다. 이 상자의 왼쪽 아래 꼭짓점은 $(x_i, y_i)$이고 오른쪽 위 꼭짓점은 $(x_i + w_i, y_i + h_i)$입니다. 상자에는 입력 순서대로 $1$번부터 $N$번까지 번호가 매겨집니다.
파괴되는 상자의 개수를 $k$ ($k \ge 0$)라고 합시다. $k$개의 줄을 출력하며, $i$번째 줄에는 $i$번째 반사에서 파괴되는 상자의 번호를 출력합니다. $k = 0$이면 아무것도 출력하지 않습니다.