protocol in text and code