n,m = map(int, input().split()) import sys input = sys.stdin.readline mp = map(lambda x: int(x)-1, sys.stdin.read().split()) ab = list(zip(mp,mp)) graph = [[] for i in range(n)] for a,b in ab: graph[a].append(b) graph[b].append(a) visited = [-1 for i in range(n)] for i in range(n): if visited[i] != -1: continue visited[i] = 0 que = [i] while que: nq = [] while que: v = que.pop() for nv in graph[v]: if visited[nv] != -1: if visited[nv] == visited[v]: print("No") exit() else: continue visited[nv] = visited[v] ^ 1 nq.append(nv) que = nq # print(visited) print("Yes")