// Token: 0x06001D4B RID: 7499 RVA: 0x00079FD7 File Offset: 0x000781D7
 internal static object CustomAttributeGetter(IPropertyBag propertyBag, ADPropertyDefinition filterMeatadata, ADPropertyDefinition filter, ADPropertyDefinition filterPropertyDefinition)
 {
     return(RecipientFilterHelper.InternalStringValuesGetter(propertyBag, filterMeatadata, filter, filterPropertyDefinition, "Microsoft.Exchange12.8f91d340bc0c47e4b4058a479602f94c:" + RecipientFilterHelper.ConditionalToCustomAttributeNameMap[filterPropertyDefinition] + "="));
 }
 // Token: 0x06001D4F RID: 7503 RVA: 0x0007A068 File Offset: 0x00078268
 internal static object StateOrProvinceGetter(IPropertyBag propertyBag, ADPropertyDefinition filterMeatadata, ADPropertyDefinition filter, ADPropertyDefinition filterPropertyDefinition)
 {
     return(RecipientFilterHelper.InternalStringValuesGetter(propertyBag, filterMeatadata, filter, filterPropertyDefinition, "Microsoft.Exchange12.8f91d340bc0c47e4b4058a479602f94c:StateOrProvincePrefix="));
 }
        // Token: 0x06001D41 RID: 7489 RVA: 0x00079B54 File Offset: 0x00077D54
        private static int GetPrecannedRecipientFilter(IPropertyBag propertyBag, ADPropertyDefinition filterMeatadata, ADPropertyDefinition filter, ADPropertyDefinition ldapFilter, bool validationOnly, List <QueryFilter> conditions)
        {
            WellKnownRecipientType?wellKnownRecipientType = (WellKnownRecipientType?)RecipientFilterHelper.IncludeRecipientGetter(propertyBag, filterMeatadata, filter);
            bool flag = wellKnownRecipientType == null || wellKnownRecipientType == WellKnownRecipientType.None;

            if (!flag && validationOnly)
            {
                return(1);
            }
            MultiValuedProperty <string> conditionVal = (MultiValuedProperty <string>)RecipientFilterHelper.DepartmentGetter(propertyBag, filterMeatadata, filter, null);

            if (!RecipientFilterHelper.MergeConditionFilter(conditionVal, ADOrgPersonSchema.Department, conditions, flag, validationOnly))
            {
                return(-1);
            }
            MultiValuedProperty <string> conditionVal2 = (MultiValuedProperty <string>)RecipientFilterHelper.CompanyGetter(propertyBag, filterMeatadata, filter, null);

            if (!RecipientFilterHelper.MergeConditionFilter(conditionVal2, ADOrgPersonSchema.Company, conditions, flag, validationOnly))
            {
                return(-1);
            }
            MultiValuedProperty <string> conditionVal3 = (MultiValuedProperty <string>)RecipientFilterHelper.StateOrProvinceGetter(propertyBag, filterMeatadata, filter, null);

            if (!RecipientFilterHelper.MergeConditionFilter(conditionVal3, ADOrgPersonSchema.StateOrProvince, conditions, flag, validationOnly))
            {
                return(-1);
            }
            foreach (ADPropertyDefinition adpropertyDefinition in RecipientFilterHelper.allCustomAttributePropertyDefinition)
            {
                MultiValuedProperty <string> conditionVal4 = (MultiValuedProperty <string>)RecipientFilterHelper.InternalStringValuesGetter(propertyBag, filterMeatadata, filter, null, "Microsoft.Exchange12.8f91d340bc0c47e4b4058a479602f94c:" + adpropertyDefinition.Name + "=");
                if (!RecipientFilterHelper.MergeConditionFilter(conditionVal4, adpropertyDefinition, conditions, flag, validationOnly))
                {
                    return(-1);
                }
            }
            if (wellKnownRecipientType == WellKnownRecipientType.None)
            {
                return(0);
            }
            if (validationOnly)
            {
                return(1);
            }
            if (wellKnownRecipientType != null)
            {
                List <QueryFilter> recipientTypeFilter = RecipientFilterHelper.GetRecipientTypeFilter(wellKnownRecipientType);
                if (recipientTypeFilter.Count > 1)
                {
                    conditions.Add(new OrFilter(recipientTypeFilter.ToArray()));
                }
                else
                {
                    if (recipientTypeFilter.Count != 1)
                    {
                        return(-1);
                    }
                    conditions.Add(recipientTypeFilter[0]);
                }
            }
            return(1);
        }