   ;;   IF there are no escaping bindings in the test, THEN we can use cond,
   ;;   and merge with the other things with cond-conj
   (fn [E]
-    (DBG :&Ccond test-thens else meta E)
+    ;;(DBG :&Ccond test-thens else meta E)
     (let [effects-that-matter-after-cond
           ;; merge local result from continuation-analysis with accumulated context
           (ka/env-both (get meta :capturing) (get E :capturing))

                        [body innerE] ((&C body) innerE)]
                    (M (check-effects x innerE true)
                       :function args return-type body))))
        [[:return a]] (&m (&tag :return (&C a)))
        [[(:or ':from ':import ':break ':continue) & _]] (&x)
        [[:unwind-protect body protection]]
        (&m (&tag :unwind-protect (&C body) (&C protection)))


(defn do-conj [a r] (match [r] [(['do & s] :seq)] `(~'do ~a ~@s) :else `(~'do ~a ~r)))

;; TODO: support changing set of bindings and effects
(defn &Csuite [x]
  (letfn [(&let-form [s n a b r]
            (&let [a (&C a) r (&Csuite r)]
