//
//
//
//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")
}
}