#include <bits/stdc++.h>
#define LUNG 2*1000*1000+2
using namespace std;
//ifstream f("strmatch.in");
ofstream g("strmatch.out");
FILE *f=fopen("strmatch.in","r");
int pi[LUNG],ind[1024],k,n,m;
char a[LUNG],s[LUNG];
void citire()
{
char c;
while(fscanf(f,"%c",&c)&&c!='\n')
a[++n]=c;
while(fscanf(f,"%c",&c)&&c!='\n')
s[++m]=c;
}
void make_prefix()
{
int j=0;
pi[1]=0;
for(int i=2;i<=n;++i)
{
while(j&&a[j+1]!=a[i])
j=pi[j];
if(a[j+1]==a[i])
++j;
pi[i]=j;
}
}
void kmp()
{
int j=0;
for(int i=1;i<=m;++i)
{
while(j&&a[j+1]!=s[i])
j=pi[j];
if(a[j+1]==s[i])
++j;
if(j==n)
{
++k;
if(k<=1000)
ind[k]=i-n;
j=pi[j];
}
}
}
void afisare()
{
g<<k<<"\n";
for(int i=1;i<=k&&i<=1000;++i)
g<<ind[i]<<" ";
}
int main()
{
citire();
make_prefix();
kmp();
afisare();
return 0;
}