I've solved the problem, which has to do with the generating function for 'k'. For example: - k = -108*t^2 + 36*t - 67 always has even parity - k = -108*t^2 + 36*t - 7 always has odd parity - k = -108*t^2 + 36*t - 84 is 50/50 odd and even These, and other similar functions, generate nice groupings in residue classes modulo 504 and explain the population distribution of odd and even ranks in those residue classes.