protocol (2016 rework)