code: public void prepare() {
          this.token_array = this.prepareTokenArray();
          SuffixData suffixData = SuffixArrays.createWithLCP(token_array, new SAIS(), comparator);
          this.suffix_array = suffixData.getSuffixArray();
          this.LCP_array = suffixData.getLCP();
          this.blocks = splitLCP_ArrayIntoIntervals();
          constructWitnessToBlockInstancesMap();
      }
docs: TODO: we do not have to store witnesses!