protected override IEnumerable <AnalyzerTreeNodeData> FetchChildren(CancellationToken ct)
        {
            AddTypeEquivalentTypes(Context.DocumentService, analyzedTypes[0], analyzedTypes);
            foreach (var declType in analyzedTypes)
            {
                var analyzedAccessor = GetVirtualAccessor(analyzedEvent.AddMethod) ?? GetVirtualAccessor(analyzedEvent.RemoveMethod) ?? GetVirtualAccessor(analyzedEvent.InvokeMethod);
                if (analyzedAccessor?.Overrides is IList <MethodOverride> overrides && overrides.Count > 0)
                {
                    bool matched = false;
                    foreach (var o in overrides)
                    {
                        if (o.MethodDeclaration.ResolveMethodDef() is MethodDef method && (method.IsVirtual || method.IsAbstract))
                        {
                            if (method.DeclaringType.Events.FirstOrDefault(a => (object?)a.AddMethod == method || (object?)a.RemoveMethod == method || (object?)a.InvokeMethod == method) is EventDef eventDef)
                            {
                                matched = true;
                                yield return(new EventNode(eventDef)
                                {
                                    Context = Context
                                });
                            }
                        }
                    }
                    if (matched)
                    {
                        yield break;
                    }
                }

                foreach (var eventDef in TypesHierarchyHelpers.FindBaseEvents(analyzedEvent, declType))
                {
                    var anyAccessor = GetVirtualAccessor(eventDef.AddMethod) ?? GetVirtualAccessor(eventDef.RemoveMethod) ?? GetVirtualAccessor(eventDef.InvokeMethod);
                    if (anyAccessor is null || !(anyAccessor.IsVirtual || anyAccessor.IsAbstract))
                    {
                        continue;
                    }
                    yield return(new EventNode(eventDef)
                    {
                        Context = Context
                    });

                    yield break;
                }
            }
        }