We could simplify the proxying of those calls to some private accessor, i.e. `- (void)RI_callTrackersConformToProtocol:(protocol)protocol selector:(SEL)selector arguments:(NSArray *)args;` which then checks for trackers and iterates over them as usual, and on conforming calls ```objc
NSMethodSignature *signature = [[tracker class] instanceMethodSignatureForSelector:selector];
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];
[invocation setSelector:selector];
for (NSUInteger idx = 0; idx < arguments.count; idx++) {
   [invocation setArgument:&arguments[idx] forIndex:idx];
}
[invocation setTarget:tracker];
```