rewrote sovietProtocol to be oo