import sys INF = float('inf') #10**20,2**63,float('inf') MOD = 10**9 + 7 MOD2 = 998244353 from collections import defaultdict def solve(): def II(): return int(sys.stdin.readline()) def LI(): return list(map(int, sys.stdin.readline().split())) def LC(): return list(input()) def IC(): return [int(c) for c in input()] def MI(): return map(int, sys.stdin.readline().split()) N,M = MI() Edge = defaultdict(lambda:0) Graph = [[] for _ in range(N+1)] for _ in range(M): A,B = MI() Graph[A].append(B) Graph[B].append(A) Edge[A] += 1 Edge[B] += 1 Flower = 0 for _ in range(N): Bef = Flower #print(Edge) for n in range(1,N+1): if(Edge[n] == 1): Edge[n] = 0 Flower += 1 for g in Graph[n]: Edge[g] -=1 if(Bef == Flower): break if Flower%2 == 1: print("Yes") else: print("No") return solve() #sys.setrecursionlimit(10 ** 6)#再帰関数ではコメントにしないこと!!