   [data {:keys [entry-class key-class val-class]}]
   (into-array
     (for [[k v] data]
-      (dom/li #js {:key (str [k v])}
+      (dom/li #js {:key (hash-key [k v])}
         (dom/div #js {:className (str "entry " entry-class)
                       :style #js {:position "relative"}}
           (dom/span #js {:className (str "key " key-class)

   [om.dom :as dom :include-macros true]
   [clojure.string :as string]
   [cljs.reader :as reader]
   [goog.object :as object]))

(enable-console-print!)


  "Return an opener for a Record type."
  [r]
  (str (record-name r) "{"))

(defn hash-key [data]
  (let [d (goog.crypt.Md5.)]
    (.update d (crypt/stringToByteArray (str data)))
    (crypt/byteArrayToHex (.digest d))))

;; ---------------------------------------------------------------------
;; View helpers
