let get_functional_provenance t =     t.functional |> Option.value_exn ~msg:"get_functional_provenance"