#define NEXT break
#define I_NEXT 0
#define I_LOOP 1

main()
{
  static int prog[] = {I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_NEXT,I_LOOP};
  int *ip=prog;
  int count = 10000000;

  for (;;) {
    switch (*ip++) {
    case I_NEXT:
      NEXT;
    case I_LOOP:
      if (count>0) {
	count--;
	ip=prog;
	NEXT;
      }
      else
	return 0;
/* the rest is to get gcc to make a realistic switch statement */
    case 12:
    case 8:
    case 4:
    case 5:
      count=25;
      NEXT;
    case 10:
    case 2:
      count--;
      NEXT;
    }
  }
}
