anchor.diff:  
       let rec loop origTokens newTokens = 
           match origTokens, newTokens with 
  -        | (Marked(Token origTok, origTokText, _) :: moreOrigTokens),  _ 
  +        | (Marked(Token origTok, _, _) :: moreOrigTokens),  _ 
                 when origTok.CharClass = TokenCharKind.WhiteSpace && origTok.ColorClass <> TokenColorKind.InactiveCode 
                      && origTok.ColorClass <> TokenColorKind.PreprocessorKeyword ->
                 Debug.WriteLine "dropping whitespace from orig tokens" 
                 loop moreOrigTokens newTokens 
   
   
  -        | (Marked(EOL, origTokText, _) :: moreOrigTokens),  _ ->
  +        | (Marked(EOL, _, _) :: moreOrigTokens),  _ ->
                 Debug.WriteLine "dropping newline from orig tokens" 
                 loop moreOrigTokens newTokens 
   
  
positive.code:              | Token ti when !inWhiteSpaceAtStartOfLine && ti.CharClass = TokenCharKind.WhiteSpace ->
                    // Whitespace at start of line
                    yield Marked(tio,tt,NotApplicable)
               | Token ti ->
                    // Some other token on a line
                    inWhiteSpaceAtStartOfLine := false
                    yield Marked(tio,tt,NotApplicable)
  
negative.code: 
  let (|PreprocessorKeywordToken|_|) requiredText t = 
      match t with
      | Marked(Token origTok, origTokText, _) 
          when origTok.ColorClass = TokenColorKind.PreprocessorKeyword && origTokText = requiredText -> 
          Some origTokText
      | _ -> None
  
  let (|InactiveCodeToken|_|) t = 
      match t with
      | Marked(Token origTok, origTokText, _) 
          when origTok.ColorClass = TokenColorKind.InactiveCode  -> Some origTokText
      | _ -> None
  
  let (|LineCommentToken|_|) wantStickyLeft t = 
      match t with
      | Marked(Token origTok, origTokText, lcs) 
          when (not wantStickyLeft || (lcs = StickyLeft)) && 
               origTok.CharClass = TokenCharKind.LineComment -> Some origTokText
      | _ -> None
  
  let (|BlockCommentToken|_|) t = 
      match t with
      | Marked(Token origTok, origTokText, _) when origTok.CharClass = TokenCharKind.Comment -> 
          Some origTokText
      | _ -> None
  
  