improved normalization