public void read_scalefactor (SoundStream stream, Frame header)
	  {
	 	if (allocation != 0)
	 	{
	 	   switch (scfsi)
	       {
	      	case 0:
	  	  	 scalefactor1 = scalefactors[stream.get_bits(6)];
		  	 scalefactor2 = scalefactors[stream.get_bits(6)];
		  	 scalefactor3 = scalefactors[stream.get_bits(6)];
		  	 break;
			case 1:
		  	 scalefactor1 = scalefactor2 = scalefactors[stream.get_bits(6)];
		  	 scalefactor3 = scalefactors[stream.get_bits(6)];
		  	 break;
	        case 2:
		  	 scalefactor1 = scalefactor2 = scalefactor3 = scalefactors[stream.get_bits(6)];
			 break;
		    case 3:
		  	 scalefactor1 = scalefactors[stream.get_bits(6)];
		     scalefactor2 = scalefactor3 = scalefactors[stream.get_bits(6)];
		     break;
	    	}
	    	prepare_sample_reading(header, allocation, 0,
				    factor, codelength, c, d);
	  }
	  }