require '_h2ph_pre.ph';

unless(defined(&HEADER_ASN1_H)) {
    eval 'sub HEADER_ASN1_H () {1;}' unless defined(&HEADER_ASN1_H);
    if(defined(&__cplusplus)) {
    }
    require 'time.ph';
    require 'ssl/bn.ph';
    require 'ssl/stack.ph';
    require 'ssl/safestack.ph';
    if(defined(&VMS)) {
	require 'ssl/vms_idhacks.ph';
    }
    eval 'sub V_ASN1_UNIVERSAL () {0x00;}' unless defined(&V_ASN1_UNIVERSAL);
    eval 'sub V_ASN1_APPLICATION () {0x40;}' unless defined(&V_ASN1_APPLICATION);
    eval 'sub V_ASN1_CONTEXT_SPECIFIC () {0x80;}' unless defined(&V_ASN1_CONTEXT_SPECIFIC);
    eval 'sub V_ASN1_PRIVATE () {0xc0;}' unless defined(&V_ASN1_PRIVATE);
    eval 'sub V_ASN1_CONSTRUCTED () {0x20;}' unless defined(&V_ASN1_CONSTRUCTED);
    eval 'sub V_ASN1_PRIMITIVE_TAG () {0x1f;}' unless defined(&V_ASN1_PRIMITIVE_TAG);
    eval 'sub V_ASN1_PRIMATIVE_TAG () {0x1f;}' unless defined(&V_ASN1_PRIMATIVE_TAG);
    eval 'sub V_ASN1_APP_CHOOSE () {-2;}' unless defined(&V_ASN1_APP_CHOOSE);
    eval 'sub V_ASN1_UNDEF () {-1;}' unless defined(&V_ASN1_UNDEF);
    eval 'sub V_ASN1_EOC () {0;}' unless defined(&V_ASN1_EOC);
    eval 'sub V_ASN1_BOOLEAN () {1;}' unless defined(&V_ASN1_BOOLEAN);
    eval 'sub V_ASN1_INTEGER () {2;}' unless defined(&V_ASN1_INTEGER);
    eval 'sub V_ASN1_NEG_INTEGER () {(2+0x100);}' unless defined(&V_ASN1_NEG_INTEGER);
    eval 'sub V_ASN1_BIT_STRING () {3;}' unless defined(&V_ASN1_BIT_STRING);
    eval 'sub V_ASN1_OCTET_STRING () {4;}' unless defined(&V_ASN1_OCTET_STRING);
    eval 'sub V_ASN1_NULL () {5;}' unless defined(&V_ASN1_NULL);
    eval 'sub V_ASN1_OBJECT () {6;}' unless defined(&V_ASN1_OBJECT);
    eval 'sub V_ASN1_OBJECT_DESCRIPTOR () {7;}' unless defined(&V_ASN1_OBJECT_DESCRIPTOR);
    eval 'sub V_ASN1_EXTERNAL () {8;}' unless defined(&V_ASN1_EXTERNAL);
    eval 'sub V_ASN1_REAL () {9;}' unless defined(&V_ASN1_REAL);
    eval 'sub V_ASN1_ENUMERATED () {10;}' unless defined(&V_ASN1_ENUMERATED);
    eval 'sub V_ASN1_NEG_ENUMERATED () {(10+0x100);}' unless defined(&V_ASN1_NEG_ENUMERATED);
    eval 'sub V_ASN1_UTF8STRING () {12;}' unless defined(&V_ASN1_UTF8STRING);
    eval 'sub V_ASN1_SEQUENCE () {16;}' unless defined(&V_ASN1_SEQUENCE);
    eval 'sub V_ASN1_SET () {17;}' unless defined(&V_ASN1_SET);
    eval 'sub V_ASN1_NUMERICSTRING () {18;}' unless defined(&V_ASN1_NUMERICSTRING);
    eval 'sub V_ASN1_PRINTABLESTRING () {19;}' unless defined(&V_ASN1_PRINTABLESTRING);
    eval 'sub V_ASN1_T61STRING () {20;}' unless defined(&V_ASN1_T61STRING);
    eval 'sub V_ASN1_TELETEXSTRING () {20;}' unless defined(&V_ASN1_TELETEXSTRING);
    eval 'sub V_ASN1_VIDEOTEXSTRING () {21;}' unless defined(&V_ASN1_VIDEOTEXSTRING);
    eval 'sub V_ASN1_IA5STRING () {22;}' unless defined(&V_ASN1_IA5STRING);
    eval 'sub V_ASN1_UTCTIME () {23;}' unless defined(&V_ASN1_UTCTIME);
    eval 'sub V_ASN1_GENERALIZEDTIME () {24;}' unless defined(&V_ASN1_GENERALIZEDTIME);
    eval 'sub V_ASN1_GRAPHICSTRING () {25;}' unless defined(&V_ASN1_GRAPHICSTRING);
    eval 'sub V_ASN1_ISO64STRING () {26;}' unless defined(&V_ASN1_ISO64STRING);
    eval 'sub V_ASN1_VISIBLESTRING () {26;}' unless defined(&V_ASN1_VISIBLESTRING);
    eval 'sub V_ASN1_GENERALSTRING () {27;}' unless defined(&V_ASN1_GENERALSTRING);
    eval 'sub V_ASN1_UNIVERSALSTRING () {28;}' unless defined(&V_ASN1_UNIVERSALSTRING);
    eval 'sub V_ASN1_BMPSTRING () {30;}' unless defined(&V_ASN1_BMPSTRING);
    eval 'sub B_ASN1_NUMERICSTRING () {0x0001;}' unless defined(&B_ASN1_NUMERICSTRING);
    eval 'sub B_ASN1_PRINTABLESTRING () {0x0002;}' unless defined(&B_ASN1_PRINTABLESTRING);
    eval 'sub B_ASN1_T61STRING () {0x0004;}' unless defined(&B_ASN1_T61STRING);
    eval 'sub B_ASN1_TELETEXSTRING () {0x0008;}' unless defined(&B_ASN1_TELETEXSTRING);
    eval 'sub B_ASN1_VIDEOTEXSTRING () {0x0008;}' unless defined(&B_ASN1_VIDEOTEXSTRING);
    eval 'sub B_ASN1_IA5STRING () {0x0010;}' unless defined(&B_ASN1_IA5STRING);
    eval 'sub B_ASN1_GRAPHICSTRING () {0x0020;}' unless defined(&B_ASN1_GRAPHICSTRING);
    eval 'sub B_ASN1_ISO64STRING () {0x0040;}' unless defined(&B_ASN1_ISO64STRING);
    eval 'sub B_ASN1_VISIBLESTRING () {0x0040;}' unless defined(&B_ASN1_VISIBLESTRING);
    eval 'sub B_ASN1_GENERALSTRING () {0x0080;}' unless defined(&B_ASN1_GENERALSTRING);
    eval 'sub B_ASN1_UNIVERSALSTRING () {0x0100;}' unless defined(&B_ASN1_UNIVERSALSTRING);
    eval 'sub B_ASN1_OCTET_STRING () {0x0200;}' unless defined(&B_ASN1_OCTET_STRING);
    eval 'sub B_ASN1_BIT_STRING () {0x0400;}' unless defined(&B_ASN1_BIT_STRING);
    eval 'sub B_ASN1_BMPSTRING () {0x0800;}' unless defined(&B_ASN1_BMPSTRING);
    eval 'sub B_ASN1_UNKNOWN () {0x1000;}' unless defined(&B_ASN1_UNKNOWN);
    eval 'sub B_ASN1_UTF8STRING () {0x2000;}' unless defined(&B_ASN1_UTF8STRING);
    eval 'sub MBSTRING_FLAG () {0x1000;}' unless defined(&MBSTRING_FLAG);
    eval 'sub MBSTRING_ASC () {( &MBSTRING_FLAG|1);}' unless defined(&MBSTRING_ASC);
    eval 'sub MBSTRING_BMP () {( &MBSTRING_FLAG|2);}' unless defined(&MBSTRING_BMP);
    eval 'sub MBSTRING_UNIV () {( &MBSTRING_FLAG|3);}' unless defined(&MBSTRING_UNIV);
    eval 'sub MBSTRING_UTF8 () {( &MBSTRING_FLAG|4);}' unless defined(&MBSTRING_UTF8);
    eval 'sub DECLARE_ASN1_SET_OF {
        local($type) = @_;
	    eval q(\'int\'  &i2d_ASN1_SET_OF_$type( &STACK_OF($type) * &a,\'unsigned char\' ** &pp, \'int\' (* &func)($type *,\'unsigned char\' **), \'int\'  &ex_tag, \'int\'  &ex_class, \'int\'  &is_set);  &STACK_OF($type) * &d2i_ASN1_SET_OF_$type( &STACK_OF($type) ** &a,\'unsigned char\' ** &pp, \'long length\', $type *(* &func)($type **, \'unsigned char\' **,\'long\'),  &void (* &free_func)($type *), \'int\'  &ex_tag,\'int\'  &ex_class););
    }' unless defined(&DECLARE_ASN1_SET_OF);
    eval 'sub IMPLEMENT_ASN1_SET_OF {
        local($type) = @_;
	    eval q(\'int\'  &i2d_ASN1_SET_OF_$type( &STACK_OF * &a,\'unsigned char\' ** &pp, \'int\' (* &func)($type *,\'unsigned char\' **), \'int\'  &ex_tag, \'int\'  &ex_class, \'int\'  &is_set) {  &return  &i2d_ASN1_SET( &a, &pp, &func, &ex_tag, &ex_class, &is_set); }  &STACK_OF * &d2i_ASN1_SET_OF_$type( &STACK_OF ** &a,\'unsigned char\' ** &pp, \'long length\', $type *(* &func)($type **, \'unsigned char\' **,\'long\'),  &void (* &free_func), \'int\'  &ex_tag,\'int\'  &ex_class) {  &return  &d2i_ASN1_SET( &a, &pp, &length, (\'char\' *(*)()) &func, ( &void (*)()) &free_func,  &ex_tag, &ex_class); });
    }' unless defined(&IMPLEMENT_ASN1_SET_OF);
    eval 'sub ASN1_OBJECT_FLAG_DYNAMIC () {0x01;}' unless defined(&ASN1_OBJECT_FLAG_DYNAMIC);
    eval 'sub ASN1_OBJECT_FLAG_CRITICAL () {0x02;}' unless defined(&ASN1_OBJECT_FLAG_CRITICAL);
    eval 'sub ASN1_OBJECT_FLAG_DYNAMIC_STRINGS () {0x04;}' unless defined(&ASN1_OBJECT_FLAG_DYNAMIC_STRINGS);
    eval 'sub ASN1_OBJECT_FLAG_DYNAMIC_DATA () {0x08;}' unless defined(&ASN1_OBJECT_FLAG_DYNAMIC_DATA);
    eval 'sub ASN1_STRING_FLAG_BITS_LEFT () {0x08;}' unless defined(&ASN1_STRING_FLAG_BITS_LEFT);
    eval 'sub STABLE_FLAGS_MALLOC () {0x01;}' unless defined(&STABLE_FLAGS_MALLOC);
    eval 'sub STABLE_NO_MASK () {0x02;}' unless defined(&STABLE_NO_MASK);
    eval 'sub DIRSTRING_TYPE () {( &B_ASN1_PRINTABLESTRING| &B_ASN1_T61STRING| &B_ASN1_BMPSTRING| &B_ASN1_UTF8STRING);}' unless defined(&DIRSTRING_TYPE);
    eval 'sub PKCS9STRING_TYPE () {( &DIRSTRING_TYPE| &B_ASN1_IA5STRING);}' unless defined(&PKCS9STRING_TYPE);
    eval 'sub ub_name () {32768;}' unless defined(&ub_name);
    eval 'sub ub_common_name () {64;}' unless defined(&ub_common_name);
    eval 'sub ub_locality_name () {128;}' unless defined(&ub_locality_name);
    eval 'sub ub_state_name () {128;}' unless defined(&ub_state_name);
    eval 'sub ub_organization_name () {64;}' unless defined(&ub_organization_name);
    eval 'sub ub_organization_unit_name () {64;}' unless defined(&ub_organization_unit_name);
    eval 'sub ub_title () {64;}' unless defined(&ub_title);
    eval 'sub ub_email_address () {128;}' unless defined(&ub_email_address);
    if(defined(&NO_ASN1_TYPEDEFS)) {
	eval 'sub ASN1_INTEGER () { &ASN1_STRING;}' unless defined(&ASN1_INTEGER);
	eval 'sub ASN1_ENUMERATED () { &ASN1_STRING;}' unless defined(&ASN1_ENUMERATED);
	eval 'sub ASN1_BIT_STRING () { &ASN1_STRING;}' unless defined(&ASN1_BIT_STRING);
	eval 'sub ASN1_OCTET_STRING () { &ASN1_STRING;}' unless defined(&ASN1_OCTET_STRING);
	eval 'sub ASN1_PRINTABLESTRING () { &ASN1_STRING;}' unless defined(&ASN1_PRINTABLESTRING);
	eval 'sub ASN1_T61STRING () { &ASN1_STRING;}' unless defined(&ASN1_T61STRING);
	eval 'sub ASN1_IA5STRING () { &ASN1_STRING;}' unless defined(&ASN1_IA5STRING);
	eval 'sub ASN1_UTCTIME () { &ASN1_STRING;}' unless defined(&ASN1_UTCTIME);
	eval 'sub ASN1_GENERALIZEDTIME () { &ASN1_STRING;}' unless defined(&ASN1_GENERALIZEDTIME);
	eval 'sub ASN1_TIME () { &ASN1_STRING;}' unless defined(&ASN1_TIME);
	eval 'sub ASN1_GENERALSTRING () { &ASN1_STRING;}' unless defined(&ASN1_GENERALSTRING);
	eval 'sub ASN1_UNIVERSALSTRING () { &ASN1_STRING;}' unless defined(&ASN1_UNIVERSALSTRING);
	eval 'sub ASN1_BMPSTRING () { &ASN1_STRING;}' unless defined(&ASN1_BMPSTRING);
	eval 'sub ASN1_VISIBLESTRING () { &ASN1_STRING;}' unless defined(&ASN1_VISIBLESTRING);
	eval 'sub ASN1_UTF8STRING () { &ASN1_STRING;}' unless defined(&ASN1_UTF8STRING);
    } else {
    }
    eval 'sub M_ASN1_STRING_length {
        local($x) = @_;
	    eval q((($x)-> &length));
    }' unless defined(&M_ASN1_STRING_length);
    eval 'sub M_ASN1_STRING_length_set {
        local($x, $n) = @_;
	    eval q((($x)-> &length = ($n)));
    }' unless defined(&M_ASN1_STRING_length_set);
    eval 'sub M_ASN1_STRING_type {
        local($x) = @_;
	    eval q((($x)-> &type));
    }' unless defined(&M_ASN1_STRING_type);
    eval 'sub M_ASN1_STRING_data {
        local($x) = @_;
	    eval q((($x)-> &data));
    }' unless defined(&M_ASN1_STRING_data);
    eval 'sub M_ASN1_BIT_STRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_BIT_STRING));
    }' unless defined(&M_ASN1_BIT_STRING_new);
    eval 'sub M_ASN1_BIT_STRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_BIT_STRING_free);
    eval 'sub M_ASN1_BIT_STRING_dup {
        local($a) = @_;
	    eval q(  &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_BIT_STRING_dup);
    eval 'sub M_ASN1_BIT_STRING_cmp {
        local($a,$b) = @_;
	    eval q( &ASN1_STRING_cmp( $a,$b));
    }' unless defined(&M_ASN1_BIT_STRING_cmp);
    eval 'sub M_ASN1_BIT_STRING_set {
        local($a,$b,$c) = @_;
	    eval q( &ASN1_STRING_set($a,$b,$c));
    }' unless defined(&M_ASN1_BIT_STRING_set);
    eval 'sub M_ASN1_INTEGER_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_INTEGER));
    }' unless defined(&M_ASN1_INTEGER_new);
    eval 'sub M_ASN1_INTEGER_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_INTEGER_free);
    eval 'sub M_ASN1_INTEGER_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_INTEGER_dup);
    eval 'sub M_ASN1_INTEGER_cmp {
        local($a,$b) = @_;
	    eval q( &ASN1_STRING_cmp( $a,$b));
    }' unless defined(&M_ASN1_INTEGER_cmp);
    eval 'sub M_ASN1_ENUMERATED_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_ENUMERATED));
    }' unless defined(&M_ASN1_ENUMERATED_new);
    eval 'sub M_ASN1_ENUMERATED_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_ENUMERATED_free);
    eval 'sub M_ASN1_ENUMERATED_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_ENUMERATED_dup);
    eval 'sub M_ASN1_ENUMERATED_cmp {
        local($a,$b) = @_;
	    eval q( &ASN1_STRING_cmp( $a,$b));
    }' unless defined(&M_ASN1_ENUMERATED_cmp);
    eval 'sub M_ASN1_OCTET_STRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_OCTET_STRING));
    }' unless defined(&M_ASN1_OCTET_STRING_new);
    eval 'sub M_ASN1_OCTET_STRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_OCTET_STRING_free);
    eval 'sub M_ASN1_OCTET_STRING_dup {
        local($a) = @_;
	    eval q(  &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_OCTET_STRING_dup);
    eval 'sub M_ASN1_OCTET_STRING_cmp {
        local($a,$b) = @_;
	    eval q( &ASN1_STRING_cmp( $a,$b));
    }' unless defined(&M_ASN1_OCTET_STRING_cmp);
    eval 'sub M_ASN1_OCTET_STRING_set {
        local($a,$b,$c) = @_;
	    eval q( &ASN1_STRING_set($a,$b,$c));
    }' unless defined(&M_ASN1_OCTET_STRING_set);
    eval 'sub M_ASN1_OCTET_STRING_print {
        local($a,$b) = @_;
	    eval q( &ASN1_STRING_print($a,$b));
    }' unless defined(&M_ASN1_OCTET_STRING_print);
    eval 'sub M_i2d_ASN1_OCTET_STRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_OCTET_STRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_OCTET_STRING);
    eval 'sub M_ASN1_PRINTABLE_new () {
        eval q( &ASN1_STRING_type_new( &V_ASN1_T61STRING));
    }' unless defined(&M_ASN1_PRINTABLE_new);
    eval 'sub M_ASN1_PRINTABLE_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_PRINTABLE_free);
    eval 'sub M_i2d_ASN1_PRINTABLE {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a, $pp, ($a->{type}), &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_PRINTABLE);
    eval 'sub M_d2i_ASN1_PRINTABLE {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes($a,$pp,$l,  &B_ASN1_PRINTABLESTRING|  &B_ASN1_T61STRING|  &B_ASN1_IA5STRING|  &B_ASN1_BIT_STRING|  &B_ASN1_UNIVERSALSTRING|  &B_ASN1_BMPSTRING|  &B_ASN1_UTF8STRING|  &B_ASN1_UNKNOWN));
    }' unless defined(&M_d2i_ASN1_PRINTABLE);
    eval 'sub M_DIRECTORYSTRING_new () {
        eval q( &ASN1_STRING_type_new( &V_ASN1_PRINTABLESTRING));
    }' unless defined(&M_DIRECTORYSTRING_new);
    eval 'sub M_DIRECTORYSTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_DIRECTORYSTRING_free);
    eval 'sub M_i2d_DIRECTORYSTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a, $pp, ($a->{type}), &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_DIRECTORYSTRING);
    eval 'sub M_d2i_DIRECTORYSTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes($a,$pp,$l,  &B_ASN1_PRINTABLESTRING|  &B_ASN1_TELETEXSTRING|  &B_ASN1_BMPSTRING|  &B_ASN1_UNIVERSALSTRING|  &B_ASN1_UTF8STRING));
    }' unless defined(&M_d2i_DIRECTORYSTRING);
    eval 'sub M_DISPLAYTEXT_new () {
        eval q( &ASN1_STRING_type_new( &V_ASN1_VISIBLESTRING));
    }' unless defined(&M_DISPLAYTEXT_new);
    eval 'sub M_DISPLAYTEXT_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_DISPLAYTEXT_free);
    eval 'sub M_i2d_DISPLAYTEXT {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a, $pp, ($a->{type}), &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_DISPLAYTEXT);
    eval 'sub M_d2i_DISPLAYTEXT {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes($a,$pp,$l,  &B_ASN1_VISIBLESTRING|  &B_ASN1_BMPSTRING|  &B_ASN1_UTF8STRING));
    }' unless defined(&M_d2i_DISPLAYTEXT);
    eval 'sub M_ASN1_PRINTABLESTRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_PRINTABLESTRING));
    }' unless defined(&M_ASN1_PRINTABLESTRING_new);
    eval 'sub M_ASN1_PRINTABLESTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_PRINTABLESTRING_free);
    eval 'sub M_i2d_ASN1_PRINTABLESTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_PRINTABLESTRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_PRINTABLESTRING);
    eval 'sub M_d2i_ASN1_PRINTABLESTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_PRINTABLESTRING));
    }' unless defined(&M_d2i_ASN1_PRINTABLESTRING);
    eval 'sub M_ASN1_T61STRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_T61STRING));
    }' unless defined(&M_ASN1_T61STRING_new);
    eval 'sub M_ASN1_T61STRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_T61STRING_free);
    eval 'sub M_i2d_ASN1_T61STRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_T61STRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_T61STRING);
    eval 'sub M_d2i_ASN1_T61STRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_T61STRING));
    }' unless defined(&M_d2i_ASN1_T61STRING);
    eval 'sub M_ASN1_IA5STRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_IA5STRING));
    }' unless defined(&M_ASN1_IA5STRING_new);
    eval 'sub M_ASN1_IA5STRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_IA5STRING_free);
    eval 'sub M_ASN1_IA5STRING_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_IA5STRING_dup);
    eval 'sub M_i2d_ASN1_IA5STRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_IA5STRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_IA5STRING);
    eval 'sub M_d2i_ASN1_IA5STRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes($a,$pp,$l,  &B_ASN1_IA5STRING));
    }' unless defined(&M_d2i_ASN1_IA5STRING);
    eval 'sub M_ASN1_UTCTIME_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_UTCTIME));
    }' unless defined(&M_ASN1_UTCTIME_new);
    eval 'sub M_ASN1_UTCTIME_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_UTCTIME_free);
    eval 'sub M_ASN1_UTCTIME_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_UTCTIME_dup);
    eval 'sub M_ASN1_GENERALIZEDTIME_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_GENERALIZEDTIME));
    }' unless defined(&M_ASN1_GENERALIZEDTIME_new);
    eval 'sub M_ASN1_GENERALIZEDTIME_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_GENERALIZEDTIME_free);
    eval 'sub M_ASN1_GENERALIZEDTIME_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup( $a));
    }' unless defined(&M_ASN1_GENERALIZEDTIME_dup);
    eval 'sub M_ASN1_TIME_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_UTCTIME));
    }' unless defined(&M_ASN1_TIME_new);
    eval 'sub M_ASN1_TIME_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_TIME_free);
    eval 'sub M_ASN1_TIME_dup {
        local($a) = @_;
	    eval q( &ASN1_STRING_dup($a));
    }' unless defined(&M_ASN1_TIME_dup);
    eval 'sub M_ASN1_GENERALSTRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_GENERALSTRING));
    }' unless defined(&M_ASN1_GENERALSTRING_new);
    eval 'sub M_ASN1_GENERALSTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_GENERALSTRING_free);
    eval 'sub M_i2d_ASN1_GENERALSTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_GENERALSTRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_GENERALSTRING);
    eval 'sub M_d2i_ASN1_GENERALSTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_GENERALSTRING));
    }' unless defined(&M_d2i_ASN1_GENERALSTRING);
    eval 'sub M_ASN1_UNIVERSALSTRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_UNIVERSALSTRING));
    }' unless defined(&M_ASN1_UNIVERSALSTRING_new);
    eval 'sub M_ASN1_UNIVERSALSTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_UNIVERSALSTRING_free);
    eval 'sub M_i2d_ASN1_UNIVERSALSTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_UNIVERSALSTRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_UNIVERSALSTRING);
    eval 'sub M_d2i_ASN1_UNIVERSALSTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_UNIVERSALSTRING));
    }' unless defined(&M_d2i_ASN1_UNIVERSALSTRING);
    eval 'sub M_ASN1_BMPSTRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_BMPSTRING));
    }' unless defined(&M_ASN1_BMPSTRING_new);
    eval 'sub M_ASN1_BMPSTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_BMPSTRING_free);
    eval 'sub M_i2d_ASN1_BMPSTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_BMPSTRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_BMPSTRING);
    eval 'sub M_d2i_ASN1_BMPSTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_BMPSTRING));
    }' unless defined(&M_d2i_ASN1_BMPSTRING);
    eval 'sub M_ASN1_VISIBLESTRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_VISIBLESTRING));
    }' unless defined(&M_ASN1_VISIBLESTRING_new);
    eval 'sub M_ASN1_VISIBLESTRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_VISIBLESTRING_free);
    eval 'sub M_i2d_ASN1_VISIBLESTRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_VISIBLESTRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_VISIBLESTRING);
    eval 'sub M_d2i_ASN1_VISIBLESTRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_VISIBLESTRING));
    }' unless defined(&M_d2i_ASN1_VISIBLESTRING);
    eval 'sub M_ASN1_UTF8STRING_new () {
        eval q(  &ASN1_STRING_type_new( &V_ASN1_UTF8STRING));
    }' unless defined(&M_ASN1_UTF8STRING_new);
    eval 'sub M_ASN1_UTF8STRING_free {
        local($a) = @_;
	    eval q( &ASN1_STRING_free($a));
    }' unless defined(&M_ASN1_UTF8STRING_free);
    eval 'sub M_i2d_ASN1_UTF8STRING {
        local($a,$pp) = @_;
	    eval q( &i2d_ASN1_bytes($a,$pp, &V_ASN1_UTF8STRING,  &V_ASN1_UNIVERSAL));
    }' unless defined(&M_i2d_ASN1_UTF8STRING);
    eval 'sub M_d2i_ASN1_UTF8STRING {
        local($a,$pp,$l) = @_;
	    eval q( &d2i_ASN1_type_bytes ($a,$pp,$l, &B_ASN1_UTF8STRING));
    }' unless defined(&M_d2i_ASN1_UTF8STRING);
    eval 'sub IS_SEQUENCE () {0;}' unless defined(&IS_SEQUENCE);
    eval 'sub IS_SET () {1;}' unless defined(&IS_SET);
    if(defined(&HEADER_BIO_H)) {
    }
    if(defined(&HEADER_BIO_H)) {
    }
    unless(defined(&NO_FP_API)) {
    }
    if(defined(&HEADER_BIO_H)) {
    }
    eval 'sub ASN1_F_A2D_ASN1_OBJECT () {100;}' unless defined(&ASN1_F_A2D_ASN1_OBJECT);
    eval 'sub ASN1_F_A2I_ASN1_ENUMERATED () {236;}' unless defined(&ASN1_F_A2I_ASN1_ENUMERATED);
    eval 'sub ASN1_F_A2I_ASN1_INTEGER () {101;}' unless defined(&ASN1_F_A2I_ASN1_INTEGER);
    eval 'sub ASN1_F_A2I_ASN1_STRING () {102;}' unless defined(&ASN1_F_A2I_ASN1_STRING);
    eval 'sub ASN1_F_ACCESS_DESCRIPTION_NEW () {291;}' unless defined(&ASN1_F_ACCESS_DESCRIPTION_NEW);
    eval 'sub ASN1_F_ASN1_COLLATE_PRIMITIVE () {103;}' unless defined(&ASN1_F_ASN1_COLLATE_PRIMITIVE);
    eval 'sub ASN1_F_ASN1_D2I_BIO () {104;}' unless defined(&ASN1_F_ASN1_D2I_BIO);
    eval 'sub ASN1_F_ASN1_D2I_FP () {105;}' unless defined(&ASN1_F_ASN1_D2I_FP);
    eval 'sub ASN1_F_ASN1_DUP () {106;}' unless defined(&ASN1_F_ASN1_DUP);
    eval 'sub ASN1_F_ASN1_ENUMERATED_SET () {232;}' unless defined(&ASN1_F_ASN1_ENUMERATED_SET);
    eval 'sub ASN1_F_ASN1_ENUMERATED_TO_BN () {233;}' unless defined(&ASN1_F_ASN1_ENUMERATED_TO_BN);
    eval 'sub ASN1_F_ASN1_GENERALIZEDTIME_NEW () {222;}' unless defined(&ASN1_F_ASN1_GENERALIZEDTIME_NEW);
    eval 'sub ASN1_F_ASN1_GET_OBJECT () {107;}' unless defined(&ASN1_F_ASN1_GET_OBJECT);
    eval 'sub ASN1_F_ASN1_HEADER_NEW () {108;}' unless defined(&ASN1_F_ASN1_HEADER_NEW);
    eval 'sub ASN1_F_ASN1_I2D_BIO () {109;}' unless defined(&ASN1_F_ASN1_I2D_BIO);
    eval 'sub ASN1_F_ASN1_I2D_FP () {110;}' unless defined(&ASN1_F_ASN1_I2D_FP);
    eval 'sub ASN1_F_ASN1_INTEGER_SET () {111;}' unless defined(&ASN1_F_ASN1_INTEGER_SET);
    eval 'sub ASN1_F_ASN1_INTEGER_TO_BN () {112;}' unless defined(&ASN1_F_ASN1_INTEGER_TO_BN);
    eval 'sub ASN1_F_ASN1_MBSTRING_COPY () {282;}' unless defined(&ASN1_F_ASN1_MBSTRING_COPY);
    eval 'sub ASN1_F_ASN1_OBJECT_NEW () {113;}' unless defined(&ASN1_F_ASN1_OBJECT_NEW);
    eval 'sub ASN1_F_ASN1_PACK_STRING () {245;}' unless defined(&ASN1_F_ASN1_PACK_STRING);
    eval 'sub ASN1_F_ASN1_PBE_SET () {253;}' unless defined(&ASN1_F_ASN1_PBE_SET);
    eval 'sub ASN1_F_ASN1_SEQ_PACK () {246;}' unless defined(&ASN1_F_ASN1_SEQ_PACK);
    eval 'sub ASN1_F_ASN1_SEQ_UNPACK () {247;}' unless defined(&ASN1_F_ASN1_SEQ_UNPACK);
    eval 'sub ASN1_F_ASN1_SIGN () {114;}' unless defined(&ASN1_F_ASN1_SIGN);
    eval 'sub ASN1_F_ASN1_STRING_NEW () {115;}' unless defined(&ASN1_F_ASN1_STRING_NEW);
    eval 'sub ASN1_F_ASN1_STRING_TABLE_ADD () {283;}' unless defined(&ASN1_F_ASN1_STRING_TABLE_ADD);
    eval 'sub ASN1_F_ASN1_STRING_TYPE_NEW () {116;}' unless defined(&ASN1_F_ASN1_STRING_TYPE_NEW);
    eval 'sub ASN1_F_ASN1_TYPE_GET_INT_OCTETSTRING () {117;}' unless defined(&ASN1_F_ASN1_TYPE_GET_INT_OCTETSTRING);
    eval 'sub ASN1_F_ASN1_TYPE_GET_OCTETSTRING () {118;}' unless defined(&ASN1_F_ASN1_TYPE_GET_OCTETSTRING);
    eval 'sub ASN1_F_ASN1_TYPE_NEW () {119;}' unless defined(&ASN1_F_ASN1_TYPE_NEW);
    eval 'sub ASN1_F_ASN1_UNPACK_STRING () {248;}' unless defined(&ASN1_F_ASN1_UNPACK_STRING);
    eval 'sub ASN1_F_ASN1_UTCTIME_NEW () {120;}' unless defined(&ASN1_F_ASN1_UTCTIME_NEW);
    eval 'sub ASN1_F_ASN1_VERIFY () {121;}' unless defined(&ASN1_F_ASN1_VERIFY);
    eval 'sub ASN1_F_AUTHORITY_KEYID_NEW () {237;}' unless defined(&ASN1_F_AUTHORITY_KEYID_NEW);
    eval 'sub ASN1_F_BASIC_CONSTRAINTS_NEW () {226;}' unless defined(&ASN1_F_BASIC_CONSTRAINTS_NEW);
    eval 'sub ASN1_F_BN_TO_ASN1_ENUMERATED () {234;}' unless defined(&ASN1_F_BN_TO_ASN1_ENUMERATED);
    eval 'sub ASN1_F_BN_TO_ASN1_INTEGER () {122;}' unless defined(&ASN1_F_BN_TO_ASN1_INTEGER);
    eval 'sub ASN1_F_D2I_ACCESS_DESCRIPTION () {284;}' unless defined(&ASN1_F_D2I_ACCESS_DESCRIPTION);
    eval 'sub ASN1_F_D2I_ASN1_BIT_STRING () {123;}' unless defined(&ASN1_F_D2I_ASN1_BIT_STRING);
    eval 'sub ASN1_F_D2I_ASN1_BMPSTRING () {124;}' unless defined(&ASN1_F_D2I_ASN1_BMPSTRING);
    eval 'sub ASN1_F_D2I_ASN1_BOOLEAN () {125;}' unless defined(&ASN1_F_D2I_ASN1_BOOLEAN);
    eval 'sub ASN1_F_D2I_ASN1_BYTES () {126;}' unless defined(&ASN1_F_D2I_ASN1_BYTES);
    eval 'sub ASN1_F_D2I_ASN1_ENUMERATED () {235;}' unless defined(&ASN1_F_D2I_ASN1_ENUMERATED);
    eval 'sub ASN1_F_D2I_ASN1_GENERALIZEDTIME () {223;}' unless defined(&ASN1_F_D2I_ASN1_GENERALIZEDTIME);
    eval 'sub ASN1_F_D2I_ASN1_HEADER () {127;}' unless defined(&ASN1_F_D2I_ASN1_HEADER);
    eval 'sub ASN1_F_D2I_ASN1_INTEGER () {128;}' unless defined(&ASN1_F_D2I_ASN1_INTEGER);
    eval 'sub ASN1_F_D2I_ASN1_NULL () {292;}' unless defined(&ASN1_F_D2I_ASN1_NULL);
    eval 'sub ASN1_F_D2I_ASN1_OBJECT () {129;}' unless defined(&ASN1_F_D2I_ASN1_OBJECT);
    eval 'sub ASN1_F_D2I_ASN1_OCTET_STRING () {130;}' unless defined(&ASN1_F_D2I_ASN1_OCTET_STRING);
    eval 'sub ASN1_F_D2I_ASN1_PRINT_TYPE () {131;}' unless defined(&ASN1_F_D2I_ASN1_PRINT_TYPE);
    eval 'sub ASN1_F_D2I_ASN1_SET () {132;}' unless defined(&ASN1_F_D2I_ASN1_SET);
    eval 'sub ASN1_F_D2I_ASN1_TIME () {224;}' unless defined(&ASN1_F_D2I_ASN1_TIME);
    eval 'sub ASN1_F_D2I_ASN1_TYPE () {133;}' unless defined(&ASN1_F_D2I_ASN1_TYPE);
    eval 'sub ASN1_F_D2I_ASN1_TYPE_BYTES () {134;}' unless defined(&ASN1_F_D2I_ASN1_TYPE_BYTES);
    eval 'sub ASN1_F_D2I_ASN1_UINTEGER () {280;}' unless defined(&ASN1_F_D2I_ASN1_UINTEGER);
    eval 'sub ASN1_F_D2I_ASN1_UTCTIME () {135;}' unless defined(&ASN1_F_D2I_ASN1_UTCTIME);
    eval 'sub ASN1_F_D2I_ASN1_UTF8STRING () {266;}' unless defined(&ASN1_F_D2I_ASN1_UTF8STRING);
    eval 'sub ASN1_F_D2I_ASN1_VISIBLESTRING () {267;}' unless defined(&ASN1_F_D2I_ASN1_VISIBLESTRING);
    eval 'sub ASN1_F_D2I_AUTHORITY_KEYID () {238;}' unless defined(&ASN1_F_D2I_AUTHORITY_KEYID);
    eval 'sub ASN1_F_D2I_BASIC_CONSTRAINTS () {227;}' unless defined(&ASN1_F_D2I_BASIC_CONSTRAINTS);
    eval 'sub ASN1_F_D2I_DHPARAMS () {136;}' unless defined(&ASN1_F_D2I_DHPARAMS);
    eval 'sub ASN1_F_D2I_DIST_POINT () {276;}' unless defined(&ASN1_F_D2I_DIST_POINT);
    eval 'sub ASN1_F_D2I_DIST_POINT_NAME () {277;}' unless defined(&ASN1_F_D2I_DIST_POINT_NAME);
    eval 'sub ASN1_F_D2I_DSAPARAMS () {137;}' unless defined(&ASN1_F_D2I_DSAPARAMS);
    eval 'sub ASN1_F_D2I_DSAPRIVATEKEY () {138;}' unless defined(&ASN1_F_D2I_DSAPRIVATEKEY);
    eval 'sub ASN1_F_D2I_DSAPUBLICKEY () {139;}' unless defined(&ASN1_F_D2I_DSAPUBLICKEY);
    eval 'sub ASN1_F_D2I_GENERAL_NAME () {230;}' unless defined(&ASN1_F_D2I_GENERAL_NAME);
    eval 'sub ASN1_F_D2I_NETSCAPE_CERT_SEQUENCE () {228;}' unless defined(&ASN1_F_D2I_NETSCAPE_CERT_SEQUENCE);
    eval 'sub ASN1_F_D2I_NETSCAPE_PKEY () {140;}' unless defined(&ASN1_F_D2I_NETSCAPE_PKEY);
    eval 'sub ASN1_F_D2I_NETSCAPE_RSA () {141;}' unless defined(&ASN1_F_D2I_NETSCAPE_RSA);
    eval 'sub ASN1_F_D2I_NETSCAPE_RSA_2 () {142;}' unless defined(&ASN1_F_D2I_NETSCAPE_RSA_2);
    eval 'sub ASN1_F_D2I_NETSCAPE_SPKAC () {143;}' unless defined(&ASN1_F_D2I_NETSCAPE_SPKAC);
    eval 'sub ASN1_F_D2I_NETSCAPE_SPKI () {144;}' unless defined(&ASN1_F_D2I_NETSCAPE_SPKI);
    eval 'sub ASN1_F_D2I_NOTICEREF () {268;}' unless defined(&ASN1_F_D2I_NOTICEREF);
    eval 'sub ASN1_F_D2I_OTHERNAME () {287;}' unless defined(&ASN1_F_D2I_OTHERNAME);
    eval 'sub ASN1_F_D2I_PBE2PARAM () {262;}' unless defined(&ASN1_F_D2I_PBE2PARAM);
    eval 'sub ASN1_F_D2I_PBEPARAM () {249;}' unless defined(&ASN1_F_D2I_PBEPARAM);
    eval 'sub ASN1_F_D2I_PBKDF2PARAM () {263;}' unless defined(&ASN1_F_D2I_PBKDF2PARAM);
    eval 'sub ASN1_F_D2I_PKCS12 () {254;}' unless defined(&ASN1_F_D2I_PKCS12);
    eval 'sub ASN1_F_D2I_PKCS12_BAGS () {255;}' unless defined(&ASN1_F_D2I_PKCS12_BAGS);
    eval 'sub ASN1_F_D2I_PKCS12_MAC_DATA () {256;}' unless defined(&ASN1_F_D2I_PKCS12_MAC_DATA);
    eval 'sub ASN1_F_D2I_PKCS12_SAFEBAG () {257;}' unless defined(&ASN1_F_D2I_PKCS12_SAFEBAG);
    eval 'sub ASN1_F_D2I_PKCS7 () {145;}' unless defined(&ASN1_F_D2I_PKCS7);
    eval 'sub ASN1_F_D2I_PKCS7_DIGEST () {146;}' unless defined(&ASN1_F_D2I_PKCS7_DIGEST);
    eval 'sub ASN1_F_D2I_PKCS7_ENCRYPT () {147;}' unless defined(&ASN1_F_D2I_PKCS7_ENCRYPT);
    eval 'sub ASN1_F_D2I_PKCS7_ENC_CONTENT () {148;}' unless defined(&ASN1_F_D2I_PKCS7_ENC_CONTENT);
    eval 'sub ASN1_F_D2I_PKCS7_ENVELOPE () {149;}' unless defined(&ASN1_F_D2I_PKCS7_ENVELOPE);
    eval 'sub ASN1_F_D2I_PKCS7_ISSUER_AND_SERIAL () {150;}' unless defined(&ASN1_F_D2I_PKCS7_ISSUER_AND_SERIAL);
    eval 'sub ASN1_F_D2I_PKCS7_RECIP_INFO () {151;}' unless defined(&ASN1_F_D2I_PKCS7_RECIP_INFO);
    eval 'sub ASN1_F_D2I_PKCS7_SIGNED () {152;}' unless defined(&ASN1_F_D2I_PKCS7_SIGNED);
    eval 'sub ASN1_F_D2I_PKCS7_SIGNER_INFO () {153;}' unless defined(&ASN1_F_D2I_PKCS7_SIGNER_INFO);
    eval 'sub ASN1_F_D2I_PKCS7_SIGN_ENVELOPE () {154;}' unless defined(&ASN1_F_D2I_PKCS7_SIGN_ENVELOPE);
    eval 'sub ASN1_F_D2I_PKCS8_PRIV_KEY_INFO () {250;}' unless defined(&ASN1_F_D2I_PKCS8_PRIV_KEY_INFO);
    eval 'sub ASN1_F_D2I_PKEY_USAGE_PERIOD () {239;}' unless defined(&ASN1_F_D2I_PKEY_USAGE_PERIOD);
    eval 'sub ASN1_F_D2I_POLICYINFO () {269;}' unless defined(&ASN1_F_D2I_POLICYINFO);
    eval 'sub ASN1_F_D2I_POLICYQUALINFO () {270;}' unless defined(&ASN1_F_D2I_POLICYQUALINFO);
    eval 'sub ASN1_F_D2I_PRIVATEKEY () {155;}' unless defined(&ASN1_F_D2I_PRIVATEKEY);
    eval 'sub ASN1_F_D2I_PUBLICKEY () {156;}' unless defined(&ASN1_F_D2I_PUBLICKEY);
    eval 'sub ASN1_F_D2I_RSAPRIVATEKEY () {157;}' unless defined(&ASN1_F_D2I_RSAPRIVATEKEY);
    eval 'sub ASN1_F_D2I_RSAPUBLICKEY () {158;}' unless defined(&ASN1_F_D2I_RSAPUBLICKEY);
    eval 'sub ASN1_F_D2I_SXNET () {241;}' unless defined(&ASN1_F_D2I_SXNET);
    eval 'sub ASN1_F_D2I_SXNETID () {243;}' unless defined(&ASN1_F_D2I_SXNETID);
    eval 'sub ASN1_F_D2I_USERNOTICE () {271;}' unless defined(&ASN1_F_D2I_USERNOTICE);
    eval 'sub ASN1_F_D2I_X509 () {159;}' unless defined(&ASN1_F_D2I_X509);
    eval 'sub ASN1_F_D2I_X509_ALGOR () {160;}' unless defined(&ASN1_F_D2I_X509_ALGOR);
    eval 'sub ASN1_F_D2I_X509_ATTRIBUTE () {161;}' unless defined(&ASN1_F_D2I_X509_ATTRIBUTE);
    eval 'sub ASN1_F_D2I_X509_CERT_AUX () {285;}' unless defined(&ASN1_F_D2I_X509_CERT_AUX);
    eval 'sub ASN1_F_D2I_X509_CINF () {162;}' unless defined(&ASN1_F_D2I_X509_CINF);
    eval 'sub ASN1_F_D2I_X509_CRL () {163;}' unless defined(&ASN1_F_D2I_X509_CRL);
    eval 'sub ASN1_F_D2I_X509_CRL_INFO () {164;}' unless defined(&ASN1_F_D2I_X509_CRL_INFO);
    eval 'sub ASN1_F_D2I_X509_EXTENSION () {165;}' unless defined(&ASN1_F_D2I_X509_EXTENSION);
    eval 'sub ASN1_F_D2I_X509_KEY () {166;}' unless defined(&ASN1_F_D2I_X509_KEY);
    eval 'sub ASN1_F_D2I_X509_NAME () {167;}' unless defined(&ASN1_F_D2I_X509_NAME);
    eval 'sub ASN1_F_D2I_X509_NAME_ENTRY () {168;}' unless defined(&ASN1_F_D2I_X509_NAME_ENTRY);
    eval 'sub ASN1_F_D2I_X509_PKEY () {169;}' unless defined(&ASN1_F_D2I_X509_PKEY);
    eval 'sub ASN1_F_D2I_X509_PUBKEY () {170;}' unless defined(&ASN1_F_D2I_X509_PUBKEY);
    eval 'sub ASN1_F_D2I_X509_REQ () {171;}' unless defined(&ASN1_F_D2I_X509_REQ);
    eval 'sub ASN1_F_D2I_X509_REQ_INFO () {172;}' unless defined(&ASN1_F_D2I_X509_REQ_INFO);
    eval 'sub ASN1_F_D2I_X509_REVOKED () {173;}' unless defined(&ASN1_F_D2I_X509_REVOKED);
    eval 'sub ASN1_F_D2I_X509_SIG () {174;}' unless defined(&ASN1_F_D2I_X509_SIG);
    eval 'sub ASN1_F_D2I_X509_VAL () {175;}' unless defined(&ASN1_F_D2I_X509_VAL);
    eval 'sub ASN1_F_DIST_POINT_NAME_NEW () {278;}' unless defined(&ASN1_F_DIST_POINT_NAME_NEW);
    eval 'sub ASN1_F_DIST_POINT_NEW () {279;}' unless defined(&ASN1_F_DIST_POINT_NEW);
    eval 'sub ASN1_F_GENERAL_NAME_NEW () {231;}' unless defined(&ASN1_F_GENERAL_NAME_NEW);
    eval 'sub ASN1_F_I2D_ASN1_HEADER () {176;}' unless defined(&ASN1_F_I2D_ASN1_HEADER);
    eval 'sub ASN1_F_I2D_ASN1_TIME () {225;}' unless defined(&ASN1_F_I2D_ASN1_TIME);
    eval 'sub ASN1_F_I2D_DHPARAMS () {177;}' unless defined(&ASN1_F_I2D_DHPARAMS);
    eval 'sub ASN1_F_I2D_DSAPARAMS () {178;}' unless defined(&ASN1_F_I2D_DSAPARAMS);
    eval 'sub ASN1_F_I2D_DSAPRIVATEKEY () {179;}' unless defined(&ASN1_F_I2D_DSAPRIVATEKEY);
    eval 'sub ASN1_F_I2D_DSAPUBLICKEY () {180;}' unless defined(&ASN1_F_I2D_DSAPUBLICKEY);
    eval 'sub ASN1_F_I2D_DSA_PUBKEY () {290;}' unless defined(&ASN1_F_I2D_DSA_PUBKEY);
    eval 'sub ASN1_F_I2D_NETSCAPE_RSA () {181;}' unless defined(&ASN1_F_I2D_NETSCAPE_RSA);
    eval 'sub ASN1_F_I2D_PKCS7 () {182;}' unless defined(&ASN1_F_I2D_PKCS7);
    eval 'sub ASN1_F_I2D_PRIVATEKEY () {183;}' unless defined(&ASN1_F_I2D_PRIVATEKEY);
    eval 'sub ASN1_F_I2D_PUBLICKEY () {184;}' unless defined(&ASN1_F_I2D_PUBLICKEY);
    eval 'sub ASN1_F_I2D_RSAPRIVATEKEY () {185;}' unless defined(&ASN1_F_I2D_RSAPRIVATEKEY);
    eval 'sub ASN1_F_I2D_RSAPUBLICKEY () {186;}' unless defined(&ASN1_F_I2D_RSAPUBLICKEY);
    eval 'sub ASN1_F_I2D_RSA_PUBKEY () {289;}' unless defined(&ASN1_F_I2D_RSA_PUBKEY);
    eval 'sub ASN1_F_I2D_X509_ATTRIBUTE () {187;}' unless defined(&ASN1_F_I2D_X509_ATTRIBUTE);
    eval 'sub ASN1_F_I2T_ASN1_OBJECT () {188;}' unless defined(&ASN1_F_I2T_ASN1_OBJECT);
    eval 'sub ASN1_F_NETSCAPE_CERT_SEQUENCE_NEW () {229;}' unless defined(&ASN1_F_NETSCAPE_CERT_SEQUENCE_NEW);
    eval 'sub ASN1_F_NETSCAPE_PKEY_NEW () {189;}' unless defined(&ASN1_F_NETSCAPE_PKEY_NEW);
    eval 'sub ASN1_F_NETSCAPE_SPKAC_NEW () {190;}' unless defined(&ASN1_F_NETSCAPE_SPKAC_NEW);
    eval 'sub ASN1_F_NETSCAPE_SPKI_NEW () {191;}' unless defined(&ASN1_F_NETSCAPE_SPKI_NEW);
    eval 'sub ASN1_F_NOTICEREF_NEW () {272;}' unless defined(&ASN1_F_NOTICEREF_NEW);
    eval 'sub ASN1_F_OTHERNAME_NEW () {288;}' unless defined(&ASN1_F_OTHERNAME_NEW);
    eval 'sub ASN1_F_PBE2PARAM_NEW () {264;}' unless defined(&ASN1_F_PBE2PARAM_NEW);
    eval 'sub ASN1_F_PBEPARAM_NEW () {251;}' unless defined(&ASN1_F_PBEPARAM_NEW);
    eval 'sub ASN1_F_PBKDF2PARAM_NEW () {265;}' unless defined(&ASN1_F_PBKDF2PARAM_NEW);
    eval 'sub ASN1_F_PKCS12_BAGS_NEW () {258;}' unless defined(&ASN1_F_PKCS12_BAGS_NEW);
    eval 'sub ASN1_F_PKCS12_MAC_DATA_NEW () {259;}' unless defined(&ASN1_F_PKCS12_MAC_DATA_NEW);
    eval 'sub ASN1_F_PKCS12_NEW () {260;}' unless defined(&ASN1_F_PKCS12_NEW);
    eval 'sub ASN1_F_PKCS12_SAFEBAG_NEW () {261;}' unless defined(&ASN1_F_PKCS12_SAFEBAG_NEW);
    eval 'sub ASN1_F_PKCS5_PBE2_SET () {281;}' unless defined(&ASN1_F_PKCS5_PBE2_SET);
    eval 'sub ASN1_F_PKCS7_DIGEST_NEW () {192;}' unless defined(&ASN1_F_PKCS7_DIGEST_NEW);
    eval 'sub ASN1_F_PKCS7_ENCRYPT_NEW () {193;}' unless defined(&ASN1_F_PKCS7_ENCRYPT_NEW);
    eval 'sub ASN1_F_PKCS7_ENC_CONTENT_NEW () {194;}' unless defined(&ASN1_F_PKCS7_ENC_CONTENT_NEW);
    eval 'sub ASN1_F_PKCS7_ENVELOPE_NEW () {195;}' unless defined(&ASN1_F_PKCS7_ENVELOPE_NEW);
    eval 'sub ASN1_F_PKCS7_ISSUER_AND_SERIAL_NEW () {196;}' unless defined(&ASN1_F_PKCS7_ISSUER_AND_SERIAL_NEW);
    eval 'sub ASN1_F_PKCS7_NEW () {197;}' unless defined(&ASN1_F_PKCS7_NEW);
    eval 'sub ASN1_F_PKCS7_RECIP_INFO_NEW () {198;}' unless defined(&ASN1_F_PKCS7_RECIP_INFO_NEW);
    eval 'sub ASN1_F_PKCS7_SIGNED_NEW () {199;}' unless defined(&ASN1_F_PKCS7_SIGNED_NEW);
    eval 'sub ASN1_F_PKCS7_SIGNER_INFO_NEW () {200;}' unless defined(&ASN1_F_PKCS7_SIGNER_INFO_NEW);
    eval 'sub ASN1_F_PKCS7_SIGN_ENVELOPE_NEW () {201;}' unless defined(&ASN1_F_PKCS7_SIGN_ENVELOPE_NEW);
    eval 'sub ASN1_F_PKCS8_PRIV_KEY_INFO_NEW () {252;}' unless defined(&ASN1_F_PKCS8_PRIV_KEY_INFO_NEW);
    eval 'sub ASN1_F_PKEY_USAGE_PERIOD_NEW () {240;}' unless defined(&ASN1_F_PKEY_USAGE_PERIOD_NEW);
    eval 'sub ASN1_F_POLICYINFO_NEW () {273;}' unless defined(&ASN1_F_POLICYINFO_NEW);
    eval 'sub ASN1_F_POLICYQUALINFO_NEW () {274;}' unless defined(&ASN1_F_POLICYQUALINFO_NEW);
    eval 'sub ASN1_F_SXNETID_NEW () {244;}' unless defined(&ASN1_F_SXNETID_NEW);
    eval 'sub ASN1_F_SXNET_NEW () {242;}' unless defined(&ASN1_F_SXNET_NEW);
    eval 'sub ASN1_F_USERNOTICE_NEW () {275;}' unless defined(&ASN1_F_USERNOTICE_NEW);
    eval 'sub ASN1_F_X509_ALGOR_NEW () {202;}' unless defined(&ASN1_F_X509_ALGOR_NEW);
    eval 'sub ASN1_F_X509_ATTRIBUTE_NEW () {203;}' unless defined(&ASN1_F_X509_ATTRIBUTE_NEW);
    eval 'sub ASN1_F_X509_CERT_AUX_NEW () {286;}' unless defined(&ASN1_F_X509_CERT_AUX_NEW);
    eval 'sub ASN1_F_X509_CINF_NEW () {204;}' unless defined(&ASN1_F_X509_CINF_NEW);
    eval 'sub ASN1_F_X509_CRL_INFO_NEW () {205;}' unless defined(&ASN1_F_X509_CRL_INFO_NEW);
    eval 'sub ASN1_F_X509_CRL_NEW () {206;}' unless defined(&ASN1_F_X509_CRL_NEW);
    eval 'sub ASN1_F_X509_DHPARAMS_NEW () {207;}' unless defined(&ASN1_F_X509_DHPARAMS_NEW);
    eval 'sub ASN1_F_X509_EXTENSION_NEW () {208;}' unless defined(&ASN1_F_X509_EXTENSION_NEW);
    eval 'sub ASN1_F_X509_INFO_NEW () {209;}' unless defined(&ASN1_F_X509_INFO_NEW);
    eval 'sub ASN1_F_X509_KEY_NEW () {210;}' unless defined(&ASN1_F_X509_KEY_NEW);
    eval 'sub ASN1_F_X509_NAME_ENTRY_NEW () {211;}' unless defined(&ASN1_F_X509_NAME_ENTRY_NEW);
    eval 'sub ASN1_F_X509_NAME_NEW () {212;}' unless defined(&ASN1_F_X509_NAME_NEW);
    eval 'sub ASN1_F_X509_NEW () {213;}' unless defined(&ASN1_F_X509_NEW);
    eval 'sub ASN1_F_X509_PKEY_NEW () {214;}' unless defined(&ASN1_F_X509_PKEY_NEW);
    eval 'sub ASN1_F_X509_PUBKEY_NEW () {215;}' unless defined(&ASN1_F_X509_PUBKEY_NEW);
    eval 'sub ASN1_F_X509_REQ_INFO_NEW () {216;}' unless defined(&ASN1_F_X509_REQ_INFO_NEW);
    eval 'sub ASN1_F_X509_REQ_NEW () {217;}' unless defined(&ASN1_F_X509_REQ_NEW);
    eval 'sub ASN1_F_X509_REVOKED_NEW () {218;}' unless defined(&ASN1_F_X509_REVOKED_NEW);
    eval 'sub ASN1_F_X509_SIG_NEW () {219;}' unless defined(&ASN1_F_X509_SIG_NEW);
    eval 'sub ASN1_F_X509_VAL_FREE () {220;}' unless defined(&ASN1_F_X509_VAL_FREE);
    eval 'sub ASN1_F_X509_VAL_NEW () {221;}' unless defined(&ASN1_F_X509_VAL_NEW);
    eval 'sub ASN1_R_BAD_CLASS () {100;}' unless defined(&ASN1_R_BAD_CLASS);
    eval 'sub ASN1_R_BAD_OBJECT_HEADER () {101;}' unless defined(&ASN1_R_BAD_OBJECT_HEADER);
    eval 'sub ASN1_R_BAD_PASSWORD_READ () {102;}' unless defined(&ASN1_R_BAD_PASSWORD_READ);
    eval 'sub ASN1_R_BAD_PKCS7_CONTENT () {103;}' unless defined(&ASN1_R_BAD_PKCS7_CONTENT);
    eval 'sub ASN1_R_BAD_PKCS7_TYPE () {104;}' unless defined(&ASN1_R_BAD_PKCS7_TYPE);
    eval 'sub ASN1_R_BAD_TAG () {105;}' unless defined(&ASN1_R_BAD_TAG);
    eval 'sub ASN1_R_BAD_TYPE () {106;}' unless defined(&ASN1_R_BAD_TYPE);
    eval 'sub ASN1_R_BN_LIB () {107;}' unless defined(&ASN1_R_BN_LIB);
    eval 'sub ASN1_R_BOOLEAN_IS_WRONG_LENGTH () {108;}' unless defined(&ASN1_R_BOOLEAN_IS_WRONG_LENGTH);
    eval 'sub ASN1_R_BUFFER_TOO_SMALL () {109;}' unless defined(&ASN1_R_BUFFER_TOO_SMALL);
    eval 'sub ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER () {166;}' unless defined(&ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER);
    eval 'sub ASN1_R_DATA_IS_WRONG () {110;}' unless defined(&ASN1_R_DATA_IS_WRONG);
    eval 'sub ASN1_R_DECODE_ERROR () {155;}' unless defined(&ASN1_R_DECODE_ERROR);
    eval 'sub ASN1_R_DECODING_ERROR () {111;}' unless defined(&ASN1_R_DECODING_ERROR);
    eval 'sub ASN1_R_ENCODE_ERROR () {156;}' unless defined(&ASN1_R_ENCODE_ERROR);
    eval 'sub ASN1_R_ERROR_PARSING_SET_ELEMENT () {112;}' unless defined(&ASN1_R_ERROR_PARSING_SET_ELEMENT);
    eval 'sub ASN1_R_ERROR_SETTING_CIPHER_PARAMS () {157;}' unless defined(&ASN1_R_ERROR_SETTING_CIPHER_PARAMS);
    eval 'sub ASN1_R_EXPECTING_AN_ENUMERATED () {154;}' unless defined(&ASN1_R_EXPECTING_AN_ENUMERATED);
    eval 'sub ASN1_R_EXPECTING_AN_INTEGER () {113;}' unless defined(&ASN1_R_EXPECTING_AN_INTEGER);
    eval 'sub ASN1_R_EXPECTING_AN_OBJECT () {114;}' unless defined(&ASN1_R_EXPECTING_AN_OBJECT);
    eval 'sub ASN1_R_EXPECTING_AN_OCTET_STRING () {115;}' unless defined(&ASN1_R_EXPECTING_AN_OCTET_STRING);
    eval 'sub ASN1_R_EXPECTING_A_BIT_STRING () {116;}' unless defined(&ASN1_R_EXPECTING_A_BIT_STRING);
    eval 'sub ASN1_R_EXPECTING_A_BOOLEAN () {117;}' unless defined(&ASN1_R_EXPECTING_A_BOOLEAN);
    eval 'sub ASN1_R_EXPECTING_A_GENERALIZEDTIME () {151;}' unless defined(&ASN1_R_EXPECTING_A_GENERALIZEDTIME);
    eval 'sub ASN1_R_EXPECTING_A_NULL () {164;}' unless defined(&ASN1_R_EXPECTING_A_NULL);
    eval 'sub ASN1_R_EXPECTING_A_TIME () {152;}' unless defined(&ASN1_R_EXPECTING_A_TIME);
    eval 'sub ASN1_R_EXPECTING_A_UTCTIME () {118;}' unless defined(&ASN1_R_EXPECTING_A_UTCTIME);
    eval 'sub ASN1_R_FIRST_NUM_TOO_LARGE () {119;}' unless defined(&ASN1_R_FIRST_NUM_TOO_LARGE);
    eval 'sub ASN1_R_GENERALIZEDTIME_TOO_LONG () {153;}' unless defined(&ASN1_R_GENERALIZEDTIME_TOO_LONG);
    eval 'sub ASN1_R_HEADER_TOO_LONG () {120;}' unless defined(&ASN1_R_HEADER_TOO_LONG);
    eval 'sub ASN1_R_ILLEGAL_CHARACTERS () {158;}' unless defined(&ASN1_R_ILLEGAL_CHARACTERS);
    eval 'sub ASN1_R_INVALID_BMPSTRING_LENGTH () {159;}' unless defined(&ASN1_R_INVALID_BMPSTRING_LENGTH);
    eval 'sub ASN1_R_INVALID_DIGIT () {121;}' unless defined(&ASN1_R_INVALID_DIGIT);
    eval 'sub ASN1_R_INVALID_SEPARATOR () {122;}' unless defined(&ASN1_R_INVALID_SEPARATOR);
    eval 'sub ASN1_R_INVALID_TIME_FORMAT () {123;}' unless defined(&ASN1_R_INVALID_TIME_FORMAT);
    eval 'sub ASN1_R_INVALID_UNIVERSALSTRING_LENGTH () {160;}' unless defined(&ASN1_R_INVALID_UNIVERSALSTRING_LENGTH);
    eval 'sub ASN1_R_INVALID_UTF8STRING () {161;}' unless defined(&ASN1_R_INVALID_UTF8STRING);
    eval 'sub ASN1_R_IV_TOO_LARGE () {124;}' unless defined(&ASN1_R_IV_TOO_LARGE);
    eval 'sub ASN1_R_LENGTH_ERROR () {125;}' unless defined(&ASN1_R_LENGTH_ERROR);
    eval 'sub ASN1_R_MISSING_SECOND_NUMBER () {126;}' unless defined(&ASN1_R_MISSING_SECOND_NUMBER);
    eval 'sub ASN1_R_NON_HEX_CHARACTERS () {127;}' unless defined(&ASN1_R_NON_HEX_CHARACTERS);
    eval 'sub ASN1_R_NOT_ENOUGH_DATA () {128;}' unless defined(&ASN1_R_NOT_ENOUGH_DATA);
    eval 'sub ASN1_R_NULL_IS_WRONG_LENGTH () {165;}' unless defined(&ASN1_R_NULL_IS_WRONG_LENGTH);
    eval 'sub ASN1_R_ODD_NUMBER_OF_CHARS () {129;}' unless defined(&ASN1_R_ODD_NUMBER_OF_CHARS);
    eval 'sub ASN1_R_PARSING () {130;}' unless defined(&ASN1_R_PARSING);
    eval 'sub ASN1_R_PRIVATE_KEY_HEADER_MISSING () {131;}' unless defined(&ASN1_R_PRIVATE_KEY_HEADER_MISSING);
    eval 'sub ASN1_R_SECOND_NUMBER_TOO_LARGE () {132;}' unless defined(&ASN1_R_SECOND_NUMBER_TOO_LARGE);
    eval 'sub ASN1_R_SHORT_LINE () {133;}' unless defined(&ASN1_R_SHORT_LINE);
    eval 'sub ASN1_R_STRING_TOO_LONG () {163;}' unless defined(&ASN1_R_STRING_TOO_LONG);
    eval 'sub ASN1_R_STRING_TOO_SHORT () {134;}' unless defined(&ASN1_R_STRING_TOO_SHORT);
    eval 'sub ASN1_R_TAG_VALUE_TOO_HIGH () {135;}' unless defined(&ASN1_R_TAG_VALUE_TOO_HIGH);
    eval 'sub ASN1_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD () {136;}' unless defined(&ASN1_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD);
    eval 'sub ASN1_R_TOO_LONG () {137;}' unless defined(&ASN1_R_TOO_LONG);
    eval 'sub ASN1_R_UNABLE_TO_DECODE_RSA_KEY () {138;}' unless defined(&ASN1_R_UNABLE_TO_DECODE_RSA_KEY);
    eval 'sub ASN1_R_UNABLE_TO_DECODE_RSA_PRIVATE_KEY () {139;}' unless defined(&ASN1_R_UNABLE_TO_DECODE_RSA_PRIVATE_KEY);
    eval 'sub ASN1_R_UNKNOWN_ATTRIBUTE_TYPE () {140;}' unless defined(&ASN1_R_UNKNOWN_ATTRIBUTE_TYPE);
    eval 'sub ASN1_R_UNKNOWN_FORMAT () {162;}' unless defined(&ASN1_R_UNKNOWN_FORMAT);
    eval 'sub ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM () {141;}' unless defined(&ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM);
    eval 'sub ASN1_R_UNKNOWN_OBJECT_TYPE () {142;}' unless defined(&ASN1_R_UNKNOWN_OBJECT_TYPE);
    eval 'sub ASN1_R_UNKNOWN_PUBLIC_KEY_TYPE () {143;}' unless defined(&ASN1_R_UNKNOWN_PUBLIC_KEY_TYPE);
    eval 'sub ASN1_R_UNSUPPORTED_CIPHER () {144;}' unless defined(&ASN1_R_UNSUPPORTED_CIPHER);
    eval 'sub ASN1_R_UNSUPPORTED_ENCRYPTION_ALGORITHM () {145;}' unless defined(&ASN1_R_UNSUPPORTED_ENCRYPTION_ALGORITHM);
    eval 'sub ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE () {146;}' unless defined(&ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE);
    eval 'sub ASN1_R_UTCTIME_TOO_LONG () {147;}' unless defined(&ASN1_R_UTCTIME_TOO_LONG);
    eval 'sub ASN1_R_WRONG_PRINTABLE_TYPE () {148;}' unless defined(&ASN1_R_WRONG_PRINTABLE_TYPE);
    eval 'sub ASN1_R_WRONG_TAG () {149;}' unless defined(&ASN1_R_WRONG_TAG);
    eval 'sub ASN1_R_WRONG_TYPE () {150;}' unless defined(&ASN1_R_WRONG_TYPE);
    if(defined(&__cplusplus)) {
    }
}
1;
