refactor, changed protocol id