CF BUDDY
← Problems·

1491D · Zookeeper and The Infinite Zoo

1800 · bitmasks, constructive algorithms, dp

Problem: There is a new attraction in Singapore Zoo: The Infinite Zoo.

The Infinite Zoo can be represented by a graph with an infinite number of vertices labeled 1,2,3,1,2,3,\ldots. There is a directed edge from vertex uu to vertex u+vu+v if and only if u&v=vu\&v=v, where &\& denotes the bitwise AND operation. There are no other edges in the graph.

Zookeeper has qq queries. In the ii-th query she will ask you if she can travel from vertex uiu_i to vertex viv_i by going through directed edges.

Input Format: The first line contains an integer qq (1q1051 \leq q \leq 10^5) — the number of queries.

The ii-th of the next qq lines will contain two integers uiu_i, viv_i (1ui,vi<2301 \leq u_i, v_i < 2^{30}) — a query made by Zookeeper.

Output Format: For the ii-th of the qq queries, output "YES" in a single line if Zookeeper can travel from vertex uiu_i to vertex viv_i. Otherwise, output "NO".

You can print your answer in any case. For example, if the answer is "YES", then the output "Yes" or "yeS" will also be considered as correct answer.

Note: The subgraph on vertices 1,2,3,4,5,61,2,3,4,5,6 is shown below.

Sample Cases

Case 1

Input

5
1 4
3 6
1 6
6 2
5 5

Output

YES
YES
NO
NO
YES

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback