write a go solution for Description: You have given integers a, b, p, and q. Let f(x)=abs(sin(p/qpix)). Find minimum possible integer x that maximizes f(x) where a<=x<=b. Input Format: Each test contains multiple test cases. The first line contains the number of test cases t (1<=t<=100) — the number of test cases. The first line of each test case contains four integers a, b, p, and q (0<=a<=b<=10^9, 1<=p, q<=10^9). Output Format: Print the minimum possible integer x for each test cases, separated by newline. Note: In the first test case, f(0)=0, f(1)=f(2)approx0.866, f(3)=0. In the second test case, f(55)approx0.999969, which is the largest among all possible values.. Output only the code with no comments, explanation, or additional text.