#include <iostream>
#include <set>
#include <map>
#include <cstring>
using namespace std;
set<char> st1,st2;
map<char,int> mp1,mp2;
int main()
{
char str1[22],str2[22];
while(scanf("%s%s",str1,str2)!=EOF)
{
mp1.clear();mp2.clear();
st1.clear();st2.clear();
int len1=strlen(str1);
int len2=strlen(str2);
if(len1!=len2||str1[0]!=str2[0]||str1[len1-1]!=str2[len2-1])
{
printf("No\n");
continue;
}
if(strcmp(str1,str2)==0)
{
printf("Equal\n");
continue;
}
for(int i=1;i<len1-1;i++)
{
st1.insert(str1[i]);
mp1[str1[i]]++;
}
for(int i=1;i<len2-1;i++)
{
st2.insert(str2[i]);
mp2[str2[i]]++;
}
int fg=1;
for(auto i=st2.begin();i!=st2.end();i++)
{
if(st1.find(*i)==st1.end()||mp1[*i]!=mp2[*i])
{
fg=0;
break;
}
}
if(fg) printf("Yes\n");
else printf("No\n");
}
}