require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&__rfc2459_asn1_h__)) {
    eval 'sub __rfc2459_asn1_h__ () {1;}' unless defined(&__rfc2459_asn1_h__);
    require 'stddef.ph';
    require 'time.ph';
    unless(defined(&__asn1_common_definitions__)) {
	eval 'sub __asn1_common_definitions__ () {1;}' unless defined(&__asn1_common_definitions__);
	unless(defined(&__HEIM_BASE_DATA__)) {
	    eval 'sub __HEIM_BASE_DATA__ () {1;}' unless defined(&__HEIM_BASE_DATA__);
	}
	eval 'sub ASN1_MALLOC_ENCODE {
	    my($T, $B, $BL, $S, $L, $R) = @_;
    	    eval q( &do { =  &length_$T(); =  &malloc();  &if( ==  &NULL) { =  &ENOMEM; }  &else { =  &encode_$T((($B)) + ($BL) - 1, ($BL), ($S), ($L));  &if(($R) != 0) {  &free(($B)); ($B) =  &NULL; } } }  &while (0));
	}' unless defined(&ASN1_MALLOC_ENCODE);
	if(defined(&_WIN32)) {
	    unless(defined(&ASN1_LIB)) {
		eval 'sub ASN1EXP () { &__declspec( &dllimport);}' unless defined(&ASN1EXP);
	    } else {
		eval 'sub ASN1EXP () {1;}' unless defined(&ASN1EXP);
	    }
	    eval 'sub ASN1CALL () { &__stdcall;}' unless defined(&ASN1CALL);
	} else {
	    eval 'sub ASN1EXP () {1;}' unless defined(&ASN1EXP);
	    eval 'sub ASN1CALL () {1;}' unless defined(&ASN1CALL);
	}
    }
    require 'krb5/heim_asn1.ph';
    eval("sub rfc3280_version_1 () { 0; }") unless defined(&rfc3280_version_1);
    eval("sub rfc3280_version_2 () { 1; }") unless defined(&rfc3280_version_2);
    eval("sub rfc3280_version_3 () { 2; }") unless defined(&rfc3280_version_3);
    eval 'sub ASN1_OID_ID_PKCS_1 () {( &asn1_oid_id_pkcs_1);}' unless defined(&ASN1_OID_ID_PKCS_1);
    eval 'sub ASN1_OID_ID_PKCS1_RSAENCRYPTION () {( &asn1_oid_id_pkcs1_rsaEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_RSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_MD2WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_md2WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_MD2WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_MD5WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_md5WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_MD5WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_SHA1WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_sha1WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_SHA1WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_SHA256WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_sha256WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_SHA256WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_SHA384WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_sha384WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_SHA384WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_PKCS1_SHA512WITHRSAENCRYPTION () {( &asn1_oid_id_pkcs1_sha512WithRSAEncryption);}' unless defined(&ASN1_OID_ID_PKCS1_SHA512WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_HEIM_RSA_PKCS1_X509 () {( &asn1_oid_id_heim_rsa_pkcs1_x509);}' unless defined(&ASN1_OID_ID_HEIM_RSA_PKCS1_X509);
    eval 'sub ASN1_OID_ID_PKCS_2 () {( &asn1_oid_id_pkcs_2);}' unless defined(&ASN1_OID_ID_PKCS_2);
    eval 'sub ASN1_OID_ID_PKCS2_MD2 () {( &asn1_oid_id_pkcs2_md2);}' unless defined(&ASN1_OID_ID_PKCS2_MD2);
    eval 'sub ASN1_OID_ID_PKCS2_MD4 () {( &asn1_oid_id_pkcs2_md4);}' unless defined(&ASN1_OID_ID_PKCS2_MD4);
    eval 'sub ASN1_OID_ID_PKCS2_MD5 () {( &asn1_oid_id_pkcs2_md5);}' unless defined(&ASN1_OID_ID_PKCS2_MD5);
    eval 'sub ASN1_OID_ID_RSA_DIGESTALGORITHM () {( &asn1_oid_id_rsa_digestAlgorithm);}' unless defined(&ASN1_OID_ID_RSA_DIGESTALGORITHM);
    eval 'sub ASN1_OID_ID_RSA_DIGEST_MD2 () {( &asn1_oid_id_rsa_digest_md2);}' unless defined(&ASN1_OID_ID_RSA_DIGEST_MD2);
    eval 'sub ASN1_OID_ID_RSA_DIGEST_MD4 () {( &asn1_oid_id_rsa_digest_md4);}' unless defined(&ASN1_OID_ID_RSA_DIGEST_MD4);
    eval 'sub ASN1_OID_ID_RSA_DIGEST_MD5 () {( &asn1_oid_id_rsa_digest_md5);}' unless defined(&ASN1_OID_ID_RSA_DIGEST_MD5);
    eval 'sub ASN1_OID_ID_PKCS_3 () {( &asn1_oid_id_pkcs_3);}' unless defined(&ASN1_OID_ID_PKCS_3);
    eval 'sub ASN1_OID_ID_PKCS3_RC2_CBC () {( &asn1_oid_id_pkcs3_rc2_cbc);}' unless defined(&ASN1_OID_ID_PKCS3_RC2_CBC);
    eval 'sub ASN1_OID_ID_PKCS3_RC4 () {( &asn1_oid_id_pkcs3_rc4);}' unless defined(&ASN1_OID_ID_PKCS3_RC4);
    eval 'sub ASN1_OID_ID_PKCS3_DES_EDE3_CBC () {( &asn1_oid_id_pkcs3_des_ede3_cbc);}' unless defined(&ASN1_OID_ID_PKCS3_DES_EDE3_CBC);
    eval 'sub ASN1_OID_ID_RSADSI_ENCALG () {( &asn1_oid_id_rsadsi_encalg);}' unless defined(&ASN1_OID_ID_RSADSI_ENCALG);
    eval 'sub ASN1_OID_ID_RSADSI_RC2_CBC () {( &asn1_oid_id_rsadsi_rc2_cbc);}' unless defined(&ASN1_OID_ID_RSADSI_RC2_CBC);
    eval 'sub ASN1_OID_ID_RSADSI_DES_EDE3_CBC () {( &asn1_oid_id_rsadsi_des_ede3_cbc);}' unless defined(&ASN1_OID_ID_RSADSI_DES_EDE3_CBC);
    eval 'sub ASN1_OID_ID_SECSIG_SHA_1 () {( &asn1_oid_id_secsig_sha_1);}' unless defined(&ASN1_OID_ID_SECSIG_SHA_1);
    eval 'sub ASN1_OID_ID_SECSIG_SHA_1WITHRSAENCRYPTION () {( &asn1_oid_id_secsig_sha_1WithRSAEncryption);}' unless defined(&ASN1_OID_ID_SECSIG_SHA_1WITHRSAENCRYPTION);
    eval 'sub ASN1_OID_ID_NISTALGORITHM () {( &asn1_oid_id_nistAlgorithm);}' unless defined(&ASN1_OID_ID_NISTALGORITHM);
    eval 'sub ASN1_OID_ID_NIST_AES_ALGS () {( &asn1_oid_id_nist_aes_algs);}' unless defined(&ASN1_OID_ID_NIST_AES_ALGS);
    eval 'sub ASN1_OID_ID_AES_128_CBC () {( &asn1_oid_id_aes_128_cbc);}' unless defined(&ASN1_OID_ID_AES_128_CBC);
    eval 'sub ASN1_OID_ID_AES_192_CBC () {( &asn1_oid_id_aes_192_cbc);}' unless defined(&ASN1_OID_ID_AES_192_CBC);
    eval 'sub ASN1_OID_ID_AES_256_CBC () {( &asn1_oid_id_aes_256_cbc);}' unless defined(&ASN1_OID_ID_AES_256_CBC);
    eval 'sub ASN1_OID_ID_NIST_SHA_ALGS () {( &asn1_oid_id_nist_sha_algs);}' unless defined(&ASN1_OID_ID_NIST_SHA_ALGS);
    eval 'sub ASN1_OID_ID_SHA256 () {( &asn1_oid_id_sha256);}' unless defined(&ASN1_OID_ID_SHA256);
    eval 'sub ASN1_OID_ID_SHA224 () {( &asn1_oid_id_sha224);}' unless defined(&ASN1_OID_ID_SHA224);
    eval 'sub ASN1_OID_ID_SHA384 () {( &asn1_oid_id_sha384);}' unless defined(&ASN1_OID_ID_SHA384);
    eval 'sub ASN1_OID_ID_SHA512 () {( &asn1_oid_id_sha512);}' unless defined(&ASN1_OID_ID_SHA512);
    eval 'sub ASN1_OID_ID_DHPUBLICNUMBER () {( &asn1_oid_id_dhpublicnumber);}' unless defined(&ASN1_OID_ID_DHPUBLICNUMBER);
    eval 'sub ASN1_OID_ID_ECPUBLICKEY () {( &asn1_oid_id_ecPublicKey);}' unless defined(&ASN1_OID_ID_ECPUBLICKEY);
    eval 'sub ASN1_OID_ID_ECDH () {( &asn1_oid_id_ecDH);}' unless defined(&ASN1_OID_ID_ECDH);
    eval 'sub ASN1_OID_ID_ECMQV () {( &asn1_oid_id_ecMQV);}' unless defined(&ASN1_OID_ID_ECMQV);
    eval 'sub ASN1_OID_ID_ECDSA_WITH_SHA512 () {( &asn1_oid_id_ecdsa_with_SHA512);}' unless defined(&ASN1_OID_ID_ECDSA_WITH_SHA512);
    eval 'sub ASN1_OID_ID_ECDSA_WITH_SHA384 () {( &asn1_oid_id_ecdsa_with_SHA384);}' unless defined(&ASN1_OID_ID_ECDSA_WITH_SHA384);
    eval 'sub ASN1_OID_ID_ECDSA_WITH_SHA256 () {( &asn1_oid_id_ecdsa_with_SHA256);}' unless defined(&ASN1_OID_ID_ECDSA_WITH_SHA256);
    eval 'sub ASN1_OID_ID_ECDSA_WITH_SHA224 () {( &asn1_oid_id_ecdsa_with_SHA224);}' unless defined(&ASN1_OID_ID_ECDSA_WITH_SHA224);
    eval 'sub ASN1_OID_ID_ECDSA_WITH_SHA1 () {( &asn1_oid_id_ecdsa_with_SHA1);}' unless defined(&ASN1_OID_ID_ECDSA_WITH_SHA1);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP256R1 () {( &asn1_oid_id_ec_group_secp256r1);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP256R1);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP160R1 () {( &asn1_oid_id_ec_group_secp160r1);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP160R1);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP160R2 () {( &asn1_oid_id_ec_group_secp160r2);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP160R2);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP224R1 () {( &asn1_oid_id_ec_group_secp224r1);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP224R1);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP384R1 () {( &asn1_oid_id_ec_group_secp384r1);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP384R1);
    eval 'sub ASN1_OID_ID_EC_GROUP_SECP521R1 () {( &asn1_oid_id_ec_group_secp521r1);}' unless defined(&ASN1_OID_ID_EC_GROUP_SECP521R1);
    eval 'sub ASN1_OID_ID_X9_57 () {( &asn1_oid_id_x9_57);}' unless defined(&ASN1_OID_ID_X9_57);
    eval 'sub ASN1_OID_ID_DSA () {( &asn1_oid_id_dsa);}' unless defined(&ASN1_OID_ID_DSA);
    eval 'sub ASN1_OID_ID_DSA_WITH_SHA1 () {( &asn1_oid_id_dsa_with_sha1);}' unless defined(&ASN1_OID_ID_DSA_WITH_SHA1);
    eval 'sub ASN1_OID_ID_X520_AT () {( &asn1_oid_id_x520_at);}' unless defined(&ASN1_OID_ID_X520_AT);
    eval 'sub ASN1_OID_ID_AT_COMMONNAME () {( &asn1_oid_id_at_commonName);}' unless defined(&ASN1_OID_ID_AT_COMMONNAME);
    eval 'sub ASN1_OID_ID_AT_SURNAME () {( &asn1_oid_id_at_surname);}' unless defined(&ASN1_OID_ID_AT_SURNAME);
    eval 'sub ASN1_OID_ID_AT_SERIALNUMBER () {( &asn1_oid_id_at_serialNumber);}' unless defined(&ASN1_OID_ID_AT_SERIALNUMBER);
    eval 'sub ASN1_OID_ID_AT_COUNTRYNAME () {( &asn1_oid_id_at_countryName);}' unless defined(&ASN1_OID_ID_AT_COUNTRYNAME);
    eval 'sub ASN1_OID_ID_AT_LOCALITYNAME () {( &asn1_oid_id_at_localityName);}' unless defined(&ASN1_OID_ID_AT_LOCALITYNAME);
    eval 'sub ASN1_OID_ID_AT_STATEORPROVINCENAME () {( &asn1_oid_id_at_stateOrProvinceName);}' unless defined(&ASN1_OID_ID_AT_STATEORPROVINCENAME);
    eval 'sub ASN1_OID_ID_AT_STREETADDRESS () {( &asn1_oid_id_at_streetAddress);}' unless defined(&ASN1_OID_ID_AT_STREETADDRESS);
    eval 'sub ASN1_OID_ID_AT_ORGANIZATIONNAME () {( &asn1_oid_id_at_organizationName);}' unless defined(&ASN1_OID_ID_AT_ORGANIZATIONNAME);
    eval 'sub ASN1_OID_ID_AT_ORGANIZATIONALUNITNAME () {( &asn1_oid_id_at_organizationalUnitName);}' unless defined(&ASN1_OID_ID_AT_ORGANIZATIONALUNITNAME);
    eval 'sub ASN1_OID_ID_AT_TITLE () {( &asn1_oid_id_at_title);}' unless defined(&ASN1_OID_ID_AT_TITLE);
    eval 'sub ASN1_OID_ID_AT_DESCRIPTION () {( &asn1_oid_id_at_description);}' unless defined(&ASN1_OID_ID_AT_DESCRIPTION);
    eval 'sub ASN1_OID_ID_AT_NAME () {( &asn1_oid_id_at_name);}' unless defined(&ASN1_OID_ID_AT_NAME);
    eval 'sub ASN1_OID_ID_AT_GIVENNAME () {( &asn1_oid_id_at_givenName);}' unless defined(&ASN1_OID_ID_AT_GIVENNAME);
    eval 'sub ASN1_OID_ID_AT_INITIALS () {( &asn1_oid_id_at_initials);}' unless defined(&ASN1_OID_ID_AT_INITIALS);
    eval 'sub ASN1_OID_ID_AT_GENERATIONQUALIFIER () {( &asn1_oid_id_at_generationQualifier);}' unless defined(&ASN1_OID_ID_AT_GENERATIONQUALIFIER);
    eval 'sub ASN1_OID_ID_AT_PSEUDONYM () {( &asn1_oid_id_at_pseudonym);}' unless defined(&ASN1_OID_ID_AT_PSEUDONYM);
    eval 'sub ASN1_OID_ID_USERID () {( &asn1_oid_id_Userid);}' unless defined(&ASN1_OID_ID_USERID);
    eval 'sub ASN1_OID_ID_DOMAINCOMPONENT () {( &asn1_oid_id_domainComponent);}' unless defined(&ASN1_OID_ID_DOMAINCOMPONENT);
    eval 'sub ASN1_OID_ID_X509_CE () {( &asn1_oid_id_x509_ce);}' unless defined(&ASN1_OID_ID_X509_CE);
    eval("sub choice_DirectoryString_ia5String () { 1; }") unless defined(&choice_DirectoryString_ia5String);
    eval("sub choice_DirectoryString_teletexString () { 2; }") unless defined(&choice_DirectoryString_teletexString);
    eval("sub choice_DirectoryString_printableString () { 3; }") unless defined(&choice_DirectoryString_printableString);
    eval("sub choice_DirectoryString_universalString () { 4; }") unless defined(&choice_DirectoryString_universalString);
    eval("sub choice_DirectoryString_utf8String () { 5; }") unless defined(&choice_DirectoryString_utf8String);
    eval("sub choice_DirectoryString_bmpString () { 6; }") unless defined(&choice_DirectoryString_bmpString);
    eval("sub choice_Name_rdnSequence () { 1; }") unless defined(&choice_Name_rdnSequence);
    eval("sub choice_Time_utcTime () { 1; }") unless defined(&choice_Time_utcTime);
    eval("sub choice_Time_generalTime () { 2; }") unless defined(&choice_Time_generalTime);
    eval("sub choice_GeneralName_otherName () { 1; }") unless defined(&choice_GeneralName_otherName);
    eval("sub choice_GeneralName_rfc822Name () { 2; }") unless defined(&choice_GeneralName_rfc822Name);
    eval("sub choice_GeneralName_dNSName () { 3; }") unless defined(&choice_GeneralName_dNSName);
    eval("sub choice_GeneralName_directoryName () { 4; }") unless defined(&choice_GeneralName_directoryName);
    eval("sub choice_GeneralName_uniformResourceIdentifier () { 5; }") unless defined(&choice_GeneralName_uniformResourceIdentifier);
    eval("sub choice_GeneralName_iPAddress () { 6; }") unless defined(&choice_GeneralName_iPAddress);
    eval("sub choice_GeneralName_registeredID () { 7; }") unless defined(&choice_GeneralName_registeredID);
    eval("sub choice_GeneralName_directoryName_rdnSequence () { 1; }") unless defined(&choice_GeneralName_directoryName_rdnSequence);
    eval 'sub ASN1_OID_ID_X509_CE_KEYUSAGE () {( &asn1_oid_id_x509_ce_keyUsage);}' unless defined(&ASN1_OID_ID_X509_CE_KEYUSAGE);
    eval 'sub ASN1_OID_ID_X509_CE_AUTHORITYKEYIDENTIFIER () {( &asn1_oid_id_x509_ce_authorityKeyIdentifier);}' unless defined(&ASN1_OID_ID_X509_CE_AUTHORITYKEYIDENTIFIER);
    eval 'sub ASN1_OID_ID_X509_CE_SUBJECTKEYIDENTIFIER () {( &asn1_oid_id_x509_ce_subjectKeyIdentifier);}' unless defined(&ASN1_OID_ID_X509_CE_SUBJECTKEYIDENTIFIER);
    eval 'sub ASN1_OID_ID_X509_CE_BASICCONSTRAINTS () {( &asn1_oid_id_x509_ce_basicConstraints);}' unless defined(&ASN1_OID_ID_X509_CE_BASICCONSTRAINTS);
    eval 'sub ASN1_OID_ID_X509_CE_NAMECONSTRAINTS () {( &asn1_oid_id_x509_ce_nameConstraints);}' unless defined(&ASN1_OID_ID_X509_CE_NAMECONSTRAINTS);
    eval 'sub ASN1_OID_ID_X509_CE_PRIVATEKEYUSAGEPERIOD () {( &asn1_oid_id_x509_ce_privateKeyUsagePeriod);}' unless defined(&ASN1_OID_ID_X509_CE_PRIVATEKEYUSAGEPERIOD);
    eval 'sub ASN1_OID_ID_X509_CE_CERTIFICATEPOLICIES () {( &asn1_oid_id_x509_ce_certificatePolicies);}' unless defined(&ASN1_OID_ID_X509_CE_CERTIFICATEPOLICIES);
    eval 'sub ASN1_OID_ID_X509_CE_POLICYMAPPINGS () {( &asn1_oid_id_x509_ce_policyMappings);}' unless defined(&ASN1_OID_ID_X509_CE_POLICYMAPPINGS);
    eval 'sub ASN1_OID_ID_X509_CE_SUBJECTALTNAME () {( &asn1_oid_id_x509_ce_subjectAltName);}' unless defined(&ASN1_OID_ID_X509_CE_SUBJECTALTNAME);
    eval 'sub ASN1_OID_ID_X509_CE_ISSUERALTNAME () {( &asn1_oid_id_x509_ce_issuerAltName);}' unless defined(&ASN1_OID_ID_X509_CE_ISSUERALTNAME);
    eval 'sub ASN1_OID_ID_X509_CE_SUBJECTDIRECTORYATTRIBUTES () {( &asn1_oid_id_x509_ce_subjectDirectoryAttributes);}' unless defined(&ASN1_OID_ID_X509_CE_SUBJECTDIRECTORYATTRIBUTES);
    eval 'sub ASN1_OID_ID_X509_CE_POLICYCONSTRAINTS () {( &asn1_oid_id_x509_ce_policyConstraints);}' unless defined(&ASN1_OID_ID_X509_CE_POLICYCONSTRAINTS);
    eval 'sub ASN1_OID_ID_X509_CE_EXTKEYUSAGE () {( &asn1_oid_id_x509_ce_extKeyUsage);}' unless defined(&ASN1_OID_ID_X509_CE_EXTKEYUSAGE);
    eval 'sub ASN1_OID_ID_X509_CE_CRLDISTRIBUTIONPOINTS () {( &asn1_oid_id_x509_ce_cRLDistributionPoints);}' unless defined(&ASN1_OID_ID_X509_CE_CRLDISTRIBUTIONPOINTS);
    eval 'sub ASN1_OID_ID_X509_CE_DELTACRLINDICATOR () {( &asn1_oid_id_x509_ce_deltaCRLIndicator);}' unless defined(&ASN1_OID_ID_X509_CE_DELTACRLINDICATOR);
    eval 'sub ASN1_OID_ID_X509_CE_ISSUINGDISTRIBUTIONPOINT () {( &asn1_oid_id_x509_ce_issuingDistributionPoint);}' unless defined(&ASN1_OID_ID_X509_CE_ISSUINGDISTRIBUTIONPOINT);
    eval 'sub ASN1_OID_ID_X509_CE_HOLDINSTRUCTIONCODE () {( &asn1_oid_id_x509_ce_holdInstructionCode);}' unless defined(&ASN1_OID_ID_X509_CE_HOLDINSTRUCTIONCODE);
    eval 'sub ASN1_OID_ID_X509_CE_INVALIDITYDATE () {( &asn1_oid_id_x509_ce_invalidityDate);}' unless defined(&ASN1_OID_ID_X509_CE_INVALIDITYDATE);
    eval 'sub ASN1_OID_ID_X509_CE_CERTIFICATEISSUER () {( &asn1_oid_id_x509_ce_certificateIssuer);}' unless defined(&ASN1_OID_ID_X509_CE_CERTIFICATEISSUER);
    eval 'sub ASN1_OID_ID_X509_CE_INHIBITANYPOLICY () {( &asn1_oid_id_x509_ce_inhibitAnyPolicy);}' unless defined(&ASN1_OID_ID_X509_CE_INHIBITANYPOLICY);
    eval("sub choice_DistributionPointName_fullName () { 1; }") unless defined(&choice_DistributionPointName_fullName);
    eval("sub choice_DistributionPointName_nameRelativeToCRLIssuer () { 2; }") unless defined(&choice_DistributionPointName_nameRelativeToCRLIssuer);
    eval("sub choice_ECParameters_namedCurve () { 1; }") unless defined(&choice_ECParameters_namedCurve);
    eval 'sub ASN1_OID_ID_X509_CE_CRLNUMBER () {( &asn1_oid_id_x509_ce_cRLNumber);}' unless defined(&ASN1_OID_ID_X509_CE_CRLNUMBER);
    eval 'sub ASN1_OID_ID_X509_CE_FRESHESTCRL () {( &asn1_oid_id_x509_ce_freshestCRL);}' unless defined(&ASN1_OID_ID_X509_CE_FRESHESTCRL);
    eval 'sub ASN1_OID_ID_X509_CE_CRLREASON () {( &asn1_oid_id_x509_ce_cRLReason);}' unless defined(&ASN1_OID_ID_X509_CE_CRLREASON);
    eval("sub unspecified () { 0; }") unless defined(&unspecified);
    eval("sub keyCompromise () { 1; }") unless defined(&keyCompromise);
    eval("sub cACompromise () { 2; }") unless defined(&cACompromise);
    eval("sub affiliationChanged () { 3; }") unless defined(&affiliationChanged);
    eval("sub superseded () { 4; }") unless defined(&superseded);
    eval("sub cessationOfOperation () { 5; }") unless defined(&cessationOfOperation);
    eval("sub certificateHold () { 6; }") unless defined(&certificateHold);
    eval("sub removeFromCRL () { 8; }") unless defined(&removeFromCRL);
    eval("sub privilegeWithdrawn () { 9; }") unless defined(&privilegeWithdrawn);
    eval("sub aACompromise () { 10; }") unless defined(&aACompromise);
    eval 'sub ASN1_OID_ID_PKIX () {( &asn1_oid_id_pkix);}' unless defined(&ASN1_OID_ID_PKIX);
    eval 'sub ASN1_OID_ID_PKIX_ON () {( &asn1_oid_id_pkix_on);}' unless defined(&ASN1_OID_ID_PKIX_ON);
    eval 'sub ASN1_OID_ID_PKIX_ON_XMPPADDR () {( &asn1_oid_id_pkix_on_xmppAddr);}' unless defined(&ASN1_OID_ID_PKIX_ON_XMPPADDR);
    eval 'sub ASN1_OID_ID_PKIX_ON_DNSSRV () {( &asn1_oid_id_pkix_on_dnsSRV);}' unless defined(&ASN1_OID_ID_PKIX_ON_DNSSRV);
    eval 'sub ASN1_OID_ID_PKIX_KP () {( &asn1_oid_id_pkix_kp);}' unless defined(&ASN1_OID_ID_PKIX_KP);
    eval 'sub ASN1_OID_ID_PKIX_KP_SERVERAUTH () {( &asn1_oid_id_pkix_kp_serverAuth);}' unless defined(&ASN1_OID_ID_PKIX_KP_SERVERAUTH);
    eval 'sub ASN1_OID_ID_PKIX_KP_CLIENTAUTH () {( &asn1_oid_id_pkix_kp_clientAuth);}' unless defined(&ASN1_OID_ID_PKIX_KP_CLIENTAUTH);
    eval 'sub ASN1_OID_ID_PKIX_KP_EMAILPROTECTION () {( &asn1_oid_id_pkix_kp_emailProtection);}' unless defined(&ASN1_OID_ID_PKIX_KP_EMAILPROTECTION);
    eval 'sub ASN1_OID_ID_PKIX_KP_TIMESTAMPING () {( &asn1_oid_id_pkix_kp_timeStamping);}' unless defined(&ASN1_OID_ID_PKIX_KP_TIMESTAMPING);
    eval 'sub ASN1_OID_ID_PKIX_KP_OCSPSIGNING () {( &asn1_oid_id_pkix_kp_OCSPSigning);}' unless defined(&ASN1_OID_ID_PKIX_KP_OCSPSIGNING);
    eval 'sub ASN1_OID_ID_PKIX_PE () {( &asn1_oid_id_pkix_pe);}' unless defined(&ASN1_OID_ID_PKIX_PE);
    eval 'sub ASN1_OID_ID_PKIX_PE_AUTHORITYINFOACCESS () {( &asn1_oid_id_pkix_pe_authorityInfoAccess);}' unless defined(&ASN1_OID_ID_PKIX_PE_AUTHORITYINFOACCESS);
    eval 'sub ASN1_OID_ID_PKIX_PE_PROXYCERTINFO () {( &asn1_oid_id_pkix_pe_proxyCertInfo);}' unless defined(&ASN1_OID_ID_PKIX_PE_PROXYCERTINFO);
    eval 'sub ASN1_OID_ID_PKIX_PPL () {( &asn1_oid_id_pkix_ppl);}' unless defined(&ASN1_OID_ID_PKIX_PPL);
    eval 'sub ASN1_OID_ID_PKIX_PPL_ANYLANGUAGE () {( &asn1_oid_id_pkix_ppl_anyLanguage);}' unless defined(&ASN1_OID_ID_PKIX_PPL_ANYLANGUAGE);
    eval 'sub ASN1_OID_ID_PKIX_PPL_INHERITALL () {( &asn1_oid_id_pkix_ppl_inheritAll);}' unless defined(&ASN1_OID_ID_PKIX_PPL_INHERITALL);
    eval 'sub ASN1_OID_ID_PKIX_PPL_INDEPENDENT () {( &asn1_oid_id_pkix_ppl_independent);}' unless defined(&ASN1_OID_ID_PKIX_PPL_INDEPENDENT);
    eval 'sub ASN1_OID_ID_USPKICOMMON_CARD_ID () {( &asn1_oid_id_uspkicommon_card_id);}' unless defined(&ASN1_OID_ID_USPKICOMMON_CARD_ID);
    eval 'sub ASN1_OID_ID_USPKICOMMON_PIV_INTERIM () {( &asn1_oid_id_uspkicommon_piv_interim);}' unless defined(&ASN1_OID_ID_USPKICOMMON_PIV_INTERIM);
    eval 'sub ASN1_OID_ID_NETSCAPE () {( &asn1_oid_id_netscape);}' unless defined(&ASN1_OID_ID_NETSCAPE);
    eval 'sub ASN1_OID_ID_NETSCAPE_CERT_COMMENT () {( &asn1_oid_id_netscape_cert_comment);}' unless defined(&ASN1_OID_ID_NETSCAPE_CERT_COMMENT);
    eval 'sub ASN1_OID_ID_MS_CERT_ENROLL_DOMAINCONTROLLER () {( &asn1_oid_id_ms_cert_enroll_domaincontroller);}' unless defined(&ASN1_OID_ID_MS_CERT_ENROLL_DOMAINCONTROLLER);
    eval 'sub ASN1_OID_ID_MS_CLIENT_AUTHENTICATION () {( &asn1_oid_id_ms_client_authentication);}' unless defined(&ASN1_OID_ID_MS_CLIENT_AUTHENTICATION);
}
1;
