anchor.diff:                  (Map.fold (fun ks k _ -> k::ks) [] state.Files)
       match parseCommand(Console.ReadLine()) with
       | Declarations ->
  -        Console.Error.WriteLine("Declarations not yet implemented")
  +        Console.WriteLine("ERROR: Declarations not yet implemented")
           // let decls = agent.GetDeclarations(opts)
           // for tld in decls do
           //   let (s1, e1), (s2, e2) = tld.Declaration.Range
  
positive.code:           Console.WriteLine("DONE: Background parsing started")
            main { state with Files = Map.add file lines state.Files }
          else
            Console.Error.WriteLine(sprintf "ERROR: File '%s' does not exist" file)
            main state
  
      | Project file ->
  
negative.code:         let file = Path.GetFullPath file
          if not (Map.containsKey file state.Files)
          then
            Console.WriteLine(sprintf "ERROR: File '%s' not parsed" file)
            Console.WriteLine("<<EOF>>")
          else
            let lines = state.Files.[file]
            if line >= lines.Length || line < 0 ||
               column > lines.[line].Length || column < 0
            then
              Console.WriteLine("ERROR: Position is out of range")
              Console.WriteLine("<<EOF>>")
            else
              let text = String.concat "\n" lines
              let opts = RequestOptions(agent.GetCheckerOptions(file, text, state.Project),
  