Made an independent copy of ParserProtocol