changed to use max-eigenvalue normalization