import sys def input(): return sys.stdin.readline().rstrip() """ Do not get stuck on a problem for more than 20 minutes Just check the editorial :) There should be something else to do insead """ memo = dict() sys.setrecursionlimit(10000000000) def possible(N,K): if (N,K) in memo: return memo[(N,K)] if N == 1 and K >= 0: res = True memo[(N,K)] = res return res if N <= 0: return False if K == 0: res = bool(N == 1) memo[(N,K)] = res return res #N > 0 K > 0 if N % 2 == 0: res = possible(N//2,K - 1) | possible(N - 3,K - 1) else: res = possible(N - 3,K - 1) memo[(N,K)] = res return res def slv(): n,k = map(int,input().split()) if possible(n,k): print("YES") else: print("NO") return def main(): t = 1 for i in range(t): slv() return if __name__ == "__main__": main()