#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char str1[1000001];
char str2[1000001];
int next[1000001];
void Next()
{
int i, j;
i =0 ;j = -1;
next[0] = -1;
while(str2[i]!='\0')
{
if(j==-1||str2[j]==str2[i])
{
i++;
j++;
if(str2[i]!=str2[j])
next[i] = j;
else
next[i] = next[j];
}
else
j = next[j];
}
}
int kmp()
{
int i, j, len1,len2;
i =0; j = 0;
Next();
len1 = strlen(str1);
len2 = strlen(str2);
while(i < len1&&j < len2)
{
if(j == -1 || str1[i] == str2[j])
{
i++;
j++;
}
else
j = next[j];
}
if(j >= len2)
return i - len2 + 1;
else
return -1;
}
int main()
{
int k;
while(~scanf("%s %s",str1,str2))
{
k = kmp();
if(k == -1)
printf("NO\n");
else
printf("YES\n");
}
return 0;
}