import EDU.neu.ccs.demeter.dj.*;

class Main
{
	public static void main(String[] args)
	{
		Container c1,c2,c3;
		Item[] items1,items2,items3;

		items3=new Item[1];
		items3[0]=new Simple("apple", new Weight(1));
		c3=new Container(items3,1);

		items2=new Item[3];
		items2[0]=new Simple("pencil", new Weight(1));
		items2[1]=c3;
		items2[2]=new Simple("orange", new Weight(1));
		c2=new Container(items2,1);		

		items1=new Item[4];
		items1[0]=new Simple("apple", new Weight(1));
		items1[1]=c2;
		items1[2]=new Simple("orange", new Weight(1));
		items1[3]=new Simple("kiwi", new Weight(1));
		c1=new Container(items1,5);

		ClassGraph cg=new ClassGraph();
		TraversalGraph tg=new TraversalGraph(new Strategy("from Container to Weight"),cg);
		tg.traverse(c1,new CheckingVisitor());
	}		
}
