Refactored more
Fix protocol