/// <inheritdoc />
        public override bool DoesIncludeRegion(string regionCode)
        {
            if (string.IsNullOrWhiteSpace(regionCode))
            {
                return(false);
            }

            regionCode = CountryHelper.FixRegionCode(Country.Australia, regionCode);

            return(OverseasRegionCache.Contains(regionCode) || base.DoesIncludeRegion(regionCode));
        }
        /// <inheritdoc />
        public override bool DoesIncludeRegion(string regionCode)
        {
            if (string.IsNullOrWhiteSpace(regionCode))
            {
                return(false);
            }

            regionCode = CountryHelper.FixRegionCode(Country.UnitedStates, regionCode);
            var result = false;

            switch (regionCode)
            {
            case "US-VI":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.VI);
                break;

            case "US-MP":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.MP);
                break;

            case "US-PR":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.PR);
                break;

            case "US-GU":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.GU);
                break;

            case "US-AS":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.AS);
                break;

            case "US-UM":
                result = InternalSingleInstanceServiceLocator.HolidayProviderManager.ContainsRegion(CountryCode.UM);
                break;
            }

            if (result)
            {
                return(true);
            }

            return(OverseasRegionCache.Contains(regionCode) || base.DoesIncludeRegion(regionCode));
        }