#define ll long long
ll qpow(ll x,ll y,ll mod){
ll ans=1;
while(y){
if(1&y) //y为奇数
ans=(ans*x)%mod;
x=(x*x)%mod;
y>>=1; //y除2
}
return ans;
}
#define ll long long
ll qpow(ll x,ll y,ll mod){
ll ans=1;
while(y){
if(1&y) //y为奇数
ans=(ans*x)%mod;
x=(x*x)%mod;
y>>=1; //y除2
}
return ans;
}