protected Object getDecodedObject(BerInputStream in) {
   Object[] values = (Object[]) in.content;
   IssuingDistributionPoint idp =
       new IssuingDistributionPoint(
           (DistributionPointName) values[0], (ReasonFlags) values[3]);
   idp.encoding = in.getEncoded();
   if (values[1] != null) {
     idp.setOnlyContainsUserCerts(((Boolean) values[1]).booleanValue());
   }
   if (values[2] != null) {
     idp.setOnlyContainsCACerts(((Boolean) values[2]).booleanValue());
   }
   if (values[4] != null) {
     idp.setIndirectCRL(((Boolean) values[4]).booleanValue());
   }
   if (values[5] != null) {
     idp.setOnlyContainsAttributeCerts(((Boolean) values[5]).booleanValue());
   }
   return idp;
 }