 
    :else nil))
 
-(defn container-build-steps [{:keys [containers current-container-id]} owner]
-  (reify
-    om/IInitState
-    (init-state [_]
-      {:autoscroll? false})
-    om/IDidMount
-    (did-mount [_]
-      (mount-browser-resize owner))
-    om/IWillUnmount
-    (will-unmount [_]
-      (dispose (om/get-state owner [:browser-resize-key])))
-    om/IDidUpdate
-    (did-update [_ _ _]
-      (when (om/get-state owner [:autoscroll?])
-        (when-let [node (utils/sel1 "#container_scroll_parent")]
-          (utils/scroll-to-node-bottom node))))
-    om/IRender
-    (render [_]
-      (let [non-parallel-actions (->> containers
-                                      first
-                                      :actions
-                                      (remove :parallel)
-                                      (map (fn [action]
-                                             [(:step action) action]))
-                                      (into {}))]
-        (html
-         [:div#container_scroll_parent ;; hides horizontal scrollbar
-          [:div#container_parent {:on-wheel (fn [e]
-                                              (check-autoscroll owner (aget e "deltaY"))
-                                              (when (not= 0 (aget e "deltaX"))
-                                                (.preventDefault e)
-                                                (let [body (.-body js/document)]
-                                                  (set! (.-scrollTop body) (+ (.-scrollTop body) (aget e "deltaY"))))))
-                                  :on-scroll (fn [e]
-                                               ;; prevent handling scrolling if we're animating the
-                                               ;; transition to a new selected container
-                                               (let [scroller (.. e -target -scroll_handler)]
-                                                 (when (or (not scroller) (.isStopped scroller))
-                                                   (raise! owner [:container-parent-scroll]))))
-                                  :class (str "selected_" current-container-id)}
-           (for [container containers]
-             (om/build container-view
-                       {:container container
-                        :non-parallel-actions non-parallel-actions}
-                       {:opts {:uses-parallelism? (< 1 (count containers))}}))]])))))
-
-(defn output-v2 [out owner]
+(defn output [out owner]
   (reify
     om/IRender
     (render [_]

                             (let [body (.-body js/document)]
                               (set! (.-scrollTop body) (+ (.-scrollTop body) (aget e "deltaY")))))
                 :class (str "selected_" current-container-id)}
           (om/build container-view-v2
                     {:container (containers current-container-id)
                      :non-parallel-actions non-parallel-actions}
                     {:opts {:uses-parallelism? (< 1 (count containers))}})])))))

         [:span.pre {:dangerouslySetInnerHTML
                     #js {"__html" message-html}}])))))

(defn trailing-output [converters-state owner]
  (reify
    om/IRender
    (render [_]
