t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        if(min(a,b)<m and(a+b==m+n)):
            ans.append("No")
            continue

        if(min(a,b)<m and(a+b>m+n)):
            ans.append("No")
            continue

for an in ans:
    print(an)


t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        if(min(a,b)<m and(a+b==m+n)):
            ans.append("Yes")
            continue

        if(min(a,b)<m and(a+b>m+n)):
            ans.append("No")
            continue

for an in ans:
    print(an)


t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        if(min(a,b)<m and(a+b==m+n)):
            ans.append("No")    #no originally
            continue

        if(min(a,b)<m and(a+b>m+n)):
            if(max(a,b)-n>min(a,b)):
                ans.append("No")
                continue
            else:

                ans.append("Yes")    # no originally
                continue
        #if(min(a,b)<m and())
        #if(min(a,b)<m and(max(a,b)-n)>=min(a,b))
        """if(min(a,b)<m):
            if(max(a,b)-n<min(a,b))and(max(a,b)-n>=m ):
                ans.append("Yes")
                continue
            if()"""

for an in ans:
    print(an)


t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        if(min(a,b)<m and(a+b==m+n)):
            ans.append("No")    #no originally
            continue

        if(min(a,b)<m and(a+b>m+n)):
            if(max(a,b)-n>=min(a,b)):
                ans.append("No")
                continue
            else:

                ans.append("Yes")    # no originally
                continue
        #if(min(a,b)<m and())
        #if(min(a,b)<m and(max(a,b)-n)>=min(a,b))
        """if(min(a,b)<m):
            if(max(a,b)-n<min(a,b))and(max(a,b)-n>=m ):
                ans.append("Yes")
                continue
            if()"""

for an in ans:
    print(an)


t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        """if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue"""
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        else:
            ans.append("No")
            continue
        """if(min(a,b)<m and(a+b==m+n)):
            ans.append("No")    #no originally
            continue"""

        """if(min(a,b)<m and(a+b>=m+n)):
            if(max(a,b)-n>=min(a,b)):
                ans.append("No")
                continue
            else:

                ans.append("No")    # no originally
                continue"""
        #if(min(a,b)<m and())
        #if(min(a,b)<m and(max(a,b)-n)>=min(a,b))
        """if(min(a,b)<m):
            if(max(a,b)-n<min(a,b))and(max(a,b)-n>=m ):
                ans.append("Yes")
                continue
            if()"""

for an in ans:
    print(an)


t=int(input())
ans=[]
for i in range(t):
    a,b,n,m=input().split()
    a=int(a)
    b=int(b)
    n=int(n)
    m=int(m)
    if(a+b)<(m+n):
        ans.append("No")
        continue
    else:
        if(a==0 or b==0 and(m!=0)):
            ans.append("No")
            continue
        if(a==0 or b==0 and(m==0)):
            ans.append("Yes")
            continue
        if(min(a,b)>=m):
            ans.append("Yes")
            continue
        else:
            ans.append("No")
            continue
        """if(min(a,b)<m and(a+b==m+n)):
            ans.append("No")    #no originally
            continue"""

        """if(min(a,b)<m and(a+b>=m+n)):
            if(max(a,b)-n>=min(a,b)):
                ans.append("No")
                continue
            else:

                ans.append("No")    # no originally
                continue"""
        #if(min(a,b)<m and())
        #if(min(a,b)<m and(max(a,b)-n)>=min(a,b))
        """if(min(a,b)<m):
            if(max(a,b)-n<min(a,b))and(max(a,b)-n>=m ):
                ans.append("Yes")
                continue
            if()"""

for an in ans:
    print(an)


z=int(input())
for h in range(z):
    a,b,n,m=map(int,input().split())
    x=min(a,b)
    y=max(a,b)
    flag1=0
    flag2=0
    if m<=x:
        flag1=1
        z=m-x
        if z+b>=n:
            flag2=1
        if flag1==1 and flag2==1:
            print("Yes")
        else:
            print("No")
    else:
        print("No")


z=int(input())
for h in range(z):
    a,b,n,m=map(int,input().split())
    x=min(a,b)
    y=max(a,b)
    flag1=0
    flag2=0
    if m<=x:
        flag1=1
        z=x-m
        if z+y>=n:
            flag2=1
        if flag1==1 and flag2==1:
            print("Yes")
        else:
            print("No")
    else:
        print("No")


z=int(input())
for h in range(z):
    a,b,n,m=map(int,input().split())
    x=min(a,b)
    y=max(a,b)
    flag1=0
    flag2=0
    if m<=x:
        flag1=1
        z=m-x
        if z+y>=n:
            flag2=1
        if flag1==1 and flag2==1:
            print("Yes")
        else:
            print("No")
    else:
        print("No")


t=int(input())
for _ in range(t):
  a,b,c,d=map(int,input().split())
  if a==b and b==c and c==d:
    print('Yes')
  elif a+b<c+d:
    print('No')
  elif (a+b)>=(c+d) and min(a,b)>=d:
    print('Yes')
  else:
    print('No')


t=int(input())
for _ in range(t):
  a,b,c,d=map(int,input().split())
  if a==b and b==c and c==d:
    print('Yes')
  elif a+b<c+d:
    print('No')
  elif min(a,b)>=d and max(a,b)>=c:
    print('Yes')
  else:
    print('No')


# cookie.py
t = int(input())
while t>0:
	t-=1
	a,b,n,m = map(int,input().split())
	if a+b >= n+m and m<=min(a,b):
		print("YES")
	else:
		print("NO")


t = int(input())
while t>0:
    t-=1
    a,b,n,m = map(int,input().split())
    if a+b >= n+m and a!=0 and b!=0:
        print("YES")
    else:
        print("NO")


# cookie.py
t = int(input())
while t>0:
	t-=1
	a,b,n,m = map(int,input().split())
	ok = False
	if a==0 or b==0:
		print("NO")
	else:
		if b>=a:
			g1 = b-a+1
			if n>=g1:
				n-=g1
				b-=n
				# print(b,a+b-m)
				if b>=m and a+b-m>=n:
					ok = True
		else:
			# print(a+b-m)
			if b>=m and a+b-m>=n:
				ok = True
	if ok:
		print("YES")
	else:
		print("NO")


t=int(input())
for i in range(t):
    v,c,n,m=map(int,input().split())
    if(v+c)<(m+n):
        print('NO')
    elif(min(v,c)<m):
        print('NO')
    else:
        print('YES')


t=int(input())
for i in range(t):
    v,c,n,m=map(int,input().split())
    if(v>c):
        n-=v
        m-=c
    else:
        n-=c
        m-=v
    if(n>0 or m>0):
        print('NO')
    else:
        print('YES')


t=int(input())
for i in range(t):
    v,c,n,m=map(int,input().split())
    if(v>c and v>=n and c>=m):
        print('YES')
    elif(v<=c and c>=n and v>=m):
        print('YES')
    else:
        print('NO')


for _ in range(int(input())):
  a,b,n,m=map(int,input().split())
  if a>b:
    if m<=b:
      print('YES')
    else:
      print('NO')
  else:
      if m<=a:
         print('YES')
      else:
        print('NO')


for _ in range(int(input())):
  a,b,n,m=map(int,input().split())
  if  m==0:
    print('YES')
  elif n+m>a+b:
      print('NO')
  if a>b:
    if m<=b:
      print('YES')
    else:
      print('NO')
  else:
      if m<=a:
         print('YES')
      else:
        print('NO')


for _ in range(int(input())):
  a,b,n,m=map(int,input().split())
  if n+m>a+b:
    print('NO')
  elif m==0:
    print('YES')
  elif a>b:
    if m<=b:
      print('YES')
    else:
      print('NO')
  else:
      if m<=a:
         print('YES')
      else:
        print('NO')


require 'set'; require 'prime'; require 'pp'
INF=Float::INFINITY; MOD=10**9+7
t = gets.chomp.to_i
t.times do
  v,c,n,m = gets.chomp.split.map(&:to_i)
  v,c=c,v if v > c
  if v < m
    puts 'No'
  else
    v -= m
    if v + c < n
      puts 'No'
    else
      puts 'Yes'
    end
  end
end


s = gets.chomp.to_i
s.times do
    a, b, n, m = gets.chomp.split(" ").map(&:to_i)
    if a > b
        kazu = b - m
        if kazu < 0
            #no += 1
            puts "No"
            next
        elsif kazu >= 0
            all = kazu + a
            if all >= n
                #yes += 1
                puts "Yes"
                next
            else
                puts "No"
                next
                #no += 1
            end
        end
    elsif a < b
        kazu = a - m
        if kazu < 0
            #no += 1
            puts "No"
            next
        elsif kazu >= 0
            all = kazu + b
            if all >= n
                puts "Yes"
                next
                #yes += 1
            else
                puts "No"
                next
                #no += 1
            end
        end
    elsif a == b
        kazu = a - m
        if kazu < 0
            puts "No"
            next
            #no += 1
        elsif kazu >= 0
            all = kazu + b
            if all >= n
                puts "Yes"
                next
                #yes += 1
            else
                puts "No"
                next
                #no += 1
            end
        end
    end
end


n = gets.chomp.to_i
n.times do
    a, b, n, m = gets.chomp.split(" ").map(&:to_i)
    if a > b
        kazu = b - m
        if kazu < 0
            #no += 1
            puts "No"
            next
        elsif kazu >= 0
            all = kazu + a
            if all >= n
                #yes += 1
                puts "Yes"
                next
            else
                puts "No"
                next
                #no += 1
            end
        end
    elsif a < b
        kazu = a - m
        if kazu < 0
            no += 1
            puts "No"
            next
        elsif kazu >= 0
            all = kazu + b
            if all >= n
                puts "Yes"
                next
                #yes += 1
            else
                puts "No"
                next
                #no += 1
            end
        end
    elsif a == b
        kazu = a - m
        if kazu < 0
            puts "No"
            next
            #no += 1
        elsif kazu >= 0
            all = kazu + b
            if all >= n
                puts "Yes"
                next
                #yes += 1
            else
                puts "No"
                next
                #no += 1
            end
        end
    end
