public static Experience[] LookupExperiences(string application, UserAgentParser.UserAgentVersion version, string platform, ClientControl control, bool isRichClientFeatureOn)
        {
            ExTraceGlobals.FormsRegistryCallTracer.TraceDebug(0L, "FormsRegistryManager.LookupExperiences application = {0}, version = {1}, platform = {2}, control = {3}", new object[]
            {
                application,
                version,
                platform,
                control
            });
            int num;
            int num2;

            if (!FormsRegistryManager.baseExperienceClientMappingList.FindMatchingRange(application, platform, control, version, out num, out num2))
            {
                return(null);
            }
            FormsRegistry formsRegistry = null;

            if (isRichClientFeatureOn)
            {
                formsRegistry = FormsRegistryManager.baseExperienceClientMappingList[num2].Experience.FormsRegistry;
            }
            else
            {
                for (int i = num2; i >= num; i--)
                {
                    formsRegistry = FormsRegistryManager.baseExperienceClientMappingList[i].Experience.FormsRegistry;
                    if (!formsRegistry.IsRichClient)
                    {
                        break;
                    }
                    formsRegistry = null;
                }
                if (formsRegistry == null)
                {
                    return(null);
                }
            }
            ExTraceGlobals.FormsRegistryDataTracer.TraceDebug <string>(0L, "Matched registry = {0}", formsRegistry.Name);
            return(formsRegistry.LookupExperiences(application, version, platform, control));
        }