anchor.diff:                      let newList = new ResizeArray<int<nodeMeasure>>()
                       newList.Add(z)
                       setP.Add(vertexKey, newList)
  -                let outEdges = edges.[packVertex slots.[ int u.Label] u.Level]
  +                let outEdges = edges.[slots.[ int u.Label], u.Level]
                   edgesReadCount := !edgesReadCount + 1
                   for edge in outEdges do
                       let sppfNodeOnEdge = edge.Key
  
positive.code:             let k = getRightExtension rightExtension
              let rule = getRule label
              let d =
                  let contains, d1 = packedNodes.TryGetValue i
                  if contains
                  then
                      let contains, d2 = d1.TryGetValue j
                      if contains
  
negative.code:         let packedNodesX = Array.zeroCreate<int> (inputLength + 1)
          let packedNodesY = Array.zeroCreate<int> (inputLength + 1)
          let packedNodesZ = Array.zeroCreate<int> (inputLength + 1)
          let packedNodes = Array.zeroCreate<Dictionary<int, Dictionary<int, Dictionary<int<labelMeasure>, int<nodeMeasure>>>>> (inputLength + 1)
  
          let nonTerminalNodesReadCount = ref 0
          let nonTerminalNodesWriteCount = ref 0 
          let nonterminalNodesX = Array.zeroCreate parser.NonTermCount
          let nonterminalNodesY = Array.zeroCreate (inputLength + 1)
          let nonterminalNodesZ = Array.zeroCreate (inputLength + 1)        
          let nonTerminalNodes = Array.zeroCreate<Dictionary<int, Dictionary<int, int<nodeMeasure>>>> parser.NonTermCount
          //let nonTerminalNodes = Array3D.zeroCreate<int<nodeMeasure>> parser.NonTermCount (inputLength + 1) (inputLength + 1)
  
  
          let intermidiateNodesReadCount = ref 0
  