using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); static int[][] NArr(long n) => Enumerable.Repeat(0, (int)n).Select(_ => NList).ToArray(); public static void Main() { Solve(); } static void Solve() { var q = NN; var ans = new bool[q]; for (var u = 0; u < q; ++u) { var s = ReadLine(); var t = ReadLine(); if (s.Length == 4) { var ns = s.ToCharArray(); (ns[0], ns[2]) = (ns[2], ns[0]); (ns[1], ns[3]) = (ns[3], ns[1]); var nst = string.Concat(ns); ans[u] = s == t || nst == t; continue; } var se = new List(); var so = new List(); var te = new List(); var to = new List(); for (var i = 0; i < s.Length; ++i) { if (i % 2 == 0) { se.Add(s[i]); te.Add(t[i]); } else { so.Add(s[i]); to.Add(t[i]); } } se.Sort(); so.Sort(); te.Sort(); to.Sort(); ans[u] = true; for (var i = 0; i < se.Count; ++i) if (se[i] != te[i]) ans[u] = false; for (var i = 0; i < so.Count; ++i) if (so[i] != to[i]) ans[u] = false; } WriteLine(string.Join("\n", ans.Select(f => f ? "Yes" : "No"))); } }