struct xxx {
              int         a,b,c;
              int         f1 : 2;
              int         f2 : 4;
              struct xxx *f3;
              int         f4[10];
            } str, astr[10], aastr[9][9], *pastr[10];

/*******************************************/
/* zzz uses the structure xxx defined	   */
/* above as an element			   */
/*******************************************/

struct zzz { int b1,b2,b3,b4,b5;
             struct xxx q1[2], q2;
             struct xxx *q3;
           } big1, *big2, big3[6];

struct     { int x,y,z;
             int **ptr;
             float *fptr;
             char ra[5];
           } small;

enum   yyy { RED, GREEN, BLUE } genum, *penum, aenum[5][4][3];

enum       { ONE, TWO, THREE  } e1, *e2, e3[6], e4[2][3][4][5];

struct     { int y,z; } tiny2;
struct     { int x,y,z; } tiny3;
struct     { int w,x,y,z; } tiny4;
struct     { int v,w,x,y,z; } tiny5;
struct     { int u,v,w,x,y,z; } tiny6;

/******************************************/
/* Definitions for			  */
/*    i,s,f,d,ai,aai, and giant follow    */
/******************************************/
int    i;
short  s;
float  f;
double d;
int    ai[10];
int    aai[10][5];
struct zzz giant[100];
/*-- POINTER --------*/
/*-- DEFINITIONS ----*/
int    *pi;
char   *xpc;

extern  call();
extern	meminit();


main() {
    int i = 0;
    int j = 0;
    int k = 0;

    meminit();
    for (i = 0; i < 0x70; i++)
    {
         call(i);
         if (i & 1) j += i;
         aai[k][k]  = j;
         if (!(i & 0xFFFF)) k++;
    }
    for (;;);
}
