
class Stack<T> {
    val values = emptyList<T>().toMutableList()

    fun push(value: T) = values.add(value)

    fun pop() = values.removeAt(values.size - 1)

    override fun toString() = values.toString()
}
class Queue<T> {
    val values = emptyList<T>().toMutableList()

    fun enqueue(value: T) = values.add(value)

    fun dequeue() = values.removeAt(0)

    override fun toString() = values.toString()
}

fun <T> List<T>.get1Origin(index: Int) = this[index - 1]
fun <T> List<T>.subList1Origin(fromIndex: Int, toIndex: Int) = this.subList(fromIndex - 1, toIndex - 1)
fun <T> MutableList<T>.set1Origin(index: Int, element: T) = this.set(index - 1, element)
fun <T> MutableList<T>.removeAt1Origin(index: Int) = this.removeAt(index - 1)

fun String.splitToString() = this.split(" ")
fun String.splitToInt() = this.split(" ").map { it.toInt() }
fun String.splitToLong() = this.split(" ").map { it.toLong() }

fun main(args: Array<String>) {
    val (N, M) = readLine()!!.splitToInt()
    println(if (N == M) "Yes" else "No")
}