#!/usr/bin/env python3 from typing import * def solve(n: int, k: int, a: List[int]) -> bool: b = set(a) for a_i in reversed(a): for i in reversed(range(max(1, a_i - 100), a_i + 1)): if ((i + 1) in b and (i + 6) in b) or ((i + 2) in b and (i + 5) in b) or ((i + 3) in b and (i + 4) in b): b.add(i) if (i + 1) in b and (i + 6) in b and (i + 2) in b and (i + 5) in b and (i + 3) in b and (i + 4) in b: return False return 1 not in b YES = 'Yes' NO = 'No' # generated by online-judge-template-generator v4.7.1 (https://github.com/online-judge-tools/template-generator) def main(): import sys tokens = iter(sys.stdin.read().split()) N = int(next(tokens)) K = int(next(tokens)) A = [None for _ in range(K)] for i in range(K): A[i] = int(next(tokens)) assert next(tokens, None) is None a = solve(N, K, A) print(a and YES or NO) if __name__ == '__main__': main()