#include<bits/stdc++.h>
using namespace std;

#define int long long
#define rep(i,n) for(int i=0;i<(n);i++)
#define repf(i,j,n) for(int i=(j);i<(n);i++)
#define repe(i,j,n) for(int i=(j);i<=(n);i++)

int fibary[20];
int dp[10][110];
int mod=1e9+7;

int fib(int a){
	if(a<=0)return 1;
	if (fibary[a]>0)return fibary[a];
	else return fibary[a]=fib(a-1)+fib(a-2);
}

signed main(){
	int h,w,k;cin>>h>>w>>k;	
	fill(fibary,fibary+10,-1);
	fibary[0]=1;fibary[1]=1;
	
	fill(dp[0],dp[10],0);
	dp[0][0]=1;
		
	rep(j,h+1)rep(i,w){
	(dp[i][j+1]+=dp[i][j]*fib(w-i-1)*fib(i))%=mod;
	if(i>0)(dp[i][j+1]+=dp[i-1][j]*fib(w-i-1)*fib(i-1))%=mod;
	if(i<w-1)(dp[i][j+1]+=dp[i+1][j]*fib(w-i-2)*fib(i))%=mod;
	}

	cout<<dp[k-1][h]<<endl;
//  	rep(i,h+1)rep(j,w)cout<<dp[j][i]<<" ";
}
