public void sendReply_cgibin_sparkline_cgi(MyHTTPServer socket, List<HTTPRequestData> getData, String cookie) throws Exception
	{
		try
		{
			int width = 400;
			HTTPRequestData widthData = MyHTTPServer.findRecord(getData, "width");
			if (widthData != null && widthData.getData() != null)
				width = Integer.valueOf(widthData.getData());

			int height = 240;
			HTTPRequestData heightData = MyHTTPServer.findRecord(getData, "height");
			if (heightData != null && heightData.getData() != null)
				height = Integer.valueOf(heightData.getData());

			String host = null;
			HTTPRequestData hostData = MyHTTPServer.findRecord(getData, "host");
			if (hostData != null && hostData.getData() != null)
				host = URLDecoder.decode(hostData.getData(), defaultCharset);

			String service = null;
			HTTPRequestData serviceData = MyHTTPServer.findRecord(getData, "service");
			if (serviceData != null && serviceData.getData() != null)
				service = URLDecoder.decode(serviceData.getData(), defaultCharset);

			String dataSource = null;
			HTTPRequestData dataSourceData = MyHTTPServer.findRecord(getData, "dataSource");
			if (dataSourceData != null && dataSourceData.getData() != null)
				dataSource = URLDecoder.decode(dataSourceData.getData(), defaultCharset);

			boolean withMetaData = false;
			HTTPRequestData withMetaDataData = MyHTTPServer.findRecord(getData, "metadata");
			if (withMetaDataData != null && withMetaDataData.getData() != null)
				withMetaData = URLDecoder.decode(withMetaDataData.getData(), defaultCharset).equalsIgnoreCase("true");

			if (host != null)
			{
				String header;
				if (cookie == null)
					header = "HTTP/1.0 200 OK\r\nConnection: close\r\nContent-Type: image/png\r\n\r\n";
				else
					header = "HTTP/1.0 200 OK\r\nSet-Cookie: " + cookie + "\r\nConnection: close\r\nContent-Type: image/png\r\n\r\n";
				socket.getOutputStream().write(header.getBytes());
				BufferedImage sparkLine = coffeeSaint.getSparkLine(host, service, dataSource, width, height, withMetaData);
				ImageIO.write(sparkLine, "png", socket.getOutputStream());
			}
		}
		catch(Exception e)
		{
			// really don't care if the transmit failed; browser
			// probably closed session
			// don't care if we could display the image or not
		}
		finally
		{
			socket.close();
		}
	}