import sys

sys.setrecursionlimit(10 ** 6)
int1 = lambda x: int(x) - 1
p2D = lambda x: print(*x, sep="\n")
def II(): return int(sys.stdin.readline())
def MI(): return map(int, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def LLI(rows_number): return [LI() for _ in range(rows_number)]
def SI(): return sys.stdin.readline()[:-1]

def main():
    n,k=MI()
    print("YES" if (n+1)//2>=k else "NO")

main() import sys sys sys.setrecursionlimit(10 ** 6) sys.setrecursionlimit sys setrecursionlimit 10 ** 6 10 6 int1 = lambda x: int(x) - 1 int1 lambda x: int(x) - 1 int(x) - 1 int(x) int x 1 x p2D = lambda x: print(*x, sep="\n") p2D lambda x: print(*x, sep="\n") print(*x, sep="\n") print *x x sep="\n" sep "\n" x def II(): return int(sys.stdin.readline()) II def MI(): return map(int, sys.stdin.readline().split()) MI def LI(): return list(map(int, sys.stdin.readline().split())) LI LI() for _ in range(rows_number) for _ in range(rows_number) _ range(rows_number) range rows_number for _ in range(rows_number) LI() LI def LLI(rows_number): return [LI() for _ in range(rows_number)] LLI rows_number rows_number def SI(): return sys.stdin.readline()[:-1] SI def main():
    n,k=MI()
    print("YES" if (n+1)//2>=k else "NO") main n,k=MI() n MI() MI k print("YES" if (n+1)//2>=k else "NO") print "YES" if (n+1)//2>=k else "NO" (n+1)//2>=k (n+1)//2 n+1 n 1 2 k "YES" "NO" main() main p2D = lambda x: print(*x, sep="\n") lambda x: print(*x, sep="\n") p2D def II(): return int(sys.stdin.readline()) def II(): return int(sys.stdin.readline()) II int1 = lambda x: int(x) - 1 lambda x: int(x) - 1 int1 def LLI(rows_number): return [LI() for _ in range(rows_number)] def LLI(rows_number): return [LI() for _ in range(rows_number)] LLI def main():
    n,k=MI()
    print("YES" if (n+1)//2>=k else "NO") def main():
    n,k=MI()
    print("YES" if (n+1)//2>=k else "NO") main def LI(): return list(map(int, sys.stdin.readline().split())) def LI(): return list(map(int, sys.stdin.readline().split())) LI def MI(): return map(int, sys.stdin.readline().split()) def MI(): return map(int, sys.stdin.readline().split()) MI def SI(): return sys.stdin.readline()[:-1] def SI(): return sys.stdin.readline()[:-1] SI
import sys

sys.setrecursionlimit(10 ** 6)
int1 = lambda x: int(x) - 1
p2D = lambda x: print(*x, sep="\n")
def II(): return int(sys.stdin.readline())
def MI(): return map(int, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def LLI(rows_number): return [LI() for _ in range(rows_number)]
def SI(): return sys.stdin.readline()[:-1]

def main():
    n,k=MI()
    print("YES" if (n+1)//2>=k else "NO")

main()