private java.awt.image.BufferedImage create_EFFECT_Image(final int WIDTH,
			final int HEIGHT, final boolean CLICKED) {
		if (WIDTH <= 0 || HEIGHT <= 0) {
			return null;
		}

		final java.awt.GraphicsConfiguration GFX_CONF = java.awt.GraphicsEnvironment
				.getLocalGraphicsEnvironment().getDefaultScreenDevice()
				.getDefaultConfiguration();
		final java.awt.image.BufferedImage IMAGE = GFX_CONF
				.createCompatibleImage(WIDTH, HEIGHT,
						java.awt.Transparency.TRANSLUCENT);
		final java.awt.Graphics2D G2 = IMAGE.createGraphics();
		G2.setRenderingHint(java.awt.RenderingHints.KEY_ANTIALIASING,
				java.awt.RenderingHints.VALUE_ANTIALIAS_ON);

		final int IMAGE_WIDTH = IMAGE.getWidth();
		final int IMAGE_HEIGHT = IMAGE.getHeight();

		final java.awt.Rectangle BOUNDS = new java.awt.Rectangle(
				0,
				true||CLICKED ? -(int) (IMAGE_HEIGHT * 0.7) : (int) (IMAGE_HEIGHT * 0.6 / 2), 
				IMAGE_WIDTH,
				true||CLICKED ? (int) (IMAGE_HEIGHT * 1.4) : (int) (IMAGE_HEIGHT * 1.4)
		);
		final java.awt.RadialGradientPaint GRADIENT;

		if (CLICKED) {
			GRADIENT = new java.awt.RadialGradientPaint(BOUNDS,
					EFFECT_FRACTIONS, effectColorsPressed,
					java.awt.MultipleGradientPaint.CycleMethod.NO_CYCLE);
		} else {
			GRADIENT = new java.awt.RadialGradientPaint(BOUNDS,
					EFFECT_FRACTIONS, effectColors,
					java.awt.MultipleGradientPaint.CycleMethod.NO_CYCLE);
		}

		G2.setPaint(GRADIENT);
		G2.fill(BOUNDS);

		G2.dispose();

		return IMAGE;
	}