struct     let string ?(default = string "") ~doc switches =       Opt_string {switches; doc; default}     let flag ?(default = bool false) ~doc switches =       Opt_flag {switches; doc; default}     let (&) x y = Opt_cons (x, y)     let usage s = Opt_end s   end