                        :modified false
                        :sem {:tense :past
                              :aspect :progressive}
-                       :subcat []}}]
+                       :subcat []}}
+        index-fn (create-index-fn verb-set grammar)]
     (repeatedly
      #(println
-       (morph-ps (binding [babel.generate/println? true
-                           babel.generate/truncate? false
-                           babel.generate/grammar grammar
-                           babel.generate/index-fn verbcoach-index-fn]
-                   (time (generate spec model))))))))
+       (morph (binding [babel.generate/println? false
+                        babel.generate/truncate? true
+                        babel.generate/grammar grammar
+                        babel.generate/index-fn index-fn]
+                (time (generate spec model))))))))
 
 (defn stampare
   "generate arrabiarsi sentences with a grammar subset."

            (into {}
                  (for [[k vals] (:lexicon model)]
                    (let [filtered-vals
                          (filter (fn [v]
                                    (or (not (= :noun (u/get-in v [:synsem :cat])))
                                        (and (= :noun (u/get-in v [:synsem :cat]))
                                             (not (= :acc (u/get-in v [:synsem :case]))))
                                        (and (= :noun (u/get-in v [:synsem :cat]))
                                             (= :acc (u/get-in v [:synsem :case]))
                                             (= true (u/get-in v [:synsem :reflexive])))))
                                  vals)]
                      (if (not (empty? filtered-vals))
                        [k filtered-vals]))))]
        (lookup-spec spec (create-indices lexicon index-lexicon-on-paths) index-lexicon-on-paths)))))

(defn arrabbiarsi
  "generate arrabiarsi sentences with a grammar subset."
  []
  (let [grammar
        (filter
         #(contains? verbcoach-grammar (u/get-in % [:rule]))
         (:grammar model))


(def verbcoach-grammar
  #{
    ;;    "adjective-phrase"
    ;;    "intensifier-phrase"
    ;;    "nbar1"
    ;;    "nbar2"
    ;;    "noun-phrase1"
    ;;    "noun-phrase2"
    ;;    "np-to-n-pp"
    ;;    "prepositional-phrase"
    ;;    "s-aux"
    ;;    "s-modified-modifier-first"
    ;;    "s-modified-modifier-last"
    ;;    "s-modifier"
    ;;    "sentence-nonphrasal-head"
    "sentence-phrasal-head"
    ;;    "vp"
    ;;    "vp-32"
    "vp-aux-22-nonphrasal-comp"
    "vp-aux-22-phrasal-comp"
    "vp-aux-nonphrasal-complement"
    "vp-aux-phrasal-complement"
    "vp-aux-phrasal-complement-essere-false"
    "vp-infinitive"
    ;;    "vp-past"
    "vp-present"
    "vp-pronoun-nonphrasal"})
;;    "vp-pronoun-phrasal"



(def verbcoach-pronouns
  (fn [v]
    (or 
     (and (= :noun (u/get-in v [:synsem :cat]))
          (not (= :acc (u/get-in v [:synsem :case]))))
     (and (= :noun (u/get-in v [:synsem :cat]))
          (= :acc (u/get-in v [:synsem :case]))
          (= true (u/get-in v [:synsem :reflexive]))))))

(def verbcoach-index-fn
  (let [index-lexicon-on-paths
