AT_abc193_e [ABC193E] Oversleeping

Description

[problemUrl]: https://atcoder.jp/contests/abc193/tasks/abc193_e 街 $ A $ と街 $ B $ の間を往復する電車があります。 電車は時刻 $ 0 $ に街 $ A $ を出発した後、 - $ X $ 秒かけて街 $ B $ に移動 - 街 $ B $ で $ Y $ 秒停車 - $ X $ 秒かけて街 $ A $ に移動 - 街 $ A $ で $ Y $ 秒停車 を繰り返します。 より厳密には、これらは半開区間として扱います。すなわち、$ n\ =\ 0,\ 1,\ 2,\ \dots $ について、 - $ (2X\ +\ 2Y)n\

Input Format

入力は以下の形式で標準入力から与えられる。 > $ T $ $ \rm\ case_1 $ $ \rm\ case_2 $ $ \hspace{9pt}\vdots $ $ \rm\ case_T $ 各ケースは以下の形式で与えられる。 > $ X $ $ Y $ $ P $ $ Q $

Output Format

$ T $ 行出力せよ。 $ i $ 行目には、$ \rm\ case_i $ についてこの問題を解き、街 $ B $ で電車を降りられる時刻が存在する場合、そのような時刻のうち最小のものを整数で出力せよ。 街 $ B $ で電車を降りられる時刻が存在しない場合、`infinity` と出力せよ。

Explanation/Hint

### 制約 - 入力は全て整数 - $ 1\