public void prettyPrint() {
        int cell_width = getMaxLength();
        int left_spaces, right_spaces;
        String cell_row_line = "+" + IOGeneric.multiplyString("-", cell_width);
        String row_line = IOGeneric.multiplyString(cell_row_line, width) + "+\n|";
        
        for (int j=0; j<height; j++) {
            System.out.print(row_line);
            for (int i=0; i<width; i++) {
                right_spaces = ( cell_width - lengths2d[j][i] ) / 2;
                left_spaces = cell_width - lengths2d[j][i] - right_spaces;
                System.out.print(   IOGeneric.multiplyString(" ", left_spaces)
                                    + array2d[j][i] 
                                    + IOGeneric.multiplyString(" ", right_spaces)
                                    + "|"
                                );
            }
            System.out.print("\n");
        }
        System.out.print(row_line.substring(0, row_line.length()-1));
    }