 			fromIsYear = true
 			fromYear = parseInt(from)
 		else if fromMoment.isValid() and fromMoment.date() == 1 and fromMoment.month() == 0 # First day of year.
+			fromMoment.add(1, "day") # This is a workaround to avoid having the wrong year after parsing the timezone.
+			fromMoment.parseZone()
 			fromYear = fromMoment.year()
 
 		if from == to

			momentInputTo.add(yearsToAdd, "year")

		if not year.startsWith(CUI.DateTimeRangeGrammar.DASH)
			momentInputFrom.parseZone()
			momentInputTo.parseZone()

		momentInputFrom.startOf("year")

		momentInputFrom = CUI.DateTimeRangeGrammar.getMoment(year)
		if not momentInputFrom?.isValid()
			return

		if not year.startsWith(CUI.DateTimeRangeGrammar.DASH)
			momentInputFrom.add(1, "day") # This is a workaround to avoid having the wrong year after parsing the timezone.
			momentInputFrom.parseZone()

		if fromAddYears or toAddYears
			_year = momentInputFrom.year()
