package main
import (
"fmt"
)
func main() {
var n, m, k, p int
var mod int = 1e9 + 7
fmt.Scan(&n, &m, &k, &p)
dp := make([]int, n + 1)
dp[p] = 1
for i := 1; i < k + 1; i++ {
leftUp := dp[1]
for j := 1; j < n + 1; j++ {
temp := dp[j]
if j == 1 {
dp[j] = dp[j + 1] % mod
} else if j == n {
dp[j] = leftUp % mod
} else {
dp[j] = (dp[j + 1] + leftUp) % mod
}
leftUp = temp
}
}
fmt.Println(dp[m] % mod)
}