support normalized initialization