#include <bits/stdc++.h>
char line1[105];
char line2[105];
char line3[105];
int alpha[30];
int main() {
  while (gets(line1) != NULL) {
    memset(alpha, 0, sizeof(alpha));
    gets(line2);
    gets(line3);
    for (int i = 0; i < strlen(line1); i++) {
      alpha[line1[i] - 'A']++;
    }
    for (int i = 0; i < strlen(line2); i++) {
      alpha[line2[i] - 'A']++;
    }
    for (int i = 0; i < strlen(line3); i++) {
      alpha[line3[i] - 'A']--;
    }
    bool allZero = true;
    for (int i = 0; i < 26; i++) {
      if (alpha[i] != 0) {
        allZero = false;
        break;
      }
    }
    if (allZero) {
      printf("YES\n");
    } else {
      printf("NO\n");
    }
  }
}
