class HierarchyTreeNode implements Iterable<HierarchyTreeNode>, Streamable<HierarchyTreeNode>, Serializable {

    boolean managersEqual(HierarchyTreeNode other) {
        var otherManager = Objects.requireNonNull(other).manager;

        if(manager == otherManager) {
            return true;
        } else if(Objects.isNull(manager) || Objects.isNull(otherManager)) {
            return false;
        }

        return Objects.equals(manager.id, otherManager.id);
    }

    public  HierarchyTreeNode(User user);

}