public int EraYear(out int era, int date) { IList valueList = this._Eras.GetValueList(); foreach (object obj in valueList) { CCGregorianEraHandler.Era era2 = (CCGregorianEraHandler.Era)obj; if (era2.Covers(date)) { return(era2.EraYear(out era, date)); } } throw new ArgumentOutOfRangeException("date", "Time value was out of era range."); }