1 ll poww(ll a,ll b) 2 { 3 ll r=1,base=a; 4 while(b){ 5 if(b&1) r*=base; 6 base*=base; 7 b>>=1; 8 } 9 return r; 10 }
LL qmod(LL a, LL b) { if (b == 0) return 1; LL r = a % MOD; LL k = 1; while (b > 1){ if ((b & 1)!=0) k = (k * r) % MOD; r = (r * r) % MOD; b >>= 1; } return (r * k) % MOD; }