#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
#define MaxL 2000000
int p[MaxL*2+2];
char t[MaxL];
int main()
{
ifstream in("strmatch.in");
ofstream out("strmatch.out");
int i, n, res, k=0, cnt=0, cnt2=0;
string s, t;
char ch;
in>>s;
cnt=s.size();
in>>t;
s=s+'*'+t;
for(i=1; i<s.size(); i++)
{
while(k!=0 && s[k]!=s[i])
{
k=p[k-1];
}
if(s[k]==s[i]){k++;}
p[i]=k;
if(p[i]==cnt)
{
cnt2++;
}
}
out<<cnt2<<'\n';
cnt2=0;
for(i=1; i<s.size(); i++)
{
if(p[i]==cnt)
{
cnt2++;
if(cnt2<=1000)
out<<i-2*cnt<<" ";
else break;
}
}
return 0;
}