sec stacks currptr currptr currptr call fact( currptr currptr currptr currptr currptr currptr call fact( call fact( call fact( currptr currptr return currptr currptr currptr currptr return return currptr return figure implementing recursion with stack values indicate the address of the program instruction to return to after completing the current function call on each recursive function call to fact (from section )both the return address and the current value of must be saved each return from fact pops the top activation record off the stack consider what happens when we call fact with the value we use to indicate the address of the program instruction where the call to fact is made thusthe stack must first store the address band the value is passed to fact nexta recursive call to fact is madethis time with value we will name the program address from which the call is made the address along with the current value for (which is )is saved on the stack function fact is invoked with input parameter in similar manneranother recursive call is made with input parameter requiring that the address from which the call is made (say and the current value for (which is are stored on the stack final recursive call with input parame