anchor.diff:      static member empty = { State.userName = None }
   
   [<EntryPoint>]
  -let main argv = 
  +let main argv =
       let socketio handlePackets = SocketIo(SocketIoConfig.empty, handlePackets).WebPart
   
       let mutable userCount = 0
  
positive.code:             socketio (handlePacket State.empty)
              GET >=> choose [
                  browseHome
              
                  path "/" >=> browseFileHome "index.html"
              ]
  
  
negative.code:                 | "stop typing" ->
                      socket.Broadcast ("stop typing", [{ TypingEvent.username = defaultArg state.userName "???" }])
                      state
                  | _ ->
                      logVerbose (sprintf "Unknown command: %s" cmd)
                      state
  
  