879    {
  881        {
  882            return result.SetBadTimeSpanFailure();
  883        }
  887        bool flag3 = false;
  888        bool flag4 = false;
  889        bool flag5 = false;
  890        TimeSpanToken timeSpanToken = new TimeSpanToken(0);
  891        if (flag)
  892        {
  893            if (raw.FullHMSFMatch(TimeSpanFormat.PositiveInvariantFormatLiterals))
  894            {
  895                flag3 = true;
  896                flag4 = 
TryTimeToTicks(flag3, timeSpanToken, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, out result2);
 
  897                flag5 = flag5 || !flag4;
  898            }
  899            if (!flag4 && raw.FullDHMSMatch(TimeSpanFormat.PositiveInvariantFormatLiterals))
  900            {
  901                flag3 = true;
  902                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, timeSpanToken, out result2);
 
  903                flag5 = flag5 || !flag4;
  904            }
  905            if (!flag4 && raw.FullAppCompatMatch(TimeSpanFormat.PositiveInvariantFormatLiterals))
  906            {
  907                flag3 = true;
  908                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, timeSpanToken, raw._numbers3, out result2);
 
  909                flag5 = flag5 || !flag4;
  910            }
  911            if (!flag4 && raw.FullHMSFMatch(TimeSpanFormat.NegativeInvariantFormatLiterals))
  912            {
  913                flag3 = false;
  914                flag4 = 
TryTimeToTicks(flag3, timeSpanToken, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, out result2);
 
  915                flag5 = flag5 || !flag4;
  916            }
  917            if (!flag4 && raw.FullDHMSMatch(TimeSpanFormat.NegativeInvariantFormatLiterals))
  918            {
  919                flag3 = false;
  920                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, timeSpanToken, out result2);
 
  921                flag5 = flag5 || !flag4;
  922            }
  923            if (!flag4 && raw.FullAppCompatMatch(TimeSpanFormat.NegativeInvariantFormatLiterals))
  924            {
  925                flag3 = false;
  926                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, timeSpanToken, raw._numbers3, out result2);
 
  927                flag5 = flag5 || !flag4;
  928            }
  929        }
  930        if (flag2)
  931        {
  932            if (!flag4 && raw.FullHMSFMatch(raw.PositiveLocalized))
  933            {
  934                flag3 = true;
  935                flag4 = 
TryTimeToTicks(flag3, timeSpanToken, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, out result2);
 
  936                flag5 = flag5 || !flag4;
  937            }
  938            if (!flag4 && raw.FullDHMSMatch(raw.PositiveLocalized))
  939            {
  940                flag3 = true;
  941                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, timeSpanToken, out result2);
 
  942                flag5 = flag5 || !flag4;
  943            }
  944            if (!flag4 && raw.FullAppCompatMatch(raw.PositiveLocalized))
  945            {
  946                flag3 = true;
  947                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, timeSpanToken, raw._numbers3, out result2);
 
  948                flag5 = flag5 || !flag4;
  949            }
  950            if (!flag4 && raw.FullHMSFMatch(raw.NegativeLocalized))
  951            {
  952                flag3 = false;
  953                flag4 = 
TryTimeToTicks(flag3, timeSpanToken, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, out result2);
 
  954                flag5 = flag5 || !flag4;
  955            }
  956            if (!flag4 && raw.FullDHMSMatch(raw.NegativeLocalized))
  957            {
  958                flag3 = false;
  959                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, raw._numbers3, timeSpanToken, out result2);
 
  960                flag5 = flag5 || !flag4;
  961            }
  962            if (!flag4 && raw.FullAppCompatMatch(raw.NegativeLocalized))
  963            {
  964                flag3 = false;
  965                flag4 = 
TryTimeToTicks(flag3, raw._numbers0, raw._numbers1, raw._numbers2, timeSpanToken, raw._numbers3, out result2);
 
  966                flag5 = flag5 || !flag4;
  967            }
  968        }
  969        if (flag4)
  970        {
  971            if (!flag3)
  972            {
  973                result2 = -result2;
  974                if (result2 > 0)
  975                {
  976                    return result.SetOverflowFailure();
  977                }
  978            }
  979            result.parsedTimeSpan = 
new TimeSpan(result2);
 
  980            return true;
  981        }
  982        if (!flag5)
  983        {
  984            return result.SetBadTimeSpanFailure();
  985        }
  986        return result.SetOverflowFailure();
  987    }
static bool TryTimeToTicks(bool positive, TimeSpanToken days, TimeSpanToken hours, TimeSpanToken minutes, TimeSpanToken seconds, TimeSpanToken fraction, out long result)