anchor.diff:          | [||] -> fileName
           | xs -> xs |> Array.last
   
  -    let tryGetValidDoc =
  +    let tryGetValidDoc() =
           let doc = IdeApp.Workbench.ActiveDocument
           if doc = null || doc.FileName = FilePath.Null || doc.ParsedDocument = null then None
           else Some doc
  
positive.code:                 |> ignore
  
              | Refactoring.SymbolDeclarationLocation.External docId ->
                  if (editor <> null) then
                      editor.RunWhenLoaded (fun () ->
                          //this is the assembly browser widget
                          let handler = editor.GetContent<MonoDevelop.Ide.Gui.Content.IOpenNamedElementHandler> ()
                          if handler <> null then handler.Open (docId))
              | _ -> ()    
  
                  
  
negative.code:         base.Update (ci)
            
      override x.Update (ainfo:CommandArrayInfo) =
          match tryGetValidDoc() with
          | None -> ()
          | Some doc ->
              if not (MDLanguageService.SupportedFileName (doc.FileName.ToString())) then ()
  