PROGRAM EX2;
VAR A,B,RHS:INTEGER;VAR X,Y:INTEGER;
VAR EXISTENCE:BOOLEAN;
PROCEDURE EXT_EUCLIDEAN(M,N:INTEGER;VAR X,Y:INTEGER);
VAR R,Q:INTEGER;VAR C,D:INTEGER;
BEGIN
IF N=0 THEN BEGIN
EXISTENCE:=RHS MOD M=0;
X:=RHS DIV M;Y:=0;
EXIT();
END ELSE BEGIN
R:=M MOD N;Q:=M DIV N;EXT_EUCLIDEAN(N,R,X,Y);
END;
IF EXISTENCE=FALSE THEN EXIT();
C:=Y;D:=X-Q*Y;
X:=C;Y:=D;
END;
PROCEDURE SWAP(VAR C,D:INTEGER);
VAR INTERMED:INTEGER;
BEGIN
IF D>C THEN BEGIN
INTERMED:=C;C:=D;D:=INTERMED;
END;
END;
BEGIN
READLN(A,B,RHS);SWAP(A,B);
EXT_EUCLIDEAN(A,B,X,Y);
IF EXISTENCE=FALSE THEN WRITELN('NO SOLUTION') ELSE WRITELN(X,' ',Y);
READLN();
END.