import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int K = scan.nextInt(); scan.close(); int min = K; int a = 0; int b = 0; for(int i = 1; i <= 110; i++) { for(int j = 1; j <= 110; j++) { int k = i * j; if(k > 10000) { break; }else { int t = K - k; if(t >= 0) { if(min > t) { min = t; a = i; b = j; } }else { break; } } } } int c = K - a * b; if(c == 0) { System.out.println(a + b); }else { System.out.println(a + b + c + 1); } if(c == 0) { for(int i = 0; i < a; i++) { System.out.print(3 + " "); } for(int i = 0; i < b; i++) { if(i == b -1) { System.out.println(4); }else { System.out.print(4 + " "); } } }else { for(int i = 0; i < a; i++) { System.out.print(3 + " "); } for(int i = 0; i < b; i++) { System.out.print(4 + " "); } for(int i = 0; i < c; i++) { System.out.print(5 + " "); } System.out.println(6); } // Arrays.fill(r, 0); // int []k = new int[120 * 120]; // Arrays.fill(k, 0); // int cnt = 0; // for(int i = 1; i <= 110; i++) { // for(int j = 1; j <= 110; j++) { // if(i * j > 10000) { // break; // }else { // k[cnt] = i * j; // cnt ++; // } // } // } // Arrays.sort(k); // int []l = new int[120 * 120 - 1]; // for(int i = 0; i < 120 * 120 - 1; i++) { // l[i] = k[i + 1] - k[i]; // } // Arrays.sort(l); // System.out.println(l[l.length - 1]); } }