anchor.diff:                          do! consumeBuffer 1
                       return! produceToken dfa groups
       }
  +
  +    open StateResult
   
       let parseLALR lalrStates token = state {
           let (StateResult impl) = sresult {
  
positive.code:                     | None -> impl newPos dfa lastAccept lastAccPos xs
                  | None ->
                      match lastAccept with
                      | Some x -> input |> getLookAheadBuffer lastAccPos |> newToken x |> Ok
                      | None -> input |> getLookAheadBuffer 1u |> Core.Error
          impl 1u initialState None 0u input
  
      let inline tokenizeDFAForDummies dfa state =
          tokenizeDFA dfa state.CurrentPosition state.InputStream
  
      open StateResult
  
      let rec produceToken dfa groups = sresult {
          let consumeBuffer = consumeBuffer >> liftState
          let! x = get <!> (tokenizeDFAForDummies dfa >> liftResult) >>= id
          let! groupStackTop = getOptic ParserState.GroupStack_ <!> List.tryHead
          let nestGroup =
              match x.Symbol with
  
negative.code:             match x with
              | [] ->
                  match lastAccept with
                  | Some x -> input |> getLookAheadBuffer lastAccPos |> newToken x
                  | None -> newToken EndOfFile ""
              | x :: xs ->
                  let newDFA =
                      trans.TryFind(currState)
  