anchor.diff:      | Status "--similarity" v :: rest -> parse { arg with SearchOptions = { arg.SearchOptions with SimilaritySearching = boolToOptionStatus v } } rest
       | (KeyValue "--target" t | KeyValue "-t" t) :: rest -> parse { arg with Targets = t :: arg.Targets } rest
       | (KeyValue "--reference" r | KeyValue "-r" r) :: rest -> parse { arg with References = r :: arg.References } rest
  -    | Status "--stacktrace" v :: rest -> parse { arg with StackTrace = v } rest
  +    | Status "--stacktrace" v :: rest -> parse { arg with StackTrace = boolToOptionStatus v } rest
       | ("--help" | "-h") :: rest -> parse { arg with Help = true } rest
       | query :: rest ->
         let q =
  
positive.code:   Targets: string list
    References: string list
    SearchOptions: SearchOptions
    StackTrace: bool
    Help: bool
  }
  
  [<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  module Args =
    let empty = { Query = None; Targets = []; References = []; SearchOptions = SearchOptions.defaultOptions; StackTrace = false; Help = false }
  
    let (|Status|_|) (name: string) (str: string) =
      if str.StartsWith(name) then
  
negative.code:     | "#q" -> arg
      | OptionSetting "#strict" StrictQueryVariable arg.SearchOptions newOpt -> loop client { arg with SearchOptions = newOpt }
      | OptionSetting "#similarity" SimilaritySearching arg.SearchOptions newOpt -> loop client { arg with SearchOptions = newOpt }
      | OptionSetting "#stacktrace" StackTrace arg newArg -> loop client newArg
      | query ->
        try
          searchAndShowResult client query arg.SearchOptions
        with ex ->
          match arg.StackTrace with
          | Enabled -> printfn "%A" ex
          | Disabled -> printfn "%s" ex.Message
        loop client arg
  
  let helpMessage = """usage: FSharpApiSearch.Console.exe <query> <options>
  