internal static void OnVerified(VerifiedEventArgs ev)
        {
            Player dPlayer = ev.Player.GetPlayer() ?? new Collections.Player(
                ev.Player.RawUserId,
                ev.Player.AuthenticationType.ToString().ToLower(),
                ev.Player.Nickname
                );

            PlayerData.Add(ev.Player, dPlayer);

            if (dPlayer.Name != ev.Player.Nickname)
            {
                dPlayer.Name = ev.Player.Nickname;
                dPlayer.Save();
            }

            if (!dPlayer.IsMuted() && MuteHandler.QueryPersistentMute($"{dPlayer.Id}@{dPlayer.Authentication}"))
            {
                MuteHandler.RevokePersistentMute($"{dPlayer.Id}@{dPlayer.Authentication}");
            }
            if (!WatchListCollection.Exists(p => p.Target == ev.Player.GetPlayer()))
            {
                return;
            }
            foreach (Exiled.API.Features.Player staffer in Exiled.API.Features.Player.List.Where(ply => ply.RemoteAdminAccess))
            {
                staffer.Broadcast(Plugin.Singleton.Config.Translation.WatchlistStaffersBroadcastJoin.Duration, Plugin.Singleton.Config.Translation.WatchlistStaffersBroadcastJoin.Content.Replace("{player}", $"{ev.Player.Nickname} ({ev.Player.UserId})").Replace("{reason}", WatchListCollection.Find(ply => ply.Target == ev.Player.GetPlayer()).Last().Reason), global::Broadcast.BroadcastFlags.Normal, true);
            }
            if (dPlayer.IsBanned())
            {
                ev.Player?.Disconnect(Plugin.Singleton.Config.Translation.BanTranslation.PlayerBanMessage.Replace("{reason}", BanCollection.Find(b => b.Target == dPlayer).Last().Reason));
            }
        }
        /// <summary>
        /// Check if exists a specified punish.
        /// </summary>
        /// <param name="player">The <see cref="Collections.Player"/> player.</param>
        /// <param name="type"> the <see cref="Enums.PunishType"/>.</param>
        /// <param name="id"> the punish id.</param>
        /// <param name="server"> the server port.</param>
        /// <returns> true if the punish exists, false if not.</returns>
        public static bool CheckId(Collections.Player player, PunishType?type, int id, int server)
        {
            switch (type)
            {
            case PunishType.Ban:
                return(BanCollection.Exists(ban => ban.Target == player && ban.BanId == id && ban.Server == server));

            case PunishType.Kick:
                return(KickCollection.Exists(kick => kick.Target == player && kick.KickId == id && kick.Server == server));

            case PunishType.Mute:
                return(MuteCollection.Exists(mute => mute.Target == player && mute.MuteId == id && mute.Server == server));

            case PunishType.Warn:
                return(WarnCollection.Exists(warn => warn.Target == player && warn.WarnId == id && warn.Server == server));

            case PunishType.SoftWarn:
                return(SoftWarnCollection.Exists(sw => sw.Target == player && sw.SoftWarnId == id && sw.Server == server));

            case PunishType.SoftBan:
                return(SoftBanCollection.Exists(sb => sb.Target == player && sb.SoftBanId == id && sb.Server == server));

            case PunishType.WatchList:
                return(WatchListCollection.Exists(wl => wl.Target == player && wl.WatchListId == id && wl.Server == server));

            default: return(false);
            }
        }