code: public void decode(AsnInputStream ais) throws ParseException {
  
          try {
              AsnInputStream localAis = ais.readSequenceStream();
  
              int tag = localAis.readTag();
              if (tag != Tag.EXTERNAL || localAis.getTagClass() != Tag.CLASS_UNIVERSAL)
                  throw new AsnException("Error decoding UserInformation.sequence: wrong tag or tag class: tag=" + tag
                          + ", tagClass=" + localAis.getTagClass());
  
              ext.decode(localAis);
          } catch (IOException e) {
              throw new ParseException(PAbortCauseType.BadlyFormattedTxPortion, null,
                      "IOException when decoding UserInformation: " + e.getMessage(), e);
          } catch (AsnException e) {
              throw new ParseException(PAbortCauseType.BadlyFormattedTxPortion, null,
                      "AsnException when decoding UserInformation: " + e.getMessage(), e);
          }
      }
docs: /*
  (non-Javadoc)
  
  @see org.mobicents.protocols.asn.External#decode(org.mobicents.protocols.asn.AsnInputStream)