websockets considered
code formatting rules adapted