         assert _.isFunction o = -> try _.head arguments
         assert _.isFunction i = -> try _.head arguments
         assert srv = try this.service.toString() or null
-        notConnected = "service #{srv} is not connected"
+        noConnection = "service #{srv} has lost connection"
         for provider in @providers then do (provider) =>
             message = "Provider %s at %s using nsp=%s"
             assert _.isString uloc = @location.underline

        p = "an exception happend at the server provider:"
        connected = c = "Established connection at %s".green
        disconnect = "lost socket connection at #{@location}"
        r = (e, s) => this.emit(e, s...); @broadcast(e, s...)
        breaker = try this.STOP_ROOT_PROPAGATION or undefined
        this.on "disconnect", -> @booted = no; @duplexed = no
        forward = (evt) => @socket.on evt, => r evt, arguments
        forward "disconnect" # lost socket connection to server
        forward "connect" # a successfull connection happended

        osc => @socket.emit "screening", _.pick(@, @snapshot), =>
            assert @consumeProviders; @consumeProviders @socket
            assert o = "Successfully bootloaded at %s".green
            @on "booted", -> @booted = 1; @initialized = 1
            @on "booted", -> @broadcast "attached", this
            @trampoline _.pick(@, @snapshot), (params) =>
                logger.info o, @location.underline.green
