       (assoc :latent true))
 
   "hhmm (military) am|pm" ; hh only from 00 to 12
-  [#"(?i)((?:1[012]|0?\d))([0-5]\d)" #"(?i)([ap])\.?m?\.?"]
+  [#"(?i)((?:1[012]|0?\d))([0-5]\d)" #"(?i)([ap])\.?m\.?(?:\p{P}|\p{Z}|$)"]
   ; (-> (hour-minute (Integer/parseInt (first (:groups %1)))
   ;                  (Integer/parseInt (second (:groups %1)))
   ;                  false) ; not a 12-hour clock)

  (assoc (hour (:value %1) (< (:value %1) 12)) :latent true)

  "<time-of-day>  o'clock"
  [#(:full-hour %) #"(?i)uhr|h"]
  (dissoc %1 :latent)

  "at <time-of-day>" ; absorption

  [#"(?i)an einem" {:form :day-of-week}]
  %2 ; does NOT dissoc latent

  ;;;;;;;;;;;;;;;;;;;
  ;; Named things

