sig val run : OASISTypes.prog -> OASISTypes.args -> string array -> unit val hook : ?failsafe:bool -> OASISTypes.custom -> ('a -> 'b) -> 'a -> 'b end