// Token: 0x06001099 RID: 4249 RVA: 0x00043F20 File Offset: 0x00042120
        public RecipientInfoCacheEntry LookUp(string number)
        {
            if (this.CacheEntries == null || this.CacheEntries.Count == 0)
            {
                return(null);
            }
            E164Number number2;

            if (!E164Number.TryParse(number, out number2))
            {
                return(null);
            }
            foreach (RecipientInfoCacheEntry recipientInfoCacheEntry in this.CacheEntries)
            {
                E164Number number3;
                if (!E164Number.TryParse(recipientInfoCacheEntry.RoutingAddress, out number3))
                {
                    this.Tracer.TraceDebug <string>((long)this.GetHashCode(), "There's an invalid phone number in the SMS recipient cache of {0}'s mailbox", this.MailboxSession.MailboxOwner.MailboxInfo.DisplayName);
                }
                else if (SmsRecipientInfoCache.NumbersMatch(number2, number3))
                {
                    return(recipientInfoCacheEntry);
                }
            }
            return(null);
        }
        // Token: 0x0600109B RID: 4251 RVA: 0x00044010 File Offset: 0x00042210
        private bool AddParticipant(Participant participant)
        {
            E164Number e164Number;

            if (!E164Number.TryParse(participant.EmailAddress, out e164Number))
            {
                return(false);
            }
            for (int i = 0; i < this.CacheEntries.Count; i++)
            {
                RecipientInfoCacheEntry recipientInfoCacheEntry = this.CacheEntries[i];
                E164Number number;
                if (!E164Number.TryParse(recipientInfoCacheEntry.RoutingAddress, out number))
                {
                    this.Tracer.TraceDebug <string>((long)this.GetHashCode(), "There's an invalid phone number in the SMS recipient cache of {0}'s mailbox", this.MailboxSession.MailboxOwner.MailboxInfo.DisplayName);
                }
                else if (SmsRecipientInfoCache.NumbersMatch(e164Number, number))
                {
                    this.CacheEntries[i] = SmsRecipientInfoCache.CreateCacheEntry(participant, e164Number.Number);
                    return(true);
                }
            }
            if (this.CacheEntries.Count < 150)
            {
                this.CacheEntries.Add(SmsRecipientInfoCache.CreateCacheEntry(participant, e164Number.Number));
                return(true);
            }
            int index = 0;

            for (int j = 1; j < this.CacheEntries.Count; j++)
            {
                if (this.CacheEntries[j].DateTimeTicks < this.CacheEntries[index].DateTimeTicks)
                {
                    index = j;
                }
            }
            this.CacheEntries[index] = SmsRecipientInfoCache.CreateCacheEntry(participant, e164Number.Number);
            return(true);
        }