added normalise method