giving up on reference wrapper
Revert "giving up on reference wrapper"

This reverts commit fcac63f2302c8be6c2889b0390e4f7fcd83431d5.
Revert