         (:error fetched) [:input#result.error
                           {:value (:error fetched) :ref "result"}]
         (:pass fetched) [:input#ugh.result
-                         {:value (:pass fetched) :ref "result"}]
+                         {:value (:pass fetched)
+                          :ref "result"
+                          :onBlur (partial blank-out fetched)}]
         :else nil)))
     om/IDidUpdate
     (did-update [_ _ _]

          (.focus (om/get-node owner "result"))
          (.select (om/get-node owner "result"))
          (go (let [_ (<! timeout-chan)]
                (om/transact! fetched (constantly nil)))))))))

(defn fetch-password-if-enter [state evt]
  (when (= (.-keyCode evt) 13)

    (go (let [fetched (<! rc)]
          (om/transact! state (fn [s] (assoc s :fetched fetched)))))))

(defn blank-out [fetched] (om/transact! fetched (constantly nil)))

(defn output [fetched owner]
  (reify
    om/IRender
