anchor.diff:      ok.
   
   %% ===================================================================
  -%% Interanl functions
  +%% Internal functions
   %% ===================================================================
   
   new_room_name() ->
  
positive.code: 
  -record(state, {room=undefined}).
  
  %% ===================================================================
  %% Websocket API
  %% ===================================================================
  
  init({tcp, http}, Req, Opts) ->
      {upgrade, protocol, cowboy_websocket}.
  
  websocket_init(_TransportName, Req, _Opts) ->
  
negative.code: 
  relay_message(Msg, Room) ->
      [Pid ! <<Msg/binary>> || Pid <- pg2:get_members(Room) -- [self()]].
  
  
  %% ===================================================================
  %% Tests
  %% ===================================================================
  
  -ifdef(TEST).
  
  new_room_name_type_test() ->
      Name = new_room_name(),
      ?assert(is_binary(Name)).
  
  new_room_name_unique_test() ->
      Name = new_room_name(),
      Other = new_room_name(),
      ?assertNotEqual(Name, Other).
  
  -endif.