#include<bits/stdc++.h>
using namespace std;
#define f(i,x,y) for(long long i = (x);i < (y);++i)
#define MOD 1000000007
int main()
{
int T;
cin >> T;
while(T--)
{
string txt,pat;
cin >> txt >> pat;
int n = txt.size(),m = pat.size();
int arr[m];
map<char,int> mp;
map<char,int> ::iterator it;
f(i,0,m)
{
mp[pat[i]] = i;
arr[i] = 0;
}
for(int i = (n-1);i > -1;i--)
{
char ch = txt[i];
if(mp.find(ch) != mp.end())
{
int j = mp[ch];
if(j == (m-1))
arr[j]++;
else if(j < (m-1))
arr[j] += arr[j+1];
else
{;}
}
}
//f(i,0,m)
//cout << arr[i] << "-";
cout <<arr[0] << endl;
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBmKGkseCx5KSBmb3IobG9uZyBsb25nIGkgPSAoeCk7aSA8ICh5KTsrK2kpCiNkZWZpbmUgTU9EIDEwMDAwMDAwMDcKCgppbnQgbWFpbigpCnsKICAgIGludCBUOwogICAgY2luID4+IFQ7CiAgICB3aGlsZShULS0pCiAgICB7CiAgICAgICAgc3RyaW5nIHR4dCxwYXQ7CiAgICAgICAgY2luID4+IHR4dCA+PiBwYXQ7CiAgICAgICAgaW50IG4gPSB0eHQuc2l6ZSgpLG0gPSBwYXQuc2l6ZSgpOwogICAgICAgIGludCBhcnJbbV07CiAgICAgICAgbWFwPGNoYXIsaW50PiBtcDsKICAgICAgICBtYXA8Y2hhcixpbnQ+IDo6aXRlcmF0b3IgaXQ7CiAgICAgICAgZihpLDAsbSkKICAgICAgICB7CiAgICAgICAgICAgIG1wW3BhdFtpXV0gPSBpOwogICAgICAgICAgICBhcnJbaV0gPSAwOwogICAgICAgIH0KCiAgICAgICAgZm9yKGludCBpID0gKG4tMSk7aSA+IC0xO2ktLSkKICAgICAgICB7CiAgICAgICAgICAgIGNoYXIgY2ggPSB0eHRbaV07CiAgICAgICAgICAgIGlmKG1wLmZpbmQoY2gpICE9IG1wLmVuZCgpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbnQgaiA9IG1wW2NoXTsKICAgICAgICAgICAgICAgIGlmKGogPT0gKG0tMSkpCiAgICAgICAgICAgICAgICAgICAgYXJyW2pdKys7CiAgICAgICAgICAgICAgICBlbHNlIGlmKGogPCAobS0xKSkKICAgICAgICAgICAgICAgICAgICBhcnJbal0gKz0gYXJyW2orMV07CiAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgezt9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgLy9mKGksMCxtKQogICAgICAgIC8vY291dCA8PCBhcnJbaV0gPDwgIi0iOwogICAgICAgIGNvdXQgPDxhcnJbMF0gPDwgZW5kbDsKICAgIH0KfQ==