Model Protocol base types refactoring