anchor.diff:  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
  -
  -type LexingFinishedArgs<'node> (tokens : ResizeArray<'node>, lang:string) =
  +    
  +    //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
   
  
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:                         |> Seq.iter (fun edge -> tokensList.Add <| tokenToTreeNode edge.Tag)
                  )
  
              lexingFinished.Trigger(new LexingFinishedArgs<'node>(tokensList, lang, drawGraph))
  
      let processLang graph addLError addPError =
  //        let tokenize g =
  