public RGB closest(RGB... candidates) {
        if (candidates.length == 0)
            return this;

        // 255 * sqrt 3 ≅ 441
        double closestDistance = 445;
        RGB closest = null;
        for (RGB color : candidates) {
            double dist = this.distance(color);
            if (dist < closestDistance) {
                closestDistance = dist;
                closest = color;
            }
        }

        return closest;
    }