public void generateInOrderWire() {
			recursiveTraverse(this.root, new TraverseCallback() {
				private TreeNode previous;
				public void action(TreeNode current) {
					if (current.hasNoLeftSide()) {
						if (previous != null) {
							current.leftChild = previous;
						}
						current.leftIsWire = true;
					}
					
					if (previous != null && previous.hasNoRightSide()) {
						previous.rightChild = current;
						previous.rightIsWire = true;
					}
					
					previous = current;
				}
			});
		}