anchor.diff:  %%--------------------------------------------------------------------
   -spec state_get(Plugin :: atom(), Key :: term()) -> Value :: term() | undefined.
   state_get(Plugin, Key) ->
  -    case ets:lookup(Plugin, Key) of
  +    case ets:lookup(state_table_name(Plugin), Key) of
           [{_, Value}] -> Value;
           []           -> undefined
       end.
  
positive.code:     Timeout :: non_neg_integer() | infinity.
  init([Plugin, PluginArgs, LoadMemorySize]) ->
      process_flag(trap_exit, true),
      ets:new(Plugin, [named_table, public, set, {read_concurrency, true}]),
      {ok, InitAns} = Plugin:init(PluginArgs),
      [ets:insert(Plugin, Entry) || Entry <- maps:to_list(InitAns)],
      ?debug("Plugin ~p initialized with args ~p and result ~p", [Plugin, PluginArgs, InitAns]),
      {ok, #host_state{plugin = Plugin, load_info = {[], [], 0, LoadMemorySize}}}.
  
  
negative.code: %%--------------------------------------------------------------------
  -spec state_to_map(Plugin :: atom()) -> plugin_state().
  state_to_map(Plugin) ->
      maps:from_list(ets:tab2list(state_table_name(Plugin))).
  
  
  %%%===================================================================
  