                                                 (om/set-state! owner :previous-click m)
                                                 (when-not (nil? previous-click)
                                                   (put! click-channel (- m previous-click)))))}
-                              "tap tempo"))))
+                              (if (:should-stop app) "stop" "tap tempo")))))
 
 (defn dots [meter owner]
   (reify

               (dom/h1 nil "metronome")
               (om/build clock (:bpm app) {:init-state {:sound-channel sound-channel :click-channel click-channel}})
               (om/build sound (:meter app) {:init-state {:sound-channel sound-channel}})
               (om/build click nil {:init-state {:click-channel click-channel}})
               (om/build dots (:meter app)))
      )))
 app-state
 {:target (. js/document (getElementById "app"))})

    (enable-console-print!)))

(defonce app-state (atom {:bpm {} 
                          :meter {:count 0}
                          :should-stop false}))

(defn clock [bpm owner]
  (letfn [(start-interval [millis] 
