import sys from collections import deque import bisect import copy import heapq import itertools import math input = sys.stdin.readline sys.setrecursionlimit(1000000) mod = 10 ** 9 + 7 def read_values(): return map(int, input().split()) def read_index(): return map(lambda x: int(x) - 1, input().split()) def read_list(): return list(read_values()) def read_lists(N): return [read_list() for n in range(N)] def main(): N, M = read_values() p = 0 t = 0 for _ in range(M): T, P = read_values() if (T - t) < abs(P - p): print("No") return p = P t = T print("Yes") if __name__ == "__main__": main()