# Hcm(横線可能位置は1~H), 縦線W本, goal K
H, W, K = gets.split.map(&:to_i)

dp = Array.new(H + 1) { Array.new(W, 0) }
dp[0][0] = 1
0.upto(H-1) do |h|
  0.upto(W-1) do |w|
    0.upto(2 ** (W - 1) - 1) do |i|
      valid = true
      1.upto(W - 2) do |j|
        if i[j] == 1 && i[j-1] == 1
          valid = false
          break
        end
      end
      next unless valid

      dp[h+1][w-1] += dp[h][w] if w > 0 && i[w - 1] == 1
      dp[h+1][w] += dp[h][w] if i[w] != 1 && (w == 0 || i[w-1] != 1)
      dp[h+1][w+1] += dp[h][w] if w < W - 1 && i[w] == 1
      # p "#{h} #{w} #{('%07d' % i.to_s(2).to_i).reverse} #{dp}"
    end
  end
end

# p dp
puts dp[H][K - 1] % 1_000_000_007