long long quick_pow(long long b,long long x) { long long del=b,add=1; while(x>1) { if(x%2) { add*=del; add%=P; x--; } del*=del; del%=P; x/=2; } return del*add%P; }