anchor.diff:                                  if isEq curSymbol oe then
                                       res <- Some oe  
                                   else
  -                                    containsError !currentVertexInInput !structures.CurrentLabel !currentGSSNode !structures.CurrentN !currentPath
  +                                    let p = oe :: !currentPath
  +                                    containsError !currentVertexInInput !structures.CurrentLabel !currentGSSNode !structures.CurrentN p
                               res
                           match curEdge with
                           | Some edge ->
  
positive.code:                                 structures.CurrentN := structures.GetNodeP findSppfNode findSppfPackedNode structures.Dummy !structures.CurrentLabel !structures.CurrentN !structures.CurrentR
                              condition := false
                          | 
                              None _ -> 
                                  containsError !currentVertexInInput !structures.CurrentLabel !currentGSSNode !structures.CurrentN !currentPath
                                  
                      else 
                          let getIndex nTerm term = 
  
negative.code:                 else
                      let curRight =  sppfNodes.Item (int !structures.CurrentN) 
                      let r = curRight.getExtension ()
                      if Array.exists ((=) r) finalExtensions then finalPaths.Add !currentPath
                      structures.FinalMatching
                          curRight 
                          parser.LeftSide.[parser.StartRule]
  