fun main(args: Array<String>) {
    val (N, M) = readLine()!!.split(" ").map(String::toInt)
    val LR = Array(M) {
        readLine()!!.split(" ").map(String::toInt).let { Pair(it[0], it[1]) }
    }
    Math.max(LR.map { it.second }.min()!! - LR.map { it.first }.max()!! + 1, 0).let(::println)
}