private static List<GregorianCalendar> setupGCal() {

    java.util.TimeZone tz = java.util.TimeZone.getTimeZone("Europe/London");
    Random random = new Random(47658758756875687L);
    List<GregorianCalendar> list = new ArrayList<GregorianCalendar>(SIZE);
    long start = System.nanoTime();
    for (int i = 0; i < SIZE; i++) {
      GregorianCalendar t = new GregorianCalendar(tz);
      t.setGregorianChange(new Date(Long.MIN_VALUE));
      t.set(random.nextInt(10000), random.nextInt(12), random.nextInt(28) + 1, random.nextInt(24), random.nextInt(60),
          random.nextInt(60));
      list.add(t);
    }
    long end = System.nanoTime();
    System.out.println("GCalendar: Setup:  " + NF.format(end - start) + " ns");
    result("GregCal-I", end - start);
    return list;
  }