private static string Format( DateTimeInterval interval, long ticks, out long ticksRemainder, IStringLocalizer localizer) { if (interval.GetFlags().Count() > 1) { throw new ArgumentException( string.Format("This function works with no more than one DateTimeInterval flag." + "The parameter passed was {0}, which is {1} flags", interval, interval.GetFlags().Count()), nameof(interval)); } var wholeIntervals = ticks.GetWholeInterval(interval, out ticksRemainder); var term = interval.GetAppropriateSingularOrPluralTerm(wholeIntervals, localizer); return(string.Format("{0} {1}", wholeIntervals, term)); }