@Override
    protected void paintComponent(final Graphics g) {
        if (scaledMapImage == null) {
            super.paintComponent(g);
        } else {
            mode.paint(g);

            for (java.util.Map.Entry<Integer, Color> override : overrides.entrySet()) {
                paintProvince((Graphics2D) g, override.getKey(), override.getValue());
            }

            if (paintBorders && mode.paintsBorders()) {
                paintBorders((Graphics2D) g);
            }
        }
    }