/*
TASK:balls
LANG:C++
*/

#include<iostream.h>
#include<string.h>
char balls[1050];
char bucks[1050];
int n;
int m;
int max=-32000;

void search(int pos,int cur,int br){
        if(cur==m || pos==n)return;
	search(pos+1,cur,br);
	for(int k=cur+1;k<m;k++)
		if(balls[pos]==bucks[k]){
			search(pos+1,k,br+1);
			if(br>max)max=br;
		}
}

int main(){
      cin>>balls;
      cin>>bucks;
      n=strlen(balls);
      m=strlen(bucks);
      for(int i=0;i<n;i++){
	search(i+1,-1,0);
	for(int j=0;j<m;j++)
		if(balls[i]==bucks[j])
			search(i+1,j,1);
      }

      cout<<max+1<<endl;
      return 0;
}