sig
  type 'a key
  val new_key :
    ?split_from_parent:('a -> 'a) -> (unit -> 'a) -> 'a Domain.DLS.key
  val get : 'a Domain.DLS.key -> 'a
  val set : 'a Domain.DLS.key -> 'a -> unit
end