human
Can you provide a Python program to print T answers — one per test case given the following:
Adilbek was assigned to a special project. For Adilbek it means that he has n days to run a special program and provide its results. But there is a problem: the program needs to run for d days to calculate the results.

Fortunately, Adilbek can optimize the program. If he spends x (x is a non-negative integer) days optimizing the program, he will make the program run in \left⌈ (d)/(x + 1) \right⌉ days (\left⌈ a \right⌉ is the ceiling function: \left⌈ 2.4 \right⌉ = 3, \left⌈ 2 \right⌉ = 2). The program cannot be run and optimized simultaneously, so the total number of days he will spend is equal to x + \left⌈ (d)/(x + 1) \right⌉.

Will Adilbek be able to provide the generated results in no more than n days?

Input

The first line contains a single integer T (1 ≤ T ≤ 50) — the number of test cases.

The next T lines contain test cases – one per line. Each line contains two integers n and d (1 ≤ n ≤ 10^9, 1 ≤ d ≤ 10^9) — the number of days before the deadline and the number of days the program runs.

Output

Print T answers — one per test case. For each test case print YES (case insensitive) if Adilbek can fit in n days or NO (case insensitive) otherwise.

Example

Input

3
1 1
4 5
5 11

Output

YES
YES
NO

Note

In the first test case, Adilbek decides not to optimize the program at all, since d ≤ n.

In the second test case, Adilbek can spend 1 day optimizing the program and it will run \left⌈ 5/2 \right⌉ = 3 days. In total, he will spend 4 days and will fit in the limit.

In the third test case, it's impossible to fit in the limit. For example, if Adilbek will optimize the program 2 days, it'll still work \left⌈ (11)/(2+1) \right⌉ = 4 days.
from
assistant
#Here is Python program to print T answers — one per test case.
collections import Counter
import math
class Solution(object):
        
    def solve(self,n,d):
        if n>=d:
            return "YES"

        root=int(math.sqrt(d))

        for t in range(root-3,root+4):
            if t<=0:
                continue
            if t>=n:
                break

            result= t + d//(t+1) + int( (d%(t+1)) >0 )
            
            #print t, result

            if result<=n:
                return "YES"
        return "NO"
                    
if __name__=="__main__":
    n= int(raw_input().strip())
    T=Solution()
    for i in range(0,n):
        n,d=map(int,raw_input().split(" "))
        T=Solution()
        print T.solve(n,d)