public void OnUserListReceived(List <ChannelUser> userList) { for (int i = 0; i < userList.Count; i++) { ChannelUser user = userList[i]; var existingUser = users.Find(user.IRCUser.Name); if (existingUser == null) { users.Add(user.IRCUser.Name, user); } else if (IsChatChannel) { if (existingUser.IsAdmin != user.IsAdmin) { existingUser.IsAdmin = user.IsAdmin; users.Reinsert(user.IRCUser.Name); } } } UserListReceived?.Invoke(this, EventArgs.Empty); }