end


for _ in range(input()):
    a,b,n,m=map(int,raw_input().split())
    r=abs(a-b)
    n-=r
    a,b=min(a,b),min(a,b)
    if m<n:
        if a+b>=n+m:
            print "YES"
        else:
            print "NO"
    else:
        r=m-n
        a-=n
        b-=n
        if a>=r:
            print "YES"
        else:
            print "NO"


for _ in range(input()):
    a,b,n,m=[int(i) for i in raw_input().split()]
    if(a+b)<n+m:
        print "No"
    elif min(a,b)<m:
        print "No"
    else:
        print "Yes"


T = input()

a = 0
b = 0
n = 0
m = 0

for t in range(T):
    l = raw_input().split()
    a = int(l[0])
    b = int(l[1])
    n = int(l[2])
    m = int(l[3])

    if (a>b):
        b -= m
        if (b<0):
            print("No")
            continue
        a += b-n
        if (a<0):
            print("No")
            continue
        print("Yes")
    else:
        a -= m
        if (a<0):
            print("No")
            continue
        b += a-n
        if (b<0):
            print("No")
            continue
        print("Yes")


t=int(raw_input())
for r in range(t):
    a,b,n,m= map(long, raw_input().split(" "))
    if a>b:
        if n<(a-b):
            a-=(a-b)
            n=0
        else:
            n-=(a-b)
            a=b
    elif(b>a):
        if n<(b-a):
            b-=(b-a)
            n=0
        else:
            n-=(b-a)
            b=a
    if a==b:
        a-=m
    elif a<b:
        a-=m
    else:
        b-=m
    if a<0 or b<0:
        print "No"
    elif (a+b)>=n:
        print "Yes"
    else:
        print "No"


for _ in range(input()):
    a,b,n,m = map(int,raw_input().split())
    f =0
    if :
        f = 1
        print 'No'
        continue
    #print m<=(min(a,b)),min(a,b) !=0
    if a+b>=n+m and m<=(min(a,b)):
        print("Yes")
    else:
        print('No')


for _ in range(input()):
    a,b,n,m = map(int,raw_input().split())
    f =0
    if a+b<n+m:
        f = 1
        print 'No'
        continue
    #print m<=(min(a,b)),min(a,b) !=0
    if m<=(min(a,b)) and min(a,b) !=0:
        print("Yes")
    else:
        print('No')


for _ in range(input()):
    a,b,n,m = map(int,raw_input().split())
    if a+b>=n+m and m<=(min(a,b)):
        print("Yes")
    else:
        print('No')


t = int(raw_input())
for _ in xrange(t):
	a, b, n, m = map(int, raw_input().split())

	if a + b < n + m:
		print 'No'
		continue

	if m == 0:
		print 'Yes'
		continue

	print 'Yes' if min(a, b) >= m else 'No'


#include <stdio.h>
#include <math.h>
#include <string.h>

int main ()
{
    int t, i, j;
    long long int a, b, m, n;
    scanf ("%d", &t);
    long long int arr [t][4];
    for (i = 0; i < t; i++) {
        for (j = 0; j < 4; j++) {
            scanf ("%lld", &arr [i][j]);
        }
    }
    for (i = 0; i < t; i++) {
        a = (arr[i][0] <= arr [i][1]) ? arr[i][0] : arr [i][1];
        b = (arr[i][0] >= arr [i][1]) ? arr [i][0] : arr [i][1];
        m = arr [i][2];
        n = arr [i][3];
        if (a < n) printf ("No\n");
        else {
            if (a+b-n < m) printf ("No\n");
            else printf ("Yes\n");
        }
    }
    return 0;
}


#include<stdio.h>

int main(){
  long long t,a,b,n,m,k;
  scanf("%lld",&t);
  while(t>0){
    t--;
    scanf("%lld%lld%lld%lld",&a,&b,&n,&m);
    if(a>b){k=a;a=b;b=k;}
    if(a<m){printf("No\n");continue;}
    if(a+b<n+m){printf("No\n");continue;}
    printf("Yes\n");
  }
}


#include <stdio.h>
#include <stdlib.h>

typedef long long int lli;

#define in32(x) scanf("%d", &x)
#define out32(x) printf("%d\n", (x))
#define in64(x) scanf("%lld", &x)
#define out64(x) printf("%lld\n", (x))
#define outstr(x) printf("%s\n", (x))
#define fo3(a,b,c) for(a = (b); a <= (c); a++)
#define of3(a,b,c) for(a = (b); a >= (c); a--)

#define MIN(a,b) (((a)<(b))?(a):(b))

int main() {
    int n;
    lli v, c, good, bad;
    in32(n);
    while(n-->0) {
        in64(v);
        in64(c);
        in64(good);
        in64(bad);
        int canDo = (good + bad <= v + c);
        lli min = MIN(v, c);
        if (min < bad)
            canDo = 0;
        outstr(canDo ? "Yes" : "No");
    }
    return 0;
}


#include<stdio.h>
#define I64 long long int
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        I64 a,b,n,m,k=0,x,q;
        scanf("%I64d%I64d%I64d%I64d",&a,&b,&n,&m);
        if(a+b<n+m)
            printf("No\n");
        else{
            if(a>b)
            {
                if(b>=m)
                    printf("Yes\n");
                else
                    printf("No\n");
            }
            else
            {
               if(a>=m)
                    printf("Yes\n");
               else
                    printf("No\n");
            }
        }
    }
}


#include<stdio.h>
int main()
{
	int t;
	scanf("%d", &t);
	long long int a, b, n, m;
	for (; t > 0; t--)
	{
		scanf("%lld %lld %lld %lld", &a, &b, &n, &m);
		if (a > b)
		{
			if (b < m)
				printf("NO\n");
			else if (a + b < n + m)
				printf("NO\n");
			else
				printf("YES\n");
		}
		else
		{
			if (a < m)
				printf("NO\n");
			else if (a + b < n + m)
				printf("NO\n");
			else
				printf("YES\n");
		}
	}
	return 0;
}


#include<stdio.h>

int main(){
	int t;
	scanf("%d",&t);
	for (int i=0;i<t;i++){

	unsigned long long a,b,n,m;
	scanf("%llu %llu %llu %llu",&a,&b,&n,&m);
	//n���� ������ ���� ��� but ������ ���ݸ�(b) ������
	//m���� ������ ���� ��� but ������ �ٴҶ�(a) ������

	if (a+b<n+m)
		printf("No\n");
	else{
		unsigned long long min,max;
		if (a>=b){
			min = b;
			max = a;
		}
		else{
			min = a;
			max = b;
		}

		if (min<m)
			printf("No\n");
		else
			printf("Yes\n");
	}

	}
}


#include <stdio.h>

int main(){
    unsigned long long int a, b, n, m;
    int t;

    scanf ("%d", &t);

    while(t){
        scanf ("%llu%llu%llu%llu", &a, &b, &n, &m);
        if((a+b) < (n+m) || a<b && a<m || a>b && b<m) printf("No\n");
        else printf("Yes\n");
        t--;
    }
    return 0;
}


#include <stdio.h>

int main(){
    unsigned long long int a, b, n, m;
    int t;

    scanf ("%d", &t);

    while(t){
        scanf ("%llu%llu%llu%llu", &a, &b, &n, &m);
        if((a+b) < (n+m) || (a<=b && a<m) || (a>=b && b<m)) printf("No\n");
        else printf("Yes\n");
        t--;
    }
    return 0;
}


#include <stdio.h>

int main(){
    unsigned long long int a, b, n, m;
    int t;

    scanf ("%d", &t);

    while(t){
        scanf ("%llu%llu%llu%llu", &a, &b, &n, &m);
        if((a+b) < (n+m) || (a<b && a<m) || (a>b && b<m)) printf("No\n");
        else printf("Yes\n");
        t--;
    }
    return 0;
}


#include<stdio.h>
int main()
{
        long long t,j;
        scanf("%lld",&t);
        for(j=0;j<t;j++)
        {
                long long v,c,a,b,cg,cs;
                scanf("%lld%lld%lld%lld",&v,&c,&a,&b);

                cg=(v>c)?v:c;
                cs=(v<c)?v:c;

                if(((v+c)>a)&&((v+c)>b)&&(b<cs)&&((v+c)>(a+b)))
                printf("YES\n");
                else if((v+c)>(a+b))
                {
                        if(b<=cs)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)==(a+b))
                {
                        if(a>=cg)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)<(a+b))
                printf("NO\n");
        }
        return 0;
}


#include<stdio.h>
int main()
{
        long long t,j;
        scanf("%lld",&t);
        for(j=0;j<t;j++)
        {
                long long v,c,a,b,cg,cs;
                scanf("%lld%lld%lld%lld",&v,&c,&a,&b);

                cg=(v>c)?v:c;
                cs=(v<c)?v:c;

                if(((v+c)>a)&&((v+c)>b)&&(b<cs))
                printf("YES\n");
                else if((v+c)>(a+b))
                {
                        if(b<=cs)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)==(a+b))
                {
                        if(a>cg)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)<(a+b))
                printf("NO\n");
        }
        return 0;
}


#include<stdio.h>
int main()
{
        long long t,j;
        scanf("%lld",&t);
        for(j=0;j<t;j++)
        {
                long long v,c,a,b,cg,cs;
                scanf("%lld%lld%lld%lld",&v,&c,&a,&b);

                cg=(v>c)?v:c;
                cs=(v<c)?v:c;

                if(((v+c)>a)&&((v+c)>b))
                printf("YES\n");
                else if((v+c)>(a+b))
                {
                        if(b<=cs)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)==(a+b))
                {
                        if(a>cg)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)<(a+b))
                printf("NO\n");
        }
        return 0;
}


