@Override
	protected void paintComponent(Graphics g) {
		super.paintComponent(g);
		Graphics2D g2 = (Graphics2D) g;
		GradientPaint gradPaint = new GradientPaint(0, 0, getLowerColor(), 0, getHeight(), getUpperColor());
		g2.setPaint(gradPaint);
		g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
		g2.fillRoundRect(0, 0, getWidth(), getHeight(), 5, 5);
		generateNoise();
		if (bufferedImage != null) {
			Composite original = g2.getComposite();
			AlphaComposite alpha = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.02F);
			g2.setComposite(alpha);
			g2.drawImage(bufferedImage, 0, 0, this);
			g2.setComposite(original);
		} else generateNoise();
	}