modularized normalize