#include
#include
#include
#define maxn 1000010
using namespace std;
int dp[204][204];
//dp[i][j]代表s1 前i位 和s2前 j位 能否组成s前 i+j位
int main()
{
int t;
scanf("%d%*c",&t);
for(int cnt=1;cnt<=t;cnt++)
{
char s[409],s1[204],s2[204];
scanf("%s %s %s",s1+1,s2+1,s+1);
int len1,len2;
len1=strlen(s1+1);
len2=strlen(s2+1);
memset(dp,0,sizeof(dp));
dp[0][0]=1;
for(int i=0;i<=len1;i++)
for(int j=0;j<=len2;j++)
{
if(i+j==0)continue;
if(s1[i]==s[i+j]&&dp[i-1][j]==1)dp[i][j]=1;
if(s2[j]==s[i+j]&&dp[i][j-1]==1)dp[i][j]=1;
}
printf("Data set %d: ",cnt);
if(dp[len1][len2])printf("yes
");
else printf("no
");
}
return 0;
}