anchor.diff:              // Determine the id of the state we transition to when this character is the input.
               let targetStateId =
                   outTransitions
  -                |> Map.tryFind (char c)
  +                |> HashMap.tryFind (char c)
                   // If no transition edge was found for this character, return the
                   // sentinel value to indicate there's no transition.
                   |> Option.fill (tag <| int sentinelValue)
  
positive.code:         // Not all DFA states have out-transitions; for those states, we return an empty map.
          match TagMap.tryFind ruleDfaStateId ruleDfaTransitions.AdjacencyMap with
          | None ->
              Map.empty
          | Some targetMap ->
              // "Pivot" the target map to get a map of char -> target-state.
              // We also map the target-state-ids from their id within this rule's DFA to their id within the combined DFA
              // (i.e., the merged DFA containing the DFAs for all of the defined rules).
              (Map.empty, targetMap)
              ||> TagMap.fold (fun outTransitions targetStateRuleDfaStateId edgeChars ->
                  // This DFA state's id within the combined DFA.
                  let targetStateCombinedStateId = targetStateRuleDfaStateId + baseDfaStateId
  
negative.code:                 //          overall compilation time is spent within the closure below.
                  (outTransitions, edgeChars)
                  ||> CharSet.fold (fun outTransitions c ->
                      HashMap.add c targetStateCombinedStateId outTransitions))
  
  
  //
  