Vladik and Chloe decided to determine who of them is better at math. Vladik claimed that for any positive integer n he can represent fraction <image> as a sum of three distinct positive fractions in form <image>.

Help Vladik with that, i.e for a given n find three distinct positive integers x, y and z such that <image>. Because Chloe can't check Vladik's answer if the numbers are large, he asks you to print numbers not exceeding 109.

If there is no such answer, print -1.

Input

The single line contains single integer n (1 ≤ n ≤ 104).

Output

If the answer exists, print 3 distinct numbers x, y and z (1 ≤ x, y, z ≤ 109, x ≠ y, x ≠ z, y ≠ z). Otherwise print -1.

If there are multiple answers, print any of them.

Examples

Input

3


Output

2 7 42


Input

7


Output

7 8 56

import java.util.*;
import java.io.*;

public class MainApp
{
    public static void main(String[] args) throws IOException {
        FastScanner fs = new FastScanner();
        int n = fs.nextInt(); long chisl = 6, znam = n*3, cf = 3;
        long a, b, c;


        for (int i = 0; i < 5000; i++) {
            for (int j = 2; j < chisl-1; j++) {
                a = 1; b = chisl-a-j; c = chisl-a-b;
                if(a == b || a == c || b == c)
                    break;

                if(a != b && a != c && b != c && znam % a == 0 && znam % b == 0 && znam % c == 0)
                {
                    System.out.println(znam/a+" "+znam/b+" "+znam/c);
                    System.exit(0);
                }
            }
            cf++;
            chisl = 2*cf;
            znam = n*cf;
        }
        System.out.println(-1);
    }
}

class FastScanner
{
    private BufferedReader bf;
    private StringTokenizer st;

    public FastScanner()
    {
        bf = new BufferedReader(new InputStreamReader(System.in));
        st = null;
    }

    public String next()
    {
        while (st == null || !st.hasMoreTokens())
        {
            try
            {
                st = new StringTokenizer(bf.readLine());
            }
            catch (IOException e)
            {
                throw new RuntimeException(e);
            }
        }
        return st.nextToken();
    }

    public int nextInt()
    {
        return Integer.parseInt(this.next());
    }
    public long nextLong() { return Long.parseLong(this.next()); }
}
