require 'pp'
# IS_DEBUG = true
IS_DEBUG = false
def dputs str
	if(IS_DEBUG)
		puts str
	end
end
def dpp str
	if(IS_DEBUG)
		pp str
	end
end

require 'pp'

H,W,K=gets.chomp.split(' ').map{|n| n.to_i}
DP = Array.new(H){Array.new(W){0}} # 0 indexed
FIB = Array.new(W) # FIB[i] : upto i ladders
if(W==1)
	puts 1
	exit(0)
end
# precomputation
FIB[0] = 1
FIB[1] = 2
for i in 2..(W-1)
	FIB[i] = FIB[i-1] + FIB[i-2]
end
if(H==1)
	if(K==1)
		puts FIB[[W-2,0].max]
	elsif(K==2)
		puts FIB[[W-3,0].max]
	end
	exit(0)
end
# DP
DP[0][0] = FIB[W-2]
DP[0][1] = FIB[W-3]
for i in 1..(H-1)
	for j in 0..(W-1)
		DP[i][j] += DP[i-1][j-1] * FIB[[j-2,0].max] * FIB[[W-1-j-1,0].max] if j > 0
		DP[i][j] += DP[i-1][j]   * FIB[[j-1,0].max] * FIB[[W-1-j-1,0].max]
		DP[i][j] += DP[i-1][j+1] * FIB[[j-1,0].max] * FIB[[W-1-j-2,0].max] if j < W-1
		DP[i][j] %= 1000000007
	end
end
puts DP[H-1][K-1]

# pp DP
