Refactoring & protocol mods