Lots of code for roles, including form building requirements.