             ;; if we have no serversocket and no open channels, it's
             ;; byebye time
             (empty? (.keys selector))
-            (do (debug "backend stopped")
-                nil)
+            nil
 
             ;; Zeroth, close the corresponding down/upstream for any up/downstream
             ;; on which we received eof while reading

  (let [existing (keys backends)
        wanted (map #(vector % listener) (keys (:backends config)))
        unwanted (set/difference (set existing) (set wanted))]
    (debug ["unwanted " unwanted])
    (run! #(async/put! % :quit) (map #(:chan (get backends %)) unwanted))
    (reduce (fn [m [n v]]
              (let [a (parse-address (:listen-address v))]

            [clojure.test :as test :refer [deftest testing is]]
            [clojure.java.io :as io]
            [clojure.set :as set]
            [taoensso.timbre :as log :refer [debug info]]
            [clojure.core.async :as async
             :refer [<! <!! go chan >! close! alts!]]))

