faster recursive powers