long long cxgcd(long long a,long long b,long long &x,long long &y){
if(b==0){
x=1;
y=0;
return a;
}
int r=cxgcd(b,a%b,x,y);
int t=x;
x=y;
y=t-(a/b)*y;
return r;
}
long long cxgcd(long long a,long long b,long long &x,long long &y){
if(b==0){
x=1;
y=0;
return a;
}
int r=cxgcd(b,a%b,x,y);
int t=x;
x=y;
y=t-(a/b)*y;
return r;
}