All delegate properties should use a weak reference to avoid retain cycles.
All delegate properties should use a weak reference to avoid retain cycles.