optimize long compare