#include <iostream>
#include <string>
#include <cstring>
using namespace std;
//dfs没实现 需复习 没掌握
int dp[500][500];
int main()
{
int T;
cin>>T;
for(int o=1;o<=T;o++)
{
memset(dp,0,sizeof(dp));
string a,b,c;
cin>>a>>b>>c;
int i,j;
//dp[0][0]=1;//用不到
for(int i=0;i<a.size();i++)//抄博友
{
if(c[i]==a[i])
{
dp[i+1][0]=1;
}else
{
break;
}
}
for(int i=0;i<b.size();i++)//抄博友
{
if(c[i]==b[i])//抄博友
{
dp[0][i+1]=1;
}else
{
break;
}
}
for(int i=1;i<=a.size();i++)
{
for(int j=1;j<=b.size();j++)
{
if(c[i+j-1]==a[i-1])
{
dp[i][j]=max(dp[i][j],dp[i-1][j]);
}
if(c[i+j-1]==b[j-1])//抄博友
{
dp[i][j]=max(dp[i][j],dp[i][j-1]);
}
}
}
if(dp[a.size()][b.size()]==0)
{
cout<<"Data set "<<o<<": no"<<endl;
}else
{
cout<<"Data set "<<o<<": yes"<<endl;
}
}
return 0;
}