         (let [[prefix remainder] (split-at prefix-length words)]
             (recur
                 (update-transition
-                    (canon (vec prefix))
+                    (canon-ngram prefix)
                     (first remainder)
                     table)
                 (rest words)))

            (pick-random-youtube-comment)))
    (if (.startsWith message "!memory")
        (send-message irc channel
            (let [
                r (Runtime/getRuntime)
                free (.freeMemory r)
                total (.totalMemory r)
                to-mb (fn [b] (Math/round (double (/ b (* 1024 1024)))))
                ]
                (str "Total: " (to-mb total) " MiB" " - " "Free: " (to-mb free) " MiB"))))
)

(defn -main

    (if (>= (count words) prefix-length)
        (let [[prefix remainder] (split-at prefix-length words)]
            (recur
                (conj ngrams (canon-ngram prefix))
                (rest words)))
        ngrams))

