                  bounds  (get chunks (inc mi))]] ; first chunk is for lead
        (do
          (write machine (+ mi 2))
-         (write machine bounds))))
+         (write machine bounds)
+         (write machine 1))))
     ; Now we can start the sieve
     (s/sieve-e 1 true (chan 10) lead-chunk send-chan)
     (println "Waiting for other machines to finish...\n")

                (when @running?
                  (do
                    (alt! [client-in] ([msg] (write sock (@handler msg)))
                          [send-chan] ([msg] (send-to-all connected msg)))
                    (recur))))))))
      (catch Exception e nil))
    (go-loop []


(defn connect
  "Takes: server - host ip to connect to
          port   - port to connect to
  and returns a map of channels to read/write to
  and a raw socket"
  [server port]
  (let [socket (Socket. server port)
        in (-> socket
