add normalize function