private void insert_recursive(LUSTree node){
			build_id = node.index+1;
			//The new card cannot be inserted here (wouldn't be sorted)
			if (node.card < card)
				build_result = false;
			else{
				build_result = false;
				//Check to see if it can be inserted somewhere further
				for (LUSTree n: branches){
					//This node has already been visited
					if (n.build_id == build_id){
						if (n.build_result)
							build_result = true;
					}
					else{
						n.insert_recursive(node);
						if (n.build_result)
							build_result = true;
					}
				}
				//If not, we'll insert it here
				//Make sure there is enough usable in between the cards
				if (!build_result && (node.card-card >= node.index-index)){
					branches.add(node);
					build_result = true;
				}
			}
		}