                        edges)
        junctions (keys (into {} (filter (fn [[_ connections]] (> connections 2))
                                         counts)))]
-    #_(println "junctions" junctions)
+    (log/debug "junctions" junctions)
     (set (take 2 junctions))))
 
 (defn vertical-or-horizontally-aligned?

                                    (< (+ (* x1 1000) y1) (+ (* x2 1000) y2))
                                    ;; don't connect any rooms that are already connected
                                    (not-any? (fn [room-center-pair]
                                                (println "room-center-pair" room-center-pair)
                                                (or (= room-center-pair
                                                       [room-center-1 room-center-2])
                                                    (= room-center-pair
                                                       [room-center-2 room-center-1])))
                                              g)))]
                   [room-center-1 room-center-2]))]
    #_(println "all extra edges" (reduce (fn [edges [[x1 y1] [x2 y2]]]
                                         (conj edges [[x1 y1] [x2 y2] (rc/chebyshev-distance (rc/xy->pos x1 y1) (rc/xy->pos x2 y2))]))
                                       []
                                       edges))
    (take 5 edges)))

(defn find-junction-rooms [edges]

          *
          x"
  [[x1 y1] [x2 y2]]
  (log/debug "vertical-s-segment")
  (let [mid-y (int (/ (+ y1 y2) 2))]
    (concat (map #(vector x1 %)    (range* y1 mid-y))
            (map #(vector % mid-y) (range* x1 x2))
