str = gets.split
H,W,K = str[0].to_i, str[1].to_i, str[2].to_i

n = []

n[0] = 1+0
n[1] = 1+0
n[2] = 1+1
n[3] = 1+2
n[4] = 1+3+1
n[5] = 1+4+3
n[6] = 1+5+6+1
n[7] = 1+6+10+4

a = Array.new(H+1).map{Array.new(W+1)}

a[0][1] = 1
for x in 2..W
  a[0][x] = 0
end

for x in 1..H
  for y in 1..W
    a[x][y] = a[x-1][y] * (n[y-1] * n[W-y])
  end
  for y in 2..W
    a[x][y-1] += a[x-1][y] * (n[y-2] * n[W-y])
  end
  for y in 1...W
    a[x][y+1] += a[x-1][y] * (n[y-1] * n[W-y-1])
  end
  for y in 1..W
    a[x][y] = a[x][y] % 1000000007
  end
end

puts(a[H][K])