type source = Proper | Own_slug | Preceding_sunday | Common [@@deriving sexp] type t = { said : Slug.t; via : source } [@@deriving sexp] let source_to_string = function | Proper -> "proper" | Own_slug -> "own" | Preceding_sunday -> "preceding-sunday" | Common -> "common"