public TreeNode subtreeWithAllDeepest(TreeNode root) {
        if (root == null)
            return root;
        Set<TreeNode> set = new HashSet<>();
        findDeepNodes(set, root);
        return getParentOfDeepNodes(set, root);
    }
Why Did you create this class? what does it do?
src/problems/medium/SmallestSubtreewithalltheDeepestNodes.java