#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
char s[101],t[101];
int ls,lt;
int extend[101],next[101];
void getnext()
{
int a=0;
next[0]=lt;
while(a<lt-1&&t[a]==t[a+1]) a++;
next[1]=a;
a=1;
for(int k=2;k<lt;k++)
{
int p=a+next[a]-1;
int l=next[k-a];//
if(k-1+l>=p)//
{
int j=(p-k+1)>0 ? p-k+1 : 0;//
while(k+j<lt&&t[k+j]==t[j]) j++;
next[k]=j;
a=k;
}
else next[k]=l;
}
}
void exkmp()
{
int a=0;
int minlen=ls<lt ? ls : lt;
while(a<minlen&&s[a]==t[a]) a++;
extend[0]=a;
a=0;
for(int k=1;k<ls;k++)
{
int p=a+extend[a]-1;
int l=next[k-a];//
if(k-1+l>=p)//
{
int j=(p-k+1)>0 ? p-k+1 : 0;
while(k+j<ls&&j<lt&&s[k+j]==t[j]) j++;
extend[k]=j;
a=k;
}
else extend[k]=l;
}
}
int main()
{
while(cin>>s>>t)
{
ls=strlen(s);
lt=strlen(t);
getnext();
exkmp();
int maxn=0,k=-1;
for(int i=0;i<ls;i++) printf("%d ",extend[i]);
}
}