密码加密是当今最重要的问题之一,而你只信任你自己发明的加密算法,并且你刚刚完成了一个新的加密算法。
给定一个仅由小写英文字母组成的密码,你的算法通过以下三个步骤(按给定顺序)对该密码进行加密:
- 交换给定密码中的两个不同字符(此步骤可以执行零次或多次)。
- 在第一步输出的开头添加零个或多个小写英文字母。
- 在第二步输出的末尾添加零个或多个小写英文字母。
加密后的密码即为第三步的输出。
你刚刚完成了上述算法的实现,并将其应用于许多密码。现在,为了确保你的实现没有错误,你决定编写另一个程序来验证加密算法的输出。给定加密后的密码和原始密码,你的任务是检查加密后的密码是否可能是对原始密码应用该算法后的结果。
输入格式
你的程序将在一个或多个测试用例上进行测试。输入的第一行是一个整数 $T$,表示测试用例的数量($1 \le T \le 100$)。接下来是各个测试用例,每个测试用例占两行。每个测试用例的第一行包含加密后的密码。每个测试用例的第二行包含原始密码。加密后的密码和原始密码的长度均至少为 1 且至多为 100,000 个小写英文字母(从 'a' 到 'z'),且原始密码的长度小于或等于加密后密码的长度。
输出格式
对于每个测试用例,如果对原始密码应用该算法可以生成加密后的密码,则在一行中输出单词 “YES”(不含引号),否则输出 “NO”(不含引号)。
样例
样例输入 1
3 abcdef ecd cde ecd abcdef fcd
样例输出 1
YES YES NO