import java.util.Scanner;




public class TreeStuff {

	public static class TreeNode {
		String info;
		TreeNode left;
		TreeNode right;
		
		TreeNode(String str, TreeNode lf, TreeNode rt)
		{
			info = str;
			left = lf;
			right = rt;
		}
	}
	
	
	// put the values from in into a binary search tree
	// assume at least one node
	public TreeNode buildTree(Scanner in) {
		TreeNode root = new TreeNode(in.next(), null, null);
		while (in.hasNext())
		{
			insert(in.next(), root);
		}		
		return root;
	}
	
	// assume node is not null
	public void insert(String str, TreeNode node)
	{
	
		TreeNode temp = node;
		// TODO:

	}
	
	// print nodes from BST in order
	public void printInOrder(TreeNode node)
	{
		// TODO:
	}
	
	// print tree sideways
	public void printSideWays(TreeNode node, int count)
	{
		// TODO:

	}
	
	public static void join(TreeNode a, TreeNode b)
	{
		// TODO:

	}
	
	public static TreeNode append(TreeNode a, TreeNode b)
	{
		// TODO:
		
		return a;

	}
	public static TreeNode treeToList(TreeNode root)
	{
		if (root != null)
		{
			// TODO:
			
		}
		return root;
	}
	
	// print Circular linked list in order
	public void printCircularList(TreeNode list)
	{
		if (list == null)
			return;
		TreeNode front = list;
		System.out.print(list.info + " ");
		// TODO: complete

	}
	/*
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		String data = "ncsu duke unc wfu gatech boston miami";
		TreeStuff stuff = new TreeStuff();
		Scanner in = new Scanner(data);
		TreeNode t = stuff.buildTree(in);
		stuff.printInOrder(t);
		System.out.println();
		stuff.printSideWays(t, 0);
		
		TreeNode tmp = stuff.treeToList(t);		
	    stuff.printCircularList(tmp);

	}

}
