rt,玄学REQAQ
#include<bits/stdc++.h>
using namespace std;
const int mol=1e9+7;
string a,b;
int n,m,k,dp[1005][205][205];
int main(){
cin>>n>>m>>k;
cin>>a>>b;
dp[0][0][0]=1;
for(int i=1;i<=n;i++){
dp[i][0][0]=1;
for(int j=1;j<=min(i,m);j++){
for(int w=1;w<=min(j,k);w++){
if(a[i-1]==b[j-1]){
dp[i][j][w]=dp[i-1][j-1][w-1];
dp[i][j][w]%=mol;
if(a[i-2]==b[j-2]){
dp[i][j][w]+=dp[i-1][j-1][w]-dp[i-2][j-1][w];
dp[i][j][w]%=mol;
}
}
dp[i][j][w]+=dp[i-1][j][w];
dp[i][j][w]%=mol;
}
}
}
cout<<dp[n][m][k];
return 0;
}