/*
poj 2413 How many Fibs?
【a,b]区间内有多少个f[i]
f[1]=1;f【2】=2;
f【i】=f【i-1】+f【i-2】;
*/
import java.util.Scanner;
import java.math.*;
import java.text.*;
public class ss
{
public static void main(String[] args)
{
Scanner cin=new Scanner(System.in);
BigInteger a,b;
BigInteger []f=new BigInteger [1010];
while(cin.hasNextBigInteger())
{
int ans=0;
a=cin.nextBigInteger();
b=cin.nextBigInteger();
if(a.compareTo(BigInteger.valueOf(0))==0&&b.compareTo(BigInteger.valueOf(0))==0)
break;
f[1]=new BigInteger("1");
f[2]=new BigInteger("2");
if(f[1].compareTo(a)>=0&&f[1].compareTo(b)<=0)
ans++;
if(f[2].compareTo(a)>=0&&f[2].compareTo(b)<=0)
ans++;
for(int i=3;;i++)
{
f[i]=f[i-1].add(f[i-2]);
if(f[i].compareTo(a)>=0&&f[i].compareTo(b)<=0)
ans++;
else if(f[i].compareTo(b)>0)
break;
}
System.out.println(ans);
}
}
}
/*
poj 1131 Octal Fractions
将一个八进制的小数转化为10进制的小数
例如:
0.75 in octal is 0.953125 (7/8 + 5/64) in decimal
*/
import java.util.*;
import java.math.*;
import java.io.*;
public class Main
{
public static void main(String[] args)
{
Scanner cin=new Scanner(System.in);
String str;
while(cin.hasNext())
{
BigDecimal ans=new BigDecimal("0");
BigDecimal tmp=new BigDecimal("8");
BigDecimal eight=new BigDecimal("8");
BigDecimal tt;
str=cin.nextLine();//输入字符串
for(int i=2;i<str.length();i++)
{
tt=new BigDecimal(str.charAt(i)-'0');
tt=tt.divide(tmp);
tmp=tmp.multiply(eight);
ans=ans.add(tt);
}
System.out.println(str+" [8] = "+ans+" [10]");
}
}
}
/*
poj 2305 Basic remains
给定进制的大数取模
给你b进制的大数p,m求p%m的b进制结果
*/
import java.math.*;
import java.io.*;
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner cin=new Scanner(System.in);
int b;
BigInteger p,m;
while(cin.hasNext())
{
b=cin.nextInt();
if(b==0)
break;
p=cin.nextBigInteger(b);//b进制输入
m=cin.nextBigInteger(b);
p=p.mod(m);
String ans=p.toString(b);///转化为b进制
System.out.println(ans);
}
}
}
/*
hdu 5247
*一个序列是否等比
*/
import java.util.Scanner;
import java.math.*;
import java.text.*;
public class Main{
public static void main(String[] args){
Scanner cin = new Scanner(System.in);
int t,n;
BigInteger a[] = new BigInteger[100];
t = cin.nextInt();
for(int i=0;i<t;i++)
{
n = cin.nextInt();
int flag = 0;
for(int j=0;j<n;j++)
{
a[j] = cin.nextBigInteger();
if(a[j].compareTo(BigInteger.valueOf(0))==0)
flag++;
}
//System.out.println(flag);
if(n == 1)
{
System.out.println("Yes");
continue;
}
else if(flag == n)
{
System.out.println("Yes");
continue;
}
else if(flag!=0)
{
System.out.println("No");
continue;
}
BigInteger tmp,tmp1,tt,tt1,g,g1;
g=a[1].gcd(a[0]);
tmp = a[1].divide(g);
tmp1=a[0].divide(g);
flag=0;
for(int j=2;j<n;j++)
{
g1=a[j].gcd(a[j-1]);
tt = a[j].divide(g1);
tt1=a[j-1].divide(g1);
if(tmp.compareTo(tt)==0&&tmp1.compareTo(tt1)==0)
continue;
flag = 1;
break;
}
if(flag == 1)
System.out.println("No");
else
System.out.println("Yes");
}
cin.close();
}
}