public GroupingTile(Iterator<Event> it, GroupingStart start, TileArguments tileArguments) {
		final StringBounder stringBounder = tileArguments.getStringBounder();
		this.display = start.getTitle().equals("group") ? Display.create(start.getComment()) : Display.create(
				start.getTitle(), start.getComment());
		this.skin = tileArguments.getSkin();
		this.skinParam = tileArguments.getSkinParam();
		// this.max = min.addAtLeast(dim1.getWidth());

		while (it.hasNext()) {
			final Event ev = it.next();
			System.err.println("GroupingTile::ev=" + ev);
			if (ev instanceof GroupingLeaf && ((Grouping) ev).getType() == GroupingType.END) {
				break;
			}
			final Tile tile = TileBuilder.buildOne(it, tileArguments, ev, this);
			if (tile != null) {
				tiles.add(tile);
				min.put(tile.getMinX(stringBounder));
				max.put(tile.getMaxX(stringBounder));
				bodyHeight += tile.getPreferredHeight(stringBounder);
			}
		}
		final Dimension2D dim1 = getPreferredDimensionIfEmpty(stringBounder);
		final double width = dim1.getWidth();
		System.err.println("width=" + width);
		if (min.size() == 0) {
			min.put(tileArguments.getOrigin());
			max.put(tileArguments.getOmega());
		}
		// max.ensureBiggerThan(min.addFixed(width));
		this.max.ensureBiggerThan(getMinX(stringBounder).addFixed(width));
	}