#include<iostream>
#include<cstring>
using namespace std;
int main() {
char sa[100], sb[100];
int a[26] = {0}, b[26] = {0};
int i = -1;
int _bool=0;
cin >> sa >> sb;
while(++i < strlen(sa)) {
a[sa[i] - 'A']++;
b[sb[i] - 'A']++;
}
i=-1;
while(++i<26){
if(a[0]==b[i]){
int *pa=a,*pb=b+i;
for(int j=0;j<26;j++){
if(*pa==*pb){
pa++;
pb++;
}else break;
if(pb==b+25){
pb=b;
}
if(pa==a+25){
_bool=1;
}
}
}
}
if(_bool==1)cout<<"YES"<<endl;
else cout<<"NO"<<endl;
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGNzdHJpbmc+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgljaGFyIHNhWzEwMF0sIHNiWzEwMF07CglpbnQgYVsyNl0gPSB7MH0sIGJbMjZdID0gezB9OwoJaW50IGkgPSAtMTsKCWludCBfYm9vbD0wOwoJY2luID4+IHNhID4+IHNiOwoJd2hpbGUoKytpIDwgc3RybGVuKHNhKSkgewoJCWFbc2FbaV0gLSAnQSddKys7CgkJYltzYltpXSAtICdBJ10rKzsKCX0KCWk9LTE7Cgl3aGlsZSgrK2k8MjYpewoJCWlmKGFbMF09PWJbaV0pewoJCQlpbnQgKnBhPWEsKnBiPWIraTsKCQkJZm9yKGludCBqPTA7ajwyNjtqKyspewoJCQkJaWYoKnBhPT0qcGIpewoJCQkJCXBhKys7CgkJCQkJcGIrKzsKCQkJCX1lbHNlIGJyZWFrOwoJCQkJaWYocGI9PWIrMjUpewoJCQkJCXBiPWI7CgkJCQl9CgkJCQlpZihwYT09YSsyNSl7CgkJCQkJX2Jvb2w9MTsKCQkJCX0KCQkJfQoJCX0KCX0KCWlmKF9ib29sPT0xKWNvdXQ8PCJZRVMiPDxlbmRsOwoJZWxzZSBjb3V0PDwiTk8iPDxlbmRsOwoJcmV0dXJuIDA7Cn0=