Apply all normalizers in a single pass to avoid ordering issues