anchor.diff:                          |> Seq.iter (fun edge -> tokensList.Add <| tokenToTreeNode edge.Tag)
                   )
   
  -            lexingFinished.Trigger(new LexingFinishedArgs<'node>(tokensList, lang))
  +            lexingFinished.Trigger(new LexingFinishedArgs<'node>(tokensList, lang, drawGraph))
   
       let processLang graph addLError addPError =
   //        let tokenize g =
  
positive.code:     let prepareToHighlighting (graphOpt : ParserInputGraph<'token> option) tokenToTreeNode = 
          if graphOpt.IsSome
          then
              let tokensList = new ResizeArray<_>()
  
              let inGraph = graphOpt.Value 
              inGraph.TopologicalSort()
              |> Seq.iter 
                  (fun vertex -> 
  
negative.code: open YC.FST.GraphBasedFst
  open YC.FSA.FsaApproximation
  open YC.FSA.GraphBasedFsa
  open System.Collections.Generic
  
  type TreeGenerationState<'node> = 
      | Start
      | InProgress of 'node * int list
      | End of 'node
      
      //add typegraph
  type DrawingGraph (vertices : IEnumerable<int>, edges : List<TaggedEdge<int, string>>) =
      member this.Vertices = vertices
      member this.Edges = edges
  
  type LexingFinishedArgs<'node> (tokens : ResizeArray<'node>, lang:string, drawGraph : DrawingGraph) =
       inherit System.EventArgs()
       member this.Tokens = tokens
       member this.Lang = lang
       member this.Graph = drawGraph
  
  type ParsingFinishedArgs(lang:string) = 
      inherit System.EventArgs()
      member this.Lang = lang
  
  exception LexerError of string*obj
  
  