// Token: 0x06002849 RID: 10313 RVA: 0x00094A74 File Offset: 0x00092C74
 public static SlabManifestCollection GetInstance(string owaVersion)
 {
     if (!SlabManifestCollectionFactory.slabManifestCollections.ContainsKey(owaVersion))
     {
         SlabManifestCollection value = SlabManifestCollection.Create(owaVersion);
         SlabManifestCollectionFactory.slabManifestCollections.TryAdd(owaVersion, value);
     }
     return(SlabManifestCollectionFactory.slabManifestCollections[owaVersion]);
 }
        // Token: 0x0600264D RID: 9805 RVA: 0x0008A6CC File Offset: 0x000888CC
        protected virtual IEnumerable <string> GetNonThemedResources(CultureInfo userCultureInfo, bool generateBootResourcesAppcache)
        {
            bool isMowaClient = this.IsMowaClient;
            SlabManifestCollection slabManifestCollection = this.SlabManifestCollection;
            SlabManifestType       slabManifestType       = isMowaClient ? SlabManifestType.Pal : SlabManifestType.Standard;

            string[] enabledFeatures = this.GetEnabledFeatures();
            this.GetLocalizedCultureNameForThemesResource(userCultureInfo);
            IEnumerable <string> first = from image in slabManifestCollection.GetNonThemedImages(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                         select string.Format("../prem/{0}/resources/images/{1}/{2}", this.VersionString, DefaultPageBase.IsRtl? "rtl" : "0", image);

            IEnumerable <string> second = from font in slabManifestCollection.GetFonts(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                          select string.Format("../prem/{0}/resources/styles/{1}", this.VersionString, font);

            IEnumerable <string> second2 = from style in slabManifestCollection.GetNonThemedStyles(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                           select string.Format("../prem/{0}/resources/styles/{1}", this.VersionString, style);

            return(first.Union(second).Union(second2));
        }
        // Token: 0x0600264C RID: 9804 RVA: 0x0008A53C File Offset: 0x0008873C
        protected virtual IEnumerable <string> GetThemedResources(CultureInfo userCultureInfo, bool generateBootResourcesAppcache)
        {
            bool isMowaClient = this.IsMowaClient;
            SlabManifestCollection slabManifestCollection = this.SlabManifestCollection;
            SlabManifestType       slabManifestType       = isMowaClient ? SlabManifestType.Pal : SlabManifestType.Standard;

            string[]             enabledFeatures = this.GetEnabledFeatures();
            string               theme           = this.GetThemeFolder();
            string               locale          = this.GetLocalizedCultureNameForThemesResource(userCultureInfo);
            IEnumerable <string> first           = this.ShouldSkipThemeFolder() ? (from style in slabManifestCollection.GetThemedStyles(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                                                                   select string.Format("../prem/{0}/resources/styles/{1}/{2}", this.VersionString, locale, style)) : slabManifestCollection.GetThemedStyles(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache).Select((string style) => string.Format("../prem/{0}/resources/themes/{1}/{2}/{3}", new object[]
            {
                this.VersionString,
                theme,
                locale,
                style
            }));
            IEnumerable <string> second = from image in slabManifestCollection.GetThemedImages(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                          select string.Format("../prem/{0}/resources/themes/{1}/images/{2}/{3}", new object[]
            {
                this.VersionString,
                theme,
                DefaultPageBase.IsRtl ? "rtl" : "0",
                image
            });

            IEnumerable <string> second2 = this.ShouldSkipThemeFolder() ? (from image in slabManifestCollection.GetThemedSpriteStyles(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache)
                                                                           select string.Format("../prem/{0}/resources/images/{1}/{2}", this.VersionString, DefaultPageBase.IsRtl ? "rtl" : "0", image)) : slabManifestCollection.GetThemedSpriteStyles(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache).Select((string image) => string.Format("../prem/{0}/resources/themes/{1}/images/{2}/{3}", new object[]
            {
                this.VersionString,
                theme,
                DefaultPageBase.IsRtl ? "rtl" : "0",
                image
            }));

            return(first.Union(second).Union(second2));
        }
        // Token: 0x0600264B RID: 9803 RVA: 0x0008A228 File Offset: 0x00088428
        protected virtual IEnumerable <string> GetScripts(bool generateBootResourcesAppcache)
        {
            bool isMowaClient = this.IsMowaClient;
            SlabManifestCollection slabManifestCollection = this.SlabManifestCollection;
            SlabManifestType       slabManifestType       = isMowaClient ? SlabManifestType.Pal : SlabManifestType.Standard;

            string[]             enabledFeatures = this.GetEnabledFeatures();
            IEnumerable <string> enumerable      = from source in slabManifestCollection.GetCodeScriptResources(SlabManifestType.PreBoot, this.UserAgent.Layout, enabledFeatures, false).Union(slabManifestCollection.GetCodeScriptResources(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache))
                                                   select string.Format("../prem/{0}/scripts/{1}", this.VersionString, source);

            IEnumerable <string> source3 = from source in slabManifestCollection.GetLocalizedStringsScriptResources(SlabManifestType.PreBoot, this.UserAgent.Layout, enabledFeatures, false).Union(slabManifestCollection.GetLocalizedStringsScriptResources(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache))
                                           select source;

            if (source3.Any <string>())
            {
                LocalizedStringsScriptResource localizedStringsScriptResource = new LocalizedStringsScriptResource(source3.First <string>(), ResourceTarget.Any, this.VersionString);
                string cultureName          = localizedStringsScriptResource.GetLocalizedCultureName();
                IEnumerable <string> second = from source in source3
                                              select string.Format("../prem/{0}/scripts/{1}/{2}", this.VersionString, cultureName.ToLowerInvariant(), source);

                enumerable = enumerable.Union(second);
            }
            IEnumerable <string> source2 = from source in slabManifestCollection.GetLocalizedExtStringsScriptResources(SlabManifestType.PreBoot, this.UserAgent.Layout, enabledFeatures, false).Union(slabManifestCollection.GetLocalizedExtStringsScriptResources(slabManifestType, this.UserAgent.Layout, enabledFeatures, generateBootResourcesAppcache))
                                           select source;

            if (source2.Any <string>())
            {
                LocalizedExtensibilityStringsScriptResource localizedExtensibilityStringsScriptResource = new LocalizedExtensibilityStringsScriptResource(source2.First <string>(), ResourceTarget.Any, this.VersionString);
                string cultureName           = localizedExtensibilityStringsScriptResource.GetLocalizedCultureName();
                IEnumerable <string> second2 = from source in source2
                                               select string.Format("../prem/{0}/scripts/ext/{1}/{2}", this.VersionString, cultureName.ToLowerInvariant(), source);

                enumerable = enumerable.Union(second2);
            }
            return(enumerable);
        }