added pow method