#include <bits/stdc++.h>
using namespace std;
int main() {
  long long t;
  cin >> t;
  while (t--) {
    long long n, i, j, k = 0;
    string s, t, p;
    cin >> s >> t >> p;
    vector<long long> a(26, 0);
    for (i = 0; i < t.size(); i++) {
      a[t[i] - 97]++;
    }
    for (i = 0; i < s.size() && k == 0; i++) {
      a[s[i] - 97]--;
      if (a[s[i] - 97] < 0) k++;
    }
    for (i = 0; i < p.size() && k == 0; i++) {
      a[p[i] - 97]--;
    }
    if (k == 0) {
      for (i = 0; i < 26; i++) {
        if (a[i] > 0) {
          k++;
        }
      }
    }
    if (k == 0) {
      j = 0;
      for (i = 0; i < t.size() && j < s.size(); i++) {
        if (t[i] == s[j]) j++;
      }
      if (j != s.size()) k = 1;
    }
    if (k == 0)
      cout << "YES\n";
    else
      cout << "NO\n";
  }
}
