work on comparator