// Path: dkpro-statistics-agreement/src/main/java/org/dkpro/statistics/agreement/unitizing/IUnitizingAnnotationStudy.java
// public interface IUnitizingAnnotationStudy
//     extends IAnnotationStudy
// {
// 
//     // -- Units --
// 
//     /** Allows iterating all annotation units of this study. */
//     Collection<IUnitizingAnnotationUnit> getUnits();
// 
//     // -- Continuum --
// 
//     // @Deprecated
//     // public int getSectionCount();
//     //
//     // @Deprecated
//     // public Iterable<Integer> getSectionBoundaries();
// 
//     /**
//      * Returns the begin of the continuum (i.e., the first offset that is considered valid for
//      * annotation units).
//      */
//     long getContinuumBegin();
// 
//     /**
//      * Returns the length of the continuum (i.e., the last possible right delimiter of an annotation
//      * unit).
//      */
//     long getContinuumLength();
// 
//     /**
//      * Returns the number of units rated by the given rater.
//      */
//     long getUnitCount(int aRaterIdx);
// 
//     // TODO: public void addSectionBoundary(long position);
// 
// }
// 
// Path: dkpro-statistics-agreement/src/main/java/org/dkpro/statistics/agreement/unitizing/IUnitizingAnnotationUnit.java
// public interface IUnitizingAnnotationUnit
//     extends IAnnotationUnit, Comparable<IUnitizingAnnotationUnit>
// {
// 
//     /**
//      * Returns the offset of the annotation unit (i.e., the start position of the identified
//      * segment).
//      */
//     public long getOffset();
// 
//     /**
//      * Returns the length of the annotation unit (i.e., the difference between the end and start
//      * position of the identified segment).
//      */
//     public long getLength();
// 
//     /**
//      * Returns the right delimiter of the annotation unit (i.e., the end position of the identified
//      * segment). The method is a shorthand for {@link #getOffset()} + {@link #getLength()}.
//      */
//     public long getEndOffset();
// 
// }


import java.io.PrintStream;
import java.util.Objects;
import org.dkpro.statistics.agreement.unitizing.IUnitizingAnnotationStudy;
import org.dkpro.statistics.agreement.unitizing.IUnitizingAnnotationUnit;
            for (int j = 0; j <= L; j++) {
                scale[i][j] = ' ';
            }
        }
        for (int i = 0; i <= L; i++) {
            int idx = 0;
            long pos = B + i;
            do {
                long lastDigit = pos % 10;
                scale[idx++][i] = (char) (lastDigit + '0');
                if (lastDigit == 0 || i == 0 || i == L) {
                    pos = pos / 10;
                }
                else {
                    break;
                }
            }
            while (pos > 0);
        }
        for (int j = digits - 1; j >= 0; j--) {
            out.print(digitSpace);
            out.print("  ");
            out.println(scale[j]);
        }

        // Rater 1.
        char[] annotations1 = new char[(int) L];
        for (int i = 0; i < L; i++) {
            annotations1[i] = ' ';
        }
// Path: dkpro-statistics-agreement/src/main/java/org/dkpro/statistics/agreement/unitizing/IUnitizingAnnotationStudy.java
// public interface IUnitizingAnnotationStudy
//     extends IAnnotationStudy
// {
// 
//     // -- Units --
// 
//     /** Allows iterating all annotation units of this study. */
//     Collection<IUnitizingAnnotationUnit> getUnits();
// 
//     // -- Continuum --
// 
//     // @Deprecated
//     // public int getSectionCount();
//     //
//     // @Deprecated
//     // public Iterable<Integer> getSectionBoundaries();
// 
//     /**
//      * Returns the begin of the continuum (i.e., the first offset that is considered valid for
//      * annotation units).
//      */
//     long getContinuumBegin();
// 
//     /**
//      * Returns the length of the continuum (i.e., the last possible right delimiter of an annotation
//      * unit).
//      */
//     long getContinuumLength();
// 
//     /**
//      * Returns the number of units rated by the given rater.
//      */
//     long getUnitCount(int aRaterIdx);
// 
//     // TODO: public void addSectionBoundary(long position);
// 
// }
// 
// Path: dkpro-statistics-agreement/src/main/java/org/dkpro/statistics/agreement/unitizing/IUnitizingAnnotationUnit.java
// public interface IUnitizingAnnotationUnit
//     extends IAnnotationUnit, Comparable<IUnitizingAnnotationUnit>
// {
// 
//     /**
//      * Returns the offset of the annotation unit (i.e., the start position of the identified
//      * segment).
//      */
//     public long getOffset();
// 
//     /**
//      * Returns the length of the annotation unit (i.e., the difference between the end and start
//      * position of the identified segment).
//      */
//     public long getLength();
// 
//     /**
//      * Returns the right delimiter of the annotation unit (i.e., the end position of the identified
//      * segment). The method is a shorthand for {@link #getOffset()} + {@link #getLength()}.
//      */
//     public long getEndOffset();
// 
// }


// Path: dkpro-statistics-agreement/src/main/java/org/dkpro/statistics/agreement/visualization/UnitizingMatrixPrinter.java
import java.io.PrintStream;
import java.util.Objects;
import org.dkpro.statistics.agreement.unitizing.IUnitizingAnnotationStudy;
import org.dkpro.statistics.agreement.unitizing.IUnitizingAnnotationUnit;

            for (int j = 0; j <= L; j++) {
                scale[i][j] = ' ';
            }
        }
        for (int i = 0; i <= L; i++) {
            int idx = 0;
            long pos = B + i;
            do {
                long lastDigit = pos % 10;
                scale[idx++][i] = (char) (lastDigit + '0');
                if (lastDigit == 0 || i == 0 || i == L) {
                    pos = pos / 10;
                }
                else {
                    break;
                }
            }
            while (pos > 0);
        }
        for (int j = digits - 1; j >= 0; j--) {
            out.print(digitSpace);
            out.print("  ");
            out.println(scale[j]);
        }

        // Rater 1.
        char[] annotations1 = new char[(int) L];
        for (int i = 0; i < L; i++) {
            annotations1[i] = ' ';
        }
        for (IUnitizingAnnotationUnit unit : study.getUnits()) {