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.io.*;
import java.util.*;
import java.math.*;

public class Main {
    
    // WRITE CODE HERE
    static void solve() throws IOException{ 
        int n = inp.nextInt();
        if (n == 1) System.out.println("-1");
        else{
            System.out.println(n + " " + (n+1) + " " + (n*(n+1)) );
        }
    }
    
    static Scanner inp;
    static InputReader in;
    static PrintWriter out;
        
    public static void main(String[] args) throws IOException {
        inp = new Scanner( System.in );
        in = new InputReader( System.in );
	out = new PrintWriter( System.out );
	solve();
        out.close();
    }

    static class InputReader {
	BufferedReader br;

	public InputReader(InputStream stream) {
		br = new BufferedReader(new InputStreamReader(stream));
	}

	public int nextInt() throws IOException {
		int c = br.read();
		while (c <= 32) {
			c = br.read();
		}
		boolean negative = false;
		if (c == '-') {
			negative = true;
			c = br.read();
		}
		int x = 0;
		while (c > 32) {
			x = x * 10 + c - '0';
			c = br.read();
		}
		return negative ? -x : x;
	}

	public long nextLong() throws IOException {
		int c = br.read();
		while (c <= 32) {
			c = br.read();
		}
		boolean negative = false;
		if (c == '-') {
			negative = true;
			c = br.read();
		}
		long x = 0;
		while (c > 32) {
			x = x * 10 + c - '0';
			c = br.read();
		}
		return negative ? -x : x;
	}

	public String next() throws IOException {
		int c = br.read();
		while (c <= 32) {
			c = br.read();
		}
		StringBuilder sb = new StringBuilder();
		while (c > 32) {
			sb.append((char) c);
			c = br.read();
		}
		return sb.toString();
	}

	public double nextDouble() throws IOException {
		return Double.parseDouble(next());
        }
    }
    
}