//
//
//
//fun main(){
//    val nm = readLine()!!.split(' ').map{it.toInt()}
//    val bigList = readLine()!!.split(' ').map{it.toInt()}
//    val smallList = readLine()!!.split(' ').map{it.toInt()}
//    var boolean = true
//
//    for(j in 0..bigList.size-smallList.size + 1) {
//
//        for (i in 0..smallList.lastIndex) {
//            if (smallList[i] == bigList[i + j]) {
//                continue
//            } else {
//                boolean = false
//                break
//            }
//        }
//    }
//
//    if (boolean){
//        println("yes")
//    } else
//        println("no")
//}


fun main (){
    val nm = readLine()!!.split(' ').map { it.toInt() }
    val bigList = readLine()!!.split(' ').map { it.toInt() }
    val smallList = readLine()!!.split(' ').map { it.toInt() }

    var flag = false

    for(i in 0 until bigList.size - smallList.size + 1) {
        for (j in 0 until  smallList.size) {
            if (bigList[i + j] != smallList[j]) {
                break
            }
            if (j == smallList.size - 1) {
                flag = true
            }
        }

    }
    if (flag) {
        println("Yes")
    } else {
        println("No")
    }
}