 (def set-context
   (reify
     p/Context
-    (-get-level [_] ctx/+level-default+)
-
     p/Semigroup
     (-mappend [_ sv sv']
       (s/union sv (set sv')))

(def range-context
  (reify
    p/Context
    (-get-level [_] ctx/+level-default+)

    p/Foldable
    (-foldr [ctx f z xs]
      (let [x (first xs)]

(def prod-monoid
  (reify
    p/Context
    p/Semigroup
    (-mappend [_ sv sv']
      (* sv sv'))
