/*
 * Description: Generate all subsets of a set in Java.
 * 
 * Author     : Adrian Statescu
 *
 * License    : MIT
 */

import java.util.Scanner;
import java.io.*;
 
public class Main {
 
	    public static int pow(int a, int b) {
 
	    	   int r = 1;
 
	    	   for(int i = 1; i <= b; ++i) {
 
                   r = r * a;
	    	   }
 
	    	   return r;
	    }
 
	    public static void generate_all_subsets(int n) {
 
               int total = pow(2, n);               
 
               for(int i = 1; i < total; ++i) {
 
               	   for(int j = 0; j < n; ++j ) {                       
 
                       if((i & (1<<j))!=0) System.out.printf("%d ", (j+1));      
 
               	   } 
               	   
               	   System.out.println(""); 
 
               }
                
        }
 
 
       public static void main(String[] args) {
 
                    Scanner scanner = new Scanner(System.in);
                    
                    int n = scanner.nextInt();
                    
                    scanner.close();
                     
                    generate_all_subsets( n );	                    
 
        
       }
}       