Restructured protocol class parts.