public DistributedQuery(Statement s, ArrayList dbList) {
		
                this.tempDB = s;
                this.dbList = dbList;
                
                String os = System.getProperty("os.name").toLowerCase();
		
		if (!ServicesParser.isInitialized()) {
			String servicesFile;
			
			if (os.indexOf("windows") > -1)
				servicesFile = System.getProperty("user.home") + "\\system32\\drivers\\etc\\services";
			else
				servicesFile = "/etc/services";
			
			try {
				new ServicesParser(new FileInputStream(new File(servicesFile)));
				ServicesParser.Start();
			} catch (FileNotFoundException e) {
				return;
			} catch (ParseException e) {
				return;
			}
		}
		
		tcpServices = ServicesParser.getTcpServices();
		udpServices = ServicesParser.getUdpServices();
		portMap = ServicesParser.getPortHash();
		
		if (!ProtocolsParser.isInitialized()) {
			String protocolsFile;
			
			if (os.indexOf("windows") > -1)
				protocolsFile = System.getProperty("user.home") + "\\system32\\drivers\\etc\\protocols";
			else
				protocolsFile = "/etc/protocols";
			
			try {
				new ProtocolsParser(new FileInputStream(new File(protocolsFile)));
				ProtocolsParser.Start();
			} catch (FileNotFoundException e) {
				return;
			} catch (ParseException e) {
				return;
			}
		}
		
		protocols = ProtocolsParser.getProtocols();
		protocolMap = ProtocolsParser.getProtoHash();
		
		System.setProperty("java.awt.headless", "true");
	}