#include <iostream>
#include <algorithm>
#include <vector>
#include <stack>
#include <queue>
#include <set>
#include <string>
#include <iomanip>
using namespace std;
long long mod=1e9+7;
long long c[8]={1,1,2,3,5,8,13,21};
int main(){
	int h,w,k;
	cin>>h>>w>>k;
	long long dp[101][8]={};
	dp[0][0]=1;
	for(int i=1;i<=h;i++){
		for(int j=0;j<w;j++){
			if(j==0){
				dp[i][0]+=dp[i-1][0]*c[w-1];
				if(w>=2){
					dp[i][0]+=dp[i-1][1]*c[w-2];
				}
			}else if(j==w-1){
				dp[i][w-1]+=dp[i-1][w-1]*c[w-1];
				if(w>=2){
					dp[i][w-1]+=dp[i-1][w-2]*c[w-2];
				}
			}else{
				dp[i][j]+=dp[i-1][j]*c[j]*c[w-j-1];
				dp[i][j]+=dp[i-1][j-1]*c[j-1]*c[w-j-1];
				dp[i][j]+=dp[i-1][j+1]*c[j]*c[w-j-2];
			}
			dp[i][j]%=mod;
		}
	}
	cout<<dp[h][k-1]<<endl;
	return 0;
}