public ArrayList<LUS> linearize(boolean use_combos){
			//Linearize the tree
			seqs.clear();
			linearize_recursive(new ArrayList(), use_combos);
			
			//Create LUS objects from each linearization
			int num_seqs = seqs.size();
			ArrayList<LUS> lus = new ArrayList(num_seqs);
			for (ArrayList<LUSTree> seq: seqs){
				int size = seq.size();
				if (size > 0 || num_seqs == 1){
					int i = 0;
					int[] cards = new int[size], indexes = new int[size];
					for (LUSTree n: seq){
						cards[i] = n.card;
						indexes[i++] = n.index;
					}
					lus.add(new LUS(cards, indexes));
				}
			}
			return lus;
		}