    {:gen generator-fn}))
 
 (defn call-gen
+  {:no-doc true}
   [{generator-fn :gen} rnd size]
   (generator-fn rnd size))
 
 (defn gen-pure
+  {:no-doc true}
   [value]
   (make-gen
     (fn [rnd size]
       value)))
 
 (defn gen-fmap
+  {:no-doc true}
   [k {h :gen}]
   (make-gen
     (fn [rnd size]
       (k (h rnd size)))))
 
 (defn gen-bind
+  {:no-doc true}
   [{h :gen} k]
   (make-gen
     (fn [rnd size]

    (rose-permutations (vec roses))))

(defn shrink-rose
  [f roses]
  (if (seq roses)
    [(apply f (clojure.core/map rose-root roses))

;; ---------------------------------------------------------------------------

(defn random
  {:no-doc true}
  ([] (Random.))
  ([seed] (Random. seed)))

(defn make-size-range-seq
  {:no-doc true}
  [max-size]
  (cycle (range 0 max-size)))

