change algorithm. now firstly calculate fingerprints, after then compare.