#include <bits/stdc++.h>
using namespace std;
char A[200005], B[200005];
pair<int, int> m[200005];
int lenA, lenB;
int sum[26][200005];
int main() {
  int i, j;
  scanf("%s %s", &A, &B);
  lenA = strlen(A);
  lenB = strlen(B);
  j = 0;
  for (i = 0; i < lenB; i++) {
    while (j < lenA && B[i] != A[j]) j++;
    if (j == lenA) {
      puts("No");
      return 0;
    }
    m[i].first = j++;
  }
  j = lenA - 1;
  for (i = lenB - 1; i >= 0; i--) {
    while (j >= 0 && B[i] != A[j]) j--;
    if (j < 0) {
      puts("No");
      return 0;
    }
    m[i].second = j--;
  }
  for (i = 0; i < lenB; i++)
    sum[B[i] - 'a'][m[i].first]++, sum[B[i] - 'a'][m[i].second + 1]--;
  for (i = 0; i < 26; i++)
    for (j = 1; j < 200005; j++) sum[i][j] += sum[i][j - 1];
  for (i = 0; i < lenA; i++)
    if (!sum[A[i] - 'a'][i]) {
      puts("No");
      return 0;
    }
  puts("Yes");
  return 0;
}
