public override string Identified(string nick)
        {
            string id;

            if (NickCache.TryGetValue(nick, out id))
            {
                if ((id != null) || (lastCheck.AddSeconds(10) > DateTime.Now))
                {
                    return(id);
                }
            }

            lastCheck = DateTime.Now;
            var nsir = new NickServIdentifyRequest(nick, Bot);

            if (NickCache.ContainsKey(nick))
            {
                NickCache.Remove(nick);
            }

            lock (nsir)
            {
                if (Monitor.Wait(nsir, MaxWaitTime))
                {
                    lock (NickCache)
                    {
                        if (!NickCache.ContainsKey(nick))
                        {
                            NickCache.Add(nick, nsir.Identity);
                        }
                    }
                }
                else
                {
                    return(null);
                }
            }
            return(nsir.Identity);
        }
        public override string Identified(string nick)
        {
            string id;
            if (NickCache.TryGetValue(nick, out id))
            {
                if ((id != null) || (lastCheck.AddSeconds(10) > DateTime.Now))
                {
                    return id;
                }
            }

            lastCheck = DateTime.Now;
            var nsir = new NickServIdentifyRequest(nick, Bot);

            if (NickCache.ContainsKey(nick))
            {
                NickCache.Remove(nick);
            }

            lock (nsir)
            {
                if (Monitor.Wait(nsir, MaxWaitTime))
                {
                    lock (NickCache)
                    {
                        if (!NickCache.ContainsKey(nick))
                            NickCache.Add(nick, nsir.Identity);
                    }
                }
                else
                {
                    return null;
                }
            }
            return nsir.Identity;
        }