#codefestivalqualBc. [code_festival_qualB_c]錬金術士

[code_festival_qualB_c]錬金術士

问题文

高桥君是一位炼金术的专业人士。

这个世界上的金属都被赋予了一个由 2N2N 个字符(其中 NN 是整数)组成的名字,而这些名字都由大写字母构成。

高桥君可以通过从已有的金属 S1,S2S1, S2 中取出各自的 NN 个字符,并将这些字符重新排列,以使它们与 S3S3 相同,从而进行合成新的金属 S3S3

给定三个金属的名字 S1,S2,S3S1, S2, S3,请判断是否可以从 S1,S2S1, S2 中合成出 S3S3


输入

输入通过标准输入给出,格式如下:

S1S1

S2S2

S3S3

  • 11 行给出用于合成的第一个金属的名字 S1S1
  • 22 行给出用于合成的第二个金属的名字 S2S2
  • 33 行给出要生成的金属的名字 S3S3
  • S1,S2,S3S1, S2, S3 仅由大写字母组成。
  • S1,S2,S3S1, S2, S3 的字符长度相等且为偶数。
  • 满足 2S11052 ≤ |S1| ≤ 10^5

输出

如果可以从 S1,S2S1, S2 合成出 S3S3,则输出YES;如果不能合成,则输出NO,并在末尾换行。


输入示例1

AABCCD
ABEDDA
EDDAAA

输出示例1

YES

可以从第一个金属中取出 AAD,从第二个金属中取出 AED,然后重新排列得到 EDDAAA


输入示例2

AAAAAB
CCCCCB
AAABCB

输出示例2

NO

由于至少需要从第一个金属中取出 44 个字符,所以无法合成。