super(0, Dates.PRECISION_SECOND, timezone != null ? timezone
: java.util.TimeZone.getDefault());
this.time = new Time(getTime(), getFormat().getTimeZone());
try {
if (value.endsWith("Z")) {
<BUG>setTime(value, (DateFormat) UTC_FORMAT.get(), null);
setUtc(true);</BUG>
} else {
if (timezone != null) {
<BUG>setTime(value, (DateFormat) DEFAULT_FORMAT.get(), timezone);
} else {
setTime(value, (DateFormat) LENIENT_DEFAULT_FORMAT.get(),
getFormat().getTimeZone());</BUG>
}

super(0, Dates.PRECISION_SECOND, timezone != null ? timezone
: java.util.TimeZone.getDefault());
this.time = new Time(getTime(), getFormat().getTimeZone());
try {
if (value.endsWith("Z")) {
setTime(value, UTC_FORMAT.get(), null);
setUtc(true);
} else {
if (timezone != null) {
setTime(value, DEFAULT_FORMAT.get(), timezone);
} else {
setTime(value, LENIENT_DEFAULT_FORMAT.get(),
getFormat().getTimeZone());
}
