anchor.diff:              | _ -> List.rev acc
           loop (queryLexState source defines line) []
   
  -      let getCorrectRightCol (token: TokenInformation) = token.LeftColumn + token.FullMatchedLength
         let isIdentifier t = t.CharClass = TokenCharKind.Identifier
         let isOperator t = t.ColorClass = TokenColorKind.Operator
  +
  +      let (|GenericTypeParameterPrefix|StaticallyResolvedTypeParameterPrefix|Other|) token =
  +          match token.TokenName with
  +          | "QUOTE" -> GenericTypeParameterPrefix
  +          | "INFIX_AT_HAT_OP" -> StaticallyResolvedTypeParameterPrefix
  +          | name -> Other name
   
         // Operators: Filter out overlapped oparators (>>= operator is tokenized as three distinct tokens: GREATER, GREATER, EQUALS. 
         // Each of them has FullMatchedLength = 3. So, we take the first GREATER and skip the other two).
  
positive.code: ﻿namespace FSharp.CompilerBinding
  open System
  open System.IO
  open System.Diagnostics
  open Microsoft.FSharp.Compiler
  open Microsoft.FSharp.Compiler.SourceCodeServices
  
  // --------------------------------------------------------------------------------------
  /// Wraps the result of type-checking and provides methods for implementing
  
negative.code:   | UpdateAndGetTypedInfo of ParseRequest * AsyncReplyChannel<TypedParseResult>
    | GetTypedInfoDone of AsyncReplyChannel<TypedParseResult>
  
  type SymbolKind =
      | Ident
      | Operator
      | GenericTypeParameter
      | StaticallyResolvedTypeParameter
      | Other
  
  type Symbol =
      { Kind: SymbolKind
        Line: int
        LeftColumn: int
        RightColumn: int
        Text: string }
      member x.Range = x.Line, x.LeftColumn, x.Line, x.RightColumn
  
  type DraftToken =
      { Kind: SymbolKind
        Token: TokenInformation 
        RightColumn: int }
      static member Create kind token = 
          { Kind = kind; Token = token; RightColumn = token.LeftColumn + token.FullMatchedLength - 1 }
      member x.IsOperator = match x.Kind with Operator -> true | _ -> false
  
  /// Provides functionality for working with the F# interactive checker running in background
  type LanguageService(dirtyNotify) =
  