fixed normal calculation