anchor.diff:                                  (curStt.AccumulatedString 
                                       |> ResizeArray.map (function | Smbl x -> x.ToString() | Eps -> "Eps" | Exclosure y -> y.ToString())
                                       |> String.concat "") 
  +                                    
                        
                           let so,co,br =
                               match v.Tag.InSymb with
  
positive.code:     let maxV = inputFstLexer.Vertices |> Seq.max |> ref
      let visited = ResizeArray.init (!maxV + 1) (fun _ -> false)
      let edges = new ResizeArray<_>()
  
      let bfs vertex (stt: StateInfo<_>) =
          let queueV = new Queue<_>()
          queueV.Enqueue(vertex,stt)
  
negative.code:                 for v in inputFstLexer.OutEdges(topV) do
                      if v.Tag.OutSymb = Eps
                      then
                          //добавляем информацию                       
                          let so,co,br =
                              match v.Tag.InSymb with
                              | Smbl (x,br) -> 
                                  if curStt.curBr = null || br = curStt.curBr
                                  then curStt.start_offset, curStt.cur_offset + 1, br
                                  else
                                      if !reduced = false then curStt.Positions.Add(new Position<_>(curStt.start_offset, curStt.cur_offset, br))
                                      if !flag = true then reduced := false
                                      0,1,br
                              | x -> failwith "Unexpected symbol in BR calculation:%A" x
                          let newStt = 
                              new StateInfo<_>(
  