if fn is a Functor, return itself if is callable, we will wrap it as a PyFn otherwise, we will create a fn who return a deepcopy of the param NOTE: !!!!copy.deepcopy CANNOT be changed!!!
(fn)
source not stored for this graph (policy: none)
nothing calls this directly
no test coverage detected