 				if mom.year() > @_max_year # Year must not be greater than max year.
 					return moment.invalid()
 
-				# console.debug "parsing ok", mom, f, moment.locale()
-				if mom.year() > 0
-					mom.parseZone()
 				return mom
 
 		if not formats.some((format) -> format.support_bc)


		@formatMomentWithBc(mom, dt.getCurrentFormatDisplay())

	@formatMoment: (mom, format) ->
		if mom.bc
			return "-"+mom.bc

		if mom.year() > 0
			mom.parseZone() # Only parse zone when it is not BC.

		return mom.format(format)


	# format the date_str
	# output_format "display_short", "display", "store", "input"
	# output_type "date_time", "date", "date_time_secons", "year_month",v "year"
	@format: (datestr_or_moment, output_format, output_type, parseZone = false) ->
		dt = new CUI.DateTime()
		str = dt.format(datestr_or_moment, output_format, output_type, parseZone)
		# console.debug "DateTime.format", date, type, output_type, DateTime.__locale, str
		str

