 
          (throw (IllegalArgumentException. (str "More than one MIDI clock source " (describe-name-filter name-filter)
                                                 "was found."))))))))
+
+
 
 (defn identify-mapping
   "Report on the next MIDI control or note message received, to aid in

  started and stopped, and the status checked."
      (sync-start [this] "Start synchronizing your metronome.")
      (sync-stop [this] "Stop synchronizing your metronome.")
      (sync-status [this] "Report on how well synchronization is working."))))

(defn- sync-handler
  "Called whenever a MIDI message is received for a synced metronome.

  ([]
   (sync-to-midi-clock nil))
  ([name-filter]
   (let [clock-finder (watch-for-clock-sources)]
     (Thread/sleep 300)
     (let [result (filter-devices (finder-current-sources clock-finder) name-filter)]
       (finder-finished clock-finder)
       (case (count result)
         0 (throw (IllegalArgumentException. (str "No MIDI clock sources " (describe-name-filter name-filter)
                                                  "were found.")))
