import heapq INF=10**9 def Dijkstra(graph, start): dist=[INF]*len(graph) queue=[(0, start)] dist[start]=0 while queue: path_len, v=heapq.heappop(queue) if path_len==dist[v]: for w in graph[v]: if dist[w[0]]>path_len+w[1]: heapq.heappush(queue, (path_len+w[1], w[0])) dist[w[0]]=path_len+w[1] return dist graph=[] n,k=map(int,input().split()) for i in range(n+1): graph.append([]) for i in range(1,n+1): if i+3<=n: graph[i].append((i+3,1)) if i*2<=n: graph[i].append((2*i,1)) dist=Dijkstra(graph,1) if dist[n]<=k: print('YES') else: print('NO')