pow and subtract*needs to be finished* added