power recursive version

check in