#include<bits/stdc++.h>
using namespace std;
string a,b;
int ans=1;
void dfs(int l1,int r1,int l2,int r2)
{
if(l1==r1)
{
return ;
}
int pos;
for(int i=l2;i<=r2;i++)
{
if(b[i]==a[l1+1])
{
pos=i;
}
}
if(pos==r2-1)
{
ans*=2;
dfs(l1+1,r1,l2,r2-1);
}
dfs(l1 + 1, l1 + pos - l2 + 1, l2, pos);
dfs(l1 + pos - l2 + 1 + 1, r1, pos + 1, r2 - 1);
}
int main()
{
cin>>a>>b;
int size=a.size();
dfs(0,size-1,0,size-1);
cout<<ans;
return 0;
}