 (defn assoc-last [xs ks x]
   (assoc-in xs (into [(dec (count xs))] ks) x))
 
+(defn update-last [xs ks f & args]
+  (apply update-in xs (into [(dec (count xs))] ks) f args))
+
+(defn ucfirst [s] 
+  (str (.toUpperCase (first s)) (subs s 1)))
+
 (defn log [x]
   (.log js/console x))
   

          (dom/tr nil
            (dom/td nil date)
            (dom/td nil description)
            (dom/td nil to-account)
            (dom/td nil (if to-account "←"))
            (dom/td nil amount)
            (dom/td nil (if from-account "←"))
            (dom/td nil from-account)
            (dom/td nil note)))))))

(defn dom-el [id]
  (.getElementById js/document id))

   {:account "", :amount ""}])

(def app-state (atom 
  {:screen :import
   :txs sample-txs 
   :entry-parts empty-entry-parts}))

(defn store-event [ev]
  {:target (aget ev "target")
   :key-code (.-keyCode ev)
   :target-value (aget ev "target" "value")})

(defn send! 
