3163{
3164 if (a>0)
3165 {
3166 if(b>0)
return pow(
static_cast<unsigned long int>(a),
static_cast<unsigned long int>(b),rnd_mode);
3167 else return pow(
static_cast<unsigned long int>(a),
mpreal(b),rnd_mode);
3168 }else{
3169 return pow(mpreal(a),static_cast<long int>(b),rnd_mode);
3170 }
3171}
const mpreal pow(const mpreal &a, const unsigned int b, mp_rnd_t rnd_mode=mpreal::get_default_rnd())