sig   type 'a t = 'MyStream.head Lazy.t   and 'a head = Nil | Cons of 'a * 'MyStream.t   val equal : ('-> '-> bool) -> 'MyStream.t -> 'MyStream.t -> bool   val from_list : 'a list -> 'MyStream.t   val unfold : ('-> ('a * 'b) option) -> '-> 'MyStream.t   val concat : 'MyStream.t -> 'MyStream.t -> 'MyStream.t   val take : int -> 'MyStream.t -> 'MyStream.t   val last : 'MyStream.t -> 'a option   val iter : ('-> unit) -> 'MyStream.t -> unit   val map : ('-> 'b) -> 'MyStream.t -> 'MyStream.t end