private Layer getRaceParticipantList(IWContext iwc) {
    Layer layer = new Layer(Layer.DIV);
    layer.setStyleClass("raceParticipantsEvents");
    layer.setID("raceParticipantsEvents");

    Map participants = getRaceParticipants(iwc);
    if (participants != null && !participants.isEmpty()) {
      Iterator it = participants.keySet().iterator();
      while (it.hasNext()) {
        Object key = it.next();
        List eventParticipants = (List) participants.get(key);
        try {
          RaceEvent raceEvent = ConverterUtility.getInstance().convertGroupToRaceEvent(key);
          Layer subLayer = new Layer(Layer.DIV);
          subLayer.setStyleClass("raceParticipantsEvent");
          subLayer.setID("raceParticipantsEvent");
          layer.add(subLayer);

          Layer headerLayer = new Layer(Layer.DIV);
          headerLayer.setStyleClass("raceParticipantsEventHeader");
          subLayer.add(headerLayer);

          Layer headingLayer = new Layer(Layer.DIV);
          headingLayer.setStyleClass("raceParticipantsEventHeading");
          headingLayer.add(new Text(raceEvent.getName()));
          headerLayer.add(headingLayer);

          subLayer.add(getRaceParticipantListForEvent(iwc, eventParticipants, raceEvent));
        } catch (Exception e) {
          getLogger().log(Level.WARNING, "Error printing participants for " + key, e);
        }
      }
    }
    return layer;
  }
  public void main(IWContext iwc) throws Exception {
    try {
      if (iwc.isParameterSet(PARAMETER_RACE)) {
        race =
            ConverterUtility.getInstance()
                .convertGroupToRace(new Integer(iwc.getParameter(PARAMETER_RACE)));
      }
    } catch (Exception e) {
    }

    Layer layer = new Layer(Layer.DIV);
    layer.setStyleClass("raceElement");
    layer.setID("raceParticipants");

    Layer headerLayer = new Layer(Layer.DIV);
    headerLayer.setStyleClass("raceParticipantsHeader");
    layer.add(headerLayer);

    Layer headingLayer = new Layer(Layer.DIV);
    headingLayer.setStyleClass("raceParticipantHeading");
    headingLayer.add(new Text(getHeading()));
    headerLayer.add(headingLayer);

    layer.add(getRaceParticipantList(iwc));

    add(layer);
  }