#include <iostream>
#include<bits/stdc++.h>

using namespace std;
typedef long long int ll;


void seive(int r,vector<int> &spf) {
	
        vector<int> arr(r+1,1);
        spf.resize(r+1);
        for(int i=0;i<=r;i++){
        	spf[i]=i;
        }
       
        for(int i=2;i<=r;i++){
            if(arr[i]==1){
                ll j= (ll)i*(ll)i;
                
                while(j<=r){
                if(spf[j]==j){
                	spf[j]=i;
                }
                    arr[j]=0;
                    j=j+i;
                }
            }
        }
        
    }
  

    

int main() {
	int r;
	cin>>r;
	vector<int> spf;
	seive(r,spf);
	
	 for (int i = 2; i <= r; i++) {
        cout << "SPF[" << i << "] = " << spf[i] << '\n';
    }
	return 0;
}