docs: def __disambiguate_proper_names_2(self, docs, lexicon):
          """ Kustutame üleliigsed mitte-pärisnimeanalüüsid: 
              -- kui lause keskel on pärisnimeanalüüsiga sõna, jätamegi alles vaid
                 pärisnimeanalyys(id);
              -- kui lause alguses on pärisnimeanalüüsiga s6na, ning pärisnimelemma
                 esineb korpuses suurema sagedusega kui 1, jätamegi alles vaid
                 pärisnimeanalyys(id); vastasel juhul ei kustuta midagi;
          """
          for doc in docs:
              for sentence in doc.divide( layer=WORDS, by=SENTENCES ): 
                  sentencePos = 0 # Tavaline lausealgus
                  for i in range(len(sentence)):
                      word = sentence[i]
                      #  Täiendavad heuristikud lausealguspositsioonide leidmiseks:
                      #  1) kirjavahemärk, mis pole koma ega semikoolon, on lausealgus:
                      if all([ a[POSTAG] == 'Z' for a in word[ANALYSIS] ]) and \
                         not re.match('^[,;]+$', word[TEXT]):
                          sentencePos = 0
                          continue
                      #
                      # Vaatame ainult mitmeseid s6nu, mis sisaldavad ka p2risnimeanalyysi
                      #
                      if len(word[ANALYSIS]) > 1 and \
                         any([ a[POSTAG] == 'H' for a in word[ANALYSIS] ]):
                          if sentencePos != 0:
                              # 1) Kui oleme lause keskel, valime alati vaid nimeanalyysid 
                              #    (eeldades, et nyyseks on järgi jäänud vaid korrektsed nimed)
                              toDelete = []
                              for analysis in word[ANALYSIS]:
                                  if analysis[POSTAG] not in ['H', 'G']:
                                      toDelete.append( analysis )
                              for analysis in toDelete:
                                  word[ANALYSIS].remove(analysis)
                              #if toDelete:
                              #    self.__debug_print_word_in_sentence_str(sentence, word)
                          else:
                              # 2) Kui oleme lause alguses, siis valime ainult nimeanalyysid
                              #    juhul, kui vastav lemma esines ka mujal (st lemma esinemis-
                              #    sagedus on suurem kui 1);
                              # Kas m6ni lemma esineb p2risnimede leksikonis sagedusega > 1 ?
                              hasRecurringProperName = False
                              toDelete = []
                              for analysis in word[ANALYSIS]:
                                  if analysis[ROOT] in lexicon and lexicon[analysis[ROOT]] > 1:
                                      hasRecurringProperName = True
                                  if analysis[POSTAG] not in ['H', 'G']:
                                      toDelete.append( analysis )
                              if hasRecurringProperName and toDelete:
                                  # Kui p2risnimi esines ka mujal, j2tame alles vaid p2risnime-
                                  # analyysid:
                                  for analysis in toDelete:
                                      word[ANALYSIS].remove(analysis)
                                  #self.__debug_print_word_in_sentence_str(sentence, word)
                      sentencePos += 1