/* IMPORTANT: Multiple classes and nested static classes are supported */

/*
 * uncomment this if you want to read input.
//imports for BufferedReader*/
import java.io.*;
import java.io.InputStreamReader;
import java.util.Vector;



// Warning: Printing unwanted or ill-formatted data to output will cause the test cases to fail

   public class TestClassFinal { 
	   public static  Vector<Integer> fibo(int n)
	   {
		   Vector<Integer> f=new Vector<Integer>();
		 f.add(1); f.add(1);
		   for(int i=2;i<=n;i++)
		   {
			   int nb=f.get(i-1)+f.get(i-2);
			   f.add(nb);
			  
		   }
		   return f;
	   }
	   
	   public static void main(String args[] ) throws Exception {
 
    	BufferedReader sc = new BufferedReader(new InputStreamReader(System.in));
     
        int n;
        String Ch="";
      
        n=Integer.parseInt(sc.readLine());   
        Vector<Integer> f=fibo(n);
       
        for (int i=1;i<=n;i++)
        {
        	
        	if (f.contains(i))
        		Ch+="O";
        	else 
        		Ch+="o";
        }
        
      
  System.out.println(Ch);
        
sc.close();
    }
}
   