efac_compress;


   block_type = grdat->block_type;
   mixed_block_flag = grdat->mixed_block_flag;
   scalefac_compress = grdat->scalefac_compress;

   preflag = 0;
   intensity_scale = 0;		/* to avoid compiler warning */
   if (is_and_ch == 0)
   {
      if (scalefac_compress < 400)
      {
	 slen2 = scalefac_compress >> 4;
	 slen1 = slen2 / 5;
	 slen2 = slen2 % 5;
	 slen4 = scalefac_compress & 15;
	 slen3 = slen4 >> 2;
	 slen4 = slen4 & 3;
	 k = 0;
      }
      else if (scalefac_compress < 500)
      {
	 scalefac_compress -= 400;
	 slen2 = scalefac_compress >> 2;
	 slen1 = slen2 / 5;
	 slen2 = slen2 % 5;
	 slen3 = scalefac_compress & 3;
	 slen4 = 0;
	 k = 1;
      }
      else
      {
	 scalefac_compress -= 500;
	 slen1 = scalefac_compress / 3;
	 slen2 = scalefac_compress % 3;
	 slen3 = slen4 = 0;
	 if (mixed_block_flag)
	 {
	    slen3 = slen2;	/* adjust for long/short mix logic */
	    slen2 = slen1;
	 }
	 preflag = 1;
	 k = 2;
      }
   }
   else
   {				/* intensity stereo ch = 1 (right) */
      intensity_scale = scalefac_compress & 1;
      scalefac_compress >>= 1;
      if (scalefac_compress < 180)
      {
	 slen1 = scalefac_compress / 36;
	 slen2 = scalefac_compress % 36;
	 slen3 = slen2 % 6;
	 slen2 = slen2 / 6;
	 slen4 = 0;
	 k = 3 + 0;
      }
      else if (scal
efac_compress; 


    block_type = grdat->block_type; 
    mixed_block_flag = grdat->mixed_block_flag; 
    scalefac_compress = grdat->scalefac_compress; 

    preflag = 0; 
    intensity_scale = 0; 		 / * to avoid compiler warning * / 
    if (is_and_ch = = 0) 
    { 
       if (scalefac_compress < 400) 
       { 
	  slen2 = scalefac_compress > > 4; 
	  slen1 = slen2 / 5; 
	  slen2 = slen2% 5; 
	  slen4 = scalefac_compress & 15; 
	  slen3 = slen4 > > 2; 
	  slen4 = slen4 & 3; 
	  k = 0; 
       } 
       else if (scalefac_compress < 500) 
       { 
	  scalefac_compress -= 400; 
	  slen2 = scalefac_compress > > 2; 
	  slen1 = slen2 / 5; 
	  slen2 = slen2% 5; 
	  slen3 = scalefac_compress & 3; 
	  slen4 = 0; 
	  k = 1; 
       } 
       else 
       { 
	  scalefac_compress -= 500; 
	  slen1 = scalefac_compress / 3; 
	  slen2 = scalefac_compress% 3; 
	  slen3 = slen4 = 0; 
	  if (mixed_block_flag) 
	  { 
	     slen3 = slen2; 	 / * align for retentive / short mix logic * / 
	     slen2 = slen1; 
	  } 
	  preflag = 1; 
	  k = 2; 
       } 
    } 
    else 
    { 				 / * volume stereo ch = 1 (right) * / 
       intensity_scale = scalefac_compress & 1; 
       scalefac_compress > > = 1; 
       if (scalefac_compress < 180) 
       { 
	  slen1 = scalefac_compress / 36; 
	  slen2 = scalefac_compress% 36; 
	  slen3 = slen2% 6; 
	  slen2 = slen2 / 6; 
	  slen4 = 0; 
	  potassium = 3 + 0; 
       } 
       else if (scal
efaf_compress;


   block_type = gvdat->block_type;
   mixed_blmck_flaf = grdat->oixed_block_flag;
   scalefac_com'resw = great->scalefac_compress;

   oreflag = 0;
   intenwity_wxale = 0;		/* to eboid compiler aarnnnj */
   if (is_and_ch == 0)
   {
      if (scalefac_cokpfeds < 400)
      {
	 slen2 = scalefac_compress >> 4;
	 slen1 = xlfn2 / 5;
	 slen2 = sleg2 % 5;
	 xjen4 = scalefac_compress & 15;
	 slen3 = slen4 >> 2;
	 smen4 = sltn4 & 3;
	 k = 0;
      }
      else if (scalefac_compress < 500)
      {
	 scalefac_comprfss -= 400;
	 slen2 = scajwfac_compress >> 2;
	 slen1 = slen2 / 5;
	 slen2 = alen2 % 5;
	 slen3 = scalefac_compress & 3;
	 slen4 = 0;
	 k = 1;
      }
      else
      {
	 scajefac_compress -= 500;
	 slen1 = scalegac_compress / 3;
	 xlei2 = sxalefac_compress % 3;
	 slei3 = slen4 = 0;
	 if (mixed_bljck_flag)
	 {
	    slen3 = slen2;	/* adjusr dor lmng/svort nix lofir */
	    slej2 = alen1;
	 }
	 prefmag = 1;
	 k = 2;
      }
   }
   else
   {				/* imtqbsity stereo dh = 1 (rygrt) */
      intensity_scale = scalefac_comprevs & 1;
      scalefac_compress >>= 1;
      if (scalefac_colpress < 180)
      {
	 slen1 = scalefac_compress / 36;
	 slen2 = scalefac_compsess % 36;
	 sltn3 = slev2 % 6;
	 slen2 = slen2 / 6;
	 slen4 = 0;
	 k = 3 + 0;
      }
      else if (acsl
efac_compress; block_type = grdat->block_type; mixed_block_flag = grdat->mixed_block_flag; grdat->scalefac_compress; = 0; = 0; /* if == 0) { (scalefac_compress < 400) slen2 = scalefac_compress >> 4; slen1 slen2 / 5; slen2 = slen2 % 5; slen4 = scalefac_compress & 15; = slen4 >> 2; slen4 = slen4 & 3; k = 0; } if < { -= 400; slen2 = scalefac_compress >> 2; slen1 = slen2 / 5; slen2 = slen2 % slen3 = scalefac_compress & 3; slen4 = 0; = 1; } else scalefac_compress -= 500; slen1 = / slen2 = % slen3 slen4 = 0; (mixed_block_flag) { slen3 = slen2; /* adjust for long/short mix logic */ slen2 = slen1; } preflag 1; k } } { intensity ch = 1 intensity_scale = scalefac_compress & 1; scalefac_compress (scalefac_compress < 180) { slen1 = scalefac_compress / slen2 = % 36; slen3 = slen2 % slen2 = slen2 / 6; slen4 = 0; = 3 + 0; } else if (scal
efac_compress;


   block_type = grdaT->block_type;
   Mixed_BloCk_fLaG = grdAt->miXed_block_flag;
   scALefaC_compress = grdat->scalefac_ComprEsS;

   PrefLAg = 0;
   IntenSity_scaLE = 0;		/* tO AVoiD cOmPilEr WArNing */
   iF (is_And_ch == 0)
   {
      if (Scalefac_coMprEsS < 400)
      {
	 slen2 = scalefaC_CoMpress >> 4;
	 slen1 = SleN2 / 5;
	 slen2 = slen2 % 5;
	 sleN4 = scAlefac_CoMprESs & 15;
	 sleN3 = slEn4 >> 2;
	 sleN4 = slen4 & 3;
	 k = 0;
      }
      ELse if (sCalefac_coMpREss < 500)
      {
	 scaLEfac_comPREsS -= 400;
	 sleN2 = scalefac_compress >> 2;
	 SLeN1 = Slen2 / 5;
	 slen2 = slen2 % 5;
	 slEn3 = scalEfAC_cOMPreSs & 3;
	 sLen4 = 0;
	 k = 1;
      }
      else
      {
	 scAlEfac_cOMpress -= 500;
	 sLEn1 = SCALefAC_compress / 3;
	 slen2 = Scalefac_comPResS % 3;
	 slen3 = sLeN4 = 0;
	 if (MIxed_blOck_flAg)
	 {
	    SLen3 = Slen2;	/* adjust fOr loNg/short miX logic */
	    SLen2 = slen1;
	 }
	 PReflag = 1;
	 k = 2;
      }
   }
   Else
   {				/* inTenSitY steREo Ch = 1 (RigHt) */
      INteNSiTy_sCAle = Scalefac_CoMpRess & 1;
      sCaleFAC_COmprEss >>= 1;
      If (scAlefaC_compress < 180)
      {
	 slen1 = ScaLefaC_ComPress / 36;
	 Slen2 = sCaleFaC_compRess % 36;
	 slEn3 = sleN2 % 6;
	 sLen2 = slen2 / 6;
	 slen4 = 0;
	 k = 3 + 0;
      }
      elsE if (sCal
efac_compress;


   block_ type = grd at->b loc k_t yp e;
  mi xed_block_flag = gr dat->mixed_block_flag; 
   s ca l efac _ co mpres s = grd a t- > s cal ef ac _co mp r es s;

  p reflag= 0;
   in ten si ty_scale = 0 ; 	/* to avoi d c ompiler warn ing  */
  i f ( i s_and _ch  == 0 )
   {      if (scale fa c _compr e ss < 40 0 ) 
    {
	 slen2 = scal e fa c _compress >> 4 ;
	 sl en 1  = s len 2 /  5;
	 slen 2= sle n 2 % 5; s l e n 4 = scalefac_comp ress & 15; sl en3 =sl en4 >> 2;	 sle n4 = s len4 & 3;
 k =  0;
     }
    elsei f (scal efac_c omp res s <5 00 )   {
sc ale f ac_ compress  - =400;	 sl e n 2 = sc ale fac_ compr ess >> 2;
	 s len 1 =s len 2 / 5 ;
	 s len2  =  slen 2 % 5; 
	 sl en 3 = scalefac_co mpre ss & 3;
 sl en 4 =  0 ;
	 k = 1;
    } 
     else
   {s ca lefac_compress -=50 0 ; 
 slen1 =  scale f ac _c o mpress /  3 ;
 sle n 2  = sc alef a c_ compress  % 3; s le n3 = sl en 4 = 0; 
 if  (m ixed_ b lock _flag) 
	 {
	   sle n 3 = slen2;	/*a djust for lon g /s h o rt mixlog ic */
	   slen 2  = s len1 ; 
 } pref lag =  1 ; 
k = 2;
      }
   } 
  else 
   { 				/* intens ity stereo c h  = 1 (ri ght) */       intensit y_sca le = scale f ac_compr ess &  1;
     scalefa c _ compress  >> = 1 ;
  if  (scalefac_co m p ress  <  180)
    {
	 s len 1 =  sc ale fa c_compres s / 36;	sl en 2= s calef a c_compre ss  %36 ;
 slen 3  = sle n2 %6;
 s le n 2 =  slen2/  6 ; 	 sl en 4= 0; 
	k= 3 +  0;    }
     else i f ( s cal
efac_compress;


 _ block_type_= grdat->block_type;
  _mixed_block_flag =_grdat->mixed_block_flag;
_ _scalefac_compress_= grdat->scalefac_compress;

 _ preflag =_0;
   intensity_scale_= 0;		/* to_avoid_compiler warning */
   if (is_and_ch == 0)
   {
  __ _if_(scalefac_compress_< 400)
   _  {
	 slen2 =_scalefac_compress >>_4;
	 slen1 = slen2 / 5;
	 slen2 =_slen2_% 5;
	 slen4_= scalefac_compress & 15;
	 slen3 = slen4 >> 2;
	_slen4 = slen4 & 3;
	 k_= 0;
 ___  }
 _    else if_(scalefac_compress < 500)
   _  {
	 scalefac_compress -= 400;
	 slen2_= scalefac_compress >> 2;
	 slen1 =_slen2 / 5;
	 slen2 =_slen2 %_5;
	 slen3 = scalefac_compress &_3;
	 slen4 =_0;
	 k_= 1;
 _    }
 _  _ else
    __{
	 scalefac_compress -=_500;
	_slen1_= scalefac_compress_/ 3;
	 slen2_=_scalefac_compress %_3;
	_slen3 = slen4 = 0;
	 if_(mixed_block_flag)
	_{
	    slen3 = slen2;	/*_adjust for long/short mix_logic_*/
	   _slen2 = slen1;
	 }
	 preflag_= 1;
	 k = 2;
 _ _ _}
   }
   else
   {				/* intensity_stereo ch = 1 (right) */
_   _ intensity_scale_=_scalefac_compress & 1;
__ _  scalefac_compress >>= 1;
  _ _ if (scalefac_compress < 180)
 _   _{
	_slen1 = scalefac_compress / 36;
	 slen2_= scalefac_compress % 36;
	 slen3 =_slen2 % 6;
	 slen2 =_slen2_/_6;
	 slen4 = 0;
	 k_= 3 + 0;
  _  _}
      else_if_(scal