/*

        بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ
      لَا إِلَٰهَ إِلَّا ٱللَّٰهُ مُحَمَّدٌ رَسُولُ ٱللَّٰهِ

*/
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define sort(v) sort(v.begin(),v.end())
#define rev(v) reverse(v.begin(),v.end())
#define pb push_back

ll mod= 1000000007;

vector<ll>sv;
ll ar[1000000+9]= {0};
void seiv()
{
    ll n=1000000,i,j;
    ar[1]=1;
    for(i=4; i<=n; i+=2)ar[i]=1;
    for(i=3; i<=n; i+=2)
    {
        if(ar[i]==0)
        {
            for(j=i*i; j<=n; j+=i*2)ar[j]=1;
        }
    }
    for(i=2; i<=n; i++)
    {
        if(ar[i]==0)sv.pb(i);
    }
}



int main()
{
    // seiv();

    ll t;
    // cin>>t;
    // while(t--)
    {

        ll a,b,c=0,d=0,e=0,i,j=0,k=0,l=0;
cin>>a;
if(a%2)cout<<"Black";
else cout<<"White";
    }


    return 0;
}

#include<bits/stdc++.h>
using namespace std;
int n;
int f[100100],num[100100];
vector<int> qwq;
bool flag[100100]; 
void work1(){
	for(int i=2;i<=n;i++){
		if(flag[i]) continue;
		qwq.push_back(i);
		for(int j=i+i;j<=n;j+=i) flag[j]=1;
	}
}
void work(int x){
	for(int i=0;i<qwq.size();i++) {
		if(x%qwq[i]==0){
			num[x]=qwq[i];
			return;
		}
	}
}
int main(){
	cin>>n;
	work1();
	f[1]=1;
	for(int i=2;i<=n;i++) work(i); 
	printf("%d",f[1]);
	for(int i=2;i<=n;i++){
		f[i]=f[i/num[i]]+1;
		printf(" %d",f[i]);
	}
	return 0;
}