* Multiplications by 2^X are turned into shifts. This factors code out of the