#include<stdio.h>
int main()
{
        int t,j;
        scanf("%lld",&t);
        for(j=0;j<tlj++)
        {
                int v,c,a,b,cg,cm;
                scanf("%lld%lld%lld%lld",&v,&c,&a,&b);

                cg=(v>c)?v:c;
                cs=(v<c)?v:c;

                if(((v+c)>a)&&((v+c)>b))
                printf("YES\n");
                else if((v+c)>(a+b))
                {
                        if(b<=cs)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)==(a+b))
                {
                        if(a>cg)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)<(a+b))
                printf("NO\n");
        }
        return;
}


#include<stdio.h>
int main()
{
        long long t,j;
        scanf("%lld",&t);
        for(j=0;j<t;j++)
        {
                long long v,c,a,b,cg,cs;
                scanf("%lld%lld%lld%lld",&v,&c,&a,&b);

                cg=(v>c)?v:c;
                cs=(v<c)?v:c;

                if(((v+c)>a)&&((v+c)>b)&&(b<cs))
                printf("YES\n");
                else if((v+c)>(a+b))
                {
                        if(b<=cs)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)==(a+b))
                {
                        if(a>=cg)
                        printf("YES\n");
                        else
                        printf("NO\n");
                }
                else if((v+c)<(a+b))
                printf("NO\n");
        }
        return 0;
}


#include <stdio.h>

long long int MIN(long long int a, long long int b) { return a > b ? b : a; }

int main()
{
    int t;
    long long int a, b, n, m;
    scanf("%d", &t);
    for (int i = 0; i < t; i++) {
        scanf("%lld %lld %lld %lld", &a, &b, &n, &m);
        if (n + m > a + b) {
            printf("No\n");
            continue;
        }
        if (MIN(a, b) >= m)
            printf("Yes\n");
        else
            printf("No\n");
    }
    return 0;
}


#include <stdio.h>
typedef long long int ll;
//very odd case if no. of vanilla cookies greater chocolate then chocolate guests eat chocolate & vice versa
//which is very sensitive so check that
int main()
{
    int t;
    ll a,b,n,m;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%lld %lld %lld %lld",&a,&b,&n,&m);
        if(a+b==0)printf("NO\n");
        else if(n+m>a+b)printf("NO\n");
        else
        {
            if(((a<=b)&(m>a))|((a>b)&(b<m)))printf("NO\n");
            else printf("YES\n");
        }
    }

}


#include<stdio.h>
int main()
{
    long long n,i,v,c,f,s;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&v,&c,&f,&s);
        if((v+c)<(f+s))
            printf("No\n");
        else
        {
            if(v<c)
            {
                if(v<s)
                    printf("No\n");
                else
                    printf("Yes\n");
            }
            else
                printf("Yes\n");
        }
    }return 0;

}


#include<stdio.h>
int main()
{
    long long n,a,b,c,d,i;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&a,&b,&c,&d);
        if(a+b<c+d)
            printf("No\n");
        else
            printf("Yes\n");
    }return 0;
}


#include<stdio.h>
int main()
{
    long long n,a,b,c,d,i;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&a,&b,&c,&d);
        if(a+b<c+d)
            printf("No\n");
        else
        {
            if(a<b)
            {
               if(a<b-c)
               {
                   if(a<d)
                    printf("No\n");
                    else
                        printf("Yes\n");

               }
               else
                printf("Yes\n");
            }
            else if(b<a)
            {
                if(b<a-d)
                {
                    if(b<c)
                        printf("No\n");
                    else
                         printf("Yes\n");
                }
                else
                    printf("Yes\n");
            }
            else
            printf("Yes\n");
        }

    }return 0;
}


#include<stdio.h>
int main()
{
    long long n,i,v,c,f,s;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&v,&c,&f,&s);
        if((v+c)<(f+s))
            printf("No\n");
        else
        {
                    if(v<=c)
                    {
                       if(v<s||c<s)printf("No\n");
                       else printf("Yes\n");
                    }
                    else
                    {
                      if(c<s||v<s)printf("No\n");
                      else printf("Yes\n");
                    }
        }
    }return 0;

}


#include<stdio.h>
int main()
{
    long long n,i,v,c,f,s;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&v,&c,&f,&s);
        if((v+c)<(f+s))
            printf("No\n");
        else
        {
            if(v<c)
            {
                if(v<s)
                    printf("No\n");
                else
                    printf("Yes\n");
            }
            else if(c<v)
            {
                if(c<s)
                    printf("No\n");
                else
                    printf("Yes\n");
            }
            else
                printf("Yes\n");
        }
    }return 0;

}


#include<stdio.h>
int main()
{
    long long n,i,v,c,f,s;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&v,&c,&f,&s);
        if((v+c)<(f+s))
            printf("No\n");
        else
        {
            if(v<s||c<s)printf("No\n");
            else printf("Yes\n");
        }
    }return 0;

}


#include<stdio.h>
int main()
{
    long long n,i,v,c,f,s;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    {
        scanf("%lld %lld %lld %lld",&v,&c,&f,&s);
        if((v+c)<(f+s))
            printf("No\n");
        else
        {
            if(v<(c-f))
            {
                if(v<s)
                    printf("No\n");
                else
                    printf("Yes\n");
            }
            else
                printf("Yes\n");
        }
    }return 0;

}


#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<math.h>
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        long long int a,b,n,m,i,k,j;
        scanf("%lld %lld %lld %lld",&a,&b,&n,&m);
        if((a+b)>=(n+m))
        {
            if(a>b)
            {
               if(m>b)
               {
                   printf("No\n");
               }
               else
               {
                   printf("Yes\n");
               }
            }
            else
            {
                if(m>a)
                {
                    printf("No\n");
                }
                else
                {
                    printf("Yes\n");
                }
            }
        }
        else
        {
            printf("No\n");
        }
    }
    return 0;
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");

        }
      else
        {
            long long int less =(a<c)?a:c;
            if(less>=m)
            printf("yes");
            else
            printf("no");
        }

        }
	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");
            continue;
        }
        if(a==0 || c==0)
        {
            if(m!=0)
            {
                printf("no\n");
                continue;
            }
        }
        if(a==c && c==v && v==m)
        {
            printf("yes\n");
            continue;
        }
        else
        {
            int mc=(a>c)?a:c;
            int lc=(a<c)?a:c;
             int dc=mc-lc;
            int lwr=(dc<v)?dc:v;
            if(lwr==dc)
            {
                mc=mc-dc;
                v=v-dc;
                if(lc>=m)
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
            else
            {
                if(lc>=m)
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
        }
	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");
            continue;
        }
        if(a==0 || c==0)
        {
            if(m!=0)
            {
                printf("no\n");
                continue;
            }
        }
        if(a==c && c==v && v==m)
        {
            printf("yes\n");
            continue;
        }
        else
        {
           int less=(a<c)?a:c;
            if(less>=m)
            printf("yes\n");
            if(less<=m)
            printf("no\n");

        }
	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");
            continue;
        }
        if(a==0 || c==0)
        {
            if(m!=0)
            {
                printf("no\n");
                continue;
            }
        }
        if(a==c && c==v && v==m)
        {
            printf("yes\n");
            continue;
        }
        else
        {
            int mc=(a>c)?a:c;
            int lc=(a<c)?a:c;
             int dc=mc-lc;
            int lwr=(dc<v)?dc:v;
            if(lwr==dc)
            {
                mc=mc-dc;
                v=v-dc;
                if((mc+lc)>=(v+m))
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
            else
            {
                if(lc>=m)
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
        }
	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");
            continue;
        }
        if(a==0 || c==0)
        {
            if(m!=0)
            {
                printf("no\n");
                continue;
            }
        }
        if(a==c && c==v && v==m)
        {
            printf("yes\n");
            continue;
        }
        else
        {
            int mc=(a>c)?a:c;
            int lc=(a<c)?a:c;
             int dc=mc-lc;
            int lwr=(dc<v)?dc:v;
            if(lwr==dc)
            {
                mc=mc-dc;
                v=v-dc;
                if((lc>=m)
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
            else
            {
                if(lc>=m)
                {
                    printf("yes\n");
                    continue;
                }
                else
                {
                    printf("no\n");
                    continue;
                }

            }
        }
	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");

        }
      else
        {
            long long int less =(a<c)?a:c;
            if(less>=m)
            printf("yes\n");
            else
            printf("no\n");
        }

        	}
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	while(t--)
	{
	    long long int a,c,v,m;
	    scanf("%lld%lld%lld%lld",&a,&c,&v,&m);
	    if((v+m)>(a+c))
        {
            printf("no\n");
            continue;
        }
        if(a==0 || c==0)
        {
            if(m!=0)
            {
                printf("no\n");
                continue;
            }
        }
        if(a==c && c==v && v==m)
        {
            printf("yes\n");
            continue;
        }
        else
        {
           int less=(a<c)?a:c;
            if(less>=m)
            printf("yes\n");
            if(less<m)
            printf("no\n");

        }
	}
}


#include <stdio.h>
#include <stdlib.h>
#define N 109

int min(int a, int b){
	if (a>b)
		return b;
	else
		return a;
}

int max(int a, int b){
	if (a<b)
		return b;
	else
		return a;
}

// int cmpfunc (const void * a, const void * b) {
//    return ( *(int*)a - *(int*)b );
// }

   // qsort(values, 5, sizeof(int), cmpfunc);

int main() {

	int t, ans;
	long long c,v,n,m;
	scanf("%d", &t);
	while (t--){
		ans=1;
		scanf("%lld%lld%lld%lld", &v, &c, &n, &m);
		if (n+m> c+v ||(m>0&& (c==0||v==0)) )
			ans=0;
		else{
			if (m>0){
				if ((v<=c && m>v)||(v>c && m>c) ){
					// if (n<=c-v)
						ans=0;

					}
				}

			}

		if (ans==1)
			printf("Yes\n");
		else
			printf("No\n");

	}

	return 0;
}


