public static TreeNode commonAncestor(TreeNode root, int childOne, int childTwo) {
		if (root == null)
			return null;
		
		if (childOne == root.value || childTwo == root.value)
			return root;
		
		TreeNode left = commonAncestor(root.left, childOne, childTwo);
		TreeNode right = commonAncestor(root.right, childOne, childTwo);
		
		if (left != null && right != null)
			return root;
		
		return left == null ? right : left;
	}