#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int x,y;
void extended_euclid(int a,int b)
{
if(b==0)
{
x=1;y=0;
}
else
{
extended_euclid(b,a%b);
int tem=x;
x=y;
y=x-a/b;
}
}
int main()
{
int a1,a2;
scanf("%d%d",&a1,&a2);
int flag=0;
if(a1<a2)
{
swap(a1,a2);
flag=1;
}
extended_euclid(a1,a2);
if(flag)
{
swap(x,y);
swap(a1,a2);
}
while(y>0)
{
x+=a2;
y-=a1;
}
while(y+a1<0)
{
x-=a2;
y+=a1;
}
printf("%d",x);
}
I2luY2x1ZGU8Y3N0ZGlvPgojaW5jbHVkZTxpb3N0cmVhbT4KI2luY2x1ZGU8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgeCx5Owp2b2lkIGV4dGVuZGVkX2V1Y2xpZChpbnQgYSxpbnQgYikKewogICAgaWYoYj09MCkKICAgIHsKICAgICAgICB4PTE7eT0wOwogICAgfQogICAgZWxzZQogICAgewogICAgICAgIGV4dGVuZGVkX2V1Y2xpZChiLGElYik7CiAgICAgICAgaW50IHRlbT14OwogICAgICAgIHg9eTsKICAgICAgICB5PXgtYS9iOwogICAgfQp9CmludCBtYWluKCkgICAgICAKewogICAgaW50IGExLGEyOwogICAgc2NhbmYoIiVkJWQiLCZhMSwmYTIpOwogICAgaW50IGZsYWc9MDsKICAgIGlmKGExPGEyKQogICAgewogICAgICAgIHN3YXAoYTEsYTIpOwogICAgICAgIGZsYWc9MTsKICAgIH0KICAgIGV4dGVuZGVkX2V1Y2xpZChhMSxhMik7CiAgICBpZihmbGFnKQogICAgewogICAgICAgIHN3YXAoeCx5KTsKICAgICAgICBzd2FwKGExLGEyKTsKICAgIH0KICAgIHdoaWxlKHk+MCkKICAgIHsKICAgICAgICB4Kz1hMjsKICAgICAgICB5LT1hMTsKICAgIH0KICAgIHdoaWxlKHkrYTE8MCkKICAgIHsKICAgICAgICB4LT1hMjsKICAgICAgICB5Kz1hMTsKICAgIH0KICAgIHByaW50ZigiJWQiLHgpOwp9