Add Protocol

Refused to push before
Code Reformat