fully working clients and servers