#include <stdio.h>

#define min(a, b) ((a) < (b) ? (a): (b))

int main() {
  int t;
  scanf("%d", &t);
  while (t--) {
    long long a, b, m, n;
    scanf("%lld%lld%lld%lld", &a, &b, &n, &m);
    if (m + n > a+ b || m > min(a, b)) printf("No\n");
    else printf("Yes\n");
  }
  return 0;
}


#include <stdio.h>
int main()
{
	long long a,b,c,d,e,f,g,h,i,j,k,l,t,v,m,n;
	scanf("%lli",&t);
	for(;t>0;t--)
	{
		scanf("%lli%lli%lli%lli",&a,&b,&n,&m);
		c=a<b?a:b;
		v=a<b?b:a;
		if(m<=c)
		{
			c-=m;
			if(n<=c+v)printf("Yes\n");
			else printf("No\n");
		}
		else printf("No\n");
	}
	return 0;
}


#include<stdio.h>

int main()
{
    int t;
    scanf("%d",&t);
    int i;
    for(i=0;i<t;i++)
    {
    long long int a,b,n,m;
    scanf("%lld%lld%lld%lld",&a,&b,&n,&m);
    if(a+b<n+m)
    printf("No\n");
    else if((a>b && b<m) || (b>a && a<m) || (a==b && a<m))

            printf("No\n");

    else if((a==b && n==m && a==m))
        printf("Yes\n");

    else if((a>b && b==m) || (b>a && a==m) || (a==b) && (a==m))
        {
            printf("Yes\n");
        }
    else
    printf("Yes\n");
    }
    return 0;
}


#include <stdio.h>

int main()
{
    int N;
    long long v, c, n, m;
    long long res;
    scanf("%d", &N);
    while (N--) {
        scanf("%lld %lld %lld %lld", &v, &c, &n, &m);
        if (v > c) {
            res = v - c;
            v = c;
        } else if (c > v) {
            res = c - v;
            c = v;
        }

        if (n >= res) {
            n -= res;
        } else {
            if (m <= v)
                printf("Yes\n");
            else
                printf("No\n");
            continue;
        }

        if (n > m) {
            res = m + (n + 1 - m) / 2;
        } else if (n <= m) {
            res = m;
        }
        if (c < res) {
            printf("No\n");
        } else {
            printf("Yes\n");
        }
    }

    return 0;
}


#include <stdio.h>

int main()
{
    int N;
    long long v, c, n, m;
    long long res;
    scanf("%d", &N);
    while (N--) {
        scanf("%lld %lld %lld %lld", &v, &c, &n, &m);
        res = 0;
        if (v == 0 && c == 0) {
            printf("No\n");
            continue;
        }
        if (v > c) {
            res = v - c;
            v = c;
        } else if (c > v) {
            res = c - v;
            c = v;
        }

        if (n >= res) {
            n -= res;
        } else {
            if (m <= v)
                printf("Yes\n");
            else
                printf("No\n");
            continue;
        }

        if (n > m) {
            res = m + (n + 1 - m) / 2;
        } else if (n <= m) {
            res = m;
        }
        if (c < res) {
            printf("No\n");
        } else {
            printf("Yes\n");
        }
    }

    return 0;
}


#include <stdio.h>

int main()
{
    int N;
    long long v, c, n, m;
    long long res;
    scanf("%d", &N);
    while (N--) {
        scanf("%lld %lld %lld %lld", &v, &c, &n, &m);
        if (v > c) {
            res = v - c;
            v = c;
        } else if (c > v) {
            res = c - v;
            c = v;
        }

        if (n >= res) {
            n -= res;
        } else {
            if (m <= v)
                printf("yes\n");
            else
                printf("no\n");
            continue;
        }

        if (n > m) {
            res = m + (n + 1 - m) / 2;
        } else if (n <= m) {
            res = m;
        }
        if (c < res) {
            printf("no\n");
        } else {
            printf("yes\n");
        }
    }

    return 0;
}


#include<stdio.h>
int main ()
{
    int t;
    scanf("%d",&t);

    while(t > 0)
    {
        long long int a,b,c,n,m;
        int check = 0;
        scanf("%lld %lld %lld %lld",&a,&b,&n,&m);

        if( n + m > a + b)
        {
            printf("No\n");
            check = 1;

        }

        if (check == 0)
      {  if (a > b)
        {
             c = b;
        }
        else
        {
            c = a;
        }

        if(m > c)
        {
            printf("No\n");
            check = 1;

        }

        long long int d = a + b - m;

        if (check == 0)
       { if(d < n)
        {
            printf("No\n");
            check = 1;

        }
       }
      }
        if ( check == 0)
        {
            printf("Yes\n");
        }

        t--;
    }
    return 0;

}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v<=c)
	        {

	            if(v>c-n&&c-m-n>=0)
	            {
	                f=1;
	            }
	            else if(v>=m&&c>=n)
	            {
	                if(v>=m||c-n>=v)
	                    f=1;
	            }
	        }
	        else
	        {
	            if(v>=n&&c>=m)
	            {
	                if(c>=m||v-n>c)
	                    f=1;
	            }
	            else if(v-n<=c&&v-m-n>=0)
	            {
	                f=1;
	            }
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	            //printf("%lld\n",m);
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>
int check1(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>c-n&&c-m-n>=0)
	{
	       f=1;
	}
	else if(v>=m&&c>=n)
	{
	                //if(v>=m||c-n>=v)
	    f=1;
	}
	return f;
}
int check2(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=n&&c>=m)
	            {
	               // if(c>=m||v-n>c)
	                    f=1;
	            }
	            else if(v-n<=c&&v-m-n>=0)
	            {
	                f=1;
	            }
	return f;
}

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v==c)
	        {
	            if(check1(v-1,c,n,m-1)||check2(v,c-1,n-1,m))
	            {
	                f=1;
	            }
	        }
	        if(v<c)
	        {
	            f=check1(v,c,n,m);

	        }
	        else
	        {
	            f=check2(v,c,n,m);
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	            //printf("%lld\n",m);
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v<=c)
	        {

	            if(v>c-n&&c-m-n>=0)
	            {
	                f=1;
	            }
	            else if(v>=m&&c>=n)
	            {
	                f=1;
	            }
	        }
	        else
	        {
	            if(v>=n&&c>=m)
	            {
	                f=1;
	            }
	            else if(v-n<=c&&v-m-n>=0)
	            {
	                f=1;
	            }
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>
int check1(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=c-n)
	{
	       if(m<=v)
	            f=1;
	}
	else if(v>=m&&c>=n)
	{
	                //if(v>=m||c-n>=v)
	    f=1;
	}
	return f;
}
int check2(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=n&&c>=m)
	            {
	               // if(c>=m||v-n>c)
	                    f=1;
	            }
	            else if(v-n<=c)
	            {
	                if(m<=c)
	                    f=1;
	            }
	return f;
}

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v==c)
	        {
	            if(m<=v)
	                f=1;
	        }
	        if(v<c)
	        {
	            f=check1(v,c,n,m);

	        }
	        else
	        {
	            f=check2(v,c,n,m);
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	            //printf("%lld\n",m);
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>
int check1(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>c-n&&c-m-n>=0)
	{
	       f=1;
	}
	else if(v>=m&&c>=n)
	{
	                //if(v>=m||c-n>=v)
	    f=1;
	}
	return f;
}
int check2(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=n&&c>=m)
	            {
	               // if(c>=m||v-n>c)
	                    f=1;
	            }
	            else if(v-n<=c&&v-m-n>=0)
	            {
	                f=1;
	            }
	return f;
}

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v==c)
	        {
	            if(check1(v-1,c,n,m-1)&&check2(v,c-1,n-1,m))
	            {
	                f=1;
	            }
	        }
	        if(v<c)
	        {
	            f=check1(v,c,n,m);

	        }
	        else
	        {
	            f=check2(v,c,n,m);
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	            //printf("%lld\n",m);
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>
int check1(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=c-n)
	{
	       f=1;
	}
	else if(v>=m&&c>=n)
	{
	                //if(v>=m||c-n>=v)
	    f=1;
	}
	return f;
}
int check2(long long int v,long long int c,long long int n,long long int m)
{
    int f=0;
    if(v>=n&&c>=m)
	            {
	               // if(c>=m||v-n>c)
	                    f=1;
	            }
	            else if(v-n<=c)
	            {
	                f=1;
	            }
	return f;
}

int main() {
	//code
	int t;
	scanf("%d",&t);
	for(int i=0;i<t;i++)
	{
	    long long int v,c,n,m;
	    scanf("%lld %lld %lld %lld",&v,&c,&n,&m);
	    int f=0;
	    if(n+m>v+c)
	    {
	        printf("NO\n");
	    }
	    else
	    {
	        if(v==c)
	        {
	            f=1;
	        }
	        if(v<c)
	        {
	            f=check1(v,c,n,m);

	        }
	        else
	        {
	            f=check2(v,c,n,m);
	        }
	        if(f==1)
	        {
	            printf("YES\n");
	            //printf("%lld\n",m);
	        }
	        else
	        {
	            printf("NO\n");
	        }
	    }
	}
	return 0;
}


#include <stdio.h>
unsigned long long mN(unsigned long long a, unsigned long long b){if(a<b) return a; else return b;}
int main(){
    int t;
    scanf("%i",&t);
    while(t--){
        unsigned long long n,m,a,b;
        scanf("%llu%llu%llu%llu",&a,&b,&n,&m);
        if(n+m<=a+b){
            if(m>mN(a,b))
                printf("NO\n");
            else
                printf("YES\n");
        }
        else{
            printf("NO\n");
        }

    }
    return 0-0-0;
}


