normalize and basic structure implemented