public static Variable TimeVal(string input) { if (input.Contains('@')) { var zoneDt = _zoneTmPattern.WithTemplateValue(Instant.FromUtc(1970, 1, 1, 11, 30).InZone(DateTimeZone.Utc)).Parse(input).Value; return(Variable.Time(zoneDt)); } var ofstTm = OffsetTimePattern.Rfc3339.Parse(input); if (ofstTm.Success) { return(ofstTm.Value); } var localTm = LocalTimePattern.ExtendedIso.Parse(input); if (localTm.Success) { return(localTm.Value); } return(new Variable()); }