   (-velem-simple-element [this] this)
   (-velem-insert [this vparent vnext-sibling]
     (set! parent vparent)
-    (if-let [diff-head (get-diff-head)]
-      (ui/velem-replace this diff-head)
-      (do
-        (.ensureNode this)
-        (dom-insert parent node vnext-sibling)
-        (.onAttached this)))
+    (.ensureNode this)
+    (dom-insert parent node vnext-sibling)
+    (.onAttached this)
     this)
   (-velem-take [this]
     (dom-remove node)) 
   (-velem-replace [this old-velem]
-    (if-let [old-simple (ui/velem-simple-element old-velem)]
-      (when-not (.diffReplace this old-simple)
-        (.ensureNode this)
-        (dom-simple-replace node (ui/velem-native-element old-simple))
+    (.ensureNode this)
+    (if-let [old-node (ui/velem-native-element old-velem)]
+      (do
+        (dom-simple-replace node old-node)
         (r/dispose old-velem))
-      (do
-        (.ensureNode this)
-        (dom-remove-replace node old-velem)))
+      (dom-remove-replace node old-velem))
     (.onAttached this)
     this)
   (-velem-lifecycle-callback [this cb-name]


  Object
  (dispose [this]
    (when attr-binder (r/dispose attr-binder))
    (dotimes [i (.-length children)]
      (r/dispose (aget children i))))
  (ensureNode [this]
    (when-not node

  (updateAttrs [this new-attrs]
    (set! attr-binder (attr-binder node new-attrs))
    (set! attrs new-attrs))

  ui/IVirtualElement
  (-velem-parent [this] parent)
