anchor.diff:  
   type GotoDeclarationHandler() =
       inherit CommandHandler()
  +
  +    override x.Update (ci:CommandInfo) =
  +        let doc = IdeApp.Workbench.ActiveDocument
  +        let editor = doc.Editor
  +        //disable if theres no editor or filename
  +        if editor = null || editor.FileName = FilePath.Null
  +        then ci.Enabled <- false
  +        else
  +            match doc.ParsedDocument.TryGetAst() with
  +            | Some ast ->
  +                match Refactoring.getSymbolAndLineInfoAtCaret ast editor with
  +                //set bypass as we cant jump
  +                | _lineinfo, Some sym when not (Refactoring.canJump sym editor.FileName doc.Project.ParentSolution) ->
  +                    ci.Bypass <- true
  +                    ci.Enabled <- false
  +                | _lineinfo, _symbol -> ()
  +            //disable for no ast
  +            | None -> ci.Enabled <- false
   
       override x.Run (_data) =
           let doc = IdeApp.Workbench.ActiveDocument
  
positive.code:                 | [] -> ()
                  | [location] ->
                      ainfo.Add (IdeApp.CommandService.GetCommandInfo (RefactoryCommands.GotoDeclaration),
                                                                       Action (fun () -> FSharpRenameRefactoring(doc.Editor, doc).JumpToDeclaration (lastIdent, symbolUse, location) ))
                  | locations ->
                      let declSet = CommandInfoSet (Text = GettextCatalog.GetString ("_Go to Declaration"))
                      for location in locations do
        
                          let commandText = String.Format (GettextCatalog.GetString ("{0}, Line {1}"), formatFileName location.FileName, location.StartLine)
                          declSet.CommandInfos.Add (commandText, Action (fun () -> FSharpRenameRefactoring(doc.Editor, doc).JumpTo (lastIdent, symbolUse, location)))
                          |> ignore
                      ainfo.Add (declSet)
              
  
negative.code:         let symbol = ast.GetSymbolAtLocation lineInfo |> Async.RunSynchronously
          lineInfo, symbol
  
  type FSharpRefactoring(editor:TextEditor, ctx:DocumentContext) =
  
      member x.Rename (lastIdent, symbol:FSharpSymbolUse) =         
          let symbols = 
  