public ElementQueue() {
		// want smallest one first. 
		Comparator<Triple> c = new Comparator<Triple>() {
			public int compare(Triple a, Triple b) {
				if (a.round == b.round) {
					if (a.elem < b.elem) {
						return -1;
					} else if (a.elem > b.elem) {
						return 1;
					} else {
						return 0;
					}
				} else if (a.round < b.round) {
					return -1;
				} else {
					return 1;
				}
			}
			
		};
		
		q = new PriorityQueue<Triple>(10, c);
		max = null;
	}