/** invalid code, e.g. uninitialized variable */
         EDG_WLL_EVENT_UNDEF = 0,
 @@@{
+my $flesh = 'gLite';   #XXX
+my $fleshno = 0;
+my $eventno = $fleshno;
 for my $e (sort { $event->{order}->{$a} <=> $event->{order}->{$b} }
                $event->getTypes) {
        my $u = uc $e;
        my $c = getTypeComment $event $e;
-       gen "\tEDG_WLL_EVENT_$u,\t/**< $c */\n";
+
+       if ($flesh ne $event->{flesh}->{$e}) {
+               $flesh = $event->{flesh}->{$e};
+               gen "/* new flesh $flesh */\n";
+               $fleshno += 100;
+               $eventno = $fleshno;
+       }
+       $eventno++;
+       gen "\tEDG_WLL_EVENT_$u = $eventno,\t/**< $c */\n";
 }
 @@@}
         EDG_WLL_EVENT__LAST,   /**< last currently supported event code */
 
            // list type
            int i;
            printf("Available events:   extra options\n");
+/* XXX: holes in edg_wll_EventCode */
            for (i = EDG_WLL_EVENT_UNDEF + 1; i < EDG_WLL_EVENT__LAST; i++)
            {
                char* e = edg_wll_EventToString(i);
 
 static const char *eventNames[] = {
        "Undefined",
 @@@{
+my $flesh = 'gLite';    #XXX
+my $fleshno = 0;
+my $eventno = $fleshno;
+
 for my $e (sort { $event->{order}->{$a} <=> $event->{order}->{$b} }
                $event->getTypes) {
-       gen "\t\"$e\",\n";
+
+       if ($flesh ne $event->{flesh}->{$e}) {
+               $flesh = $event->{flesh}->{$e};
+               $fleshno += 100;
+
+               gen "\t";
+               while ($eventno < $fleshno) {
+                       gen "NULL, "; 
+                       $eventno++;
+                       if (($eventno % 10) == 0) { gen "\n\t"; }
+               }
+               gen "\n";
+       }
+       
+       $eventno++;
+       gen "\t\"$e\", /* $eventno */\n";
 }
 @@@}
        "SysCmpStat",