#include<iostream>
#include<cstdio>
#include<string.h>
#include<cstring>
#include<string>
#include<stack>
#include<set>
#include<algorithm>
#include<cmath>
#include<vector>
#include<map>
#define LOCAL
#define ll long long
#define lll unsigned long long
#define MAX 1000009
#define eps 1e-8
#define INF 0xfffffff
#define mod 1000000007
using namespace std;
/*
题意:
想法:扩展GCD模板
*/
int gcd(int a,int b)
{
return a%b==0?b:gcd(b,a%b);
}
int extgcd(int a,int b,int& x,int& y)
{
if(b==0)
{
x= 1,y = 0;
return a;
}
int d = extgcd(b,a%b,x,y);
int t = x;
x = y;
y = t - a/b*y;
return d;//返回最大公约数
}
int main()
{
/*#ifdef LOCAL
freopen("date.in","r",stdin);
//freopen("date.out","w",stdout);
#endif // LOCAL*/
int a,b;
int x,y;
while(~scanf("%d%d",&a,&b))
{
int ans = extgcd(a,b,x,y);
if(1%ans)
puts("sorry");
else
{
while(x<0)//必须满足x>0
{
x+=b;
y-=a;
}
cout<<x<<" "<<y<<endl;
}
}
return 0;
}
#include<cstdio>
#include<string.h>
#include<cstring>
#include<string>
#include<stack>
#include<set>
#include<algorithm>
#include<cmath>
#include<vector>
#include<map>
#define LOCAL
#define ll long long
#define lll unsigned long long
#define MAX 1000009
#define eps 1e-8
#define INF 0xfffffff
#define mod 1000000007
using namespace std;
/*
题意:
想法:扩展GCD模板
*/
int gcd(int a,int b)
{
return a%b==0?b:gcd(b,a%b);
}
int extgcd(int a,int b,int& x,int& y)
{
if(b==0)
{
x= 1,y = 0;
return a;
}
int d = extgcd(b,a%b,x,y);
int t = x;
x = y;
y = t - a/b*y;
return d;//返回最大公约数
}
int main()
{
/*#ifdef LOCAL
freopen("date.in","r",stdin);
//freopen("date.out","w",stdout);
#endif // LOCAL*/
int a,b;
int x,y;
while(~scanf("%d%d",&a,&b))
{
int ans = extgcd(a,b,x,y);
if(1%ans)
puts("sorry");
else
{
while(x<0)//必须满足x>0
{
x+=b;
y-=a;
}
cout<<x<<" "<<y<<endl;
}
}
return 0;
}