درخت کسرا


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

درخت دودویی از کسرها داریم که روی هر راسش کسری به فرم aibi\frac {a_i} {b_i} نوشته شده است. درخت به این شکل ساخته می‌شود:

  1. a1a_{1} = b1b_{1} = 11
  2. a2ia_{2i} = (aia_{i} + bib_{i} ) , b2ib_{2i} = bib_{i} (بچه سمت چپ)
  3. a2i+1a_{2i+1} = aia_{i} , b2i+1b_{2i+1} = (aia_{i} + bib_{i} ) (بچه سمت راست)

فاصله دو راس در درخت را تعداد یال‌های تنهای مسیر بینشان تعریف می‌کنیم.

به شما QQ درخواست که هر کدام شامل کسری به فرم piqi\frac {p_i} {q_i} داده می‌شود.

برای هر عدد موجود در درخواست‌ها، اگر تنها یک راس در درخت وجود داشت که کسرش برابر کسر ورودی داده شده بود، فاصله راس آن کسر تا راس ۱ را در خروجی چاپ کنید و در غیر این صورت 1-1 خروجی دهید.

ورودی🔗

در خط اول QQ و در QQ خط بعدیpip_{i} و qiq_{i} به شما داده شده.

1Q100 0001 \le Q \le 100\ 000

1pi,qi10181 \le p_{i},q_{i} \le 10^{18}

خروجی🔗

در خط iiام اگر کسری معادل عدد piqi\frac {p_i} {q_i} بود و فقط این کسر معادل این عدد بود فاصله‌ی آن را از راس ۱ خروجی دهید در غیر این صورت 1-1 خروجی دهید.

مثال🔗

ورودی‌ نمونه🔗

2
1 2
3 5
Plain text

خروجی‌ نمونه🔗

1
3
Plain text