     ;[narrator.query         :as narr-query  ]
     )
   (:import 
-    [java.io File])
+    [java.io File]
+    [java.util UUID]
+    [clojure.lang PersistentHashMap PersistentArrayMap]
+    [clojure.core.async.impl.channels ManyToManyChannel]
+    [couchbase_clj.client CouchbaseCljClient])
   (:gen-class))
 
 ;; HELPERS

            (Thread/sleep thread-wait)
              (go-loop []
                (let [  ids       (blocking-consumer work-chan) 
                        start     (. java.lang.System (clojure.core/nanoTime)) 
                        _         (doall (pmap #(client/delete client-del %) ids))
                        exec-time (with-precision 3 (/ (- (. java.lang.System (clojure.core/nanoTime)) start) 1000000.0))
                        perf      (/ (count ids) exec-time) ]
                  ;; send results to stat-chan
                  (blocking-producer stat-chan {:thread-name (.getName (Thread/currentThread)) :first_id (first ids) :time exec-time :perf perf})

      :else
        ;; exit 1 here
        (config-err config))

    ;; Initializing CB connections and everything
    (let [  
            ^ManyToManyChannel    stat-chan             (chan)
            ^ManyToManyChannel    work-chan             (chan)
            ^PersistentHashMap    client-config         (get-in config [:ok :couchbase-client])
            ^CouchbaseCljClient   client                (connect client-config)
            ^PersistentArrayMap   view-config           (get-in config [:ok :couchbase-view])
            ^String               design-document-name  (:design-document-name view-config)
            ^String               view-name             (:view-name view-config)
            ^PersistentHashMap    query-options         (:query-options view-config)
            ^Long                 batch-size            (:batch-size view-config)  
            ^Long                 thread-count          (get-in config [:ok :hasta-la-vista :thread-count])
            ^Long                 thread-wait           (get-in config [:ok :hasta-la-vista :thread-wait]) 
                                                                                                              ]

      (log/info (client/get-available-servers client))

