docs: def __find_hidden_analyses(self, docs):
          """ Jätab meelde, millised analüüsid on nn peidetud ehk siis mida ei 
              tule arvestada lemmade järelühestamisel:
               *) kesksõnade nud, dud, tud mitmesused; 
               *) muutumatute sõnade sõnaliigi mitmesus;
               *) oleviku 'olema' mitmesus ('nad on' vs 'ta on');
               *) asesõnade ainsuse-mitmuse mitmesus;
               *) arv- ja asesõnade vaheline mitmesus; 
              Tagastab sõnastiku peidetud analüüse sisaldanud sõnade asukohtadega, 
              iga võti kujul (doc_index, word_index); """
          hidden = dict()
          nudTudLopud = re.compile('^.*[ntd]ud$')
          for d in range(len(docs)):
              for w in range(len(docs[d][WORDS])):
                  word = docs[d][WORDS][w]
                  if ANALYSIS in word and len(word[ANALYSIS]) > 1:
                      #
                      # 1) Kui enamus analüüse on nud/tud/dud analüüsid, peida mitmesus:
                      #    kõla+nud //_V_ nud, //    kõla=nud+0 //_A_ //    kõla=nud+0 //_A_ sg n, //    kõla=nud+d //_A_ pl n, //
                      nudTud = [ nudTudLopud.match(a[ROOT]) != None or \
                                 nudTudLopud.match(a[ENDING]) != None \
                                 for a in word[ANALYSIS] ]
                      if nudTud.count( True ) > 1:
                          hidden[(d, w)] = 1
                      #
                      # 2) Kui analyysidel on sama lemma ja puudub vormitunnus, siis peida mitmesused ära:
                      #    Nt    kui+0 //_D_ //    kui+0 //_J_ //
                      #          nagu+0 //_D_ //    nagu+0 //_J_ //
                      lemmas = set([ a[ROOT] for a in word[ANALYSIS] ])
                      forms  = set([ a[FORM] for a in word[ANALYSIS] ])
                      if len(lemmas) == 1 and len(forms) == 1 and (list(forms))[0] == '':
                          hidden[(d, w)] = 1
                      #
                      # 3) Kui 'olema'-analyysidel on sama lemma ning sama l6pp, peida mitmesused:
                      #    Nt  'nad on' vs 'ta on' saavad sama olema-analyysi, mis jääb mitmeseks;
                      endings  = set([ a[ENDING] for a in word[ANALYSIS] ])
                      if len(lemmas) == 1 and (list(lemmas))[0] == 'ole' and len(endings) == 1 \
                         and (list(endings))[0] == '0':
                          hidden[(d, w)] = 1
                      #
                      # 4) Kui asesõnadel on sama lemma ja lõpp, peida ainsuse/mitmuse mitmesus:
                      #    Nt     kõik+0 //_P_ sg n //    kõik+0 //_P_ pl n //
                      #           kes+0 //_P_ sg n //    kes+0 //_P_ pl n //
                      postags  = set([ a[POSTAG] for a in word[ANALYSIS] ])
                      if len(lemmas) == 1 and len(postags) == 1 and 'P' in postags and \
                         len(endings) == 1:
                          hidden[(d, w)] = 1
                      #
                      # 5) Kui on sama lemma ja lõpp, peida arv- ja asesõnadevaheline mitmesus:
                      #    Nt     teine+0 //_O_ pl n, //    teine+0 //_P_ pl n, //
                      #           üks+l //_N_ sg ad, //    üks+l //_P_ sg ad, //
                      if len(lemmas) == 1 and 'P' in postags and ('O' in postags or \
                         'N' in postags) and len(endings) == 1:
                          hidden[(d, w)] = 1
          return hidden