private int getAdapterPosition(int sectionIndex, int offsetIntoSection) {
        if (sections == null) {
            buildSectionIndex();
        }

        if (sectionIndex < 0) {
            throw new IndexOutOfBoundsException("sectionIndex " + sectionIndex + " < 0");
        }

        if (sectionIndex >= sections.size()) {
            throw new IndexOutOfBoundsException("sectionIndex " + sectionIndex + " >= sections.size (" + sections.size() + ")");
        }

        Section section = this.sections.get(sectionIndex);
        int adapterPosition = section.adapterPosition;
        return offsetIntoSection + adapterPosition;
    }
Given a sectionIndex index, and an offset into the sectionIndex where 0 is the header, 1 is the ghostHeader, 2 is the first item in the sectionIndex, return the corresponding "global" adapter position

@param sectionIndex      a sectionIndex index
@param offsetIntoSection offset into sectionIndex where 0 is the header, 1 is the first item, etc
@return the "global" adapter adapterPosition
android/modules/module_common/src/main/java/github/tornaco/android/thanos/widget/section/SectioningAdapter.java