if (seq.size() != 7)
if (seq.size() < 7 || seq.size() > 9)
    public AttributeCertificateInfo(        ASN1Sequence   seq)    {        if (seq.size() != 7)        {            throw new IllegalArgumentException("Bad sequence size: " + seq.size());        }        this.version = DERInteger.getInstance(seq.getObjectAt(0));        this.holder = Holder.getInstance(seq.getObjectAt(1));        this.issuer = AttCertIssuer.getInstance(seq.getObjectAt(2));        this.signature = AlgorithmIdentifier.getInstance(seq.getObjectAt(3));        this.serialNumber = DERInteger.getInstance(seq.getObjectAt(4));        this.attrCertValidityPeriod = AttCertValidityPeriod.getInstance(seq.getObjectAt(5));        this.attributes = ASN1Sequence.getInstance(seq.getObjectAt(6));                for (int i = 7; i < seq.size(); i++)        {            ASN1Encodable    obj = (ASN1Encodable)seq.getObjectAt(i);            if (obj instanceof DERBitString)            {                this.issuerUniqueID = DERBitString.getInstance(seq.getObjectAt(i));            }            else if (obj instanceof ASN1Sequence || obj instanceof X509Extensions)            {                this.extensions = X509Extensions.getInstance(seq.getObjectAt(i));            }        }    }