code: def outer_proxy(outer=lambda x: x, args=None, kwds=None):
      """wrap a function around another function: convert y = f(x) to y' = c(f(x))
  
      This is a useful function for nesting one constraint in another constraint.
      A constraints function takes an iterable x as input, returning a modified x.
  
      This function applies the "outer" coupler pattern. However, it does not preserve
      decorated function signature -- it passes args and kwds to the outer function
      instead of the decorated function.
      """
      if args is None:
          args = ()
      if kwds is None:
          kwds = {}
  
      def dec(f):
          def func(x, *argz, **kwdz):
              return outer(f(x, *args, **kwds), *argz, **kwdz)
  
          return func
  
      return dec
  
file_path: mystic/mystic/coupler.py
label_desc: Use image node_id 4 for calling a global function with example usage: outer_proxy(outer, args, kwds) and returns: dec, func, outer