#include <iostream>
using namespace std;
int n, a[1000005];
void sangnt(){
for (int i = 2; i <= 9999; i++){
if (a[i]==0){
for (int j = i*i; j <= 100001; j+=i){
a[j] = 1;
}
}
}
}
int main(){
cin >> n;
sangnt();
if (n==1) cout << "1\n1";
else if (n==2) cout << "1\n1 1";
else{
cout << 2 << endl;
for (int i = 2; i <= n+1; i++){
if (!a[i]) cout << "1 ";
else cout << "2 ";
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBuLCBhWzEwMDAwMDVdOwoKdm9pZCBzYW5nbnQoKXsKCWZvciAoaW50IGkgPSAyOyBpIDw9IDk5OTk7IGkrKyl7CgkJaWYgKGFbaV09PTApewoJCQlmb3IgKGludCBqID0gaSppOyBqIDw9IDEwMDAwMTsgais9aSl7CgkJCQlhW2pdID0gMTsKCQkJfQoJCX0KCX0KfQoKaW50IG1haW4oKXsKCWNpbiA+PiBuOwoJc2FuZ250KCk7CglpZiAobj09MSkgY291dCA8PCAiMVxuMSI7CgllbHNlIGlmIChuPT0yKSBjb3V0IDw8ICIxXG4xIDEiOwoJZWxzZXsKCQljb3V0IDw8IDIgPDwgZW5kbDsKCQlmb3IgKGludCBpID0gMjsgaSA8PSBuKzE7IGkrKyl7CgkJCWlmICghYVtpXSkgY291dCA8PCAiMSAiOwoJCQllbHNlIGNvdXQgPDwgIjIgIjsKCQl9Cgl9CglyZXR1cm4gMDsKfQ==