more assertions turned into ProtocolError