AT_agc015_f [AGC015F] Kenus the Ancient Greek

Description

[problemUrl]: https://atcoder.jp/contests/agc015/tasks/agc015_f 国際ユークリッドの互除法オリンピックの主催者であるけぬすくんは、 オリンピックをより面白くするため、$ 2 $ 数のペアに対してユークリッドの互除法を走らせたとき、反復回数ができるだけ大きくなるようなペアを探しています。 $ Q $ 個のクエリが与えられます。$ i $ 個目のクエリは、$ 2 $ つの整数 $ X_i,Y_i $ で表され、 $ 1\ ≦\ x\ ≦\ X_i,\ 1\ ≦\ y\ ≦\ Y_i $ なるような $ (x,y) $ のペアの中での、ユークリッドの互除法の反復回数の最大値と、その最大値をとるペアの個数を $ 10^9+7 $ で割ったあまりを求めるクエリです。 全てのクエリに答えてください。ただし、ユークリッドの互除法の反復回数とは、任意の非負整数 $ a,b $ に対し、 - $ (a,b) $ と $ (b,a) $ の反復回数は等しい - $ (0,a) $ の反復回数は $ 0 $ - $ a\ >\ 0 $ かつ $ a\ ≦\ b $ なら、整数 $ p,q $ $ (0\ ≦\ q\ を用いて\ b $ を $ b=pa+q $ と一意的に表したとき、$ (q,a) $ の反復回数に $ 1 $ を加えた値が $ (a,b) $ の反復回数となる を満たすように定義されます。

Input Format

N/A

Output Format

N/A

Explanation/Hint

### 制約 - $ 1\ ≦\ Q\ ≦\ 3\ ×\ 10^5 $ - $ 1\ ≦\ X_i,Y_i\ ≦\ 10^{18}(1\ ≦\ i\ ≦\ Q) $ ### Sample Explanation 1 $ 1 $ つ目のクエリでは、$ (2,3),(3,2),(3,4),(4,3) $ のユークリッドの互除法の反復回数が $ 2 $ 回です。$ 3 $ 回以上反復が必要な組はありません。 $ 2 $ つ目のクエリでは、$ (5,8) $ のユークリッドの互除法の反復回数が $ 4 $ 回です。 $ 3 $ つ目のクエリでは、$ (5,8),(8,5),(7,11),(8,11),(11,7),(11,8),(12,7) $ のユークリッドの互除法の反復回数が $ 4 $ 回です。