#include <stdio.h>
int main(){
    int t;
    scanf("%i",&t);
    while(t--){
        unsigned long long n,m,a,b;
        scanf("%llu%llu%llu%llu",&a,&b,&n,&m);
        if(n+m<=a+b){
              if(m>a)
                printf("NO\n");
            else
                printf("YES\n");

              //printf("-\n");
        }
        else{
            printf("NO\n");
        }

    }
    return 0-0-0;
}


#include <stdio.h>
int main() {
    long long int t, v, c, n, m;
    scanf("%lld", &t);
    while(t--) {
        scanf("%lld%lld%lld%lld", &v, &c, &n, &m);
        if((n + m) > (v + c))
            printf("No\n");
        else if(v < m || c < m)
            printf("No\n");
        else
            printf("Yes\n");
    }
    return 0;
}


#include<stdio.h>

int main(){
  long long t,a,b,n,m,k;
  scanf("%lld",&t);
  while(t>0){
    t--;
    scanf("%lld%lld%lld%lld",&a,&b,&n,&m);
    if(a>b){k=a;a=b;b=k;}
    if(a<m){printf("No\n");continue;}
    if(a+b<n+m){printf("No\n");continue;}
    printf("Yes\n");
  }
}


#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define buffer_size 64
#define min(x, y) ( (x < y) ? x : y)

void cpyline(char **);
void ctoi(char *ptr, int *nptr, int nums);
void merge_sort(int *arr, int len, int reverse);

int main(){
	char str[buffer_size];
    fgets(str, buffer_size, stdin);
    int tests = atoi(str);

	for(int i=0; i<tests; i++){
		char *line;
		cpyline(&line);

		long long nums = calloc(4, sizeof(long long));
		ctoll(line, nums, 4);

		long long vanilla = num[0];
		long long choco = num[1];
		long long g1 = num[2];
		long long g2 = num[3];
		free(nums);
		free(line);

		if(vanilla > choco && choco >= g2){
			printf("Yes\n")
		}
		else if(vanilla <= choco && vanilla >= g2){
			printf("Yes\n")
		}
		else{
			printf("No\n")
		}

	}

	return 0;

}

void cpyline(char **ptr){
    size_t max_length = 1024;
    size_t data_length = 0;
    char *cursor;

    *ptr = malloc(max_length);
    cursor = *ptr;
    do{
        char *check = fgets(cursor, max_length-data_length, stdin);
        if(!check) break;

        data_length += strlen(cursor);
        if(data_length<max_length-1 || (*ptr)[data_length-1] == '\n') break;
        max_length <<= 1;

        *ptr = realloc(*ptr, max_length);
        cursor = *ptr + data_length;
    }while(1);

}

void ctoi(char *ptr, int *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoi(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void ctoll(char *ptr, long long *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoll(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void merge_sort(int *arr, int len, int reverse) {
    int *a = arr;
    int *b = calloc(len, sizeof(int));
    int seg, start;
    if(reverse)
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] > a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }
    else
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] < a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }

    if (a != arr) {
        int i;
        for (i = 0; i < len; i++)
            b[i] = a[i];
        b = a;
    }
    free(b);
}


#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define buffer_size 64
#define min(x, y) ( (x < y) ? x : y)

void cpyline(char **);
void ctoi(char *ptr, int *nptr, int nums);
void merge_sort(int *arr, int len, int reverse);

int main(){
	char str[buffer_size];
    fgets(str, buffer_size, stdin);
    int tests = atoi(str);

	for(int i=0; i<tests; i++){
		char *line;
		cpyline(&line);

		long long num = calloc(4, sizeof(long long));
		ctoll(line, nums, 4);

		long long vanilla = num[0];
		long long choco = num[1];
		long long g1 = num[2];
		long long g2 = num[3];
		free(num);
		free(line);

		if(vanilla > choco && choco >= g2){
			printf("Yes\n")
		}
		else if(vanilla <= choco && vanilla >= g2){
			printf("Yes\n")
		}
		else{
			printf("No\n")
		}

	}

	return 0;

}

void cpyline(char **ptr){
    size_t max_length = 1024;
    size_t data_length = 0;
    char *cursor;

    *ptr = malloc(max_length);
    cursor = *ptr;
    do{
        char *check = fgets(cursor, max_length-data_length, stdin);
        if(!check) break;

        data_length += strlen(cursor);
        if(data_length<max_length-1 || (*ptr)[data_length-1] == '\n') break;
        max_length <<= 1;

        *ptr = realloc(*ptr, max_length);
        cursor = *ptr + data_length;
    }while(1);

}

void ctoi(char *ptr, int *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoi(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void ctoll(char *ptr, long long *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoll(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void merge_sort(int *arr, int len, int reverse) {
    int *a = arr;
    int *b = calloc(len, sizeof(int));
    int seg, start;
    if(reverse)
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] > a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }
    else
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] < a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }

    if (a != arr) {
        int i;
        for (i = 0; i < len; i++)
            b[i] = a[i];
        b = a;
    }
    free(b);
}


#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define buffer_size 64
#define min(x, y) ( (x < y) ? x : y)

void cpyline(char **);
void ctoi(char *ptr, int *nptr, int nums);
void merge_sort(int *arr, int len, int reverse);

int main(){
	char str[buffer_size];
    fgets(str, buffer_size, stdin);
    int tests = atoi(str);

	for(int i=0; i<tests; i++){
		char *line;
		cpyline(&line);

		long long num = calloc(4, sizeof(long long));
		ctoll(line, num, 4);

		long long vanilla = num[0];
		long long choco = num[1];
		long long g1 = num[2];
		long long g2 = num[3];
		free(num);
		free(line);

		if(vanilla > choco && choco >= g2){
			printf("Yes\n")
		}
		else if(vanilla <= choco && vanilla >= g2){
			printf("Yes\n")
		}
		else{
			printf("No\n")
		}

	}

	return 0;

}

void cpyline(char **ptr){
    size_t max_length = 1024;
    size_t data_length = 0;
    char *cursor;

    *ptr = malloc(max_length);
    cursor = *ptr;
    do{
        char *check = fgets(cursor, max_length-data_length, stdin);
        if(!check) break;

        data_length += strlen(cursor);
        if(data_length<max_length-1 || (*ptr)[data_length-1] == '\n') break;
        max_length <<= 1;

        *ptr = realloc(*ptr, max_length);
        cursor = *ptr + data_length;
    }while(1);

}

void ctoi(char *ptr, int *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoi(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void ctoll(char *ptr, long long *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoll(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void merge_sort(int *arr, int len, int reverse) {
    int *a = arr;
    int *b = calloc(len, sizeof(int));
    int seg, start;
    if(reverse)
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] > a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }
    else
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] < a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }

    if (a != arr) {
        int i;
        for (i = 0; i < len; i++)
            b[i] = a[i];
        b = a;
    }
    free(b);
}


#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define buffer_size 64
#define min(x, y) ( (x < y) ? x : y)

void cpyline(char **);
void ctoi(char *ptr, int *nptr, int nums);
void merge_sort(int *arr, int len, int reverse);

int main(){
	char str[buffer_size];
    fgets(str, buffer_size, stdin);
    int tests = atoi(str);

	for(int i=0; i<tests; i++){
		char *line;
		cpyline(&line);

		long long *num = calloc(4, sizeof(long long));
		ctoll(line, num, 4);

		long long vanilla = num[0];
		long long choco = num[1];
		long long g1 = num[2];
		long long g2 = num[3];
		free(num);
		free(line);

		if(vanilla + choco < g1+g2){
			printf("No\n");
		}
		else if(vanilla > choco && choco >= g2){
			printf("Yes\n");
		}
		else if(vanilla <= choco && vanilla >= g2){
			printf("Yes\n");
		}
		else{
			printf("No\n");
		}

	}

	return 0;

}

void cpyline(char **ptr){
    size_t max_length = 1024;
    size_t data_length = 0;
    char *cursor;

    *ptr = malloc(max_length);
    cursor = *ptr;
    do{
        char *check = fgets(cursor, max_length-data_length, stdin);
        if(!check) break;

        data_length += strlen(cursor);
        if(data_length<max_length-1 || (*ptr)[data_length-1] == '\n') break;
        max_length <<= 1;

        *ptr = realloc(*ptr, max_length);
        cursor = *ptr + data_length;
    }while(1);

}

void ctoi(char *ptr, int *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoi(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void ctoll(char *ptr, long long *nptr, int nums){
    char *token = strtok(ptr, " \n");
    int i=0;
    do{
        nptr[i] = atoll(token);
        token = strtok(NULL, " \n");
    }while(++i<nums);

}

void merge_sort(int *arr, int len, int reverse) {
    int *a = arr;
    int *b = calloc(len, sizeof(int));
    int seg, start;
    if(reverse)
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] > a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }
    else
    {
        for (seg = 1; seg < len; seg += seg) {
        for (start = 0; start < len; start += seg * 2) {
            int low = start, mid = min(start + seg, len), high = min(start + seg * 2, len);
            int k = low;
            int start1 = low, end1 = mid;
            int start2 = mid, end2 = high;
            while (start1 < end1 && start2 < end2)
                b[k++] = a[start1] < a[start2] ? a[start1++] : a[start2++];
            while (start1 < end1)
                b[k++] = a[start1++];
            while (start2 < end2)
                b[k++] = a[start2++];
        }
        int *temp = a;
        a = b;
        b = temp;
        }
    }

    if (a != arr) {
        int i;
        for (i = 0; i < len; i++)
            b[i] = a[i];
        b = a;
    }
    free(b);
}


