add new code for pow()