#include <bits/stdc++.h>
using namespace std;
#define M0 3666666677ll
#define B0 131ll
typedef unsigned int ui;
typedef unsigned long long ul;
ifstream I("strmatch.in");
ofstream O("strmatch.out");
int main(){
string s, t;
I >> s >> t;
int m = s.length(), n = t.length();
ui h[1] = {}, x[1] = {}, p[1] = {1};
for (int i = 0; i < m; i++){
x[0] = (x[0] * B0 + s[i]) % M0;
h[0] = (h[0] * B0 + t[i]) % M0;
}
for (int k = 1; k < m; k++) p[0] = p[0] * B0 % M0;
int l = 0, a[1000];
for (int i = 0; i <= n-m; i++){
if (h[0] == x[0]){
bool g = 1;
for (int j = 0; j < m; j++){
if (t[i + j] != s[j]){
g = 0;
break;
}
}
if (g){
if (l < 1000) a[l] = i;
l++;
}
}
if (i < n-m) h[0] = ((h[0] + M0 - 1ll * p[0] * t[i] % M0) * B0 + t[i+m]) % M0;
}
O << l << '\n';
for (int i = 0; i < l && i < 1000; i++) O << a[i] << ' ';
}