anchor.diff:    {stop, Reason :: term()} | ignore).
   init([]) ->
     em_logger:info("Init commands manager"),
  -  Cache = ets:new(device_state, [set, private, {keypos, 2}]),
  -  {ok, #state{cache = Cache}}.
  +  {ok, #state{}}.
   
   %%--------------------------------------------------------------------
   %% @private
  
positive.code: 
  -define(SERVER, ?MODULE).
  
  -record(state, {cache}).
  
  %%%===================================================================
  %%% API
  %%%===================================================================
  -spec(get() ->
    {ok, [#device_state{}]} | {error, string()}).
  get() ->
    gen_server:call(?SERVER, {get}).
  
  -spec(get(DeviceId :: integer()) ->
    {ok, DeviceState :: #device_state{}} | {error, string()}).
  get(DeviceId) ->
    gen_server:call(?SERVER, {get, DeviceId}).
  
  -spec(link(DeviceState :: #device_state{}) ->
    {ok, DeviceState :: #device_state{}} | {error, string()}).
  link(DeviceState) ->
    gen_server:call(?SERVER, {link, DeviceState}).
  
  -spec(unlink(DeviceState :: #device_state{}) ->
    {ok, DeviceState :: #device_state{}} | {error, string()}).
  unlink(DeviceState) ->
    gen_server:call(?SERVER, {unlink, DeviceState}).
  
  -spec(execute(Command :: #command{}) ->
    {ok, Command :: #command{}} | {error, string()}).
  execute(Command) ->
  
negative.code:   {noreply, NewState :: #state{}, timeout() | hibernate} |
    {stop, Reason :: term(), Reply :: term(), NewState :: #state{}} |
    {stop, Reason :: term(), NewState :: #state{}}).
  handle_call({execute, Command}, _From, State) ->
    do_execute_command(State, Command);
  handle_call(_Request, _From, State) ->
  