code: func (qfd *quantizedFloatDecoder) assignMultipliers(steps uint32) {
  	qfd.HighLowMul = 0.0
  	Range := qfd.High - qfd.Low
  
  	High := uint32(0)
  	if qfd.Bitcount == 32 {
  		High = 0xFFFFFFFE
  	} else {
  		High = (1 << qfd.Bitcount) - 1
  	}
  
  	HighMul := float32(0.0)
  	if math.Abs(float64(Range)) <= 0.0 {
  		HighMul = float32(High)
  	} else {
  		HighMul = float32(High) / Range
  	}
  
  	// Adjust precision
  	if (HighMul*Range > float32(High)) || (float64(HighMul*Range) > float64(High)) {
  		multipliers := []float32{0.9999, 0.99, 0.9, 0.8, 0.7}
  
  		for _, mult := range multipliers {
  			HighMul = float32(High) / Range * mult
  
  			if (HighMul*Range > float32(High)) || (float64(HighMul*Range) > float64(High)) {
  				continue
  			}
  
  			break
  		}
  	}
  
  	qfd.HighLowMul = HighMul
  	qfd.DecMul = 1.0 / float32(steps-1)
  
  	if qfd.HighLowMul == 0.0 {
  		_panicf("Error computing high / low multiplier")
  	}
  }
docs: // Assign multipliers