     (let [cnt (int (dec (.Length fns)))
           current (volatile! ((aget fns 0)))
           ^UnityEngine.MonoBehaviour coro-root (mono-obj)
-          ^tween.core.TimeLineCursor cursor (*TimeLineCursor 0 false)]
+          ^tween.core.TimeLineCursor cursor (*TimeLineCursor 0 false)
+          routine 
       (.StartCoroutine coro-root
         (reify IEnumerator
           (MoveNext [this]

    (let [current (volatile! (first fns))
          fns (volatile! (rest fns))
          ^UnityEngine.MonoBehaviour coro-root (mono-obj)
          ^tween.core.TimeLineCursor cursor (*TimeLineCursor 0 false)]
      (.StartCoroutine coro-root
        (reify IEnumerator
          (MoveNext [this]

                    (!TimeLineCursor cursor)
                    ))
                (catch Exception e false))))
          (get_Current [this] (.v cursor))))]
      (fn [] (if @current routine false)))))

(defn timeline-1 [fns] (timeline (map #(%) fns)))

