sig   val init : int -> unit   val full_init : int array -> unit   val self_init : unit -> unit   val bits : unit -> int   val int : int -> int   val int32 : Int32.t -> Int32.t   val nativeint : Nativeint.t -> Nativeint.t   val int64 : Int64.t -> Int64.t   val float : float -> float   val bool : unit -> bool   val char : unit -> char   val full_range_int : unit -> int   val enum_bits : unit -> int BatEnum.t   val enum_int : int -> int BatEnum.t   val enum_bool : unit -> bool BatEnum.t   val enum_float : float -> float BatEnum.t   val enum_int32 : Int32.t -> Int32.t BatEnum.t   val enum_int64 : Int64.t -> Int64.t BatEnum.t   val enum_nativeint : Nativeint.t -> Nativeint.t BatEnum.t   val enum_char : unit -> char BatEnum.t   val choice : 'BatEnum.t -> 'a   val multi_choice : int -> 'BatEnum.t -> 'BatEnum.t   val shuffle : 'BatEnum.t -> 'a array   module State :     sig       type t = Random.State.t       val make : int array -> BatRandom.State.t       val make_self_init : unit -> BatRandom.State.t       val copy : BatRandom.State.t -> BatRandom.State.t       val bits : BatRandom.State.t -> int       val int : BatRandom.State.t -> int -> int       val int32 : BatRandom.State.t -> Int32.t -> Int32.t       val nativeint : BatRandom.State.t -> Nativeint.t -> Nativeint.t       val int64 : BatRandom.State.t -> Int64.t -> Int64.t       val float : BatRandom.State.t -> float -> float       val bool : BatRandom.State.t -> bool       val char : BatRandom.State.t -> char       val enum_bits : BatRandom.State.t -> unit -> int BatEnum.t       val enum_int : BatRandom.State.t -> int -> int BatEnum.t       val enum_bool : BatRandom.State.t -> unit -> bool BatEnum.t       val enum_float : BatRandom.State.t -> float -> float BatEnum.t       val enum_int32 : BatRandom.State.t -> Int32.t -> Int32.t BatEnum.t       val enum_int64 : BatRandom.State.t -> Int64.t -> Int64.t BatEnum.t       val enum_nativeint :         BatRandom.State.t -> Nativeint.t -> Nativeint.t BatEnum.t       val enum_char : BatRandom.State.t -> unit -> char BatEnum.t     end   val get_state : unit -> BatRandom.State.t   val set_state : BatRandom.State.t -> unit   module Incubator :     sig       module Private_state_enums :         sig           module State :             sig               type t = Random.State.t               val make :                 int array -> BatRandom.Incubator.Private_state_enums.State.t               val make_self_init :                 unit -> BatRandom.Incubator.Private_state_enums.State.t               val copy :                 BatRandom.Incubator.Private_state_enums.State.t ->                 BatRandom.Incubator.Private_state_enums.State.t               val bits :                 BatRandom.Incubator.Private_state_enums.State.t -> int               val int :                 BatRandom.Incubator.Private_state_enums.State.t -> int -> int               val int32 :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Int32.t -> Int32.t               val nativeint :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Nativeint.t -> Nativeint.t               val int64 :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Int64.t -> Int64.t               val float :                 BatRandom.Incubator.Private_state_enums.State.t ->                 float -> float               val bool :                 BatRandom.Incubator.Private_state_enums.State.t -> bool               val char :                 BatRandom.Incubator.Private_state_enums.State.t -> char               val enum_bits :                 BatRandom.Incubator.Private_state_enums.State.t ->                 unit -> int BatEnum.t               val enum_int :                 BatRandom.Incubator.Private_state_enums.State.t ->                 int -> int BatEnum.t               val enum_bool :                 BatRandom.Incubator.Private_state_enums.State.t ->                 unit -> bool BatEnum.t               val enum_float :                 BatRandom.Incubator.Private_state_enums.State.t ->                 float -> float BatEnum.t               val enum_int32 :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Int32.t -> Int32.t BatEnum.t               val enum_int64 :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Int64.t -> Int64.t BatEnum.t               val enum_nativeint :                 BatRandom.Incubator.Private_state_enums.State.t ->                 Nativeint.t -> Nativeint.t BatEnum.t               val enum_char :                 BatRandom.Incubator.Private_state_enums.State.t ->                 unit -> char BatEnum.t               val perturb :                 BatRandom.Incubator.Private_state_enums.State.t ->                 BatRandom.Incubator.Private_state_enums.State.t             end           val enum_bits : unit -> int BatEnum.t           val enum_int : int -> int BatEnum.t           val enum_bool : unit -> bool BatEnum.t           val enum_float : float -> float BatEnum.t           val enum_int32 : Int32.t -> Int32.t BatEnum.t           val enum_int64 : Int64.t -> Int64.t BatEnum.t           val enum_nativeint : Nativeint.t -> Nativeint.t BatEnum.t           val enum_char : unit -> char BatEnum.t         end     end end