private static Boolean AdjustTimeZoneToUniversal(ref DateTimeResult result) {
long resultTicks = result.parsedDate.Ticks;
resultTicks -= result.timeZoneOffset.Ticks;
if (resultTicks < 0) {
resultTicks += Calendar.TicksPerDay;
}
if (resultTicks < DateTime.MinTicks || resultTicks > DateTime.MaxTicks) {
result.SetFailure(ParseFailureKind.Format, "Format_DateOutOfRange", null);
return false;
}
result.parsedDate = new DateTime(resultTicks, DateTimeKind.Utc);
return true;
}