@Override
    public boolean evaluate(Card target) {
        if (colors == 0) {
            return mode == target.isColorless();
        }
        for (int x = 1; x < 6; x++) {
            if ((colors & x) == x && !target.isColor(x)) {
                return mode == false;
            }
        }
        return mode == true;
    }