编程题
### 问题描述
小蓝现在有一个存钱罐,他想拿出一些金币去买一些糖果,已知存钱罐里面金币的个数为 $n$。小蓝如果拿的金币个数小于 $a$ 个,就会买不到自己想要的糖果,如果拿的金币的个数大于 $b$ 个,就会被妈妈骂。于是他想拿 $x$ 个金币,其中 $x$ 是 $a$ 到 $b$ 中约数个数最多且数值最小的数,$x\in(a,b)$。
现在请你帮小蓝计算他可以拿多少个金币。
### 输入格式
第一行输入一个正整数 $T$,表示查询的数量。
接下来 $T$ 行,每行输入两个正整数 $a$ 和 $b$,含义如题所述。
### 输出格式
输出 $q$ 行,每行包含一个数字 $x$ ,表示对应查询的结果。
### 样例输入
```text
3
2 10
59 567
344 6758
```
### 样例输出
```text
6
360
5040
```
### 评测数据规模
$1\leq T\leq 1000,1\leq n \leq 10^{16},1\le a\le b\le n$。