now normalization function only compiles 1x