401012: GYM100314 F Inverse Addition

Memory Limit:128 MB Time Limit:3 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

E. Ringworldtime limit per test3 secondsmemory limit per test128 megabytesinputstandard inputoutputstandard output

The world is actually neither a disc or a sphere. It is a ring! There are m cities there, conveniently called 0, 1, 2, ..., m - 1 and arranged on the ring in the natural order: first 0, then 1, then 2, ..., then m - 1, and then again 0 (as the world is a ring, remember?). You are given a collection of contiguous ranges of cities. Each of them starts at some city x, and contains also cities x + 1, x + 2, ..., y - 1, y, for some city y. Note that the range can wrap around, for instance if m = 5, then [3, 4, 0] is a valid range, and so are [1], [2, 3, 4], or even [3, 4, 0, 1, 2]. Your task is to choose a single city inside each range so that no city is chosen twice for two different ranges.

Input

The input consists of several lines. The first line contains 1 ≤ T ≤ 20, the number of test cases.

Each test case consists of a number of lines. The first line contains two integers 1 ≤ m ≤ 109 and 1 ≤ n ≤ 105 denoting the number of cities and the number of requests, respectively. The next n lines define the ranges: the i-th row contains two integers 0 ≤ xi, yi < m describing the i-th range .

Output

For each test case, output one line containing YES if it is possible to assign a unique city to each request, and NO otherwise.

ExamplesInput
4
3 3
0 1
1 2
2 0
200000 3
100000 100000
100001 100001
100000 100001
6 6
0 1
1 2
2 3
3 4
4 5
5 0
6 6
0 0
1 2
2 3
4 4
4 5
5 0
Output
YES
NO
YES
NO

加入题单

算法标签: