docs: public String addSymbol(String symbol) {
  
          // search for identical symbol
          int bucket = hash(symbol) % fTableSize;
          int length = symbol.length();
          OUTER: for (Entry entry = fBuckets[bucket]; entry != null; entry = entry.next) {
              if (length == entry.characters.length) {
                  for (int i = 0; i < length; i++) {
                      if (symbol.charAt(i) != entry.characters[i]) {
                          continue OUTER;
                      }
                  }
                  return entry.symbol;
              }
          }
  
          // create new entry
          Entry entry = new Entry(symbol, fBuckets[bucket]);
          fBuckets[bucket] = entry;
          return entry.symbol;
  
      }