anchor.diff:               {stop, Reason :: term(), NewState :: #state{}}).
   handle_call({get}, _From, State) ->
       do_get_users(State);
  +handle_call({get, Id}, _From, State) ->
  +  do_get_user_by_id(State, Id);
   handle_call({create, User}, _From, State) ->
     do_create_user(State, User);
   handle_call({update, User}, _From, State) ->
  
positive.code: 
  do_get_users(State = #state{cache = Cache}) ->
      {reply, {ok, ets:tab2list(Cache)}, State}.
  
  do_create_user(State = #state{cache = Cache}, UserModel) ->
    case em_storage:create_user(UserModel) of
  
negative.code: -spec(get() -> {ok, [Rec :: #user{}]} | {error, string()}).
  get() ->
      gen_server:call(?SERVER, {get}).
  
  -spec(get(Id :: integer()) -> {ok, [Rec :: #user{}]} | {error, string()}).
  get(Id) ->
    gen_server:call(?SERVER, {get, Id}).
  
  -spec(create(User :: #user{}) -> {ok, #user{}} | {error, string()}).
  create(User) ->
  