sig
  val map_from_to : ('-> 'b) -> '-> '-> ('-> 'a) -> 'b list
  val from_to : '-> '-> ('-> 'a) -> 'a list
  val take : int -> 'a list -> 'a list
  val transpose : 'a list list -> 'a list list
  val combine_all : 'a list list -> 'a list list
  val repeat : int -> '-> 'a list
  val flat_map : ('-> 'b list) -> 'a list -> 'b list
  val unique : ('-> '-> bool) -> 'a list -> 'a list
  val ith_group : int -> int -> 'a list -> 'a list
end