anchor.diff:                           (timestamp-subtimezone source timezone))))
   
   (defun timestamp-minimize-part (timestamp part &key
  -                                (offset (%get-default-offset))
  +                                offset
                                   (timezone *default-timezone*)
                                   into)
     (let* ((timestamp-parts '(:nsec :sec :min :hour :day :month))
  
positive.code: (defmacro adjust-timestamp! (timestamp &body changes)
    (%expand-adjust-timestamp timestamp changes :functional nil))
  
  (defun %set-timestamp-part (time part new-value)
    ;; TODO think about error signalling. when, how to disable if it makes sense, ...
    (case part
      ((:nsec :sec-of-day :day)
  
negative.code:                  (encode-timestamp-into-values nsec sec minute hour
                                                 (%fix-overflow-in-days day month-new year-new)
                                                 month-new year-new
                                                 :timezone timezone :offset utc-offset)))))
      (ecase part
        ((:nsec :sec :minute :hour :day :day-of-week)
         (direct-adjust part offset
  