docs: public void resetSynonymsNet()
      {
          synchronized (synBuffer) {
              if ( synBuffer.size() == 0 ) {
                  return;
              }
              
              Iterator<String[]> it = synBuffer.iterator();
              while ( it.hasNext() ) {
                  String[] synLine = it.next();
                  
                  ///if ( synLine[0].length() > config.MAX_LENGTH ) {
                  ///    continue;
                  ///}
                  
                  //check if the baseWord is exists or not
                  IWord baseWord = get(ILexicon.CJK_WORD, synLine[0]);
                  if ( baseWord == null ) {
                      continue;
                  }
                  
                  /*
                   * first get the synonyms entry from the root map
                   * create a new one and map it with the root word if it not exists 
                  */
                  SynonymsEntry synEntry = rootMap.get(baseWord.getValue());
                  if ( synEntry == null ) {
                      synEntry = new SynonymsEntry(baseWord);
                      rootMap.put(baseWord.getValue(), synEntry);
                      synEntry.add(baseWord); //add the base word first
                  }
                  
                  for ( int i = 1; i < synLine.length; i++ ) {
                      String[] parts = synLine[i].split("\\s*/\\s*");
                      ///if ( parts[0].length() > config.MAX_LENGTH ) {
                      ///    continue;
                      ///}
                      
                      //check if the word is exists or not
                      //  or create a new one
                      IWord synWord = get(ILexicon.CJK_WORD, parts[0]);
                      if ( synWord == null ) {
                          synWord = new Word(parts[0], IWord.T_CJK_WORD);
                          add(ILexicon.CJK_WORD, synWord);
                      }
                      
                      //check and extends the part of speech from the baseWord
                      if ( synWord.getPartSpeech() == null ) {
                          synWord.setPartSpeech(baseWord.getPartSpeech());
                      }
                      
                      //check and extends the entity from the baseWord
                      if ( synWord.getEntity() == null ) {
                          synWord.setEntity(baseWord.getEntity());
                      }
                      
                      //check and set the pinyin
                      if ( parts.length > 1 ) {
                          synWord.setPinyin(parts[1]);
                      }
                      
                      synEntry.add(synWord);
                  }
              }
              
              synBuffer.clear();
          }
      }