docs: public static String decodeID(final String aID) {
          Objects.requireNonNull(aID, LOGGER.getMessage(MessageCodes.PT_004));
  
          final StringBuilder idBuf = new StringBuilder();
  
          for (int index = 0; index < aID.length(); index++) {
              final char character = aID.charAt(index);
  
              // Decode characters that need to be decoded according to Pairtree specification
              if (character == EQUALS_SIGN) {
                  idBuf.append(PATH_SEP);
              } else if (character == PLUS_SIGN) {
                  idBuf.append(COLON);
              } else if (character == COMMA) {
                  idBuf.append(PERIOD);
              } else if (character == HEX_INDICATOR) {
                  /* Get the next two characters since they are hex characters */
                  final String hex = aID.substring(index + 1, index + 3);
                  final char[] chars = Character.toChars(Integer.parseInt(hex, 16));
  
                  assert chars.length == 1;
  
                  idBuf.append(chars[0]);
                  index = index + 2;
              } else {
                  idBuf.append(character);
              }
          }
  
          return idBuf.toString();
      }