It works now. Implemented as a revised protocol. I’m going to change this back into a category now that I have the structure figured out. It’s silly to have both protocol properties optional and run so many checks on them, better to have them as default property values on all VC’s.