#include<stdio.h>
int main()
{
    unsigned long long int t,a,b,n,m;
    scanf("%llu",&t);
    while(t--)
    {
        scanf("%llu%llu%llu%llu",&a,&b,&n,&m);
        if(a+b<n+m)
            printf("No\n");
        else if(a<=b)
        {
            if(a<m)
                printf("No\n");
            else
                printf("Yes\n");
        }
        else
        {
            if(b<m)
                printf("No\n");
            else
                printf("Yes\n");
        }
    }
    return 0;
}


    #include<stdio.h>

    int main(){
      long long t,a,b,n,m,k;
      scanf("%lld",&t);
      while(t>0){
        t--;
        scanf("%lld%lld%lld%lld",&a,&b,&n,&m);
        if(a>b){k=a;a=b;b=k;}
        if(a<m){printf("No\n");continue;}
        if(a+b<n+m){printf("No\n");continue;}
        printf("Yes\n");
      }
    }


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int solve(long long int A, long long int B, long long int N, long long int M)
{
	if(A+B < N+M)
	{
		return 0;
	}

	if(A > B)
	{
		if(B < M)
		{
			return 0;
		}

		return 1;
	}

	if(A < M)
	{
		return 0;
	}

	return 1;
}

int main()
{
	// variable in description
	int T;
	long long int A;
	long long int B;
	long long int N;
	long long int M;
	// variable to support
	int ans;
	// variable to judge
	int i;
	int j;
	int k;

	scanf("%d",&T);

	for(i=0;i<T;i++)
	{
		scanf("%lld %lld %lld %lld",&A,&B,&N,&M);

		ans = solve(A, B, N, M);

		if(ans)
		{
			printf("YES\n");
		}
		else
		{
			printf("NO\n");
		}
	}

	return 0;
}


import java.io.*;
import java.math.BigInteger;
import java.util.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {

        File file = new File("in.txt");
        File fileOut = new File("out.txt");
        InputStream inputStream = null;
        OutputStream outputStream = null;
        // try {inputStream= new FileInputStream(file);} catch (FileNotFoundException ex){return;};
//        try {outputStream= new FileOutputStream(fileOut);} catch (FileNotFoundException ex){return;};
        inputStream = System.in;
        outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        PrintWriter out = new PrintWriter(outputStream);
        TaskB solver = new TaskB();
        solver.solve(1, in, out);
        out.close();
    }

}

class TaskB {

    public void solve(int testNumber, InputReader in, PrintWriter out) {
        Integer problems = in.nextInt();
        Integer currentMax = in.nextInt();
        PriorityQueue<Integer> pq = new PriorityQueue<>();
        for(int i=0; i<problems; i++){
            pq.add(in.nextInt());
        }

        Integer count = 0;
        while(!pq.isEmpty()){
            Integer nextProb = pq.poll();
            while(2*currentMax<nextProb){
                currentMax*=2;
                count++;
            }
            currentMax = Math.max(currentMax, nextProb);
        }
        out.println(count);
    }

}

class InputReader {
    public BufferedReader reader;
    public StringTokenizer tokenizer;

    public InputReader(InputStream stream) {
        reader = new BufferedReader(new InputStreamReader(stream), 32768);
        tokenizer = null;
    }

    public String next() {
        while (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    }

    public String nextLine(){
        try {
            return reader.readLine();
        } catch (IOException e){
            throw new RuntimeException(e);
        }
    }

    public int nextInt() {
        return Integer.parseInt(next());
    }
    public long nextLong() { return Long.parseLong(next()); }

}

class Pair<F, S> {
    public final F first;
    public final S second;

    public Pair(F first, S second) {
        this.first = first;
        this.second = second;
    }

    @Override
    public boolean equals(Object o) {
        if (!(o instanceof Pair)) {
            return false;
        }
        Pair<?, ?> p = (Pair<?, ?>) o;
        return Objects.equals(p.first, first) && Objects.equals(p.second, second);
    }

    @Override
    public int hashCode() {
        return (first == null ? 0 : first.hashCode()) ^ (second == null ? 0 : second.hashCode());
    }

    @Override
    public String toString() {
        return "(" + first + ", " + second + ')';
    }
}


import java.io.*;
import java.math.BigInteger;
import java.util.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {

        File file = new File("in.txt");
        File fileOut = new File("out.txt");
        InputStream inputStream = null;
        OutputStream outputStream = null;
        // try {inputStream= new FileInputStream(file);} catch (FileNotFoundException ex){return;};
//        try {outputStream= new FileOutputStream(fileOut);} catch (FileNotFoundException ex){return;};
        inputStream = System.in;
        outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        PrintWriter out = new PrintWriter(outputStream);
        TaskB solver = new TaskB();
        solver.solve(1, in, out);
        out.close();
    }

}

class TaskB {

    public void solve(int testNumber, InputReader in, PrintWriter out) {
        Integer problems = in.nextInt();
        Integer currentMax = in.nextInt();
        PriorityQueue<Integer> pq = new PriorityQueue<>();
        for(int i=0; i<problems; i++){
            pq.add(in.nextInt());
        }

        Integer count = 0;
        while(!pq.isEmpty()){
            Integer nextProb = pq.poll();
            while(2*currentMax<nextProb){
                currentMax*=2;
                count++;
            }
        }
        out.println(count);
    }

}

class InputReader {
    public BufferedReader reader;
    public StringTokenizer tokenizer;

    public InputReader(InputStream stream) {
        reader = new BufferedReader(new InputStreamReader(stream), 32768);
        tokenizer = null;
    }

    public String next() {
        while (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    }

    public String nextLine(){
        try {
            return reader.readLine();
        } catch (IOException e){
            throw new RuntimeException(e);
        }
    }

    public int nextInt() {
        return Integer.parseInt(next());
    }
    public long nextLong() { return Long.parseLong(next()); }

}

class Pair<F, S> {
    public final F first;
    public final S second;

    public Pair(F first, S second) {
        this.first = first;
        this.second = second;
    }

    @Override
    public boolean equals(Object o) {
        if (!(o instanceof Pair)) {
            return false;
        }
        Pair<?, ?> p = (Pair<?, ?>) o;
        return Objects.equals(p.first, first) && Objects.equals(p.second, second);
    }

    @Override
    public int hashCode() {
        return (first == null ? 0 : first.hashCode()) ^ (second == null ? 0 : second.hashCode());
    }

    @Override
    public String toString() {
        return "(" + first + ", " + second + ')';
    }
}


import java.io.OutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.InputMismatchException;
import java.io.IOException;
import java.io.InputStream;

/**
 * Built using CHelper plug-in
 * Actual solution is at the top
 */
public class Main {
    public static void main(String[] args) {
        InputStream inputStream = System.in;
        OutputStream outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        PrintWriter out = new PrintWriter(outputStream);
        TaskC solver = new TaskC();
        solver.solve(1, in, out);
        out.close();
    }

    static class TaskC {
        public void solve(int testNumber, InputReader in, PrintWriter out) {
            int n = in.nextInt();
            int k = in.nextInt();
            int[] a = in.nextIntArray(n);
            Arrays.sort(a);
            int ans = 0;
            for (int i = 0; i < n; i++) {
                if (a[i] <= k << 1) {
                    k = Math.max(k, a[i]);
                    continue;
                }
                while (a[i] > k << 1) {
                    k <<= 1;
                    ans++;
                }
                k = Math.max(k, a[i]);
            }
            out.println(ans);
        }

    }

    static class InputReader {
        private InputStream stream;
        private byte[] buf = new byte[16384];
        private int curChar;
        private int numChars;

        public InputReader(InputStream stream) {
            this.stream = stream;
        }

        public int read() {
            if (numChars == -1)
                throw new InputMismatchException();
            if (curChar >= numChars) {
                curChar = 0;
                try {
                    numChars = stream.read(buf);
                } catch (IOException e) {
                    throw new InputMismatchException();
                }
                if (numChars <= 0)
                    return -1;
            }
            return buf[curChar++];
        }

        public int nextInt() {
            int c = read();
            while (isSpaceChar(c))
                c = read();
            int sgn = 1;
            if (c == '-') {
                sgn = -1;
                c = read();
            }
            int res = 0;
            do {
                if (c < '0' || c > '9')
                    throw new InputMismatchException();
                res *= 10;
                res += c - '0';
                c = read();
            } while (!isSpaceChar(c));
            return res * sgn;
        }

        public int[] nextIntArray(int n) {
            int[] arr = new int[n];
            for (int i = 0; i < n; i++)
                arr[i] = nextInt();
            return arr;
        }

        private boolean isSpaceChar(int c) {
            return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
        }

    }
}


import java.io.OutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.InputMismatchException;
import java.io.IOException;
import java.io.InputStream;

/**
 * Built using CHelper plug-in
 * Actual solution is at the top
 */
public class Main {
    public static void main(String[] args) {
        InputStream inputStream = System.in;
        OutputStream outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        PrintWriter out = new PrintWriter(outputStream);
        TaskC solver = new TaskC();
        solver.solve(1, in, out);
        out.close();
    }

    static class TaskC {
        public void solve(int testNumber, InputReader in, PrintWriter out) {
            int n = in.nextInt();
            int k = in.nextInt();
            int[] a = in.nextIntArray(n);
            Arrays.sort(a);
            int ans = 0;
            for (int i = 0; i < n; i++) {
                if (a[i] <= k << 1) {
                    k = Math.max(k, a[i]);
                    continue;
                }
                while (a[i] > k << 1) {
                    k <<= 1;
                    ans++;
                }
            }
            out.println(ans);
        }

    }

    static class InputReader {
        private InputStream stream;
        private byte[] buf = new byte[16384];
        private int curChar;
        private int numChars;

        public InputReader(InputStream stream) {
            this.stream = stream;
        }

        public int read() {
            if (numChars == -1)
                throw new InputMismatchException();
            if (curChar >= numChars) {
                curChar = 0;
                try {
                    numChars = stream.read(buf);
                } catch (IOException e) {
                    throw new InputMismatchException();
                }
                if (numChars <= 0)
                    return -1;
            }
            return buf[curChar++];
        }

