docs: public BEValue bdecode() throws IOException {
      if (this.getNextIndicator() == -1)
        return null;
  
      if (this.indicator >= '0' && this.indicator <= '9')
        return this.bdecodeBytes();
      else if (this.indicator == 'i')
        return this.bdecodeNumber();
      else if (this.indicator == 'l')
        return this.bdecodeList();
      else if (this.indicator == 'd')
        return this.bdecodeMap();
      else
        throw new InvalidBEncodingException
                ("Unknown indicator '" + this.indicator + "'");
    }