anchor.diff:      for v in inputFstLexer.InitState do
           let stt = new StateInfo<_>(v, new ResizeArray<_>(), new ResizeArray<_>(), v, 0, 0, Unchecked.defaultof<'br>)
           bfs v stt
  -
  -//    let actions = [|(fun lb -> printfn lb.dsfs ; Some NUM(1) ); (fun lb -> None); (fun x -> x*2)|]
  -//        
  -//    let lb = 2
  -//    let tok = actions.[1] lb
  -//    let edg = new Edg(lb._form,tok,lb._to)
  -//    lb.Reset
  -//    lb.Add ch
       
       let final = new ResizeArray<_>()
       for edge in inputFstLexer.Edges do
  
positive.code:                             idF := match v.Tag.OutSymb with
                                      | Smbl x -> x
                                      | x -> failwith "Unexpected symbol in function calculation:%A" x 
                              curStt.Positions.Add(new Position<_>(curStt.start_offset, curStt.cur_offset, curStt.curBr)) 
                              let tok = actions.[!idF] curStt
                              //save := false
                              edges.Add(new ParserEdge<_>(curStt.StartV, curStt.EndV, tok)) 
                              printfn 
                                  "startV %i string %s" 
  
negative.code:     let visited = ResizeArray.init (!maxV + 1) (fun _ -> false)
      let edges = new ResizeArray<_>()
      let saved = ref false
  
      let bfs vertex (stt: StateInfo<_>) =
          let queueV = new Queue<_>()
  