        public int nextInt() {
            int c = read();
            while (isSpaceChar(c))
                c = read();
            int sgn = 1;
            if (c == '-') {
                sgn = -1;
                c = read();
            }
            int res = 0;
            do {
                if (c < '0' || c > '9')
                    throw new InputMismatchException();
                res *= 10;
                res += c - '0';
                c = read();
            } while (!isSpaceChar(c));
            return res * sgn;
        }

        public int[] nextIntArray(int n) {
            int[] arr = new int[n];
            for (int i = 0; i < n; i++)
                arr[i] = nextInt();
            return arr;
        }

        private boolean isSpaceChar(int c) {
            return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
        }

    }
}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.StringTokenizer;

public class C {

	public static void main(String[] args) {
		FastScanner scan = new FastScanner();
		PrintWriter out = new PrintWriter(System.out);
		int n = scan.nextInt(), k = scan.nextInt();
		int[] a = scan.nextIntArray(n);
		Arrays.sort(a);
		int res = 0;
		for(int i = 0; i < n; i++) {
			if(a[i] > k*2){
				while(a[i] > k*2){
					res++;
					k *= 2;
				}
			}
			k = Math.max(k, a[i]);
		}
		out.println(res);
		out.close();
	}

	static class FastScanner {
		BufferedReader br;
		StringTokenizer st;

		public FastScanner() {
			try	{
				br = new BufferedReader(new InputStreamReader(System.in));
				st = new StringTokenizer(br.readLine());
			} catch (Exception e){e.printStackTrace();}
		}

		public String next() {
			if (st.hasMoreTokens())	return st.nextToken();
			try {st = new StringTokenizer(br.readLine());}
			catch (Exception e) {e.printStackTrace();}
			return st.nextToken();
		}

		public int nextInt() {return Integer.parseInt(next());}

		public long nextLong() {return Long.parseLong(next());}

		public double nextDouble() {return Double.parseDouble(next());}

		public String nextLine() {
			String line = "";
			if(st.hasMoreTokens()) line = st.nextToken();
			else try {return br.readLine();}catch(IOException e){e.printStackTrace();}
			while(st.hasMoreTokens()) line += " "+st.nextToken();
			return line;
		}

		public int[] nextIntArray(int n) {
			int[] a = new int[n];
			for(int i = 0; i < n; i++) a[i] = nextInt();
			return a;
		}

		public long[] nextLongArray(int n){
			long[] a = new long[n];
			for(int i = 0; i < n; i++) a[i] = nextLong();
			return a;
		}

		public double[] nextDoubleArray(int n){
			double[] a = new double[n];
			for(int i = 0; i < n; i++) a[i] = nextDouble();
			return a;
		}

		public char[][] nextGrid(int n, int m){
			char[][] grid = new char[n][m];
			for(int i = 0; i < n; i++) grid[i] = next().toCharArray();
			return grid;
		}
	}

}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.StringTokenizer;

public class C {

	public static void main(String[] args) {
		FastScanner scan = new FastScanner();
		PrintWriter out = new PrintWriter(System.out);
		int n = scan.nextInt(), k = scan.nextInt();
		int[] a = scan.nextIntArray(n);
		Arrays.sort(a);
		int res = 0;
		for(int i = 0; i < n; i++) {
			if(a[i] > k*2){
				while(a[i] > k*2){
					res++;
					k *= 2;
				}
			}
		}
		out.println(res);
		out.close();
	}

	static class FastScanner {
		BufferedReader br;
		StringTokenizer st;

		public FastScanner() {
			try	{
				br = new BufferedReader(new InputStreamReader(System.in));
				st = new StringTokenizer(br.readLine());
			} catch (Exception e){e.printStackTrace();}
		}

		public String next() {
			if (st.hasMoreTokens())	return st.nextToken();
			try {st = new StringTokenizer(br.readLine());}
			catch (Exception e) {e.printStackTrace();}
			return st.nextToken();
		}

		public int nextInt() {return Integer.parseInt(next());}

		public long nextLong() {return Long.parseLong(next());}

		public double nextDouble() {return Double.parseDouble(next());}

		public String nextLine() {
			String line = "";
			if(st.hasMoreTokens()) line = st.nextToken();
			else try {return br.readLine();}catch(IOException e){e.printStackTrace();}
			while(st.hasMoreTokens()) line += " "+st.nextToken();
			return line;
		}

		public int[] nextIntArray(int n) {
			int[] a = new int[n];
			for(int i = 0; i < n; i++) a[i] = nextInt();
			return a;
		}

		public long[] nextLongArray(int n){
			long[] a = new long[n];
			for(int i = 0; i < n; i++) a[i] = nextLong();
			return a;
		}

		public double[] nextDoubleArray(int n){
			double[] a = new double[n];
			for(int i = 0; i < n; i++) a[i] = nextDouble();
			return a;
		}

		public char[][] nextGrid(int n, int m){
			char[][] grid = new char[n][m];
			for(int i = 0; i < n; i++) grid[i] = next().toCharArray();
			return grid;
		}
	}

}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int n = in.nextInt();
        int diff = in.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = in.nextInt();

        int maxdiff=diff;
        int count=0;
        Arrays.sort(arr);

        for(int i=0;i<n;i++)
        {
        	 while(true)
        	 {
        		 if(i==n)
        			 break;
        		 if(arr[i]>diff && arr[i]<=diff*2){
        			 diff = arr[i];
        			 break;
        		 }
        		 else if(arr[i]>diff*2){
        			 diff = 2*diff;
        			 count++;
        			 i--;
        			 break;
        		 }
        		 i++;
        	 }
        }

        System.out.println(count);

    }
}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int n = in.nextInt();
        int diff = in.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = in.nextInt();

        int maxdiff=diff;
        int count=0;
        for(int i=0;i<n;i++)
        {
        	if(arr[i]/2 > maxdiff )
        	{
        		count++;
        		maxdiff = arr[i];
        	}
        }

        System.out.println(count);

    }
}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) throws IOException {
    	Reader.init(System.in);
		int n=Reader.nextInt();
        int diff = Reader.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = Reader.nextInt();

        int maxdiff=diff;
        int count=0;
        Arrays.sort(arr);

        for(int i=0;i<n;i++)
        {
        	 while(true)
        	 {
        		 if(i==n)
        			 break;
        		 if(arr[i]>diff && arr[i]<=diff*2){
        			 diff = arr[i];
        			 break;
        		 }
        		 else if(arr[i]>diff*2){
        			 diff = 2*diff;
        			 count++;
        			 i--;
        			 break;
        		 }
        		 i++;
        	 }
        }

        System.out.println(count);

    }
}

class Reader {
    static BufferedReader reader;
    static StringTokenizer tokenizer;

    /** call this method to initialize reader for InputStream */
    static void init(InputStream input) {
        reader = new BufferedReader(
                new InputStreamReader(input) );
        tokenizer = new StringTokenizer("");
    }

    /** get next word */
    static String next() throws IOException {
        while ( ! tokenizer.hasMoreTokens() ) {
            //TODO add check for eof if necessary
            tokenizer = new StringTokenizer(
                    reader.readLine() );
        }
        return tokenizer.nextToken();
    }

    static int nextInt() throws IOException {
        return Integer.parseInt( next() );
    }

    static double nextDouble() throws IOException {
        return Double.parseDouble( next() );
    }
}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int n = in.nextInt();
        int diff = in.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = in.nextInt();

     Arrays.sort(arr);

        if(arr[n-1]<=2*diff)
        System.out.println(0);
        else
        	System.out.println(1);

    }
}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int n = in.nextInt();
        int diff = in.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = in.nextInt();

        int maxdiff=diff;
        int count=0;
        Arrays.sort(arr);

        for(int i=0;i<n;i++)
        {
        	 while(true)
        	 {
        		 if(i==n)
        			 break;
        		 if(arr[i]>diff && arr[i]<=diff*2){
        			 diff = arr[i];
        			 break;
        		 }
        		 else if(arr[i]>diff*2){
        			 diff = 2*diff;
        			 count++;
        			 break;
        		 }
        		 i++;
        	 }
        }

        System.out.println(count);

    }
}


import java.io.*;

import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.util.*;
public class Solution {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int n = in.nextInt();
        int diff = in.nextInt();
        int arr[] = new int[n];

        for(int i=0;i<n;i++)
        	arr[i] = in.nextInt();

        int maxdiff=diff;
        int count=0;
        for(int i=0;i<n;i++)
        {
        	if(arr[i]/2 >= maxdiff )
        	{
        		count++;
        		maxdiff = arr[i];
        	}
        }

        System.out.println(count);

    }
}


import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
import java.util.Scanner;

public class C {

  private static final String REGEX = " ";
  private static final Boolean DEBUG = false;
  private static final String FILE_NAME = "input.txt";

  public static void main(String[] args) throws IOException {
    if (DEBUG) {
      generate();
    }
    Solver solver = new Solver();
    solver.readData();
    solver.solveAndPrint();
  }

  private static void generate() throws IOException {
//    FileWriter writer = new FileWriter("input.txt");
//    writer.close();
  }

  private static class Solver {
    int n;
    long k;
    long[] a;

    void readData() throws IOException {
      InputStream in = DEBUG ? new FileInputStream(FILE_NAME) : System.in;
      Scanner scanner = new Scanner(in);
      n = scanner.nextInt();
      k = scanner.nextLong();
      scanner.nextLine();
      a = splitLong(scanner.nextLine(), n);
      scanner.close();
    }

    void solveAndPrint() {
      Arrays.sort(a);
      long max = k;
      int result = 0;
      for (int i = 0; i < n; i++) {
        long cur = a[i];
        if (max * 2 < cur) {
          while (max * 2 < cur){
            max = max * 2;
            result++;
          }
          max = cur;
        } else {
          max = max(max, cur);
        }
      }
      System.out.println(result);
    }

