docs: def split_Text( text, file_name, verbose = True ):
      ''' Tokenizes the *text* (from *file_name*) into sentences, and if the number of 
          sentences exceeds *max_sentences*, splits the text into smaller texts.
  
          Returns a list containing the original text (if no splitting was required),
          or a list containing results of the splitting (smaller texts);
      '''
      if verbose:
         print('  processing '+file_name+' ... ', end="" )
      # Tokenize text into sentences
      start = timer()
      text = text.tokenize_sentences()
      all_sentences = len(text[SENTENCES])
      end = timer()
      if verbose:
         print('  (tok time: '+format_time( end-start )+')', end="" )
      if all_sentences > max_sentences:
         # Acquire spans of length *max_sentences* from the text
         start = timer()
         i = 0
         spans = []
         len_total = 0
         while i < all_sentences:
              startSent = text[SENTENCES][i]
              endSent   = text[SENTENCES][min(i+(max_sentences-1), all_sentences-1)]
              span = (startSent[START], endSent[END])
              len_total += (span[1]-span[0])
              spans.append(span)
              i += max_sentences
         # Divide the text into spans
         text_spans = text.texts_from_spans(spans)
         assert len(text.text) >= len_total, '(!) Total spans_len must be =< than text_len: '+str(len_total)+'/'+str(len(text.text))
         new_texts  = []
         for i, small_text in enumerate( text_spans ):
             newText = Text( small_text )
             for key in text.keys():
                 if key != TEXT and key != SENTENCES and key != PARAGRAPHS:
                    newText[key] = text[key]
             newText['_text_split_id']     = i
             newText['_text_split_origin'] = str(spans[i])  #  Convert it to string; Otherwise, split_by(*) may mistakenly consider 
                                                            #  it a layer and may run into error while trying to split it;
             newText['_text_split_file']   = file_name
             #print( json.dumps(newText) )
             new_texts.append( newText )
         end = timer()
         if verbose:
             print('  (split time: '+format_time( end-start )+')', end="" )
             print('  (sents: '+str(all_sentences)+', new_texts:'+str(len(new_texts))+')', end="")
             print()
         return new_texts
      else:
         if verbose:
             print('  (sents: '+str(all_sentences)+', no_split)', end=" \n")
         return [text]