Problem: Recently Petya walked in the forest and found a magic stick.

Since Petya really likes numbers, the first thing he learned was spells for changing numbers. So far, he knows only two spells that can be applied to a positive integer: 

  1. If the chosen number a is even, then the spell will turn it into 3a/2; 
  2. If the chosen number a is greater than one, then the spell will turn it into a-1. 



Note that if the number is even and greater than one, then Petya can choose which spell to apply.

Petya now has only one number x. He wants to know if his favorite number y can be obtained from x using the spells he knows. The spells can be used any number of times in any order. It is not required to use spells, Petya can leave x as it is.

Input

The first line contains single integer T (1 ≤ T ≤ 10^4) — the number of test cases. Each test case consists of two lines.

The first line of each test case contains two integers x and y (1 ≤ x, y ≤ 10^9) — the current number and the number that Petya wants to get.

Output

For the i-th test case print the answer on it — YES if Petya can get the number y from the number x using known spells, and NO otherwise.

You may print every letter in any case you want (so, for example, the strings yEs, yes, Yes and YES will all be recognized as positive answer).

Example

Input


7
2 3
1 1
3 6
6 8
1 2
4 1
31235 6578234


Output


YES
YES
NO
YES
NO
YES
YES

Solution (in JAVA):

Solution:
import java.util.*;
import java.io.*;


public class a {
    public static void main(String[] args) {
        InputStream inputStream = System.in;
        OutputStream outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        PrintWriter out = new PrintWriter(outputStream);
        Solver solver = new Solver();
        int  t = in.nextInt();
        // int t =1 ;
        solver.solve(t, in, out);
        out.close();
    }
 
    static class Solver {
        public void solve(int testNumber, InputReader sc, PrintWriter out) {
        while(testNumber-->0)
        {      
            int x = sc.nextInt();
            int y = sc.nextInt();
            if(x == y)
            {
                out.println("YES");
                continue;
            }
            if(x==1)
            {
                out.println("NO");
                continue;
            }

            if(x == 3 && y>x)
            {
                out.println("NO");
                continue;
            }
            if(x == 2 && y>3)
            {
                out.println("NO");
                continue;
            }

            out.println("YES");
        }       
    }

    private static int solve(String in){
        int ans = 0;
        int cnt = 0;
        int[] preSum = new int[in.length()];
        int[] postSum = new int[in.length()];
        for(int i=0;i<in.length();i++)
        {
            if(i==0)
                preSum[i]=in.charAt(i)=='('?1:-1;
            else
            {
                preSum[i] = preSum[i-1] + (in.charAt(i)=='('?1:-1);
            }       
        }
        // for(int x : preSum)
        // {
        //     System.out.print(x +" ");
        // }
        // System.out.println(" -> " + in );
        int postCnt = 0;
        int firstOpenInx = -1;
        for(int i = in.length()-1;i>=0;i--)
        {
            if(in.charAt(i) == '(')
                postCnt++;
            else 
                postCnt--;
            int preCnt = i>0?preSum[i-1]:0;
            if(postCnt+preCnt == 0)
            {
            System.out.println(i + " -> " + preCnt + " " + postCnt); 
                firstOpenInx = i;
            }
        }
        if(firstOpenInx == -1)
            return 0;
        for(int i=firstOpenInx;i<in.length();i++)
        {
            System.out.println(in + " " + i + " -> " + firstOpenInx);
            if(in.charAt(i) == ')')
                cnt--;
            else
                cnt++;
            if(cnt==0)
                ans++;
        }
        for(int i=0;i<firstOpenInx;i++)
        {
            System.out.println(in + " " + i + " -> " +  firstOpenInx);
            if(in.charAt(i) == ')')
                cnt--;
            else
                cnt++;
            if(cnt==0)
                ans++;
        }
        
        
        return ans++;

    }
    }
 
    static class InputReader {
        private InputStream stream;
        private byte[] buf = new byte[1024];
        private int curChar;
        private int numChars;
        private SpaceCharFilter filter;
        private BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 
        public InputReader(InputStream stream) {
            this.stream = stream;
        }
       
        private 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 String nextLine() {
            String str = "";
            try {
                str = br.readLine();
            }
            catch (IOException e) {
                e.printStackTrace();
            }
            return str;
        }
        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 long nextLong() {
            int c = read();
            while (isSpaceChar(c))
                c = read();
            int sgn = 1;
            if (c == '-') {
                sgn = -1;
                c = read();
            }
            long 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 double nextDouble() {
            int c = read();
            while (isSpaceChar(c))
                c = read();
            int sgn = 1;
            if (c == '-') {
                sgn = -1;
                c = read();
            }
            double res = 0;
            while (!isSpaceChar(c) && c != '.') {
                if (c == 'e' || c == 'E')
                    return res * Math.pow(10, nextInt());
                if (c < '0' || c > '9')
                    throw new InputMismatchException();
                res *= 10;
                res += c - '0';
                c = read();
            }
            if (c == '.') {
                c = read();
                double m = 1;
                while (!isSpaceChar(c)) {
                    if (c == 'e' || c == 'E')
                        return res * Math.pow(10, nextInt());
                    if (c < '0' || c > '9')
                        throw new InputMismatchException();
                    m /= 10;
                    res += (c - '0') * m;
                    c = read();
                }
            }
            return res * sgn;
        }
       
        public String readString() {
            int c = read();
            while (isSpaceChar(c))
                c = read();
            StringBuilder res = new StringBuilder();
            do {
                res.appendCodePoint(c);
                c = read();
            }
            while (!isSpaceChar(c));
           
            return res.toString();
        }
     
        public boolean isSpaceChar(int c) {
            if (filter != null)
                return filter.isSpaceChar(c);
            return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
        }
     
        public String next() {
            return readString();
        }
       
        public interface SpaceCharFilter {
            public boolean isSpaceChar(int ch);
        }
    }
}