Byteland has n cities and m roads connecting them. The roads are in poor shape, and because of a lack of funds they have not been repaired for a long time.
The residents are demanding that some of the roads be turned into brand-new expressways. The king agrees to build them, but under one condition: there has to be a construction plan in which every one of the n cities is served by an odd number of expressways. An expressway can only be built on top of a road that already exists.
Deciding which roads become expressways is the same as choosing a subset of the existing roads. For a given road network, decide whether a plan exists in which every city is incident to an odd number of the chosen roads.
The first line contains a single integer z (1≤z≤100), the number of test sets. The test sets follow.
The first line of a test set contains two integers n and m (1≤n≤100000, 1≤m≤200000), the number of cities and the number of roads. Each of the next m lines contains two integers x and y (1≤x,y≤n), meaning that cities x and y are joined by a road. The same pair of cities may be joined by more than one road, and a road may connect a city with itself.
The sum of n over all test sets does not exceed 1000000, and the sum of m does not exceed 2000000.
For each test set, print a single line.
Print YES if it is possible to choose a subset of the roads so that every city is incident to an odd number of the chosen roads, and print NO otherwise.