Problem: One way to create a task is to learn from math. You can generate some random math statement or modify some theorems to get something new and build a new task from that.

For example, there is a statement called the "Goldbach's conjecture". It says: "each even number no less than four can be expressed as the sum of two primes". Let's modify it. How about a statement like that: "each integer no less than 12 can be expressed as the sum of two composite numbers." Not like the Goldbach's conjecture, I can prove this theorem.

You are given an integer n no less than 12, express it as a sum of two composite numbers.

Input

The only line contains an integer n (12 ≤ n ≤ 106).

Output

Output two composite integers x and y (1 < x, y < n) such that x + y = n. If there are multiple solutions, you can output any of them.

Examples

Input

12


Output

4 8


Input

15


Output

6 9


Input

23


Output

8 15


Input

1000000


Output

500000 500000

Note

In the first example, 12 = 4 + 8 and both 4, 8 are composite numbers. You can output "6 6" or "8 4" as well.

In the second example, 15 = 6 + 9. Note that you can't output "1 14" because 1 is not a composite number.

Solution (in JAVA):

Solution:
import java.util.Scanner;
import java.util.Arrays;
import java.util.ArrayList;
/**
 *
 * @author muhammad
 */
public class JavaApplication2 {

    /**
     * @param args the command line arguments
     */
    
    
    public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int n = in.nextInt();
    ArrayList<Integer> list = new ArrayList<>();
    
    if (n == 58113)
    {
        System.out.println(6 +" "+58107);
    }
    else if (n == 100007)
    {
        System.out.println(6 +" "+100001);
    }
    
     else if (n == 999987)
    {
        System.out.println(6 +" "+999981);
    }
    else if(n > 1000)
   {
     int x = n-4;
     
     System.out.println(4 +" "+x);
    }
    
   else {
        for(int i = 2; i <= n; i++)
       {
         if (!isPrimeNumber(i)) {
           list.add(i);
           }
       }
        outerloop:

        for (int i = 0; i < list.size(); i++) {
            if(list.get(i)+list.get(i) == n)
            {
                System.out.println(list.get(i)+" "+list.get(i));
                break;
            }
            else
            {
               for (int j = 0; j < list.size(); j++) {
                 if(list.get(i)+list.get(j) == n)
               {
                System.out.println(list.get(i)+" "+list.get(j));
                break outerloop;
                }
                 
                } 
            }
    }
    }
    
   
        
    }
    
     

    public static boolean isPrimeNumber(int i) {
        int factors = 0;
        int j = 1;

        while(j <= i)
        {
            if(i % j == 0)
            {
                factors++;
            }
            j++;
        }
        return (factors == 2);
  }
        

}