anchor.diff:  		{error, Reason} = Error ->
   			{stop, Error, State}
   	end.
  +
  +%% handle_info({'DOWN', Ref, process, _Pid, _}, #state{game_event_pid = GameEventPid, 
  +%% 													game_id = GameId, 
  +%% 													players = Players} = State) ->
  +%% 	{ok, GameEventPid} = gen_event:start_link(),
  +	
   
   %%====================================================================
   %% Internal functions
  
positive.code: 			{error, Reason}
  	end.
  
  player_ids(GameId) ->
  	MatchSpec = ets:fun2ms(fun({_, _, GmId, _} = GpAssoc) 
  								when GmId =:= GameId -> GpAssoc end),
  
negative.code: 		State = #state{game_event_pid = GameEventPid,
  					   game_id = GameId,
  					   players = Players}) ->
  	Player = find_player(PlayerId),
  	case remove_player(GameId, PlayerId) of
  		ok ->
  			gen_event:delete_handler(GameEventPid, {bc_game_event, PlayerId}, []),
  			UpdatedPlayers = dict:erase(PlayerId, Players),
  			gen_event:notify(GameEventPid, {player_quit, PlayerId, Player#player.handle}),
  			UpdatedState = State#state{players = UpdatedPlayers},
  			case pending_players_changed(GameId, UpdatedPlayers) of
  				{ok, quit} ->
  					gen_event:stop(GameEventPid),
  					{stop, quit, UpdatedState};
  				{ok, pending} ->
  					{next_state, pending, UpdatedState};
  				{error, Reason} = Error ->
  					gen_event:notify(GameEventPid, {game_error, Reason}),
  					gen_event:stop(GameEventPid),
  					{stop, Error, UpdatedState};
  				_ ->
  					{stop, illegal_state, UpdatedState}
  