code: public static Calendar getThreadCalendar(TimeZone tz) {
  	Calendar c = calendar.get();
  	c.clear();
  	if (tz == null) tz = ThreadLocalPageContext.getTimeZone();
  	c.setTimeZone(tz);
  	return c;
      }
docs: important:this function returns always the same instance for a specific thread, so make sure only
  use one thread calendar instance at time.
  
  @return calendar instance