code: def unwrap_synchro(fn):
      
      @functools.wraps(fn)
      def _unwrap_synchro(*args, **kwargs):
          def _unwrap_obj(obj):
              if isinstance(obj, Synchro):
                  return obj.delegate
              else:
                  return obj
  
          args = [_unwrap_obj(arg) for arg in args]
          kwargs = dict([
              (key, _unwrap_obj(value)) for key, value in kwargs.items()])
          return fn(*args, **kwargs)
      return _unwrap_synchro
docs: Unwrap Synchro objects passed to a method and pass Motor objects instead.