   (:require [clojure.core.protocols :as p]
             [clojure.datafy :as d])
   (:import (java.time YearMonth Month DayOfWeek Instant
-                      LocalTime LocalDateTime
-                      ZonedDateTime OffsetDateTime LocalDate ZoneOffset ZoneId)
+                      LocalTime LocalDate LocalDateTime
+                      ZonedDateTime OffsetDateTime
+                      ZoneOffset ZoneId)
            (java.time.format DateTimeFormatter)
            (java.time.temporal IsoFields JulianFields TemporalAccessor)))
 


        {`p/nav (fn [_ k v]
                  (case k
                    :format (.format (dt-formatter (or v "yyyy-MM")) ym)
                    nil))})))


  (cond-> x
          (string? x)
          (ZoneId/of)))

(defn- zone-offset
  ^ZoneId [x]
  (cond-> x
          (string? x)
          (ZoneOffset/of)))

(defn- julian-field
  [^TemporalAccessor o x]
