The only thing about putting this here is that it gets set every time in the recursion. I would maybe override the setter for `subviewsHighlighted` so that it sets the ivar then calls `[self setSubviewsHighlighted:subviewsHighlighted forView:self];`. And then just set the property from within the `tracking` methods rather than passing the view in - the setter will kick off the recursive function.