#include <fstream>
#include <string.h>
using namespace std;
ifstream f("strmatch.in");
ofstream g("strmatch.out");
int n,m,i,k,pi[2000005],sol[2000005],nr,v[2000005];
char x[2000005],y[2000005];
int main()
{
f.getline(x+1,2000005);
f.getline(y+1,2000005);
x[0]=' ';
y[0]=' ';
n=strlen(x);
m=strlen(y);
k=0;
pi[1]=0;
for(i=2;i<n;i++)
{
while(k>0&&x[i]!=x[k+1])
k=pi[k];
if(x[k+1]==x[i]) k++;
pi[i]=k;
}
nr=0;
k=0;
for(i=1;i<m;i++)
{
while(k>0&&y[i]!=x[k+1])
k=pi[k];
if(y[i]==x[k+1])
k++;
sol[i]=k;
if(k==n-1)
{
nr++;
v[nr]=i-n+1;
}
}
g<<nr<<'\n';
for(i=1;i<=nr;i++)
g<<v[i]<<" ";
return 0;
}