첫 번째 힉스 보손이 검출된 지 100년이 지난 지금, 입자 물리학은 모든 고등학교의 주요 과목이 되었습니다. 아이들은 휴대용 입자 가속기만으로 아주 작은 블랙홀을 만들어 친구들에게 자랑할 수 있다는 사실을 무척 좋아하죠. 휴대용 가속기로도 원리상 행성 전체를 삼킬 만큼 큰 블랙홀을 만들 수 있지만, 이 장치들은 그런 파국적인 부작용이 불가능할 때에만 입자를 발사하도록 프로그래밍되어 있습니다.
당신의 손녀는 두 대의 작은 입자 가속기로 이루어진 휴대용 키트로 자신만의 블랙홀을 만들려고 합니다. 두 가속기는 각각 보손 크기의 입자 하나씩을 발사합니다. 두 입자는 동시에 발사되며, 서로 충돌하는 순간 블랙홀이 나타납니다. 하지만 손녀는 그 순간이 오기까지 얼마나 기다려야 할지 모릅니다. 다행히 각 가속기는 네 개의 정수 $A$, $B$, $C$, $D$를 화면에 표시하여 입자의 궤적을 예측해 줍니다. 이 값들을
$$r = A t + B$$
$$\theta = C t + D$$
에 대입하면 극좌표로 나타낸 입자의 궤적을 얻을 수 있습니다. 반지름 $r$은 거리 단위, 각도 $\theta$는 도(°) 단위이며, 시간 $t$는 시간 단위로 항상 기약분수로 표현되는 유리수입니다.
극좌표에서 한 점은 무한히 많은 표현을 가집니다. 일반적으로 점 $(r, \theta)$는 임의의 정수 $k$에 대해 $(r,\ \theta \pm k \times 360°)$ 또는 $(-r,\ \theta \pm (2k + 1) \times 180°)$로도 나타낼 수 있습니다. 또한 원점($r = 0$)은 임의의 $\theta$에 대해 $(0, \theta)$로 나타낼 수 있습니다.
두 가속기가 알려 준 매개변수를 이용해, 손녀는 두 입자가 언젠가 충돌할지, 충돌한다면 처음 충돌하는 시각이 언제인지 알고 싶어 합니다. 첫 충돌 이후에는 궤적을 예측할 수 없으므로, 오직 가장 처음의 충돌만 고려합니다.
손녀는 매우 똑똑하고 입자 물리학에도 해박하지만 컴퓨터 프로그래밍은 할 줄 몰라서, 할아버지(또는 할머니)의 오래된 프로그래밍 대회 노트를 뒤지고 있습니다. 다행히 당신은 예전에 바로 이 프로그램을 작성한 적이 있습니다. 이제 다시 한번 작성해 볼 시간입니다.
입력은 여러 개의 테스트 케이스로 이루어지며, 한 줄에 하나씩 주어집니다. 각 테스트 케이스는 공백 하나로 구분된 여덟 개의 정수로 이루어집니다.
$$A_1\ B_1\ C_1\ D_1\ A_2\ B_2\ C_2\ D_2 \quad (-10^4 \le A_1, B_1, C_1, D_1, A_2, B_2, C_2, D_2 \le 10^4)$$
앞의 네 값 ($A_1, B_1, C_1, D_1$)은 첫 번째 가속기가 표시한 매개변수이고, 뒤의 네 값 ($A_2, B_2, C_2, D_2$)은 두 입자가 발사될 때 두 번째 가속기가 표시한 매개변수입니다.
입력의 끝은 여덟 개의 정수가 모두 $0$인 줄($A_1 = B_1 = C_1 = D_1 = A_2 = B_2 = C_2 = D_2 = 0$)로 표시되며, 이 줄은 테스트 케이스로 처리하지 않습니다. 이는 입자를 발사하면 행성을 삼킬 블랙홀이 생기는 경우 가속기가 표시하는 값입니다. $0$ 자체는 유효한 입력 값이므로, 오직 여덟 개가 모두 $0$인 줄만 입력의 끝을 의미한다는 점에 유의하세요.
각 테스트 케이스마다 공백 하나로 구분된 두 개의 음이 아닌 정수 $t_a$와 $t_b$를 한 줄에 출력합니다. 두 입자가 절대 충돌하지 않는다면 $t_a = t_b = 0$을 출력합니다. 그렇지 않다면 $t_a / t_b$는 가장 이른 충돌 시각을 기약분수로 나타낸 것이어야 하며, 시각이 정수이더라도 분모는 반드시 $1$로 출력해야 합니다.