Updated compareTo