#include<bits/stdc++.h>
using namespace std;
#define int long long
#define debug() puts("I WILL AK")
#define N 1000007
string a,b;
int n,m;
int nxt[N];
void init(){
int j=0;
for(int i=2;i<=m;++i){
while(j>0&&b[j]!=b[j+1]){
j=b[j];
}
if(b[i]==b[j+1]){
j++;
}
nxt[i]=j;
}
}
signed main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>a>>b;
n=a.size(),m=b.size();
a=" "+a,b=" "+b;
init();
int j=0;
for(int i=1;i<=n;++i){
while(j>0&&a[i]!=b[j+1]){
j=nxt[j];
}
if(a[i]==b[j+1]) j++;
if(j==m){
cout<<i-m+1<<'\n';
j=nxt[j];
}
}
for(int i=1;i<=m;++i){
cout<<nxt[i]<<' ';
}
return 0;
}