#include <bits/stdc++.h>
using namespace std;
int main() {
  string s, t;
  cin >> s >> t;
  long long int n = s.size(), m = t.size(), c;
  long long int a[m + 1], i, m1 = m;
  for (i = n - 1; i >= 0 && m1; i--) {
    if (s[i] == t[m1 - 1]) a[m1 - 1] = i, m1--;
  }
  c = a[0];
  a[m] = n;
  long long int j = 0;
  for (i = 0; i < n; i++) {
    if (s[i] == t[j]) {
      c = max(c, a[j + 1] - i - 1);
      j++;
    }
    if (j == m) break;
  }
  c = max(c, a[j] - i - 1);
  cout << c;
  return 0;
}
