Work-in-progress implementation of Protocol