   "Words like [здесь, зонтик истинный все творец]"
   [word]
   (-- word reg-pal-pat (fn [match]
-                         (let [res                            match]
+                         (let [res (first match)]
                            (do
                              (++ \ь res))))))
 


(def rus-cons (set "лмнрцкгзвпджчшстбфщ"))
(def dubcon-pat (re-pattern (++ ["([" (++ rus-cons) "])\\1"])))
(defn dubcon-alg [w [m m1]]
  (let [
        m        (++ [m m1])        
        ix (.indexOf w m)
        first-l (first m)
        first-s (str first-l)]
    (if (= ix 0) m
        (if (= (count w) (+ ix 2))
          first-s
          (cond
           (rus-cons (nth w (+ ix 2))) first-s
           ((set "бвфрлг") first-l) first-s
           ((set "жтдзс") first-l) m
           (and (>= (- ix 2) 0) (= (nth w (- ix 2)) \*) ((set "кнмп") first-l)) m
           :else first-s
           )))))

(defn dubcon
  "Cases like [грамм русский аккуратный коммунист рассада]"
  [word]
  (-- word dubcon-pat (partial dubcon-alg word)))

(def fns [hard-pron unpal-e cluster-assim end-assim reg-assim-repl reg-pal ogo-ovo chto-trans dash-rep dubcon])

(defn ^:export orpho-single [word]
  (reduce #(%2 %1) word fns))

;;;;;;;;;;;; This file autogenerated from src/cljx/orphoep.cljx

  (if (list? pat)
    (reduce #(-- %1 %2 rep) val pat)
    (-- val pat rep)))

(defn unpal-e
  "Cases like [шт*ейгер брет*елька модерн денди дельта]"
