#include <bits/stdc++.h>
using namespace std;
bool gao(string str1, string str2) {
  if (str1 == str2) return true;
  if (str1.size() % 2 || str1.size() != str2.size() || str2.size() % 2)
    return false;
  string str11, str12, str21, str22;
  str11 = str1.substr(0, str1.size() / 2);
  str12 = str1.substr(str1.size() / 2, str1.size() / 2);
  str21 = str2.substr(0, str2.size() / 2);
  str22 = str2.substr(str2.size() / 2, str2.size() / 2);
  if (gao(str11, str22) && gao(str12, str21)) return true;
  if (gao(str11, str21) && gao(str12, str22)) return true;
  return false;
}
int main() {
  string str1, str2;
  cin >> str1;
  cin >> str2;
  if (gao(str1, str2))
    printf("YES\n");
  else
    printf("NO\n");
  return 0;
}
