     (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

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

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

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