This reverts commit dcbfeb9892, reversing changes made to 055487c5bb. Reverts adding a pointer stealing to the recursive_wrapper.
dcbfeb9892
055487c5bb