functor (Bsml : Bsmlsig.BSML->
  sig
    val replicate : '-> 'Bsml.par
    val parfun : ('-> 'b) -> 'Bsml.par -> 'Bsml.par
    val parfun2 :
      ('-> '-> 'c) -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val parfun3 :
      ('-> '-> '-> 'd) ->
      'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val parfun4 :
      ('-> '-> '-> '-> 'e) ->
      'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val apply2 :
      ('-> '-> 'c) Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val apply3 :
      ('-> '-> '-> 'd) Bsml.par ->
      'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val apply4 :
      ('-> '-> '-> '-> 'e) Bsml.par ->
      'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val mask : (int -> bool) -> 'Bsml.par -> 'Bsml.par -> 'Bsml.par
    val applyat :
      int -> ('-> 'b) -> ('-> 'b) -> 'Bsml.par -> 'Bsml.par
    val applyif :
      (int -> bool) -> ('-> 'b) -> ('-> 'b) -> 'Bsml.par -> 'Bsml.par
    val procs : int list
    val this : int Bsml.par
    val bsml_print : ('-> unit) -> int -> 'Bsml.par -> unit Bsml.par
    val parprint : ('-> unit) -> 'Bsml.par -> unit Bsml.par
    val get_one : 'Bsml.par -> int Bsml.par -> 'Bsml.par
    val get_list : 'Bsml.par -> int list Bsml.par -> 'a list Bsml.par
    val put_one : (int * 'a) Bsml.par -> 'a list Bsml.par
    val put_list : (int * 'a) list Bsml.par -> 'a list Bsml.par
  end