Problem: A line on the plane is described by an equation Ax + By + C = 0. You are to find any point on this line, whose coordinates are integer numbers from  - 5·1018 to 5·1018 inclusive, or to find out that such points do not exist.

Input

The first line contains three integers A, B and C ( - 2·109 ≤ A, B, C ≤ 2·109) — corresponding coefficients of the line equation. It is guaranteed that A2 + B2 > 0.

Output

If the required point exists, output its coordinates, otherwise output -1.

Examples

Input

2 5 3


Output

6 -3

Solution (in JAVA):

Solution:
import java.io.*;
import java.util.*;

public class Solution {
    BufferedReader in;
    StringTokenizer st;
    PrintWriter out;
    
    public Solution() throws Exception {
	in = new BufferedReader(new InputStreamReader(System.in));
	out = new PrintWriter(System.out);
    }

    public String next() throws Exception {
	if (st == null || !st.hasMoreTokens()) {
	    st = new StringTokenizer(in.readLine());
	}
	return st.nextToken();
    }

    public int nextInt() throws Exception {
	return Integer.parseInt(next());
    }

    public long nextLong() throws Exception {
	return Long.parseLong(next());

    }

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

    public static void main(String[] args) throws Exception {
	new Solution().run(args);
    }

    public long[] gcdex(long a, long b) {
	if (a == 0) {
	    return new long[]{b, 0, 1};
	}
	long[] d = gcdex(b % a, a);
	long x = d[2] - (b / a) * d[1];
	long y = d[1];
	d[1] = x;
	d[2] = y;
	return d;
    }
    
    public void run(String[] args) throws Exception {
	long a = nextLong();
	long b = nextLong();
	long c = nextLong();
	c = -c;
	long[] d = gcdex(a, b);
	if (c % d[0] != 0) {
	    out.println(-1);
	} else {
	    out.println((d[1] * c / d[0]) + " " + (d[2] * c / d[0]));
	}
	out.close();
    }
}