 
 (defn await-promise
   "Read the reply received from the server, waiting for timeout ms if the message hasn't yet been received. Returns :timeout if a timeout occurs."
-    ([prom] (await-promise prom REPLY-TIMEOUT))
-    ([prom timeout]
-       (try
-         (.get (future @prom) timeout TimeUnit/MILLISECONDS)
-         (catch TimeoutException t
-           :timeout))))
+  ([prom] (await-promise prom REPLY-TIMEOUT))
+  ([prom timeout]
+     (try
+       (.get (future @prom) timeout TimeUnit/MILLISECONDS)
+       (catch TimeoutException t
+         :timeout))))
 
 (defn await-promise!
   "Read the reply received from the server, waiting for timeout ms if the message hasn't yet been received. Raises an exception if the message hasn't been received within timeout ms"
-    ([prom] (await-promise prom REPLY-TIMEOUT))
-    ([prom timeout]
-       (.get (future @prom) timeout TimeUnit/MILLISECONDS)))
+  ([prom] (await-promise prom REPLY-TIMEOUT))
+  ([prom timeout]
+     (.get (future @prom) timeout TimeUnit/MILLISECONDS)))
 
 (defn- parse-status [args]
   (let [[_ ugens synths groups loaded avg peak nominal actual] args]

  (let [sc-server (osc-client host port)]
    (osc-listen sc-server #(event :osc-msg-received :msg %))
    (dosync
      (ref-set server* sc-server))

    (setup-connect-handlers)

    ; Send /status in a loop until we get a reply
    (loop [cnt 0]
      (log/debug "connect loop...")
      (when (and (< cnt N-RETRIES)

  names with different drivers or hardware then we need to find a better strategy to auto-connect."
  ([] (connect-jack-ports 2))
  ([n-channels]
     (let [port-list (sh "jack_lsp")
           sc-ins         (re-seq #"SuperCollider.*:in_[0-9]*" port-list)
           sc-outs        (re-seq #"SuperCollider.*:out_[0-9]*" port-list)
           system-ins     (re-seq #"system:capture_[0-9]*" port-list)
           system-outs    (re-seq #"system:playback_[0-9]*" port-list)
           interface-ins  (re-seq #"system:AC[0-9]*_dev[0-9]*_.*In.*" port-list)
           interface-outs (re-seq #"system:AP[0-9]*_dev[0-9]*_LineOut.*" port-list)
           connections (partition 2 (concat
                                     (interleave sc-outs system-outs)
                                     (interleave sc-outs interface-outs)
                                     (interleave system-ins sc-ins)
                                     (interleave interface-ins sc-ins)))]
       (doseq [[src dest] connections]
         (sh "jack_connect" src dest)
         (log/info "jack_connect " src dest)))))

;; We have to do this to handle the change in SC, where they added a "/" to the
;; status.reply messsage, which it should have had in the first place.
(defn- setup-connect-handlers []
  (let [handler-fn
        (fn []
