@Override
    public int compareTo(Card o) {
        if (rank != o.rank) {
            return rank.compareTo(o.getRank());
        } else {
            if (rank == Rank.JOKER) {
                return THE_SAME_VALUE;
            } else {
                return suit.compareTo(o.suit);
            }
        }
    }