#include<bits/stdc++.h>
using namespace std;
int i,j,h,k,p;
long long v[1001][1001],M=1000000007;
long long int sum;
double def;
int main(void)
{
	char s[1001],t[1001];
	cin>>s>>t;
	h=strlen(s);
	k=strlen(t);
	for(i=0;i<=h;i++) for(j=0;j<=h;j++) v[i][j]=0;
	for(i=0;i<h;i++) if(s[i]==t[0]) v[0][i]=1;
	for(p=0;p<k;p++){
		for(i=p;i<h;i++){
			if(s[i]==t[p]){
				for(j=i+1;j<h;j++){
					if(s[j]==t[p+1]){
						v[p+1][j]+=v[p][i];
						if(M<v[p+1][j]) v[p+1][j]%=M;
					}
				}
			}
		}
	}/*
	for(i=0;i<k;i++){
		for(j=0;j<h;j++) cout<<v[i][j]<<" ";
		cout<<endl;
	}*/
	sum=0;
	for(i=0;i<h;i++){
		sum+=v[k-1][i];
		if(M<sum) sum=sum%M;
	}
	cout<<sum<<endl;
}
