uInt f = 0;          uIntf *c;            uIntf *v;
unsigned c[288];     z_stream z;          int f = FIXEDH;
int inflate_trees_fixed(bl, bd, tl, td, z)uIntf *bl;               /* literal desired/actual bit depth */uIntf *bd;               /* distance desired/actual bit depth */inflate_huft * FAR *tl;  /* literal/length tree result */inflate_huft * FAR *td;  /* distance tree result */z_streamp z;             /* for memory allocation */{#ifdef BUILDFIXED  /* build fixed tables if not already */  if (!fixed_built)  {    int k;              /* temporary variable */    uInt f = 0;         /* number of hufts used in fixed_mem */    uIntf *c;           /* length list for huft_build */    uIntf *v;           /* work area for huft_build */    /* allocate memory */    if ((c = (uIntf*)ZALLOC(z, 288, sizeof(uInt))) == Z_NULL)      return Z_MEM_ERROR;    if ((v = (uIntf*)ZALLOC(z, 288, sizeof(uInt))) == Z_NULL)    {      ZFREE(z, c);      return Z_MEM_ERROR;    }    /* literal table */    for (k = 0; k < 144; k++)      c[k] = 8;    for (; k < 256; k++)      c[k] = 9;    for (; k < 280; k++)      c[k] = 7;    for (; k < 288; k++)      c[k] = 8;    fixed_bl = 9;    huft_build(c, 288, 257, cplens, cplext, &fixed_tl, &fixed_bl,               fixed_mem, &f, v);    /* distance table */    for (k = 0; k < 30; k++)      c[k] = 5;    fixed_bd = 5;    huft_build(c, 30, 0, cpdist, cpdext, &fixed_td, &fixed_bd,               fixed_mem, &f, v);    /* done */    ZFREE(z, v);    ZFREE(z, c);    fixed_built = 1;  }#endif  *bl = fixed_bl;  *bd = fixed_bd;  *tl = fixed_tl;  *td = fixed_td;  return Z_OK;}