#include <iostream>
#include <cstring>
using namespace std;
string s,t;
int mark1=-1,mark2=-1;
char zhuan(char a)
{
return (a+('a'-'A'));
}
int main()
{
cin>>s>>t;
if (t[2]!='X'){
for (int i=0; i<s.size(); i++){
if (s[i]==zhuan(t[0]) && mark1==-1){
mark1=i;
}
if (s[i]==zhuan(t[2]) && mark1!=-1){
mark2=i;
}
}
if (mark1==-1 || mark2==-1){
cout<<"No";
return 0;
}
}
else {
for (int i=0; i<s.size(); i++){
if (s[i]==zhuan(t[0]) && mark1==-1){
mark1=i;
}
if (s[i]==zhuan(t[1]) && mark1!=-1){
mark2=i;
}
}
if (mark1==-1 || mark2==-1){
cout<<"No";
return 0;
}
cout<<"Yes";
return 0;
}
for (int i=mark1+1; i<=mark2-1; i++){
if (s[i]==zhuan(t[1])){
cout<<"Yes";
return 0;
}
}
cout<<"No";
return 0;
}