fun main(arr:Array<String>) {
    val (n,m) = readLine()!!.split(" ").map { it.toLong() }.sorted()
    if(Math.abs(n-m) >= 2) {
        println(0)
        return
    }
    var ans = 1L
    val md = 1000000000 + 7
    for(i in (0 until n)) {
        ans *= (m-i)
        ans %= md
        ans *= (n-i)
        ans %= md
    }
    if(n == m) {
        ans *= 2
        ans %= md
    }
    println(ans)
}