    @SuppressWarnings("SameParameterValue")
    int[] splitInteger(String string, int n) {
      final String[] split = string.split(REGEX, n);
      int[] result = new int[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Integer.parseInt(split[i]);
      }
      return result;
    }

    public int[] splitInteger(String string) {
      return splitInteger(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    long[] splitLong(String string, int n) {
      final String[] split = string.split(REGEX, n);
      long[] result = new long[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Long.parseLong(split[i]);
      }
      return result;
    }

    public long[] splitLong(String string) {
      return splitLong(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    double[] splitDouble(String string, int n) {
      final String[] split = string.split(REGEX, n);
      double[] result = new double[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Double.parseDouble(split[i]);
      }
      return result;
    }

    public double[] splitDouble(String string) {
      return splitDouble(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    String[] splitString(String string, int n) {
      return string.split(REGEX, n);
    }

    public String[] splitString(String string) {
      return splitString(string, 0);
    }

    public int max(int a, int b) {
      return Math.max(a, b);
    }

    public long max(long a, long b) {
      return Math.max(a, b);
    }

    public int min(int a, int b) {
      return Math.min(a, b);
    }

    public long min(long a, long b) {
      return Math.min(a, b);
    }

    public double max(double a, double b) {
      return Math.max(a, b);
    }

    public double min(double a, double b) {
      return Math.min(a, b);
    }

    private final static int MOD = 1000000009;

    int multMod(int a, int b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    int sumMod(int a, int b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }

    long multMod(long a, long b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    long sumMod(long a, long b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }
  }

}


import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
import java.util.Scanner;

public class C {

  private static final String REGEX = " ";
  private static final Boolean DEBUG = false;
  private static final String FILE_NAME = "input.txt";

  public static void main(String[] args) throws IOException {
    if (DEBUG) {
      generate();
    }
    Solver solver = new Solver();
    solver.readData();
    solver.solveAndPrint();
  }

  private static void generate() throws IOException {
//    FileWriter writer = new FileWriter("input.txt");
//    writer.close();
  }

  private static class Solver {
    int n;
    long k;
    long[] a;

    void readData() throws IOException {
      InputStream in = DEBUG ? new FileInputStream(FILE_NAME) : System.in;
      Scanner scanner = new Scanner(in);
      n = scanner.nextInt();
      k = scanner.nextLong();
      scanner.nextLine();
      a = splitLong(scanner.nextLine(), n);
      scanner.close();
    }

    void solveAndPrint() {
      Arrays.sort(a);
      long max = k;
      for (int i = 0; i < n; i++) {
        long cur = a[i];
        if (max * 2 < cur) {
          System.out.println(1);
          return;
        } else {
          max = max(max, cur);
        }
      }
      System.out.println(0);
    }

    @SuppressWarnings("SameParameterValue")
    int[] splitInteger(String string, int n) {
      final String[] split = string.split(REGEX, n);
      int[] result = new int[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Integer.parseInt(split[i]);
      }
      return result;
    }

    public int[] splitInteger(String string) {
      return splitInteger(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    long[] splitLong(String string, int n) {
      final String[] split = string.split(REGEX, n);
      long[] result = new long[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Long.parseLong(split[i]);
      }
      return result;
    }

    public long[] splitLong(String string) {
      return splitLong(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    double[] splitDouble(String string, int n) {
      final String[] split = string.split(REGEX, n);
      double[] result = new double[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Double.parseDouble(split[i]);
      }
      return result;
    }

    public double[] splitDouble(String string) {
      return splitDouble(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    String[] splitString(String string, int n) {
      return string.split(REGEX, n);
    }

    public String[] splitString(String string) {
      return splitString(string, 0);
    }

    public int max(int a, int b) {
      return Math.max(a, b);
    }

    public long max(long a, long b) {
      return Math.max(a, b);
    }

    public int min(int a, int b) {
      return Math.min(a, b);
    }

    public long min(long a, long b) {
      return Math.min(a, b);
    }

    public double max(double a, double b) {
      return Math.max(a, b);
    }

    public double min(double a, double b) {
      return Math.min(a, b);
    }

    private final static int MOD = 1000000009;

    int multMod(int a, int b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    int sumMod(int a, int b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }

    long multMod(long a, long b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    long sumMod(long a, long b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }
  }

}


import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
import java.util.Scanner;

public class C {

  private static final String REGEX = " ";
  private static final Boolean DEBUG = false;
  private static final String FILE_NAME = "input.txt";

  public static void main(String[] args) throws IOException {
    if (DEBUG) {
      generate();
    }
    Solver solver = new Solver();
    solver.readData();
    solver.solveAndPrint();
  }

  private static void generate() throws IOException {
//    FileWriter writer = new FileWriter("input.txt");
//    writer.close();
  }

  private static class Solver {
    int n;
    long k;
    long[] a;

    void readData() throws IOException {
      InputStream in = DEBUG ? new FileInputStream(FILE_NAME) : System.in;
      Scanner scanner = new Scanner(in);
      n = scanner.nextInt();
      k = scanner.nextLong();
      scanner.nextLine();
      a = splitLong(scanner.nextLine(), n);
      scanner.close();
    }

    void solveAndPrint() {
      Arrays.sort(a);
      long max = k;
      int result = 0;
      for (int i = 0; i < n; i++) {
        long cur = a[i];
        if (max * 2 < cur) {
          result++;
          max = cur;
        } else {
          max = max(max, cur);
        }
      }
      System.out.println(result);
    }

    @SuppressWarnings("SameParameterValue")
    int[] splitInteger(String string, int n) {
      final String[] split = string.split(REGEX, n);
      int[] result = new int[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Integer.parseInt(split[i]);
      }
      return result;
    }

    public int[] splitInteger(String string) {
      return splitInteger(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    long[] splitLong(String string, int n) {
      final String[] split = string.split(REGEX, n);
      long[] result = new long[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Long.parseLong(split[i]);
      }
      return result;
    }

    public long[] splitLong(String string) {
      return splitLong(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    double[] splitDouble(String string, int n) {
      final String[] split = string.split(REGEX, n);
      double[] result = new double[split.length];
      for (int i = 0; i < n; ++i) {
        result[i] = Double.parseDouble(split[i]);
      }
      return result;
    }

    public double[] splitDouble(String string) {
      return splitDouble(string, 0);
    }

    @SuppressWarnings("SameParameterValue")
    String[] splitString(String string, int n) {
      return string.split(REGEX, n);
    }

    public String[] splitString(String string) {
      return splitString(string, 0);
    }

    public int max(int a, int b) {
      return Math.max(a, b);
    }

    public long max(long a, long b) {
      return Math.max(a, b);
    }

    public int min(int a, int b) {
      return Math.min(a, b);
    }

    public long min(long a, long b) {
      return Math.min(a, b);
    }

    public double max(double a, double b) {
      return Math.max(a, b);
    }

    public double min(double a, double b) {
      return Math.min(a, b);
    }

    private final static int MOD = 1000000009;

    int multMod(int a, int b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    int sumMod(int a, int b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }

    long multMod(long a, long b) {
      return ((a % MOD) * (b % MOD)) % MOD;
    }

    long sumMod(long a, long b) {
      return ((a % MOD) + (b % MOD)) % MOD;
    }
  }

}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.TreeSet;

/**
 * Created by himanshubhardwaj on 06/11/18.
 * Link: https://codeforces.com/contest/825/problem/C
 * Algo:
 */
public class MultiJudgeSolving {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String str[] = br.readLine().split(" ");

        int n = Integer.parseInt(str[0]);
        int k = Integer.parseInt(str[1]);

        str = br.readLine().split(" ");

        TreeSet<Integer> tSet = new TreeSet<>();

        for (int i = 0; i < str.length; i++) {
            tSet.add(Integer.parseInt(str[i]));
        }

        int count = 0;

        while (!tSet.isEmpty()) {
            if (k >= (tSet.first() / 2)) {
                int first = tSet.first();
                tSet.remove(first);
                k = Math.max(k, first);
            } else {
                break;
            }
        }

        if (tSet.isEmpty()) {
            System.out.print(0);
        } else {
            System.out.print(1);
        }

    }
}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.TreeSet;

/**
 * Created by himanshubhardwaj on 06/11/18.
 * Link: https://codeforces.com/contest/825/problem/C
 * Algo:
 */
public class MultiJudgeSolving {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String str[] = br.readLine().split(" ");

        int n = Integer.parseInt(str[0]);
        int k = Integer.parseInt(str[1]);

        str = br.readLine().split(" ");

        TreeSet<Integer> tSet = new TreeSet<>();

        for (int i = 0; i < str.length; i++) {
            tSet.add(Integer.parseInt(str[i]));
        }

        int count = 0;

        while (!tSet.isEmpty()) {
            if ( (k*2) >= (tSet.first())) {
                int first = tSet.first();
                tSet.remove(first);
                k = Math.max(k, first);
            } else {
                break;
            }
        }

        if (tSet.isEmpty()) {
            System.out.print(0);
        } else {
            System.out.print(1);
        }

    }
}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.TreeSet;

/**
 * Created by himanshubhardwaj on 06/11/18.
 * Link: https://codeforces.com/contest/825/problem/C
 * Algo:
 */
public class MultiJudgeSolving {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String str[] = br.readLine().split(" ");

        int n = Integer.parseInt(str[0]);
        int k = Integer.parseInt(str[1]);

        str = br.readLine().split(" ");

        TreeSet<Integer> tSet = new TreeSet<>();

        for (int i = 0; i < str.length; i++) {
            tSet.add(Integer.parseInt(str[i]));
        }

        int count = 0;

        while (!tSet.isEmpty()) {
            if ((k * 2) >= (tSet.first())) {
                int first = tSet.first();
                tSet.remove(first);
                k = Math.max(k, first);
            } else {
                k = k * 2;
                count++;
            }
        }

        System.out.println(count);

    }
}