anchor.diff:              let result = reader state
               result, state
   
  -(*
  +
   /// <summary>
   /// </summary>
   [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  
positive.code: [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  module ReaderState =
      //
      let dummy () = ()
  
  
  /// <summary>
  /// </summary>
  [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  
negative.code: [<RequireQualifiedAccess; CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>]
  module State =
      //
      [<CompiledName("Run")>]
      let inline run (stateFunc : StateFuncIndexed<'S1, 'S2, 'T>) initialState =
          stateFunc initialState
      
      //
      [<CompiledName("Evaluate")>]
      let evaluate (stateFunc : StateFuncIndexed<'S1, 'S2, 'T>) initialState =
          // "Run" the state function, starting with the initial state.
          // Discard the final state value and return the final result value.
          fst <| stateFunc initialState
  
      //
      [<CompiledName("Execute")>]
      let execute (stateFunc : StateFuncIndexed<'S1, 'S2, 'T>) initialState =
          // "Run" the state function, starting with the initial state.
          // Discard the final result value and return the final state value.
          snd <| stateFunc initialState
  
      //
      [<CompiledName("GetState")>]
      let inline getState (state : 'State) =
          state, state
  
      //
      [<CompiledName("SetState")>]
      let inline setState (state : 'State) =
          fun (_ : 'State) -> ((), state)
  
      //
      [<CompiledName("BindChoice")>]
      let inline bindChoice (k : 'T -> StateFuncIndexed<'S2, 'S3, 'U>) (m : ProtectedStateFuncIndexed<_,_,_,_>) =
          fun (state : 'S1) ->
              match m state with
  