sig
  type 'a t
  val original_gen :
    'Raw_quickcheck_generator.Choice.t ->
    'Raw_quickcheck_generator.Choice.t
  val updated_gen :
    'Raw_quickcheck_generator.Choice.t ->
    keep:[ `All_choices
         | `All_choices_except_this_choice
         | `Choices_to_the_left_of_this_choice_only
         | `Choices_to_the_right_of_this_choice_only
         | `This_choice_and_all_choices_to_the_left
         | `This_choice_and_all_choices_to_the_right ] ->
    'Raw_quickcheck_generator.Choice.t
  val value : 'Raw_quickcheck_generator.Choice.t -> 'a
  val attempts_used : 'Raw_quickcheck_generator.Choice.t -> int
end