         notify = "incorrect callback for the uplink"
         assert _.isFunction o = Marshal.serialize
         assert _.isFunction i = Marshal.deserialize
+        uploader = (socket, callback, ptr) -> ->
+            predicate = (ack, key) -> ack is ptr()
+            key = _.findKey socket.acks, predicate
+            assert key, "ack"; delete socket.acks[key]
+            logger.debug responded.cyan, name.bold
+            return callback.apply this, i(arguments)
         return (parameters..., callback=(->)) =>
             assert _.isFunction(callback), notify
             assert mangled = "#{@location()}/#{name}"
             assert binder = socket.binder, noBinder
             mangled += "/#{nsp}" if nsp = binder.nsp
             logger.debug uplinking.cyan, name.bold
-            socket.emit mangled, o(parameters)..., a = =>
-                key = _.findKey socket.acks, (x) -> x is a
-                assert key, "ack"; delete socket.acks[key]
-                logger.debug responded.cyan, name.bold
-                return callback.apply this, i(arguments)
+            ack = uploader socket, callback, -> ack
+            socket.emit mangled, o(parameters)..., ack

        assert _.isFunction i = Marshal.deserialize
        uplinking = "Uplink %s at #{@location}, nsp=%s"
        ack = "Ack an uplink %s at #{@location}, nsp=%s"
        _.forIn this, (value, reference, context) =>
            return unless reference of (@uplinks or {})
            assert mangled = "#{@location}/#{reference}"

            @socket.on mangled, (args..., callback) =>
                args.push c unless _.isFunction c = callback
                callback = null unless _.isFunction callback
                reply = responder @socket, mangled, callback
                console.log uplinking, reference, nsp
                return value i(args)..., reply

    # This is a complementary part of the bilateral implementation.
    # It is invoked to produce a server side agent that is aware of
