Remove redundant codes, add salts in Position.GetHashCode()