#753. Required Remainder

Required Remainder

给你三个整数 x,y,nx, y, n。你的任务是找到一个最大的整数 kk,满足:

  • 0kn0 \le k \le n
  • kmodx=yk \bmod x = y

其中 mod\bmod 表示取模运算(很多编程语言用 % 实现)。

换句话说:在区间 [0,n][0,n] 内,找到一个对 xx 取模余数为 yy 的最大整数。

你需要回答 tt 组相互独立的测试用例。保证对每个测试用例,满足条件的 kk 一定存在。


输入格式

第一行一个整数 tt1t51041 \le t \le 5\cdot 10^4),表示测试用例数量。

接下来 tt 行,每行三个整数 x,y,nx,y,n2x1092 \le x \le 10^90y<x0 \le y < xyn109y \le n \le 10^9)。

可以证明在给定约束下,答案总是存在。


输出格式

对每个测试用例输出一行一个整数:满足 0kn0 \le k \le nkmodx=yk \bmod x = y 的最大非负整数 kk


样例

输入

7
7 5 12345
5 0 4
10 5 15
17 8 54321
499999993 9 1000000000
10 5 187
2 0 999999999

输出

12339
0
15
54306
999999995
185
999999998

说明

例如样例第一组,答案为:

12339=71762+512339 = 7 \cdot 1762 + 5

因此 12339mod7=512339 \bmod 7 = 5,并且不存在不超过 1234512345 且余数为 55 的更大整数。