Adding: playing with protocol concepts