(hugr 0)

(mod)

(define-func
  private
  example.loop
  (param ?a core.type)
  (core.fn [?a] [?a])
  (dfg [%0] [%1]
       (signature (core.fn [?a] [?a]))
       (tail-loop [%0] [%1]
                  (signature (core.fn [?a] [?a]))
                  (dfg [%2] [%3]
                       (signature (core.fn [?a] [(core.adt [[?a] [?a]])]))
                       ((core.make_adt 0) [%2] [%3]
                                              (signature (core.fn [?a] [(core.adt [[?a] [?a]])])))))))
