DelegateProtocol is weak-referenced again