void requestCompleted(QueryHandle qryh)
	{
		activereqs.remove(qryh);
		if (qryh.qtype == Resolver.QTYPE_PTR) {
			pendingdoms_ptr.remove(qryh.qip);
		} else if (qryh.qtype == Resolver.QTYPE_NS) {
			pendingdoms_ns.remove(qryh.qname);
		} else if (qryh.qtype == Resolver.QTYPE_MX) {
			pendingdoms_mx.remove(qryh.qname);
		} else if (qryh.qtype == Resolver.QTYPE_SOA) {
			pendingdoms_soa.remove(qryh.qname);
		} else if (qryh.qtype == Resolver.QTYPE_SRV) {
			pendingdoms_srv.remove(qryh.qname);
		} else if (qryh.qtype == Resolver.QTYPE_TXT) {
			pendingdoms_txt.remove(qryh.qname);
		} else if (qryh.qtype == Resolver.QTYPE_AAAA) {
			pendingdoms_aaaa.remove(qryh.qname);
		} else {
			pendingdoms_a.remove(qryh.qname);
		}
		if (pendingreqs.get(qryh.qid) == qryh) pendingreqs.remove(qryh.qid);
		if (qryh.getSubQueryCount() != 0) cancel(qryh);
		qrystore.store(qryh.clear());
	}