sig   type 'a or_bottom = [ `Bottom | `Value of 'a ]   val ( >>- ) :     'Bottom.Type.or_bottom ->     ('-> 'Bottom.Type.or_bottom) -> 'Bottom.Type.or_bottom   val ( >>-: ) :     'Bottom.Type.or_bottom -> ('-> 'b) -> 'Bottom.Type.or_bottom end