functor (Domain : InputDomain->   sig     val register_initial_state :       Value_types.callstack -> Domain.state -> unit     val register_state_before_stmt :       Value_types.callstack -> Cil_types.stmt -> Domain.state -> unit     val register_state_after_stmt :       Value_types.callstack -> Cil_types.stmt -> Domain.state -> unit     val get_initial_state :       Cil_types.kernel_function -> Domain.state Eval.or_bottom     val get_initial_state_by_callstack :       Cil_types.kernel_function ->       Domain.state Value_types.Callstack.Hashtbl.t option     val get_stmt_state : Cil_types.stmt -> Domain.state Eval.or_bottom     val get_stmt_state_by_callstack :       after:bool ->       Cil_types.stmt -> Domain.state Value_types.Callstack.Hashtbl.t option   end