                 in
                 problems
                 opts
-                (expected-str type spec-name val path problems opts))))
-
-(defmethod expected-str :expound.problem-group/many-values [type spec-name val path problems opts]
+                (expected-str type spec-name form path problems opts))))
+
+(defmethod expected-str :expound.problem-group/many-values [type spec-name form path problems opts]
   (let [subproblems (:problems (first problems))]
     (string/join
      "\n\nor value\n\n"

                      (string/join ", "))
                 :good))))

(defmethod problem-group-str :expound.problem/not-in-set [type spec-name val path problems opts]
  (assert (apply = (map :val problems)) (str util/assert-message ": All values should be the same, but they are " problems))
  (format-err "Spec failed"
              type
              spec-name
              val
              path
              problems
              opts
              (expected-str type spec-name val path problems opts)))

(defmethod expected-str :expound.problem/missing-spec [_type spec-name val path problems opts]
  (str "with\n\n"
       (->> problems
            (map #(no-method spec-name val path %))
            (string/join "\n\nor with\n\n"))))

(defmethod value-str :expound.problem/missing-spec [_type spec-name val path problems opts]
  (printer/format
   "Cannot find spec for

%s"
   (show-spec-name spec-name (*value-str-fn* spec-name val path (paths/value-in val path)))))

(defmethod problem-group-str :expound.problem/missing-spec [type spec-name val path problems opts]
  (printer/format
   "%s\n\n%s\n\n%s"
   (header-label "Missing spec")
   (value-str type spec-name val path problems opts)
   (expected-str type spec-name val path problems opts)))

(defn ^:private lcs* [[x & xs] [y & ys]]
  (cond

                     (= pred (second %))))
       first))

(defn ^:private no-method [_spec-name form path problem]
  (let [sp (s/spec (last (:expound/via problem)))
        {:keys [mm retag]} (multi-spec-parts
                            (multi-spec (:pred problem) sp))]
