add color diff function