proper separation of protocol families