I think we need guards to prevent these setters being called after initialization - otherwise we lose the inherited PAs/funcs.