             [selmer.parser :as parser]
             [taoensso.timbre :as timbre]
             [taoensso.timbre.appenders.3rd-party.rotor :as rotor])
+  (:import [java.net InetAddress])
   (:gen-class))
 
 (defonce ^{:doc "Holds the running web UI server, if there is one, for later shutdown."}

    :validate [#(< 0 % 0x10000) "Must be a number between 0 and 65536"]]
   ["-r" "--repl-port PORT" "Port number for REPL, if desired"
    :default (env :repl-port)
    :parse-fn #(Integer/parseInt %)
    :validate [#(< 0 % 0x10000) "Must be a number between 0 and 65536"]]])


      errors (exit 1 (str (error-msg errors) "\n\n" (usage summary))))
    (init-logging)
    (.addShutdownHook (Runtime/getRuntime) (Thread. stop-servers))
    (reset! ola-client/olad-host (:olad-host options))
    (reset! ola-client/olad-port (:olad-port options))
    (timbre/info "Will find OLA daemon on host" @ola-client/olad-host ", port" @ola-client/olad-port)
    (start-web-server (:web-port options) true)
    (timbre/info "Web UI server on port:" (:web-port options))
    (start-osc-server (:osc-port options))
