     #spy/d tree-atom
     #spy/d parent-tree-atom
     (println "^^^^^")
+    (clojure.stacktrace/print-stack-trace (Exception. "assoc-to-recent-trees!"))
     (swap! (-> @parent-tree-atom
                :inner-path
                (@recent-trees)

                    (mk-tree-template src-map
                                      fn-meta
                                      path
                                      parent-path)))

(defn xpand-if
  [form src-map fn-meta path parent-path]

             (apply merge))))

(defn mk-tree-template
  [src-map fn-meta path parent-path & {:keys [macro?]}]
  (let [sub-src-map (-> #spy/d path
                        path->sym
                        src-map)
        form (if macro?
               (:orig sub-src-map)
               (:x sub-src-map))]
    {:parent-path parent-path
     :name (if (seq? form)
              (first form)
              form)
     :form form
     :macro? macro?
     :inner-path path
     :parent-name (:name fn-meta)
     :ns (-> fn-meta :ns str symbol)
