anchor.diff:              memoize
                   (fun tables parserState ->
   #if DEBUG
  -                    printfn "\n Climb \n  parserState=%A\n gotoset: \n state = %A \n symbol = %A \n" parserState parserState.statesSet parserState.inpSymbol
  -
  +                    printfn "\n Climb \n  parserState=%A\n gotoset: \n state = %A \n symbol = %A \n" 
  +                            parserState parserState.statesSet parserState.inpSymbol
   #endif
                       let gotoSet = goto tables parserState.statesSet parserState.inpSymbol
   #if DEBUG
                       printfn "\n goto result = %A \n" gotoSet
  -
   #endif
                       if gotoSet.IsEmpty
                       then
  
positive.code:                                         }
                                          )]
                              let climbRes = 
                                  let fl = Set.filter (isFinaleState >> not) parserState.statesSet
                                  (climb()) 
                                      tables 
                                          {
  
negative.code:             Set.map
                  (fun rule -> 
                      {
                          state =  {state with position = rule.FromStateID}
                          symbol = 
                              match rule.Symbol with
                              | DSymbol (s) -> s
  