 3 4 5]))

(def output (atom []))

(watch/add      ;; key, ova, ref, previous, next
 ov :elem-old-new
 (fn [k o r p n]
   (swap! output conj [p n])))

(&lt;&lt; (!! ov 0 :zero))
=&gt; [:zero 1 2 3 4 5]

(deref output)
=&gt; [[0 :zero]]

(&lt;&lt; (!! ov 3 :three))
=&gt; [:zero 1 2 :three 4 5]

(deref output)
=&gt; [[0 :zero] [3 :three]]</code></pre>
</div><div>
    <span id="element-change-watch"></span>
    <h3>4.2 &nbsp;&nbsp; Element Change Watch</h3>
</div><div><p>The <code>add-elem-change-watch</code> 