protected int getMaxLeafLevel(TreeNode tn, int initialValue){
        int k=-1; int mv = -1;
        if(!tn.getChildren().isEmpty()){
            for(TreeNode tnch: tn.getChildren()){
               k= getMaxLeafLevel(tnch, k); 
               if(k>mv ){
                   mv= k;
               }
            }
            return mv;
        } else {
            return tn.getLevel();
        }
    }