Also add ProtocolInfo
First refactoring steps