anchor.diff:  -record(state, {socket :: port()}).
   -type state() :: #state{}.
   
  --record(metadata, {messageId      = 0 :: integer(),
  -                   userTime       = 0 :: integer(),
  -                   userId         = 0 :: integer(),
  +-record(metadata, {message_id     = 0 :: integer(),
  +                   user_time      = 0 :: integer(),
  +                   user_id        = 0 :: integer(),
                      socket = undefined :: port() | undefined,
                      ip     = undefined :: inet:ip_address() | undefined,
                      port   = undefined :: integer() | undefined}).
  
positive.code:   ok.
  
  %% PING
  handle_message(ping, _Ignored, Metadata = #metadata{messageId = MessageId,
                                                      userTime  = UserTime}) ->
    Flags = set_flags([ping, success]),
    send(<<Flags:?UCHAR,
           MessageId:?UINT,
           UserTime:?USHORT>>,
         Metadata);
  %% INFO REQUESTS
  handle_message(info, <<>>, Metadata = #metadata{messageId = MessageId,
                                                  userTime  = UserTime}) ->
    AllGames =
      [spts_games:to_binary(Game, reduced) || Game <- spts_core:all_games()],
  
  
negative.code:                <<GameId:?USHORT,
                   NameSize:?UCHAR,
                   Name:NameSize/binary>>,
                 Metadata = #metadata{message_id = MessageId,
                                      user_time  = UserTime}) ->
    try
      Address = {Metadata#metadata.ip, Metadata#metadata.port},
      SerpentId = spts_hdp_game_handler:user_connected(Name, Address, GameId),
  