 
 %s
 
-should be%s: %s
-
-%s"
+should be%s: %s"
      (header-label "Spec failed")
      (show-spec-name spec-name (printer/indent (*value-str-fn* spec-name val path (problems/value-in val path))))
      (if (= 1 (count combined-set)) "" " one of")
-     (string/join "," (map #(str "`" % "`") combined-set))
-     (if (:print-specs? opts) (relevant-specs problems) ""))))
+     (string/join "," (map #(str "`" % "`") combined-set)))))
 
 (defmethod problem-group-str :problem/missing-spec [_type spec-name val path problems opts]
   (printer/format
    "%s
 
-%s
-
 %s"
    (header-label "Missing spec")
    (->> problems
         (map #(no-method spec-name val path %))
-        (string/join "\n"))
-   (if (:print-specs? opts) (relevant-specs problems) "")))
+        (string/join "\n"))))
 
 (defmethod problem-group-str :problem/regex-failure [_type spec-name val path problems opts]
   (s/assert ::singleton problems)


with args:

%s

%s"
     (header-label "Exception")
     (printer/indent (*value-str-fn* spec-name val path (problems/value-in val path)))
     (printer/indent (pr-str (:reason problem)))
     (printer/indent (string/join ", " (:val problem)))
     (if (:print-specs? opts) (relevant-specs problems) ""))))

(defmethod problem-group-str :problem/fspec-ret-failure [_type spec-name val path problems opts]
  (s/assert ::singleton problems)

    (printer/format
     "%s

%s"
     (header-label "Syntax error")
     (case (:reason problem)
       "Insufficient input" (insufficient-input spec-name val path problem)
       "Extra input" (extra-input spec-name val path)))))

(defmethod problem-group-str :problem/fspec-exception-failure [_type spec-name val path problems opts]
  (s/assert ::singleton problems)
