in libs/core/core.cpp [78:91]
int pow(int x, int y) { if (y < 0) return 0; int r = 1; while (y) { if (y & 1) r *= x; y >>= 1; x *= x; } return r; }