From 9fba98e5abc547e9b5853993749a280b3b3c26ec Mon Sep 17 00:00:00 2001 From: Sergii Pylypenko Date: Mon, 4 Apr 2016 21:09:43 +0300 Subject: [PATCH] Added BoringSSL - replacement for OpenSSL, updated libcurl to use boringssl --- .gitmodules | 3 + project/jni/Makefile.prebuilt | 5 + .../commandergenius/commandergenius | 2 +- project/jni/application/hid-pc-keyboard/src | 2 +- .../openarena/AndroidAppSettings.cfg | 2 +- project/jni/application/openttd/src | 2 +- .../supertux/AndroidAppSettings.cfg | 2 +- project/jni/application/xserver/pulseaudio | 2 +- project/jni/application/xserver/xserver | 2 +- project/jni/boringssl/Android.mk | 21 + project/jni/boringssl/boringssl/jni | 1 + project/jni/boringssl/compile.sh | 16 + project/jni/boringssl/include/openssl/aead.h | 346 + project/jni/boringssl/include/openssl/aes.h | 158 + .../jni/boringssl/include/openssl/arm_arch.h | 127 + project/jni/boringssl/include/openssl/asn1.h | 1167 +++ .../jni/boringssl/include/openssl/asn1_mac.h | 75 + project/jni/boringssl/include/openssl/asn1t.h | 906 ++ project/jni/boringssl/include/openssl/base.h | 261 + .../jni/boringssl/include/openssl/base64.h | 184 + project/jni/boringssl/include/openssl/bio.h | 902 ++ .../jni/boringssl/include/openssl/blowfish.h | 93 + project/jni/boringssl/include/openssl/bn.h | 888 ++ project/jni/boringssl/include/openssl/buf.h | 118 + .../jni/boringssl/include/openssl/buffer.h | 18 + .../boringssl/include/openssl/bytestring.h | 378 + project/jni/boringssl/include/openssl/cast.h | 96 + .../jni/boringssl/include/openssl/chacha.h | 37 + .../jni/boringssl/include/openssl/cipher.h | 571 ++ project/jni/boringssl/include/openssl/cmac.h | 76 + project/jni/boringssl/include/openssl/conf.h | 145 + project/jni/boringssl/include/openssl/cpu.h | 184 + .../jni/boringssl/include/openssl/crypto.h | 68 + .../boringssl/include/openssl/curve25519.h | 92 + project/jni/boringssl/include/openssl/des.h | 177 + project/jni/boringssl/include/openssl/dh.h | 238 + .../jni/boringssl/include/openssl/digest.h | 258 + project/jni/boringssl/include/openssl/dsa.h | 343 + project/jni/boringssl/include/openssl/dtls1.h | 16 + project/jni/boringssl/include/openssl/ec.h | 355 + .../jni/boringssl/include/openssl/ec_key.h | 280 + project/jni/boringssl/include/openssl/ecdh.h | 102 + project/jni/boringssl/include/openssl/ecdsa.h | 206 + .../jni/boringssl/include/openssl/engine.h | 98 + project/jni/boringssl/include/openssl/err.h | 487 + project/jni/boringssl/include/openssl/evp.h | 750 ++ .../jni/boringssl/include/openssl/ex_data.h | 213 + project/jni/boringssl/include/openssl/hkdf.h | 44 + project/jni/boringssl/include/openssl/hmac.h | 160 + project/jni/boringssl/include/openssl/lhash.h | 192 + .../boringssl/include/openssl/lhash_macros.h | 132 + project/jni/boringssl/include/openssl/md4.h | 102 + project/jni/boringssl/include/openssl/md5.h | 107 + project/jni/boringssl/include/openssl/mem.h | 140 + project/jni/boringssl/include/openssl/obj.h | 198 + .../jni/boringssl/include/openssl/obj_mac.h | 4144 +++++++++ .../jni/boringssl/include/openssl/objects.h | 18 + .../include/openssl/opensslfeatures.h | 60 + .../jni/boringssl/include/openssl/opensslv.h | 18 + .../jni/boringssl/include/openssl/ossl_typ.h | 18 + project/jni/boringssl/include/openssl/pem.h | 517 ++ .../jni/boringssl/include/openssl/pkcs12.h | 18 + project/jni/boringssl/include/openssl/pkcs7.h | 16 + project/jni/boringssl/include/openssl/pkcs8.h | 220 + .../jni/boringssl/include/openssl/poly1305.h | 51 + .../jni/boringssl/include/openssl/pqueue.h | 146 + project/jni/boringssl/include/openssl/rand.h | 113 + project/jni/boringssl/include/openssl/rc4.h | 90 + project/jni/boringssl/include/openssl/rsa.h | 637 ++ .../jni/boringssl/include/openssl/safestack.h | 16 + project/jni/boringssl/include/openssl/sha.h | 256 + project/jni/boringssl/include/openssl/srtp.h | 18 + project/jni/boringssl/include/openssl/ssl.h | 4472 +++++++++ project/jni/boringssl/include/openssl/ssl3.h | 441 + project/jni/boringssl/include/openssl/stack.h | 295 + .../boringssl/include/openssl/stack_macros.h | 3934 ++++++++ .../jni/boringssl/include/openssl/thread.h | 173 + .../boringssl/include/openssl/time_support.h | 90 + project/jni/boringssl/include/openssl/tls1.h | 653 ++ .../boringssl/include/openssl/type_check.h | 91 + project/jni/boringssl/include/openssl/x509.h | 1256 +++ .../jni/boringssl/include/openssl/x509_vfy.h | 611 ++ .../jni/boringssl/include/openssl/x509v3.h | 798 ++ .../jni/boringssl/lib-arm64-v8a/libcrypto.a | Bin 0 -> 13037816 bytes project/jni/boringssl/lib-arm64-v8a/libssl.a | Bin 0 -> 3486918 bytes .../jni/boringssl/lib-armeabi-v7a/libcrypto.a | Bin 0 -> 7439072 bytes .../jni/boringssl/lib-armeabi-v7a/libssl.a | Bin 0 -> 2192550 bytes project/jni/boringssl/lib-x86/libcrypto.a | Bin 0 -> 7214180 bytes project/jni/boringssl/lib-x86/libssl.a | Bin 0 -> 2125042 bytes project/jni/boringssl/lib-x86_64/libcrypto.a | Bin 0 -> 13260856 bytes project/jni/boringssl/lib-x86_64/libssl.a | Bin 0 -> 3461422 bytes project/jni/crypto | 2 +- project/jni/curl/Android.mk | 5 +- project/jni/curl/CHANGES | 8116 +++++++++-------- project/jni/curl/COPYING | 3 +- project/jni/curl/README | 8 +- project/jni/curl/RELEASE-NOTES | 188 +- project/jni/curl/include/README | 2 +- project/jni/curl/include/curl/curl.h | 662 +- project/jni/curl/include/curl/curlbuild.h | 4 + project/jni/curl/include/curl/curlrules.h | 30 +- project/jni/curl/include/curl/curlver.h | 24 +- project/jni/curl/include/curl/easy.h | 6 +- project/jni/curl/include/curl/mprintf.h | 11 +- project/jni/curl/include/curl/multi.h | 94 +- project/jni/curl/include/curl/stdcheaders.h | 2 +- project/jni/curl/include/curl/typecheck-gcc.h | 268 +- project/jni/curl/include/curl/types.h | 1 - project/jni/curl/lib/Makefile.inc | 109 +- project/jni/curl/lib/amigaos.c | 27 +- project/jni/curl/lib/amigaos.h | 42 +- project/jni/curl/lib/arpa_telnet.h | 8 +- project/jni/curl/lib/asyn-ares.c | 691 ++ .../curl/lib/{hostthre.c => asyn-thread.c} | 443 +- project/jni/curl/lib/asyn.h | 168 + project/jni/curl/lib/base64.c | 294 +- project/jni/curl/lib/config-amigaos.h | 34 +- project/jni/curl/lib/config-dos.h | 51 +- project/jni/curl/lib/config-mac.h | 42 +- project/jni/curl/lib/config-os400.h | 73 +- project/jni/curl/lib/config-riscos.h | 53 +- project/jni/curl/lib/config-symbian.h | 68 +- project/jni/curl/lib/config-tpf.h | 49 +- project/jni/curl/lib/config-vms.h | 374 - project/jni/curl/lib/config-vxworks.h | 60 +- project/jni/curl/lib/config-win32.h | 372 +- project/jni/curl/lib/config-win32ce.h | 44 +- project/jni/curl/lib/conncache.c | 364 + project/jni/curl/lib/conncache.h | 68 + project/jni/curl/lib/connect.c | 1106 ++- project/jni/curl/lib/connect.h | 78 +- project/jni/curl/lib/content_encoding.c | 43 +- project/jni/curl/lib/content_encoding.h | 14 +- project/jni/curl/lib/cookie.c | 932 +- project/jni/curl/lib/cookie.h | 36 +- project/jni/curl/lib/curl_addrinfo.c | 82 +- project/jni/curl/lib/curl_addrinfo.h | 16 +- project/jni/curl/lib/curl_base64.h | 16 +- project/jni/curl/lib/curl_config.h | 87 +- project/jni/curl/lib/curl_des.c | 63 + project/jni/curl/lib/curl_des.h | 34 + project/jni/curl/lib/curl_endian.c | 236 + project/jni/curl/lib/curl_endian.h | 70 + project/jni/curl/lib/curl_fnmatch.c | 16 +- project/jni/curl/lib/curl_fnmatch.h | 2 +- project/jni/curl/lib/curl_gethostname.c | 43 +- project/jni/curl/lib/curl_gethostname.h | 6 +- project/jni/curl/lib/curl_gssapi.c | 120 + project/jni/curl/lib/curl_gssapi.h | 75 + project/jni/curl/lib/curl_hmac.h | 2 +- project/jni/curl/lib/curl_ldap.h | 15 +- project/jni/curl/lib/curl_md4.h | 16 +- project/jni/curl/lib/curl_md5.h | 31 +- project/jni/curl/lib/curl_memory.h | 104 +- project/jni/curl/lib/curl_memrchr.c | 16 +- project/jni/curl/lib/curl_memrchr.h | 4 +- project/jni/curl/lib/curl_multibyte.c | 82 + project/jni/curl/lib/curl_multibyte.h | 92 + project/jni/curl/lib/curl_ntlm.c | 239 + project/jni/curl/lib/curl_ntlm.h | 40 + project/jni/curl/lib/curl_ntlm_core.c | 762 ++ project/jni/curl/lib/curl_ntlm_core.h | 106 + project/jni/curl/lib/curl_ntlm_msgs.c | 821 ++ .../lib/{http_ntlm.h => curl_ntlm_msgs.h} | 38 +- project/jni/curl/lib/curl_ntlm_wb.c | 431 + project/jni/curl/lib/curl_ntlm_wb.h | 38 + project/jni/curl/lib/curl_printf.h | 56 + project/jni/curl/lib/curl_rand.c | 61 - project/jni/curl/lib/curl_rtmp.c | 106 +- project/jni/curl/lib/curl_rtmp.h | 2 +- project/jni/curl/lib/curl_sasl.c | 1742 ++++ project/jni/curl/lib/curl_sasl.h | 255 + project/jni/curl/lib/curl_sasl_gssapi.c | 392 + project/jni/curl/lib/curl_sasl_sspi.c | 1295 +++ project/jni/curl/lib/{krb4.h => curl_sec.h} | 24 +- .../jni/curl/lib/{setup.h => curl_setup.h} | 263 +- .../lib/{setup_once.h => curl_setup_once.h} | 118 +- project/jni/curl/lib/curl_sspi.c | 212 +- project/jni/curl/lib/curl_sspi.h | 331 +- project/jni/curl/lib/curl_threads.c | 45 +- project/jni/curl/lib/curl_threads.h | 17 +- project/jni/curl/lib/curlx.h | 16 +- project/jni/curl/lib/dict.c | 61 +- project/jni/curl/lib/dict.h | 2 +- project/jni/curl/lib/dotdot.c | 177 + .../jni/curl/lib/{curl_rand.h => dotdot.h} | 16 +- project/jni/curl/lib/easy.c | 1082 ++- project/jni/curl/lib/easyif.h | 22 +- project/jni/curl/lib/escape.c | 120 +- project/jni/curl/lib/escape.h | 16 +- project/jni/curl/lib/file.c | 294 +- project/jni/curl/lib/file.h | 11 +- project/jni/curl/lib/fileinfo.c | 33 +- project/jni/curl/lib/fileinfo.h | 2 +- project/jni/curl/lib/firefox-db2pem.sh | 54 - project/jni/curl/lib/formdata.c | 991 +- project/jni/curl/lib/formdata.h | 6 +- project/jni/curl/lib/ftp.c | 2025 ++-- project/jni/curl/lib/ftp.h | 32 +- project/jni/curl/lib/ftplistparser.c | 123 +- project/jni/curl/lib/ftplistparser.h | 8 +- project/jni/curl/lib/getenv.c | 20 +- project/jni/curl/lib/getinfo.c | 405 +- project/jni/curl/lib/getinfo.h | 2 +- project/jni/curl/lib/gopher.c | 82 +- project/jni/curl/lib/gopher.h | 2 +- project/jni/curl/lib/gtls.c | 959 -- project/jni/curl/lib/hash.c | 240 +- project/jni/curl/lib/hash.h | 34 +- project/jni/curl/lib/hmac.c | 20 +- project/jni/curl/lib/hostares.c | 413 - project/jni/curl/lib/hostasyn.c | 76 +- project/jni/curl/lib/hostcheck.c | 147 + project/jni/curl/lib/hostcheck.h | 32 + project/jni/curl/lib/hostip.c | 408 +- project/jni/curl/lib/hostip.h | 129 +- project/jni/curl/lib/hostip4.c | 38 +- project/jni/curl/lib/hostip6.c | 100 +- project/jni/curl/lib/hostsyn.c | 86 +- project/jni/curl/lib/http.c | 2264 +++-- project/jni/curl/lib/http.h | 133 +- project/jni/curl/lib/http2.c | 1709 ++++ project/jni/curl/lib/http2.h | 65 + project/jni/curl/lib/http_chunks.c | 173 +- project/jni/curl/lib/http_chunks.h | 56 +- project/jni/curl/lib/http_digest.c | 541 +- project/jni/curl/lib/http_digest.h | 33 +- project/jni/curl/lib/http_negotiate.c | 389 +- project/jni/curl/lib/http_negotiate.h | 16 +- project/jni/curl/lib/http_negotiate_sspi.c | 302 + project/jni/curl/lib/http_ntlm.c | 1305 --- project/jni/curl/lib/http_proxy.c | 590 ++ project/jni/curl/lib/http_proxy.h | 42 + project/jni/curl/lib/idn_win32.c | 111 + project/jni/curl/lib/if2ip.c | 217 +- project/jni/curl/lib/if2ip.h | 36 +- project/jni/curl/lib/imap.c | 2172 +++-- project/jni/curl/lib/imap.h | 69 +- project/jni/curl/lib/inet_ntop.c | 62 +- project/jni/curl/lib/inet_ntop.h | 15 +- project/jni/curl/lib/inet_pton.c | 21 +- project/jni/curl/lib/inet_pton.h | 11 +- project/jni/curl/lib/krb4.c | 431 - project/jni/curl/lib/krb5.c | 144 +- project/jni/curl/lib/ldap.c | 767 +- project/jni/curl/lib/llist.c | 32 +- project/jni/curl/lib/llist.h | 11 +- project/jni/curl/lib/md4.c | 515 +- project/jni/curl/lib/md5.c | 769 +- project/jni/curl/lib/memdebug.c | 206 +- project/jni/curl/lib/memdebug.h | 86 +- project/jni/curl/lib/mprintf.c | 370 +- project/jni/curl/lib/multi.c | 2534 ++--- project/jni/curl/lib/multihandle.h | 152 + project/jni/curl/lib/multiif.h | 58 +- project/jni/curl/lib/netrc.c | 158 +- project/jni/curl/lib/netrc.h | 18 +- project/jni/curl/lib/non-ascii.c | 338 + project/jni/curl/lib/non-ascii.h | 63 + project/jni/curl/lib/nonblock.c | 34 +- project/jni/curl/lib/nonblock.h | 9 +- project/jni/curl/lib/nss.c | 1481 --- project/jni/curl/lib/nwlib.c | 132 +- project/jni/curl/lib/nwos.c | 65 +- project/jni/curl/lib/openldap.c | 390 +- project/jni/curl/lib/parsedate.c | 111 +- project/jni/curl/lib/parsedate.h | 27 +- project/jni/curl/lib/pingpong.c | 269 +- project/jni/curl/lib/pingpong.h | 55 +- project/jni/curl/lib/pipeline.c | 434 + project/jni/curl/lib/pipeline.h | 56 + project/jni/curl/lib/polarssl.c | 375 - project/jni/curl/lib/pop3.c | 1606 +++- project/jni/curl/lib/pop3.h | 79 +- project/jni/curl/lib/progress.c | 152 +- project/jni/curl/lib/progress.h | 19 +- project/jni/curl/lib/qssl.c | 501 - project/jni/curl/lib/qssl.h | 59 - project/jni/curl/lib/rawstr.c | 18 +- project/jni/curl/lib/rawstr.h | 15 +- project/jni/curl/lib/rtsp.c | 231 +- project/jni/curl/lib/rtsp.h | 37 +- project/jni/curl/lib/security.c | 259 +- project/jni/curl/lib/select.c | 218 +- project/jni/curl/lib/select.h | 69 +- project/jni/curl/lib/sendf.c | 269 +- project/jni/curl/lib/sendf.h | 14 +- project/jni/curl/lib/setup-os400.h | 107 +- project/jni/curl/lib/setup-vms.h | 442 + project/jni/curl/lib/share.c | 123 +- project/jni/curl/lib/share.h | 22 +- project/jni/curl/lib/sigpipe.h | 78 + project/jni/curl/lib/slist.c | 82 +- project/jni/curl/lib/slist.h | 18 +- project/jni/curl/lib/smb.c | 978 ++ project/jni/curl/lib/smb.h | 271 + project/jni/curl/lib/smtp.c | 2041 +++-- project/jni/curl/lib/smtp.h | 62 +- project/jni/curl/lib/sockaddr.h | 30 +- project/jni/curl/lib/socks.c | 310 +- project/jni/curl/lib/socks.h | 24 +- project/jni/curl/lib/socks_gssapi.c | 198 +- project/jni/curl/lib/socks_sspi.c | 423 +- project/jni/curl/lib/speedcheck.c | 22 +- project/jni/curl/lib/speedcheck.h | 4 +- project/jni/curl/lib/splay.c | 194 +- project/jni/curl/lib/splay.h | 13 +- project/jni/curl/lib/ssh.c | 1320 +-- project/jni/curl/lib/ssh.h | 48 +- project/jni/curl/lib/sslgen.c | 472 - project/jni/curl/lib/sslgen.h | 92 - project/jni/curl/lib/strdup.c | 34 +- project/jni/curl/lib/strdup.h | 7 +- project/jni/curl/lib/strequal.c | 60 +- project/jni/curl/lib/strequal.h | 14 +- project/jni/curl/lib/strerror.c | 420 +- project/jni/curl/lib/strerror.h | 12 +- project/jni/curl/lib/strtok.c | 5 +- project/jni/curl/lib/strtok.h | 4 +- project/jni/curl/lib/strtoofft.c | 17 +- project/jni/curl/lib/strtoofft.h | 21 +- project/jni/curl/lib/telnet.c | 1242 +-- project/jni/curl/lib/telnet.h | 11 +- project/jni/curl/lib/tftp.c | 489 +- project/jni/curl/lib/tftp.h | 11 +- project/jni/curl/lib/timeval.c | 31 +- project/jni/curl/lib/timeval.h | 11 +- project/jni/curl/lib/transfer.c | 1168 +-- project/jni/curl/lib/transfer.h | 22 +- project/jni/curl/lib/url.c | 4108 ++++++--- project/jni/curl/lib/url.h | 46 +- project/jni/curl/lib/urldata.h | 766 +- project/jni/curl/lib/version.c | 133 +- project/jni/curl/lib/vtls/axtls.c | 690 ++ project/jni/curl/lib/vtls/axtls.h | 71 + project/jni/curl/lib/vtls/cyassl.c | 800 ++ project/jni/curl/lib/vtls/cyassl.h | 75 + project/jni/curl/lib/vtls/darwinssl.c | 2484 +++++ project/jni/curl/lib/vtls/darwinssl.h | 76 + project/jni/curl/lib/vtls/gskit.c | 1069 +++ project/jni/curl/lib/vtls/gskit.h | 71 + project/jni/curl/lib/vtls/gtls.c | 1627 ++++ project/jni/curl/lib/{ => vtls}/gtls.h | 57 +- project/jni/curl/lib/vtls/mbedtls.c | 871 ++ project/jni/curl/lib/vtls/mbedtls.h | 75 + project/jni/curl/lib/vtls/nss.c | 2081 +++++ project/jni/curl/lib/{ => vtls}/nssg.h | 65 +- .../jni/curl/lib/{ssluse.c => vtls/openssl.c} | 2273 +++-- .../jni/curl/lib/{ssluse.h => vtls/openssl.h} | 58 +- project/jni/curl/lib/vtls/polarssl.c | 753 ++ project/jni/curl/lib/{ => vtls}/polarssl.h | 44 +- .../jni/curl/lib/vtls/polarssl_threadlock.c | 153 + .../jni/curl/lib/vtls/polarssl_threadlock.h | 53 + project/jni/curl/lib/vtls/schannel.c | 1519 +++ project/jni/curl/lib/vtls/schannel.h | 118 + project/jni/curl/lib/vtls/vtls.c | 965 ++ project/jni/curl/lib/vtls/vtls.h | 159 + project/jni/curl/lib/warnless.c | 239 +- project/jni/curl/lib/warnless.h | 70 +- project/jni/curl/lib/wildcard.c | 25 +- project/jni/curl/lib/wildcard.h | 8 +- project/jni/curl/lib/x509asn1.c | 1184 +++ project/jni/curl/lib/x509asn1.h | 132 + project/jni/ssl | 2 +- 364 files changed, 91224 insertions(+), 29310 deletions(-) create mode 100644 project/jni/boringssl/Android.mk create mode 160000 project/jni/boringssl/boringssl/jni create mode 100755 project/jni/boringssl/compile.sh create mode 100644 project/jni/boringssl/include/openssl/aead.h create mode 100644 project/jni/boringssl/include/openssl/aes.h create mode 100644 project/jni/boringssl/include/openssl/arm_arch.h create mode 100644 project/jni/boringssl/include/openssl/asn1.h create mode 100644 project/jni/boringssl/include/openssl/asn1_mac.h create mode 100644 project/jni/boringssl/include/openssl/asn1t.h create mode 100644 project/jni/boringssl/include/openssl/base.h create mode 100644 project/jni/boringssl/include/openssl/base64.h create mode 100644 project/jni/boringssl/include/openssl/bio.h create mode 100644 project/jni/boringssl/include/openssl/blowfish.h create mode 100644 project/jni/boringssl/include/openssl/bn.h create mode 100644 project/jni/boringssl/include/openssl/buf.h create mode 100644 project/jni/boringssl/include/openssl/buffer.h create mode 100644 project/jni/boringssl/include/openssl/bytestring.h create mode 100644 project/jni/boringssl/include/openssl/cast.h create mode 100644 project/jni/boringssl/include/openssl/chacha.h create mode 100644 project/jni/boringssl/include/openssl/cipher.h create mode 100644 project/jni/boringssl/include/openssl/cmac.h create mode 100644 project/jni/boringssl/include/openssl/conf.h create mode 100644 project/jni/boringssl/include/openssl/cpu.h create mode 100644 project/jni/boringssl/include/openssl/crypto.h create mode 100644 project/jni/boringssl/include/openssl/curve25519.h create mode 100644 project/jni/boringssl/include/openssl/des.h create mode 100644 project/jni/boringssl/include/openssl/dh.h create mode 100644 project/jni/boringssl/include/openssl/digest.h create mode 100644 project/jni/boringssl/include/openssl/dsa.h create mode 100644 project/jni/boringssl/include/openssl/dtls1.h create mode 100644 project/jni/boringssl/include/openssl/ec.h create mode 100644 project/jni/boringssl/include/openssl/ec_key.h create mode 100644 project/jni/boringssl/include/openssl/ecdh.h create mode 100644 project/jni/boringssl/include/openssl/ecdsa.h create mode 100644 project/jni/boringssl/include/openssl/engine.h create mode 100644 project/jni/boringssl/include/openssl/err.h create mode 100644 project/jni/boringssl/include/openssl/evp.h create mode 100644 project/jni/boringssl/include/openssl/ex_data.h create mode 100644 project/jni/boringssl/include/openssl/hkdf.h create mode 100644 project/jni/boringssl/include/openssl/hmac.h create mode 100644 project/jni/boringssl/include/openssl/lhash.h create mode 100644 project/jni/boringssl/include/openssl/lhash_macros.h create mode 100644 project/jni/boringssl/include/openssl/md4.h create mode 100644 project/jni/boringssl/include/openssl/md5.h create mode 100644 project/jni/boringssl/include/openssl/mem.h create mode 100644 project/jni/boringssl/include/openssl/obj.h create mode 100644 project/jni/boringssl/include/openssl/obj_mac.h create mode 100644 project/jni/boringssl/include/openssl/objects.h create mode 100644 project/jni/boringssl/include/openssl/opensslfeatures.h create mode 100644 project/jni/boringssl/include/openssl/opensslv.h create mode 100644 project/jni/boringssl/include/openssl/ossl_typ.h create mode 100644 project/jni/boringssl/include/openssl/pem.h create mode 100644 project/jni/boringssl/include/openssl/pkcs12.h create mode 100644 project/jni/boringssl/include/openssl/pkcs7.h create mode 100644 project/jni/boringssl/include/openssl/pkcs8.h create mode 100644 project/jni/boringssl/include/openssl/poly1305.h create mode 100644 project/jni/boringssl/include/openssl/pqueue.h create mode 100644 project/jni/boringssl/include/openssl/rand.h create mode 100644 project/jni/boringssl/include/openssl/rc4.h create mode 100644 project/jni/boringssl/include/openssl/rsa.h create mode 100644 project/jni/boringssl/include/openssl/safestack.h create mode 100644 project/jni/boringssl/include/openssl/sha.h create mode 100644 project/jni/boringssl/include/openssl/srtp.h create mode 100644 project/jni/boringssl/include/openssl/ssl.h create mode 100644 project/jni/boringssl/include/openssl/ssl3.h create mode 100644 project/jni/boringssl/include/openssl/stack.h create mode 100644 project/jni/boringssl/include/openssl/stack_macros.h create mode 100644 project/jni/boringssl/include/openssl/thread.h create mode 100644 project/jni/boringssl/include/openssl/time_support.h create mode 100644 project/jni/boringssl/include/openssl/tls1.h create mode 100644 project/jni/boringssl/include/openssl/type_check.h create mode 100644 project/jni/boringssl/include/openssl/x509.h create mode 100644 project/jni/boringssl/include/openssl/x509_vfy.h create mode 100644 project/jni/boringssl/include/openssl/x509v3.h create mode 100644 project/jni/boringssl/lib-arm64-v8a/libcrypto.a create mode 100644 project/jni/boringssl/lib-arm64-v8a/libssl.a create mode 100644 project/jni/boringssl/lib-armeabi-v7a/libcrypto.a create mode 100644 project/jni/boringssl/lib-armeabi-v7a/libssl.a create mode 100644 project/jni/boringssl/lib-x86/libcrypto.a create mode 100644 project/jni/boringssl/lib-x86/libssl.a create mode 100644 project/jni/boringssl/lib-x86_64/libcrypto.a create mode 100644 project/jni/boringssl/lib-x86_64/libssl.a delete mode 100644 project/jni/curl/include/curl/types.h create mode 100644 project/jni/curl/lib/asyn-ares.c rename project/jni/curl/lib/{hostthre.c => asyn-thread.c} (54%) create mode 100644 project/jni/curl/lib/asyn.h delete mode 100644 project/jni/curl/lib/config-vms.h create mode 100644 project/jni/curl/lib/conncache.c create mode 100644 project/jni/curl/lib/conncache.h create mode 100644 project/jni/curl/lib/curl_des.c create mode 100644 project/jni/curl/lib/curl_des.h create mode 100644 project/jni/curl/lib/curl_endian.c create mode 100644 project/jni/curl/lib/curl_endian.h create mode 100644 project/jni/curl/lib/curl_gssapi.c create mode 100644 project/jni/curl/lib/curl_gssapi.h create mode 100644 project/jni/curl/lib/curl_multibyte.c create mode 100644 project/jni/curl/lib/curl_multibyte.h create mode 100644 project/jni/curl/lib/curl_ntlm.c create mode 100644 project/jni/curl/lib/curl_ntlm.h create mode 100644 project/jni/curl/lib/curl_ntlm_core.c create mode 100644 project/jni/curl/lib/curl_ntlm_core.h create mode 100644 project/jni/curl/lib/curl_ntlm_msgs.c rename project/jni/curl/lib/{http_ntlm.h => curl_ntlm_msgs.h} (86%) create mode 100644 project/jni/curl/lib/curl_ntlm_wb.c create mode 100644 project/jni/curl/lib/curl_ntlm_wb.h create mode 100644 project/jni/curl/lib/curl_printf.h delete mode 100644 project/jni/curl/lib/curl_rand.c create mode 100644 project/jni/curl/lib/curl_sasl.c create mode 100644 project/jni/curl/lib/curl_sasl.h create mode 100644 project/jni/curl/lib/curl_sasl_gssapi.c create mode 100644 project/jni/curl/lib/curl_sasl_sspi.c rename project/jni/curl/lib/{krb4.h => curl_sec.h} (76%) rename project/jni/curl/lib/{setup.h => curl_setup.h} (69%) rename project/jni/curl/lib/{setup_once.h => curl_setup_once.h} (86%) create mode 100644 project/jni/curl/lib/dotdot.c rename project/jni/curl/lib/{curl_rand.h => dotdot.h} (76%) delete mode 100644 project/jni/curl/lib/firefox-db2pem.sh delete mode 100644 project/jni/curl/lib/gtls.c delete mode 100644 project/jni/curl/lib/hostares.c create mode 100644 project/jni/curl/lib/hostcheck.c create mode 100644 project/jni/curl/lib/hostcheck.h create mode 100644 project/jni/curl/lib/http2.c create mode 100644 project/jni/curl/lib/http2.h create mode 100644 project/jni/curl/lib/http_negotiate_sspi.c delete mode 100644 project/jni/curl/lib/http_ntlm.c create mode 100644 project/jni/curl/lib/http_proxy.c create mode 100644 project/jni/curl/lib/http_proxy.h create mode 100644 project/jni/curl/lib/idn_win32.c delete mode 100644 project/jni/curl/lib/krb4.c create mode 100644 project/jni/curl/lib/multihandle.h create mode 100644 project/jni/curl/lib/non-ascii.c create mode 100644 project/jni/curl/lib/non-ascii.h delete mode 100644 project/jni/curl/lib/nss.c create mode 100644 project/jni/curl/lib/pipeline.c create mode 100644 project/jni/curl/lib/pipeline.h delete mode 100644 project/jni/curl/lib/polarssl.c delete mode 100644 project/jni/curl/lib/qssl.c delete mode 100644 project/jni/curl/lib/qssl.h create mode 100644 project/jni/curl/lib/setup-vms.h create mode 100644 project/jni/curl/lib/sigpipe.h create mode 100644 project/jni/curl/lib/smb.c create mode 100644 project/jni/curl/lib/smb.h delete mode 100644 project/jni/curl/lib/sslgen.c delete mode 100644 project/jni/curl/lib/sslgen.h create mode 100644 project/jni/curl/lib/vtls/axtls.c create mode 100644 project/jni/curl/lib/vtls/axtls.h create mode 100644 project/jni/curl/lib/vtls/cyassl.c create mode 100644 project/jni/curl/lib/vtls/cyassl.h create mode 100644 project/jni/curl/lib/vtls/darwinssl.c create mode 100644 project/jni/curl/lib/vtls/darwinssl.h create mode 100644 project/jni/curl/lib/vtls/gskit.c create mode 100644 project/jni/curl/lib/vtls/gskit.h create mode 100644 project/jni/curl/lib/vtls/gtls.c rename project/jni/curl/lib/{ => vtls}/gtls.h (53%) create mode 100644 project/jni/curl/lib/vtls/mbedtls.c create mode 100644 project/jni/curl/lib/vtls/mbedtls.h create mode 100644 project/jni/curl/lib/vtls/nss.c rename project/jni/curl/lib/{ => vtls}/nssg.h (50%) rename project/jni/curl/lib/{ssluse.c => vtls/openssl.c} (53%) rename project/jni/curl/lib/{ssluse.h => vtls/openssl.h} (62%) create mode 100644 project/jni/curl/lib/vtls/polarssl.c rename project/jni/curl/lib/{ => vtls}/polarssl.h (55%) create mode 100644 project/jni/curl/lib/vtls/polarssl_threadlock.c create mode 100644 project/jni/curl/lib/vtls/polarssl_threadlock.h create mode 100644 project/jni/curl/lib/vtls/schannel.c create mode 100644 project/jni/curl/lib/vtls/schannel.h create mode 100644 project/jni/curl/lib/vtls/vtls.c create mode 100644 project/jni/curl/lib/vtls/vtls.h create mode 100644 project/jni/curl/lib/x509asn1.c create mode 100644 project/jni/curl/lib/x509asn1.h diff --git a/.gitmodules b/.gitmodules index 8cb714ad2..c655bb3cb 100644 --- a/.gitmodules +++ b/.gitmodules @@ -74,3 +74,6 @@ [submodule "project/jni/application/bochs/bochs"] path = project/jni/application/bochs/bochs url = git@github.com:lubomyr/bochs.git +[submodule "project/jni/boringssl/boringssl/jni"] + path = project/jni/boringssl/boringssl/jni + url = https://android.googlesource.com/platform/external/boringssl diff --git a/project/jni/Makefile.prebuilt b/project/jni/Makefile.prebuilt index dddec5813..f98a827e1 100644 --- a/project/jni/Makefile.prebuilt +++ b/project/jni/Makefile.prebuilt @@ -11,6 +11,8 @@ ICU := $(foreach ARCH, $(ARCHES32), $(foreach NAME, $(ICU_LIBS), icuuc/lib/$(ARC OPENSSL := $(foreach ARCH, $(ARCHES32) $(ARCHES64), openssl/lib-$(ARCH)/libcrypto.a openssl/lib-$(ARCH)/libssl.a) +BORINGSSL := $(foreach ARCH, armeabi-v7a x86 arm64-v8a x86_64, boringssl/lib-$(ARCH)/libcrypto.a boringssl/lib-$(ARCH)/libssl.a) + LIBS := $(ICONV) $(ICU) $(OPENSSL) prebuilt-libraries: $(LIBS) @@ -32,3 +34,6 @@ $(ICONV) $(ICU): $(OPENSSL): cd openssl && ./compile.sh + +$(BORINGSSL): + cd boringssl && ./compile.sh diff --git a/project/jni/application/commandergenius/commandergenius b/project/jni/application/commandergenius/commandergenius index 094b0aac7..c5210b0c4 160000 --- a/project/jni/application/commandergenius/commandergenius +++ b/project/jni/application/commandergenius/commandergenius @@ -1 +1 @@ -Subproject commit 094b0aac7c6f68e1ce38f7e0ef5c9373b9e32e7e +Subproject commit c5210b0c4209d6c9b6a49350057877448882a776 diff --git a/project/jni/application/hid-pc-keyboard/src b/project/jni/application/hid-pc-keyboard/src index 4f96333c1..bf31c329b 160000 --- a/project/jni/application/hid-pc-keyboard/src +++ b/project/jni/application/hid-pc-keyboard/src @@ -1 +1 @@ -Subproject commit 4f96333c1ce2229b7ba46a50ef91ef3695163679 +Subproject commit bf31c329b1275c11f1e5243b5dba48ebca72239e diff --git a/project/jni/application/openarena/AndroidAppSettings.cfg b/project/jni/application/openarena/AndroidAppSettings.cfg index 9f08d32d9..29fb0b093 100644 --- a/project/jni/application/openarena/AndroidAppSettings.cfg +++ b/project/jni/application/openarena/AndroidAppSettings.cfg @@ -244,7 +244,7 @@ MultiABI='armeabi-v7a x86 mips' # Optional shared libraries to compile - removing some of them will save space # MP3 support by libMAD is encumbered by patents and libMAD is GPL-ed # Available libraries: mad (GPL-ed!) sdl_mixer sdl_image sdl_ttf sdl_net sdl_blitpool sdl_gfx sdl_sound intl xml2 lua jpeg png ogg flac tremor vorbis freetype xerces curl theora fluidsynth lzma lzo2 mikmod openal timidity zzip bzip2 yaml-cpp python boost_date_time boost_filesystem boost_iostreams boost_program_options boost_regex boost_signals boost_system boost_thread glu avcodec avdevice avfilter avformat avresample avutil swscale swresample bzip2 -CompiledLibraries="sdl_mixer sdl_image freetype curl vorbis ogg openal" +CompiledLibraries="sdl_mixer sdl_image freetype vorbis ogg openal" # Application uses custom build script AndroidBuild.sh instead of Android.mk (y) or (n) CustomBuildScript=y diff --git a/project/jni/application/openttd/src b/project/jni/application/openttd/src index b4b6e0705..2b5d1be8e 160000 --- a/project/jni/application/openttd/src +++ b/project/jni/application/openttd/src @@ -1 +1 @@ -Subproject commit b4b6e07057994b9c5c75552ae836483f1b51a114 +Subproject commit 2b5d1be8e7c30c7dc1c8350bc04a7a2d0e9aabe6 diff --git a/project/jni/application/supertux/AndroidAppSettings.cfg b/project/jni/application/supertux/AndroidAppSettings.cfg index 7b3e9b666..b7de1385b 100644 --- a/project/jni/application/supertux/AndroidAppSettings.cfg +++ b/project/jni/application/supertux/AndroidAppSettings.cfg @@ -235,7 +235,7 @@ FirstStartMenuOptions='' AppMinimumRAM=0 # GCC version, 4.6 (default) or 4.8, CLANG is not supported yet -NDK_TOOLCHAIN_VERSION=4.8 +NDK_TOOLCHAIN_VERSION=4.9 # Specify architectures to compile, 'all' or 'y' to compile for all architectures. # Available architectures: armeabi armeabi-v7a armeabi-v7a-hard x86 mips diff --git a/project/jni/application/xserver/pulseaudio b/project/jni/application/xserver/pulseaudio index 7a124fcec..f5bebe88c 160000 --- a/project/jni/application/xserver/pulseaudio +++ b/project/jni/application/xserver/pulseaudio @@ -1 +1 @@ -Subproject commit 7a124fcec654d645b1663d15401eb6a88e54cfff +Subproject commit f5bebe88cb4101b842b44183c7eb46aa9405eb9f diff --git a/project/jni/application/xserver/xserver b/project/jni/application/xserver/xserver index 4fceb37bc..a710794bc 160000 --- a/project/jni/application/xserver/xserver +++ b/project/jni/application/xserver/xserver @@ -1 +1 @@ -Subproject commit 4fceb37bc5d66a4d30dd5d6ce5a4b31e6ffeda96 +Subproject commit a710794bcbef76293fa34f18f3cbed321788a12a diff --git a/project/jni/boringssl/Android.mk b/project/jni/boringssl/Android.mk new file mode 100644 index 000000000..a63dffc7b --- /dev/null +++ b/project/jni/boringssl/Android.mk @@ -0,0 +1,21 @@ +LOCAL_PATH:=$(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE := $(notdir $(LOCAL_PATH)) + +ifneq (boringssl,$(LOCAL_MODULE)) +ifneq ($(filter armeabi-v7a arm64-v8a x86 x86_64, $(TARGET_ARCH_ABI)),) + +LOCAL_C_INCLUDES := $(LOCAL_PATH)/include +LOCAL_SRC_FILES := lib-$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).a +LOCAL_BUILT_MODULE := # This fixes a bug in NDK r10d + +# NDK is buggy meh +obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).a: $(LOCAL_PATH)/$(LOCAL_SRC_FILES) + cp -f $< $@ + +include $(PREBUILT_STATIC_LIBRARY) + +endif +endif diff --git a/project/jni/boringssl/boringssl/jni b/project/jni/boringssl/boringssl/jni new file mode 160000 index 000000000..eac3b69c6 --- /dev/null +++ b/project/jni/boringssl/boringssl/jni @@ -0,0 +1 @@ +Subproject commit eac3b69c627af4ffd43b036ea2bcaa4d13cffb60 diff --git a/project/jni/boringssl/compile.sh b/project/jni/boringssl/compile.sh new file mode 100755 index 000000000..3dee8ddb0 --- /dev/null +++ b/project/jni/boringssl/compile.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +ARCH_LIST="armeabi-v7a arm64-v8a x86 x86_64" + +touch boringssl/jni/Empty.mk +echo APP_MODULES := libcrypto_static libssl_static > boringssl/jni/Application.mk +echo APP_ABI := $ARCH_LIST >> boringssl/jni/Application.mk +grep TARGET_ARCH boringssl/jni/crypto-sources.mk || echo 'LOCAL_SRC_FILES += $(LOCAL_SRC_FILES_$(TARGET_ARCH))' >> boringssl/jni/crypto-sources.mk +ndk-build -j8 V=1 -C boringssl BUILD_HOST_SHARED_LIBRARY=jni/Empty.mk BUILD_HOST_STATIC_LIBRARY=jni/Empty.mk BUILD_HOST_EXECUTABLE=jni/Empty.mk || exit 1 +for ARCH in $ARCH_LIST; do + mkdir -p lib-${ARCH} + cp -f boringssl/obj/local/$ARCH/libcrypto_static.a lib-${ARCH}/libcrypto.a || exit 1 + cp -f boringssl/obj/local/$ARCH/libssl_static.a lib-${ARCH}/libssl.a || exit 1 +done +rm -rf include +cp -a boringssl/jni/src/include ./ diff --git a/project/jni/boringssl/include/openssl/aead.h b/project/jni/boringssl/include/openssl/aead.h new file mode 100644 index 000000000..092d2f623 --- /dev/null +++ b/project/jni/boringssl/include/openssl/aead.h @@ -0,0 +1,346 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_AEAD_H +#define OPENSSL_HEADER_AEAD_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Authenticated Encryption with Additional Data. + * + * AEAD couples confidentiality and integrity in a single primitive. AEAD + * algorithms take a key and then can seal and open individual messages. Each + * message has a unique, per-message nonce and, optionally, additional data + * which is authenticated but not included in the ciphertext. + * + * The |EVP_AEAD_CTX_init| function initialises an |EVP_AEAD_CTX| structure and + * performs any precomputation needed to use |aead| with |key|. The length of + * the key, |key_len|, is given in bytes. + * + * The |tag_len| argument contains the length of the tags, in bytes, and allows + * for the processing of truncated authenticators. A zero value indicates that + * the default tag length should be used and this is defined as + * |EVP_AEAD_DEFAULT_TAG_LENGTH| in order to make the code clear. Using + * truncated tags increases an attacker's chance of creating a valid forgery. + * Be aware that the attacker's chance may increase more than exponentially as + * would naively be expected. + * + * When no longer needed, the initialised |EVP_AEAD_CTX| structure must be + * passed to |EVP_AEAD_CTX_cleanup|, which will deallocate any memory used. + * + * With an |EVP_AEAD_CTX| in hand, one can seal and open messages. These + * operations are intended to meet the standard notions of privacy and + * authenticity for authenticated encryption. For formal definitions see + * Bellare and Namprempre, "Authenticated encryption: relations among notions + * and analysis of the generic composition paradigm," Lecture Notes in Computer + * Science B<1976> (2000), 531–545, + * http://www-cse.ucsd.edu/~mihir/papers/oem.html. + * + * When sealing messages, a nonce must be given. The length of the nonce is + * fixed by the AEAD in use and is returned by |EVP_AEAD_nonce_length|. *The + * nonce must be unique for all messages with the same key*. This is critically + * important - nonce reuse may completely undermine the security of the AEAD. + * Nonces may be predictable and public, so long as they are unique. Uniqueness + * may be achieved with a simple counter or, if large enough, may be generated + * randomly. The nonce must be passed into the "open" operation by the receiver + * so must either be implicit (e.g. a counter), or must be transmitted along + * with the sealed message. + * + * The "seal" and "open" operations are atomic - an entire message must be + * encrypted or decrypted in a single call. Large messages may have to be split + * up in order to accomodate this. When doing so, be mindful of the need not to + * repeat nonces and the possibility that an attacker could duplicate, reorder + * or drop message chunks. For example, using a single key for a given (large) + * message and sealing chunks with nonces counting from zero would be secure as + * long as the number of chunks was securely transmitted. (Otherwise an + * attacker could truncate the message by dropping chunks from the end.) + * + * The number of chunks could be transmitted by prefixing it to the plaintext, + * for example. This also assumes that no other message would ever use the same + * key otherwise the rule that nonces must be unique for a given key would be + * violated. + * + * The "seal" and "open" operations also permit additional data to be + * authenticated via the |ad| parameter. This data is not included in the + * ciphertext and must be identical for both the "seal" and "open" call. This + * permits implicit context to be authenticated but may be empty if not needed. + * + * The "seal" and "open" operations may work in-place if the |out| and |in| + * arguments are equal. They may also be used to shift the data left inside the + * same buffer if |out| is less than |in|. However, |out| may not point inside + * the input data otherwise the input may be overwritten before it has been + * read. This situation will cause an error. + * + * The "seal" and "open" operations return one on success and zero on error. */ + + +/* AEAD algorithms. */ + +/* EVP_aead_aes_128_gcm is AES-128 in Galois Counter Mode. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_gcm(void); + +/* EVP_aead_aes_256_gcm is AES-256 in Galois Counter Mode. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_gcm(void); + +/* EVP_aead_chacha20_poly1305 is the AEAD built from ChaCha20 and + * Poly1305 as described in RFC 7539. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_chacha20_poly1305(void); + +/* EVP_aead_chacha20_poly1305_old is an AEAD built from ChaCha20 and + * Poly1305 that is used in the experimental ChaCha20-Poly1305 TLS cipher + * suites. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_chacha20_poly1305_old(void); + +/* EVP_aead_aes_128_key_wrap is AES-128 Key Wrap mode. This should never be + * used except to interoperate with existing systems that use this mode. + * + * If the nonce is empty then the default nonce will be used, otherwise it must + * be eight bytes long. The input must be a multiple of eight bytes long. No + * additional data can be given to this mode. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_key_wrap(void); + +/* EVP_aead_aes_256_key_wrap is AES-256 in Key Wrap mode. This should never be + * used except to interoperate with existing systems that use this mode. + * + * See |EVP_aead_aes_128_key_wrap| for details. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_key_wrap(void); + +/* EVP_aead_aes_128_ctr_hmac_sha256 is AES-128 in CTR mode with HMAC-SHA256 for + * authentication. The nonce is 12 bytes; the bottom 32-bits are used as the + * block counter, thus the maximum plaintext size is 64GB. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_ctr_hmac_sha256(void); + +/* EVP_aead_aes_256_ctr_hmac_sha256 is AES-256 in CTR mode with HMAC-SHA256 for + * authentication. See |EVP_aead_aes_128_ctr_hmac_sha256| for details. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_ctr_hmac_sha256(void); + +/* EVP_has_aes_hardware returns one if we enable hardware support for fast and + * constant-time AES-GCM. */ +OPENSSL_EXPORT int EVP_has_aes_hardware(void); + + +/* TLS-specific AEAD algorithms. + * + * These AEAD primitives do not meet the definition of generic AEADs. They are + * all specific to TLS and should not be used outside of that context. They must + * be initialized with |EVP_AEAD_CTX_init_with_direction|, are stateful, and may + * not be used concurrently. Any nonces are used as IVs, so they must be + * unpredictable. They only accept an |ad| parameter of length 11 (the standard + * TLS one with length omitted). */ + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_rc4_md5_tls(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_rc4_sha1_tls(void); + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_cbc_sha1_tls(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_cbc_sha1_tls_implicit_iv(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_cbc_sha256_tls(void); + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_cbc_sha1_tls(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_cbc_sha1_tls_implicit_iv(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_cbc_sha256_tls(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_cbc_sha384_tls(void); + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_des_ede3_cbc_sha1_tls(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_des_ede3_cbc_sha1_tls_implicit_iv(void); + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_null_sha1_tls(void); + + +/* SSLv3-specific AEAD algorithms. + * + * These AEAD primitives do not meet the definition of generic AEADs. They are + * all specific to SSLv3 and should not be used outside of that context. They + * must be initialized with |EVP_AEAD_CTX_init_with_direction|, are stateful, + * and may not be used concurrently. They only accept an |ad| parameter of + * length 9 (the standard TLS one with length and version omitted). */ + +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_rc4_md5_ssl3(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_rc4_sha1_ssl3(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_128_cbc_sha1_ssl3(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_aes_256_cbc_sha1_ssl3(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_des_ede3_cbc_sha1_ssl3(void); +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_null_sha1_ssl3(void); + + +/* Utility functions. */ + +/* EVP_AEAD_key_length returns the length, in bytes, of the keys used by + * |aead|. */ +OPENSSL_EXPORT size_t EVP_AEAD_key_length(const EVP_AEAD *aead); + +/* EVP_AEAD_nonce_length returns the length, in bytes, of the per-message nonce + * for |aead|. */ +OPENSSL_EXPORT size_t EVP_AEAD_nonce_length(const EVP_AEAD *aead); + +/* EVP_AEAD_max_overhead returns the maximum number of additional bytes added + * by the act of sealing data with |aead|. */ +OPENSSL_EXPORT size_t EVP_AEAD_max_overhead(const EVP_AEAD *aead); + +/* EVP_AEAD_max_tag_len returns the maximum tag length when using |aead|. This + * is the largest value that can be passed as |tag_len| to + * |EVP_AEAD_CTX_init|. */ +OPENSSL_EXPORT size_t EVP_AEAD_max_tag_len(const EVP_AEAD *aead); + + +/* AEAD operations. */ + +/* An EVP_AEAD_CTX represents an AEAD algorithm configured with a specific key + * and message-independent IV. */ +typedef struct evp_aead_ctx_st { + const EVP_AEAD *aead; + /* aead_state is an opaque pointer to whatever state the AEAD needs to + * maintain. */ + void *aead_state; +} EVP_AEAD_CTX; + +/* EVP_AEAD_MAX_KEY_LENGTH contains the maximum key length used by + * any AEAD defined in this header. */ +#define EVP_AEAD_MAX_KEY_LENGTH 80 + +/* EVP_AEAD_MAX_NONCE_LENGTH contains the maximum nonce length used by + * any AEAD defined in this header. */ +#define EVP_AEAD_MAX_NONCE_LENGTH 16 + +/* EVP_AEAD_MAX_OVERHEAD contains the maximum overhead used by any AEAD + * defined in this header. */ +#define EVP_AEAD_MAX_OVERHEAD 64 + +/* EVP_AEAD_DEFAULT_TAG_LENGTH is a magic value that can be passed to + * EVP_AEAD_CTX_init to indicate that the default tag length for an AEAD should + * be used. */ +#define EVP_AEAD_DEFAULT_TAG_LENGTH 0 + +/* evp_aead_direction_t denotes the direction of an AEAD operation. */ +enum evp_aead_direction_t { + evp_aead_open, + evp_aead_seal, +}; + +/* EVP_AEAD_CTX_zero sets an uninitialized |ctx| to the zero state. It must be + * initialized with |EVP_AEAD_CTX_init| before use. It is safe, but not + * necessary, to call |EVP_AEAD_CTX_cleanup| in this state. This may be used for + * more uniform cleanup of |EVP_AEAD_CTX|. */ +OPENSSL_EXPORT void EVP_AEAD_CTX_zero(EVP_AEAD_CTX *ctx); + +/* EVP_AEAD_CTX_init initializes |ctx| for the given AEAD algorithm. The |impl| + * argument is ignored and should be NULL. Authentication tags may be truncated + * by passing a size as |tag_len|. A |tag_len| of zero indicates the default + * tag length and this is defined as EVP_AEAD_DEFAULT_TAG_LENGTH for + * readability. + * + * Returns 1 on success. Otherwise returns 0 and pushes to the error stack. In + * the error case, you do not need to call |EVP_AEAD_CTX_cleanup|, but it's + * harmless to do so. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_init(EVP_AEAD_CTX *ctx, const EVP_AEAD *aead, + const uint8_t *key, size_t key_len, + size_t tag_len, ENGINE *impl); + +/* EVP_AEAD_CTX_init_with_direction calls |EVP_AEAD_CTX_init| for normal + * AEADs. For TLS-specific and SSL3-specific AEADs, it initializes |ctx| for a + * given direction. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_init_with_direction( + EVP_AEAD_CTX *ctx, const EVP_AEAD *aead, const uint8_t *key, size_t key_len, + size_t tag_len, enum evp_aead_direction_t dir); + +/* EVP_AEAD_CTX_cleanup frees any data allocated by |ctx|. It is a no-op to + * call |EVP_AEAD_CTX_cleanup| on a |EVP_AEAD_CTX| that has been |memset| to + * all zeros. */ +OPENSSL_EXPORT void EVP_AEAD_CTX_cleanup(EVP_AEAD_CTX *ctx); + +/* EVP_AEAD_CTX_seal encrypts and authenticates |in_len| bytes from |in| and + * authenticates |ad_len| bytes from |ad| and writes the result to |out|. It + * returns one on success and zero otherwise. + * + * This function may be called (with the same |EVP_AEAD_CTX|) concurrently with + * itself or |EVP_AEAD_CTX_open|. + * + * At most |max_out_len| bytes are written to |out| and, in order to ensure + * success, |max_out_len| should be |in_len| plus the result of + * |EVP_AEAD_max_overhead|. On successful return, |*out_len| is set to the + * actual number of bytes written. + * + * The length of |nonce|, |nonce_len|, must be equal to the result of + * |EVP_AEAD_nonce_length| for this AEAD. + * + * |EVP_AEAD_CTX_seal| never results in a partial output. If |max_out_len| is + * insufficient, zero will be returned. (In this case, |*out_len| is set to + * zero.) + * + * If |in| and |out| alias then |out| must be <= |in|. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_seal(const EVP_AEAD_CTX *ctx, uint8_t *out, + size_t *out_len, size_t max_out_len, + const uint8_t *nonce, size_t nonce_len, + const uint8_t *in, size_t in_len, + const uint8_t *ad, size_t ad_len); + +/* EVP_AEAD_CTX_open authenticates |in_len| bytes from |in| and |ad_len| bytes + * from |ad| and decrypts at most |in_len| bytes into |out|. It returns one on + * success and zero otherwise. + * + * This function may be called (with the same |EVP_AEAD_CTX|) concurrently with + * itself or |EVP_AEAD_CTX_seal|. + * + * At most |in_len| bytes are written to |out|. In order to ensure success, + * |max_out_len| should be at least |in_len|. On successful return, |*out_len| + * is set to the the actual number of bytes written. + * + * The length of |nonce|, |nonce_len|, must be equal to the result of + * |EVP_AEAD_nonce_length| for this AEAD. + * + * |EVP_AEAD_CTX_open| never results in a partial output. If |max_out_len| is + * insufficient, zero will be returned. (In this case, |*out_len| is set to + * zero.) + * + * If |in| and |out| alias then |out| must be <= |in|. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_open(const EVP_AEAD_CTX *ctx, uint8_t *out, + size_t *out_len, size_t max_out_len, + const uint8_t *nonce, size_t nonce_len, + const uint8_t *in, size_t in_len, + const uint8_t *ad, size_t ad_len); + + +/* Obscure functions. */ + +/* EVP_AEAD_CTX_get_rc4_state sets |*out_key| to point to an RC4 key structure. + * It returns one on success or zero if |ctx| doesn't have an RC4 key. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_get_rc4_state(const EVP_AEAD_CTX *ctx, + const RC4_KEY **out_key); + +/* EVP_AEAD_CTX_get_iv sets |*out_len| to the length of the IV for |ctx| and + * sets |*out_iv| to point to that many bytes of the current IV. This is only + * meaningful for AEADs with implicit IVs (i.e. CBC mode in SSLv3 and TLS 1.0). + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_AEAD_CTX_get_iv(const EVP_AEAD_CTX *ctx, + const uint8_t **out_iv, size_t *out_len); + + +/* Deprecated functions. */ + +/* EVP_aead_chacha20_poly1305_rfc7539 calls |EVP_aead_chacha20_poly1305|. + * + * TODO(davidben): Remove this. */ +OPENSSL_EXPORT const EVP_AEAD *EVP_aead_chacha20_poly1305_rfc7539(void); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_AEAD_H */ diff --git a/project/jni/boringssl/include/openssl/aes.h b/project/jni/boringssl/include/openssl/aes.h new file mode 100644 index 000000000..ed060ff66 --- /dev/null +++ b/project/jni/boringssl/include/openssl/aes.h @@ -0,0 +1,158 @@ +/* ==================================================================== + * Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== */ + +#ifndef OPENSSL_HEADER_AES_H +#define OPENSSL_HEADER_AES_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Raw AES functions. */ + + +#define AES_ENCRYPT 1 +#define AES_DECRYPT 0 + +/* AES_MAXNR is the maximum number of AES rounds. */ +#define AES_MAXNR 14 + +#define AES_BLOCK_SIZE 16 + +/* aes_key_st should be an opaque type, but EVP requires that the size be + * known. */ +struct aes_key_st { + uint32_t rd_key[4 * (AES_MAXNR + 1)]; + unsigned rounds; +}; +typedef struct aes_key_st AES_KEY; + +/* AES_set_encrypt_key configures |aeskey| to encrypt with the |bits|-bit key, + * |key|. + * + * WARNING: unlike other OpenSSL functions, this returns zero on success and a + * negative number on error. */ +OPENSSL_EXPORT int AES_set_encrypt_key(const uint8_t *key, unsigned bits, + AES_KEY *aeskey); + +/* AES_set_decrypt_key configures |aeskey| to decrypt with the |bits|-bit key, + * |key|. + * + * WARNING: unlike other OpenSSL functions, this returns zero on success and a + * negative number on error. */ +OPENSSL_EXPORT int AES_set_decrypt_key(const uint8_t *key, unsigned bits, + AES_KEY *aeskey); + +/* AES_encrypt encrypts a single block from |in| to |out| with |key|. The |in| + * and |out| pointers may overlap. */ +OPENSSL_EXPORT void AES_encrypt(const uint8_t *in, uint8_t *out, + const AES_KEY *key); + +/* AES_decrypt decrypts a single block from |in| to |out| with |key|. The |in| + * and |out| pointers may overlap. */ +OPENSSL_EXPORT void AES_decrypt(const uint8_t *in, uint8_t *out, + const AES_KEY *key); + + +/* Block cipher modes. */ + +/* AES_ctr128_encrypt encrypts (or decrypts, it's the same in CTR mode) |len| + * bytes from |in| to |out|. The |num| parameter must be set to zero on the + * first call and |ivec| will be incremented. */ +OPENSSL_EXPORT void AES_ctr128_encrypt(const uint8_t *in, uint8_t *out, + size_t len, const AES_KEY *key, + uint8_t ivec[AES_BLOCK_SIZE], + uint8_t ecount_buf[AES_BLOCK_SIZE], + unsigned int *num); + +/* AES_ecb_encrypt encrypts (or decrypts, if |enc| == |AES_DECRYPT|) a single, + * 16 byte block from |in| to |out|. */ +OPENSSL_EXPORT void AES_ecb_encrypt(const uint8_t *in, uint8_t *out, + const AES_KEY *key, const int enc); + +/* AES_cbc_encrypt encrypts (or decrypts, if |enc| == |AES_DECRYPT|) |len| + * bytes from |in| to |out|. The length must be a multiple of the block size. */ +OPENSSL_EXPORT void AES_cbc_encrypt(const uint8_t *in, uint8_t *out, size_t len, + const AES_KEY *key, uint8_t *ivec, + const int enc); + +/* AES_ofb128_encrypt encrypts (or decrypts, it's the same in OFB mode) |len| + * bytes from |in| to |out|. The |num| parameter must be set to zero on the + * first call. */ +OPENSSL_EXPORT void AES_ofb128_encrypt(const uint8_t *in, uint8_t *out, + size_t len, const AES_KEY *key, + uint8_t *ivec, int *num); + +/* AES_cfb128_encrypt encrypts (or decrypts, if |enc| == |AES_DECRYPT|) |len| + * bytes from |in| to |out|. The |num| parameter must be set to zero on the + * first call. */ +OPENSSL_EXPORT void AES_cfb128_encrypt(const uint8_t *in, uint8_t *out, + size_t len, const AES_KEY *key, + uint8_t *ivec, int *num, int enc); + + +/* Android compatibility section. + * + * These functions are declared, temporarily, for Android because + * wpa_supplicant will take a little time to sync with upstream. Outside of + * Android they'll have no definition. */ + +OPENSSL_EXPORT int AES_wrap_key(AES_KEY *key, const uint8_t *iv, uint8_t *out, + const uint8_t *in, unsigned in_len); +OPENSSL_EXPORT int AES_unwrap_key(AES_KEY *key, const uint8_t *iv, uint8_t *out, + const uint8_t *in, unsigned in_len); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_AES_H */ diff --git a/project/jni/boringssl/include/openssl/arm_arch.h b/project/jni/boringssl/include/openssl/arm_arch.h new file mode 100644 index 000000000..1471db90a --- /dev/null +++ b/project/jni/boringssl/include/openssl/arm_arch.h @@ -0,0 +1,127 @@ +/* ==================================================================== + * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_ARM_ARCH_H +#define OPENSSL_HEADER_ARM_ARCH_H + +#if !defined(__ARM_ARCH__) +# if defined(__CC_ARM) +# define __ARM_ARCH__ __TARGET_ARCH_ARM +# if defined(__BIG_ENDIAN) +# define __ARMEB__ +# else +# define __ARMEL__ +# endif +# elif defined(__GNUC__) +# if defined(__aarch64__) +# define __ARM_ARCH__ 8 +# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ +# define __ARMEB__ +# else +# define __ARMEL__ +# endif + /* Why doesn't gcc define __ARM_ARCH__? Instead it defines + * bunch of below macros. See all_architectires[] table in + * gcc/config/arm/arm.c. On a side note it defines + * __ARMEL__/__ARMEB__ for little-/big-endian. */ +# elif defined(__ARM_ARCH) +# define __ARM_ARCH__ __ARM_ARCH +# elif defined(__ARM_ARCH_8A__) +# define __ARM_ARCH__ 8 +# elif defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \ + defined(__ARM_ARCH_7R__)|| defined(__ARM_ARCH_7M__) || \ + defined(__ARM_ARCH_7EM__) +# define __ARM_ARCH__ 7 +# elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || \ + defined(__ARM_ARCH_6K__)|| defined(__ARM_ARCH_6M__) || \ + defined(__ARM_ARCH_6Z__)|| defined(__ARM_ARCH_6ZK__) || \ + defined(__ARM_ARCH_6T2__) +# define __ARM_ARCH__ 6 +# elif defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || \ + defined(__ARM_ARCH_5E__)|| defined(__ARM_ARCH_5TE__) || \ + defined(__ARM_ARCH_5TEJ__) +# define __ARM_ARCH__ 5 +# elif defined(__ARM_ARCH_4__) || defined(__ARM_ARCH_4T__) +# define __ARM_ARCH__ 4 +# else +# error "unsupported ARM architecture" +# endif +# endif +#endif + +/* Even when building for 32-bit ARM, support for aarch64 crypto instructions + * will be included. */ +#define __ARM_MAX_ARCH__ 8 + +/* ARMV7_NEON is true when a NEON unit is present in the current CPU. */ +#define ARMV7_NEON (1 << 0) + +/* ARMV7_NEON_FUNCTIONAL is true when the NEON unit doesn't contain subtle bugs. + * The Poly1305 NEON code is known to trigger bugs in the NEON units of some + * phones. If this bit isn't set then the Poly1305 NEON code won't be used. + * See https://code.google.com/p/chromium/issues/detail?id=341598. */ +#define ARMV7_NEON_FUNCTIONAL (1 << 10) + +/* ARMV8_AES indicates support for hardware AES instructions. */ +#define ARMV8_AES (1 << 2) + +/* ARMV8_SHA1 indicates support for hardware SHA-1 instructions. */ +#define ARMV8_SHA1 (1 << 3) + +/* ARMV8_SHA256 indicates support for hardware SHA-256 instructions. */ +#define ARMV8_SHA256 (1 << 4) + +/* ARMV8_PMULL indicates support for carryless multiplication. */ +#define ARMV8_PMULL (1 << 5) + + +#endif /* OPENSSL_HEADER_ARM_ARCH_H */ diff --git a/project/jni/boringssl/include/openssl/asn1.h b/project/jni/boringssl/include/openssl/asn1.h new file mode 100644 index 000000000..63bde181b --- /dev/null +++ b/project/jni/boringssl/include/openssl/asn1.h @@ -0,0 +1,1167 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#ifndef HEADER_ASN1_H +#define HEADER_ASN1_H + +#include + +#include + +#include +#include + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#define V_ASN1_UNIVERSAL 0x00 +#define V_ASN1_APPLICATION 0x40 +#define V_ASN1_CONTEXT_SPECIFIC 0x80 +#define V_ASN1_PRIVATE 0xc0 + +#define V_ASN1_CONSTRUCTED 0x20 +#define V_ASN1_PRIMITIVE_TAG 0x1f +#define V_ASN1_PRIMATIVE_TAG 0x1f + +#define V_ASN1_APP_CHOOSE -2 /* let the recipient choose */ +#define V_ASN1_OTHER -3 /* used in ASN1_TYPE */ +#define V_ASN1_ANY -4 /* used in ASN1 template code */ + +#define V_ASN1_NEG 0x100 /* negative flag */ + +#define V_ASN1_UNDEF -1 +#define V_ASN1_EOC 0 +#define V_ASN1_BOOLEAN 1 /**/ +#define V_ASN1_INTEGER 2 +#define V_ASN1_NEG_INTEGER (2 | V_ASN1_NEG) +#define V_ASN1_BIT_STRING 3 +#define V_ASN1_OCTET_STRING 4 +#define V_ASN1_NULL 5 +#define V_ASN1_OBJECT 6 +#define V_ASN1_OBJECT_DESCRIPTOR 7 +#define V_ASN1_EXTERNAL 8 +#define V_ASN1_REAL 9 +#define V_ASN1_ENUMERATED 10 +#define V_ASN1_NEG_ENUMERATED (10 | V_ASN1_NEG) +#define V_ASN1_UTF8STRING 12 +#define V_ASN1_SEQUENCE 16 +#define V_ASN1_SET 17 +#define V_ASN1_NUMERICSTRING 18 /**/ +#define V_ASN1_PRINTABLESTRING 19 +#define V_ASN1_T61STRING 20 +#define V_ASN1_TELETEXSTRING 20 /* alias */ +#define V_ASN1_VIDEOTEXSTRING 21 /**/ +#define V_ASN1_IA5STRING 22 +#define V_ASN1_UTCTIME 23 +#define V_ASN1_GENERALIZEDTIME 24 /**/ +#define V_ASN1_GRAPHICSTRING 25 /**/ +#define V_ASN1_ISO64STRING 26 /**/ +#define V_ASN1_VISIBLESTRING 26 /* alias */ +#define V_ASN1_GENERALSTRING 27 /**/ +#define V_ASN1_UNIVERSALSTRING 28 /**/ +#define V_ASN1_BMPSTRING 30 + +/* For use with d2i_ASN1_type_bytes() */ +#define B_ASN1_NUMERICSTRING 0x0001 +#define B_ASN1_PRINTABLESTRING 0x0002 +#define B_ASN1_T61STRING 0x0004 +#define B_ASN1_TELETEXSTRING 0x0004 +#define B_ASN1_VIDEOTEXSTRING 0x0008 +#define B_ASN1_IA5STRING 0x0010 +#define B_ASN1_GRAPHICSTRING 0x0020 +#define B_ASN1_ISO64STRING 0x0040 +#define B_ASN1_VISIBLESTRING 0x0040 +#define B_ASN1_GENERALSTRING 0x0080 +#define B_ASN1_UNIVERSALSTRING 0x0100 +#define B_ASN1_OCTET_STRING 0x0200 +#define B_ASN1_BIT_STRING 0x0400 +#define B_ASN1_BMPSTRING 0x0800 +#define B_ASN1_UNKNOWN 0x1000 +#define B_ASN1_UTF8STRING 0x2000 +#define B_ASN1_UTCTIME 0x4000 +#define B_ASN1_GENERALIZEDTIME 0x8000 +#define B_ASN1_SEQUENCE 0x10000 + +/* For use with ASN1_mbstring_copy() */ +#define MBSTRING_FLAG 0x1000 +#define MBSTRING_UTF8 (MBSTRING_FLAG) +#define MBSTRING_ASC (MBSTRING_FLAG|1) +#define MBSTRING_BMP (MBSTRING_FLAG|2) +#define MBSTRING_UNIV (MBSTRING_FLAG|4) + +#define SMIME_OLDMIME 0x400 +#define SMIME_CRLFEOL 0x800 +#define SMIME_STREAM 0x1000 + +#define DECLARE_ASN1_SET_OF(type) /* filled in by mkstack.pl */ +#define IMPLEMENT_ASN1_SET_OF(type) /* nothing, no longer needed */ + +/* We MUST make sure that, except for constness, asn1_ctx_st and + asn1_const_ctx are exactly the same. Fortunately, as soon as + the old ASN1 parsing macros are gone, we can throw this away + as well... */ +typedef struct asn1_ctx_st + { + unsigned char *p;/* work char pointer */ + int eos; /* end of sequence read for indefinite encoding */ + int error; /* error code to use when returning an error */ + int inf; /* constructed if 0x20, indefinite is 0x21 */ + int tag; /* tag from last 'get object' */ + int xclass; /* class from last 'get object' */ + long slen; /* length of last 'get object' */ + unsigned char *max; /* largest value of p allowed */ + unsigned char *q;/* temporary variable */ + unsigned char **pp;/* variable */ + int line; /* used in error processing */ + } ASN1_CTX; + +typedef struct asn1_const_ctx_st + { + const unsigned char *p;/* work char pointer */ + int eos; /* end of sequence read for indefinite encoding */ + int error; /* error code to use when returning an error */ + int inf; /* constructed if 0x20, indefinite is 0x21 */ + int tag; /* tag from last 'get object' */ + int xclass; /* class from last 'get object' */ + long slen; /* length of last 'get object' */ + const unsigned char *max; /* largest value of p allowed */ + const unsigned char *q;/* temporary variable */ + const unsigned char **pp;/* variable */ + int line; /* used in error processing */ + } ASN1_const_CTX; + +/* These are used internally in the ASN1_OBJECT to keep track of + * whether the names and data need to be free()ed */ +#define ASN1_OBJECT_FLAG_DYNAMIC 0x01 /* internal use */ +#define ASN1_OBJECT_FLAG_CRITICAL 0x02 /* critical x509v3 object id */ +#define ASN1_OBJECT_FLAG_DYNAMIC_STRINGS 0x04 /* internal use */ +#define ASN1_OBJECT_FLAG_DYNAMIC_DATA 0x08 /* internal use */ +struct asn1_object_st + { + const char *sn,*ln; + int nid; + int length; + const unsigned char *data; /* data remains const after init */ + int flags; /* Should we free this one */ + }; + +#define ASN1_STRING_FLAG_BITS_LEFT 0x08 /* Set if 0x07 has bits left value */ +/* This indicates that the ASN1_STRING is not a real value but just a place + * holder for the location where indefinite length constructed data should + * be inserted in the memory buffer + */ +#define ASN1_STRING_FLAG_NDEF 0x010 + +/* This flag is used by the CMS code to indicate that a string is not + * complete and is a place holder for content when it had all been + * accessed. The flag will be reset when content has been written to it. + */ + +#define ASN1_STRING_FLAG_CONT 0x020 +/* This flag is used by ASN1 code to indicate an ASN1_STRING is an MSTRING + * type. + */ +#define ASN1_STRING_FLAG_MSTRING 0x040 +/* This is the base type that holds just about everything :-) */ +struct asn1_string_st + { + int length; + int type; + unsigned char *data; + /* The value of the following field depends on the type being + * held. It is mostly being used for BIT_STRING so if the + * input data has a non-zero 'unused bits' value, it will be + * handled correctly */ + long flags; + }; + +/* ASN1_ENCODING structure: this is used to save the received + * encoding of an ASN1 type. This is useful to get round + * problems with invalid encodings which can break signatures. + */ + +typedef struct ASN1_ENCODING_st + { + unsigned char *enc; /* DER encoding */ + long len; /* Length of encoding */ + int modified; /* set to 1 if 'enc' is invalid */ + } ASN1_ENCODING; + +/* Used with ASN1 LONG type: if a long is set to this it is omitted */ +#define ASN1_LONG_UNDEF 0x7fffffffL + +#define STABLE_FLAGS_MALLOC 0x01 +#define STABLE_NO_MASK 0x02 +#define DIRSTRING_TYPE \ + (B_ASN1_PRINTABLESTRING|B_ASN1_T61STRING|B_ASN1_BMPSTRING|B_ASN1_UTF8STRING) +#define PKCS9STRING_TYPE (DIRSTRING_TYPE|B_ASN1_IA5STRING) + +typedef struct asn1_string_table_st { + int nid; + long minsize; + long maxsize; + unsigned long mask; + unsigned long flags; +} ASN1_STRING_TABLE; + +/* size limits: this stuff is taken straight from RFC2459 */ + +#define ub_name 32768 +#define ub_common_name 64 +#define ub_locality_name 128 +#define ub_state_name 128 +#define ub_organization_name 64 +#define ub_organization_unit_name 64 +#define ub_title 64 +#define ub_email_address 128 + +/* Declarations for template structures: for full definitions + * see asn1t.h + */ +typedef struct ASN1_TEMPLATE_st ASN1_TEMPLATE; +typedef struct ASN1_TLC_st ASN1_TLC; +/* This is just an opaque pointer */ +typedef struct ASN1_VALUE_st ASN1_VALUE; + +/* Declare ASN1 functions: the implement macro in in asn1t.h */ + +#define DECLARE_ASN1_FUNCTIONS(type) DECLARE_ASN1_FUNCTIONS_name(type, type) + +#define DECLARE_ASN1_ALLOC_FUNCTIONS(type) \ + DECLARE_ASN1_ALLOC_FUNCTIONS_name(type, type) + +#define DECLARE_ASN1_FUNCTIONS_name(type, name) \ + DECLARE_ASN1_ALLOC_FUNCTIONS_name(type, name) \ + DECLARE_ASN1_ENCODE_FUNCTIONS(type, name, name) + +#define DECLARE_ASN1_FUNCTIONS_fname(type, itname, name) \ + DECLARE_ASN1_ALLOC_FUNCTIONS_name(type, name) \ + DECLARE_ASN1_ENCODE_FUNCTIONS(type, itname, name) + +#define DECLARE_ASN1_ENCODE_FUNCTIONS(type, itname, name) \ + OPENSSL_EXPORT type *d2i_##name(type **a, const unsigned char **in, long len); \ + OPENSSL_EXPORT int i2d_##name(type *a, unsigned char **out); \ + DECLARE_ASN1_ITEM(itname) + +#define DECLARE_ASN1_ENCODE_FUNCTIONS_const(type, name) \ + OPENSSL_EXPORT type *d2i_##name(type **a, const unsigned char **in, long len); \ + OPENSSL_EXPORT int i2d_##name(const type *a, unsigned char **out); \ + DECLARE_ASN1_ITEM(name) + +#define DECLARE_ASN1_NDEF_FUNCTION(name) \ + OPENSSL_EXPORT int i2d_##name##_NDEF(name *a, unsigned char **out); + +#define DECLARE_ASN1_FUNCTIONS_const(name) \ + DECLARE_ASN1_ALLOC_FUNCTIONS(name) \ + DECLARE_ASN1_ENCODE_FUNCTIONS_const(name, name) + +#define DECLARE_ASN1_ALLOC_FUNCTIONS_name(type, name) \ + OPENSSL_EXPORT type *name##_new(void); \ + OPENSSL_EXPORT void name##_free(type *a); + +#define DECLARE_ASN1_PRINT_FUNCTION(stname) \ + DECLARE_ASN1_PRINT_FUNCTION_fname(stname, stname) + +#define DECLARE_ASN1_PRINT_FUNCTION_fname(stname, fname) \ + OPENSSL_EXPORT int fname##_print_ctx(BIO *out, stname *x, int indent, \ + const ASN1_PCTX *pctx); + +#define D2I_OF(type) type *(*)(type **,const unsigned char **,long) +#define I2D_OF(type) int (*)(type *,unsigned char **) +#define I2D_OF_const(type) int (*)(const type *,unsigned char **) + +#define CHECKED_D2I_OF(type, d2i) \ + ((d2i_of_void*) (1 ? d2i : ((D2I_OF(type))0))) +#define CHECKED_I2D_OF(type, i2d) \ + ((i2d_of_void*) (1 ? i2d : ((I2D_OF(type))0))) +#define CHECKED_NEW_OF(type, xnew) \ + ((void *(*)(void)) (1 ? xnew : ((type *(*)(void))0))) +#define CHECKED_PPTR_OF(type, p) \ + ((void**) (1 ? p : (type**)0)) + +#define TYPEDEF_D2I_OF(type) typedef type *d2i_of_##type(type **,const unsigned char **,long) +#define TYPEDEF_I2D_OF(type) typedef int i2d_of_##type(const type *,unsigned char **) +#define TYPEDEF_D2I2D_OF(type) TYPEDEF_D2I_OF(type); TYPEDEF_I2D_OF(type) + +TYPEDEF_D2I2D_OF(void); + +/* The following macros and typedefs allow an ASN1_ITEM + * to be embedded in a structure and referenced. Since + * the ASN1_ITEM pointers need to be globally accessible + * (possibly from shared libraries) they may exist in + * different forms. On platforms that support it the + * ASN1_ITEM structure itself will be globally exported. + * Other platforms will export a function that returns + * an ASN1_ITEM pointer. + * + * To handle both cases transparently the macros below + * should be used instead of hard coding an ASN1_ITEM + * pointer in a structure. + * + * The structure will look like this: + * + * typedef struct SOMETHING_st { + * ... + * ASN1_ITEM_EXP *iptr; + * ... + * } SOMETHING; + * + * It would be initialised as e.g.: + * + * SOMETHING somevar = {...,ASN1_ITEM_ref(X509),...}; + * + * and the actual pointer extracted with: + * + * const ASN1_ITEM *it = ASN1_ITEM_ptr(somevar.iptr); + * + * Finally an ASN1_ITEM pointer can be extracted from an + * appropriate reference with: ASN1_ITEM_rptr(X509). This + * would be used when a function takes an ASN1_ITEM * argument. + * + */ + +/* ASN1_ITEM pointer exported type */ +typedef const ASN1_ITEM ASN1_ITEM_EXP; + +/* Macro to obtain ASN1_ITEM pointer from exported type */ +#define ASN1_ITEM_ptr(iptr) (iptr) + +/* Macro to include ASN1_ITEM pointer from base type */ +#define ASN1_ITEM_ref(iptr) (&(iptr##_it)) + +#define ASN1_ITEM_rptr(ref) (&(ref##_it)) + +#define DECLARE_ASN1_ITEM(name) \ + extern OPENSSL_EXPORT const ASN1_ITEM name##_it; + +/* Parameters used by ASN1_STRING_print_ex() */ + +/* These determine which characters to escape: + * RFC2253 special characters, control characters and + * MSB set characters + */ + +#define ASN1_STRFLGS_ESC_2253 1 +#define ASN1_STRFLGS_ESC_CTRL 2 +#define ASN1_STRFLGS_ESC_MSB 4 + + +/* This flag determines how we do escaping: normally + * RC2253 backslash only, set this to use backslash and + * quote. + */ + +#define ASN1_STRFLGS_ESC_QUOTE 8 + + +/* These three flags are internal use only. */ + +/* Character is a valid PrintableString character */ +#define CHARTYPE_PRINTABLESTRING 0x10 +/* Character needs escaping if it is the first character */ +#define CHARTYPE_FIRST_ESC_2253 0x20 +/* Character needs escaping if it is the last character */ +#define CHARTYPE_LAST_ESC_2253 0x40 + +/* NB the internal flags are safely reused below by flags + * handled at the top level. + */ + +/* If this is set we convert all character strings + * to UTF8 first + */ + +#define ASN1_STRFLGS_UTF8_CONVERT 0x10 + +/* If this is set we don't attempt to interpret content: + * just assume all strings are 1 byte per character. This + * will produce some pretty odd looking output! + */ + +#define ASN1_STRFLGS_IGNORE_TYPE 0x20 + +/* If this is set we include the string type in the output */ +#define ASN1_STRFLGS_SHOW_TYPE 0x40 + +/* This determines which strings to display and which to + * 'dump' (hex dump of content octets or DER encoding). We can + * only dump non character strings or everything. If we + * don't dump 'unknown' they are interpreted as character + * strings with 1 octet per character and are subject to + * the usual escaping options. + */ + +#define ASN1_STRFLGS_DUMP_ALL 0x80 +#define ASN1_STRFLGS_DUMP_UNKNOWN 0x100 + +/* These determine what 'dumping' does, we can dump the + * content octets or the DER encoding: both use the + * RFC2253 #XXXXX notation. + */ + +#define ASN1_STRFLGS_DUMP_DER 0x200 + +/* All the string flags consistent with RFC2253, + * escaping control characters isn't essential in + * RFC2253 but it is advisable anyway. + */ + +#define ASN1_STRFLGS_RFC2253 (ASN1_STRFLGS_ESC_2253 | \ + ASN1_STRFLGS_ESC_CTRL | \ + ASN1_STRFLGS_ESC_MSB | \ + ASN1_STRFLGS_UTF8_CONVERT | \ + ASN1_STRFLGS_DUMP_UNKNOWN | \ + ASN1_STRFLGS_DUMP_DER) + +DECLARE_ASN1_SET_OF(ASN1_INTEGER) + +typedef struct asn1_type_st + { + int type; + union { + char *ptr; + ASN1_BOOLEAN boolean; + ASN1_STRING * asn1_string; + ASN1_OBJECT * object; + ASN1_INTEGER * integer; + ASN1_ENUMERATED * enumerated; + ASN1_BIT_STRING * bit_string; + ASN1_OCTET_STRING * octet_string; + ASN1_PRINTABLESTRING * printablestring; + ASN1_T61STRING * t61string; + ASN1_IA5STRING * ia5string; + ASN1_GENERALSTRING * generalstring; + ASN1_BMPSTRING * bmpstring; + ASN1_UNIVERSALSTRING * universalstring; + ASN1_UTCTIME * utctime; + ASN1_GENERALIZEDTIME * generalizedtime; + ASN1_VISIBLESTRING * visiblestring; + ASN1_UTF8STRING * utf8string; + /* set and sequence are left complete and still + * contain the set or sequence bytes */ + ASN1_STRING * set; + ASN1_STRING * sequence; + ASN1_VALUE * asn1_value; + } value; + } ASN1_TYPE; + +DECLARE_ASN1_SET_OF(ASN1_TYPE) + +typedef STACK_OF(ASN1_TYPE) ASN1_SEQUENCE_ANY; + +DECLARE_ASN1_ENCODE_FUNCTIONS_const(ASN1_SEQUENCE_ANY, ASN1_SEQUENCE_ANY) +DECLARE_ASN1_ENCODE_FUNCTIONS_const(ASN1_SEQUENCE_ANY, ASN1_SET_ANY) + +struct X509_algor_st + { + ASN1_OBJECT *algorithm; + ASN1_TYPE *parameter; + } /* X509_ALGOR */; + +DECLARE_ASN1_FUNCTIONS(X509_ALGOR) + +typedef struct NETSCAPE_X509_st + { + ASN1_OCTET_STRING *header; + X509 *cert; + } NETSCAPE_X509; + +/* This is used to contain a list of bit names */ +typedef struct BIT_STRING_BITNAME_st { + int bitnum; + const char *lname; + const char *sname; +} BIT_STRING_BITNAME; + + +#define M_ASN1_STRING_length(x) ((x)->length) +#define M_ASN1_STRING_length_set(x, n) ((x)->length = (n)) +#define M_ASN1_STRING_type(x) ((x)->type) +#define M_ASN1_STRING_data(x) ((x)->data) + +/* Macros for string operations */ +#define M_ASN1_BIT_STRING_new() (ASN1_BIT_STRING *)\ + ASN1_STRING_type_new(V_ASN1_BIT_STRING) +#define M_ASN1_BIT_STRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_BIT_STRING_dup(a) (ASN1_BIT_STRING *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) +#define M_ASN1_BIT_STRING_cmp(a,b) ASN1_STRING_cmp(\ + (const ASN1_STRING *)a,(const ASN1_STRING *)b) +#define M_ASN1_BIT_STRING_set(a,b,c) ASN1_STRING_set((ASN1_STRING *)a,b,c) + +#define M_ASN1_INTEGER_new() (ASN1_INTEGER *)\ + ASN1_STRING_type_new(V_ASN1_INTEGER) +#define M_ASN1_INTEGER_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_INTEGER_dup(a) (ASN1_INTEGER *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) +#define M_ASN1_INTEGER_cmp(a,b) ASN1_STRING_cmp(\ + (const ASN1_STRING *)a,(const ASN1_STRING *)b) + +#define M_ASN1_ENUMERATED_new() (ASN1_ENUMERATED *)\ + ASN1_STRING_type_new(V_ASN1_ENUMERATED) +#define M_ASN1_ENUMERATED_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_ENUMERATED_dup(a) (ASN1_ENUMERATED *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) +#define M_ASN1_ENUMERATED_cmp(a,b) ASN1_STRING_cmp(\ + (const ASN1_STRING *)a,(const ASN1_STRING *)b) + +#define M_ASN1_OCTET_STRING_new() (ASN1_OCTET_STRING *)\ + ASN1_STRING_type_new(V_ASN1_OCTET_STRING) +#define M_ASN1_OCTET_STRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_OCTET_STRING_dup(a) (ASN1_OCTET_STRING *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) +#define M_ASN1_OCTET_STRING_cmp(a,b) ASN1_STRING_cmp(\ + (const ASN1_STRING *)a,(const ASN1_STRING *)b) +#define M_ASN1_OCTET_STRING_set(a,b,c) ASN1_STRING_set((ASN1_STRING *)a,b,c) +#define M_ASN1_OCTET_STRING_print(a,b) ASN1_STRING_print(a,(ASN1_STRING *)b) +#define M_i2d_ASN1_OCTET_STRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_OCTET_STRING,\ + V_ASN1_UNIVERSAL) + +#define B_ASN1_TIME \ + B_ASN1_UTCTIME | \ + B_ASN1_GENERALIZEDTIME + +#define B_ASN1_PRINTABLE \ + B_ASN1_NUMERICSTRING| \ + B_ASN1_PRINTABLESTRING| \ + B_ASN1_T61STRING| \ + B_ASN1_IA5STRING| \ + B_ASN1_BIT_STRING| \ + B_ASN1_UNIVERSALSTRING|\ + B_ASN1_BMPSTRING|\ + B_ASN1_UTF8STRING|\ + B_ASN1_SEQUENCE|\ + B_ASN1_UNKNOWN + +#define B_ASN1_DIRECTORYSTRING \ + B_ASN1_PRINTABLESTRING| \ + B_ASN1_TELETEXSTRING|\ + B_ASN1_BMPSTRING|\ + B_ASN1_UNIVERSALSTRING|\ + B_ASN1_UTF8STRING + +#define B_ASN1_DISPLAYTEXT \ + B_ASN1_IA5STRING| \ + B_ASN1_VISIBLESTRING| \ + B_ASN1_BMPSTRING|\ + B_ASN1_UTF8STRING + +#define M_ASN1_PRINTABLE_new() ASN1_STRING_type_new(V_ASN1_T61STRING) +#define M_ASN1_PRINTABLE_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_PRINTABLE(a,pp) i2d_ASN1_bytes((ASN1_STRING *)a,\ + pp,a->type,V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_PRINTABLE(a,pp,l) \ + d2i_ASN1_type_bytes((ASN1_STRING **)a,pp,l, \ + B_ASN1_PRINTABLE) + +#define M_DIRECTORYSTRING_new() ASN1_STRING_type_new(V_ASN1_PRINTABLESTRING) +#define M_DIRECTORYSTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_DIRECTORYSTRING(a,pp) i2d_ASN1_bytes((ASN1_STRING *)a,\ + pp,a->type,V_ASN1_UNIVERSAL) +#define M_d2i_DIRECTORYSTRING(a,pp,l) \ + d2i_ASN1_type_bytes((ASN1_STRING **)a,pp,l, \ + B_ASN1_DIRECTORYSTRING) + +#define M_DISPLAYTEXT_new() ASN1_STRING_type_new(V_ASN1_VISIBLESTRING) +#define M_DISPLAYTEXT_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_DISPLAYTEXT(a,pp) i2d_ASN1_bytes((ASN1_STRING *)a,\ + pp,a->type,V_ASN1_UNIVERSAL) +#define M_d2i_DISPLAYTEXT(a,pp,l) \ + d2i_ASN1_type_bytes((ASN1_STRING **)a,pp,l, \ + B_ASN1_DISPLAYTEXT) + +#define M_ASN1_PRINTABLESTRING_new() (ASN1_PRINTABLESTRING *)\ + ASN1_STRING_type_new(V_ASN1_PRINTABLESTRING) +#define M_ASN1_PRINTABLESTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_PRINTABLESTRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_PRINTABLESTRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_PRINTABLESTRING(a,pp,l) \ + (ASN1_PRINTABLESTRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_PRINTABLESTRING) + +#define M_ASN1_T61STRING_new() (ASN1_T61STRING *)\ + ASN1_STRING_type_new(V_ASN1_T61STRING) +#define M_ASN1_T61STRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_T61STRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_T61STRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_T61STRING(a,pp,l) \ + (ASN1_T61STRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_T61STRING) + +#define M_ASN1_IA5STRING_new() (ASN1_IA5STRING *)\ + ASN1_STRING_type_new(V_ASN1_IA5STRING) +#define M_ASN1_IA5STRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_IA5STRING_dup(a) \ + (ASN1_IA5STRING *)ASN1_STRING_dup((const ASN1_STRING *)a) +#define M_i2d_ASN1_IA5STRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_IA5STRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_IA5STRING(a,pp,l) \ + (ASN1_IA5STRING *)d2i_ASN1_type_bytes((ASN1_STRING **)a,pp,l,\ + B_ASN1_IA5STRING) + +#define M_ASN1_UTCTIME_new() (ASN1_UTCTIME *)\ + ASN1_STRING_type_new(V_ASN1_UTCTIME) +#define M_ASN1_UTCTIME_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_UTCTIME_dup(a) (ASN1_UTCTIME *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) + +#define M_ASN1_GENERALIZEDTIME_new() (ASN1_GENERALIZEDTIME *)\ + ASN1_STRING_type_new(V_ASN1_GENERALIZEDTIME) +#define M_ASN1_GENERALIZEDTIME_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_GENERALIZEDTIME_dup(a) (ASN1_GENERALIZEDTIME *)ASN1_STRING_dup(\ + (const ASN1_STRING *)a) + +#define M_ASN1_TIME_new() (ASN1_TIME *)\ + ASN1_STRING_type_new(V_ASN1_UTCTIME) +#define M_ASN1_TIME_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_ASN1_TIME_dup(a) (ASN1_TIME *)\ + ASN1_STRING_dup((const ASN1_STRING *)a) + +#define M_ASN1_GENERALSTRING_new() (ASN1_GENERALSTRING *)\ + ASN1_STRING_type_new(V_ASN1_GENERALSTRING) +#define M_ASN1_GENERALSTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_GENERALSTRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_GENERALSTRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_GENERALSTRING(a,pp,l) \ + (ASN1_GENERALSTRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_GENERALSTRING) + +#define M_ASN1_UNIVERSALSTRING_new() (ASN1_UNIVERSALSTRING *)\ + ASN1_STRING_type_new(V_ASN1_UNIVERSALSTRING) +#define M_ASN1_UNIVERSALSTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_UNIVERSALSTRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_UNIVERSALSTRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_UNIVERSALSTRING(a,pp,l) \ + (ASN1_UNIVERSALSTRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_UNIVERSALSTRING) + +#define M_ASN1_BMPSTRING_new() (ASN1_BMPSTRING *)\ + ASN1_STRING_type_new(V_ASN1_BMPSTRING) +#define M_ASN1_BMPSTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_BMPSTRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_BMPSTRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_BMPSTRING(a,pp,l) \ + (ASN1_BMPSTRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_BMPSTRING) + +#define M_ASN1_VISIBLESTRING_new() (ASN1_VISIBLESTRING *)\ + ASN1_STRING_type_new(V_ASN1_VISIBLESTRING) +#define M_ASN1_VISIBLESTRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_VISIBLESTRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_VISIBLESTRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_VISIBLESTRING(a,pp,l) \ + (ASN1_VISIBLESTRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_VISIBLESTRING) + +#define M_ASN1_UTF8STRING_new() (ASN1_UTF8STRING *)\ + ASN1_STRING_type_new(V_ASN1_UTF8STRING) +#define M_ASN1_UTF8STRING_free(a) ASN1_STRING_free((ASN1_STRING *)a) +#define M_i2d_ASN1_UTF8STRING(a,pp) \ + i2d_ASN1_bytes((ASN1_STRING *)a,pp,V_ASN1_UTF8STRING,\ + V_ASN1_UNIVERSAL) +#define M_d2i_ASN1_UTF8STRING(a,pp,l) \ + (ASN1_UTF8STRING *)d2i_ASN1_type_bytes\ + ((ASN1_STRING **)a,pp,l,B_ASN1_UTF8STRING) + + /* for the is_set parameter to i2d_ASN1_SET */ +#define IS_SEQUENCE 0 +#define IS_SET 1 + +DECLARE_ASN1_FUNCTIONS_fname(ASN1_TYPE, ASN1_ANY, ASN1_TYPE) + +OPENSSL_EXPORT int ASN1_TYPE_get(ASN1_TYPE *a); +OPENSSL_EXPORT void ASN1_TYPE_set(ASN1_TYPE *a, int type, void *value); +OPENSSL_EXPORT int ASN1_TYPE_set1(ASN1_TYPE *a, int type, const void *value); +OPENSSL_EXPORT int ASN1_TYPE_cmp(const ASN1_TYPE *a, const ASN1_TYPE *b); + +OPENSSL_EXPORT ASN1_OBJECT * ASN1_OBJECT_new(void ); +OPENSSL_EXPORT void ASN1_OBJECT_free(ASN1_OBJECT *a); +OPENSSL_EXPORT int i2d_ASN1_OBJECT(ASN1_OBJECT *a,unsigned char **pp); +OPENSSL_EXPORT ASN1_OBJECT * c2i_ASN1_OBJECT(ASN1_OBJECT **a,const unsigned char **pp, + long length); +OPENSSL_EXPORT ASN1_OBJECT * d2i_ASN1_OBJECT(ASN1_OBJECT **a,const unsigned char **pp, + long length); + +DECLARE_ASN1_ITEM(ASN1_OBJECT) + +DECLARE_ASN1_SET_OF(ASN1_OBJECT) + +OPENSSL_EXPORT ASN1_STRING * ASN1_STRING_new(void); +OPENSSL_EXPORT void ASN1_STRING_free(ASN1_STRING *a); +OPENSSL_EXPORT int ASN1_STRING_copy(ASN1_STRING *dst, const ASN1_STRING *str); +OPENSSL_EXPORT ASN1_STRING * ASN1_STRING_dup(const ASN1_STRING *a); +OPENSSL_EXPORT ASN1_STRING * ASN1_STRING_type_new(int type ); +OPENSSL_EXPORT int ASN1_STRING_cmp(const ASN1_STRING *a, const ASN1_STRING *b); + /* Since this is used to store all sorts of things, via macros, for now, make + its data void * */ +OPENSSL_EXPORT int ASN1_STRING_set(ASN1_STRING *str, const void *data, int len); +OPENSSL_EXPORT void ASN1_STRING_set0(ASN1_STRING *str, void *data, int len); +OPENSSL_EXPORT int ASN1_STRING_length(const ASN1_STRING *x); +OPENSSL_EXPORT void ASN1_STRING_length_set(ASN1_STRING *x, int n); +OPENSSL_EXPORT int ASN1_STRING_type(ASN1_STRING *x); +OPENSSL_EXPORT unsigned char * ASN1_STRING_data(ASN1_STRING *x); + +DECLARE_ASN1_FUNCTIONS(ASN1_BIT_STRING) +OPENSSL_EXPORT int i2c_ASN1_BIT_STRING(ASN1_BIT_STRING *a,unsigned char **pp); +OPENSSL_EXPORT ASN1_BIT_STRING *c2i_ASN1_BIT_STRING(ASN1_BIT_STRING **a,const unsigned char **pp, long length); +OPENSSL_EXPORT int ASN1_BIT_STRING_set(ASN1_BIT_STRING *a, unsigned char *d, int length ); +OPENSSL_EXPORT int ASN1_BIT_STRING_set_bit(ASN1_BIT_STRING *a, int n, int value); +OPENSSL_EXPORT int ASN1_BIT_STRING_get_bit(ASN1_BIT_STRING *a, int n); +OPENSSL_EXPORT int ASN1_BIT_STRING_check(ASN1_BIT_STRING *a, unsigned char *flags, int flags_len); + +OPENSSL_EXPORT int ASN1_BIT_STRING_name_print(BIO *out, ASN1_BIT_STRING *bs, BIT_STRING_BITNAME *tbl, int indent); +OPENSSL_EXPORT int ASN1_BIT_STRING_num_asc(char *name, BIT_STRING_BITNAME *tbl); +OPENSSL_EXPORT int ASN1_BIT_STRING_set_asc(ASN1_BIT_STRING *bs, char *name, int value, BIT_STRING_BITNAME *tbl); + +OPENSSL_EXPORT int i2d_ASN1_BOOLEAN(int a,unsigned char **pp); +OPENSSL_EXPORT int d2i_ASN1_BOOLEAN(int *a,const unsigned char **pp,long length); + +DECLARE_ASN1_FUNCTIONS(ASN1_INTEGER) +OPENSSL_EXPORT int i2c_ASN1_INTEGER(ASN1_INTEGER *a,unsigned char **pp); +OPENSSL_EXPORT ASN1_INTEGER *c2i_ASN1_INTEGER(ASN1_INTEGER **a,const unsigned char **pp, long length); +OPENSSL_EXPORT ASN1_INTEGER *d2i_ASN1_UINTEGER(ASN1_INTEGER **a,const unsigned char **pp, long length); +OPENSSL_EXPORT ASN1_INTEGER * ASN1_INTEGER_dup(const ASN1_INTEGER *x); +OPENSSL_EXPORT int ASN1_INTEGER_cmp(const ASN1_INTEGER *x, const ASN1_INTEGER *y); + +DECLARE_ASN1_FUNCTIONS(ASN1_ENUMERATED) + +OPENSSL_EXPORT int ASN1_UTCTIME_check(const ASN1_UTCTIME *a); +OPENSSL_EXPORT ASN1_UTCTIME *ASN1_UTCTIME_set(ASN1_UTCTIME *s,time_t t); +OPENSSL_EXPORT ASN1_UTCTIME *ASN1_UTCTIME_adj(ASN1_UTCTIME *s, time_t t, int offset_day, long offset_sec); +OPENSSL_EXPORT int ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, const char *str); +OPENSSL_EXPORT int ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t); +#if 0 +time_t ASN1_UTCTIME_get(const ASN1_UTCTIME *s); +#endif + +OPENSSL_EXPORT int ASN1_GENERALIZEDTIME_check(const ASN1_GENERALIZEDTIME *a); +OPENSSL_EXPORT ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s,time_t t); +OPENSSL_EXPORT ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, time_t t, int offset_day, long offset_sec); +OPENSSL_EXPORT int ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str); +OPENSSL_EXPORT int ASN1_TIME_diff(int *pday, int *psec, const ASN1_TIME *from, const ASN1_TIME *to); + +DECLARE_ASN1_FUNCTIONS(ASN1_OCTET_STRING) +OPENSSL_EXPORT ASN1_OCTET_STRING * ASN1_OCTET_STRING_dup(const ASN1_OCTET_STRING *a); +OPENSSL_EXPORT int ASN1_OCTET_STRING_cmp(const ASN1_OCTET_STRING *a, const ASN1_OCTET_STRING *b); +OPENSSL_EXPORT int ASN1_OCTET_STRING_set(ASN1_OCTET_STRING *str, const unsigned char *data, int len); + +DECLARE_ASN1_FUNCTIONS(ASN1_VISIBLESTRING) +DECLARE_ASN1_FUNCTIONS(ASN1_UNIVERSALSTRING) +DECLARE_ASN1_FUNCTIONS(ASN1_UTF8STRING) +DECLARE_ASN1_FUNCTIONS(ASN1_NULL) +DECLARE_ASN1_FUNCTIONS(ASN1_BMPSTRING) + +OPENSSL_EXPORT int UTF8_getc(const unsigned char *str, int len, unsigned long *val); +OPENSSL_EXPORT int UTF8_putc(unsigned char *str, int len, unsigned long value); + +DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, ASN1_PRINTABLE) + +DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DIRECTORYSTRING) +DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DISPLAYTEXT) +DECLARE_ASN1_FUNCTIONS(ASN1_PRINTABLESTRING) +DECLARE_ASN1_FUNCTIONS(ASN1_T61STRING) +DECLARE_ASN1_FUNCTIONS(ASN1_IA5STRING) +DECLARE_ASN1_FUNCTIONS(ASN1_GENERALSTRING) +DECLARE_ASN1_FUNCTIONS(ASN1_UTCTIME) +DECLARE_ASN1_FUNCTIONS(ASN1_GENERALIZEDTIME) +DECLARE_ASN1_FUNCTIONS(ASN1_TIME) + +DECLARE_ASN1_ITEM(ASN1_OCTET_STRING_NDEF) + +OPENSSL_EXPORT ASN1_TIME *ASN1_TIME_set(ASN1_TIME *s,time_t t); +OPENSSL_EXPORT ASN1_TIME *ASN1_TIME_adj(ASN1_TIME *s,time_t t, int offset_day, long offset_sec); +OPENSSL_EXPORT int ASN1_TIME_check(ASN1_TIME *t); +OPENSSL_EXPORT ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(ASN1_TIME *t, ASN1_GENERALIZEDTIME **out); +OPENSSL_EXPORT int ASN1_TIME_set_string(ASN1_TIME *s, const char *str); + +OPENSSL_EXPORT int i2d_ASN1_SET(STACK_OF(OPENSSL_BLOCK) *a, unsigned char **pp, i2d_of_void *i2d, int ex_tag, int ex_class, int is_set); +OPENSSL_EXPORT STACK_OF(OPENSSL_BLOCK) *d2i_ASN1_SET(STACK_OF(OPENSSL_BLOCK) **a, + const unsigned char **pp, + long length, d2i_of_void *d2i, + void (*free_func)(OPENSSL_BLOCK), int ex_tag, + int ex_class); + +OPENSSL_EXPORT int i2a_ASN1_INTEGER(BIO *bp, ASN1_INTEGER *a); +OPENSSL_EXPORT int a2i_ASN1_INTEGER(BIO *bp,ASN1_INTEGER *bs,char *buf,int size); +OPENSSL_EXPORT int i2a_ASN1_ENUMERATED(BIO *bp, ASN1_ENUMERATED *a); +OPENSSL_EXPORT int a2i_ASN1_ENUMERATED(BIO *bp,ASN1_ENUMERATED *bs,char *buf,int size); +OPENSSL_EXPORT int i2a_ASN1_OBJECT(BIO *bp,ASN1_OBJECT *a); +OPENSSL_EXPORT int a2i_ASN1_STRING(BIO *bp,ASN1_STRING *bs,char *buf,int size); +OPENSSL_EXPORT int i2a_ASN1_STRING(BIO *bp, ASN1_STRING *a, int type); +OPENSSL_EXPORT int i2t_ASN1_OBJECT(char *buf,int buf_len,ASN1_OBJECT *a); + +OPENSSL_EXPORT int a2d_ASN1_OBJECT(unsigned char *out,int olen, const char *buf, int num); +OPENSSL_EXPORT ASN1_OBJECT *ASN1_OBJECT_create(int nid, unsigned char *data,int len, const char *sn, const char *ln); + +OPENSSL_EXPORT int ASN1_INTEGER_set(ASN1_INTEGER *a, long v); +OPENSSL_EXPORT long ASN1_INTEGER_get(const ASN1_INTEGER *a); +OPENSSL_EXPORT ASN1_INTEGER *BN_to_ASN1_INTEGER(const BIGNUM *bn, ASN1_INTEGER *ai); +OPENSSL_EXPORT BIGNUM *ASN1_INTEGER_to_BN(const ASN1_INTEGER *ai,BIGNUM *bn); + +OPENSSL_EXPORT int ASN1_ENUMERATED_set(ASN1_ENUMERATED *a, long v); +OPENSSL_EXPORT long ASN1_ENUMERATED_get(ASN1_ENUMERATED *a); +OPENSSL_EXPORT ASN1_ENUMERATED *BN_to_ASN1_ENUMERATED(BIGNUM *bn, ASN1_ENUMERATED *ai); +OPENSSL_EXPORT BIGNUM *ASN1_ENUMERATED_to_BN(ASN1_ENUMERATED *ai,BIGNUM *bn); + +/* General */ +/* given a string, return the correct type, max is the maximum length */ +OPENSSL_EXPORT int ASN1_PRINTABLE_type(const unsigned char *s, int max); + +OPENSSL_EXPORT int i2d_ASN1_bytes(ASN1_STRING *a, unsigned char **pp, int tag, int xclass); +OPENSSL_EXPORT ASN1_STRING *d2i_ASN1_bytes(ASN1_STRING **a, const unsigned char **pp, long length, int Ptag, int Pclass); +OPENSSL_EXPORT unsigned long ASN1_tag2bit(int tag); +/* type is one or more of the B_ASN1_ values. */ +OPENSSL_EXPORT ASN1_STRING *d2i_ASN1_type_bytes(ASN1_STRING **a,const unsigned char **pp, long length,int type); + +/* PARSING */ +OPENSSL_EXPORT int asn1_Finish(ASN1_CTX *c); +OPENSSL_EXPORT int asn1_const_Finish(ASN1_const_CTX *c); + +/* SPECIALS */ +OPENSSL_EXPORT int ASN1_get_object(const unsigned char **pp, long *plength, int *ptag, int *pclass, long omax); +OPENSSL_EXPORT int ASN1_check_infinite_end(unsigned char **p,long len); +OPENSSL_EXPORT int ASN1_const_check_infinite_end(const unsigned char **p,long len); +OPENSSL_EXPORT void ASN1_put_object(unsigned char **pp, int constructed, int length, int tag, int xclass); +OPENSSL_EXPORT int ASN1_put_eoc(unsigned char **pp); +OPENSSL_EXPORT int ASN1_object_size(int constructed, int length, int tag); + +/* Used to implement other functions */ +OPENSSL_EXPORT void *ASN1_dup(i2d_of_void *i2d, d2i_of_void *d2i, void *x); + +#define ASN1_dup_of(type,i2d,d2i,x) \ + ((type*)ASN1_dup(CHECKED_I2D_OF(type, i2d), \ + CHECKED_D2I_OF(type, d2i), \ + CHECKED_PTR_OF(type, x))) + +#define ASN1_dup_of_const(type,i2d,d2i,x) \ + ((type*)ASN1_dup(CHECKED_I2D_OF(const type, i2d), \ + CHECKED_D2I_OF(type, d2i), \ + CHECKED_PTR_OF(const type, x))) + +OPENSSL_EXPORT void *ASN1_item_dup(const ASN1_ITEM *it, void *x); + +/* ASN1 alloc/free macros for when a type is only used internally */ + +#define M_ASN1_new_of(type) (type *)ASN1_item_new(ASN1_ITEM_rptr(type)) +#define M_ASN1_free_of(x, type) \ + ASN1_item_free(CHECKED_PTR_OF(type, x), ASN1_ITEM_rptr(type)) + +#ifndef OPENSSL_NO_FP_API +OPENSSL_EXPORT void *ASN1_d2i_fp(void *(*xnew)(void), d2i_of_void *d2i, FILE *in, void **x); + +#define ASN1_d2i_fp_of(type,xnew,d2i,in,x) \ + ((type*)ASN1_d2i_fp(CHECKED_NEW_OF(type, xnew), \ + CHECKED_D2I_OF(type, d2i), \ + in, \ + CHECKED_PPTR_OF(type, x))) + +OPENSSL_EXPORT void *ASN1_item_d2i_fp(const ASN1_ITEM *it, FILE *in, void *x); +OPENSSL_EXPORT int ASN1_i2d_fp(i2d_of_void *i2d,FILE *out,void *x); + +#define ASN1_i2d_fp_of(type,i2d,out,x) \ + (ASN1_i2d_fp(CHECKED_I2D_OF(type, i2d), \ + out, \ + CHECKED_PTR_OF(type, x))) + +#define ASN1_i2d_fp_of_const(type,i2d,out,x) \ + (ASN1_i2d_fp(CHECKED_I2D_OF(const type, i2d), \ + out, \ + CHECKED_PTR_OF(const type, x))) + +OPENSSL_EXPORT int ASN1_item_i2d_fp(const ASN1_ITEM *it, FILE *out, void *x); +OPENSSL_EXPORT int ASN1_STRING_print_ex_fp(FILE *fp, ASN1_STRING *str, unsigned long flags); +#endif + +OPENSSL_EXPORT int ASN1_STRING_to_UTF8(unsigned char **out, ASN1_STRING *in); + +OPENSSL_EXPORT void *ASN1_d2i_bio(void *(*xnew)(void), d2i_of_void *d2i, BIO *in, void **x); + +#define ASN1_d2i_bio_of(type,xnew,d2i,in,x) \ + ((type*)ASN1_d2i_bio( CHECKED_NEW_OF(type, xnew), \ + CHECKED_D2I_OF(type, d2i), \ + in, \ + CHECKED_PPTR_OF(type, x))) + +OPENSSL_EXPORT void *ASN1_item_d2i_bio(const ASN1_ITEM *it, BIO *in, void *x); +OPENSSL_EXPORT int ASN1_i2d_bio(i2d_of_void *i2d,BIO *out, void *x); + +#define ASN1_i2d_bio_of(type,i2d,out,x) \ + (ASN1_i2d_bio(CHECKED_I2D_OF(type, i2d), \ + out, \ + CHECKED_PTR_OF(type, x))) + +#define ASN1_i2d_bio_of_const(type,i2d,out,x) \ + (ASN1_i2d_bio(CHECKED_I2D_OF(const type, i2d), \ + out, \ + CHECKED_PTR_OF(const type, x))) + +OPENSSL_EXPORT int ASN1_item_i2d_bio(const ASN1_ITEM *it, BIO *out, void *x); +OPENSSL_EXPORT int ASN1_UTCTIME_print(BIO *fp, const ASN1_UTCTIME *a); +OPENSSL_EXPORT int ASN1_GENERALIZEDTIME_print(BIO *fp, const ASN1_GENERALIZEDTIME *a); +OPENSSL_EXPORT int ASN1_TIME_print(BIO *fp, const ASN1_TIME *a); +OPENSSL_EXPORT int ASN1_STRING_print(BIO *bp, const ASN1_STRING *v); +OPENSSL_EXPORT int ASN1_STRING_print_ex(BIO *out, ASN1_STRING *str, unsigned long flags); +OPENSSL_EXPORT int ASN1_bn_print(BIO *bp, const char *number, const BIGNUM *num, unsigned char *buf, int off); +OPENSSL_EXPORT int ASN1_parse(BIO *bp,const unsigned char *pp,long len,int indent); +OPENSSL_EXPORT int ASN1_parse_dump(BIO *bp,const unsigned char *pp,long len,int indent,int dump); +OPENSSL_EXPORT const char *ASN1_tag2str(int tag); + +/* Used to load and write netscape format cert */ + +DECLARE_ASN1_FUNCTIONS(NETSCAPE_X509) + +int ASN1_UNIVERSALSTRING_to_string(ASN1_UNIVERSALSTRING *s); + +OPENSSL_EXPORT STACK_OF(OPENSSL_BLOCK) *ASN1_seq_unpack(const unsigned char *buf, int len, d2i_of_void *d2i, void (*free_func)(OPENSSL_BLOCK)); +OPENSSL_EXPORT unsigned char *ASN1_seq_pack(STACK_OF(OPENSSL_BLOCK) *safes, i2d_of_void *i2d, unsigned char **buf, int *len ); +OPENSSL_EXPORT void *ASN1_unpack_string(ASN1_STRING *oct, d2i_of_void *d2i); +OPENSSL_EXPORT void *ASN1_item_unpack(ASN1_STRING *oct, const ASN1_ITEM *it); +OPENSSL_EXPORT ASN1_STRING *ASN1_pack_string(void *obj, i2d_of_void *i2d, ASN1_OCTET_STRING **oct); + +#define ASN1_pack_string_of(type,obj,i2d,oct) \ + (ASN1_pack_string(CHECKED_PTR_OF(type, obj), \ + CHECKED_I2D_OF(type, i2d), \ + oct)) + +OPENSSL_EXPORT ASN1_STRING *ASN1_item_pack(void *obj, const ASN1_ITEM *it, ASN1_OCTET_STRING **oct); + +OPENSSL_EXPORT void ASN1_STRING_set_default_mask(unsigned long mask); +OPENSSL_EXPORT int ASN1_STRING_set_default_mask_asc(const char *p); +OPENSSL_EXPORT unsigned long ASN1_STRING_get_default_mask(void); +OPENSSL_EXPORT int ASN1_mbstring_copy(ASN1_STRING **out, const unsigned char *in, int len, int inform, unsigned long mask); +OPENSSL_EXPORT int ASN1_mbstring_ncopy(ASN1_STRING **out, const unsigned char *in, int len, int inform, unsigned long mask, long minsize, long maxsize); + +OPENSSL_EXPORT ASN1_STRING *ASN1_STRING_set_by_NID(ASN1_STRING **out, const unsigned char *in, int inlen, int inform, int nid); +OPENSSL_EXPORT ASN1_STRING_TABLE *ASN1_STRING_TABLE_get(int nid); +OPENSSL_EXPORT int ASN1_STRING_TABLE_add(int, long, long, unsigned long, unsigned long); +OPENSSL_EXPORT void ASN1_STRING_TABLE_cleanup(void); + +/* ASN1 template functions */ + +/* Old API compatible functions */ +OPENSSL_EXPORT ASN1_VALUE *ASN1_item_new(const ASN1_ITEM *it); +OPENSSL_EXPORT void ASN1_item_free(ASN1_VALUE *val, const ASN1_ITEM *it); +OPENSSL_EXPORT ASN1_VALUE * ASN1_item_d2i(ASN1_VALUE **val, const unsigned char **in, long len, const ASN1_ITEM *it); +OPENSSL_EXPORT int ASN1_item_i2d(ASN1_VALUE *val, unsigned char **out, const ASN1_ITEM *it); +OPENSSL_EXPORT int ASN1_item_ndef_i2d(ASN1_VALUE *val, unsigned char **out, const ASN1_ITEM *it); + +OPENSSL_EXPORT void ASN1_add_oid_module(void); + +OPENSSL_EXPORT ASN1_TYPE *ASN1_generate_nconf(char *str, CONF *nconf); +OPENSSL_EXPORT ASN1_TYPE *ASN1_generate_v3(char *str, X509V3_CTX *cnf); + +/* ASN1 Print flags */ + +/* Indicate missing OPTIONAL fields */ +#define ASN1_PCTX_FLAGS_SHOW_ABSENT 0x001 +/* Mark start and end of SEQUENCE */ +#define ASN1_PCTX_FLAGS_SHOW_SEQUENCE 0x002 +/* Mark start and end of SEQUENCE/SET OF */ +#define ASN1_PCTX_FLAGS_SHOW_SSOF 0x004 +/* Show the ASN1 type of primitives */ +#define ASN1_PCTX_FLAGS_SHOW_TYPE 0x008 +/* Don't show ASN1 type of ANY */ +#define ASN1_PCTX_FLAGS_NO_ANY_TYPE 0x010 +/* Don't show ASN1 type of MSTRINGs */ +#define ASN1_PCTX_FLAGS_NO_MSTRING_TYPE 0x020 +/* Don't show field names in SEQUENCE */ +#define ASN1_PCTX_FLAGS_NO_FIELD_NAME 0x040 +/* Show structure names of each SEQUENCE field */ +#define ASN1_PCTX_FLAGS_SHOW_FIELD_STRUCT_NAME 0x080 +/* Don't show structure name even at top level */ +#define ASN1_PCTX_FLAGS_NO_STRUCT_NAME 0x100 + +OPENSSL_EXPORT int ASN1_item_print(BIO *out, ASN1_VALUE *ifld, int indent, const ASN1_ITEM *it, const ASN1_PCTX *pctx); +OPENSSL_EXPORT ASN1_PCTX *ASN1_PCTX_new(void); +OPENSSL_EXPORT void ASN1_PCTX_free(ASN1_PCTX *p); +OPENSSL_EXPORT unsigned long ASN1_PCTX_get_flags(ASN1_PCTX *p); +OPENSSL_EXPORT void ASN1_PCTX_set_flags(ASN1_PCTX *p, unsigned long flags); +OPENSSL_EXPORT unsigned long ASN1_PCTX_get_nm_flags(ASN1_PCTX *p); +OPENSSL_EXPORT void ASN1_PCTX_set_nm_flags(ASN1_PCTX *p, unsigned long flags); +OPENSSL_EXPORT unsigned long ASN1_PCTX_get_cert_flags(ASN1_PCTX *p); +OPENSSL_EXPORT void ASN1_PCTX_set_cert_flags(ASN1_PCTX *p, unsigned long flags); +OPENSSL_EXPORT unsigned long ASN1_PCTX_get_oid_flags(ASN1_PCTX *p); +OPENSSL_EXPORT void ASN1_PCTX_set_oid_flags(ASN1_PCTX *p, unsigned long flags); +OPENSSL_EXPORT unsigned long ASN1_PCTX_get_str_flags(ASN1_PCTX *p); +OPENSSL_EXPORT void ASN1_PCTX_set_str_flags(ASN1_PCTX *p, unsigned long flags); + +OPENSSL_EXPORT const BIO_METHOD *BIO_f_asn1(void); + +OPENSSL_EXPORT BIO *BIO_new_NDEF(BIO *out, ASN1_VALUE *val, const ASN1_ITEM *it); + +OPENSSL_EXPORT int i2d_ASN1_bio_stream(BIO *out, ASN1_VALUE *val, BIO *in, int flags, const ASN1_ITEM *it); +OPENSSL_EXPORT int PEM_write_bio_ASN1_stream(BIO *out, ASN1_VALUE *val, BIO *in, int flags, const char *hdr, const ASN1_ITEM *it); +OPENSSL_EXPORT ASN1_VALUE *SMIME_read_ASN1(BIO *bio, BIO **bcont, const ASN1_ITEM *it); +OPENSSL_EXPORT int SMIME_crlf_copy(BIO *in, BIO *out, int flags); +OPENSSL_EXPORT int SMIME_text(BIO *in, BIO *out); + +/* BEGIN ERROR CODES */ +/* The following lines are auto generated by the script mkerr.pl. Any changes + * made after this point may be overwritten when the script is next run. + */ +void ERR_load_ASN1_strings(void); + +typedef int asn1_ps_func(BIO *b, unsigned char **pbuf, int *plen, void *parg); +OPENSSL_EXPORT int BIO_asn1_set_prefix(BIO *b, asn1_ps_func *prefix, asn1_ps_func *prefix_free); +OPENSSL_EXPORT int BIO_asn1_get_prefix(BIO *b, asn1_ps_func **pprefix, asn1_ps_func **pprefix_free); +OPENSSL_EXPORT int BIO_asn1_set_suffix(BIO *b, asn1_ps_func *suffix, asn1_ps_func *suffix_free); +OPENSSL_EXPORT int BIO_asn1_get_suffix(BIO *b, asn1_ps_func **psuffix, asn1_ps_func **psuffix_free); + +#ifdef __cplusplus +} +#endif + +#define ASN1_R_ASN1_LENGTH_MISMATCH 100 +#define ASN1_R_AUX_ERROR 101 +#define ASN1_R_BAD_GET_ASN1_OBJECT_CALL 102 +#define ASN1_R_BAD_OBJECT_HEADER 103 +#define ASN1_R_BMPSTRING_IS_WRONG_LENGTH 104 +#define ASN1_R_BN_LIB 105 +#define ASN1_R_BOOLEAN_IS_WRONG_LENGTH 106 +#define ASN1_R_BUFFER_TOO_SMALL 107 +#define ASN1_R_DECODE_ERROR 108 +#define ASN1_R_DEPTH_EXCEEDED 109 +#define ASN1_R_ENCODE_ERROR 110 +#define ASN1_R_ERROR_GETTING_TIME 111 +#define ASN1_R_EXPECTING_AN_ASN1_SEQUENCE 112 +#define ASN1_R_EXPECTING_AN_INTEGER 113 +#define ASN1_R_EXPECTING_AN_OBJECT 114 +#define ASN1_R_EXPECTING_A_BOOLEAN 115 +#define ASN1_R_EXPECTING_A_TIME 116 +#define ASN1_R_EXPLICIT_LENGTH_MISMATCH 117 +#define ASN1_R_EXPLICIT_TAG_NOT_CONSTRUCTED 118 +#define ASN1_R_FIELD_MISSING 119 +#define ASN1_R_FIRST_NUM_TOO_LARGE 120 +#define ASN1_R_HEADER_TOO_LONG 121 +#define ASN1_R_ILLEGAL_BITSTRING_FORMAT 122 +#define ASN1_R_ILLEGAL_BOOLEAN 123 +#define ASN1_R_ILLEGAL_CHARACTERS 124 +#define ASN1_R_ILLEGAL_FORMAT 125 +#define ASN1_R_ILLEGAL_HEX 126 +#define ASN1_R_ILLEGAL_IMPLICIT_TAG 127 +#define ASN1_R_ILLEGAL_INTEGER 128 +#define ASN1_R_ILLEGAL_NESTED_TAGGING 129 +#define ASN1_R_ILLEGAL_NULL 130 +#define ASN1_R_ILLEGAL_NULL_VALUE 131 +#define ASN1_R_ILLEGAL_OBJECT 132 +#define ASN1_R_ILLEGAL_OPTIONAL_ANY 133 +#define ASN1_R_ILLEGAL_OPTIONS_ON_ITEM_TEMPLATE 134 +#define ASN1_R_ILLEGAL_TAGGED_ANY 135 +#define ASN1_R_ILLEGAL_TIME_VALUE 136 +#define ASN1_R_INTEGER_NOT_ASCII_FORMAT 137 +#define ASN1_R_INTEGER_TOO_LARGE_FOR_LONG 138 +#define ASN1_R_INVALID_BIT_STRING_BITS_LEFT 139 +#define ASN1_R_INVALID_BMPSTRING_LENGTH 140 +#define ASN1_R_INVALID_DIGIT 141 +#define ASN1_R_INVALID_MODIFIER 142 +#define ASN1_R_INVALID_NUMBER 143 +#define ASN1_R_INVALID_OBJECT_ENCODING 144 +#define ASN1_R_INVALID_SEPARATOR 145 +#define ASN1_R_INVALID_TIME_FORMAT 146 +#define ASN1_R_INVALID_UNIVERSALSTRING_LENGTH 147 +#define ASN1_R_INVALID_UTF8STRING 148 +#define ASN1_R_LIST_ERROR 149 +#define ASN1_R_MISSING_ASN1_EOS 150 +#define ASN1_R_MISSING_EOC 151 +#define ASN1_R_MISSING_SECOND_NUMBER 152 +#define ASN1_R_MISSING_VALUE 153 +#define ASN1_R_MSTRING_NOT_UNIVERSAL 154 +#define ASN1_R_MSTRING_WRONG_TAG 155 +#define ASN1_R_NESTED_ASN1_ERROR 156 +#define ASN1_R_NESTED_ASN1_STRING 157 +#define ASN1_R_NON_HEX_CHARACTERS 158 +#define ASN1_R_NOT_ASCII_FORMAT 159 +#define ASN1_R_NOT_ENOUGH_DATA 160 +#define ASN1_R_NO_MATCHING_CHOICE_TYPE 161 +#define ASN1_R_NULL_IS_WRONG_LENGTH 162 +#define ASN1_R_OBJECT_NOT_ASCII_FORMAT 163 +#define ASN1_R_ODD_NUMBER_OF_CHARS 164 +#define ASN1_R_SECOND_NUMBER_TOO_LARGE 165 +#define ASN1_R_SEQUENCE_LENGTH_MISMATCH 166 +#define ASN1_R_SEQUENCE_NOT_CONSTRUCTED 167 +#define ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG 168 +#define ASN1_R_SHORT_LINE 169 +#define ASN1_R_STREAMING_NOT_SUPPORTED 170 +#define ASN1_R_STRING_TOO_LONG 171 +#define ASN1_R_STRING_TOO_SHORT 172 +#define ASN1_R_TAG_VALUE_TOO_HIGH 173 +#define ASN1_R_TIME_NOT_ASCII_FORMAT 174 +#define ASN1_R_TOO_LONG 175 +#define ASN1_R_TYPE_NOT_CONSTRUCTED 176 +#define ASN1_R_TYPE_NOT_PRIMITIVE 177 +#define ASN1_R_UNEXPECTED_EOC 178 +#define ASN1_R_UNIVERSALSTRING_IS_WRONG_LENGTH 179 +#define ASN1_R_UNKNOWN_FORMAT 180 +#define ASN1_R_UNKNOWN_TAG 181 +#define ASN1_R_UNSUPPORTED_ANY_DEFINED_BY_TYPE 182 +#define ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE 183 +#define ASN1_R_UNSUPPORTED_TYPE 184 +#define ASN1_R_WRONG_TAG 185 +#define ASN1_R_WRONG_TYPE 186 + +#endif diff --git a/project/jni/boringssl/include/openssl/asn1_mac.h b/project/jni/boringssl/include/openssl/asn1_mac.h new file mode 100644 index 000000000..f319beec0 --- /dev/null +++ b/project/jni/boringssl/include/openssl/asn1_mac.h @@ -0,0 +1,75 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#ifndef HEADER_ASN1_MAC_H +#define HEADER_ASN1_MAC_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +OPENSSL_EXPORT int asn1_GetSequence(ASN1_const_CTX *c, long *length); + + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/project/jni/boringssl/include/openssl/asn1t.h b/project/jni/boringssl/include/openssl/asn1t.h new file mode 100644 index 000000000..b43c33281 --- /dev/null +++ b/project/jni/boringssl/include/openssl/asn1t.h @@ -0,0 +1,906 @@ +/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + * project 2000. + */ +/* ==================================================================== + * Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +#ifndef HEADER_ASN1T_H +#define HEADER_ASN1T_H + +#include +#include + +#ifdef OPENSSL_BUILD_SHLIBCRYPTO +# undef OPENSSL_EXTERN +# define OPENSSL_EXTERN OPENSSL_EXPORT +#endif + +/* ASN1 template defines, structures and functions */ + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Macro to obtain ASN1_ADB pointer from a type (only used internally) */ +#define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)(iptr)) + + +/* Macros for start and end of ASN1_ITEM definition */ + +#define ASN1_ITEM_start(itname) \ + const ASN1_ITEM itname##_it = { + +#define ASN1_ITEM_end(itname) \ + }; + +/* Macros to aid ASN1 template writing */ + +#define ASN1_ITEM_TEMPLATE(tname) \ + static const ASN1_TEMPLATE tname##_item_tt + +#define ASN1_ITEM_TEMPLATE_END(tname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_PRIMITIVE,\ + -1,\ + &tname##_item_tt,\ + 0,\ + NULL,\ + 0,\ + #tname \ + ASN1_ITEM_end(tname) + + +/* This is a ASN1 type which just embeds a template */ + +/* This pair helps declare a SEQUENCE. We can do: + * + * ASN1_SEQUENCE(stname) = { + * ... SEQUENCE components ... + * } ASN1_SEQUENCE_END(stname) + * + * This will produce an ASN1_ITEM called stname_it + * for a structure called stname. + * + * If you want the same structure but a different + * name then use: + * + * ASN1_SEQUENCE(itname) = { + * ... SEQUENCE components ... + * } ASN1_SEQUENCE_END_name(stname, itname) + * + * This will create an item called itname_it using + * a structure called stname. + */ + +#define ASN1_SEQUENCE(tname) \ + static const ASN1_TEMPLATE tname##_seq_tt[] + +#define ASN1_SEQUENCE_END(stname) ASN1_SEQUENCE_END_name(stname, stname) + +#define ASN1_SEQUENCE_END_name(stname, tname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_SEQUENCE,\ + V_ASN1_SEQUENCE,\ + tname##_seq_tt,\ + sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ + NULL,\ + sizeof(stname),\ + #stname \ + ASN1_ITEM_end(tname) + +#define ASN1_NDEF_SEQUENCE(tname) \ + ASN1_SEQUENCE(tname) + +#define ASN1_NDEF_SEQUENCE_cb(tname, cb) \ + ASN1_SEQUENCE_cb(tname, cb) + +#define ASN1_SEQUENCE_cb(tname, cb) \ + static const ASN1_AUX tname##_aux = {NULL, 0, 0, cb, 0}; \ + ASN1_SEQUENCE(tname) + +#define ASN1_BROKEN_SEQUENCE(tname) \ + static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_BROKEN, 0, 0, 0}; \ + ASN1_SEQUENCE(tname) + +#define ASN1_SEQUENCE_ref(tname, cb) \ + static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_REFCOUNT, offsetof(tname, references), cb, 0}; \ + ASN1_SEQUENCE(tname) + +#define ASN1_SEQUENCE_enc(tname, enc, cb) \ + static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_ENCODING, 0, cb, offsetof(tname, enc)}; \ + ASN1_SEQUENCE(tname) + +#define ASN1_NDEF_SEQUENCE_END(tname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_NDEF_SEQUENCE,\ + V_ASN1_SEQUENCE,\ + tname##_seq_tt,\ + sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ + NULL,\ + sizeof(tname),\ + #tname \ + ASN1_ITEM_end(tname) + +#define ASN1_BROKEN_SEQUENCE_END(stname) ASN1_SEQUENCE_END_ref(stname, stname) + +#define ASN1_SEQUENCE_END_enc(stname, tname) ASN1_SEQUENCE_END_ref(stname, tname) + +#define ASN1_SEQUENCE_END_cb(stname, tname) ASN1_SEQUENCE_END_ref(stname, tname) + +#define ASN1_SEQUENCE_END_ref(stname, tname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_SEQUENCE,\ + V_ASN1_SEQUENCE,\ + tname##_seq_tt,\ + sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ + &tname##_aux,\ + sizeof(stname),\ + #stname \ + ASN1_ITEM_end(tname) + +#define ASN1_NDEF_SEQUENCE_END_cb(stname, tname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_NDEF_SEQUENCE,\ + V_ASN1_SEQUENCE,\ + tname##_seq_tt,\ + sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ + &tname##_aux,\ + sizeof(stname),\ + #stname \ + ASN1_ITEM_end(tname) + + +/* This pair helps declare a CHOICE type. We can do: + * + * ASN1_CHOICE(chname) = { + * ... CHOICE options ... + * ASN1_CHOICE_END(chname) + * + * This will produce an ASN1_ITEM called chname_it + * for a structure called chname. The structure + * definition must look like this: + * typedef struct { + * int type; + * union { + * ASN1_SOMETHING *opt1; + * ASN1_SOMEOTHER *opt2; + * } value; + * } chname; + * + * the name of the selector must be 'type'. + * to use an alternative selector name use the + * ASN1_CHOICE_END_selector() version. + */ + +#define ASN1_CHOICE(tname) \ + static const ASN1_TEMPLATE tname##_ch_tt[] + +#define ASN1_CHOICE_cb(tname, cb) \ + static const ASN1_AUX tname##_aux = {NULL, 0, 0, cb, 0}; \ + ASN1_CHOICE(tname) + +#define ASN1_CHOICE_END(stname) ASN1_CHOICE_END_name(stname, stname) + +#define ASN1_CHOICE_END_name(stname, tname) ASN1_CHOICE_END_selector(stname, tname, type) + +#define ASN1_CHOICE_END_selector(stname, tname, selname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_CHOICE,\ + offsetof(stname,selname) ,\ + tname##_ch_tt,\ + sizeof(tname##_ch_tt) / sizeof(ASN1_TEMPLATE),\ + NULL,\ + sizeof(stname),\ + #stname \ + ASN1_ITEM_end(tname) + +#define ASN1_CHOICE_END_cb(stname, tname, selname) \ + ;\ + ASN1_ITEM_start(tname) \ + ASN1_ITYPE_CHOICE,\ + offsetof(stname,selname) ,\ + tname##_ch_tt,\ + sizeof(tname##_ch_tt) / sizeof(ASN1_TEMPLATE),\ + &tname##_aux,\ + sizeof(stname),\ + #stname \ + ASN1_ITEM_end(tname) + +/* This helps with the template wrapper form of ASN1_ITEM */ + +#define ASN1_EX_TEMPLATE_TYPE(flags, tag, name, type) { \ + (flags), (tag), 0,\ + #name, ASN1_ITEM_ref(type) } + +/* These help with SEQUENCE or CHOICE components */ + +/* used to declare other types */ + +#define ASN1_EX_TYPE(flags, tag, stname, field, type) { \ + (flags), (tag), offsetof(stname, field),\ + #field, ASN1_ITEM_ref(type) } + +/* used when the structure is combined with the parent */ + +#define ASN1_EX_COMBINE(flags, tag, type) { \ + (flags)|ASN1_TFLG_COMBINE, (tag), 0, NULL, ASN1_ITEM_ref(type) } + +/* implicit and explicit helper macros */ + +#define ASN1_IMP_EX(stname, field, type, tag, ex) \ + ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | ex, tag, stname, field, type) + +#define ASN1_EXP_EX(stname, field, type, tag, ex) \ + ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | ex, tag, stname, field, type) + +/* Any defined by macros: the field used is in the table itself */ + +#define ASN1_ADB_OBJECT(tblname) { ASN1_TFLG_ADB_OID, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } +#define ASN1_ADB_INTEGER(tblname) { ASN1_TFLG_ADB_INT, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } +/* Plain simple type */ +#define ASN1_SIMPLE(stname, field, type) ASN1_EX_TYPE(0,0, stname, field, type) + +/* OPTIONAL simple type */ +#define ASN1_OPT(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL, 0, stname, field, type) + +/* IMPLICIT tagged simple type */ +#define ASN1_IMP(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, 0) + +/* IMPLICIT tagged OPTIONAL simple type */ +#define ASN1_IMP_OPT(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) + +/* Same as above but EXPLICIT */ + +#define ASN1_EXP(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, 0) +#define ASN1_EXP_OPT(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) + +/* SEQUENCE OF type */ +#define ASN1_SEQUENCE_OF(stname, field, type) \ + ASN1_EX_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, stname, field, type) + +/* OPTIONAL SEQUENCE OF */ +#define ASN1_SEQUENCE_OF_OPT(stname, field, type) \ + ASN1_EX_TYPE(ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL, 0, stname, field, type) + +/* Same as above but for SET OF */ + +#define ASN1_SET_OF(stname, field, type) \ + ASN1_EX_TYPE(ASN1_TFLG_SET_OF, 0, stname, field, type) + +#define ASN1_SET_OF_OPT(stname, field, type) \ + ASN1_EX_TYPE(ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL, 0, stname, field, type) + +/* Finally compound types of SEQUENCE, SET, IMPLICIT, EXPLICIT and OPTIONAL */ + +#define ASN1_IMP_SET_OF(stname, field, type, tag) \ + ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF) + +#define ASN1_EXP_SET_OF(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF) + +#define ASN1_IMP_SET_OF_OPT(stname, field, type, tag) \ + ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL) + +#define ASN1_EXP_SET_OF_OPT(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL) + +#define ASN1_IMP_SEQUENCE_OF(stname, field, type, tag) \ + ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF) + +#define ASN1_IMP_SEQUENCE_OF_OPT(stname, field, type, tag) \ + ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL) + +#define ASN1_EXP_SEQUENCE_OF(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF) + +#define ASN1_EXP_SEQUENCE_OF_OPT(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL) + +/* EXPLICIT using indefinite length constructed form */ +#define ASN1_NDEF_EXP(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_NDEF) + +/* EXPLICIT OPTIONAL using indefinite length constructed form */ +#define ASN1_NDEF_EXP_OPT(stname, field, type, tag) \ + ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_NDEF) + +/* Macros for the ASN1_ADB structure */ + +#define ASN1_ADB(name) \ + static const ASN1_ADB_TABLE name##_adbtbl[] + +#define ASN1_ADB_END(name, flags, field, app_table, def, none) \ + ;\ + static const ASN1_ADB name##_adb = {\ + flags,\ + offsetof(name, field),\ + app_table,\ + name##_adbtbl,\ + sizeof(name##_adbtbl) / sizeof(ASN1_ADB_TABLE),\ + def,\ + none\ + } + +#define ADB_ENTRY(val, template) {val, template} + +#define ASN1_ADB_TEMPLATE(name) \ + static const ASN1_TEMPLATE name##_tt + +/* This is the ASN1 template structure that defines + * a wrapper round the actual type. It determines the + * actual position of the field in the value structure, + * various flags such as OPTIONAL and the field name. + */ + +struct ASN1_TEMPLATE_st { +unsigned long flags; /* Various flags */ +long tag; /* tag, not used if no tagging */ +unsigned long offset; /* Offset of this field in structure */ +#ifndef NO_ASN1_FIELD_NAMES +const char *field_name; /* Field name */ +#endif +ASN1_ITEM_EXP *item; /* Relevant ASN1_ITEM or ASN1_ADB */ +}; + +/* Macro to extract ASN1_ITEM and ASN1_ADB pointer from ASN1_TEMPLATE */ + +#define ASN1_TEMPLATE_item(t) (t->item_ptr) +#define ASN1_TEMPLATE_adb(t) (t->item_ptr) + +typedef struct ASN1_ADB_TABLE_st ASN1_ADB_TABLE; +typedef struct ASN1_ADB_st ASN1_ADB; + +struct ASN1_ADB_st { + unsigned long flags; /* Various flags */ + unsigned long offset; /* Offset of selector field */ + STACK_OF(ASN1_ADB_TABLE) **app_items; /* Application defined items */ + const ASN1_ADB_TABLE *tbl; /* Table of possible types */ + long tblcount; /* Number of entries in tbl */ + const ASN1_TEMPLATE *default_tt; /* Type to use if no match */ + const ASN1_TEMPLATE *null_tt; /* Type to use if selector is NULL */ +}; + +struct ASN1_ADB_TABLE_st { + long value; /* NID for an object or value for an int */ + const ASN1_TEMPLATE tt; /* item for this value */ +}; + +/* template flags */ + +/* Field is optional */ +#define ASN1_TFLG_OPTIONAL (0x1) + +/* Field is a SET OF */ +#define ASN1_TFLG_SET_OF (0x1 << 1) + +/* Field is a SEQUENCE OF */ +#define ASN1_TFLG_SEQUENCE_OF (0x2 << 1) + +/* Special case: this refers to a SET OF that + * will be sorted into DER order when encoded *and* + * the corresponding STACK will be modified to match + * the new order. + */ +#define ASN1_TFLG_SET_ORDER (0x3 << 1) + +/* Mask for SET OF or SEQUENCE OF */ +#define ASN1_TFLG_SK_MASK (0x3 << 1) + +/* These flags mean the tag should be taken from the + * tag field. If EXPLICIT then the underlying type + * is used for the inner tag. + */ + +/* IMPLICIT tagging */ +#define ASN1_TFLG_IMPTAG (0x1 << 3) + + +/* EXPLICIT tagging, inner tag from underlying type */ +#define ASN1_TFLG_EXPTAG (0x2 << 3) + +#define ASN1_TFLG_TAG_MASK (0x3 << 3) + +/* context specific IMPLICIT */ +#define ASN1_TFLG_IMPLICIT ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT + +/* context specific EXPLICIT */ +#define ASN1_TFLG_EXPLICIT ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT + +/* If tagging is in force these determine the + * type of tag to use. Otherwise the tag is + * determined by the underlying type. These + * values reflect the actual octet format. + */ + +/* Universal tag */ +#define ASN1_TFLG_UNIVERSAL (0x0<<6) +/* Application tag */ +#define ASN1_TFLG_APPLICATION (0x1<<6) +/* Context specific tag */ +#define ASN1_TFLG_CONTEXT (0x2<<6) +/* Private tag */ +#define ASN1_TFLG_PRIVATE (0x3<<6) + +#define ASN1_TFLG_TAG_CLASS (0x3<<6) + +/* These are for ANY DEFINED BY type. In this case + * the 'item' field points to an ASN1_ADB structure + * which contains a table of values to decode the + * relevant type + */ + +#define ASN1_TFLG_ADB_MASK (0x3<<8) + +#define ASN1_TFLG_ADB_OID (0x1<<8) + +#define ASN1_TFLG_ADB_INT (0x1<<9) + +/* This flag means a parent structure is passed + * instead of the field: this is useful is a + * SEQUENCE is being combined with a CHOICE for + * example. Since this means the structure and + * item name will differ we need to use the + * ASN1_CHOICE_END_name() macro for example. + */ + +#define ASN1_TFLG_COMBINE (0x1<<10) + +/* This flag when present in a SEQUENCE OF, SET OF + * or EXPLICIT causes indefinite length constructed + * encoding to be used if required. + */ + +#define ASN1_TFLG_NDEF (0x1<<11) + +/* This is the actual ASN1 item itself */ + +struct ASN1_ITEM_st { +char itype; /* The item type, primitive, SEQUENCE, CHOICE or extern */ +long utype; /* underlying type */ +const ASN1_TEMPLATE *templates; /* If SEQUENCE or CHOICE this contains the contents */ +long tcount; /* Number of templates if SEQUENCE or CHOICE */ +const void *funcs; /* functions that handle this type */ +long size; /* Structure size (usually)*/ +#ifndef NO_ASN1_FIELD_NAMES +const char *sname; /* Structure name */ +#endif +}; + +/* These are values for the itype field and + * determine how the type is interpreted. + * + * For PRIMITIVE types the underlying type + * determines the behaviour if items is NULL. + * + * Otherwise templates must contain a single + * template and the type is treated in the + * same way as the type specified in the template. + * + * For SEQUENCE types the templates field points + * to the members, the size field is the + * structure size. + * + * For CHOICE types the templates field points + * to each possible member (typically a union) + * and the 'size' field is the offset of the + * selector. + * + * The 'funcs' field is used for application + * specific functions. + * + * For COMPAT types the funcs field gives a + * set of functions that handle this type, this + * supports the old d2i, i2d convention. + * + * The EXTERN type uses a new style d2i/i2d. + * The new style should be used where possible + * because it avoids things like the d2i IMPLICIT + * hack. + * + * MSTRING is a multiple string type, it is used + * for a CHOICE of character strings where the + * actual strings all occupy an ASN1_STRING + * structure. In this case the 'utype' field + * has a special meaning, it is used as a mask + * of acceptable types using the B_ASN1 constants. + * + * NDEF_SEQUENCE is the same as SEQUENCE except + * that it will use indefinite length constructed + * encoding if requested. + * + */ + +#define ASN1_ITYPE_PRIMITIVE 0x0 + +#define ASN1_ITYPE_SEQUENCE 0x1 + +#define ASN1_ITYPE_CHOICE 0x2 + +#define ASN1_ITYPE_COMPAT 0x3 + +#define ASN1_ITYPE_EXTERN 0x4 + +#define ASN1_ITYPE_MSTRING 0x5 + +#define ASN1_ITYPE_NDEF_SEQUENCE 0x6 + +/* Cache for ASN1 tag and length, so we + * don't keep re-reading it for things + * like CHOICE + */ + +struct ASN1_TLC_st{ + char valid; /* Values below are valid */ + int ret; /* return value */ + long plen; /* length */ + int ptag; /* class value */ + int pclass; /* class value */ + int hdrlen; /* header length */ +}; + +/* Typedefs for ASN1 function pointers */ + +typedef ASN1_VALUE * ASN1_new_func(void); +typedef void ASN1_free_func(ASN1_VALUE *a); +typedef ASN1_VALUE * ASN1_d2i_func(ASN1_VALUE **a, const unsigned char ** in, long length); +typedef int ASN1_i2d_func(ASN1_VALUE * a, unsigned char **in); + +typedef int ASN1_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, + int tag, int aclass, char opt, ASN1_TLC *ctx); + +typedef int ASN1_ex_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_ITEM *it, int tag, int aclass); +typedef int ASN1_ex_new_func(ASN1_VALUE **pval, const ASN1_ITEM *it); +typedef void ASN1_ex_free_func(ASN1_VALUE **pval, const ASN1_ITEM *it); + +typedef int ASN1_ex_print_func(BIO *out, ASN1_VALUE **pval, + int indent, const char *fname, + const ASN1_PCTX *pctx); + +typedef int ASN1_primitive_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it); +typedef int ASN1_primitive_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it); +typedef int ASN1_primitive_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx); + +typedef struct ASN1_COMPAT_FUNCS_st { + ASN1_new_func *asn1_new; + ASN1_free_func *asn1_free; + ASN1_d2i_func *asn1_d2i; + ASN1_i2d_func *asn1_i2d; +} ASN1_COMPAT_FUNCS; + +typedef struct ASN1_EXTERN_FUNCS_st { + void *app_data; + ASN1_ex_new_func *asn1_ex_new; + ASN1_ex_free_func *asn1_ex_free; + ASN1_ex_free_func *asn1_ex_clear; + ASN1_ex_d2i *asn1_ex_d2i; + ASN1_ex_i2d *asn1_ex_i2d; + ASN1_ex_print_func *asn1_ex_print; +} ASN1_EXTERN_FUNCS; + +typedef struct ASN1_PRIMITIVE_FUNCS_st { + void *app_data; + unsigned long flags; + ASN1_ex_new_func *prim_new; + ASN1_ex_free_func *prim_free; + ASN1_ex_free_func *prim_clear; + ASN1_primitive_c2i *prim_c2i; + ASN1_primitive_i2c *prim_i2c; + ASN1_primitive_print *prim_print; +} ASN1_PRIMITIVE_FUNCS; + +/* This is the ASN1_AUX structure: it handles various + * miscellaneous requirements. For example the use of + * reference counts and an informational callback. + * + * The "informational callback" is called at various + * points during the ASN1 encoding and decoding. It can + * be used to provide minor customisation of the structures + * used. This is most useful where the supplied routines + * *almost* do the right thing but need some extra help + * at a few points. If the callback returns zero then + * it is assumed a fatal error has occurred and the + * main operation should be abandoned. + * + * If major changes in the default behaviour are required + * then an external type is more appropriate. + */ + +typedef int ASN1_aux_cb(int operation, ASN1_VALUE **in, const ASN1_ITEM *it, + void *exarg); + +typedef struct ASN1_AUX_st { + void *app_data; + int flags; + int ref_offset; /* Offset of reference value */ + ASN1_aux_cb *asn1_cb; + int enc_offset; /* Offset of ASN1_ENCODING structure */ +} ASN1_AUX; + +/* For print related callbacks exarg points to this structure */ +typedef struct ASN1_PRINT_ARG_st { + BIO *out; + int indent; + const ASN1_PCTX *pctx; +} ASN1_PRINT_ARG; + +/* For streaming related callbacks exarg points to this structure */ +typedef struct ASN1_STREAM_ARG_st { + /* BIO to stream through */ + BIO *out; + /* BIO with filters appended */ + BIO *ndef_bio; + /* Streaming I/O boundary */ + unsigned char **boundary; +} ASN1_STREAM_ARG; + +/* Flags in ASN1_AUX */ + +/* Use a reference count */ +#define ASN1_AFLG_REFCOUNT 1 +/* Save the encoding of structure (useful for signatures) */ +#define ASN1_AFLG_ENCODING 2 +/* The Sequence length is invalid */ +#define ASN1_AFLG_BROKEN 4 + +/* operation values for asn1_cb */ + +#define ASN1_OP_NEW_PRE 0 +#define ASN1_OP_NEW_POST 1 +#define ASN1_OP_FREE_PRE 2 +#define ASN1_OP_FREE_POST 3 +#define ASN1_OP_D2I_PRE 4 +#define ASN1_OP_D2I_POST 5 +#define ASN1_OP_I2D_PRE 6 +#define ASN1_OP_I2D_POST 7 +#define ASN1_OP_PRINT_PRE 8 +#define ASN1_OP_PRINT_POST 9 +#define ASN1_OP_STREAM_PRE 10 +#define ASN1_OP_STREAM_POST 11 +#define ASN1_OP_DETACHED_PRE 12 +#define ASN1_OP_DETACHED_POST 13 + +/* Macro to implement a primitive type */ +#define IMPLEMENT_ASN1_TYPE(stname) IMPLEMENT_ASN1_TYPE_ex(stname, stname, 0) +#define IMPLEMENT_ASN1_TYPE_ex(itname, vname, ex) \ + ASN1_ITEM_start(itname) \ + ASN1_ITYPE_PRIMITIVE, V_##vname, NULL, 0, NULL, ex, #itname \ + ASN1_ITEM_end(itname) + +/* Macro to implement a multi string type */ +#define IMPLEMENT_ASN1_MSTRING(itname, mask) \ + ASN1_ITEM_start(itname) \ + ASN1_ITYPE_MSTRING, mask, NULL, 0, NULL, sizeof(ASN1_STRING), #itname \ + ASN1_ITEM_end(itname) + +/* Macro to implement an ASN1_ITEM in terms of old style funcs */ + +#define IMPLEMENT_COMPAT_ASN1(sname) IMPLEMENT_COMPAT_ASN1_type(sname, V_ASN1_SEQUENCE) + +#define IMPLEMENT_COMPAT_ASN1_type(sname, tag) \ + static const ASN1_COMPAT_FUNCS sname##_ff = { \ + (ASN1_new_func *)sname##_new, \ + (ASN1_free_func *)sname##_free, \ + (ASN1_d2i_func *)d2i_##sname, \ + (ASN1_i2d_func *)i2d_##sname, \ + }; \ + ASN1_ITEM_start(sname) \ + ASN1_ITYPE_COMPAT, \ + tag, \ + NULL, \ + 0, \ + &sname##_ff, \ + 0, \ + #sname \ + ASN1_ITEM_end(sname) + +#define IMPLEMENT_EXTERN_ASN1(sname, tag, fptrs) \ + ASN1_ITEM_start(sname) \ + ASN1_ITYPE_EXTERN, \ + tag, \ + NULL, \ + 0, \ + &fptrs, \ + 0, \ + #sname \ + ASN1_ITEM_end(sname) + +/* Macro to implement standard functions in terms of ASN1_ITEM structures */ + +#define IMPLEMENT_ASN1_FUNCTIONS(stname) IMPLEMENT_ASN1_FUNCTIONS_fname(stname, stname, stname) + +#define IMPLEMENT_ASN1_FUNCTIONS_name(stname, itname) IMPLEMENT_ASN1_FUNCTIONS_fname(stname, itname, itname) + +#define IMPLEMENT_ASN1_FUNCTIONS_ENCODE_name(stname, itname) \ + IMPLEMENT_ASN1_FUNCTIONS_ENCODE_fname(stname, itname, itname) + +#define IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(stname) \ + IMPLEMENT_ASN1_ALLOC_FUNCTIONS_pfname(static, stname, stname, stname) + +#define IMPLEMENT_ASN1_ALLOC_FUNCTIONS(stname) \ + IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, stname, stname) + +#define IMPLEMENT_ASN1_ALLOC_FUNCTIONS_pfname(pre, stname, itname, fname) \ + pre stname *fname##_new(void) \ + { \ + return (stname *)ASN1_item_new(ASN1_ITEM_rptr(itname)); \ + } \ + pre void fname##_free(stname *a) \ + { \ + ASN1_item_free((ASN1_VALUE *)a, ASN1_ITEM_rptr(itname)); \ + } + +#define IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) \ + stname *fname##_new(void) \ + { \ + return (stname *)ASN1_item_new(ASN1_ITEM_rptr(itname)); \ + } \ + void fname##_free(stname *a) \ + { \ + ASN1_item_free((ASN1_VALUE *)a, ASN1_ITEM_rptr(itname)); \ + } + +#define IMPLEMENT_ASN1_FUNCTIONS_fname(stname, itname, fname) \ + IMPLEMENT_ASN1_ENCODE_FUNCTIONS_fname(stname, itname, fname) \ + IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) + +#define IMPLEMENT_ASN1_ENCODE_FUNCTIONS_fname(stname, itname, fname) \ + stname *d2i_##fname(stname **a, const unsigned char **in, long len) \ + { \ + return (stname *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, ASN1_ITEM_rptr(itname));\ + } \ + int i2d_##fname(stname *a, unsigned char **out) \ + { \ + return ASN1_item_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(itname));\ + } + +#define IMPLEMENT_ASN1_NDEF_FUNCTION(stname) \ + int i2d_##stname##_NDEF(stname *a, unsigned char **out) \ + { \ + return ASN1_item_ndef_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(stname));\ + } + +/* This includes evil casts to remove const: they will go away when full + * ASN1 constification is done. + */ +#define IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(stname, itname, fname) \ + stname *d2i_##fname(stname **a, const unsigned char **in, long len) \ + { \ + return (stname *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, ASN1_ITEM_rptr(itname));\ + } \ + int i2d_##fname(const stname *a, unsigned char **out) \ + { \ + return ASN1_item_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(itname));\ + } + +#define IMPLEMENT_ASN1_DUP_FUNCTION(stname) \ + stname * stname##_dup(stname *x) \ + { \ + return ASN1_item_dup(ASN1_ITEM_rptr(stname), x); \ + } + +#define IMPLEMENT_ASN1_PRINT_FUNCTION(stname) \ + IMPLEMENT_ASN1_PRINT_FUNCTION_fname(stname, stname, stname) + +#define IMPLEMENT_ASN1_PRINT_FUNCTION_fname(stname, itname, fname) \ + int fname##_print_ctx(BIO *out, stname *x, int indent, \ + const ASN1_PCTX *pctx) \ + { \ + return ASN1_item_print(out, (ASN1_VALUE *)x, indent, \ + ASN1_ITEM_rptr(itname), pctx); \ + } + +#define IMPLEMENT_ASN1_FUNCTIONS_const(name) \ + IMPLEMENT_ASN1_FUNCTIONS_const_fname(name, name, name) + +#define IMPLEMENT_ASN1_FUNCTIONS_const_fname(stname, itname, fname) \ + IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(stname, itname, fname) \ + IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) + +/* external definitions for primitive types */ + +DECLARE_ASN1_ITEM(ASN1_BOOLEAN) +DECLARE_ASN1_ITEM(ASN1_TBOOLEAN) +DECLARE_ASN1_ITEM(ASN1_FBOOLEAN) +DECLARE_ASN1_ITEM(ASN1_SEQUENCE) +DECLARE_ASN1_ITEM(CBIGNUM) +DECLARE_ASN1_ITEM(BIGNUM) +DECLARE_ASN1_ITEM(LONG) +DECLARE_ASN1_ITEM(ZLONG) + +DECLARE_STACK_OF(ASN1_VALUE) + +/* Functions used internally by the ASN1 code */ + +int ASN1_item_ex_new(ASN1_VALUE **pval, const ASN1_ITEM *it); +void ASN1_item_ex_free(ASN1_VALUE **pval, const ASN1_ITEM *it); +int ASN1_template_new(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt); +int ASN1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it); + +void ASN1_template_free(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt); +int ASN1_template_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_TEMPLATE *tt); +int ASN1_item_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, + int tag, int aclass, char opt, ASN1_TLC *ctx); + +int ASN1_item_ex_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_ITEM *it, int tag, int aclass); +int ASN1_template_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_TEMPLATE *tt); +void ASN1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it); + +int asn1_ex_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it); +int asn1_ex_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it); + +int asn1_get_choice_selector(ASN1_VALUE **pval, const ASN1_ITEM *it); +int asn1_set_choice_selector(ASN1_VALUE **pval, int value, const ASN1_ITEM *it); + +ASN1_VALUE ** asn1_get_field_ptr(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt); + +const ASN1_TEMPLATE *asn1_do_adb(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt, int nullerr); + +void asn1_refcount_set_one(ASN1_VALUE **pval, const ASN1_ITEM *it); +int asn1_refcount_dec_and_test_zero(ASN1_VALUE **pval, const ASN1_ITEM *it); + +void asn1_enc_init(ASN1_VALUE **pval, const ASN1_ITEM *it); +void asn1_enc_free(ASN1_VALUE **pval, const ASN1_ITEM *it); +int asn1_enc_restore(int *len, unsigned char **out, ASN1_VALUE **pval, const ASN1_ITEM *it); +int asn1_enc_save(ASN1_VALUE **pval, const unsigned char *in, int inlen, const ASN1_ITEM *it); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/project/jni/boringssl/include/openssl/base.h b/project/jni/boringssl/include/openssl/base.h new file mode 100644 index 000000000..47b3ccb99 --- /dev/null +++ b/project/jni/boringssl/include/openssl/base.h @@ -0,0 +1,261 @@ +/* ==================================================================== + * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_BASE_H +#define OPENSSL_HEADER_BASE_H + + +/* This file should be the first included by all BoringSSL headers. */ + +#include +#include +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +#if defined(__x86_64) || defined(_M_AMD64) || defined(_M_X64) +#define OPENSSL_64_BIT +#define OPENSSL_X86_64 +#elif defined(__x86) || defined(__i386) || defined(__i386__) || defined(_M_IX86) +#define OPENSSL_32_BIT +#define OPENSSL_X86 +#elif defined(__aarch64__) +#define OPENSSL_64_BIT +#define OPENSSL_AARCH64 +#elif defined(__arm) || defined(__arm__) || defined(_M_ARM) +#define OPENSSL_32_BIT +#define OPENSSL_ARM +#elif defined(__PPC64__) || defined(__powerpc64__) +#define OPENSSL_64_BIT +#elif defined(__mips__) && !defined(__LP64__) +#define OPENSSL_32_BIT +#define OPENSSL_MIPS +#elif defined(__mips__) && defined(__LP64__) +#define OPENSSL_64_BIT +#define OPENSSL_MIPS64 +#elif defined(__pnacl__) +#define OPENSSL_32_BIT +#define OPENSSL_PNACL +#else +#error "Unknown target CPU" +#endif + +#if defined(__APPLE__) +#define OPENSSL_APPLE +#endif + +#if defined(_WIN32) +#define OPENSSL_WINDOWS +#endif + +#if defined(TRUSTY) +#define OPENSSL_TRUSTY +#define OPENSSL_NO_THREADS +#endif + +#define OPENSSL_IS_BORINGSSL +#define BORINGSSL_201510 +#define OPENSSL_VERSION_NUMBER 0x10002000 +#define SSLEAY_VERSION_NUMBER OPENSSL_VERSION_NUMBER + +#if defined(BORINGSSL_SHARED_LIBRARY) + +#if defined(OPENSSL_WINDOWS) + +#if defined(BORINGSSL_IMPLEMENTATION) +#define OPENSSL_EXPORT __declspec(dllexport) +#else +#define OPENSSL_EXPORT __declspec(dllimport) +#endif + +#else /* defined(OPENSSL_WINDOWS) */ + +#if defined(BORINGSSL_IMPLEMENTATION) +#define OPENSSL_EXPORT __attribute__((visibility("default"))) +#else +#define OPENSSL_EXPORT +#endif + +#endif /* defined(OPENSSL_WINDOWS) */ + +#else /* defined(BORINGSSL_SHARED_LIBRARY) */ + +#define OPENSSL_EXPORT + +#endif /* defined(BORINGSSL_SHARED_LIBRARY) */ + +/* CRYPTO_THREADID is a dummy value. */ +typedef int CRYPTO_THREADID; + +typedef int ASN1_BOOLEAN; +typedef int ASN1_NULL; +typedef struct ASN1_ITEM_st ASN1_ITEM; +typedef struct asn1_object_st ASN1_OBJECT; +typedef struct asn1_pctx_st ASN1_PCTX; +typedef struct asn1_string_st ASN1_BIT_STRING; +typedef struct asn1_string_st ASN1_BMPSTRING; +typedef struct asn1_string_st ASN1_ENUMERATED; +typedef struct asn1_string_st ASN1_GENERALIZEDTIME; +typedef struct asn1_string_st ASN1_GENERALSTRING; +typedef struct asn1_string_st ASN1_IA5STRING; +typedef struct asn1_string_st ASN1_INTEGER; +typedef struct asn1_string_st ASN1_OCTET_STRING; +typedef struct asn1_string_st ASN1_PRINTABLESTRING; +typedef struct asn1_string_st ASN1_STRING; +typedef struct asn1_string_st ASN1_T61STRING; +typedef struct asn1_string_st ASN1_TIME; +typedef struct asn1_string_st ASN1_UNIVERSALSTRING; +typedef struct asn1_string_st ASN1_UTCTIME; +typedef struct asn1_string_st ASN1_UTF8STRING; +typedef struct asn1_string_st ASN1_VISIBLESTRING; + +typedef struct AUTHORITY_KEYID_st AUTHORITY_KEYID; +typedef struct DIST_POINT_st DIST_POINT; +typedef struct ISSUING_DIST_POINT_st ISSUING_DIST_POINT; +typedef struct NAME_CONSTRAINTS_st NAME_CONSTRAINTS; +typedef struct Netscape_certificate_sequence NETSCAPE_CERT_SEQUENCE; +typedef struct Netscape_spkac_st NETSCAPE_SPKAC; +typedef struct Netscape_spki_st NETSCAPE_SPKI; +typedef struct PBE2PARAM_st PBE2PARAM; +typedef struct PBEPARAM_st PBEPARAM; +typedef struct PBKDF2PARAM_st PBKDF2PARAM; +typedef struct X509_POLICY_CACHE_st X509_POLICY_CACHE; +typedef struct X509_POLICY_LEVEL_st X509_POLICY_LEVEL; +typedef struct X509_POLICY_NODE_st X509_POLICY_NODE; +typedef struct X509_POLICY_TREE_st X509_POLICY_TREE; +typedef struct X509_algor_st X509_ALGOR; +typedef struct X509_crl_info_st X509_CRL_INFO; +typedef struct X509_crl_st X509_CRL; +typedef struct X509_extension_st X509_EXTENSION; +typedef struct X509_info_st X509_INFO; +typedef struct X509_name_entry_st X509_NAME_ENTRY; +typedef struct X509_name_st X509_NAME; +typedef struct X509_objects_st X509_OBJECTS; +typedef struct X509_pubkey_st X509_PUBKEY; +typedef struct X509_req_info_st X509_REQ_INFO; +typedef struct X509_req_st X509_REQ; +typedef struct X509_sig_st X509_SIG; +typedef struct X509_val_st X509_VAL; +typedef struct bignum_ctx BN_CTX; +typedef struct bignum_st BIGNUM; +typedef struct bio_method_st BIO_METHOD; +typedef struct bio_st BIO; +typedef struct bn_gencb_st BN_GENCB; +typedef struct bn_mont_ctx_st BN_MONT_CTX; +typedef struct buf_mem_st BUF_MEM; +typedef struct cbb_st CBB; +typedef struct cbs_st CBS; +typedef struct cmac_ctx_st CMAC_CTX; +typedef struct conf_st CONF; +typedef struct conf_value_st CONF_VALUE; +typedef struct dh_st DH; +typedef struct dsa_st DSA; +typedef struct ec_key_st EC_KEY; +typedef struct ecdsa_method_st ECDSA_METHOD; +typedef struct ecdsa_sig_st ECDSA_SIG; +typedef struct engine_st ENGINE; +typedef struct env_md_ctx_st EVP_MD_CTX; +typedef struct env_md_st EVP_MD; +typedef struct evp_aead_st EVP_AEAD; +typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX; +typedef struct evp_cipher_st EVP_CIPHER; +typedef struct evp_encode_ctx_st EVP_ENCODE_CTX; +typedef struct evp_pkey_asn1_method_st EVP_PKEY_ASN1_METHOD; +typedef struct evp_pkey_ctx_st EVP_PKEY_CTX; +typedef struct evp_pkey_method_st EVP_PKEY_METHOD; +typedef struct evp_pkey_st EVP_PKEY; +typedef struct hmac_ctx_st HMAC_CTX; +typedef struct md4_state_st MD4_CTX; +typedef struct md5_state_st MD5_CTX; +typedef struct pkcs12_st PKCS12; +typedef struct pkcs8_priv_key_info_st PKCS8_PRIV_KEY_INFO; +typedef struct private_key_st X509_PKEY; +typedef struct rand_meth_st RAND_METHOD; +typedef struct rc4_key_st RC4_KEY; +typedef struct rsa_meth_st RSA_METHOD; +typedef struct rsa_st RSA; +typedef struct sha256_state_st SHA256_CTX; +typedef struct sha512_state_st SHA512_CTX; +typedef struct sha_state_st SHA_CTX; +typedef struct srtp_protection_profile_st SRTP_PROTECTION_PROFILE; +typedef struct ssl_cipher_st SSL_CIPHER; +typedef struct ssl_ctx_st SSL_CTX; +typedef struct ssl_custom_extension SSL_CUSTOM_EXTENSION; +typedef struct ssl_method_st SSL_METHOD; +typedef struct ssl_session_st SSL_SESSION; +typedef struct ssl_st SSL; +typedef struct st_ERR_FNS ERR_FNS; +typedef struct v3_ext_ctx X509V3_CTX; +typedef struct x509_attributes_st X509_ATTRIBUTE; +typedef struct x509_cert_aux_st X509_CERT_AUX; +typedef struct x509_cert_pair_st X509_CERT_PAIR; +typedef struct x509_cinf_st X509_CINF; +typedef struct x509_crl_method_st X509_CRL_METHOD; +typedef struct x509_revoked_st X509_REVOKED; +typedef struct x509_st X509; +typedef struct x509_store_ctx_st X509_STORE_CTX; +typedef struct x509_store_st X509_STORE; +typedef struct x509_trust_st X509_TRUST; + +typedef void *OPENSSL_BLOCK; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_BASE_H */ diff --git a/project/jni/boringssl/include/openssl/base64.h b/project/jni/boringssl/include/openssl/base64.h new file mode 100644 index 000000000..f28e7ddb5 --- /dev/null +++ b/project/jni/boringssl/include/openssl/base64.h @@ -0,0 +1,184 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_BASE64_H +#define OPENSSL_HEADER_BASE64_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* base64 functions. + * + * For historical reasons, these functions have the EVP_ prefix but just do + * base64 encoding and decoding. */ + + +/* Encoding */ + +/* EVP_EncodeBlock encodes |src_len| bytes from |src| and writes the + * result to |dst| with a trailing NUL. It returns the number of bytes + * written, not including this trailing NUL. */ +OPENSSL_EXPORT size_t EVP_EncodeBlock(uint8_t *dst, const uint8_t *src, + size_t src_len); + +/* EVP_EncodedLength sets |*out_len| to the number of bytes that will be needed + * to call |EVP_EncodeBlock| on an input of length |len|. This includes the + * final NUL that |EVP_EncodeBlock| writes. It returns one on success or zero + * on error. */ +OPENSSL_EXPORT int EVP_EncodedLength(size_t *out_len, size_t len); + + +/* Decoding */ + +/* EVP_DecodedLength sets |*out_len| to the maximum number of bytes + * that will be needed to call |EVP_DecodeBase64| on an input of + * length |len|. */ +OPENSSL_EXPORT int EVP_DecodedLength(size_t *out_len, size_t len); + +/* EVP_DecodeBase64 decodes |in_len| bytes from base64 and writes + * |*out_len| bytes to |out|. |max_out| is the size of the output + * buffer. If it is not enough for the maximum output size, the + * operation fails. */ +OPENSSL_EXPORT int EVP_DecodeBase64(uint8_t *out, size_t *out_len, + size_t max_out, const uint8_t *in, + size_t in_len); + + +/* Deprecated functions. + * + * OpenSSL provides a streaming base64 implementation, however its behavior is + * very specific to PEM. It is also very lenient of invalid input. Use of any of + * these functions is thus deprecated. + * + * TODO(davidben): Import upstream's rewrite that rejects the invalid input. */ + +/* EVP_EncodeInit initialises |*ctx|, which is typically stack + * allocated, for an encoding operation. + * + * NOTE: The encoding operation breaks its output with newlines every + * 64 characters of output (48 characters of input). Use + * EVP_EncodeBlock to encode raw base64. */ +OPENSSL_EXPORT void EVP_EncodeInit(EVP_ENCODE_CTX *ctx); + +/* EVP_EncodeUpdate encodes |in_len| bytes from |in| and writes an encoded + * version of them to |out| and sets |*out_len| to the number of bytes written. + * Some state may be contained in |ctx| so |EVP_EncodeFinal| must be used to + * flush it before using the encoded data. */ +OPENSSL_EXPORT void EVP_EncodeUpdate(EVP_ENCODE_CTX *ctx, uint8_t *out, + int *out_len, const uint8_t *in, + size_t in_len); + +/* EVP_EncodeFinal flushes any remaining output bytes from |ctx| to |out| and + * sets |*out_len| to the number of bytes written. */ +OPENSSL_EXPORT void EVP_EncodeFinal(EVP_ENCODE_CTX *ctx, uint8_t *out, + int *out_len); + +/* EVP_DecodeInit initialises |*ctx|, which is typically stack allocated, for + * a decoding operation. + * + * TODO(davidben): This isn't a straight-up base64 decode either. Document + * and/or fix exactly what's going on here; maximum line length and such. */ +OPENSSL_EXPORT void EVP_DecodeInit(EVP_ENCODE_CTX *ctx); + +/* EVP_DecodeUpdate decodes |in_len| bytes from |in| and writes the decoded + * data to |out| and sets |*out_len| to the number of bytes written. Some state + * may be contained in |ctx| so |EVP_DecodeFinal| must be used to flush it + * before using the encoded data. + * + * It returns -1 on error, one if a full line of input was processed and zero + * if the line was short (i.e. it was the last line). */ +OPENSSL_EXPORT int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, uint8_t *out, + int *out_len, const uint8_t *in, + size_t in_len); + +/* EVP_DecodeFinal flushes any remaining output bytes from |ctx| to |out| and + * sets |*out_len| to the number of bytes written. It returns one on success + * and minus one on error. */ +OPENSSL_EXPORT int EVP_DecodeFinal(EVP_ENCODE_CTX *ctx, uint8_t *out, + int *out_len); + +/* EVP_DecodeBlock encodes |src_len| bytes from |src| and writes the result to + * |dst|. It returns the number of bytes written or -1 on error. + * + * WARNING: EVP_DecodeBlock's return value does not take padding into + * account. It also strips leading whitespace and trailing + * whitespace. */ +OPENSSL_EXPORT int EVP_DecodeBlock(uint8_t *dst, const uint8_t *src, + size_t src_len); + + +struct evp_encode_ctx_st { + unsigned num; /* number saved in a partial encode/decode */ + unsigned length; /* The length is either the output line length + * (in input bytes) or the shortest input line + * length that is ok. Once decoding begins, + * the length is adjusted up each time a longer + * line is decoded */ + uint8_t enc_data[80]; /* data to encode */ + unsigned line_num; /* number read on current line */ + int expect_nl; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_BASE64_H */ diff --git a/project/jni/boringssl/include/openssl/bio.h b/project/jni/boringssl/include/openssl/bio.h new file mode 100644 index 000000000..c88a3e187 --- /dev/null +++ b/project/jni/boringssl/include/openssl/bio.h @@ -0,0 +1,902 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_BIO_H +#define OPENSSL_HEADER_BIO_H + +#include + +#include /* For FILE */ + +#include /* for ERR_print_errors_fp */ +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* BIO abstracts over a file-descriptor like interface. */ + + +/* Allocation and freeing. */ + +/* BIO_new creates a new BIO with the given type and a reference count of one. + * It returns the fresh |BIO|, or NULL on error. */ +OPENSSL_EXPORT BIO *BIO_new(const BIO_METHOD *type); + +/* BIO_free decrements the reference count of |bio|. If the reference count + * drops to zero, it (optionally) calls the BIO's callback with |BIO_CB_FREE|, + * frees the ex_data and then, if the BIO has a destroy callback for the + * method, calls it. Finally it frees |bio| itself. It then repeats that for + * the next BIO in the chain, if any. + * + * It returns one on success or zero otherwise. */ +OPENSSL_EXPORT int BIO_free(BIO *bio); + +/* BIO_vfree performs the same actions as |BIO_free|, but has a void return + * value. This is provided for API-compat. + * + * TODO(fork): remove. */ +OPENSSL_EXPORT void BIO_vfree(BIO *bio); + +/* BIO_up_ref increments the reference count of |bio| and returns it. */ +OPENSSL_EXPORT BIO *BIO_up_ref(BIO *bio); + + +/* Basic I/O. */ + +/* BIO_read attempts to read |len| bytes into |data|. It returns the number of + * bytes read, zero on EOF, or a negative number on error. */ +OPENSSL_EXPORT int BIO_read(BIO *bio, void *data, int len); + +/* BIO_gets "reads a line" from |bio| and puts at most |size| bytes into |buf|. + * It returns the number of bytes read or a negative number on error. The + * phrase "reads a line" is in quotes in the previous sentence because the + * exact operation depends on the BIO's method. For example, a digest BIO will + * return the digest in response to a |BIO_gets| call. + * + * TODO(fork): audit the set of BIOs that we end up needing. If all actually + * return a line for this call, remove the warning above. */ +OPENSSL_EXPORT int BIO_gets(BIO *bio, char *buf, int size); + +/* BIO_write writes |len| bytes from |data| to BIO. It returns the number of + * bytes written or a negative number on error. */ +OPENSSL_EXPORT int BIO_write(BIO *bio, const void *data, int len); + +/* BIO_puts writes a NUL terminated string from |buf| to |bio|. It returns the + * number of bytes written or a negative number on error. */ +OPENSSL_EXPORT int BIO_puts(BIO *bio, const char *buf); + +/* BIO_flush flushes any buffered output. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int BIO_flush(BIO *bio); + + +/* Low-level control functions. + * + * These are generic functions for sending control requests to a BIO. In + * general one should use the wrapper functions like |BIO_get_close|. */ + +/* BIO_ctrl sends the control request |cmd| to |bio|. The |cmd| argument should + * be one of the |BIO_C_*| values. */ +OPENSSL_EXPORT long BIO_ctrl(BIO *bio, int cmd, long larg, void *parg); + +/* BIO_ptr_ctrl acts like |BIO_ctrl| but passes the address of a |void*| + * pointer as |parg| and returns the value that is written to it, or NULL if + * the control request returns <= 0. */ +OPENSSL_EXPORT char *BIO_ptr_ctrl(BIO *bp, int cmd, long larg); + +/* BIO_int_ctrl acts like |BIO_ctrl| but passes the address of a copy of |iarg| + * as |parg|. */ +OPENSSL_EXPORT long BIO_int_ctrl(BIO *bp, int cmd, long larg, int iarg); + +/* BIO_reset resets |bio| to its initial state, the precise meaning of which + * depends on the concrete type of |bio|. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int BIO_reset(BIO *bio); + +/* BIO_set_flags ORs |flags| with |bio->flags|. */ +OPENSSL_EXPORT void BIO_set_flags(BIO *bio, int flags); + +/* BIO_test_flags returns |bio->flags| AND |flags|. */ +OPENSSL_EXPORT int BIO_test_flags(const BIO *bio, int flags); + +/* BIO_should_read returns non-zero if |bio| encountered a temporary error + * while reading (i.e. EAGAIN), indicating that the caller should retry the + * read. */ +OPENSSL_EXPORT int BIO_should_read(const BIO *bio); + +/* BIO_should_write returns non-zero if |bio| encountered a temporary error + * while writing (i.e. EAGAIN), indicating that the caller should retry the + * write. */ +OPENSSL_EXPORT int BIO_should_write(const BIO *bio); + +/* BIO_should_retry returns non-zero if the reason that caused a failed I/O + * operation is temporary and thus the operation should be retried. Otherwise, + * it was a permanent error and it returns zero. */ +OPENSSL_EXPORT int BIO_should_retry(const BIO *bio); + +/* BIO_should_io_special returns non-zero if |bio| encountered a temporary + * error while performing a special I/O operation, indicating that the caller + * should retry. The operation that caused the error is returned by + * |BIO_get_retry_reason|. */ +OPENSSL_EXPORT int BIO_should_io_special(const BIO *bio); + +/* BIO_RR_SSL_X509_LOOKUP indicates that an SSL BIO blocked because the SSL + * library returned with SSL_ERROR_WANT_X509_LOOKUP. + * + * TODO(fork): remove. */ +#define BIO_RR_SSL_X509_LOOKUP 0x01 + +/* BIO_RR_CONNECT indicates that a connect would have blocked */ +#define BIO_RR_CONNECT 0x02 + +/* BIO_RR_ACCEPT indicates that an accept would have blocked */ +#define BIO_RR_ACCEPT 0x03 + +/* BIO_RR_SSL_CHANNEL_ID_LOOKUP indicates that the ChannelID code cannot find + * a private key for a TLS connection. */ +#define BIO_RR_SSL_CHANNEL_ID_LOOKUP 0x04 + +/* BIO_get_retry_reason returns the special I/O operation that needs to be + * retried. The return value is one of the |BIO_RR_*| values. */ +OPENSSL_EXPORT int BIO_get_retry_reason(const BIO *bio); + +/* BIO_clear_flags ANDs |bio->flags| with the bitwise-complement of |flags|. */ +OPENSSL_EXPORT void BIO_clear_flags(BIO *bio, int flags); + +/* BIO_set_retry_read sets the |BIO_FLAGS_READ| and |BIO_FLAGS_SHOULD_RETRY| + * flags on |bio|. */ +OPENSSL_EXPORT void BIO_set_retry_read(BIO *bio); + +/* BIO_set_retry_write sets the |BIO_FLAGS_WRITE| and |BIO_FLAGS_SHOULD_RETRY| + * flags on |bio|. */ +OPENSSL_EXPORT void BIO_set_retry_write(BIO *bio); + +/* BIO_get_retry_flags gets the |BIO_FLAGS_READ|, |BIO_FLAGS_WRITE|, + * |BIO_FLAGS_IO_SPECIAL| and |BIO_FLAGS_SHOULD_RETRY| flags from |bio|. */ +OPENSSL_EXPORT int BIO_get_retry_flags(BIO *bio); + +/* BIO_clear_retry_flags clears the |BIO_FLAGS_READ|, |BIO_FLAGS_WRITE|, + * |BIO_FLAGS_IO_SPECIAL| and |BIO_FLAGS_SHOULD_RETRY| flags from |bio|. */ +OPENSSL_EXPORT void BIO_clear_retry_flags(BIO *bio); + +/* BIO_method_type returns the type of |bio|, which is one of the |BIO_TYPE_*| + * values. */ +OPENSSL_EXPORT int BIO_method_type(const BIO *bio); + +/* bio_info_cb is the type of a callback function that can be called for most + * BIO operations. The |event| argument is one of |BIO_CB_*| and can be ORed + * with |BIO_CB_RETURN| if the callback is being made after the operation in + * question. In that case, |return_value| will contain the return value from + * the operation. */ +typedef long (*bio_info_cb)(BIO *bio, int event, const char *parg, int cmd, + long larg, long return_value); + +/* BIO_callback_ctrl allows the callback function to be manipulated. The |cmd| + * arg will generally be |BIO_CTRL_SET_CALLBACK| but arbitary command values + * can be interpreted by the |BIO|. */ +OPENSSL_EXPORT long BIO_callback_ctrl(BIO *bio, int cmd, bio_info_cb fp); + +/* BIO_pending returns the number of bytes pending to be read. */ +OPENSSL_EXPORT size_t BIO_pending(const BIO *bio); + +/* BIO_ctrl_pending calls |BIO_pending| and exists only for compatibility with + * OpenSSL. */ +OPENSSL_EXPORT size_t BIO_ctrl_pending(const BIO *bio); + +/* BIO_wpending returns the number of bytes pending to be written. */ +OPENSSL_EXPORT size_t BIO_wpending(const BIO *bio); + +/* BIO_set_close sets the close flag for |bio|. The meaning of which depends on + * the type of |bio| but, for example, a memory BIO interprets the close flag + * as meaning that it owns its buffer. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int BIO_set_close(BIO *bio, int close_flag); + +/* BIO_set_callback sets a callback function that will be called before and + * after most operations. See the comment above |bio_info_cb|. */ +OPENSSL_EXPORT void BIO_set_callback(BIO *bio, bio_info_cb callback_func); + +/* BIO_set_callback_arg sets the opaque pointer value that can be read within a + * callback with |BIO_get_callback_arg|. */ +OPENSSL_EXPORT void BIO_set_callback_arg(BIO *bio, char *arg); + +/* BIO_get_callback_arg returns the last value of the opaque callback pointer + * set by |BIO_set_callback_arg|. */ +OPENSSL_EXPORT char *BIO_get_callback_arg(const BIO *bio); + +/* BIO_number_read returns the number of bytes that have been read from + * |bio|. */ +OPENSSL_EXPORT size_t BIO_number_read(const BIO *bio); + +/* BIO_number_written returns the number of bytes that have been written to + * |bio|. */ +OPENSSL_EXPORT size_t BIO_number_written(const BIO *bio); + + +/* Managing chains of BIOs. + * + * BIOs can be put into chains where the output of one is used as the input of + * the next etc. The most common case is a buffering BIO, which accepts and + * buffers writes until flushed into the next BIO in the chain. */ + +/* BIO_push adds |appended_bio| to the end of the chain with |bio| at the head. + * It returns |bio|. Note that |appended_bio| may be the head of a chain itself + * and thus this function can be used to join two chains. + * + * BIO_push takes ownership of the caller's reference to |appended_bio|. */ +OPENSSL_EXPORT BIO *BIO_push(BIO *bio, BIO *appended_bio); + +/* BIO_pop removes |bio| from the head of a chain and returns the next BIO in + * the chain, or NULL if there is no next BIO. + * + * The caller takes ownership of the chain's reference to |bio|. */ +OPENSSL_EXPORT BIO *BIO_pop(BIO *bio); + +/* BIO_next returns the next BIO in the chain after |bio|, or NULL if there is + * no such BIO. */ +OPENSSL_EXPORT BIO *BIO_next(BIO *bio); + +/* BIO_free_all calls |BIO_free|. + * + * TODO(fork): update callers and remove. */ +OPENSSL_EXPORT void BIO_free_all(BIO *bio); + +/* BIO_find_type walks a chain of BIOs and returns the first that matches + * |type|, which is one of the |BIO_TYPE_*| values. */ +OPENSSL_EXPORT BIO *BIO_find_type(BIO *bio, int type); + +/* BIO_copy_next_retry sets the retry flags and |retry_reason| of |bio| from + * the next BIO in the chain. */ +OPENSSL_EXPORT void BIO_copy_next_retry(BIO *bio); + + +/* Printf functions. + * + * These functions are versions of printf functions that output to a BIO rather + * than a FILE. */ +#ifdef __GNUC__ +#define __bio_h__attr__ __attribute__ +#else +#define __bio_h__attr__(x) +#endif +OPENSSL_EXPORT int BIO_printf(BIO *bio, const char *format, ...) + __bio_h__attr__((__format__(__printf__, 2, 3))); +#undef __bio_h__attr__ + + +/* Utility functions. */ + +/* BIO_indent prints min(|indent|, |max_indent|) spaces. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int BIO_indent(BIO *bio, unsigned indent, unsigned max_indent); + +/* BIO_hexdump writes a hex dump of |data| to |bio|. Each line will be indented + * by |indent| spaces. */ +OPENSSL_EXPORT int BIO_hexdump(BIO *bio, const uint8_t *data, size_t len, + unsigned indent); + +/* BIO_print_errors prints the current contents of the error stack to |bio| + * using human readable strings where possible. */ +OPENSSL_EXPORT void BIO_print_errors(BIO *bio); + +/* BIO_read_asn1 reads a single ASN.1 object from |bio|. If successful it sets + * |*out| to be an allocated buffer (that should be freed with |OPENSSL_free|), + * |*out_size| to the length, in bytes, of that buffer and returns one. + * Otherwise it returns zero. + * + * If the length of the object is greater than |max_len| or 2^32 then the + * function will fail. Long-form tags are not supported. If the length of the + * object is indefinite the full contents of |bio| are read, unless it would be + * greater than |max_len|, in which case the function fails. + * + * If the function fails then some unknown amount of data may have been read + * from |bio|. */ +OPENSSL_EXPORT int BIO_read_asn1(BIO *bio, uint8_t **out, size_t *out_len, + size_t max_len); + + +/* Memory BIOs. + * + * Memory BIOs can be used as a read-only source (with |BIO_new_mem_buf|) or a + * writable sink (with |BIO_new|, |BIO_s_mem| and |BIO_get_mem_buf|). Data + * written to a writable, memory BIO can be recalled by reading from it. + * + * Calling |BIO_reset| on a read-only BIO resets it to the original contents. + * On a writable BIO, it clears any data. + * + * If the close flag is set to |BIO_NOCLOSE| (not the default) then the + * underlying |BUF_MEM| will not be freed when the |BIO| is freed. + * + * Memory BIOs support |BIO_gets| and |BIO_puts|. + * + * |BIO_eof| is true if no data is in the BIO. + * + * |BIO_ctrl_pending| returns the number of bytes currently stored. */ + +/* BIO_s_mem returns a |BIO_METHOD| that uses a in-memory buffer. */ +OPENSSL_EXPORT const BIO_METHOD *BIO_s_mem(void); + +/* BIO_new_mem_buf creates BIO that reads and writes from |len| bytes at |buf|. + * It does not take ownership of |buf|. It returns the BIO or NULL on error. + * + * If |len| is negative, then |buf| is treated as a NUL-terminated string, but + * don't depend on this in new code. */ +OPENSSL_EXPORT BIO *BIO_new_mem_buf(void *buf, int len); + +/* BIO_mem_contents sets |*out_contents| to point to the current contents of + * |bio| and |*out_len| to contain the length of that data. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int BIO_mem_contents(const BIO *bio, + const uint8_t **out_contents, + size_t *out_len); + +/* BIO_get_mem_data sets |*contents| to point to the current contents of |bio| + * and returns the length of the data. + * + * WARNING: don't use this, use |BIO_mem_contents|. A return value of zero from + * this function can mean either that it failed or that the memory buffer is + * empty. */ +OPENSSL_EXPORT long BIO_get_mem_data(BIO *bio, char **contents); + +/* BIO_get_mem_ptr sets |*out| to a BUF_MEM containing the current contents of + * |bio|. It returns one on success or zero on error. */ +OPENSSL_EXPORT int BIO_get_mem_ptr(BIO *bio, BUF_MEM **out); + +/* BIO_set_mem_buf sets |b| as the contents of |bio|. If |take_ownership| is + * non-zero, then |b| will be freed when |bio| is closed. Returns one on + * success or zero otherwise. */ +OPENSSL_EXPORT int BIO_set_mem_buf(BIO *bio, BUF_MEM *b, int take_ownership); + +/* BIO_set_mem_eof_return sets the value that will be returned from reading + * |bio| when empty. If |eof_value| is zero then an empty memory BIO will + * return EOF (that is it will return zero and |BIO_should_retry| will be + * false). If |eof_value| is non zero then it will return |eof_value| when it + * is empty and it will set the read retry flag (that is |BIO_read_retry| is + * true). To avoid ambiguity with a normal positive return value, |eof_value| + * should be set to a negative value, typically -1. + * + * For a read-only BIO, the default is zero (EOF). For a writable BIO, the + * default is -1 so that additional data can be written once exhausted. */ +OPENSSL_EXPORT int BIO_set_mem_eof_return(BIO *bio, int eof_value); + + +/* File descriptor BIOs. + * + * File descriptor BIOs are wrappers around the system's |read| and |write| + * functions. If the close flag is set then then |close| is called on the + * underlying file descriptor when the BIO is freed. + * + * |BIO_reset| attempts to seek the file pointer to the start of file using + * |lseek|. + * + * |BIO_seek| sets the file pointer to position |off| from start of file using + * |lseek|. + * + * |BIO_tell| returns the current file position. */ + +/* BIO_s_fd returns a |BIO_METHOD| for file descriptor fds. */ +OPENSSL_EXPORT const BIO_METHOD *BIO_s_fd(void); + +/* BIO_new_fd creates a new file descriptor BIO wrapping |fd|. If |close_flag| + * is non-zero, then |fd| will be closed when the BIO is. */ +OPENSSL_EXPORT BIO *BIO_new_fd(int fd, int close_flag); + +/* BIO_set_fd sets the file descriptor of |bio| to |fd|. If |close_flag| is + * non-zero then |fd| will be closed when |bio| is. It returns one on success + * or zero on error. */ +OPENSSL_EXPORT int BIO_set_fd(BIO *bio, int fd, int close_flag); + +/* BIO_get_fd returns the file descriptor currently in use by |bio| or -1 if + * |bio| does not wrap a file descriptor. If there is a file descriptor and + * |out_fd| is not NULL, it also sets |*out_fd| to the file descriptor. */ +OPENSSL_EXPORT int BIO_get_fd(BIO *bio, int *out_fd); + + +/* File BIOs. + * + * File BIOs are wrappers around a C |FILE| object. + * + * |BIO_flush| on a file BIO calls |fflush| on the wrapped stream. + * + * |BIO_reset| attempts to seek the file pointer to the start of file using + * |fseek|. + * + * |BIO_seek| sets the file pointer to the given position from the start of + * file using |fseek|. + * + * |BIO_eof| calls |feof|. + * + * Setting the close flag causes |fclose| to be called on the stream when the + * BIO is freed. */ + +/* BIO_s_file returns a BIO_METHOD that wraps a |FILE|. */ +OPENSSL_EXPORT const BIO_METHOD *BIO_s_file(void); + +/* BIO_new_file creates a file BIO by opening |filename| with the given mode. + * See the |fopen| manual page for details of the mode argument. */ +OPENSSL_EXPORT BIO *BIO_new_file(const char *filename, const char *mode); + +/* BIO_new_fp creates a new file BIO that wraps the given |FILE|. If + * |close_flag| is |BIO_CLOSE|, then |fclose| will be called on |stream| when + * the BIO is closed. */ +OPENSSL_EXPORT BIO *BIO_new_fp(FILE *stream, int close_flag); + +/* BIO_get_fp sets |*out_file| to the current |FILE| for |bio|. It returns one + * on success and zero otherwise. */ +OPENSSL_EXPORT int BIO_get_fp(BIO *bio, FILE **out_file); + +/* BIO_set_fp sets the |FILE| for |bio|. If |close_flag| is |BIO_CLOSE| then + * |fclose| will be called on |file| when |bio| is closed. It returns one on + * sucess and zero otherwise. */ +OPENSSL_EXPORT int BIO_set_fp(BIO *bio, FILE *file, int close_flag); + +/* BIO_read_filename opens |filename| for reading and sets the result as the + * |FILE| for |bio|. It returns one on success and zero otherwise. The |FILE| + * will be closed when |bio| is freed. */ +OPENSSL_EXPORT int BIO_read_filename(BIO *bio, const char *filename); + +/* BIO_write_filename opens |filename| for writing and sets the result as the + * |FILE| for |bio|. It returns one on success and zero otherwise. The |FILE| + * will be closed when |bio| is freed. */ +OPENSSL_EXPORT int BIO_write_filename(BIO *bio, const char *filename); + +/* BIO_append_filename opens |filename| for appending and sets the result as + * the |FILE| for |bio|. It returns one on success and zero otherwise. The + * |FILE| will be closed when |bio| is freed. */ +OPENSSL_EXPORT int BIO_append_filename(BIO *bio, const char *filename); + +/* BIO_rw_filename opens |filename| for reading and writing and sets the result + * as the |FILE| for |bio|. It returns one on success and zero otherwise. The + * |FILE| will be closed when |bio| is freed. */ +OPENSSL_EXPORT int BIO_rw_filename(BIO *bio, const char *filename); + + +/* Buffer BIOs. + * + * Buffer BIOs are a filter-type BIO, i.e. they are designed to be used in a + * chain of BIOs. They provide buffering to reduce the number of operations on + * the underlying BIOs. */ + +OPENSSL_EXPORT const BIO_METHOD *BIO_f_buffer(void); + +/* BIO_set_read_buffer_size sets the size, in bytes, of the read buffer and + * clears it. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int BIO_set_read_buffer_size(BIO *bio, int buffer_size); + +/* BIO_set_write_buffer_size sets the size, in bytes, of the write buffer and + * clears it. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int BIO_set_write_buffer_size(BIO *bio, int buffer_size); + + +/* Socket BIOs. */ + +OPENSSL_EXPORT const BIO_METHOD *BIO_s_socket(void); + +/* BIO_new_socket allocates and initialises a fresh BIO which will read and + * write to the socket |fd|. If |close_flag| is |BIO_CLOSE| then closing the + * BIO will close |fd|. It returns the fresh |BIO| or NULL on error. */ +OPENSSL_EXPORT BIO *BIO_new_socket(int fd, int close_flag); + + +/* Connect BIOs. + * + * A connection BIO creates a network connection and transfers data over the + * resulting socket. */ + +OPENSSL_EXPORT const BIO_METHOD *BIO_s_connect(void); + +/* BIO_new_connect returns a BIO that connects to the given hostname and port. + * The |host_and_optional_port| argument should be of the form + * "www.example.com" or "www.example.com:443". If the port is omitted, it must + * be provided with |BIO_set_conn_port|. + * + * It returns the new BIO on success, or NULL on error. */ +OPENSSL_EXPORT BIO *BIO_new_connect(const char *host_and_optional_port); + +/* BIO_set_conn_hostname sets |host_and_optional_port| as the hostname and + * optional port that |bio| will connect to. If the port is omitted, it must be + * provided with |BIO_set_conn_port|. + * + * It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int BIO_set_conn_hostname(BIO *bio, + const char *host_and_optional_port); + +/* BIO_set_conn_port sets |port_str| as the port or service name that |bio| + * will connect to. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int BIO_set_conn_port(BIO *bio, const char *port_str); + +/* BIO_set_nbio sets whether |bio| will use non-blocking I/O operations. It + * returns one on success and zero otherwise. */ +OPENSSL_EXPORT int BIO_set_nbio(BIO *bio, int on); + + +/* Datagram BIOs. + * + * TODO(fork): not implemented. */ + +#define BIO_CTRL_DGRAM_QUERY_MTU 40 /* as kernel for current MTU */ + +#define BIO_CTRL_DGRAM_SET_MTU 42 /* set cached value for MTU. want to use + this if asking the kernel fails */ + +#define BIO_CTRL_DGRAM_MTU_EXCEEDED 43 /* check whether the MTU was exceed in + the previous write operation. */ + +#define BIO_CTRL_DGRAM_SET_NEXT_TIMEOUT \ + 45 /* Next DTLS handshake timeout to adjust socket timeouts */ + +#define BIO_CTRL_DGRAM_GET_PEER 46 + +#define BIO_CTRL_DGRAM_GET_FALLBACK_MTU 47 + + +/* BIO Pairs. + * + * BIO pairs provide a "loopback" like system: a pair of BIOs where data + * written to one can be read from the other and vice versa. */ + +/* BIO_new_bio_pair sets |*out1| and |*out2| to two freshly created BIOs where + * data written to one can be read from the other and vice versa. The + * |writebuf1| argument gives the size of the buffer used in |*out1| and + * |writebuf2| for |*out2|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int BIO_new_bio_pair(BIO **out1, size_t writebuf1, BIO **out2, + size_t writebuf2); + +/* BIO_new_bio_pair_external_buf is the same as |BIO_new_bio_pair| with the + * difference that the caller keeps ownership of the write buffers + * |ext_writebuf1_len| and |ext_writebuf2_len|. This is useful when using zero + * copy API for read and write operations, in cases where the buffers need to + * outlive the BIO pairs. It returns one on success and zero on error. */ +OPENSSL_EXPORT int BIO_new_bio_pair_external_buf(BIO** bio1_p, + size_t writebuf1_len, + uint8_t* ext_writebuf1, + BIO** bio2_p, + size_t writebuf2_len, + uint8_t* ext_writebuf2); + +/* BIO_ctrl_get_read_request returns the number of bytes that the other side of + * |bio| tried (unsuccessfully) to read. */ +OPENSSL_EXPORT size_t BIO_ctrl_get_read_request(BIO *bio); + +/* BIO_ctrl_get_write_guarantee returns the number of bytes that |bio| (which + * must have been returned by |BIO_new_bio_pair|) will accept on the next + * |BIO_write| call. */ +OPENSSL_EXPORT size_t BIO_ctrl_get_write_guarantee(BIO *bio); + +/* BIO_shutdown_wr marks |bio| as closed, from the point of view of the other + * side of the pair. Future |BIO_write| calls on |bio| will fail. It returns + * one on success and zero otherwise. */ +OPENSSL_EXPORT int BIO_shutdown_wr(BIO *bio); + + +/* Zero copy versions of BIO_read and BIO_write for BIO pairs. */ + +/* BIO_zero_copy_get_read_buf initiates a zero copy read operation. + * |out_read_buf| is set to the internal read buffer, and |out_buf_offset| is + * set to the current read position of |out_read_buf|. The number of bytes + * available for read from |out_read_buf| + |out_buf_offset| is returned in + * |out_available_bytes|. Note that this function might report fewer bytes + * available than |BIO_pending|, if the internal ring buffer is wrapped. It + * returns one on success. In case of error it returns zero and pushes to the + * error stack. + * + * The zero copy read operation is completed by calling + * |BIO_zero_copy_get_read_buf_done|. Neither |BIO_zero_copy_get_read_buf| nor + * any other I/O read operation may be called while a zero copy read operation + * is active. */ +OPENSSL_EXPORT int BIO_zero_copy_get_read_buf(BIO* bio, + uint8_t** out_read_buf, + size_t* out_buf_offset, + size_t* out_available_bytes); + +/* BIO_zero_copy_get_read_buf_done must be called after reading from a BIO using + * |BIO_zero_copy_get_read_buf| to finish the read operation. The |bytes_read| + * argument is the number of bytes read. + * + * It returns one on success. In case of error it returns zero and pushes to the + * error stack. */ +OPENSSL_EXPORT int BIO_zero_copy_get_read_buf_done(BIO* bio, size_t bytes_read); + +/* BIO_zero_copy_get_write_buf initiates a zero copy write operation. + * |out_write_buf| is set to to the internal write buffer, and |out_buf_offset| + * is set to the current write position of |out_write_buf|. + * The number of bytes available for write from |out_write_buf| + + * |out_buf_offset| is returned in |out_available_bytes|. Note that this + * function might report fewer bytes available than + * |BIO_ctrl_get_write_guarantee|, if the internal buffer is wrapped. It returns + * one on success. In case of error it returns zero and pushes to the error + * stack. + * + * The zero copy write operation is completed by calling + * |BIO_zero_copy_get_write_buf_done|. Neither |BIO_zero_copy_get_write_buf| + * nor any other I/O write operation may be called while a zero copy write + * operation is active. */ +OPENSSL_EXPORT int BIO_zero_copy_get_write_buf(BIO* bio, + uint8_t** out_write_buf, + size_t* out_buf_offset, + size_t* out_available_bytes); + +/* BIO_zero_copy_get_write_buf_done must be called after writing to a BIO using + * |BIO_zero_copy_get_write_buf| to finish the write operation. The + * |bytes_written| argument gives the number of bytes written. + * + * It returns one on success. In case of error it returns zero and pushes to the + * error stack. */ +OPENSSL_EXPORT int BIO_zero_copy_get_write_buf_done(BIO* bio, + size_t bytes_written); + + +/* BIO_NOCLOSE and |BIO_CLOSE| can be used as symbolic arguments when a "close + * flag" is passed to a BIO function. */ +#define BIO_NOCLOSE 0 +#define BIO_CLOSE 1 + +/* These are passed to the BIO callback */ +#define BIO_CB_FREE 0x01 +#define BIO_CB_READ 0x02 +#define BIO_CB_WRITE 0x03 +#define BIO_CB_PUTS 0x04 +#define BIO_CB_GETS 0x05 +#define BIO_CB_CTRL 0x06 + +/* The callback is called before and after the underling operation, + * The BIO_CB_RETURN flag indicates if it is after the call */ +#define BIO_CB_RETURN 0x80 + +/* These are values of the |cmd| argument to |BIO_ctrl|. */ +#define BIO_CTRL_RESET 1 /* opt - rewind/zero etc */ +#define BIO_CTRL_EOF 2 /* opt - are we at the eof */ +#define BIO_CTRL_INFO 3 /* opt - extra tit-bits */ +#define BIO_CTRL_SET 4 /* man - set the 'IO' type */ +#define BIO_CTRL_GET 5 /* man - get the 'IO' type */ +#define BIO_CTRL_GET_CLOSE 8 /* man - set the 'close' on free */ +#define BIO_CTRL_SET_CLOSE 9 /* man - set the 'close' on free */ +#define BIO_CTRL_PENDING 10 /* opt - is their more data buffered */ +#define BIO_CTRL_FLUSH 11 /* opt - 'flush' buffered output */ +#define BIO_CTRL_WPENDING 13 /* opt - number of bytes still to write */ +/* callback is int cb(BIO *bio,state,ret); */ +#define BIO_CTRL_SET_CALLBACK 14 /* opt - set callback function */ +#define BIO_CTRL_GET_CALLBACK 15 /* opt - set callback function */ +#define BIO_CTRL_SET_FILENAME 30 /* BIO_s_file special */ + + +/* Android compatibility section. + * + * A previous version of BoringSSL used in Android renamed ERR_print_errors_fp + * to BIO_print_errors_fp. It has subsequently been renamed back to + * ERR_print_errors_fp. */ +#define BIO_print_errors_fp ERR_print_errors_fp + + +/* Deprecated functions. */ + +/* BIO_f_base64 returns a filter |BIO| that base64-encodes data written into + * it, and decodes data read from it. |BIO_gets| is not supported. Call + * |BIO_flush| when done writing, to signal that no more data are to be + * encoded. The flag |BIO_FLAGS_BASE64_NO_NL| may be set to encode all the data + * on one line. */ +OPENSSL_EXPORT const BIO_METHOD *BIO_f_base64(void); + +/* ERR_print_errors is an alias for |BIO_print_errors|. */ +OPENSSL_EXPORT void ERR_print_errors(BIO *bio); + + +/* Private functions */ + +#define BIO_FLAGS_READ 0x01 +#define BIO_FLAGS_WRITE 0x02 +#define BIO_FLAGS_IO_SPECIAL 0x04 +#define BIO_FLAGS_RWS (BIO_FLAGS_READ | BIO_FLAGS_WRITE | BIO_FLAGS_IO_SPECIAL) +#define BIO_FLAGS_SHOULD_RETRY 0x08 +#define BIO_FLAGS_BASE64_NO_NL 0x100 +/* This is used with memory BIOs: it means we shouldn't free up or change the + * data in any way. */ +#define BIO_FLAGS_MEM_RDONLY 0x200 + +/* These are the 'types' of BIOs */ +#define BIO_TYPE_NONE 0 +#define BIO_TYPE_MEM (1 | 0x0400) +#define BIO_TYPE_FILE (2 | 0x0400) +#define BIO_TYPE_FD (4 | 0x0400 | 0x0100) +#define BIO_TYPE_SOCKET (5 | 0x0400 | 0x0100) +#define BIO_TYPE_NULL (6 | 0x0400) +#define BIO_TYPE_SSL (7 | 0x0200) +#define BIO_TYPE_MD (8 | 0x0200) /* passive filter */ +#define BIO_TYPE_BUFFER (9 | 0x0200) /* filter */ +#define BIO_TYPE_CIPHER (10 | 0x0200) /* filter */ +#define BIO_TYPE_BASE64 (11 | 0x0200) /* filter */ +#define BIO_TYPE_CONNECT (12 | 0x0400 | 0x0100) /* socket - connect */ +#define BIO_TYPE_ACCEPT (13 | 0x0400 | 0x0100) /* socket for accept */ +#define BIO_TYPE_PROXY_CLIENT (14 | 0x0200) /* client proxy BIO */ +#define BIO_TYPE_PROXY_SERVER (15 | 0x0200) /* server proxy BIO */ +#define BIO_TYPE_NBIO_TEST (16 | 0x0200) /* server proxy BIO */ +#define BIO_TYPE_NULL_FILTER (17 | 0x0200) +#define BIO_TYPE_BER (18 | 0x0200) /* BER -> bin filter */ +#define BIO_TYPE_BIO (19 | 0x0400) /* (half a) BIO pair */ +#define BIO_TYPE_LINEBUFFER (20 | 0x0200) /* filter */ +#define BIO_TYPE_DGRAM (21 | 0x0400 | 0x0100) +#define BIO_TYPE_ASN1 (22 | 0x0200) /* filter */ +#define BIO_TYPE_COMP (23 | 0x0200) /* filter */ + +#define BIO_TYPE_DESCRIPTOR 0x0100 /* socket, fd, connect or accept */ +#define BIO_TYPE_FILTER 0x0200 +#define BIO_TYPE_SOURCE_SINK 0x0400 + +struct bio_method_st { + int type; + const char *name; + int (*bwrite)(BIO *, const char *, int); + int (*bread)(BIO *, char *, int); + /* TODO(fork): remove bputs. */ + int (*bputs)(BIO *, const char *); + int (*bgets)(BIO *, char *, int); + long (*ctrl)(BIO *, int, long, void *); + int (*create)(BIO *); + int (*destroy)(BIO *); + long (*callback_ctrl)(BIO *, int, bio_info_cb); +}; + +struct bio_st { + const BIO_METHOD *method; + /* bio, mode, argp, argi, argl, ret */ + long (*callback)(BIO *, int, const char *, int, long, long); + char *cb_arg; /* first argument for the callback */ + + /* init is non-zero if this |BIO| has been initialised. */ + int init; + /* shutdown is often used by specific |BIO_METHOD|s to determine whether + * they own some underlying resource. This flag can often by controlled by + * |BIO_set_close|. For example, whether an fd BIO closes the underlying fd + * when it, itself, is closed. */ + int shutdown; + int flags; + int retry_reason; + /* num is a BIO-specific value. For example, in fd BIOs it's used to store a + * file descriptor. */ + int num; + CRYPTO_refcount_t references; + void *ptr; + /* next_bio points to the next |BIO| in a chain. This |BIO| owns a reference + * to |next_bio|. */ + BIO *next_bio; /* used by filter BIOs */ + size_t num_read, num_write; +}; + +#define BIO_C_SET_CONNECT 100 +#define BIO_C_DO_STATE_MACHINE 101 +#define BIO_C_SET_NBIO 102 +#define BIO_C_SET_PROXY_PARAM 103 +#define BIO_C_SET_FD 104 +#define BIO_C_GET_FD 105 +#define BIO_C_SET_FILE_PTR 106 +#define BIO_C_GET_FILE_PTR 107 +#define BIO_C_SET_FILENAME 108 +#define BIO_C_SET_SSL 109 +#define BIO_C_GET_SSL 110 +#define BIO_C_SET_MD 111 +#define BIO_C_GET_MD 112 +#define BIO_C_GET_CIPHER_STATUS 113 +#define BIO_C_SET_BUF_MEM 114 +#define BIO_C_GET_BUF_MEM_PTR 115 +#define BIO_C_GET_BUFF_NUM_LINES 116 +#define BIO_C_SET_BUFF_SIZE 117 +#define BIO_C_SET_ACCEPT 118 +#define BIO_C_SSL_MODE 119 +#define BIO_C_GET_MD_CTX 120 +#define BIO_C_GET_PROXY_PARAM 121 +#define BIO_C_SET_BUFF_READ_DATA 122 /* data to read first */ +#define BIO_C_GET_ACCEPT 124 +#define BIO_C_SET_SSL_RENEGOTIATE_BYTES 125 +#define BIO_C_GET_SSL_NUM_RENEGOTIATES 126 +#define BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT 127 +#define BIO_C_FILE_SEEK 128 +#define BIO_C_GET_CIPHER_CTX 129 +#define BIO_C_SET_BUF_MEM_EOF_RETURN 130/*return end of input value*/ +#define BIO_C_SET_BIND_MODE 131 +#define BIO_C_GET_BIND_MODE 132 +#define BIO_C_FILE_TELL 133 +#define BIO_C_GET_SOCKS 134 +#define BIO_C_SET_SOCKS 135 + +#define BIO_C_SET_WRITE_BUF_SIZE 136/* for BIO_s_bio */ +#define BIO_C_GET_WRITE_BUF_SIZE 137 +#define BIO_C_GET_WRITE_GUARANTEE 140 +#define BIO_C_GET_READ_REQUEST 141 +#define BIO_C_SHUTDOWN_WR 142 +#define BIO_C_NREAD0 143 +#define BIO_C_NREAD 144 +#define BIO_C_NWRITE0 145 +#define BIO_C_NWRITE 146 +#define BIO_C_RESET_READ_REQUEST 147 +#define BIO_C_SET_MD_CTX 148 + +#define BIO_C_SET_PREFIX 149 +#define BIO_C_GET_PREFIX 150 +#define BIO_C_SET_SUFFIX 151 +#define BIO_C_GET_SUFFIX 152 + +#define BIO_C_SET_EX_ARG 153 +#define BIO_C_GET_EX_ARG 154 + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define BIO_R_BAD_FOPEN_MODE 100 +#define BIO_R_BROKEN_PIPE 101 +#define BIO_R_CONNECT_ERROR 102 +#define BIO_R_ERROR_SETTING_NBIO 103 +#define BIO_R_INVALID_ARGUMENT 104 +#define BIO_R_IN_USE 105 +#define BIO_R_KEEPALIVE 106 +#define BIO_R_NBIO_CONNECT_ERROR 107 +#define BIO_R_NO_HOSTNAME_SPECIFIED 108 +#define BIO_R_NO_PORT_SPECIFIED 109 +#define BIO_R_NO_SUCH_FILE 110 +#define BIO_R_NULL_PARAMETER 111 +#define BIO_R_SYS_LIB 112 +#define BIO_R_UNABLE_TO_CREATE_SOCKET 113 +#define BIO_R_UNINITIALIZED 114 +#define BIO_R_UNSUPPORTED_METHOD 115 +#define BIO_R_WRITE_TO_READ_ONLY_BIO 116 + +#endif /* OPENSSL_HEADER_BIO_H */ diff --git a/project/jni/boringssl/include/openssl/blowfish.h b/project/jni/boringssl/include/openssl/blowfish.h new file mode 100644 index 000000000..fa60d5336 --- /dev/null +++ b/project/jni/boringssl/include/openssl/blowfish.h @@ -0,0 +1,93 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_BLOWFISH_H +#define OPENSSL_HEADER_BLOWFISH_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +#define BF_ENCRYPT 1 +#define BF_DECRYPT 0 + +#define BF_ROUNDS 16 +#define BF_BLOCK 8 + +typedef struct bf_key_st { + uint32_t P[BF_ROUNDS + 2]; + uint32_t S[4 * 256]; +} BF_KEY; + +OPENSSL_EXPORT void BF_set_key(BF_KEY *key, size_t len, const uint8_t *data); +OPENSSL_EXPORT void BF_encrypt(uint32_t *data, const BF_KEY *key); +OPENSSL_EXPORT void BF_decrypt(uint32_t *data, const BF_KEY *key); + +OPENSSL_EXPORT void BF_ecb_encrypt(const uint8_t *in, uint8_t *out, + const BF_KEY *key, int enc); +OPENSSL_EXPORT void BF_cbc_encrypt(const uint8_t *in, uint8_t *out, long length, + const BF_KEY *schedule, uint8_t *ivec, + int enc); + + +#ifdef __cplusplus +} +#endif + +#endif /* OPENSSL_HEADER_BLOWFISH_H */ diff --git a/project/jni/boringssl/include/openssl/bn.h b/project/jni/boringssl/include/openssl/bn.h new file mode 100644 index 000000000..6e971e48f --- /dev/null +++ b/project/jni/boringssl/include/openssl/bn.h @@ -0,0 +1,888 @@ +/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * + * Portions of the attached software ("Contribution") are developed by + * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + * + * The Contribution is licensed pursuant to the Eric Young open source + * license provided above. + * + * The binary polynomial arithmetic software is originally written by + * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems + * Laboratories. */ + +#ifndef OPENSSL_HEADER_BN_H +#define OPENSSL_HEADER_BN_H + +#include +#include + +#include /* for PRIu64 and friends */ +#include /* for FILE* */ + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* BN provides support for working with arbitary sized integers. For example, + * although the largest integer supported by the compiler might be 64 bits, BN + * will allow you to work with numbers until you run out of memory. */ + + +/* BN_ULONG is the native word size when working with big integers. + * + * Note: on some platforms, inttypes.h does not define print format macros in + * C++ unless |__STDC_FORMAT_MACROS| defined. As this is a public header, bn.h + * does not define |__STDC_FORMAT_MACROS| itself. C++ source files which use the + * FMT macros must define it externally. */ +#if defined(OPENSSL_64_BIT) +#define BN_ULONG uint64_t +#define BN_BITS2 64 +#define BN_DEC_FMT1 "%" PRIu64 +#define BN_DEC_FMT2 "%019" PRIu64 +#define BN_HEX_FMT1 "%" PRIx64 +#elif defined(OPENSSL_32_BIT) +#define BN_ULONG uint32_t +#define BN_BITS2 32 +#define BN_DEC_FMT1 "%" PRIu32 +#define BN_DEC_FMT2 "%09" PRIu32 +#define BN_HEX_FMT1 "%" PRIx32 +#else +#error "Must define either OPENSSL_32_BIT or OPENSSL_64_BIT" +#endif + + +/* Allocation and freeing. */ + +/* BN_new creates a new, allocated BIGNUM and initialises it. */ +OPENSSL_EXPORT BIGNUM *BN_new(void); + +/* BN_init initialises a stack allocated |BIGNUM|. */ +OPENSSL_EXPORT void BN_init(BIGNUM *bn); + +/* BN_free frees the data referenced by |bn| and, if |bn| was originally + * allocated on the heap, frees |bn| also. */ +OPENSSL_EXPORT void BN_free(BIGNUM *bn); + +/* BN_clear_free erases and frees the data referenced by |bn| and, if |bn| was + * originally allocated on the heap, frees |bn| also. */ +OPENSSL_EXPORT void BN_clear_free(BIGNUM *bn); + +/* BN_dup allocates a new BIGNUM and sets it equal to |src|. It returns the + * allocated BIGNUM on success or NULL otherwise. */ +OPENSSL_EXPORT BIGNUM *BN_dup(const BIGNUM *src); + +/* BN_copy sets |dest| equal to |src| and returns |dest| or NULL on allocation + * failure. */ +OPENSSL_EXPORT BIGNUM *BN_copy(BIGNUM *dest, const BIGNUM *src); + +/* BN_clear sets |bn| to zero and erases the old data. */ +OPENSSL_EXPORT void BN_clear(BIGNUM *bn); + +/* BN_value_one returns a static BIGNUM with value 1. */ +OPENSSL_EXPORT const BIGNUM *BN_value_one(void); + +/* BN_with_flags initialises a stack allocated |BIGNUM| with pointers to the + * contents of |in| but with |flags| ORed into the flags field. + * + * Note: the two BIGNUMs share state and so |out| should /not/ be passed to + * |BN_free|. */ +OPENSSL_EXPORT void BN_with_flags(BIGNUM *out, const BIGNUM *in, int flags); + + +/* Basic functions. */ + +/* BN_num_bits returns the minimum number of bits needed to represent the + * absolute value of |bn|. */ +OPENSSL_EXPORT unsigned BN_num_bits(const BIGNUM *bn); + +/* BN_num_bytes returns the minimum number of bytes needed to represent the + * absolute value of |bn|. */ +OPENSSL_EXPORT unsigned BN_num_bytes(const BIGNUM *bn); + +/* BN_zero sets |bn| to zero. */ +OPENSSL_EXPORT void BN_zero(BIGNUM *bn); + +/* BN_one sets |bn| to one. It returns one on success or zero on allocation + * failure. */ +OPENSSL_EXPORT int BN_one(BIGNUM *bn); + +/* BN_set_word sets |bn| to |value|. It returns one on success or zero on + * allocation failure. */ +OPENSSL_EXPORT int BN_set_word(BIGNUM *bn, BN_ULONG value); + +/* BN_set_negative sets the sign of |bn|. */ +OPENSSL_EXPORT void BN_set_negative(BIGNUM *bn, int sign); + +/* BN_is_negative returns one if |bn| is negative and zero otherwise. */ +OPENSSL_EXPORT int BN_is_negative(const BIGNUM *bn); + +/* BN_get_flags returns |bn->flags| & |flags|. */ +OPENSSL_EXPORT int BN_get_flags(const BIGNUM *bn, int flags); + +/* BN_set_flags sets |flags| on |bn|. */ +OPENSSL_EXPORT void BN_set_flags(BIGNUM *bn, int flags); + + +/* Conversion functions. */ + +/* BN_bin2bn sets |*ret| to the value of |len| bytes from |in|, interpreted as + * a big-endian number, and returns |ret|. If |ret| is NULL then a fresh + * |BIGNUM| is allocated and returned. It returns NULL on allocation + * failure. */ +OPENSSL_EXPORT BIGNUM *BN_bin2bn(const uint8_t *in, size_t len, BIGNUM *ret); + +/* BN_bn2bin serialises the absolute value of |in| to |out| as a big-endian + * integer, which must have |BN_num_bytes| of space available. It returns the + * number of bytes written. */ +OPENSSL_EXPORT size_t BN_bn2bin(const BIGNUM *in, uint8_t *out); + +/* BN_bn2bin_padded serialises the absolute value of |in| to |out| as a + * big-endian integer. The integer is padded with leading zeros up to size + * |len|. If |len| is smaller than |BN_num_bytes|, the function fails and + * returns 0. Otherwise, it returns 1. */ +OPENSSL_EXPORT int BN_bn2bin_padded(uint8_t *out, size_t len, const BIGNUM *in); + +/* BN_bn2cbb_padded behaves like |BN_bn2bin_padded| but writes to a |CBB|. */ +OPENSSL_EXPORT int BN_bn2cbb_padded(CBB *out, size_t len, const BIGNUM *in); + +/* BN_bn2hex returns an allocated string that contains a NUL-terminated, hex + * representation of |bn|. If |bn| is negative, the first char in the resulting + * string will be '-'. Returns NULL on allocation failure. */ +OPENSSL_EXPORT char *BN_bn2hex(const BIGNUM *bn); + +/* BN_hex2bn parses the leading hex number from |in|, which may be proceeded by + * a '-' to indicate a negative number and may contain trailing, non-hex data. + * If |outp| is not NULL, it constructs a BIGNUM equal to the hex number and + * stores it in |*outp|. If |*outp| is NULL then it allocates a new BIGNUM and + * updates |*outp|. It returns the number of bytes of |in| processed or zero on + * error. */ +OPENSSL_EXPORT int BN_hex2bn(BIGNUM **outp, const char *in); + +/* BN_bn2dec returns an allocated string that contains a NUL-terminated, + * decimal representation of |bn|. If |bn| is negative, the first char in the + * resulting string will be '-'. Returns NULL on allocation failure. */ +OPENSSL_EXPORT char *BN_bn2dec(const BIGNUM *a); + +/* BN_dec2bn parses the leading decimal number from |in|, which may be + * proceeded by a '-' to indicate a negative number and may contain trailing, + * non-decimal data. If |outp| is not NULL, it constructs a BIGNUM equal to the + * decimal number and stores it in |*outp|. If |*outp| is NULL then it + * allocates a new BIGNUM and updates |*outp|. It returns the number of bytes + * of |in| processed or zero on error. */ +OPENSSL_EXPORT int BN_dec2bn(BIGNUM **outp, const char *in); + +/* BN_asc2bn acts like |BN_dec2bn| or |BN_hex2bn| depending on whether |in| + * begins with "0X" or "0x" (indicating hex) or not (indicating decimal). A + * leading '-' is still permitted and comes before the optional 0X/0x. It + * returns one on success or zero on error. */ +OPENSSL_EXPORT int BN_asc2bn(BIGNUM **outp, const char *in); + +/* BN_print writes a hex encoding of |a| to |bio|. It returns one on success + * and zero on error. */ +OPENSSL_EXPORT int BN_print(BIO *bio, const BIGNUM *a); + +/* BN_print_fp acts like |BIO_print|, but wraps |fp| in a |BIO| first. */ +OPENSSL_EXPORT int BN_print_fp(FILE *fp, const BIGNUM *a); + +/* BN_get_word returns the absolute value of |bn| as a single word. If |bn| is + * too large to be represented as a single word, the maximum possible value + * will be returned. */ +OPENSSL_EXPORT BN_ULONG BN_get_word(const BIGNUM *bn); + + +/* ASN.1 functions. */ + +/* BN_cbs2unsigned parses a non-negative DER INTEGER from |cbs| writes the + * result to |ret|. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int BN_cbs2unsigned(CBS *cbs, BIGNUM *ret); + +/* BN_cbs2unsigned_buggy acts like |BN_cbs2unsigned| but tolerates some invalid + * encodings. Do not use this function. */ +OPENSSL_EXPORT int BN_cbs2unsigned_buggy(CBS *cbs, BIGNUM *ret); + +/* BN_bn2cbb marshals |bn| as a non-negative DER INTEGER and appends the result + * to |cbb|. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int BN_bn2cbb(CBB *cbb, const BIGNUM *bn); + + +/* Internal functions. + * + * These functions are useful for code that is doing low-level manipulations of + * BIGNUM values. However, be sure that no other function in this file does + * what you want before turning to these. */ + +/* bn_correct_top decrements |bn->top| until |bn->d[top-1]| is non-zero or + * until |top| is zero. */ +OPENSSL_EXPORT void bn_correct_top(BIGNUM *bn); + +/* bn_wexpand ensures that |bn| has at least |words| works of space without + * altering its value. It returns one on success or zero on allocation + * failure. */ +OPENSSL_EXPORT BIGNUM *bn_wexpand(BIGNUM *bn, size_t words); + + +/* BIGNUM pools. + * + * Certain BIGNUM operations need to use many temporary variables and + * allocating and freeing them can be quite slow. Thus such opertions typically + * take a |BN_CTX| parameter, which contains a pool of |BIGNUMs|. The |ctx| + * argument to a public function may be NULL, in which case a local |BN_CTX| + * will be created just for the lifetime of that call. + * + * A function must call |BN_CTX_start| first. Then, |BN_CTX_get| may be called + * repeatedly to obtain temporary |BIGNUM|s. All |BN_CTX_get| calls must be made + * before calling any other functions that use the |ctx| as an argument. + * + * Finally, |BN_CTX_end| must be called before returning from the function. + * When |BN_CTX_end| is called, the |BIGNUM| pointers obtained from + * |BN_CTX_get| become invalid. */ + +/* BN_CTX_new returns a new, empty BN_CTX or NULL on allocation failure. */ +OPENSSL_EXPORT BN_CTX *BN_CTX_new(void); + +/* BN_CTX_free frees all BIGNUMs contained in |ctx| and then frees |ctx| + * itself. */ +OPENSSL_EXPORT void BN_CTX_free(BN_CTX *ctx); + +/* BN_CTX_start "pushes" a new entry onto the |ctx| stack and allows future + * calls to |BN_CTX_get|. */ +OPENSSL_EXPORT void BN_CTX_start(BN_CTX *ctx); + +/* BN_CTX_get returns a new |BIGNUM|, or NULL on allocation failure. Once + * |BN_CTX_get| has returned NULL, all future calls will also return NULL until + * |BN_CTX_end| is called. */ +OPENSSL_EXPORT BIGNUM *BN_CTX_get(BN_CTX *ctx); + +/* BN_CTX_end invalidates all |BIGNUM|s returned from |BN_CTX_get| since the + * matching |BN_CTX_start| call. */ +OPENSSL_EXPORT void BN_CTX_end(BN_CTX *ctx); + + +/* Simple arithmetic */ + +/* BN_add sets |r| = |a| + |b|, where |r| may be the same pointer as either |a| + * or |b|. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); + +/* BN_uadd sets |r| = |a| + |b|, where |a| and |b| are non-negative and |r| may + * be the same pointer as either |a| or |b|. It returns one on success and zero + * on allocation failure. */ +OPENSSL_EXPORT int BN_uadd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); + +/* BN_add_word adds |w| to |a|. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int BN_add_word(BIGNUM *a, BN_ULONG w); + +/* BN_sub sets |r| = |a| - |b|, where |r| must be a distinct pointer from |a| + * and |b|. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); + +/* BN_usub sets |r| = |a| - |b|, where |a| and |b| are non-negative integers, + * |b| < |a| and |r| must be a distinct pointer from |a| and |b|. It returns + * one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); + +/* BN_sub_word subtracts |w| from |a|. It returns one on success and zero on + * allocation failure. */ +OPENSSL_EXPORT int BN_sub_word(BIGNUM *a, BN_ULONG w); + +/* BN_mul sets |r| = |a| * |b|, where |r| may be the same pointer as |a| or + * |b|. Returns one on success and zero otherwise. */ +OPENSSL_EXPORT int BN_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + BN_CTX *ctx); + +/* BN_mul_word sets |bn| = |bn| * |w|. It returns one on success or zero on + * allocation failure. */ +OPENSSL_EXPORT int BN_mul_word(BIGNUM *bn, BN_ULONG w); + +/* BN_sqr sets |r| = |a|^2 (i.e. squares), where |r| may be the same pointer as + * |a|. Returns one on success and zero otherwise. This is more efficient than + * BN_mul(r, a, a, ctx). */ +OPENSSL_EXPORT int BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx); + +/* BN_div divides |numerator| by |divisor| and places the result in |quotient| + * and the remainder in |rem|. Either of |quotient| or |rem| may be NULL, in + * which case the respective value is not returned. The result is rounded + * towards zero; thus if |numerator| is negative, the remainder will be zero or + * negative. It returns one on success or zero on error. */ +OPENSSL_EXPORT int BN_div(BIGNUM *quotient, BIGNUM *rem, + const BIGNUM *numerator, const BIGNUM *divisor, + BN_CTX *ctx); + +/* BN_div_word sets |numerator| = |numerator|/|divisor| and returns the + * remainder or (BN_ULONG)-1 on error. */ +OPENSSL_EXPORT BN_ULONG BN_div_word(BIGNUM *numerator, BN_ULONG divisor); + +/* BN_sqrt sets |*out_sqrt| (which may be the same |BIGNUM| as |in|) to the + * square root of |in|, using |ctx|. It returns one on success or zero on + * error. Negative numbers and non-square numbers will result in an error with + * appropriate errors on the error queue. */ +OPENSSL_EXPORT int BN_sqrt(BIGNUM *out_sqrt, const BIGNUM *in, BN_CTX *ctx); + + +/* Comparison functions */ + +/* BN_cmp returns a value less than, equal to or greater than zero if |a| is + * less than, equal to or greater than |b|, respectively. */ +OPENSSL_EXPORT int BN_cmp(const BIGNUM *a, const BIGNUM *b); + +/* BN_ucmp returns a value less than, equal to or greater than zero if the + * absolute value of |a| is less than, equal to or greater than the absolute + * value of |b|, respectively. */ +OPENSSL_EXPORT int BN_ucmp(const BIGNUM *a, const BIGNUM *b); + +/* BN_abs_is_word returns one if the absolute value of |bn| equals |w| and zero + * otherwise. */ +OPENSSL_EXPORT int BN_abs_is_word(const BIGNUM *bn, BN_ULONG w); + +/* BN_is_zero returns one if |bn| is zero and zero otherwise. */ +OPENSSL_EXPORT int BN_is_zero(const BIGNUM *bn); + +/* BN_is_one returns one if |bn| equals one and zero otherwise. */ +OPENSSL_EXPORT int BN_is_one(const BIGNUM *bn); + +/* BN_is_word returns one if |bn| is exactly |w| and zero otherwise. */ +OPENSSL_EXPORT int BN_is_word(const BIGNUM *bn, BN_ULONG w); + +/* BN_is_odd returns one if |bn| is odd and zero otherwise. */ +OPENSSL_EXPORT int BN_is_odd(const BIGNUM *bn); + + +/* Bitwise operations. */ + +/* BN_lshift sets |r| equal to |a| << n. The |a| and |r| arguments may be the + * same |BIGNUM|. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_lshift(BIGNUM *r, const BIGNUM *a, int n); + +/* BN_lshift1 sets |r| equal to |a| << 1, where |r| and |a| may be the same + * pointer. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_lshift1(BIGNUM *r, const BIGNUM *a); + +/* BN_rshift sets |r| equal to |a| >> n, where |r| and |a| may be the same + * pointer. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_rshift(BIGNUM *r, const BIGNUM *a, int n); + +/* BN_rshift1 sets |r| equal to |a| >> 1, where |r| and |a| may be the same + * pointer. It returns one on success and zero on allocation failure. */ +OPENSSL_EXPORT int BN_rshift1(BIGNUM *r, const BIGNUM *a); + +/* BN_set_bit sets the |n|th, least-significant bit in |a|. For example, if |a| + * is 2 then setting bit zero will make it 3. It returns one on success or zero + * on allocation failure. */ +OPENSSL_EXPORT int BN_set_bit(BIGNUM *a, int n); + +/* BN_clear_bit clears the |n|th, least-significant bit in |a|. For example, if + * |a| is 3, clearing bit zero will make it two. It returns one on success or + * zero on allocation failure. */ +OPENSSL_EXPORT int BN_clear_bit(BIGNUM *a, int n); + +/* BN_is_bit_set returns the value of the |n|th, least-significant bit in |a|, + * or zero if the bit doesn't exist. */ +OPENSSL_EXPORT int BN_is_bit_set(const BIGNUM *a, int n); + +/* BN_mask_bits truncates |a| so that it is only |n| bits long. It returns one + * on success or zero if |n| is greater than the length of |a| already. */ +OPENSSL_EXPORT int BN_mask_bits(BIGNUM *a, int n); + + +/* Modulo arithmetic. */ + +/* BN_mod_word returns |a| mod |w|. */ +OPENSSL_EXPORT BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w); + +/* BN_mod is a helper macro that calls |BN_div| and discards the quotient. */ +#define BN_mod(rem, numerator, divisor, ctx) \ + BN_div(NULL, (rem), (numerator), (divisor), (ctx)) + +/* BN_nnmod is a non-negative modulo function. It acts like |BN_mod|, but 0 <= + * |rem| < |divisor| is always true. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int BN_nnmod(BIGNUM *rem, const BIGNUM *numerator, + const BIGNUM *divisor, BN_CTX *ctx); + +/* BN_mod_add sets |r| = |a| + |b| mod |m|. It returns one on success and zero + * on error. */ +OPENSSL_EXPORT int BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m, BN_CTX *ctx); + +/* BN_mod_add_quick acts like |BN_mod_add| but requires that |a| and |b| be + * non-negative and less than |m|. */ +OPENSSL_EXPORT int BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m); + +/* BN_mod_sub sets |r| = |a| - |b| mod |m|. It returns one on success and zero + * on error. */ +OPENSSL_EXPORT int BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m, BN_CTX *ctx); + +/* BN_mod_sub_quick acts like |BN_mod_sub| but requires that |a| and |b| be + * non-negative and less than |m|. */ +OPENSSL_EXPORT int BN_mod_sub_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m); + +/* BN_mod_mul sets |r| = |a|*|b| mod |m|. It returns one on success and zero + * on error. */ +OPENSSL_EXPORT int BN_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m, BN_CTX *ctx); + +/* BN_mod_sqr sets |r| = |a|^2 mod |m|. It returns one on success and zero + * on error. */ +OPENSSL_EXPORT int BN_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, + BN_CTX *ctx); + +/* BN_mod_lshift sets |r| = (|a| << n) mod |m|, where |r| and |a| may be the + * same pointer. It returns one on success and zero on error. */ +OPENSSL_EXPORT int BN_mod_lshift(BIGNUM *r, const BIGNUM *a, int n, + const BIGNUM *m, BN_CTX *ctx); + +/* BN_mod_lshift_quick acts like |BN_mod_lshift| but requires that |a| be + * non-negative and less than |m|. */ +OPENSSL_EXPORT int BN_mod_lshift_quick(BIGNUM *r, const BIGNUM *a, int n, + const BIGNUM *m); + +/* BN_mod_lshift1 sets |r| = (|a| << 1) mod |m|, where |r| and |a| may be the + * same pointer. It returns one on success and zero on error. */ +OPENSSL_EXPORT int BN_mod_lshift1(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, + BN_CTX *ctx); + +/* BN_mod_lshift1_quick acts like |BN_mod_lshift1| but requires that |a| be + * non-negative and less than |m|. */ +OPENSSL_EXPORT int BN_mod_lshift1_quick(BIGNUM *r, const BIGNUM *a, + const BIGNUM *m); + +/* BN_mod_sqrt returns a |BIGNUM|, r, such that r^2 == a (mod p). */ +OPENSSL_EXPORT BIGNUM *BN_mod_sqrt(BIGNUM *in, const BIGNUM *a, const BIGNUM *p, + BN_CTX *ctx); + + +/* Random and prime number generation. */ + +/* BN_rand sets |rnd| to a random number of length |bits|. If |top| is zero, the + * most-significant bit, if any, will be set. If |top| is one, the two most + * significant bits, if any, will be set. + * + * If |top| is -1 then no extra action will be taken and |BN_num_bits(rnd)| may + * not equal |bits| if the most significant bits randomly ended up as zeros. + * + * If |bottom| is non-zero, the least-significant bit, if any, will be set. The + * function returns one on success or zero otherwise. */ +OPENSSL_EXPORT int BN_rand(BIGNUM *rnd, int bits, int top, int bottom); + +/* BN_pseudo_rand is an alias for |BN_rand|. */ +OPENSSL_EXPORT int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom); + +/* BN_rand_range sets |rnd| to a random value [0..range). It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int BN_rand_range(BIGNUM *rnd, const BIGNUM *range); + +/* BN_pseudo_rand_range is an alias for BN_rand_range. */ +OPENSSL_EXPORT int BN_pseudo_rand_range(BIGNUM *rnd, const BIGNUM *range); + +/* BN_generate_dsa_nonce generates a random number 0 <= out < range. Unlike + * BN_rand_range, it also includes the contents of |priv| and |message| in the + * generation so that an RNG failure isn't fatal as long as |priv| remains + * secret. This is intended for use in DSA and ECDSA where an RNG weakness + * leads directly to private key exposure unless this function is used. + * It returns one on success and zero on error. */ +OPENSSL_EXPORT int BN_generate_dsa_nonce(BIGNUM *out, const BIGNUM *range, + const BIGNUM *priv, + const uint8_t *message, + size_t message_len, BN_CTX *ctx); + +/* BN_GENCB holds a callback function that is used by generation functions that + * can take a very long time to complete. Use |BN_GENCB_set| to initialise a + * |BN_GENCB| structure. + * + * The callback receives the address of that |BN_GENCB| structure as its last + * argument and the user is free to put an arbitary pointer in |arg|. The other + * arguments are set as follows: + * event=BN_GENCB_GENERATED, n=i: after generating the i'th possible prime + * number. + * event=BN_GENCB_PRIME_TEST, n=-1: when finished trial division primality + * checks. + * event=BN_GENCB_PRIME_TEST, n=i: when the i'th primality test has finished. + * + * The callback can return zero to abort the generation progress or one to + * allow it to continue. + * + * When other code needs to call a BN generation function it will often take a + * BN_GENCB argument and may call the function with other argument values. */ +#define BN_GENCB_GENERATED 0 +#define BN_GENCB_PRIME_TEST 1 + +struct bn_gencb_st { + void *arg; /* callback-specific data */ + int (*callback)(int event, int n, struct bn_gencb_st *); +}; + +/* BN_GENCB_set configures |callback| to call |f| and sets |callout->arg| to + * |arg|. */ +OPENSSL_EXPORT void BN_GENCB_set(BN_GENCB *callback, + int (*f)(int event, int n, + struct bn_gencb_st *), + void *arg); + +/* BN_GENCB_call calls |callback|, if not NULL, and returns the return value of + * the callback, or 1 if |callback| is NULL. */ +OPENSSL_EXPORT int BN_GENCB_call(BN_GENCB *callback, int event, int n); + +/* BN_generate_prime_ex sets |ret| to a prime number of |bits| length. If safe + * is non-zero then the prime will be such that (ret-1)/2 is also a prime. + * (This is needed for Diffie-Hellman groups to ensure that the only subgroups + * are of size 2 and (p-1)/2.). + * + * If |add| is not NULL, the prime will fulfill the condition |ret| % |add| == + * |rem| in order to suit a given generator. (If |rem| is NULL then |ret| % + * |add| == 1.) + * + * If |cb| is not NULL, it will be called during processing to give an + * indication of progress. See the comments for |BN_GENCB|. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int BN_generate_prime_ex(BIGNUM *ret, int bits, int safe, + const BIGNUM *add, const BIGNUM *rem, + BN_GENCB *cb); + +/* BN_prime_checks is magic value that can be used as the |checks| argument to + * the primality testing functions in order to automatically select a number of + * Miller-Rabin checks that gives a false positive rate of ~2^{-80}. */ +#define BN_prime_checks 0 + +/* BN_primality_test sets |*is_probably_prime| to one if |candidate| is + * probably a prime number by the Miller-Rabin test or zero if it's certainly + * not. + * + * If |do_trial_division| is non-zero then |candidate| will be tested against a + * list of small primes before Miller-Rabin tests. The probability of this + * function returning a false positive is 2^{2*checks}. If |checks| is + * |BN_prime_checks| then a value that results in approximately 2^{-80} false + * positive probability is used. If |cb| is not NULL then it is called during + * the checking process. See the comment above |BN_GENCB|. + * + * The function returns one on success and zero on error. + * + * (If you are unsure whether you want |do_trial_division|, don't set it.) */ +OPENSSL_EXPORT int BN_primality_test(int *is_probably_prime, + const BIGNUM *candidate, int checks, + BN_CTX *ctx, int do_trial_division, + BN_GENCB *cb); + +/* BN_is_prime_fasttest_ex returns one if |candidate| is probably a prime + * number by the Miller-Rabin test, zero if it's certainly not and -1 on error. + * + * If |do_trial_division| is non-zero then |candidate| will be tested against a + * list of small primes before Miller-Rabin tests. The probability of this + * function returning one when |candidate| is composite is 2^{2*checks}. If + * |checks| is |BN_prime_checks| then a value that results in approximately + * 2^{-80} false positive probability is used. If |cb| is not NULL then it is + * called during the checking process. See the comment above |BN_GENCB|. + * + * WARNING: deprecated. Use |BN_primality_test|. */ +OPENSSL_EXPORT int BN_is_prime_fasttest_ex(const BIGNUM *candidate, int checks, + BN_CTX *ctx, int do_trial_division, + BN_GENCB *cb); + +/* BN_is_prime_ex acts the same as |BN_is_prime_fasttest_ex| with + * |do_trial_division| set to zero. + * + * WARNING: deprecated: Use |BN_primality_test|. */ +OPENSSL_EXPORT int BN_is_prime_ex(const BIGNUM *candidate, int checks, + BN_CTX *ctx, BN_GENCB *cb); + + +/* Number theory functions */ + +/* BN_gcd sets |r| = gcd(|a|, |b|). It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int BN_gcd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + BN_CTX *ctx); + +/* BN_mod_inverse sets |out| equal to |a|^-1, mod |n|. If either of |a| or |n| + * have |BN_FLG_CONSTTIME| set then the operation is performed in constant + * time. If |out| is NULL, a fresh BIGNUM is allocated. It returns the result + * or NULL on error. */ +OPENSSL_EXPORT BIGNUM *BN_mod_inverse(BIGNUM *out, const BIGNUM *a, + const BIGNUM *n, BN_CTX *ctx); + +/* BN_mod_inverse_ex acts like |BN_mod_inverse| except that, when it returns + * zero, it will set |*out_no_inverse| to one if the failure was caused because + * |a| has no inverse mod |n|. Otherwise it will set |*out_no_inverse| to + * zero. */ +OPENSSL_EXPORT BIGNUM *BN_mod_inverse_ex(BIGNUM *out, int *out_no_inverse, + const BIGNUM *a, const BIGNUM *n, + BN_CTX *ctx); + +/* BN_kronecker returns the Kronecker symbol of |a| and |b| (which is -1, 0 or + * 1), or -2 on error. */ +OPENSSL_EXPORT int BN_kronecker(const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx); + + +/* Montgomery arithmetic. */ + +/* BN_MONT_CTX contains the precomputed values needed to work in a specific + * Montgomery domain. */ + +/* BN_MONT_CTX_new returns a fresh BN_MONT_CTX or NULL on allocation failure. */ +OPENSSL_EXPORT BN_MONT_CTX *BN_MONT_CTX_new(void); + +/* BN_MONT_CTX_free frees memory associated with |mont|. */ +OPENSSL_EXPORT void BN_MONT_CTX_free(BN_MONT_CTX *mont); + +/* BN_MONT_CTX_copy sets |to| equal to |from|. It returns |to| on success or + * NULL on error. */ +OPENSSL_EXPORT BN_MONT_CTX *BN_MONT_CTX_copy(BN_MONT_CTX *to, + const BN_MONT_CTX *from); + +/* BN_MONT_CTX_set sets up a Montgomery context given the modulus, |mod|. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, + BN_CTX *ctx); + +/* BN_MONT_CTX_set_locked takes |lock| and checks whether |*pmont| is NULL. If + * so, it creates a new |BN_MONT_CTX| and sets the modulus for it to |mod|. It + * then stores it as |*pmont| and returns it, or NULL on error. + * + * If |*pmont| is already non-NULL then the existing value is returned. */ +BN_MONT_CTX *BN_MONT_CTX_set_locked(BN_MONT_CTX **pmont, CRYPTO_MUTEX *lock, + const BIGNUM *mod, BN_CTX *bn_ctx); + +/* BN_to_montgomery sets |ret| equal to |a| in the Montgomery domain. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int BN_to_montgomery(BIGNUM *ret, const BIGNUM *a, + const BN_MONT_CTX *mont, BN_CTX *ctx); + +/* BN_from_montgomery sets |ret| equal to |a| * R^-1, i.e. translates values + * out of the Montgomery domain. It returns one on success or zero on error. */ +OPENSSL_EXPORT int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, + const BN_MONT_CTX *mont, BN_CTX *ctx); + +/* BN_mod_mul_montgomery set |r| equal to |a| * |b|, in the Montgomery domain. + * Both |a| and |b| must already be in the Montgomery domain (by + * |BN_to_montgomery|). It returns one on success or zero on error. */ +OPENSSL_EXPORT int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, + const BIGNUM *b, + const BN_MONT_CTX *mont, BN_CTX *ctx); + + +/* Exponentiation. */ + +/* BN_exp sets |r| equal to |a|^{|p|}. It does so with a square-and-multiply + * algorithm that leaks side-channel information. It returns one on success or + * zero otherwise. */ +OPENSSL_EXPORT int BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, + BN_CTX *ctx); + +/* BN_mod_exp sets |r| equal to |a|^{|p|} mod |m|. It does so with the best + * algorithm for the values provided and can run in constant time if + * |BN_FLG_CONSTTIME| is set for |p|. It returns one on success or zero + * otherwise. */ +OPENSSL_EXPORT int BN_mod_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx); + +OPENSSL_EXPORT int BN_mod_exp_mont(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, + const BN_MONT_CTX *mont); + +OPENSSL_EXPORT int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, + const BIGNUM *p, const BIGNUM *m, + BN_CTX *ctx, + const BN_MONT_CTX *mont); + +OPENSSL_EXPORT int BN_mod_exp_mont_word(BIGNUM *r, BN_ULONG a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, + const BN_MONT_CTX *mont); +OPENSSL_EXPORT int BN_mod_exp2_mont(BIGNUM *r, const BIGNUM *a1, + const BIGNUM *p1, const BIGNUM *a2, + const BIGNUM *p2, const BIGNUM *m, + BN_CTX *ctx, const BN_MONT_CTX *mont); + + +/* Deprecated functions */ + +/* BN_bn2mpi serialises the value of |in| to |out|, using a format that consists + * of the number's length in bytes represented as a 4-byte big-endian number, + * and the number itself in big-endian format, where the most significant bit + * signals a negative number. (The representation of numbers with the MSB set is + * prefixed with null byte). |out| must have sufficient space available; to + * find the needed amount of space, call the function with |out| set to NULL. */ +OPENSSL_EXPORT size_t BN_bn2mpi(const BIGNUM *in, uint8_t *out); + +/* BN_mpi2bn parses |len| bytes from |in| and returns the resulting value. The + * bytes at |in| are expected to be in the format emitted by |BN_bn2mpi|. + * + * If |out| is NULL then a fresh |BIGNUM| is allocated and returned, otherwise + * |out| is reused and returned. On error, NULL is returned and the error queue + * is updated. */ +OPENSSL_EXPORT BIGNUM *BN_mpi2bn(const uint8_t *in, size_t len, BIGNUM *out); + + +/* Private functions */ + +struct bignum_st { + BN_ULONG *d; /* Pointer to an array of 'BN_BITS2' bit chunks in little-endian + order. */ + int top; /* Index of last used element in |d|, plus one. */ + int dmax; /* Size of |d|, in words. */ + int neg; /* one if the number is negative */ + int flags; /* bitmask of BN_FLG_* values */ +}; + +struct bn_mont_ctx_st { + BIGNUM RR; /* used to convert to montgomery form */ + BIGNUM N; /* The modulus */ + BN_ULONG n0[2]; /* least significant words of (R*Ri-1)/N */ +}; + +OPENSSL_EXPORT unsigned BN_num_bits_word(BN_ULONG l); + +#define BN_FLG_MALLOCED 0x01 +#define BN_FLG_STATIC_DATA 0x02 +/* avoid leaking exponent information through timing, BN_mod_exp_mont() will + * call BN_mod_exp_mont_consttime, BN_div() will call BN_div_no_branch, + * BN_mod_inverse() will call BN_mod_inverse_no_branch. */ +#define BN_FLG_CONSTTIME 0x04 + + +/* Android compatibility section. + * + * These functions are declared, temporarily, for Android because + * wpa_supplicant will take a little time to sync with upstream. Outside of + * Android they'll have no definition. */ + +OPENSSL_EXPORT BIGNUM *get_rfc3526_prime_1536(BIGNUM *bn); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define BN_R_ARG2_LT_ARG3 100 +#define BN_R_BAD_RECIPROCAL 101 +#define BN_R_BIGNUM_TOO_LONG 102 +#define BN_R_BITS_TOO_SMALL 103 +#define BN_R_CALLED_WITH_EVEN_MODULUS 104 +#define BN_R_DIV_BY_ZERO 105 +#define BN_R_EXPAND_ON_STATIC_BIGNUM_DATA 106 +#define BN_R_INPUT_NOT_REDUCED 107 +#define BN_R_INVALID_RANGE 108 +#define BN_R_NEGATIVE_NUMBER 109 +#define BN_R_NOT_A_SQUARE 110 +#define BN_R_NOT_INITIALIZED 111 +#define BN_R_NO_INVERSE 112 +#define BN_R_PRIVATE_KEY_TOO_LARGE 113 +#define BN_R_P_IS_NOT_PRIME 114 +#define BN_R_TOO_MANY_ITERATIONS 115 +#define BN_R_TOO_MANY_TEMPORARY_VARIABLES 116 +#define BN_R_BAD_ENCODING 117 +#define BN_R_ENCODE_ERROR 118 + +#endif /* OPENSSL_HEADER_BN_H */ diff --git a/project/jni/boringssl/include/openssl/buf.h b/project/jni/boringssl/include/openssl/buf.h new file mode 100644 index 000000000..76e3795e4 --- /dev/null +++ b/project/jni/boringssl/include/openssl/buf.h @@ -0,0 +1,118 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_BUFFER_H +#define OPENSSL_HEADER_BUFFER_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Memory and string functions, see also mem.h. */ + + +/* BUF_MEM is a generic buffer object used by OpenSSL. */ +struct buf_mem_st { + size_t length; /* current number of bytes */ + char *data; + size_t max; /* size of buffer */ +}; + +/* BUF_MEM_new creates a new BUF_MEM which has no allocated data buffer. */ +OPENSSL_EXPORT BUF_MEM *BUF_MEM_new(void); + +/* BUF_MEM_free frees |buf->data| if needed and then frees |buf| itself. */ +OPENSSL_EXPORT void BUF_MEM_free(BUF_MEM *buf); + +/* BUF_MEM_grow ensures that |buf| has length |len| and allocates memory if + * needed. If the length of |buf| increased, the new bytes are filled with + * zeros. It returns the length of |buf|, or zero if there's an error. */ +OPENSSL_EXPORT size_t BUF_MEM_grow(BUF_MEM *buf, size_t len); + +/* BUF_MEM_grow_clean acts the same as |BUF_MEM_grow|, but clears the previous + * contents of memory if reallocing. */ +OPENSSL_EXPORT size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len); + +/* BUF_strdup returns an allocated, duplicate of |str|. */ +OPENSSL_EXPORT char *BUF_strdup(const char *str); + +/* BUF_strnlen returns the number of characters in |str|, excluding the NUL + * byte, but at most |max_len|. This function never reads more than |max_len| + * bytes from |str|. */ +OPENSSL_EXPORT size_t BUF_strnlen(const char *str, size_t max_len); + +/* BUF_strndup returns an allocated, duplicate of |str|, which is, at most, + * |size| bytes. The result is always NUL terminated. */ +OPENSSL_EXPORT char *BUF_strndup(const char *str, size_t size); + +/* BUF_memdup returns an allocated, duplicate of |size| bytes from |data|. */ +OPENSSL_EXPORT void *BUF_memdup(const void *data, size_t size); + +/* BUF_strlcpy acts like strlcpy(3). */ +OPENSSL_EXPORT size_t BUF_strlcpy(char *dst, const char *src, size_t dst_size); + +/* BUF_strlcat acts like strlcat(3). */ +OPENSSL_EXPORT size_t BUF_strlcat(char *dst, const char *src, size_t size); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_BUFFER_H */ diff --git a/project/jni/boringssl/include/openssl/buffer.h b/project/jni/boringssl/include/openssl/buffer.h new file mode 100644 index 000000000..c6b721c27 --- /dev/null +++ b/project/jni/boringssl/include/openssl/buffer.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "buf.h" diff --git a/project/jni/boringssl/include/openssl/bytestring.h b/project/jni/boringssl/include/openssl/bytestring.h new file mode 100644 index 000000000..9193e11fd --- /dev/null +++ b/project/jni/boringssl/include/openssl/bytestring.h @@ -0,0 +1,378 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_BYTESTRING_H +#define OPENSSL_HEADER_BYTESTRING_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Bytestrings are used for parsing and building TLS and ASN.1 messages. + * + * A "CBS" (CRYPTO ByteString) represents a string of bytes in memory and + * provides utility functions for safely parsing length-prefixed structures + * like TLS and ASN.1 from it. + * + * A "CBB" (CRYPTO ByteBuilder) is a memory buffer that grows as needed and + * provides utility functions for building length-prefixed messages. */ + + +/* CRYPTO ByteString */ + +struct cbs_st { + const uint8_t *data; + size_t len; +}; + +/* CBS_init sets |cbs| to point to |data|. It does not take ownership of + * |data|. */ +OPENSSL_EXPORT void CBS_init(CBS *cbs, const uint8_t *data, size_t len); + +/* CBS_skip advances |cbs| by |len| bytes. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int CBS_skip(CBS *cbs, size_t len); + +/* CBS_data returns a pointer to the contents of |cbs|. */ +OPENSSL_EXPORT const uint8_t *CBS_data(const CBS *cbs); + +/* CBS_len returns the number of bytes remaining in |cbs|. */ +OPENSSL_EXPORT size_t CBS_len(const CBS *cbs); + +/* CBS_stow copies the current contents of |cbs| into |*out_ptr| and + * |*out_len|. If |*out_ptr| is not NULL, the contents are freed with + * OPENSSL_free. It returns one on success and zero on allocation failure. On + * success, |*out_ptr| should be freed with OPENSSL_free. If |cbs| is empty, + * |*out_ptr| will be NULL. */ +OPENSSL_EXPORT int CBS_stow(const CBS *cbs, uint8_t **out_ptr, size_t *out_len); + +/* CBS_strdup copies the current contents of |cbs| into |*out_ptr| as a + * NUL-terminated C string. If |*out_ptr| is not NULL, the contents are freed + * with OPENSSL_free. It returns one on success and zero on allocation + * failure. On success, |*out_ptr| should be freed with OPENSSL_free. + * + * NOTE: If |cbs| contains NUL bytes, the string will be truncated. Call + * |CBS_contains_zero_byte(cbs)| to check for NUL bytes. */ +OPENSSL_EXPORT int CBS_strdup(const CBS *cbs, char **out_ptr); + +/* CBS_contains_zero_byte returns one if the current contents of |cbs| contains + * a NUL byte and zero otherwise. */ +OPENSSL_EXPORT int CBS_contains_zero_byte(const CBS *cbs); + +/* CBS_mem_equal compares the current contents of |cbs| with the |len| bytes + * starting at |data|. If they're equal, it returns one, otherwise zero. If the + * lengths match, it uses a constant-time comparison. */ +OPENSSL_EXPORT int CBS_mem_equal(const CBS *cbs, const uint8_t *data, + size_t len); + +/* CBS_get_u8 sets |*out| to the next uint8_t from |cbs| and advances |cbs|. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u8(CBS *cbs, uint8_t *out); + +/* CBS_get_u16 sets |*out| to the next, big-endian uint16_t from |cbs| and + * advances |cbs|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u16(CBS *cbs, uint16_t *out); + +/* CBS_get_u24 sets |*out| to the next, big-endian 24-bit value from |cbs| and + * advances |cbs|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u24(CBS *cbs, uint32_t *out); + +/* CBS_get_u32 sets |*out| to the next, big-endian uint32_t value from |cbs| + * and advances |cbs|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u32(CBS *cbs, uint32_t *out); + +/* CBS_get_bytes sets |*out| to the next |len| bytes from |cbs| and advances + * |cbs|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_bytes(CBS *cbs, CBS *out, size_t len); + +/* CBS_copy_bytes copies the next |len| bytes from |cbs| to |out| and advances + * |cbs|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_copy_bytes(CBS *cbs, uint8_t *out, size_t len); + +/* CBS_get_u8_length_prefixed sets |*out| to the contents of an 8-bit, + * length-prefixed value from |cbs| and advances |cbs| over it. It returns one + * on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u8_length_prefixed(CBS *cbs, CBS *out); + +/* CBS_get_u16_length_prefixed sets |*out| to the contents of a 16-bit, + * big-endian, length-prefixed value from |cbs| and advances |cbs| over it. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u16_length_prefixed(CBS *cbs, CBS *out); + +/* CBS_get_u24_length_prefixed sets |*out| to the contents of a 24-bit, + * big-endian, length-prefixed value from |cbs| and advances |cbs| over it. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int CBS_get_u24_length_prefixed(CBS *cbs, CBS *out); + + +/* Parsing ASN.1 */ + +#define CBS_ASN1_BOOLEAN 0x1 +#define CBS_ASN1_INTEGER 0x2 +#define CBS_ASN1_BITSTRING 0x3 +#define CBS_ASN1_OCTETSTRING 0x4 +#define CBS_ASN1_NULL 0x5 +#define CBS_ASN1_OBJECT 0x6 +#define CBS_ASN1_ENUMERATED 0xa +#define CBS_ASN1_SEQUENCE (0x10 | CBS_ASN1_CONSTRUCTED) +#define CBS_ASN1_SET (0x11 | CBS_ASN1_CONSTRUCTED) +#define CBS_ASN1_GENERALIZEDTIME 0x18 + +#define CBS_ASN1_CONSTRUCTED 0x20 +#define CBS_ASN1_CONTEXT_SPECIFIC 0x80 + +/* CBS_get_asn1 sets |*out| to the contents of DER-encoded, ASN.1 element (not + * including tag and length bytes) and advances |cbs| over it. The ASN.1 + * element must match |tag_value|. It returns one on success and zero + * on error. + * + * Tag numbers greater than 30 are not supported (i.e. short form only). */ +OPENSSL_EXPORT int CBS_get_asn1(CBS *cbs, CBS *out, unsigned tag_value); + +/* CBS_get_asn1_element acts like |CBS_get_asn1| but |out| will include the + * ASN.1 header bytes too. */ +OPENSSL_EXPORT int CBS_get_asn1_element(CBS *cbs, CBS *out, unsigned tag_value); + +/* CBS_peek_asn1_tag looks ahead at the next ASN.1 tag and returns one + * if the next ASN.1 element on |cbs| would have tag |tag_value|. If + * |cbs| is empty or the tag does not match, it returns zero. Note: if + * it returns one, CBS_get_asn1 may still fail if the rest of the + * element is malformed. */ +OPENSSL_EXPORT int CBS_peek_asn1_tag(const CBS *cbs, unsigned tag_value); + +/* CBS_get_any_asn1_element sets |*out| to contain the next ASN.1 element from + * |*cbs| (including header bytes) and advances |*cbs|. It sets |*out_tag| to + * the tag number and |*out_header_len| to the length of the ASN.1 header. Each + * of |out|, |out_tag|, and |out_header_len| may be NULL to ignore the value. + * + * Tag numbers greater than 30 are not supported (i.e. short form only). */ +OPENSSL_EXPORT int CBS_get_any_asn1_element(CBS *cbs, CBS *out, + unsigned *out_tag, + size_t *out_header_len); + +/* CBS_get_any_ber_asn1_element acts the same as |CBS_get_any_asn1_element| but + * also allows indefinite-length elements to be returned. In that case, + * |*out_header_len| and |CBS_len(out)| will both be two as only the header is + * returned, otherwise it behaves the same as the previous function. */ +OPENSSL_EXPORT int CBS_get_any_ber_asn1_element(CBS *cbs, CBS *out, + unsigned *out_tag, + size_t *out_header_len); + +/* CBS_get_asn1_uint64 gets an ASN.1 INTEGER from |cbs| using |CBS_get_asn1| + * and sets |*out| to its value. It returns one on success and zero on error, + * where error includes the integer being negative, or too large to represent + * in 64 bits. */ +OPENSSL_EXPORT int CBS_get_asn1_uint64(CBS *cbs, uint64_t *out); + +/* CBS_get_optional_asn1 gets an optional explicitly-tagged element from |cbs| + * tagged with |tag| and sets |*out| to its contents. If present and if + * |out_present| is not NULL, it sets |*out_present| to one, otherwise zero. It + * returns one on success, whether or not the element was present, and zero on + * decode failure. */ +OPENSSL_EXPORT int CBS_get_optional_asn1(CBS *cbs, CBS *out, int *out_present, + unsigned tag); + +/* CBS_get_optional_asn1_octet_string gets an optional + * explicitly-tagged OCTET STRING from |cbs|. If present, it sets + * |*out| to the string and |*out_present| to one. Otherwise, it sets + * |*out| to empty and |*out_present| to zero. |out_present| may be + * NULL. It returns one on success, whether or not the element was + * present, and zero on decode failure. */ +OPENSSL_EXPORT int CBS_get_optional_asn1_octet_string(CBS *cbs, CBS *out, + int *out_present, + unsigned tag); + +/* CBS_get_optional_asn1_uint64 gets an optional explicitly-tagged + * INTEGER from |cbs|. If present, it sets |*out| to the + * value. Otherwise, it sets |*out| to |default_value|. It returns one + * on success, whether or not the element was present, and zero on + * decode failure. */ +OPENSSL_EXPORT int CBS_get_optional_asn1_uint64(CBS *cbs, uint64_t *out, + unsigned tag, + uint64_t default_value); + +/* CBS_get_optional_asn1_bool gets an optional, explicitly-tagged BOOLEAN from + * |cbs|. If present, it sets |*out| to either zero or one, based on the + * boolean. Otherwise, it sets |*out| to |default_value|. It returns one on + * success, whether or not the element was present, and zero on decode + * failure. */ +OPENSSL_EXPORT int CBS_get_optional_asn1_bool(CBS *cbs, int *out, unsigned tag, + int default_value); + + +/* CRYPTO ByteBuilder. + * + * |CBB| objects allow one to build length-prefixed serialisations. A |CBB| + * object is associated with a buffer and new buffers are created with + * |CBB_init|. Several |CBB| objects can point at the same buffer when a + * length-prefix is pending, however only a single |CBB| can be 'current' at + * any one time. For example, if one calls |CBB_add_u8_length_prefixed| then + * the new |CBB| points at the same buffer as the original. But if the original + * |CBB| is used then the length prefix is written out and the new |CBB| must + * not be used again. + * + * If one needs to force a length prefix to be written out because a |CBB| is + * going out of scope, use |CBB_flush|. */ + +struct cbb_buffer_st { + uint8_t *buf; + size_t len; /* The number of valid bytes. */ + size_t cap; /* The size of buf. */ + char can_resize; /* One iff |buf| is owned by this object. If not then |buf| + cannot be resized. */ +}; + +struct cbb_st { + struct cbb_buffer_st *base; + /* child points to a child CBB if a length-prefix is pending. */ + CBB *child; + /* offset is the number of bytes from the start of |base->buf| to this |CBB|'s + * pending length prefix. */ + size_t offset; + /* pending_len_len contains the number of bytes in this |CBB|'s pending + * length-prefix, or zero if no length-prefix is pending. */ + uint8_t pending_len_len; + char pending_is_asn1; + /* is_top_level is true iff this is a top-level |CBB| (as opposed to a child + * |CBB|). Top-level objects are valid arguments for |CBB_finish|. */ + char is_top_level; +}; + +/* CBB_zero sets an uninitialised |cbb| to the zero state. It must be + * initialised with |CBB_init| or |CBB_init_fixed| before use, but it is safe to + * call |CBB_cleanup| without a successful |CBB_init|. This may be used for more + * uniform cleanup of a |CBB|. */ +OPENSSL_EXPORT void CBB_zero(CBB *cbb); + +/* CBB_init initialises |cbb| with |initial_capacity|. Since a |CBB| grows as + * needed, the |initial_capacity| is just a hint. It returns one on success or + * zero on error. */ +OPENSSL_EXPORT int CBB_init(CBB *cbb, size_t initial_capacity); + +/* CBB_init_fixed initialises |cbb| to write to |len| bytes at |buf|. Since + * |buf| cannot grow, trying to write more than |len| bytes will cause CBB + * functions to fail. It returns one on success or zero on error. */ +OPENSSL_EXPORT int CBB_init_fixed(CBB *cbb, uint8_t *buf, size_t len); + +/* CBB_cleanup frees all resources owned by |cbb| and other |CBB| objects + * writing to the same buffer. This should be used in an error case where a + * serialisation is abandoned. + * + * This function can only be called on a "top level" |CBB|, i.e. one initialised + * with |CBB_init| or |CBB_init_fixed|, or a |CBB| set to the zero state with + * |CBB_zero|. */ +OPENSSL_EXPORT void CBB_cleanup(CBB *cbb); + +/* CBB_finish completes any pending length prefix and sets |*out_data| to a + * malloced buffer and |*out_len| to the length of that buffer. The caller + * takes ownership of the buffer and, unless the buffer was fixed with + * |CBB_init_fixed|, must call |OPENSSL_free| when done. + * + * It can only be called on a "top level" |CBB|, i.e. one initialised with + * |CBB_init| or |CBB_init_fixed|. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int CBB_finish(CBB *cbb, uint8_t **out_data, size_t *out_len); + +/* CBB_flush causes any pending length prefixes to be written out and any child + * |CBB| objects of |cbb| to be invalidated. It returns one on success or zero + * on error. */ +OPENSSL_EXPORT int CBB_flush(CBB *cbb); + +/* CBB_data returns a pointer to the bytes written to |cbb|. It does not flush + * |cbb|. The pointer is valid until the next operation to |cbb|. + * + * To avoid unfinalized length prefixes, it is a fatal error to call this on a + * CBB with any active children. */ +OPENSSL_EXPORT const uint8_t *CBB_data(const CBB *cbb); + +/* CBB_len returns the number of bytes written to |cbb|. It does not flush + * |cbb|. + * + * To avoid unfinalized length prefixes, it is a fatal error to call this on a + * CBB with any active children. */ +OPENSSL_EXPORT size_t CBB_len(const CBB *cbb); + +/* CBB_add_u8_length_prefixed sets |*out_contents| to a new child of |cbb|. The + * data written to |*out_contents| will be prefixed in |cbb| with an 8-bit + * length. It returns one on success or zero on error. */ +OPENSSL_EXPORT int CBB_add_u8_length_prefixed(CBB *cbb, CBB *out_contents); + +/* CBB_add_u16_length_prefixed sets |*out_contents| to a new child of |cbb|. + * The data written to |*out_contents| will be prefixed in |cbb| with a 16-bit, + * big-endian length. It returns one on success or zero on error. */ +OPENSSL_EXPORT int CBB_add_u16_length_prefixed(CBB *cbb, CBB *out_contents); + +/* CBB_add_u24_length_prefixed sets |*out_contents| to a new child of |cbb|. + * The data written to |*out_contents| will be prefixed in |cbb| with a 24-bit, + * big-endian length. It returns one on success or zero on error. */ +OPENSSL_EXPORT int CBB_add_u24_length_prefixed(CBB *cbb, CBB *out_contents); + +/* CBB_add_asn1 sets |*out_contents| to a |CBB| into which the contents of an + * ASN.1 object can be written. The |tag| argument will be used as the tag for + * the object. Passing in |tag| number 31 will return in an error since only + * single octet identifiers are supported. It returns one on success or zero + * on error. */ +OPENSSL_EXPORT int CBB_add_asn1(CBB *cbb, CBB *out_contents, uint8_t tag); + +/* CBB_add_bytes appends |len| bytes from |data| to |cbb|. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int CBB_add_bytes(CBB *cbb, const uint8_t *data, size_t len); + +/* CBB_add_space appends |len| bytes to |cbb| and sets |*out_data| to point to + * the beginning of that space. The caller must then write |len| bytes of + * actual contents to |*out_data|. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int CBB_add_space(CBB *cbb, uint8_t **out_data, size_t len); + +/* CBB_reserve ensures |cbb| has room for |len| additional bytes and sets + * |*out_data| to point to the beginning of that space. It returns one on + * success and zero otherwise. The caller may write up to |len| bytes to + * |*out_data| and call |CBB_did_write| to complete the write. |*out_data| is + * valid until the next operation on |cbb| or an ancestor |CBB|. */ +OPENSSL_EXPORT int CBB_reserve(CBB *cbb, uint8_t **out_data, size_t len); + +/* CBB_did_write advances |cbb| by |len| bytes, assuming the space has been + * written to by the caller. It returns one on success and zero on error. */ +OPENSSL_EXPORT int CBB_did_write(CBB *cbb, size_t len); + +/* CBB_add_u8 appends an 8-bit number from |value| to |cbb|. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int CBB_add_u8(CBB *cbb, uint8_t value); + +/* CBB_add_u16 appends a 16-bit, big-endian number from |value| to |cbb|. It + * returns one on success and zero otherwise. */ +OPENSSL_EXPORT int CBB_add_u16(CBB *cbb, uint16_t value); + +/* CBB_add_u24 appends a 24-bit, big-endian number from |value| to |cbb|. It + * returns one on success and zero otherwise. */ +OPENSSL_EXPORT int CBB_add_u24(CBB *cbb, uint32_t value); + +/* CBB_discard_child discards the current unflushed child of |cbb|. Neither the + * child's contents nor the length prefix will be included in the output. */ +OPENSSL_EXPORT void CBB_discard_child(CBB *cbb); + +/* CBB_add_asn1_uint64 writes an ASN.1 INTEGER into |cbb| using |CBB_add_asn1| + * and writes |value| in its contents. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int CBB_add_asn1_uint64(CBB *cbb, uint64_t value); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_BYTESTRING_H */ diff --git a/project/jni/boringssl/include/openssl/cast.h b/project/jni/boringssl/include/openssl/cast.h new file mode 100644 index 000000000..802172394 --- /dev/null +++ b/project/jni/boringssl/include/openssl/cast.h @@ -0,0 +1,96 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_CAST_H +#define OPENSSL_HEADER_CAST_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +#define CAST_ENCRYPT 1 +#define CAST_DECRYPT 0 + +#define CAST_BLOCK 8 +#define CAST_KEY_LENGTH 16 + +typedef struct cast_key_st { + uint32_t data[32]; + int short_key; /* Use reduced rounds for short key */ +} CAST_KEY; + +OPENSSL_EXPORT void CAST_set_key(CAST_KEY *key, size_t len, + const uint8_t *data); +OPENSSL_EXPORT void CAST_ecb_encrypt(const uint8_t *in, uint8_t *out, + const CAST_KEY *key, int enc); +OPENSSL_EXPORT void CAST_encrypt(uint32_t *data, const CAST_KEY *key); +OPENSSL_EXPORT void CAST_decrypt(uint32_t *data, const CAST_KEY *key); +OPENSSL_EXPORT void CAST_cbc_encrypt(const uint8_t *in, uint8_t *out, + long length, const CAST_KEY *ks, + uint8_t *iv, int enc); + +OPENSSL_EXPORT void CAST_cfb64_encrypt(const uint8_t *in, uint8_t *out, + long length, const CAST_KEY *schedule, + uint8_t *ivec, int *num, int enc); + +#ifdef __cplusplus +} +#endif + +#endif /* OPENSSL_HEADER_CAST_H */ diff --git a/project/jni/boringssl/include/openssl/chacha.h b/project/jni/boringssl/include/openssl/chacha.h new file mode 100644 index 000000000..64713c248 --- /dev/null +++ b/project/jni/boringssl/include/openssl/chacha.h @@ -0,0 +1,37 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_CHACHA_H +#define OPENSSL_HEADER_CHACHA_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +/* CRYPTO_chacha_20 encrypts |in_len| bytes from |in| with the given key and + * nonce and writes the result to |out|, which may be equal to |in|. The + * initial block counter is specified by |counter|. */ +OPENSSL_EXPORT void CRYPTO_chacha_20(uint8_t *out, const uint8_t *in, + size_t in_len, const uint8_t key[32], + const uint8_t nonce[12], uint32_t counter); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_CHACHA_H */ diff --git a/project/jni/boringssl/include/openssl/cipher.h b/project/jni/boringssl/include/openssl/cipher.h new file mode 100644 index 000000000..fb7171f0b --- /dev/null +++ b/project/jni/boringssl/include/openssl/cipher.h @@ -0,0 +1,571 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_CIPHER_H +#define OPENSSL_HEADER_CIPHER_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Ciphers. */ + + +/* Cipher primitives. + * + * The following functions return |EVP_CIPHER| objects that implement the named + * cipher algorithm. */ + +OPENSSL_EXPORT const EVP_CIPHER *EVP_rc4(void); + +OPENSSL_EXPORT const EVP_CIPHER *EVP_des_cbc(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ecb(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede_cbc(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_cbc(void); + +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ecb(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cbc(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ctr(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ofb(void); + +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ecb(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cbc(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ctr(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ofb(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_xts(void); + +/* EVP_enc_null returns a 'cipher' that passes plaintext through as + * ciphertext. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_enc_null(void); + +/* EVP_rc2_cbc returns a cipher that implements 128-bit RC2 in CBC mode. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_rc2_cbc(void); + +/* EVP_rc2_40_cbc returns a cipher that implements 40-bit RC2 in CBC mode. This + * is obviously very, very weak and is included only in order to read PKCS#12 + * files, which often encrypt the certificate chain using this cipher. It is + * deliberately not exported. */ +const EVP_CIPHER *EVP_rc2_40_cbc(void); + +/* EVP_get_cipherbynid returns the cipher corresponding to the given NID, or + * NULL if no such cipher is known. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_get_cipherbynid(int nid); + + +/* Cipher context allocation. + * + * An |EVP_CIPHER_CTX| represents the state of an encryption or decryption in + * progress. */ + +/* EVP_CIPHER_CTX_init initialises an, already allocated, |EVP_CIPHER_CTX|. */ +OPENSSL_EXPORT void EVP_CIPHER_CTX_init(EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_new allocates a fresh |EVP_CIPHER_CTX|, calls + * |EVP_CIPHER_CTX_init| and returns it, or NULL on allocation failure. */ +OPENSSL_EXPORT EVP_CIPHER_CTX *EVP_CIPHER_CTX_new(void); + +/* EVP_CIPHER_CTX_cleanup frees any memory referenced by |ctx|. It returns + * one. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_free calls |EVP_CIPHER_CTX_cleanup| on |ctx| and then frees + * |ctx| itself. */ +OPENSSL_EXPORT void EVP_CIPHER_CTX_free(EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_copy sets |out| to be a duplicate of the current state of + * |in|. The |out| argument must have been previously initialised. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_copy(EVP_CIPHER_CTX *out, + const EVP_CIPHER_CTX *in); + + +/* Cipher context configuration. */ + +/* EVP_CipherInit_ex configures |ctx| for a fresh encryption (or decryption, if + * |enc| is zero) operation using |cipher|. If |ctx| has been previously + * configured with a cipher then |cipher|, |key| and |iv| may be |NULL| and + * |enc| may be -1 to reuse the previous values. The operation will use |key| + * as the key and |iv| as the IV (if any). These should have the correct + * lengths given by |EVP_CIPHER_key_length| and |EVP_CIPHER_iv_length|. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx, + const EVP_CIPHER *cipher, ENGINE *engine, + const uint8_t *key, const uint8_t *iv, + int enc); + +/* EVP_EncryptInit_ex calls |EVP_CipherInit_ex| with |enc| equal to one. */ +OPENSSL_EXPORT int EVP_EncryptInit_ex(EVP_CIPHER_CTX *ctx, + const EVP_CIPHER *cipher, ENGINE *impl, + const uint8_t *key, const uint8_t *iv); + +/* EVP_DecryptInit_ex calls |EVP_CipherInit_ex| with |enc| equal to zero. */ +OPENSSL_EXPORT int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx, + const EVP_CIPHER *cipher, ENGINE *impl, + const uint8_t *key, const uint8_t *iv); + + +/* Cipher operations. */ + +/* EVP_EncryptUpdate encrypts |in_len| bytes from |in| to |out|. The number + * of output bytes may be up to |in_len| plus the block length minus one and + * |out| must have sufficient space. The number of bytes actually output is + * written to |*out_len|. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out, + int *out_len, const uint8_t *in, + int in_len); + +/* EVP_EncryptFinal_ex writes at most a block of ciphertext to |out| and sets + * |*out_len| to the number of bytes written. If padding is enabled (the + * default) then standard padding is applied to create the final block. If + * padding is disabled (with |EVP_CIPHER_CTX_set_padding|) then any partial + * block remaining will cause an error. The function returns one on success and + * zero otherwise. */ +OPENSSL_EXPORT int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, uint8_t *out, + int *out_len); + +/* EVP_DecryptUpdate decrypts |in_len| bytes from |in| to |out|. The number of + * output bytes may be up to |in_len| plus the block length minus one and |out| + * must have sufficient space. The number of bytes actually output is written + * to |*out_len|. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out, + int *out_len, const uint8_t *in, + int in_len); + +/* EVP_DecryptFinal_ex writes at most a block of ciphertext to |out| and sets + * |*out_len| to the number of bytes written. If padding is enabled (the + * default) then padding is removed from the final block. + * + * WARNING: it is unsafe to call this function with unauthenticted + * ciphertext if padding is enabled. */ +OPENSSL_EXPORT int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out, + int *out_len); + +/* EVP_Cipher performs a one-shot encryption/decryption operation. No partial + * blocks are maintained between calls. However, any internal cipher state is + * still updated. For CBC-mode ciphers, the IV is updated to the final + * ciphertext block. For stream ciphers, the stream is advanced past the bytes + * used. It returns one on success and zero otherwise, unless |EVP_CIPHER_flags| + * has |EVP_CIPH_FLAG_CUSTOM_CIPHER| set. Then it returns the number of bytes + * written or -1 on error. + * + * WARNING: this differs from the usual return value convention when using + * |EVP_CIPH_FLAG_CUSTOM_CIPHER|. + * + * TODO(davidben): The normal ciphers currently never fail, even if, e.g., + * |in_len| is not a multiple of the block size for CBC-mode decryption. The + * input just gets rounded up while the output gets truncated. This should + * either be officially documented or fail. */ +OPENSSL_EXPORT int EVP_Cipher(EVP_CIPHER_CTX *ctx, uint8_t *out, + const uint8_t *in, size_t in_len); + +/* EVP_CipherUpdate calls either |EVP_EncryptUpdate| or |EVP_DecryptUpdate| + * depending on how |ctx| has been setup. */ +OPENSSL_EXPORT int EVP_CipherUpdate(EVP_CIPHER_CTX *ctx, uint8_t *out, + int *out_len, const uint8_t *in, + int in_len); + +/* EVP_CipherFinal_ex calls either |EVP_EncryptFinal_ex| or + * |EVP_DecryptFinal_ex| depending on how |ctx| has been setup. */ +OPENSSL_EXPORT int EVP_CipherFinal_ex(EVP_CIPHER_CTX *ctx, uint8_t *out, + int *out_len); + + +/* Cipher context accessors. */ + +/* EVP_CIPHER_CTX_cipher returns the |EVP_CIPHER| underlying |ctx|, or NULL if + * none has been set. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_CIPHER_CTX_cipher( + const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_nid returns a NID identifying the |EVP_CIPHER| underlying + * |ctx| (e.g. |NID_aes_128_gcm|). It will crash if no cipher has been + * configured. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_nid(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_block_size returns the block size, in bytes, of the cipher + * underlying |ctx|, or one if the cipher is a stream cipher. It will crash if + * no cipher has been configured. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_CTX_block_size(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_key_length returns the key size, in bytes, of the cipher + * underlying |ctx| or zero if no cipher has been configured. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_CTX_key_length(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_iv_length returns the IV size, in bytes, of the cipher + * underlying |ctx|. It will crash if no cipher has been configured. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_CTX_iv_length(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_get_app_data returns the opaque, application data pointer for + * |ctx|, or NULL if none has been set. */ +OPENSSL_EXPORT void *EVP_CIPHER_CTX_get_app_data(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_set_app_data sets the opaque, application data pointer for + * |ctx| to |data|. */ +OPENSSL_EXPORT void EVP_CIPHER_CTX_set_app_data(EVP_CIPHER_CTX *ctx, + void *data); + +/* EVP_CIPHER_CTX_flags returns a value which is the OR of zero or more + * |EVP_CIPH_*| flags. It will crash if no cipher has been configured. */ +OPENSSL_EXPORT uint32_t EVP_CIPHER_CTX_flags(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_mode returns one of the |EVP_CIPH_*| cipher mode values + * enumerated below. It will crash if no cipher has been configured. */ +OPENSSL_EXPORT uint32_t EVP_CIPHER_CTX_mode(const EVP_CIPHER_CTX *ctx); + +/* EVP_CIPHER_CTX_ctrl is an |ioctl| like function. The |command| argument + * should be one of the |EVP_CTRL_*| values. The |arg| and |ptr| arguments are + * specific to the command in question. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_ctrl(EVP_CIPHER_CTX *ctx, int command, + int arg, void *ptr); + +/* EVP_CIPHER_CTX_set_padding sets whether padding is enabled for |ctx| and + * returns one. Pass a non-zero |pad| to enable padding (the default) or zero + * to disable. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_set_padding(EVP_CIPHER_CTX *ctx, int pad); + +/* EVP_CIPHER_CTX_set_key_length sets the key length for |ctx|. This is only + * valid for ciphers that can take a variable length key. It returns one on + * success and zero on error. */ +OPENSSL_EXPORT int EVP_CIPHER_CTX_set_key_length(EVP_CIPHER_CTX *ctx, unsigned key_len); + + +/* Cipher accessors. */ + +/* EVP_CIPHER_nid returns a NID identifing |cipher|. (For example, + * |NID_aes_128_gcm|.) */ +OPENSSL_EXPORT int EVP_CIPHER_nid(const EVP_CIPHER *cipher); + +/* EVP_CIPHER_block_size returns the block size, in bytes, for |cipher|, or one + * if |cipher| is a stream cipher. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_block_size(const EVP_CIPHER *cipher); + +/* EVP_CIPHER_key_length returns the key size, in bytes, for |cipher|. If + * |cipher| can take a variable key length then this function returns the + * default key length and |EVP_CIPHER_flags| will return a value with + * |EVP_CIPH_VARIABLE_LENGTH| set. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_key_length(const EVP_CIPHER *cipher); + +/* EVP_CIPHER_iv_length returns the IV size, in bytes, of |cipher|, or zero if + * |cipher| doesn't take an IV. */ +OPENSSL_EXPORT unsigned EVP_CIPHER_iv_length(const EVP_CIPHER *cipher); + +/* EVP_CIPHER_flags returns a value which is the OR of zero or more + * |EVP_CIPH_*| flags. */ +OPENSSL_EXPORT uint32_t EVP_CIPHER_flags(const EVP_CIPHER *cipher); + +/* EVP_CIPHER_mode returns one of the cipher mode values enumerated below. */ +OPENSSL_EXPORT uint32_t EVP_CIPHER_mode(const EVP_CIPHER *cipher); + + +/* Key derivation. */ + +/* EVP_BytesToKey generates a key and IV for the cipher |type| by iterating + * |md| |count| times using |data| and |salt|. On entry, the |key| and |iv| + * buffers must have enough space to hold a key and IV for |type|. It returns + * the length of the key on success or zero on error. */ +OPENSSL_EXPORT int EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md, + const uint8_t *salt, const uint8_t *data, + size_t data_len, unsigned count, uint8_t *key, + uint8_t *iv); + + +/* Cipher modes (for |EVP_CIPHER_mode|). */ + +#define EVP_CIPH_STREAM_CIPHER 0x0 +#define EVP_CIPH_ECB_MODE 0x1 +#define EVP_CIPH_CBC_MODE 0x2 +#define EVP_CIPH_CFB_MODE 0x3 +#define EVP_CIPH_OFB_MODE 0x4 +#define EVP_CIPH_CTR_MODE 0x5 +#define EVP_CIPH_GCM_MODE 0x6 +#define EVP_CIPH_XTS_MODE 0x7 + + +/* Cipher flags (for |EVP_CIPHER_flags|). */ + +/* EVP_CIPH_VARIABLE_LENGTH indicates that the cipher takes a variable length + * key. */ +#define EVP_CIPH_VARIABLE_LENGTH 0x40 + +/* EVP_CIPH_ALWAYS_CALL_INIT indicates that the |init| function for the cipher + * should always be called when initialising a new operation, even if the key + * is NULL to indicate that the same key is being used. */ +#define EVP_CIPH_ALWAYS_CALL_INIT 0x80 + +/* EVP_CIPH_CUSTOM_IV indicates that the cipher manages the IV itself rather + * than keeping it in the |iv| member of |EVP_CIPHER_CTX|. */ +#define EVP_CIPH_CUSTOM_IV 0x100 + +/* EVP_CIPH_CTRL_INIT indicates that EVP_CTRL_INIT should be used when + * initialising an |EVP_CIPHER_CTX|. */ +#define EVP_CIPH_CTRL_INIT 0x200 + +/* EVP_CIPH_FLAG_CUSTOM_CIPHER indicates that the cipher manages blocking + * itself. This causes EVP_(En|De)crypt_ex to be simple wrapper functions. */ +#define EVP_CIPH_FLAG_CUSTOM_CIPHER 0x400 + +/* EVP_CIPH_FLAG_AEAD_CIPHER specifies that the cipher is an AEAD. This is an + * older version of the proper AEAD interface. See aead.h for the current + * one. */ +#define EVP_CIPH_FLAG_AEAD_CIPHER 0x800 + +/* EVP_CIPH_CUSTOM_COPY indicates that the |ctrl| callback should be called + * with |EVP_CTRL_COPY| at the end of normal |EVP_CIPHER_CTX_copy| + * processing. */ +#define EVP_CIPH_CUSTOM_COPY 0x1000 + + +/* Deprecated functions */ + +/* EVP_CipherInit acts like EVP_CipherInit_ex except that |EVP_CIPHER_CTX_init| + * is called on |cipher| first, if |cipher| is not NULL. */ +OPENSSL_EXPORT int EVP_CipherInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher, + const uint8_t *key, const uint8_t *iv, + int enc); + +/* EVP_EncryptInit calls |EVP_CipherInit| with |enc| equal to one. */ +OPENSSL_EXPORT int EVP_EncryptInit(EVP_CIPHER_CTX *ctx, + const EVP_CIPHER *cipher, const uint8_t *key, + const uint8_t *iv); + +/* EVP_DecryptInit calls |EVP_CipherInit| with |enc| equal to zero. */ +OPENSSL_EXPORT int EVP_DecryptInit(EVP_CIPHER_CTX *ctx, + const EVP_CIPHER *cipher, const uint8_t *key, + const uint8_t *iv); + +/* EVP_add_cipher_alias does nothing and returns one. */ +OPENSSL_EXPORT int EVP_add_cipher_alias(const char *a, const char *b); + +/* EVP_get_cipherbyname returns an |EVP_CIPHER| given a human readable name in + * |name|, or NULL if the name is unknown. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_get_cipherbyname(const char *name); + +/* These AEADs are deprecated AES-GCM implementations that set + * |EVP_CIPH_FLAG_CUSTOM_CIPHER|. Use |EVP_aead_aes_128_gcm| and + * |EVP_aead_aes_256_gcm| instead. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_gcm(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_gcm(void); + +/* These are deprecated, 192-bit version of AES. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ecb(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_cbc(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ctr(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_gcm(void); + + +/* Private functions. */ + +/* EVP_CIPH_NO_PADDING disables padding in block ciphers. */ +#define EVP_CIPH_NO_PADDING 0x800 + +/* EVP_CIPHER_CTX_ctrl commands. */ +#define EVP_CTRL_INIT 0x0 +#define EVP_CTRL_SET_KEY_LENGTH 0x1 +#define EVP_CTRL_GET_RC2_KEY_BITS 0x2 +#define EVP_CTRL_SET_RC2_KEY_BITS 0x3 +#define EVP_CTRL_GET_RC5_ROUNDS 0x4 +#define EVP_CTRL_SET_RC5_ROUNDS 0x5 +#define EVP_CTRL_RAND_KEY 0x6 +#define EVP_CTRL_PBE_PRF_NID 0x7 +#define EVP_CTRL_COPY 0x8 +#define EVP_CTRL_GCM_SET_IVLEN 0x9 +#define EVP_CTRL_GCM_GET_TAG 0x10 +#define EVP_CTRL_GCM_SET_TAG 0x11 +#define EVP_CTRL_GCM_SET_IV_FIXED 0x12 +#define EVP_CTRL_GCM_IV_GEN 0x13 +#define EVP_CTRL_AEAD_SET_MAC_KEY 0x17 +/* Set the GCM invocation field, decrypt only */ +#define EVP_CTRL_GCM_SET_IV_INV 0x18 + +/* GCM TLS constants */ +/* Length of fixed part of IV derived from PRF */ +#define EVP_GCM_TLS_FIXED_IV_LEN 4 +/* Length of explicit part of IV part of TLS records */ +#define EVP_GCM_TLS_EXPLICIT_IV_LEN 8 +/* Length of tag for TLS */ +#define EVP_GCM_TLS_TAG_LEN 16 + +#define EVP_MAX_KEY_LENGTH 64 +#define EVP_MAX_IV_LENGTH 16 +#define EVP_MAX_BLOCK_LENGTH 32 + +struct evp_cipher_ctx_st { + /* cipher contains the underlying cipher for this context. */ + const EVP_CIPHER *cipher; + + /* app_data is a pointer to opaque, user data. */ + void *app_data; /* application stuff */ + + /* cipher_data points to the |cipher| specific state. */ + void *cipher_data; + + /* key_len contains the length of the key, which may differ from + * |cipher->key_len| if the cipher can take a variable key length. */ + unsigned key_len; + + /* encrypt is one if encrypting and zero if decrypting. */ + int encrypt; + + /* flags contains the OR of zero or more |EVP_CIPH_*| flags, above. */ + uint32_t flags; + + /* oiv contains the original IV value. */ + uint8_t oiv[EVP_MAX_IV_LENGTH]; + + /* iv contains the current IV value, which may have been updated. */ + uint8_t iv[EVP_MAX_IV_LENGTH]; + + /* buf contains a partial block which is used by, for example, CTR mode to + * store unused keystream bytes. */ + uint8_t buf[EVP_MAX_BLOCK_LENGTH]; + + /* buf_len contains the number of bytes of a partial block contained in + * |buf|. */ + int buf_len; + + /* num contains the number of bytes of |iv| which are valid for modes that + * manage partial blocks themselves. */ + int num; + + /* final_used is non-zero if the |final| buffer contains plaintext. */ + int final_used; + + /* block_mask contains |cipher->block_size| minus one. (The block size + * assumed to be a power of two.) */ + int block_mask; + + uint8_t final[EVP_MAX_BLOCK_LENGTH]; /* possible final block */ +} /* EVP_CIPHER_CTX */; + +typedef struct evp_cipher_info_st { + const EVP_CIPHER *cipher; + unsigned char iv[EVP_MAX_IV_LENGTH]; +} EVP_CIPHER_INFO; + +struct evp_cipher_st { + /* type contains a NID identifing the cipher. (e.g. NID_aes_128_gcm.) */ + int nid; + + /* block_size contains the block size, in bytes, of the cipher, or 1 for a + * stream cipher. */ + unsigned block_size; + + /* key_len contains the key size, in bytes, for the cipher. If the cipher + * takes a variable key size then this contains the default size. */ + unsigned key_len; + + /* iv_len contains the IV size, in bytes, or zero if inapplicable. */ + unsigned iv_len; + + /* ctx_size contains the size, in bytes, of the per-key context for this + * cipher. */ + unsigned ctx_size; + + /* flags contains the OR of a number of flags. See |EVP_CIPH_*|. */ + uint32_t flags; + + /* app_data is a pointer to opaque, user data. */ + void *app_data; + + int (*init)(EVP_CIPHER_CTX *ctx, const uint8_t *key, const uint8_t *iv, + int enc); + + int (*cipher)(EVP_CIPHER_CTX *ctx, uint8_t *out, const uint8_t *in, + size_t inl); + + /* cleanup, if non-NULL, releases memory associated with the context. It is + * called if |EVP_CTRL_INIT| succeeds. Note that |init| may not have been + * called at this point. */ + void (*cleanup)(EVP_CIPHER_CTX *); + + int (*ctrl)(EVP_CIPHER_CTX *, int type, int arg, void *ptr); +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define CIPHER_R_AES_KEY_SETUP_FAILED 100 +#define CIPHER_R_BAD_DECRYPT 101 +#define CIPHER_R_BAD_KEY_LENGTH 102 +#define CIPHER_R_BUFFER_TOO_SMALL 103 +#define CIPHER_R_CTRL_NOT_IMPLEMENTED 104 +#define CIPHER_R_CTRL_OPERATION_NOT_IMPLEMENTED 105 +#define CIPHER_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH 106 +#define CIPHER_R_INITIALIZATION_ERROR 107 +#define CIPHER_R_INPUT_NOT_INITIALIZED 108 +#define CIPHER_R_INVALID_AD_SIZE 109 +#define CIPHER_R_INVALID_KEY_LENGTH 110 +#define CIPHER_R_INVALID_NONCE_SIZE 111 +#define CIPHER_R_INVALID_OPERATION 112 +#define CIPHER_R_IV_TOO_LARGE 113 +#define CIPHER_R_NO_CIPHER_SET 114 +#define CIPHER_R_OUTPUT_ALIASES_INPUT 115 +#define CIPHER_R_TAG_TOO_LARGE 116 +#define CIPHER_R_TOO_LARGE 117 +#define CIPHER_R_UNSUPPORTED_AD_SIZE 118 +#define CIPHER_R_UNSUPPORTED_INPUT_SIZE 119 +#define CIPHER_R_UNSUPPORTED_KEY_SIZE 120 +#define CIPHER_R_UNSUPPORTED_NONCE_SIZE 121 +#define CIPHER_R_UNSUPPORTED_TAG_SIZE 122 +#define CIPHER_R_WRONG_FINAL_BLOCK_LENGTH 123 +#define CIPHER_R_NO_DIRECTION_SET 124 + +#endif /* OPENSSL_HEADER_CIPHER_H */ diff --git a/project/jni/boringssl/include/openssl/cmac.h b/project/jni/boringssl/include/openssl/cmac.h new file mode 100644 index 000000000..0bb44b952 --- /dev/null +++ b/project/jni/boringssl/include/openssl/cmac.h @@ -0,0 +1,76 @@ +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_CMAC_H +#define OPENSSL_HEADER_CMAC_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* CMAC. + * + * CMAC is a MAC based on AES-CBC and defined in + * https://tools.ietf.org/html/rfc4493#section-2.3. */ + + +/* One-shot functions. */ + +/* AES_CMAC calculates the 16-byte, CMAC authenticator of |in_len| bytes of + * |in| and writes it to |out|. The |key_len| may be 16 or 32 bytes to select + * between AES-128 and AES-256. It returns one on success or zero on error. */ +OPENSSL_EXPORT int AES_CMAC(uint8_t out[16], const uint8_t *key, size_t key_len, + const uint8_t *in, size_t in_len); + + +/* Incremental interface. */ + +/* CMAC_CTX_new allocates a fresh |CMAC_CTX| and returns it, or NULL on + * error. */ +OPENSSL_EXPORT CMAC_CTX *CMAC_CTX_new(void); + +/* CMAC_CTX_free frees a |CMAC_CTX|. */ +OPENSSL_EXPORT void CMAC_CTX_free(CMAC_CTX *ctx); + +/* CMAC_Init configures |ctx| to use the given |key| and |cipher|. The CMAC RFC + * only specifies the use of AES-128 thus |key_len| should be 16 and |cipher| + * should be |EVP_aes_128_cbc()|. However, this implementation also supports + * AES-256 by setting |key_len| to 32 and |cipher| to |EVP_aes_256_cbc()|. The + * |engine| argument is ignored. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int CMAC_Init(CMAC_CTX *ctx, const void *key, size_t key_len, + const EVP_CIPHER *cipher, ENGINE *engine); + + +/* CMAC_Reset resets |ctx| so that a fresh message can be authenticated. */ +OPENSSL_EXPORT int CMAC_Reset(CMAC_CTX *ctx); + +/* CMAC_Update processes |in_len| bytes of message from |in|. It returns one on + * success or zero on error. */ +OPENSSL_EXPORT int CMAC_Update(CMAC_CTX *ctx, const uint8_t *in, size_t in_len); + +/* CMAC_Final sets |*out_len| to 16 and, if |out| is not NULL, writes 16 bytes + * of authenticator to it. It returns one on success or zero on error. */ +OPENSSL_EXPORT int CMAC_Final(CMAC_CTX *ctx, uint8_t *out, size_t *out_len); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_CMAC_H */ diff --git a/project/jni/boringssl/include/openssl/conf.h b/project/jni/boringssl/include/openssl/conf.h new file mode 100644 index 000000000..a2741a8ae --- /dev/null +++ b/project/jni/boringssl/include/openssl/conf.h @@ -0,0 +1,145 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_CONF_H +#define OPENSSL_HEADER_CONF_H + +#include + +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Config files look like: + * + * # Comment + * + * # This key is in the default section. + * key=value + * + * [section_name] + * key2=value2 + * + * Config files are representated by a |CONF|. */ + +struct conf_value_st { + char *section; + char *name; + char *value; +}; + +struct conf_st { + LHASH_OF(CONF_VALUE) *data; +}; + + +/* NCONF_new returns a fresh, empty |CONF|, or NULL on error. The |method| + * argument must be NULL. */ +CONF *NCONF_new(void *method); + +/* NCONF_free frees all the data owned by |conf| and then |conf| itself. */ +void NCONF_free(CONF *conf); + +/* NCONF_load parses the file named |filename| and adds the values found to + * |conf|. It returns one on success and zero on error. In the event of an + * error, if |out_error_line| is not NULL, |*out_error_line| is set to the + * number of the line that contained the error. */ +int NCONF_load(CONF *conf, const char *filename, long *out_error_line); + +/* NCONF_load_bio acts like |NCONF_load| but reads from |bio| rather than from + * a named file. */ +int NCONF_load_bio(CONF *conf, BIO *bio, long *out_error_line); + +/* NCONF_get_section returns a stack of values for a given section in |conf|. + * If |section| is NULL, the default section is returned. It returns NULL on + * error. */ +STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf, const char *section); + +/* NCONF_get_string returns the value of the key |name|, in section |section|. + * The |section| argument may be NULL to indicate the default section. It + * returns the value or NULL on error. */ +const char *NCONF_get_string(const CONF *conf, const char *section, + const char *name); + + +/* Utility functions */ + +/* CONF_parse_list takes a list separated by 'sep' and calls |list_cb| giving + * the start and length of each member, optionally stripping leading and + * trailing whitespace. This can be used to parse comma separated lists for + * example. If |list_cb| returns <= 0, then the iteration is halted and that + * value is returned immediately. Otherwise it returns one. Note that |list_cb| + * may be called on an empty member. */ +int CONF_parse_list(const char *list, char sep, int remove_whitespace, + int (*list_cb)(const char *elem, int len, void *usr), + void *arg); + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define CONF_R_LIST_CANNOT_BE_NULL 100 +#define CONF_R_MISSING_CLOSE_SQUARE_BRACKET 101 +#define CONF_R_MISSING_EQUAL_SIGN 102 +#define CONF_R_NO_CLOSE_BRACE 103 +#define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 104 +#define CONF_R_VARIABLE_HAS_NO_VALUE 105 + +#endif /* OPENSSL_HEADER_THREAD_H */ diff --git a/project/jni/boringssl/include/openssl/cpu.h b/project/jni/boringssl/include/openssl/cpu.h new file mode 100644 index 000000000..e946304a3 --- /dev/null +++ b/project/jni/boringssl/include/openssl/cpu.h @@ -0,0 +1,184 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_CPU_H +#define OPENSSL_HEADER_CPU_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Runtime CPU feature support */ + + +#if defined(OPENSSL_X86) || defined(OPENSSL_X86_64) +/* OPENSSL_ia32cap_P contains the Intel CPUID bits when running on an x86 or + * x86-64 system. + * + * Index 0: + * EDX for CPUID where EAX = 1 + * Bit 20 is always zero + * Bit 28 is adjusted to reflect whether the data cache is shared between + * multiple logical cores + * Bit 30 is used to indicate an Intel CPU + * Index 1: + * ECX for CPUID where EAX = 1 + * Bit 11 is used to indicate AMD XOP support, not SDBG + * Index 2: + * EBX for CPUID where EAX = 7 + * Index 3 is set to zero. + * + * Note: the CPUID bits are pre-adjusted for the OSXSAVE bit and the YMM and XMM + * bits in XCR0, so it is not necessary to check those. */ +extern uint32_t OPENSSL_ia32cap_P[4]; +#endif + +#if defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64) + +#if defined(OPENSSL_APPLE) +/* iOS builds use the static ARM configuration. */ +#define OPENSSL_STATIC_ARMCAP +#endif + +#if !defined(OPENSSL_STATIC_ARMCAP) + +/* CRYPTO_is_NEON_capable_at_runtime returns true if the current CPU has a NEON + * unit. Note that |OPENSSL_armcap_P| also exists and contains the same + * information in a form that's easier for assembly to use. */ +OPENSSL_EXPORT char CRYPTO_is_NEON_capable_at_runtime(void); + +/* CRYPTO_is_NEON_capable returns true if the current CPU has a NEON unit. If + * this is known statically then it returns one immediately. */ +static inline int CRYPTO_is_NEON_capable(void) { +#if defined(__ARM_NEON__) + return 1; +#else + return CRYPTO_is_NEON_capable_at_runtime(); +#endif +} + +/* CRYPTO_set_NEON_capable sets the return value of |CRYPTO_is_NEON_capable|. + * By default, unless the code was compiled with |-mfpu=neon|, NEON is assumed + * not to be present. It is not autodetected. Calling this with a zero + * argument also causes |CRYPTO_is_NEON_functional| to return false. */ +OPENSSL_EXPORT void CRYPTO_set_NEON_capable(char neon_capable); + +/* CRYPTO_is_NEON_functional returns true if the current CPU has a /working/ + * NEON unit. Some phones have a NEON unit, but the Poly1305 NEON code causes + * it to fail. See https://code.google.com/p/chromium/issues/detail?id=341598 */ +OPENSSL_EXPORT char CRYPTO_is_NEON_functional(void); + +/* CRYPTO_set_NEON_functional sets the "NEON functional" flag. For + * |CRYPTO_is_NEON_functional| to return true, both this flag and the NEON flag + * must be true. By default NEON is assumed to be functional if the code was + * compiled with |-mfpu=neon| or if |CRYPTO_set_NEON_capable| has been called + * with a non-zero argument. */ +OPENSSL_EXPORT void CRYPTO_set_NEON_functional(char neon_functional); + +/* CRYPTO_is_ARMv8_AES_capable returns true if the current CPU supports the + * ARMv8 AES instruction. */ +int CRYPTO_is_ARMv8_AES_capable(void); + +/* CRYPTO_is_ARMv8_PMULL_capable returns true if the current CPU supports the + * ARMv8 PMULL instruction. */ +int CRYPTO_is_ARMv8_PMULL_capable(void); + +#else + +static inline int CRYPTO_is_NEON_capable(void) { +#if defined(OPENSSL_STATIC_ARMCAP_NEON) || defined(__ARM_NEON__) + return 1; +#else + return 0; +#endif +} + +static inline int CRYPTO_is_NEON_functional(void) { + return CRYPTO_is_NEON_capable(); +} + +static inline int CRYPTO_is_ARMv8_AES_capable(void) { +#if defined(OPENSSL_STATIC_ARMCAP_AES) + return 1; +#else + return 0; +#endif +} + +static inline int CRYPTO_is_ARMv8_PMULL_capable(void) { +#if defined(OPENSSL_STATIC_ARMCAP_PMULL) + return 1; +#else + return 0; +#endif +} + +#endif /* OPENSSL_STATIC_ARMCAP */ +#endif /* OPENSSL_ARM */ + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_CPU_H */ diff --git a/project/jni/boringssl/include/openssl/crypto.h b/project/jni/boringssl/include/openssl/crypto.h new file mode 100644 index 000000000..b42188473 --- /dev/null +++ b/project/jni/boringssl/include/openssl/crypto.h @@ -0,0 +1,68 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_CRYPTO_H +#define OPENSSL_HEADER_CRYPTO_H + +#include + +/* Upstream OpenSSL defines |OPENSSL_malloc|, etc., in crypto.h rather than + * mem.h. */ +#include + +/* Upstream OpenSSL defines |CRYPTO_LOCK|, etc., in crypto.h rather than + * thread.h. */ +#include + + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* crypto.h contains functions for initializing the crypto library. */ + + +/* CRYPTO_library_init initializes the crypto library. It must be called if the + * library is built with BORINGSSL_NO_STATIC_INITIALIZER. Otherwise, it does + * nothing and a static initializer is used instead. */ +OPENSSL_EXPORT void CRYPTO_library_init(void); + + +/* Deprecated functions. */ + +#define OPENSSL_VERSION_TEXT "BoringSSL" + +#define SSLEAY_VERSION 0 + +/* SSLeay_version is a compatibility function that returns the string + * "BoringSSL". */ +OPENSSL_EXPORT const char *SSLeay_version(int unused); + +/* SSLeay is a compatibility function that returns OPENSSL_VERSION_NUMBER from + * base.h. */ +OPENSSL_EXPORT unsigned long SSLeay(void); + +/* CRYPTO_malloc_init returns one. */ +OPENSSL_EXPORT int CRYPTO_malloc_init(void); + +/* ENGINE_load_builtin_engines does nothing. */ +OPENSSL_EXPORT void ENGINE_load_builtin_engines(void); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_CRYPTO_H */ diff --git a/project/jni/boringssl/include/openssl/curve25519.h b/project/jni/boringssl/include/openssl/curve25519.h new file mode 100644 index 000000000..30c647015 --- /dev/null +++ b/project/jni/boringssl/include/openssl/curve25519.h @@ -0,0 +1,92 @@ +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_CURVE25519_H +#define OPENSSL_HEADER_CURVE25519_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Curve25519. + * + * Curve25519 is an elliptic curve. See + * https://tools.ietf.org/html/draft-irtf-cfrg-curves-11. */ + + +/* X25519. + * + * Curve25519 is an elliptic curve. The same name is also sometimes used for + * the Diffie-Hellman primitive built from it but “X25519” is a more precise + * name for that, which is the one used here. See http://cr.yp.to/ecdh.html and + * https://tools.ietf.org/html/draft-irtf-cfrg-curves-11. */ + +/* X25519_keypair sets |out_public_value| and |out_private_key| to a freshly + * generated, public–private key pair. */ +OPENSSL_EXPORT void X25519_keypair(uint8_t out_public_value[32], + uint8_t out_private_key[32]); + +/* X25519 writes a shared key to |out_shared_key| that is calculated from the + * given private key and the peer's public value. It returns one on success and + * zero on error. + * + * Don't use the shared key directly, rather use a KDF and also include the two + * public values as inputs. */ +OPENSSL_EXPORT int X25519(uint8_t out_shared_key[32], + const uint8_t private_key[32], + const uint8_t peers_public_value[32]); + +/* X25519_public_from_private calculates a Diffie-Hellman public value from the + * given private key and writes it to |out_public_value|. */ +OPENSSL_EXPORT void X25519_public_from_private(uint8_t out_public_value[32], + const uint8_t private_key[32]); + + +/* Ed25519. + * + * Ed25519 is a signature scheme using a twisted-Edwards curve that is + * birationally equivalent to curve25519. */ + +#define ED25519_PRIVATE_KEY_LEN 64 +#define ED25519_PUBLIC_KEY_LEN 32 +#define ED25519_SIGNATURE_LEN 64 + +/* ED25519_keypair sets |out_public_key| and |out_private_key| to a freshly + * generated, public–private key pair. */ +OPENSSL_EXPORT void ED25519_keypair(uint8_t out_public_key[32], + uint8_t out_private_key[64]); + +/* ED25519_sign sets |out_sig| to be a signature of |message_len| bytes from + * |message| using |private_key|. It returns one on success or zero on + * error. */ +OPENSSL_EXPORT int ED25519_sign(uint8_t out_sig[64], const uint8_t *message, + size_t message_len, + const uint8_t private_key[64]); + +/* ED25519_verify returns one iff |signature| is a valid signature, by + * |public_key| of |message_len| bytes from |message|. It returns zero + * otherwise. */ +OPENSSL_EXPORT int ED25519_verify(const uint8_t *message, size_t message_len, + const uint8_t signature[64], + const uint8_t public_key[32]); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_CURVE25519_H */ diff --git a/project/jni/boringssl/include/openssl/des.h b/project/jni/boringssl/include/openssl/des.h new file mode 100644 index 000000000..2b8dd0f62 --- /dev/null +++ b/project/jni/boringssl/include/openssl/des.h @@ -0,0 +1,177 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_DES_H +#define OPENSSL_HEADER_DES_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* DES. */ + + +typedef struct DES_cblock_st { + uint8_t bytes[8]; +} DES_cblock; + +typedef struct DES_ks { + uint32_t subkeys[16][2]; +} DES_key_schedule; + + +#define DES_KEY_SZ (sizeof(DES_cblock)) +#define DES_SCHEDULE_SZ (sizeof(DES_key_schedule)) + +#define DES_ENCRYPT 1 +#define DES_DECRYPT 0 + +#define DES_CBC_MODE 0 +#define DES_PCBC_MODE 1 + +/* DES_set_key performs a key schedule and initialises |schedule| with |key|. */ +OPENSSL_EXPORT void DES_set_key(const DES_cblock *key, + DES_key_schedule *schedule); + +/* DES_set_odd_parity sets the parity bits (the least-significant bits in each + * byte) of |key| given the other bits in each byte. */ +OPENSSL_EXPORT void DES_set_odd_parity(DES_cblock *key); + +/* DES_ecb_encrypt encrypts (or decrypts, if |is_encrypt| is |DES_DECRYPT|) a + * single DES block (8 bytes) from in to out, using the key configured in + * |schedule|. */ +OPENSSL_EXPORT void DES_ecb_encrypt(const DES_cblock *in, DES_cblock *out, + const DES_key_schedule *schedule, + int is_encrypt); + +/* DES_ncbc_encrypt encrypts (or decrypts, if |enc| is |DES_DECRYPT|) |len| + * bytes from |in| to |out| with DES in CBC mode. */ +OPENSSL_EXPORT void DES_ncbc_encrypt(const uint8_t *in, uint8_t *out, + size_t len, + const DES_key_schedule *schedule, + DES_cblock *ivec, int enc); + +/* DES_ecb3_encrypt encrypts (or decrypts, if |enc| is |DES_DECRYPT|) a single + * block (8 bytes) of data from |input| to |output| using 3DES. */ +OPENSSL_EXPORT void DES_ecb3_encrypt(const DES_cblock *input, + DES_cblock *output, + const DES_key_schedule *ks1, + const DES_key_schedule *ks2, + const DES_key_schedule *ks3, + int enc); + +/* DES_ede3_cbc_encrypt encrypts (or decrypts, if |enc| is |DES_DECRYPT|) |len| + * bytes from |in| to |out| with 3DES in CBC mode. 3DES uses three keys, thus + * the function takes three different |DES_key_schedule|s. */ +OPENSSL_EXPORT void DES_ede3_cbc_encrypt(const uint8_t *in, uint8_t *out, + size_t len, + const DES_key_schedule *ks1, + const DES_key_schedule *ks2, + const DES_key_schedule *ks3, + DES_cblock *ivec, int enc); + +/* DES_ede2_cbc_encrypt encrypts (or decrypts, if |enc| is |DES_DECRYPT|) |len| + * bytes from |in| to |out| with 3DES in CBC mode. With this keying option, the + * first and third 3DES keys are identical. Thus, this function takes only two + * different |DES_key_schedule|s. */ +OPENSSL_EXPORT void DES_ede2_cbc_encrypt(const uint8_t *in, uint8_t *out, + size_t len, + const DES_key_schedule *ks1, + const DES_key_schedule *ks2, + DES_cblock *ivec, int enc); + + +/* Deprecated functions. */ + +/* DES_set_key_unchecked calls |DES_set_key|. */ +OPENSSL_EXPORT void DES_set_key_unchecked(const DES_cblock *key, + DES_key_schedule *schedule); + +OPENSSL_EXPORT void DES_ede3_cfb64_encrypt(const uint8_t *in, uint8_t *out, + long length, DES_key_schedule *ks1, + DES_key_schedule *ks2, + DES_key_schedule *ks3, + DES_cblock *ivec, int *num, int enc); + +OPENSSL_EXPORT void DES_ede3_cfb_encrypt(const uint8_t *in, uint8_t *out, + int numbits, long length, + DES_key_schedule *ks1, + DES_key_schedule *ks2, + DES_key_schedule *ks3, + DES_cblock *ivec, int enc); + + +/* Private functions. + * + * These functions are only exported for use in |decrepit|. */ + +OPENSSL_EXPORT void DES_decrypt3(uint32_t *data, const DES_key_schedule *ks1, + const DES_key_schedule *ks2, + const DES_key_schedule *ks3); + +OPENSSL_EXPORT void DES_encrypt3(uint32_t *data, const DES_key_schedule *ks1, + const DES_key_schedule *ks2, + const DES_key_schedule *ks3); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_DES_H */ diff --git a/project/jni/boringssl/include/openssl/dh.h b/project/jni/boringssl/include/openssl/dh.h new file mode 100644 index 000000000..2c49fc834 --- /dev/null +++ b/project/jni/boringssl/include/openssl/dh.h @@ -0,0 +1,238 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_DH_H +#define OPENSSL_HEADER_DH_H + +#include + +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* DH contains functions for performing Diffie-Hellman key agreement in + * multiplicative groups. */ + + +/* Allocation and destruction. */ + +/* DH_new returns a new, empty DH object or NULL on error. */ +OPENSSL_EXPORT DH *DH_new(void); + +/* DH_free decrements the reference count of |dh| and frees it if the reference + * count drops to zero. */ +OPENSSL_EXPORT void DH_free(DH *dh); + +/* DH_up_ref increments the reference count of |dh|. */ +OPENSSL_EXPORT int DH_up_ref(DH *dh); + + +/* Standard parameters. + * + * These functions return new DH objects with standard parameters. They return + * NULL on allocation failure. The |engine| parameter is ignored. */ + +/* These parameters are taken from RFC 5114. */ + +OPENSSL_EXPORT DH *DH_get_1024_160(const ENGINE *engine); +OPENSSL_EXPORT DH *DH_get_2048_224(const ENGINE *engine); +OPENSSL_EXPORT DH *DH_get_2048_256(const ENGINE *engine); + + +/* Parameter generation. */ + +#define DH_GENERATOR_2 2 +#define DH_GENERATOR_5 5 + +/* DH_generate_parameters_ex generates a suitable Diffie-Hellman group with a + * prime that is |prime_bits| long and stores it in |dh|. The generator of the + * group will be |generator|, which should be |DH_GENERATOR_2| unless there's a + * good reason to use a different value. The |cb| argument contains a callback + * function that will be called during the generation. See the documentation in + * |bn.h| about this. In addition to the callback invocations from |BN|, |cb| + * will also be called with |event| equal to three when the generation is + * complete. */ +OPENSSL_EXPORT int DH_generate_parameters_ex(DH *dh, int prime_bits, + int generator, BN_GENCB *cb); + + +/* Diffie-Hellman operations. */ + +/* DH_generate_key generates a new, random, private key and stores it in + * |dh|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int DH_generate_key(DH *dh); + +/* DH_compute_key calculates the shared key between |dh| and |peers_key| and + * writes it as a big-endian integer into |out|, which must have |DH_size| + * bytes of space. It returns the number of bytes written, or a negative number + * on error. */ +OPENSSL_EXPORT int DH_compute_key(uint8_t *out, const BIGNUM *peers_key, + DH *dh); + + +/* Utility functions. */ + +/* DH_size returns the number of bytes in the DH group's prime. */ +OPENSSL_EXPORT int DH_size(const DH *dh); + +/* DH_num_bits returns the minimum number of bits needed to represent the + * absolute value of the DH group's prime. */ +OPENSSL_EXPORT unsigned DH_num_bits(const DH *dh); + +#define DH_CHECK_P_NOT_PRIME 0x01 +#define DH_CHECK_P_NOT_SAFE_PRIME 0x02 +#define DH_CHECK_UNABLE_TO_CHECK_GENERATOR 0x04 +#define DH_CHECK_NOT_SUITABLE_GENERATOR 0x08 +#define DH_CHECK_Q_NOT_PRIME 0x10 +#define DH_CHECK_INVALID_Q_VALUE 0x20 +#define DH_CHECK_INVALID_J_VALUE 0x40 + +/* These are compatibility defines. */ +#define DH_NOT_SUITABLE_GENERATOR DH_CHECK_NOT_SUITABLE_GENERATOR +#define DH_UNABLE_TO_CHECK_GENERATOR DH_CHECK_UNABLE_TO_CHECK_GENERATOR + +/* DH_check checks the suitability of |dh| as a Diffie-Hellman group. and sets + * |DH_CHECK_*| flags in |*out_flags| if it finds any errors. It returns one if + * |*out_flags| was successfully set and zero on error. + * + * Note: these checks may be quite computationally expensive. */ +OPENSSL_EXPORT int DH_check(const DH *dh, int *out_flags); + +#define DH_CHECK_PUBKEY_TOO_SMALL 1 +#define DH_CHECK_PUBKEY_TOO_LARGE 2 + +/* DH_check_pub_key checks the suitability of |pub_key| as a public key for the + * DH group in |dh| and sets |DH_CHECK_PUBKEY_*| flags in |*out_flags| if it + * finds any errors. It returns one if |*out_flags| was successfully set and + * zero on error. */ +OPENSSL_EXPORT int DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, + int *out_flags); + +/* DHparams_dup allocates a fresh |DH| and copies the parameters from |dh| into + * it. It returns the new |DH| or NULL on error. */ +OPENSSL_EXPORT DH *DHparams_dup(const DH *dh); + + +/* ASN.1 functions. */ + +/* d2i_DHparams parses an ASN.1, DER encoded Diffie-Hellman parameters + * structure from |len| bytes at |*inp|. If |ret| is not NULL then, on exit, a + * pointer to the result is in |*ret|. If |*ret| is already non-NULL on entry + * then the result is written directly into |*ret|, otherwise a fresh |DH| is + * allocated. On successful exit, |*inp| is advanced past the DER structure. It + * returns the result or NULL on error. */ +OPENSSL_EXPORT DH *d2i_DHparams(DH **ret, const unsigned char **inp, long len); + +/* i2d_DHparams marshals |in| to an ASN.1, DER structure. If |outp| is not NULL + * then the result is written to |*outp| and |*outp| is advanced just past the + * output. It returns the number of bytes in the result, whether written or + * not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_DHparams(const DH *in, unsigned char **outp); + + +/* ex_data functions. + * + * See |ex_data.h| for details. */ + +OPENSSL_EXPORT int DH_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int DH_set_ex_data(DH *d, int idx, void *arg); +OPENSSL_EXPORT void *DH_get_ex_data(DH *d, int idx); + + +struct dh_st { + BIGNUM *p; + BIGNUM *g; + BIGNUM *pub_key; /* g^x mod p */ + BIGNUM *priv_key; /* x */ + + /* priv_length contains the length, in bits, of the private value. If zero, + * the private value will be the same length as |p|. */ + unsigned priv_length; + + CRYPTO_MUTEX method_mont_p_lock; + BN_MONT_CTX *method_mont_p; + + /* Place holders if we want to do X9.42 DH */ + BIGNUM *q; + BIGNUM *j; + unsigned char *seed; + int seedlen; + BIGNUM *counter; + + int flags; + CRYPTO_refcount_t references; + CRYPTO_EX_DATA ex_data; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define DH_R_BAD_GENERATOR 100 +#define DH_R_INVALID_PUBKEY 101 +#define DH_R_MODULUS_TOO_LARGE 102 +#define DH_R_NO_PRIVATE_VALUE 103 + +#endif /* OPENSSL_HEADER_DH_H */ diff --git a/project/jni/boringssl/include/openssl/digest.h b/project/jni/boringssl/include/openssl/digest.h new file mode 100644 index 000000000..80028efda --- /dev/null +++ b/project/jni/boringssl/include/openssl/digest.h @@ -0,0 +1,258 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_DIGEST_H +#define OPENSSL_HEADER_DIGEST_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Digest functions. + * + * An EVP_MD abstracts the details of a specific hash function allowing code to + * deal with the concept of a "hash function" without needing to know exactly + * which hash function it is. */ + + +/* Hash algorithms. + * + * The following functions return |EVP_MD| objects that implement the named hash + * function. */ + +OPENSSL_EXPORT const EVP_MD *EVP_md4(void); +OPENSSL_EXPORT const EVP_MD *EVP_md5(void); +OPENSSL_EXPORT const EVP_MD *EVP_sha1(void); +OPENSSL_EXPORT const EVP_MD *EVP_sha224(void); +OPENSSL_EXPORT const EVP_MD *EVP_sha256(void); +OPENSSL_EXPORT const EVP_MD *EVP_sha384(void); +OPENSSL_EXPORT const EVP_MD *EVP_sha512(void); + +/* EVP_md5_sha1 is a TLS-specific |EVP_MD| which computes the concatenation of + * MD5 and SHA-1, as used in TLS 1.1 and below. */ +OPENSSL_EXPORT const EVP_MD *EVP_md5_sha1(void); + +/* EVP_get_digestbynid returns an |EVP_MD| for the given NID, or NULL if no + * such digest is known. */ +OPENSSL_EXPORT const EVP_MD *EVP_get_digestbynid(int nid); + +/* EVP_get_digestbyobj returns an |EVP_MD| for the given |ASN1_OBJECT|, or NULL + * if no such digest is known. */ +OPENSSL_EXPORT const EVP_MD *EVP_get_digestbyobj(const ASN1_OBJECT *obj); + + +/* Digest contexts. + * + * An EVP_MD_CTX represents the state of a specific digest operation in + * progress. */ + +/* EVP_MD_CTX_init initialises an, already allocated, |EVP_MD_CTX|. */ +OPENSSL_EXPORT void EVP_MD_CTX_init(EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_create allocates and initialises a fresh |EVP_MD_CTX| and returns + * it, or NULL on allocation failure. */ +OPENSSL_EXPORT EVP_MD_CTX *EVP_MD_CTX_create(void); + +/* EVP_MD_CTX_cleanup frees any resources owned by |ctx| and resets it to a + * freshly initialised state. It does not free |ctx| itself. It returns one. */ +OPENSSL_EXPORT int EVP_MD_CTX_cleanup(EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_destroy calls |EVP_MD_CTX_cleanup| and then frees |ctx| itself. */ +OPENSSL_EXPORT void EVP_MD_CTX_destroy(EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_copy_ex sets |out|, which must already be initialised, to be a + * copy of |in|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int EVP_MD_CTX_copy_ex(EVP_MD_CTX *out, const EVP_MD_CTX *in); + + +/* Digest operations. */ + +/* EVP_DigestInit_ex configures |ctx|, which must already have been + * initialised, for a fresh hashing operation using |type|. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, + ENGINE *engine); + +/* EVP_DigestInit acts like |EVP_DigestInit_ex| except that |ctx| is + * initialised before use. */ +OPENSSL_EXPORT int EVP_DigestInit(EVP_MD_CTX *ctx, const EVP_MD *type); + +/* EVP_DigestUpdate hashes |len| bytes from |data| into the hashing operation + * in |ctx|. It returns one. */ +OPENSSL_EXPORT int EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *data, + size_t len); + +/* EVP_MAX_MD_SIZE is the largest digest size supported, in bytes. + * Functions that output a digest generally require the buffer have + * at least this much space. */ +#define EVP_MAX_MD_SIZE 64 /* SHA-512 is the longest so far. */ + +/* EVP_DigestFinal_ex finishes the digest in |ctx| and writes the output to + * |md_out|. At most |EVP_MAX_MD_SIZE| bytes are written. If |out_size| is not + * NULL then |*out_size| is set to the number of bytes written. It returns one. + * After this call, the hash cannot be updated or finished again until + * |EVP_DigestInit_ex| is called to start another hashing operation. */ +OPENSSL_EXPORT int EVP_DigestFinal_ex(EVP_MD_CTX *ctx, uint8_t *md_out, + unsigned int *out_size); + +/* EVP_DigestFinal acts like |EVP_DigestFinal_ex| except that + * |EVP_MD_CTX_cleanup| is called on |ctx| before returning. */ +OPENSSL_EXPORT int EVP_DigestFinal(EVP_MD_CTX *ctx, uint8_t *md_out, + unsigned int *out_size); + +/* EVP_Digest performs a complete hashing operation in one call. It hashes + * |len| bytes from |data| and writes the digest to |md_out|. At most + * |EVP_MAX_MD_SIZE| bytes are written. If |out_size| is not NULL then + * |*out_size| is set to the number of bytes written. It returns one on success + * and zero otherwise. */ +OPENSSL_EXPORT int EVP_Digest(const void *data, size_t len, uint8_t *md_out, + unsigned int *md_out_size, const EVP_MD *type, + ENGINE *impl); + + +/* Digest function accessors. + * + * These functions allow code to learn details about an abstract hash + * function. */ + +/* EVP_MD_type returns a NID identifing |md|. (For example, |NID_sha256|.) */ +OPENSSL_EXPORT int EVP_MD_type(const EVP_MD *md); + +/* EVP_MD_flags returns the flags for |md|, which is a set of |EVP_MD_FLAG_*| + * values, ORed together. */ +OPENSSL_EXPORT uint32_t EVP_MD_flags(const EVP_MD *md); + +/* EVP_MD_size returns the digest size of |md|, in bytes. */ +OPENSSL_EXPORT size_t EVP_MD_size(const EVP_MD *md); + +/* EVP_MD_block_size returns the native block-size of |md|, in bytes. */ +OPENSSL_EXPORT size_t EVP_MD_block_size(const EVP_MD *md); + +/* EVP_MD_FLAG_PKEY_DIGEST indicates the the digest function is used with a + * specific public key in order to verify signatures. (For example, + * EVP_dss1.) */ +#define EVP_MD_FLAG_PKEY_DIGEST 1 + +/* EVP_MD_FLAG_DIGALGID_ABSENT indicates that the parameter type in an X.509 + * DigestAlgorithmIdentifier representing this digest function should be + * undefined rather than NULL. */ +#define EVP_MD_FLAG_DIGALGID_ABSENT 2 + + +/* Deprecated functions. */ + +/* EVP_MD_CTX_copy sets |out|, which must /not/ be initialised, to be a copy of + * |in|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int EVP_MD_CTX_copy(EVP_MD_CTX *out, const EVP_MD_CTX *in); + +/* EVP_add_digest does nothing and returns one. It exists only for + * compatibility with OpenSSL. */ +OPENSSL_EXPORT int EVP_add_digest(const EVP_MD *digest); + +/* EVP_get_digestbyname returns an |EVP_MD| given a human readable name in + * |name|, or NULL if the name is unknown. */ +OPENSSL_EXPORT const EVP_MD *EVP_get_digestbyname(const char *); + + +/* Digest operation accessors. */ + +/* EVP_MD_CTX_md returns the underlying digest function, or NULL if one has not + * been set. */ +OPENSSL_EXPORT const EVP_MD *EVP_MD_CTX_md(const EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_size returns the digest size of |ctx|, in bytes. It + * will crash if a digest hasn't been set on |ctx|. */ +OPENSSL_EXPORT unsigned EVP_MD_CTX_size(const EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_block_size returns the block size of the digest function used by + * |ctx|, in bytes. It will crash if a digest hasn't been set on |ctx|. */ +OPENSSL_EXPORT unsigned EVP_MD_CTX_block_size(const EVP_MD_CTX *ctx); + +/* EVP_MD_CTX_type returns a NID describing the digest function used by |ctx|. + * (For example, |NID_sha256|.) It will crash if a digest hasn't been set on + * |ctx|. */ +OPENSSL_EXPORT int EVP_MD_CTX_type(const EVP_MD_CTX *ctx); + + +struct evp_md_pctx_ops; + +struct env_md_ctx_st { + /* digest is the underlying digest function, or NULL if not set. */ + const EVP_MD *digest; + /* md_data points to a block of memory that contains the hash-specific + * context. */ + void *md_data; + + /* pctx is an opaque (at this layer) pointer to additional context that + * EVP_PKEY functions may store in this object. */ + EVP_PKEY_CTX *pctx; + + /* pctx_ops, if not NULL, points to a vtable that contains functions to + * manipulate |pctx|. */ + const struct evp_md_pctx_ops *pctx_ops; +} /* EVP_MD_CTX */; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define DIGEST_R_INPUT_NOT_INITIALIZED 100 + +#endif /* OPENSSL_HEADER_DIGEST_H */ diff --git a/project/jni/boringssl/include/openssl/dsa.h b/project/jni/boringssl/include/openssl/dsa.h new file mode 100644 index 000000000..2045fe736 --- /dev/null +++ b/project/jni/boringssl/include/openssl/dsa.h @@ -0,0 +1,343 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + * + * The DSS routines are based on patches supplied by + * Steven Schoch . */ + +#ifndef OPENSSL_HEADER_DSA_H +#define OPENSSL_HEADER_DSA_H + +#include + +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* DSA contains functions for signing and verifing with the Digital Signature + * Algorithm. */ + + +/* Allocation and destruction. */ + +/* DSA_new returns a new, empty DSA object or NULL on error. */ +OPENSSL_EXPORT DSA *DSA_new(void); + +/* DSA_free decrements the reference count of |dsa| and frees it if the + * reference count drops to zero. */ +OPENSSL_EXPORT void DSA_free(DSA *dsa); + +/* DSA_up_ref increments the reference count of |dsa|. */ +OPENSSL_EXPORT int DSA_up_ref(DSA *dsa); + + +/* Parameter generation. */ + +/* DSA_generate_parameters_ex generates a set of DSA parameters by following + * the procedure given in FIPS 186-4, appendix A. + * (http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf) + * + * The larger prime will have a length of |bits| (e.g. 2048). The |seed| value + * allows others to generate and verify the same parameters and should be + * random input which is kept for reference. If |out_counter| or |out_h| are + * not NULL then the counter and h value used in the generation are written to + * them. + * + * The |cb| argument is passed to |BN_generate_prime_ex| and is thus called + * during the generation process in order to indicate progress. See the + * comments for that function for details. In addition to the calls made by + * |BN_generate_prime_ex|, |DSA_generate_parameters_ex| will call it with + * |event| equal to 2 and 3 at different stages of the process. + * + * It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int DSA_generate_parameters_ex(DSA *dsa, unsigned bits, + const uint8_t *seed, + size_t seed_len, int *out_counter, + unsigned long *out_h, + BN_GENCB *cb); + +/* DSAparams_dup returns a freshly allocated |DSA| that contains a copy of the + * parameters from |dsa|. It returns NULL on error. */ +OPENSSL_EXPORT DSA *DSAparams_dup(const DSA *dsa); + + +/* Key generation. */ + +/* DSA_generate_key generates a public/private key pair in |dsa|, which must + * already have parameters setup. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int DSA_generate_key(DSA *dsa); + + +/* Signatures. */ + +/* DSA_SIG contains a DSA signature as a pair of integers. */ +typedef struct DSA_SIG_st { + BIGNUM *r, *s; +} DSA_SIG; + +/* DSA_SIG_new returns a freshly allocated, DIG_SIG structure or NULL on error. + * Both |r| and |s| in the signature will be NULL. */ +OPENSSL_EXPORT DSA_SIG *DSA_SIG_new(void); + +/* DSA_SIG_free frees the contents of |sig| and then frees |sig| itself. */ +OPENSSL_EXPORT void DSA_SIG_free(DSA_SIG *sig); + +/* DSA_do_sign returns a signature of the hash in |digest| by the key in |dsa| + * and returns an allocated, DSA_SIG structure, or NULL on error. */ +OPENSSL_EXPORT DSA_SIG *DSA_do_sign(const uint8_t *digest, size_t digest_len, + DSA *dsa); + +/* DSA_do_verify verifies that |sig| is a valid signature, by the public key in + * |dsa|, of the hash in |digest|. It returns one if so, zero if invalid and -1 + * on error. + * + * WARNING: do not use. This function returns -1 for error, 0 for invalid and 1 + * for valid. However, this is dangerously different to the usual OpenSSL + * convention and could be a disaster if a user did |if (DSA_do_verify(...))|. + * Because of this, |DSA_check_signature| is a safer version of this. + * + * TODO(fork): deprecate. */ +OPENSSL_EXPORT int DSA_do_verify(const uint8_t *digest, size_t digest_len, + DSA_SIG *sig, const DSA *dsa); + +/* DSA_do_check_signature sets |*out_valid| to zero. Then it verifies that |sig| + * is a valid signature, by the public key in |dsa| of the hash in |digest| + * and, if so, it sets |*out_valid| to one. + * + * It returns one if it was able to verify the signature as valid or invalid, + * and zero on error. */ +OPENSSL_EXPORT int DSA_do_check_signature(int *out_valid, const uint8_t *digest, + size_t digest_len, DSA_SIG *sig, + const DSA *dsa); + + +/* ASN.1 signatures. + * + * These functions also perform DSA signature operations, but deal with ASN.1 + * encoded signatures as opposed to raw |BIGNUM|s. If you don't know what + * encoding a DSA signature is in, it's probably ASN.1. */ + +/* DSA_sign signs |digest| with the key in |dsa| and writes the resulting + * signature, in ASN.1 form, to |out_sig| and the length of the signature to + * |*out_siglen|. There must be, at least, |DSA_size(dsa)| bytes of space in + * |out_sig|. It returns one on success and zero otherwise. + * + * (The |type| argument is ignored.) */ +OPENSSL_EXPORT int DSA_sign(int type, const uint8_t *digest, size_t digest_len, + uint8_t *out_sig, unsigned int *out_siglen, + DSA *dsa); + +/* DSA_verify verifies that |sig| is a valid, ASN.1 signature, by the public + * key in |dsa|, of the hash in |digest|. It returns one if so, zero if invalid + * and -1 on error. + * + * (The |type| argument is ignored.) + * + * WARNING: do not use. This function returns -1 for error, 0 for invalid and 1 + * for valid. However, this is dangerously different to the usual OpenSSL + * convention and could be a disaster if a user did |if (DSA_do_verify(...))|. + * Because of this, |DSA_check_signature| is a safer version of this. + * + * TODO(fork): deprecate. */ +OPENSSL_EXPORT int DSA_verify(int type, const uint8_t *digest, + size_t digest_len, const uint8_t *sig, + size_t sig_len, const DSA *dsa); + +/* DSA_check_signature sets |*out_valid| to zero. Then it verifies that |sig| + * is a valid, ASN.1 signature, by the public key in |dsa|, of the hash in + * |digest|. If so, it sets |*out_valid| to one. + * + * It returns one if it was able to verify the signature as valid or invalid, + * and zero on error. */ +OPENSSL_EXPORT int DSA_check_signature(int *out_valid, const uint8_t *digest, + size_t digest_len, const uint8_t *sig, + size_t sig_len, const DSA *dsa); + +/* DSA_size returns the size, in bytes, of an ASN.1 encoded, DSA signature + * generated by |dsa|. Parameters must already have been setup in |dsa|. */ +OPENSSL_EXPORT int DSA_size(const DSA *dsa); + + +/* ASN.1 encoding. */ + +/* d2i_DSA_SIG parses an ASN.1, DER-encoded, DSA signature from |len| bytes at + * |*inp|. If |out_sig| is not NULL then, on exit, a pointer to the result is + * in |*out_sig|. If |*out_sig| is already non-NULL on entry then the result is + * written directly into |*out_sig|, otherwise a fresh |DSA_SIG| is allocated. + * On successful exit, |*inp| is advanced past the DER structure. It returns + * the result or NULL on error. */ +OPENSSL_EXPORT DSA_SIG *d2i_DSA_SIG(DSA_SIG **out_sig, const uint8_t **inp, + long len); + +/* i2d_DSA_SIG marshals |in| to an ASN.1, DER structure. If |outp| is not NULL + * then the result is written to |*outp| and |*outp| is advanced just past the + * output. It returns the number of bytes in the result, whether written or not, + * or a negative value on error. */ +OPENSSL_EXPORT int i2d_DSA_SIG(const DSA_SIG *in, uint8_t **outp); + +/* d2i_DSAPublicKey parses an ASN.1, DER-encoded, DSA public key from |len| + * bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result + * is in |*out|. If |*out| is already non-NULL on entry then the result is + * written directly into |*out|, otherwise a fresh |DSA| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT DSA *d2i_DSAPublicKey(DSA **out, const uint8_t **inp, long len); + +/* i2d_DSAPublicKey marshals a public key from |in| to an ASN.1, DER structure. + * If |outp| is not NULL then the result is written to |*outp| and |*outp| is + * advanced just past the output. It returns the number of bytes in the result, + * whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_DSAPublicKey(const DSA *in, unsigned char **outp); + +/* d2i_DSAPrivateKey parses an ASN.1, DER-encoded, DSA private key from |len| + * bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result + * is in |*out|. If |*out| is already non-NULL on entry then the result is + * written directly into |*out|, otherwise a fresh |DSA| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT DSA *d2i_DSAPrivateKey(DSA **out, const uint8_t **inp, long len); + +/* i2d_DSAPrivateKey marshals a private key from |in| to an ASN.1, DER structure. + * If |outp| is not NULL then the result is written to |*outp| and |*outp| is + * advanced just past the output. It returns the number of bytes in the result, + * whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_DSAPrivateKey(const DSA *in, unsigned char **outp); + +/* d2i_DSAparams parses ASN.1, DER-encoded, DSA parameters from |len| bytes at + * |*inp|. If |out| is not NULL then, on exit, a pointer to the result is in + * |*out|. If |*out| is already non-NULL on entry then the result is written + * directly into |*out|, otherwise a fresh |DSA| is allocated. On successful + * exit, |*inp| is advanced past the DER structure. It returns the result or + * NULL on error. */ +OPENSSL_EXPORT DSA *d2i_DSAparams(DSA **out, const uint8_t **inp, long len); + +/* i2d_DSAparams marshals DSA parameters from |in| to an ASN.1, DER structure. + * If |outp| is not NULL then the result is written to |*outp| and |*outp| is + * advanced just past the output. It returns the number of bytes in the result, + * whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_DSAparams(const DSA *in, unsigned char **outp); + + +/* Precomputation. */ + +/* DSA_sign_setup precomputes the message independent part of the DSA signature + * and writes them to |*out_kinv| and |*out_r|. Returns one on success, zero on + * error. + * + * TODO(fork): decide what to do with this. Since making DSA* opaque there's no + * way for the user to install them. Also, it forces the DSA* not to be const + * when passing to the signing function. */ +OPENSSL_EXPORT int DSA_sign_setup(const DSA *dsa, BN_CTX *ctx, + BIGNUM **out_kinv, BIGNUM **out_r); + + +/* Conversion. */ + +/* DSA_dup_DH returns a |DH| constructed from the parameters of |dsa|. This is + * sometimes needed when Diffie-Hellman parameters are stored in the form of + * DSA parameters. It returns an allocated |DH| on success or NULL on error. */ +OPENSSL_EXPORT DH *DSA_dup_DH(const DSA *dsa); + + +/* ex_data functions. + * + * See |ex_data.h| for details. */ + +OPENSSL_EXPORT int DSA_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int DSA_set_ex_data(DSA *d, int idx, void *arg); +OPENSSL_EXPORT void *DSA_get_ex_data(const DSA *d, int idx); + + +struct dsa_st { + long version; + int write_params; + BIGNUM *p; + BIGNUM *q; /* == 20 */ + BIGNUM *g; + + BIGNUM *pub_key; /* y public key */ + BIGNUM *priv_key; /* x private key */ + + BIGNUM *kinv; /* Signing pre-calc */ + BIGNUM *r; /* Signing pre-calc */ + + int flags; + /* Normally used to cache montgomery values */ + CRYPTO_MUTEX method_mont_p_lock; + BN_MONT_CTX *method_mont_p; + CRYPTO_refcount_t references; + CRYPTO_EX_DATA ex_data; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define DSA_R_BAD_Q_VALUE 100 +#define DSA_R_MISSING_PARAMETERS 101 +#define DSA_R_MODULUS_TOO_LARGE 102 +#define DSA_R_NEED_NEW_SETUP_VALUES 103 + +#endif /* OPENSSL_HEADER_DSA_H */ diff --git a/project/jni/boringssl/include/openssl/dtls1.h b/project/jni/boringssl/include/openssl/dtls1.h new file mode 100644 index 000000000..38ca801cb --- /dev/null +++ b/project/jni/boringssl/include/openssl/dtls1.h @@ -0,0 +1,16 @@ +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ diff --git a/project/jni/boringssl/include/openssl/ec.h b/project/jni/boringssl/include/openssl/ec.h new file mode 100644 index 000000000..667be3b3b --- /dev/null +++ b/project/jni/boringssl/include/openssl/ec.h @@ -0,0 +1,355 @@ +/* Originally written by Bodo Moeller for the OpenSSL project. + * ==================================================================== + * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * + * Portions of the attached software ("Contribution") are developed by + * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + * + * The Contribution is licensed pursuant to the OpenSSL open source + * license provided above. + * + * The elliptic curve binary polynomial software is originally written by + * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems + * Laboratories. */ + +#ifndef OPENSSL_HEADER_EC_H +#define OPENSSL_HEADER_EC_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Low-level operations on elliptic curves. */ + + +typedef struct ec_group_st EC_GROUP; +typedef struct ec_point_st EC_POINT; + +/** Enum for the point conversion form as defined in X9.62 (ECDSA) + * for the encoding of a elliptic curve point (x,y) */ +typedef enum { + /** the point is encoded as z||x, where the octet z specifies + * which solution of the quadratic equation y is */ + POINT_CONVERSION_COMPRESSED = 2, + /** the point is encoded as z||x||y, where z is the octet 0x04 */ + POINT_CONVERSION_UNCOMPRESSED = 4 +} point_conversion_form_t; + + +/* Elliptic curve groups. */ + +/* EC_GROUP_new_by_curve_name returns a fresh EC_GROUP object for the elliptic + * curve specified by |nid|, or NULL on error. + * + * The supported NIDs are: + * NID_secp224r1, + * NID_X9_62_prime256v1, + * NID_secp384r1, + * NID_secp521r1 */ +OPENSSL_EXPORT EC_GROUP *EC_GROUP_new_by_curve_name(int nid); + +/* EC_GROUP_free frees |group| and the data that it points to. */ +OPENSSL_EXPORT void EC_GROUP_free(EC_GROUP *group); + +/* EC_GROUP_dup returns a fresh |EC_GROUP| which is equal to |a| or NULL on + * error. */ +OPENSSL_EXPORT EC_GROUP *EC_GROUP_dup(const EC_GROUP *a); + +/* EC_GROUP_cmp returns zero if |a| and |b| are the same group and non-zero + * otherwise. */ +OPENSSL_EXPORT int EC_GROUP_cmp(const EC_GROUP *a, const EC_GROUP *b, + BN_CTX *ignored); + +/* EC_GROUP_get0_generator returns a pointer to the internal |EC_POINT| object + * in |group| that specifies the generator for the group. */ +OPENSSL_EXPORT const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group); + +/* EC_GROUP_get0_order returns a pointer to the internal |BIGNUM| object in + * |group| that specifies the order of the group. */ +OPENSSL_EXPORT const BIGNUM *EC_GROUP_get0_order(const EC_GROUP *group); + +/* EC_GROUP_get_cofactor sets |*cofactor| to the cofactor of |group| using + * |ctx|, if it's not NULL. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_GROUP_get_cofactor(const EC_GROUP *group, + BIGNUM *cofactor, BN_CTX *ctx); + +/* EC_GROUP_get_curve_GFp gets various parameters about a group. It sets + * |*out_p| to the order of the coordinate field and |*out_a| and |*out_b| to + * the parameters of the curve when expressed as y² = x³ + ax + b. Any of the + * output parameters can be NULL. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int EC_GROUP_get_curve_GFp(const EC_GROUP *group, BIGNUM *out_p, + BIGNUM *out_a, BIGNUM *out_b, + BN_CTX *ctx); + +/* EC_GROUP_get_curve_name returns a NID that identifies |group|. */ +OPENSSL_EXPORT int EC_GROUP_get_curve_name(const EC_GROUP *group); + +/* EC_GROUP_get_degree returns the number of bits needed to represent an + * element of the field underlying |group|. */ +OPENSSL_EXPORT unsigned EC_GROUP_get_degree(const EC_GROUP *group); + + +/* Points on elliptic curves. */ + +/* EC_POINT_new returns a fresh |EC_POINT| object in the given group, or NULL + * on error. */ +OPENSSL_EXPORT EC_POINT *EC_POINT_new(const EC_GROUP *group); + +/* EC_POINT_free frees |point| and the data that it points to. */ +OPENSSL_EXPORT void EC_POINT_free(EC_POINT *point); + +/* EC_POINT_clear_free clears the data that |point| points to, frees it and + * then frees |point| itself. */ +OPENSSL_EXPORT void EC_POINT_clear_free(EC_POINT *point); + +/* EC_POINT_copy sets |*dest| equal to |*src|. It returns one on success and + * zero otherwise. */ +OPENSSL_EXPORT int EC_POINT_copy(EC_POINT *dest, const EC_POINT *src); + +/* EC_POINT_dup returns a fresh |EC_POINT| that contains the same values as + * |src|, or NULL on error. */ +OPENSSL_EXPORT EC_POINT *EC_POINT_dup(const EC_POINT *src, + const EC_GROUP *group); + +/* EC_POINT_set_to_infinity sets |point| to be the "point at infinity" for the + * given group. */ +OPENSSL_EXPORT int EC_POINT_set_to_infinity(const EC_GROUP *group, + EC_POINT *point); + +/* EC_POINT_is_at_infinity returns one iff |point| is the point at infinity and + * zero otherwise. */ +OPENSSL_EXPORT int EC_POINT_is_at_infinity(const EC_GROUP *group, + const EC_POINT *point); + +/* EC_POINT_is_on_curve returns one if |point| is an element of |group| and + * zero otheriwse. If |ctx| is non-NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_is_on_curve(const EC_GROUP *group, + const EC_POINT *point, BN_CTX *ctx); + +/* EC_POINT_cmp returns zero if |a| is equal to |b|, greater than zero is + * non-equal and -1 on error. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_cmp(const EC_GROUP *group, const EC_POINT *a, + const EC_POINT *b, BN_CTX *ctx); + +/* EC_POINT_make_affine converts |point| to affine form, internally. It returns + * one on success and zero otherwise. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_make_affine(const EC_GROUP *group, EC_POINT *point, + BN_CTX *ctx); + +/* EC_POINTs_make_affine converts |num| points from |points| to affine form, + * internally. It returns one on success and zero otherwise. If |ctx| is not + * NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINTs_make_affine(const EC_GROUP *group, size_t num, + EC_POINT *points[], BN_CTX *ctx); + + +/* Point conversion. */ + +/* EC_POINT_get_affine_coordinates_GFp sets |x| and |y| to the affine value of + * |point| using |ctx|, if it's not NULL. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group, + const EC_POINT *point, + BIGNUM *x, BIGNUM *y, + BN_CTX *ctx); + +/* EC_POINT_set_affine_coordinates_GFp sets the value of |p| to be (|x|, |y|). + * The |ctx| argument may be used if not NULL. It returns one on success or + * zero on error. Note that, unlike with OpenSSL, it's considered an error if + * the point is not on the curve. */ +OPENSSL_EXPORT int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, + EC_POINT *point, + const BIGNUM *x, + const BIGNUM *y, + BN_CTX *ctx); + +/* EC_POINT_point2oct serialises |point| into the X9.62 form given by |form| + * into, at most, |len| bytes at |buf|. It returns the number of bytes written + * or zero on error if |buf| is non-NULL, else the number of bytes needed. The + * |ctx| argument may be used if not NULL. */ +OPENSSL_EXPORT size_t EC_POINT_point2oct(const EC_GROUP *group, + const EC_POINT *point, + point_conversion_form_t form, + uint8_t *buf, size_t len, BN_CTX *ctx); + +/* EC_POINT_oct2point sets |point| from |len| bytes of X9.62 format + * serialisation in |buf|. It returns one on success and zero otherwise. The + * |ctx| argument may be used if not NULL. */ +OPENSSL_EXPORT int EC_POINT_oct2point(const EC_GROUP *group, EC_POINT *point, + const uint8_t *buf, size_t len, + BN_CTX *ctx); + +/* EC_POINT_set_compressed_coordinates_GFp sets |point| to equal the point with + * the given |x| coordinate and the y coordinate specified by |y_bit| (see + * X9.62). It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_POINT_set_compressed_coordinates_GFp( + const EC_GROUP *group, EC_POINT *point, const BIGNUM *x, int y_bit, + BN_CTX *ctx); + + +/* Group operations. */ + +/* EC_POINT_add sets |r| equal to |a| plus |b|. It returns one on success and + * zero otherwise. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_add(const EC_GROUP *group, EC_POINT *r, + const EC_POINT *a, const EC_POINT *b, + BN_CTX *ctx); + +/* EC_POINT_dbl sets |r| equal to |a| plus |a|. It returns one on success and + * zero otherwise. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_dbl(const EC_GROUP *group, EC_POINT *r, + const EC_POINT *a, BN_CTX *ctx); + +/* EC_POINT_invert sets |a| equal to minus |a|. It returns one on success and zero + * otherwise. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_invert(const EC_GROUP *group, EC_POINT *a, + BN_CTX *ctx); + +/* EC_POINT_mul sets r = generator*n + q*m. It returns one on success and zero + * otherwise. If |ctx| is not NULL, it may be used. */ +OPENSSL_EXPORT int EC_POINT_mul(const EC_GROUP *group, EC_POINT *r, + const BIGNUM *n, const EC_POINT *q, + const BIGNUM *m, BN_CTX *ctx); + + +/* Deprecated functions. */ + +/* EC_GROUP_new_curve_GFp creates a new, arbitrary elliptic curve group based + * on the equation y² = x³ + a·x + b. It returns the new group or NULL on + * error. + * + * |EC_GROUP|s returned by this function will always compare as unequal via + * |EC_GROUP_cmp| (even to themselves). |EC_GROUP_get_curve_name| will always + * return |NID_undef|. */ +OPENSSL_EXPORT EC_GROUP *EC_GROUP_new_curve_GFp(const BIGNUM *p, + const BIGNUM *a, + const BIGNUM *b, BN_CTX *ctx); + +/* EC_GROUP_get_order sets |*order| to the order of |group|, if it's not + * NULL. It returns one on success and zero otherwise. |ctx| is ignored. Use + * |EC_GROUP_get0_order| instead. */ +OPENSSL_EXPORT int EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, + BN_CTX *ctx); + +/* EC_GROUP_set_generator sets the generator for |group| to |generator|, which + * must have the given order and cofactor. This should only be used with + * |EC_GROUP| objects returned by |EC_GROUP_new_curve_GFp|. */ +OPENSSL_EXPORT int EC_GROUP_set_generator(EC_GROUP *group, + const EC_POINT *generator, + const BIGNUM *order, + const BIGNUM *cofactor); + +/* EC_GROUP_set_asn1_flag does nothing. */ +OPENSSL_EXPORT void EC_GROUP_set_asn1_flag(EC_GROUP *group, int flag); + +#define OPENSSL_EC_NAMED_CURVE 0 + +typedef struct ec_method_st EC_METHOD; + +/* EC_GROUP_method_of returns NULL. */ +OPENSSL_EXPORT const EC_METHOD *EC_GROUP_method_of(const EC_GROUP *group); + +/* EC_METHOD_get_field_type returns NID_X9_62_prime_field. */ +OPENSSL_EXPORT int EC_METHOD_get_field_type(const EC_METHOD *meth); + +/* EC_GROUP_set_point_conversion_form aborts the process if |form| is not + * |POINT_CONVERSION_UNCOMPRESSED| and otherwise does nothing. */ +OPENSSL_EXPORT void EC_GROUP_set_point_conversion_form( + EC_GROUP *group, point_conversion_form_t form); + + +/* Old code expects to get EC_KEY from ec.h. */ +#include + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define EC_R_BUFFER_TOO_SMALL 100 +#define EC_R_COORDINATES_OUT_OF_RANGE 101 +#define EC_R_D2I_ECPKPARAMETERS_FAILURE 102 +#define EC_R_EC_GROUP_NEW_BY_NAME_FAILURE 103 +#define EC_R_GROUP2PKPARAMETERS_FAILURE 104 +#define EC_R_I2D_ECPKPARAMETERS_FAILURE 105 +#define EC_R_INCOMPATIBLE_OBJECTS 106 +#define EC_R_INVALID_COMPRESSED_POINT 107 +#define EC_R_INVALID_COMPRESSION_BIT 108 +#define EC_R_INVALID_ENCODING 109 +#define EC_R_INVALID_FIELD 110 +#define EC_R_INVALID_FORM 111 +#define EC_R_INVALID_GROUP_ORDER 112 +#define EC_R_INVALID_PRIVATE_KEY 113 +#define EC_R_MISSING_PARAMETERS 114 +#define EC_R_MISSING_PRIVATE_KEY 115 +#define EC_R_NON_NAMED_CURVE 116 +#define EC_R_NOT_INITIALIZED 117 +#define EC_R_PKPARAMETERS2GROUP_FAILURE 118 +#define EC_R_POINT_AT_INFINITY 119 +#define EC_R_POINT_IS_NOT_ON_CURVE 120 +#define EC_R_SLOT_FULL 121 +#define EC_R_UNDEFINED_GENERATOR 122 +#define EC_R_UNKNOWN_GROUP 123 +#define EC_R_UNKNOWN_ORDER 124 +#define EC_R_WRONG_ORDER 125 +#define EC_R_BIGNUM_OUT_OF_RANGE 126 +#define EC_R_WRONG_CURVE_PARAMETERS 127 + +#endif /* OPENSSL_HEADER_EC_H */ diff --git a/project/jni/boringssl/include/openssl/ec_key.h b/project/jni/boringssl/include/openssl/ec_key.h new file mode 100644 index 000000000..afd95d6a1 --- /dev/null +++ b/project/jni/boringssl/include/openssl/ec_key.h @@ -0,0 +1,280 @@ +/* Originally written by Bodo Moeller for the OpenSSL project. + * ==================================================================== + * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * + * Portions of the attached software ("Contribution") are developed by + * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + * + * The Contribution is licensed pursuant to the OpenSSL open source + * license provided above. + * + * The elliptic curve binary polynomial software is originally written by + * Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems + * Laboratories. */ + +#ifndef OPENSSL_HEADER_EC_KEY_H +#define OPENSSL_HEADER_EC_KEY_H + +#include + +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* ec_key.h contains functions that handle elliptic-curve points that are + * public/private keys. */ + + +/* EC key objects. */ + +/* EC_KEY_new returns a fresh |EC_KEY| object or NULL on error. */ +OPENSSL_EXPORT EC_KEY *EC_KEY_new(void); + +/* EC_KEY_new_method acts the same as |EC_KEY_new|, but takes an explicit + * |ENGINE|. */ +OPENSSL_EXPORT EC_KEY *EC_KEY_new_method(const ENGINE *engine); + +/* EC_KEY_new_by_curve_name returns a fresh EC_KEY for group specified by |nid| + * or NULL on error. */ +OPENSSL_EXPORT EC_KEY *EC_KEY_new_by_curve_name(int nid); + +/* EC_KEY_free frees all the data owned by |key| and |key| itself. */ +OPENSSL_EXPORT void EC_KEY_free(EC_KEY *key); + +/* EC_KEY_copy sets |dst| equal to |src| and returns |dst| or NULL on error. */ +OPENSSL_EXPORT EC_KEY *EC_KEY_copy(EC_KEY *dst, const EC_KEY *src); + +/* EC_KEY_dup returns a fresh copy of |src| or NULL on error. */ +OPENSSL_EXPORT EC_KEY *EC_KEY_dup(const EC_KEY *src); + +/* EC_KEY_up_ref increases the reference count of |key|. It returns one on + * success and zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_up_ref(EC_KEY *key); + +/* EC_KEY_is_opaque returns one if |key| is opaque and doesn't expose its key + * material. Otherwise it return zero. */ +OPENSSL_EXPORT int EC_KEY_is_opaque(const EC_KEY *key); + +/* EC_KEY_get0_group returns a pointer to the |EC_GROUP| object inside |key|. */ +OPENSSL_EXPORT const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key); + +/* EC_KEY_set_group sets the |EC_GROUP| object that |key| will use to |group|. + * It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group); + +/* EC_KEY_get0_private_key returns a pointer to the private key inside |key|. */ +OPENSSL_EXPORT const BIGNUM *EC_KEY_get0_private_key(const EC_KEY *key); + +/* EC_KEY_set_private_key sets the private key of |key| to |priv|. It returns + * one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_set_private_key(EC_KEY *key, const BIGNUM *prv); + +/* EC_KEY_get0_public_key returns a pointer to the public key point inside + * |key|. */ +OPENSSL_EXPORT const EC_POINT *EC_KEY_get0_public_key(const EC_KEY *key); + +/* EC_KEY_set_public_key sets the public key of |key| to |pub|, by copying it. + * It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_set_public_key(EC_KEY *key, const EC_POINT *pub); + +#define EC_PKEY_NO_PARAMETERS 0x001 +#define EC_PKEY_NO_PUBKEY 0x002 + +/* EC_KEY_get_enc_flags returns the encoding flags for |key|, which is a + * bitwise-OR of |EC_PKEY_*| values. */ +OPENSSL_EXPORT unsigned EC_KEY_get_enc_flags(const EC_KEY *key); + +/* EC_KEY_set_enc_flags sets the encoding flags for |key|, which is a + * bitwise-OR of |EC_PKEY_*| values. */ +OPENSSL_EXPORT void EC_KEY_set_enc_flags(EC_KEY *key, unsigned flags); + +/* EC_KEY_get_conv_form returns the conversation form that will be used by + * |key|. */ +OPENSSL_EXPORT point_conversion_form_t EC_KEY_get_conv_form(const EC_KEY *key); + +/* EC_KEY_set_conv_form sets the conversion form to be used by |key|. */ +OPENSSL_EXPORT void EC_KEY_set_conv_form(EC_KEY *key, + point_conversion_form_t cform); + +/* EC_KEY_check_key performs several checks on |key| (possibly including an + * expensive check that the public key is in the primary subgroup). It returns + * one if all checks pass and zero otherwise. If it returns zero then detail + * about the problem can be found on the error stack. */ +OPENSSL_EXPORT int EC_KEY_check_key(const EC_KEY *key); + +/* EC_KEY_set_public_key_affine_coordinates sets the public key in |key| to + * (|x|, |y|). It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_set_public_key_affine_coordinates(EC_KEY *key, + BIGNUM *x, + BIGNUM *y); + + +/* Key generation. */ + +/* EC_KEY_generate_key generates a random, private key, calculates the + * corresponding public key and stores both in |key|. It returns one on success + * or zero otherwise. */ +OPENSSL_EXPORT int EC_KEY_generate_key(EC_KEY *key); + + +/* Serialisation. */ + +/* d2i_ECPrivateKey parses an ASN.1, DER-encoded, private key from |len| bytes + * at |*inp|. If |out_key| is not NULL then, on exit, a pointer to the result + * is in |*out_key|. If |*out_key| is already non-NULL on entry then the result + * is written directly into |*out_key|, otherwise a fresh |EC_KEY| is + * allocated. On successful exit, |*inp| is advanced past the DER structure. It + * returns the result or NULL on error. */ +OPENSSL_EXPORT EC_KEY *d2i_ECPrivateKey(EC_KEY **out_key, const uint8_t **inp, + long len); + +/* i2d_ECPrivateKey marshals an EC private key from |key| to an ASN.1, DER + * structure. If |outp| is not NULL then the result is written to |*outp| and + * |*outp| is advanced just past the output. It returns the number of bytes in + * the result, whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_ECPrivateKey(const EC_KEY *key, uint8_t **outp); + +/* d2i_ECParameters parses an ASN.1, DER-encoded, set of EC parameters from + * |len| bytes at |*inp|. If |out_key| is not NULL then, on exit, a pointer to + * the result is in |*out_key|. If |*out_key| is already non-NULL on entry then + * the result is written directly into |*out_key|, otherwise a fresh |EC_KEY| + * is allocated. On successful exit, |*inp| is advanced past the DER structure. + * It returns the result or NULL on error. */ +OPENSSL_EXPORT EC_KEY *d2i_ECParameters(EC_KEY **out_key, const uint8_t **inp, + long len); + +/* i2d_ECParameters marshals EC parameters from |key| to an ASN.1, DER + * structure. If |outp| is not NULL then the result is written to |*outp| and + * |*outp| is advanced just past the output. It returns the number of bytes in + * the result, whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_ECParameters(const EC_KEY *key, uint8_t **outp); + +/* o2i_ECPublicKey parses an EC point from |len| bytes at |*inp| into + * |*out_key|. Note that this differs from the d2i format in that |*out_key| + * must be non-NULL with a group set. On successful exit, |*inp| is advanced by + * |len| bytes. It returns |*out_key| or NULL on error. */ +OPENSSL_EXPORT EC_KEY *o2i_ECPublicKey(EC_KEY **out_key, const uint8_t **inp, + long len); + +/* i2o_ECPublicKey marshals an EC point from |key|. If |outp| is not NULL then + * the result is written to |*outp| and |*outp| is advanced just past the + * output. It returns the number of bytes in the result, whether written or + * not, or a negative value on error. */ +OPENSSL_EXPORT int i2o_ECPublicKey(const EC_KEY *key, unsigned char **outp); + + +/* ex_data functions. + * + * These functions are wrappers. See |ex_data.h| for details. */ + +OPENSSL_EXPORT int EC_KEY_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int EC_KEY_set_ex_data(EC_KEY *r, int idx, void *arg); +OPENSSL_EXPORT void *EC_KEY_get_ex_data(const EC_KEY *r, int idx); + + +/* ECDSA method. */ + +/* ECDSA_FLAG_OPAQUE specifies that this ECDSA_METHOD does not expose its key + * material. This may be set if, for instance, it is wrapping some other crypto + * API, like a platform key store. */ +#define ECDSA_FLAG_OPAQUE 1 + +/* ecdsa_method_st is a structure of function pointers for implementing ECDSA. + * See engine.h. */ +struct ecdsa_method_st { + struct openssl_method_common_st common; + + void *app_data; + + int (*init)(EC_KEY *key); + int (*finish)(EC_KEY *key); + + /* group_order_size returns the number of bytes needed to represent the order + * of the group. This is used to calculate the maximum size of an ECDSA + * signature in |ECDSA_size|. */ + size_t (*group_order_size)(const EC_KEY *key); + + /* sign matches the arguments and behaviour of |ECDSA_sign|. */ + int (*sign)(const uint8_t *digest, size_t digest_len, uint8_t *sig, + unsigned int *sig_len, EC_KEY *eckey); + + /* verify matches the arguments and behaviour of |ECDSA_verify|. */ + int (*verify)(const uint8_t *digest, size_t digest_len, const uint8_t *sig, + size_t sig_len, EC_KEY *eckey); + + int flags; +}; + + +/* Deprecated functions. */ + +/* EC_KEY_set_asn1_flag does nothing. */ +OPENSSL_EXPORT void EC_KEY_set_asn1_flag(EC_KEY *key, int flag); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_EC_KEY_H */ diff --git a/project/jni/boringssl/include/openssl/ecdh.h b/project/jni/boringssl/include/openssl/ecdh.h new file mode 100644 index 000000000..5fe3ae992 --- /dev/null +++ b/project/jni/boringssl/include/openssl/ecdh.h @@ -0,0 +1,102 @@ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * + * The Elliptic Curve Public-Key Crypto Library (ECC Code) included + * herein is developed by SUN MICROSYSTEMS, INC., and is contributed + * to the OpenSSL project. + * + * The ECC Code is licensed pursuant to the OpenSSL open source + * license provided below. + * + * The ECDH software is originally written by Douglas Stebila of + * Sun Microsystems Laboratories. + * + */ +/* ==================================================================== + * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_ECDH_H +#define OPENSSL_HEADER_ECDH_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Elliptic curve Diffie-Hellman. */ + + +/* ECDH_compute_key calculates the shared key between |pub_key| and |priv_key|. + * If |kdf| is not NULL, then it is called with the bytes of the shared key and + * the parameter |out|. When |kdf| returns, the value of |*outlen| becomes the + * return value. Otherwise, as many bytes of the shared key as will fit are + * copied directly to, at most, |outlen| bytes at |out|. It returns the number + * of bytes written to |out|, or -1 on error. */ +OPENSSL_EXPORT int ECDH_compute_key(void *out, size_t outlen, + const EC_POINT *pub_key, EC_KEY *priv_key, + void *(*kdf)(const void *in, size_t inlen, + void *out, size_t *outlen)); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define ECDH_R_KDF_FAILED 100 +#define ECDH_R_NO_PRIVATE_VALUE 101 +#define ECDH_R_POINT_ARITHMETIC_FAILURE 102 + +#endif /* OPENSSL_HEADER_ECDH_H */ diff --git a/project/jni/boringssl/include/openssl/ecdsa.h b/project/jni/boringssl/include/openssl/ecdsa.h new file mode 100644 index 000000000..f3f68eb2f --- /dev/null +++ b/project/jni/boringssl/include/openssl/ecdsa.h @@ -0,0 +1,206 @@ +/* ==================================================================== + * Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_ECDSA_H +#define OPENSSL_HEADER_ECDSA_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* ECDSA contains functions for signing and verifying with the Digital Signature + * Algorithm over elliptic curves. */ + + +/* Signing and verifing. */ + +/* ECDSA_sign signs |digest_len| bytes from |digest| with |key| and writes the + * resulting signature to |sig|, which must have |ECDSA_size(key)| bytes of + * space. On successful exit, |*sig_len| is set to the actual number of bytes + * written. The |type| argument should be zero. It returns one on success and + * zero otherwise. */ +OPENSSL_EXPORT int ECDSA_sign(int type, const uint8_t *digest, + size_t digest_len, uint8_t *sig, + unsigned int *sig_len, EC_KEY *key); + +/* ECDSA_verify verifies that |sig_len| bytes from |sig| constitute a valid + * signature by |key| of |digest|. (The |type| argument should be zero.) It + * returns one on success or zero if the signature is invalid or an error + * occured. */ +OPENSSL_EXPORT int ECDSA_verify(int type, const uint8_t *digest, + size_t digest_len, const uint8_t *sig, + size_t sig_len, EC_KEY *key); + +/* ECDSA_size returns the maximum size of an ECDSA signature using |key|. It + * returns zero on error. */ +OPENSSL_EXPORT size_t ECDSA_size(const EC_KEY *key); + + +/* Low-level signing and verification. + * + * Low-level functions handle signatures as |ECDSA_SIG| structures which allow + * the two values in an ECDSA signature to be handled separately. */ + +struct ecdsa_sig_st { + BIGNUM *r; + BIGNUM *s; +}; + +/* ECDSA_SIG_new returns a fresh |ECDSA_SIG| structure or NULL on error. */ +OPENSSL_EXPORT ECDSA_SIG *ECDSA_SIG_new(void); + +/* ECDSA_SIG_free frees |sig| its member |BIGNUM|s. */ +OPENSSL_EXPORT void ECDSA_SIG_free(ECDSA_SIG *sig); + +/* ECDSA_do_sign signs |digest_len| bytes from |digest| with |key| and returns + * the resulting signature structure, or NULL on error. */ +OPENSSL_EXPORT ECDSA_SIG *ECDSA_do_sign(const uint8_t *digest, + size_t digest_len, EC_KEY *key); + +/* ECDSA_do_verify verifies that |sig| constitutes a valid signature by |key| + * of |digest|. It returns one on success or zero if the signature is invalid + * or on error. */ +OPENSSL_EXPORT int ECDSA_do_verify(const uint8_t *digest, size_t digest_len, + const ECDSA_SIG *sig, EC_KEY *key); + + +/* Signing with precomputation. + * + * Parts of the ECDSA signature can be independent of the message to be signed + * thus it's possible to precompute them and reduce the signing latency. + * + * TODO(fork): remove support for this as it cannot support safe-randomness. */ + +/* ECDSA_sign_setup precomputes parts of an ECDSA signing operation. It sets + * |*kinv| and |*rp| to the precomputed values and uses the |ctx| argument, if + * not NULL. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int ECDSA_sign_setup(EC_KEY *eckey, BN_CTX *ctx, BIGNUM **kinv, + BIGNUM **rp); + +/* ECDSA_do_sign_ex is the same as |ECDSA_do_sign| but takes precomputed values + * as generated by |ECDSA_sign_setup|. */ +OPENSSL_EXPORT ECDSA_SIG *ECDSA_do_sign_ex(const uint8_t *digest, + size_t digest_len, + const BIGNUM *kinv, const BIGNUM *rp, + EC_KEY *eckey); + +/* ECDSA_sign_ex is the same as |ECDSA_sign| but takes precomputed values as + * generated by |ECDSA_sign_setup|. */ +OPENSSL_EXPORT int ECDSA_sign_ex(int type, const uint8_t *digest, + size_t digest_len, uint8_t *sig, + unsigned int *sig_len, const BIGNUM *kinv, + const BIGNUM *rp, EC_KEY *eckey); + + +/* ASN.1 functions. */ + +/* ECDSA_SIG_parse parses a DER-encoded ECDSA-Sig-Value structure from |cbs| and + * advances |cbs|. It returns a newly-allocated |ECDSA_SIG| or NULL on error. */ +OPENSSL_EXPORT ECDSA_SIG *ECDSA_SIG_parse(CBS *cbs); + +/* ECDSA_SIG_from_bytes parses |in| as a DER-encoded ECDSA-Sig-Value structure. + * It returns a newly-allocated |ECDSA_SIG| structure or NULL on error. */ +OPENSSL_EXPORT ECDSA_SIG *ECDSA_SIG_from_bytes(const uint8_t *in, + size_t in_len); + +/* ECDSA_SIG_marshal marshals |sig| as a DER-encoded ECDSA-Sig-Value and appends + * the result to |cbb|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int ECDSA_SIG_marshal(CBB *cbb, const ECDSA_SIG *sig); + +/* ECDSA_SIG_to_bytes marshals |sig| as a DER-encoded ECDSA-Sig-Value and, on + * success, sets |*out_bytes| to a newly allocated buffer containing the result + * and returns one. Otherwise, it returns zero. The result should be freed with + * |OPENSSL_free|. */ +OPENSSL_EXPORT int ECDSA_SIG_to_bytes(uint8_t **out_bytes, size_t *out_len, + const ECDSA_SIG *sig); + +/* ECDSA_SIG_max_len returns the maximum length of a DER-encoded ECDSA-Sig-Value + * structure for a group whose order is represented in |order_len| bytes, or + * zero on overflow. */ +OPENSSL_EXPORT size_t ECDSA_SIG_max_len(size_t order_len); + + +/* Deprecated functions. */ + +/* d2i_ECDSA_SIG parses an ASN.1, DER-encoded, signature from |len| bytes at + * |*inp|. If |out| is not NULL then, on exit, a pointer to the result is in + * |*out|. If |*out| is already non-NULL on entry then the result is written + * directly into |*out|, otherwise a fresh |ECDSA_SIG| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT ECDSA_SIG *d2i_ECDSA_SIG(ECDSA_SIG **out, const uint8_t **inp, + long len); + +/* i2d_ECDSA_SIG marshals a signature from |sig| to an ASN.1, DER + * structure. If |outp| is not NULL then the result is written to |*outp| and + * |*outp| is advanced just past the output. It returns the number of bytes in + * the result, whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_ECDSA_SIG(const ECDSA_SIG *sig, uint8_t **outp); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define ECDSA_R_BAD_SIGNATURE 100 +#define ECDSA_R_MISSING_PARAMETERS 101 +#define ECDSA_R_NEED_NEW_SETUP_VALUES 102 +#define ECDSA_R_NOT_IMPLEMENTED 103 +#define ECDSA_R_RANDOM_NUMBER_GENERATION_FAILED 104 +#define ECDSA_R_ENCODE_ERROR 105 + +#endif /* OPENSSL_HEADER_ECDSA_H */ diff --git a/project/jni/boringssl/include/openssl/engine.h b/project/jni/boringssl/include/openssl/engine.h new file mode 100644 index 000000000..128a2ae12 --- /dev/null +++ b/project/jni/boringssl/include/openssl/engine.h @@ -0,0 +1,98 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_ENGINE_H +#define OPENSSL_HEADER_ENGINE_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Engines are collections of methods. Methods are tables of function pointers, + * defined for certain algorithms, that allow operations on those algorithms to + * be overridden via a callback. This can be used, for example, to implement an + * RSA* that forwards operations to a hardware module. + * + * Methods are reference counted but |ENGINE|s are not. When creating a method, + * you should zero the whole structure and fill in the function pointers that + * you wish before setting it on an |ENGINE|. Any functions pointers that + * are NULL indicate that the default behaviour should be used. */ + + +/* Allocation and destruction. */ + +/* ENGINE_new returns an empty ENGINE that uses the default method for all + * algorithms. */ +OPENSSL_EXPORT ENGINE *ENGINE_new(void); + +/* ENGINE_free decrements the reference counts for all methods linked from + * |engine| and frees |engine| itself. */ +OPENSSL_EXPORT void ENGINE_free(ENGINE *engine); + + +/* Method accessors. + * + * Method accessors take a method pointer and the size of the structure. The + * size allows for ABI compatibility in the case that the method structure is + * extended with extra elements at the end. Methods are always copied by the + * set functions. + * + * Set functions return one on success and zero on allocation failure. */ + +OPENSSL_EXPORT int ENGINE_set_RSA_method(ENGINE *engine, + const RSA_METHOD *method, + size_t method_size); +OPENSSL_EXPORT RSA_METHOD *ENGINE_get_RSA_method(const ENGINE *engine); + +OPENSSL_EXPORT int ENGINE_set_ECDSA_method(ENGINE *engine, + const ECDSA_METHOD *method, + size_t method_size); +OPENSSL_EXPORT ECDSA_METHOD *ENGINE_get_ECDSA_method(const ENGINE *engine); + + +/* Generic method functions. + * + * These functions take a void* type but actually operate on all method + * structures. */ + +/* METHOD_ref increments the reference count of |method|. This is a no-op for + * now because all methods are currently static. */ +void METHOD_ref(void *method); + +/* METHOD_unref decrements the reference count of |method| and frees it if the + * reference count drops to zero. This is a no-op for now because all methods + * are currently static. */ +void METHOD_unref(void *method); + + +/* Private functions. */ + +/* openssl_method_common_st contains the common part of all method structures. + * This must be the first member of all method structures. */ +struct openssl_method_common_st { + int references; /* dummy – not used. */ + char is_static; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define ENGINE_R_OPERATION_NOT_SUPPORTED 100 + +#endif /* OPENSSL_HEADER_ENGINE_H */ diff --git a/project/jni/boringssl/include/openssl/err.h b/project/jni/boringssl/include/openssl/err.h new file mode 100644 index 000000000..40361d791 --- /dev/null +++ b/project/jni/boringssl/include/openssl/err.h @@ -0,0 +1,487 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_ERR_H +#define OPENSSL_HEADER_ERR_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Error queue handling functions. + * + * Errors in OpenSSL are generally signalled by the return value of a function. + * When a function fails it may add an entry to a per-thread error queue, + * which is managed by the functions in this header. + * + * Each error contains: + * 1) The library (i.e. ec, pem, rsa) which created it. + * 2) The file and line number of the call that added the error. + * 3) A pointer to some error specific data, which may be NULL. + * + * The library identifier and reason code are packed in a uint32_t and there + * exist various functions for unpacking it. + * + * The typical behaviour is that an error will occur deep in a call queue and + * that code will push an error onto the error queue. As the error queue + * unwinds, other functions will push their own errors. Thus, the "least + * recent" error is the most specific and the other errors will provide a + * backtrace of sorts. */ + + +/* Startup and shutdown. */ + +/* ERR_load_BIO_strings does nothing. + * + * TODO(fork): remove. libjingle calls this. */ +OPENSSL_EXPORT void ERR_load_BIO_strings(void); + +/* ERR_load_ERR_strings does nothing. */ +OPENSSL_EXPORT void ERR_load_ERR_strings(void); + +/* ERR_load_crypto_strings does nothing. */ +OPENSSL_EXPORT void ERR_load_crypto_strings(void); + +/* ERR_free_strings does nothing. */ +OPENSSL_EXPORT void ERR_free_strings(void); + + +/* Reading and formatting errors. */ + +/* ERR_get_error gets the packed error code for the least recent error and + * removes that error from the queue. If there are no errors in the queue then + * it returns zero. */ +OPENSSL_EXPORT uint32_t ERR_get_error(void); + +/* ERR_get_error_line acts like |ERR_get_error|, except that the file and line + * number of the call that added the error are also returned. */ +OPENSSL_EXPORT uint32_t ERR_get_error_line(const char **file, int *line); + +/* ERR_get_error_line_data acts like |ERR_get_error_line|, but also returns the + * error-specific data pointer and flags. The flags are a bitwise-OR of + * |ERR_FLAG_*| values. The error-specific data is owned by the error queue + * and the pointer becomes invalid after the next call that affects the same + * thread's error queue. If |*flags| contains |ERR_FLAG_STRING| then |*data| is + * human-readable. */ +OPENSSL_EXPORT uint32_t ERR_get_error_line_data(const char **file, int *line, + const char **data, int *flags); + +/* The "peek" functions act like the |ERR_get_error| functions, above, but they + * do not remove the error from the queue. */ +OPENSSL_EXPORT uint32_t ERR_peek_error(void); +OPENSSL_EXPORT uint32_t ERR_peek_error_line(const char **file, int *line); +OPENSSL_EXPORT uint32_t ERR_peek_error_line_data(const char **file, int *line, + const char **data, int *flags); + +/* The "peek last" functions act like the "peek" functions, above, except that + * they return the most recent error. */ +OPENSSL_EXPORT uint32_t ERR_peek_last_error(void); +OPENSSL_EXPORT uint32_t ERR_peek_last_error_line(const char **file, int *line); +OPENSSL_EXPORT uint32_t ERR_peek_last_error_line_data(const char **file, + int *line, + const char **data, + int *flags); + +/* ERR_error_string generates a human-readable string representing + * |packed_error|, places it at |buf| (which must be at least + * ERR_ERROR_STRING_BUF_LEN bytes long) and returns |buf|. If |buf| is NULL, + * the error string is placed in a static buffer which is returned. (The static + * buffer may be overridden by concurrent calls in other threads so this form + * is deprecated.) + * + * The string will have the following format: + * + * error:[error code]:[library name]:OPENSSL_internal:[reason string] + * + * error code is an 8 digit hexadecimal number; library name and reason string + * are ASCII text. + * + * TODO(fork): remove in favour of |ERR_error_string_n|. */ +OPENSSL_EXPORT char *ERR_error_string(uint32_t packed_error, char *buf); +#define ERR_ERROR_STRING_BUF_LEN 256 + +/* ERR_error_string_n is a variant of |ERR_error_string| that writes at most + * len characters (including the terminating NUL) and truncates the string if + * necessary. If |len| is greater than zero then |buf| is always NUL + * terminated. */ +OPENSSL_EXPORT void ERR_error_string_n(uint32_t packed_error, char *buf, + size_t len); + +/* ERR_lib_error_string returns a string representation of the library that + * generated |packed_error|. */ +OPENSSL_EXPORT const char *ERR_lib_error_string(uint32_t packed_error); + +/* ERR_reason_error_string returns a string representation of the reason for + * |packed_error|. */ +OPENSSL_EXPORT const char *ERR_reason_error_string(uint32_t packed_error); + +/* ERR_print_errors_callback_t is the type of a function used by + * |ERR_print_errors_cb|. It takes a pointer to a human readable string (and + * its length) that describes an entry in the error queue. The |ctx| argument + * is an opaque pointer given to |ERR_print_errors_cb|. + * + * It should return one on success or zero on error, which will stop the + * iteration over the error queue. */ +typedef int (*ERR_print_errors_callback_t)(const char *str, size_t len, + void *ctx); + +/* ERR_print_errors_cb calls |callback| with a string representation of each + * error in the current thread's error queue, from the least recent to the most + * recent error. + * + * The string will have the following format (which differs from + * |ERR_error_string|): + * + * [thread id]:error:[error code]:[library name]:OPENSSL_internal: + * [reason string]:[file]:[line number]:[optional string data] + * + * (All in one line.) + * + * The callback can return one to continue the iteration or zero to stop it. + * The |ctx| argument is an opaque value that is passed through to the + * callback. */ +OPENSSL_EXPORT void ERR_print_errors_cb(ERR_print_errors_callback_t callback, + void *ctx); + +/* ERR_print_errors_fp prints the current contents of the error stack to |file| + * using human readable strings where possible. */ +OPENSSL_EXPORT void ERR_print_errors_fp(FILE *file); + + +/* Clearing errors. */ + +/* ERR_clear_error clears the error queue for the current thread. */ +OPENSSL_EXPORT void ERR_clear_error(void); + +/* ERR_remove_thread_state clears the error queue for the current thread if + * |tid| is NULL. Otherwise it calls |assert(0)|, because it's no longer + * possible to delete the error queue for other threads. + * + * Error queues are thread-local data and are deleted automatically. You do not + * need to call this function. Use |ERR_clear_error|. */ +OPENSSL_EXPORT void ERR_remove_thread_state(const CRYPTO_THREADID *tid); + + +/* Custom errors. */ + +/* ERR_get_next_error_library returns a value suitable for passing as the + * |library| argument to |ERR_put_error|. This is intended for code that wishes + * to push its own, non-standard errors to the error queue. */ +OPENSSL_EXPORT int ERR_get_next_error_library(void); + + +/* Deprecated functions. */ + +/* ERR_remove_state calls |ERR_clear_error|. */ +OPENSSL_EXPORT void ERR_remove_state(unsigned long pid); + +/* ERR_func_error_string returns the string "OPENSSL_internal". */ +OPENSSL_EXPORT const char *ERR_func_error_string(uint32_t packed_error); + + +/* Private functions. */ + +/* ERR_clear_system_error clears the system's error value (i.e. errno). */ +OPENSSL_EXPORT void ERR_clear_system_error(void); + +/* OPENSSL_PUT_ERROR is used by OpenSSL code to add an error to the error + * queue. */ +#define OPENSSL_PUT_ERROR(library, reason) \ + ERR_put_error(ERR_LIB_##library, 0, reason, __FILE__, __LINE__) + +/* OPENSSL_PUT_SYSTEM_ERROR is used by OpenSSL code to add an error from the + * operating system to the error queue. + * TODO(fork): include errno. */ +#define OPENSSL_PUT_SYSTEM_ERROR() \ + ERR_put_error(ERR_LIB_SYS, 0, 0, __FILE__, __LINE__); + +/* ERR_put_error adds an error to the error queue, dropping the least recent + * error if neccessary for space reasons. */ +OPENSSL_EXPORT void ERR_put_error(int library, int unused, int reason, + const char *file, unsigned line); + +/* ERR_add_error_data takes a variable number (|count|) of const char* + * pointers, concatenates them and sets the result as the data on the most + * recent error. */ +OPENSSL_EXPORT void ERR_add_error_data(unsigned count, ...); + +/* ERR_add_error_dataf takes a printf-style format and arguments, and sets the + * result as the data on the most recent error. */ +OPENSSL_EXPORT void ERR_add_error_dataf(const char *format, ...); + +/* ERR_set_mark "marks" the most recent error for use with |ERR_pop_to_mark|. + * It returns one if an error was marked and zero if there are no errors. */ +OPENSSL_EXPORT int ERR_set_mark(void); + +/* ERR_pop_to_mark removes errors from the most recent to the least recent + * until (and not including) a "marked" error. It returns zero if no marked + * error was found (and thus all errors were removed) and one otherwise. Errors + * are marked using |ERR_set_mark|. */ +OPENSSL_EXPORT int ERR_pop_to_mark(void); + +struct err_error_st { + /* file contains the filename where the error occured. */ + const char *file; + /* data contains optional data. It must be freed with |OPENSSL_free| if + * |flags&ERR_FLAG_MALLOCED|. */ + char *data; + /* packed contains the error library and reason, as packed by ERR_PACK. */ + uint32_t packed; + /* line contains the line number where the error occured. */ + uint16_t line; + /* flags contains a bitwise-OR of ERR_FLAG_* values. */ + uint8_t flags; +}; + +/* ERR_FLAG_STRING means that the |data| member is a NUL-terminated string that + * can be printed. */ +#define ERR_FLAG_STRING 1 +/* ERR_TXT_STRING is provided for compatibility with code that assumes that + * it's using OpenSSL. */ +#define ERR_TXT_STRING ERR_FLAG_STRING + +/* ERR_FLAG_PUBLIC_MASK is applied to the flags field before it is returned + * from functions like |ERR_get_error_line_data|. */ +#define ERR_FLAG_PUBLIC_MASK 0xf + +/* The following flag values are internal and are masked when flags are + * returned from functions like |ERR_get_error_line_data|. */ + +/* ERR_FLAG_MALLOCED means the the |data| member must be freed when no longer + * needed. */ +#define ERR_FLAG_MALLOCED 16 +/* ERR_FLAG_MARK is used to indicate a reversion point in the queue. See + * |ERR_pop_to_mark|. */ +#define ERR_FLAG_MARK 32 + +/* ERR_NUM_ERRORS is the limit of the number of errors in the queue. */ +#define ERR_NUM_ERRORS 16 + +/* ERR_STATE contains the per-thread, error queue. */ +typedef struct err_state_st { + /* errors contains the ERR_NUM_ERRORS most recent errors, organised as a ring + * buffer. */ + struct err_error_st errors[ERR_NUM_ERRORS]; + /* top contains the index one past the most recent error. If |top| equals + * |bottom| then the queue is empty. */ + unsigned top; + /* bottom contains the index of the last error in the queue. */ + unsigned bottom; + + /* to_free, if not NULL, contains a pointer owned by this structure that was + * previously a |data| pointer of one of the elements of |errors|. */ + void *to_free; +} ERR_STATE; + +enum { + ERR_LIB_NONE = 1, + ERR_LIB_SYS, + ERR_LIB_BN, + ERR_LIB_RSA, + ERR_LIB_DH, + ERR_LIB_EVP, + ERR_LIB_BUF, + ERR_LIB_OBJ, + ERR_LIB_PEM, + ERR_LIB_DSA, + ERR_LIB_X509, + ERR_LIB_ASN1, + ERR_LIB_CONF, + ERR_LIB_CRYPTO, + ERR_LIB_EC, + ERR_LIB_SSL, + ERR_LIB_BIO, + ERR_LIB_PKCS7, + ERR_LIB_PKCS8, + ERR_LIB_X509V3, + ERR_LIB_RAND, + ERR_LIB_ENGINE, + ERR_LIB_OCSP, + ERR_LIB_UI, + ERR_LIB_COMP, + ERR_LIB_ECDSA, + ERR_LIB_ECDH, + ERR_LIB_HMAC, + ERR_LIB_DIGEST, + ERR_LIB_CIPHER, + ERR_LIB_HKDF, + ERR_LIB_USER, + ERR_NUM_LIBS +}; + +#define ERR_R_SYS_LIB ERR_LIB_SYS +#define ERR_R_BN_LIB ERR_LIB_BN +#define ERR_R_RSA_LIB ERR_LIB_RSA +#define ERR_R_DH_LIB ERR_LIB_DH +#define ERR_R_EVP_LIB ERR_LIB_EVP +#define ERR_R_BUF_LIB ERR_LIB_BUF +#define ERR_R_OBJ_LIB ERR_LIB_OBJ +#define ERR_R_PEM_LIB ERR_LIB_PEM +#define ERR_R_DSA_LIB ERR_LIB_DSA +#define ERR_R_X509_LIB ERR_LIB_X509 +#define ERR_R_ASN1_LIB ERR_LIB_ASN1 +#define ERR_R_CONF_LIB ERR_LIB_CONF +#define ERR_R_CRYPTO_LIB ERR_LIB_CRYPTO +#define ERR_R_EC_LIB ERR_LIB_EC +#define ERR_R_SSL_LIB ERR_LIB_SSL +#define ERR_R_BIO_LIB ERR_LIB_BIO +#define ERR_R_PKCS7_LIB ERR_LIB_PKCS7 +#define ERR_R_PKCS8_LIB ERR_LIB_PKCS8 +#define ERR_R_X509V3_LIB ERR_LIB_X509V3 +#define ERR_R_RAND_LIB ERR_LIB_RAND +#define ERR_R_DSO_LIB ERR_LIB_DSO +#define ERR_R_ENGINE_LIB ERR_LIB_ENGINE +#define ERR_R_OCSP_LIB ERR_LIB_OCSP +#define ERR_R_UI_LIB ERR_LIB_UI +#define ERR_R_COMP_LIB ERR_LIB_COMP +#define ERR_R_ECDSA_LIB ERR_LIB_ECDSA +#define ERR_R_ECDH_LIB ERR_LIB_ECDH +#define ERR_R_STORE_LIB ERR_LIB_STORE +#define ERR_R_FIPS_LIB ERR_LIB_FIPS +#define ERR_R_CMS_LIB ERR_LIB_CMS +#define ERR_R_TS_LIB ERR_LIB_TS +#define ERR_R_HMAC_LIB ERR_LIB_HMAC +#define ERR_R_JPAKE_LIB ERR_LIB_JPAKE +#define ERR_R_USER_LIB ERR_LIB_USER +#define ERR_R_DIGEST_LIB ERR_LIB_DIGEST +#define ERR_R_CIPHER_LIB ERR_LIB_CIPHER +#define ERR_R_HKDF_LIB ERR_LIB_HKDF + +/* Global reasons. */ +#define ERR_R_FATAL 64 +#define ERR_R_MALLOC_FAILURE (1 | ERR_R_FATAL) +#define ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED (2 | ERR_R_FATAL) +#define ERR_R_PASSED_NULL_PARAMETER (3 | ERR_R_FATAL) +#define ERR_R_INTERNAL_ERROR (4 | ERR_R_FATAL) +#define ERR_R_OVERFLOW (5 | ERR_R_FATAL) + +#define ERR_PACK(lib, reason) \ + (((((uint32_t)lib) & 0xff) << 24) | ((((uint32_t)reason) & 0xfff))) + +#define ERR_GET_LIB(packed_error) ((int)(((packed_error) >> 24) & 0xff)) +#define ERR_GET_FUNC(packed_error) 0 +#define ERR_GET_REASON(packed_error) ((int)((packed_error) & 0xfff)) + +/* OPENSSL_DECLARE_ERROR_REASON is used by util/make_errors.h (which generates + * the error defines) to recognise that an additional reason value is needed. + * This is needed when the reason value is used outside of an + * |OPENSSL_PUT_ERROR| macro. The resulting define will be + * ${lib}_R_${reason}. */ +#define OPENSSL_DECLARE_ERROR_REASON(lib, reason) + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_ERR_H */ diff --git a/project/jni/boringssl/include/openssl/evp.h b/project/jni/boringssl/include/openssl/evp.h new file mode 100644 index 000000000..be2ea332d --- /dev/null +++ b/project/jni/boringssl/include/openssl/evp.h @@ -0,0 +1,750 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_EVP_H +#define OPENSSL_HEADER_EVP_H + +#include + +#include + +/* OpenSSL included digest and cipher functions in this header so we include + * them for users that still expect that. + * + * TODO(fork): clean up callers so that they include what they use. */ +#include +#include +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* EVP abstracts over public/private key algorithms. */ + + +/* Public key objects. */ + +/* EVP_PKEY_new creates a new, empty public-key object and returns it or NULL + * on allocation failure. */ +OPENSSL_EXPORT EVP_PKEY *EVP_PKEY_new(void); + +/* EVP_PKEY_free frees all data referenced by |pkey| and then frees |pkey| + * itself. */ +OPENSSL_EXPORT void EVP_PKEY_free(EVP_PKEY *pkey); + +/* EVP_PKEY_up_ref increments the reference count of |pkey| and returns it. */ +OPENSSL_EXPORT EVP_PKEY *EVP_PKEY_up_ref(EVP_PKEY *pkey); + +/* EVP_PKEY_is_opaque returns one if |pkey| is opaque. Opaque keys are backed by + * custom implementations which do not expose key material and parameters. It is + * an error to attempt to duplicate, export, or compare an opaque key. */ +OPENSSL_EXPORT int EVP_PKEY_is_opaque(const EVP_PKEY *pkey); + +/* EVP_PKEY_supports_digest returns one if |pkey| supports digests of + * type |md|. This is intended for use with EVP_PKEYs backing custom + * implementations which can't sign all digests. */ +OPENSSL_EXPORT int EVP_PKEY_supports_digest(const EVP_PKEY *pkey, + const EVP_MD *md); + +/* EVP_PKEY_cmp compares |a| and |b| and returns one if they are equal, zero if + * not and a negative number on error. + * + * WARNING: this differs from the traditional return value of a "cmp" + * function. */ +OPENSSL_EXPORT int EVP_PKEY_cmp(const EVP_PKEY *a, const EVP_PKEY *b); + +/* EVP_PKEY_copy_parameters sets the parameters of |to| to equal the parameters + * of |from|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_copy_parameters(EVP_PKEY *to, const EVP_PKEY *from); + +/* EVP_PKEY_missing_parameters returns one if |pkey| is missing needed + * parameters or zero if not, or if the algorithm doesn't take parameters. */ +OPENSSL_EXPORT int EVP_PKEY_missing_parameters(const EVP_PKEY *pkey); + +/* EVP_PKEY_size returns the maximum size, in bytes, of a signature signed by + * |pkey|. For an RSA key, this returns the number of bytes needed to represent + * the modulus. For an EC key, this returns the maximum size of a DER-encoded + * ECDSA signature. */ +OPENSSL_EXPORT int EVP_PKEY_size(const EVP_PKEY *pkey); + +/* EVP_PKEY_bits returns the "size", in bits, of |pkey|. For an RSA key, this + * returns the bit length of the modulus. For an EC key, this returns the bit + * length of the group order. */ +OPENSSL_EXPORT int EVP_PKEY_bits(EVP_PKEY *pkey); + +/* EVP_PKEY_id returns the type of |pkey|, which is one of the |EVP_PKEY_*| + * values. */ +OPENSSL_EXPORT int EVP_PKEY_id(const EVP_PKEY *pkey); + +/* EVP_PKEY_type returns a canonicalised form of |NID|. For example, + * |EVP_PKEY_RSA2| will be turned into |EVP_PKEY_RSA|. */ +OPENSSL_EXPORT int EVP_PKEY_type(int nid); + + +/* Getting and setting concrete public key types. + * + * The following functions get and set the underlying public key in an + * |EVP_PKEY| object. The |set1| functions take an additional reference to the + * underlying key and return one on success or zero on error. The |assign| + * functions adopt the caller's reference. The |get1| functions return a fresh + * reference to the underlying object or NULL if |pkey| is not of the correct + * type. The |get0| functions behave the same but return a non-owning + * pointer. */ + +OPENSSL_EXPORT int EVP_PKEY_set1_RSA(EVP_PKEY *pkey, RSA *key); +OPENSSL_EXPORT int EVP_PKEY_assign_RSA(EVP_PKEY *pkey, RSA *key); +OPENSSL_EXPORT RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey); +OPENSSL_EXPORT RSA *EVP_PKEY_get1_RSA(EVP_PKEY *pkey); + +OPENSSL_EXPORT int EVP_PKEY_set1_DSA(EVP_PKEY *pkey, DSA *key); +OPENSSL_EXPORT int EVP_PKEY_assign_DSA(EVP_PKEY *pkey, DSA *key); +OPENSSL_EXPORT DSA *EVP_PKEY_get0_DSA(EVP_PKEY *pkey); +OPENSSL_EXPORT DSA *EVP_PKEY_get1_DSA(EVP_PKEY *pkey); + +OPENSSL_EXPORT int EVP_PKEY_set1_EC_KEY(EVP_PKEY *pkey, EC_KEY *key); +OPENSSL_EXPORT int EVP_PKEY_assign_EC_KEY(EVP_PKEY *pkey, EC_KEY *key); +OPENSSL_EXPORT EC_KEY *EVP_PKEY_get0_EC_KEY(EVP_PKEY *pkey); +OPENSSL_EXPORT EC_KEY *EVP_PKEY_get1_EC_KEY(EVP_PKEY *pkey); + +#define EVP_PKEY_NONE NID_undef +#define EVP_PKEY_RSA NID_rsaEncryption +#define EVP_PKEY_RSA2 NID_rsa +#define EVP_PKEY_DSA NID_dsa +#define EVP_PKEY_EC NID_X9_62_id_ecPublicKey + +/* EVP_PKEY_assign sets the underlying key of |pkey| to |key|, which must be of + * the given type. The |type| argument should be one of the |EVP_PKEY_*| + * values. */ +OPENSSL_EXPORT int EVP_PKEY_assign(EVP_PKEY *pkey, int type, void *key); + +/* EVP_PKEY_set_type sets the type of |pkey| to |type|, which should be one of + * the |EVP_PKEY_*| values. It returns one if sucessful or zero otherwise. If + * |pkey| is NULL, it simply reports whether the type is known. */ +OPENSSL_EXPORT int EVP_PKEY_set_type(EVP_PKEY *pkey, int type); + +/* EVP_PKEY_cmp_parameters compares the parameters of |a| and |b|. It returns + * one if they match, zero if not, or a negative number of on error. + * + * WARNING: the return value differs from the usual return value convention. */ +OPENSSL_EXPORT int EVP_PKEY_cmp_parameters(const EVP_PKEY *a, + const EVP_PKEY *b); + + +/* ASN.1 functions */ + +/* d2i_PrivateKey parses an ASN.1, DER-encoded, private key from |len| bytes at + * |*inp|. If |out| is not NULL then, on exit, a pointer to the result is in + * |*out|. If |*out| is already non-NULL on entry then the result is written + * directly into |*out|, otherwise a fresh |EVP_PKEY| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT EVP_PKEY *d2i_PrivateKey(int type, EVP_PKEY **out, + const uint8_t **inp, long len); + +/* d2i_AutoPrivateKey acts the same as |d2i_PrivateKey|, but detects the type + * of the private key. */ +OPENSSL_EXPORT EVP_PKEY *d2i_AutoPrivateKey(EVP_PKEY **out, const uint8_t **inp, + long len); + +/* i2d_PrivateKey marshals a private key from |key| to an ASN.1, DER + * structure. If |outp| is not NULL then the result is written to |*outp| and + * |*outp| is advanced just past the output. It returns the number of bytes in + * the result, whether written or not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_PrivateKey(const EVP_PKEY *key, uint8_t **outp); + +/* i2d_PublicKey marshals a public key from |key| to a type-specific format. + * If |outp| is not NULL then the result is written to |*outp| and + * |*outp| is advanced just past the output. It returns the number of bytes in + * the result, whether written or not, or a negative value on error. + * + * RSA keys are serialized as a DER-encoded RSAPublicKey (RFC 3447) structure. + * EC keys are serialized as an EC point per SEC 1. */ +OPENSSL_EXPORT int i2d_PublicKey(EVP_PKEY *key, uint8_t **outp); + + +/* Signing */ + +/* EVP_DigestSignInit sets up |ctx| for a signing operation with |type| and + * |pkey|. The |ctx| argument must have been initialised with + * |EVP_MD_CTX_init|. If |pctx| is not NULL, the |EVP_PKEY_CTX| of the signing + * operation will be written to |*pctx|; this can be used to set alternative + * signing options. + * + * It returns one on success, or zero on error. */ +OPENSSL_EXPORT int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx, + const EVP_MD *type, ENGINE *e, + EVP_PKEY *pkey); + +/* EVP_DigestSignUpdate appends |len| bytes from |data| to the data which will + * be signed in |EVP_DigestSignFinal|. It returns one. */ +OPENSSL_EXPORT int EVP_DigestSignUpdate(EVP_MD_CTX *ctx, const void *data, + size_t len); + +/* EVP_DigestSignFinal signs the data that has been included by one or more + * calls to |EVP_DigestSignUpdate|. If |out_sig| is NULL then |*out_sig_len| is + * set to the maximum number of output bytes. Otherwise, on entry, + * |*out_sig_len| must contain the length of the |out_sig| buffer. If the call + * is successful, the signature is written to |out_sig| and |*out_sig_len| is + * set to its length. + * + * It returns one on success, or zero on error. */ +OPENSSL_EXPORT int EVP_DigestSignFinal(EVP_MD_CTX *ctx, uint8_t *out_sig, + size_t *out_sig_len); + +/* EVP_DigestSignAlgorithm encodes the signing parameters of |ctx| as an + * AlgorithmIdentifer and saves the result in |algor|. + * + * It returns one on success, or zero on error. + * + * TODO(davidben): This API should eventually lose the dependency on + * crypto/asn1/. */ +OPENSSL_EXPORT int EVP_DigestSignAlgorithm(EVP_MD_CTX *ctx, X509_ALGOR *algor); + + +/* Verifying */ + +/* EVP_DigestVerifyInit sets up |ctx| for a signature verification operation + * with |type| and |pkey|. The |ctx| argument must have been initialised with + * |EVP_MD_CTX_init|. If |pctx| is not NULL, the |EVP_PKEY_CTX| of the signing + * operation will be written to |*pctx|; this can be used to set alternative + * signing options. + * + * It returns one on success, or zero on error. */ +OPENSSL_EXPORT int EVP_DigestVerifyInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx, + const EVP_MD *type, ENGINE *e, + EVP_PKEY *pkey); + +/* EVP_DigestVerifyInitFromAlgorithm sets up |ctx| for a signature verification + * operation with public key |pkey| and parameters from |algor|. The |ctx| + * argument must have been initialised with |EVP_MD_CTX_init|. + * + * It returns one on success, or zero on error. + * + * TODO(davidben): This API should eventually lose the dependency on + * crypto/asn1/. */ +OPENSSL_EXPORT int EVP_DigestVerifyInitFromAlgorithm(EVP_MD_CTX *ctx, + X509_ALGOR *algor, + EVP_PKEY *pkey); + +/* EVP_DigestVerifyUpdate appends |len| bytes from |data| to the data which + * will be verified by |EVP_DigestVerifyFinal|. It returns one. */ +OPENSSL_EXPORT int EVP_DigestVerifyUpdate(EVP_MD_CTX *ctx, const void *data, + size_t len); + +/* EVP_DigestVerifyFinal verifies that |sig_len| bytes of |sig| are a valid + * signature for the data that has been included by one or more calls to + * |EVP_DigestVerifyUpdate|. It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int EVP_DigestVerifyFinal(EVP_MD_CTX *ctx, const uint8_t *sig, + size_t sig_len); + + +/* Signing (old functions) */ + +/* EVP_SignInit_ex configures |ctx|, which must already have been initialised, + * for a fresh signing operation using the hash function |type|. It returns one + * on success and zero otherwise. + * + * (In order to initialise |ctx|, either obtain it initialised with + * |EVP_MD_CTX_create|, or use |EVP_MD_CTX_init|.) */ +OPENSSL_EXPORT int EVP_SignInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, + ENGINE *impl); + +/* EVP_SignInit is a deprecated version of |EVP_SignInit_ex|. + * + * TODO(fork): remove. */ +OPENSSL_EXPORT int EVP_SignInit(EVP_MD_CTX *ctx, const EVP_MD *type); + +/* EVP_SignUpdate appends |len| bytes from |data| to the data which will be + * signed in |EVP_SignFinal|. */ +OPENSSL_EXPORT int EVP_SignUpdate(EVP_MD_CTX *ctx, const void *data, + size_t len); + +/* EVP_SignFinal signs the data that has been included by one or more calls to + * |EVP_SignUpdate|, using the key |pkey|, and writes it to |sig|. On entry, + * |sig| must point to at least |EVP_PKEY_size(pkey)| bytes of space. The + * actual size of the signature is written to |*out_sig_len|. + * + * It returns one on success and zero otherwise. + * + * It does not modify |ctx|, thus it's possible to continue to use |ctx| in + * order to sign a longer message. */ +OPENSSL_EXPORT int EVP_SignFinal(const EVP_MD_CTX *ctx, uint8_t *sig, + unsigned int *out_sig_len, EVP_PKEY *pkey); + + +/* Verifying (old functions) */ + +/* EVP_VerifyInit_ex configures |ctx|, which must already have been + * initialised, for a fresh signature verification operation using the hash + * function |type|. It returns one on success and zero otherwise. + * + * (In order to initialise |ctx|, either obtain it initialised with + * |EVP_MD_CTX_create|, or use |EVP_MD_CTX_init|.) */ +OPENSSL_EXPORT int EVP_VerifyInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, + ENGINE *impl); + +/* EVP_VerifyInit is a deprecated version of |EVP_VerifyInit_ex|. + * + * TODO(fork): remove. */ +OPENSSL_EXPORT int EVP_VerifyInit(EVP_MD_CTX *ctx, const EVP_MD *type); + +/* EVP_VerifyUpdate appends |len| bytes from |data| to the data which will be + * signed in |EVP_VerifyFinal|. */ +OPENSSL_EXPORT int EVP_VerifyUpdate(EVP_MD_CTX *ctx, const void *data, + size_t len); + +/* EVP_VerifyFinal verifies that |sig_len| bytes of |sig| are a valid + * signature, by |pkey|, for the data that has been included by one or more + * calls to |EVP_VerifyUpdate|. + * + * It returns one on success and zero otherwise. + * + * It does not modify |ctx|, thus it's possible to continue to use |ctx| in + * order to sign a longer message. */ +OPENSSL_EXPORT int EVP_VerifyFinal(EVP_MD_CTX *ctx, const uint8_t *sig, + size_t sig_len, EVP_PKEY *pkey); + + +/* Printing */ + +/* EVP_PKEY_print_public prints a textual representation of the public key in + * |pkey| to |out|. Returns one on success or zero otherwise. */ +OPENSSL_EXPORT int EVP_PKEY_print_public(BIO *out, const EVP_PKEY *pkey, + int indent, ASN1_PCTX *pctx); + +/* EVP_PKEY_print_private prints a textual representation of the private key in + * |pkey| to |out|. Returns one on success or zero otherwise. */ +OPENSSL_EXPORT int EVP_PKEY_print_private(BIO *out, const EVP_PKEY *pkey, + int indent, ASN1_PCTX *pctx); + +/* EVP_PKEY_print_params prints a textual representation of the parameters in + * |pkey| to |out|. Returns one on success or zero otherwise. */ +OPENSSL_EXPORT int EVP_PKEY_print_params(BIO *out, const EVP_PKEY *pkey, + int indent, ASN1_PCTX *pctx); + + +/* Password stretching. + * + * Password stretching functions take a low-entropy password and apply a slow + * function that results in a key suitable for use in symmetric + * cryptography. */ + +/* PKCS5_PBKDF2_HMAC computes |iterations| iterations of PBKDF2 of |password| + * and |salt|, using |digest|, and outputs |key_len| bytes to |out_key|. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int PKCS5_PBKDF2_HMAC(const char *password, size_t password_len, + const uint8_t *salt, size_t salt_len, + unsigned iterations, const EVP_MD *digest, + size_t key_len, uint8_t *out_key); + +/* PKCS5_PBKDF2_HMAC_SHA1 is the same as PKCS5_PBKDF2_HMAC, but with |digest| + * fixed to |EVP_sha1|. */ +OPENSSL_EXPORT int PKCS5_PBKDF2_HMAC_SHA1(const char *password, + size_t password_len, const uint8_t *salt, + size_t salt_len, unsigned iterations, + size_t key_len, uint8_t *out_key); + + +/* Public key contexts. + * + * |EVP_PKEY_CTX| objects hold the context of an operation (e.g. signing or + * encrypting) that uses a public key. */ + +/* EVP_PKEY_CTX_new allocates a fresh |EVP_PKEY_CTX| for use with |pkey|. It + * returns the context or NULL on error. */ +OPENSSL_EXPORT EVP_PKEY_CTX *EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e); + +/* EVP_PKEY_CTX_new_id allocates a fresh |EVP_PKEY_CTX| for a key of type |id| + * (e.g. |EVP_PKEY_HMAC|). This can be used for key generation where + * |EVP_PKEY_CTX_new| can't be used because there isn't an |EVP_PKEY| to pass + * it. It returns the context or NULL on error. */ +OPENSSL_EXPORT EVP_PKEY_CTX *EVP_PKEY_CTX_new_id(int id, ENGINE *e); + +/* EVP_PKEY_CTX_free frees |ctx| and the data it owns. */ +OPENSSL_EXPORT void EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_CTX_dup allocates a fresh |EVP_PKEY_CTX| and sets it equal to the + * state of |ctx|. It returns the fresh |EVP_PKEY_CTX| or NULL on error. */ +OPENSSL_EXPORT EVP_PKEY_CTX *EVP_PKEY_CTX_dup(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_CTX_get0_pkey returns the |EVP_PKEY| associated with |ctx|. */ +OPENSSL_EXPORT EVP_PKEY *EVP_PKEY_CTX_get0_pkey(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_CTX_set_app_data sets an opaque pointer on |ctx|. */ +OPENSSL_EXPORT void EVP_PKEY_CTX_set_app_data(EVP_PKEY_CTX *ctx, void *data); + +/* EVP_PKEY_CTX_get_app_data returns the opaque pointer from |ctx| that was + * previously set with |EVP_PKEY_CTX_set_app_data|, or NULL if none has been + * set. */ +OPENSSL_EXPORT void *EVP_PKEY_CTX_get_app_data(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_sign_init initialises an |EVP_PKEY_CTX| for a signing operation. It + * should be called before |EVP_PKEY_sign|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_sign_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_sign signs |data_len| bytes from |data| using |ctx|. If |sig| is + * NULL, the maximum size of the signature is written to + * |out_sig_len|. Otherwise, |*sig_len| must contain the number of bytes of + * space available at |sig|. If sufficient, the signature will be written to + * |sig| and |*sig_len| updated with the true length. + * + * WARNING: Setting |sig| to NULL only gives the maximum size of the + * signature. The actual signature may be smaller. + * + * It returns one on success or zero on error. (Note: this differs from + * OpenSSL, which can also return negative values to indicate an error. ) */ +OPENSSL_EXPORT int EVP_PKEY_sign(EVP_PKEY_CTX *ctx, uint8_t *sig, + size_t *sig_len, const uint8_t *data, + size_t data_len); + +/* EVP_PKEY_verify_init initialises an |EVP_PKEY_CTX| for a signature + * verification operation. It should be called before |EVP_PKEY_verify|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_verify_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_verify verifies that |sig_len| bytes from |sig| are a valid signature + * for |data|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_verify(EVP_PKEY_CTX *ctx, const uint8_t *sig, + size_t sig_len, const uint8_t *data, + size_t data_len); + +/* EVP_PKEY_encrypt_init initialises an |EVP_PKEY_CTX| for an encryption + * operation. It should be called before |EVP_PKEY_encrypt|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_encrypt_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_encrypt encrypts |in_len| bytes from |in|. If |out| is NULL, the + * maximum size of the ciphertext is written to |out_len|. Otherwise, |*out_len| + * must contain the number of bytes of space available at |out|. If sufficient, + * the ciphertext will be written to |out| and |*out_len| updated with the true + * length. + * + * WARNING: Setting |out| to NULL only gives the maximum size of the + * ciphertext. The actual ciphertext may be smaller. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_encrypt(EVP_PKEY_CTX *ctx, uint8_t *out, + size_t *out_len, const uint8_t *in, + size_t in_len); + +/* EVP_PKEY_decrypt_init initialises an |EVP_PKEY_CTX| for a decryption + * operation. It should be called before |EVP_PKEY_decrypt|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_decrypt_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_decrypt decrypts |in_len| bytes from |in|. If |out| is NULL, the + * maximum size of the plaintext is written to |out_len|. Otherwise, |*out_len| + * must contain the number of bytes of space available at |out|. If sufficient, + * the ciphertext will be written to |out| and |*out_len| updated with the true + * length. + * + * WARNING: Setting |out| to NULL only gives the maximum size of the + * plaintext. The actual plaintext may be smaller. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_decrypt(EVP_PKEY_CTX *ctx, uint8_t *out, + size_t *out_len, const uint8_t *in, + size_t in_len); + +/* EVP_PKEY_derive_init initialises an |EVP_PKEY_CTX| for a key derivation + * operation. It should be called before |EVP_PKEY_derive_set_peer| and + * |EVP_PKEY_derive|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_derive_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_derive_set_peer sets the peer's key to be used for key derivation + * by |ctx| to |peer|. It should be called after |EVP_PKEY_derive_init|. (For + * example, this is used to set the peer's key in (EC)DH.) It returns one on + * success and zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_derive_set_peer(EVP_PKEY_CTX *ctx, EVP_PKEY *peer); + +/* EVP_PKEY_derive derives a shared key between the two keys configured in + * |ctx|. If |key| is non-NULL then, on entry, |out_key_len| must contain the + * amount of space at |key|. If sufficient then the shared key will be written + * to |key| and |*out_key_len| will be set to the length. If |key| is NULL then + * |out_key_len| will be set to the maximum length. + * + * WARNING: Setting |out| to NULL only gives the maximum size of the key. The + * actual key may be smaller. + * + * It returns one on success and zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_derive(EVP_PKEY_CTX *ctx, uint8_t *key, + size_t *out_key_len); + +/* EVP_PKEY_keygen_init initialises an |EVP_PKEY_CTX| for a key generation + * operation. It should be called before |EVP_PKEY_keygen|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_keygen_init(EVP_PKEY_CTX *ctx); + +/* EVP_PKEY_keygen performs a key generation operation using the values from + * |ctx| and sets |*ppkey| to a fresh |EVP_PKEY| containing the resulting key. + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY **ppkey); + + +/* Generic control functions. */ + +/* EVP_PKEY_CTX_set_signature_md sets |md| as the digest to be used in a + * signature operation. It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_signature_md(EVP_PKEY_CTX *ctx, + const EVP_MD *md); + +/* EVP_PKEY_CTX_get_signature_md sets |*out_md| to the digest to be used in a + * signature operation. It returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get_signature_md(EVP_PKEY_CTX *ctx, + const EVP_MD **out_md); + + +/* RSA specific control functions. */ + +/* EVP_PKEY_CTX_set_rsa_padding sets the padding type to use. It should be one + * of the |RSA_*_PADDING| values. Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_padding(EVP_PKEY_CTX *ctx, int padding); + +/* EVP_PKEY_CTX_get_rsa_padding sets |*out_padding| to the current padding + * value, which is one of the |RSA_*_PADDING| values. Returns one on success or + * zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get_rsa_padding(EVP_PKEY_CTX *ctx, + int *out_padding); + +/* EVP_PKEY_CTX_set_rsa_pss_saltlen sets the length of the salt in a PSS-padded + * signature. A value of -1 cause the salt to be the same length as the digest + * in the signature. A value of -2 causes the salt to be the maximum length + * that will fit. Otherwise the value gives the size of the salt in bytes. + * + * Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, + int salt_len); + +/* EVP_PKEY_CTX_get_rsa_pss_saltlen sets |*out_salt_len| to the salt length of + * a PSS-padded signature. See the documentation for + * |EVP_PKEY_CTX_set_rsa_pss_saltlen| for details of the special values that it + * can take. + * + * Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, + int *out_salt_len); + +/* EVP_PKEY_CTX_set_rsa_keygen_bits sets the size of the desired RSA modulus, + * in bits, for key generation. Returns one on success or zero on + * error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_keygen_bits(EVP_PKEY_CTX *ctx, + int bits); + +/* EVP_PKEY_CTX_set_rsa_keygen_pubexp sets |e| as the public exponent for key + * generation. Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_keygen_pubexp(EVP_PKEY_CTX *ctx, + BIGNUM *e); + +/* EVP_PKEY_CTX_set_rsa_oaep_md sets |md| as the digest used in OAEP padding. + * Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_oaep_md(EVP_PKEY_CTX *ctx, + const EVP_MD *md); + +/* EVP_PKEY_CTX_get_rsa_oaep_md sets |*out_md| to the digest function used in + * OAEP padding. Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get_rsa_oaep_md(EVP_PKEY_CTX *ctx, + const EVP_MD **out_md); + +/* EVP_PKEY_CTX_set_rsa_mgf1_md sets |md| as the digest used in MGF1. Returns + * one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set_rsa_mgf1_md(EVP_PKEY_CTX *ctx, + const EVP_MD *md); + +/* EVP_PKEY_CTX_get_rsa_mgf1_md sets |*out_md| to the digest function used in + * MGF1. Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get_rsa_mgf1_md(EVP_PKEY_CTX *ctx, + const EVP_MD **out_md); + +/* EVP_PKEY_CTX_set0_rsa_oaep_label sets |label_len| bytes from |label| as the + * label used in OAEP. DANGER: On success, this call takes ownership of |label| + * and will call |OPENSSL_free| on it when |ctx| is destroyed. + * + * Returns one on success or zero on error. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_set0_rsa_oaep_label(EVP_PKEY_CTX *ctx, + const uint8_t *label, + size_t label_len); + +/* EVP_PKEY_CTX_get0_rsa_oaep_label sets |*out_label| to point to the internal + * buffer containing the OAEP label (which may be NULL) and returns the length + * of the label or a negative value on error. + * + * WARNING: the return value differs from the usual return value convention. */ +OPENSSL_EXPORT int EVP_PKEY_CTX_get0_rsa_oaep_label(EVP_PKEY_CTX *ctx, + const uint8_t **out_label); + + +/* Deprecated functions. */ + +/* EVP_PKEY_DH is defined for compatibility, but it is impossible to create an + * |EVP_PKEY| of that type. */ +#define EVP_PKEY_DH NID_dhKeyAgreement + +/* OpenSSL_add_all_algorithms does nothing. */ +OPENSSL_EXPORT void OpenSSL_add_all_algorithms(void); + +/* OpenSSL_add_all_ciphers does nothing. */ +OPENSSL_EXPORT void OpenSSL_add_all_ciphers(void); + +/* OpenSSL_add_all_digests does nothing. */ +OPENSSL_EXPORT void OpenSSL_add_all_digests(void); + +/* EVP_cleanup does nothing. */ +OPENSSL_EXPORT void EVP_cleanup(void); + + +/* Private functions */ + +/* EVP_PKEY_asn1_find returns the ASN.1 method table for the given |nid|, which + * should be one of the |EVP_PKEY_*| values. It returns NULL if |nid| is + * unknown. */ +OPENSSL_EXPORT const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find(ENGINE **pengine, + int nid); + +/* EVP_PKEY_asn1_find_str returns an |EVP_PKEY_ASN1_METHOD| by matching values + * of the |len| bytes at |name|. For example, if name equals "EC" then it will + * return an ECC method. The |pengine| argument is ignored. + * + * TODO(fork): move to PEM? */ +OPENSSL_EXPORT const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find_str( + ENGINE **pengine, const char *name, size_t len); + +struct evp_pkey_st { + CRYPTO_refcount_t references; + + /* type contains one of the EVP_PKEY_* values or NID_undef and determines + * which element (if any) of the |pkey| union is valid. */ + int type; + + union { + char *ptr; + RSA *rsa; + DSA *dsa; + DH *dh; + EC_KEY *ec; + } pkey; + + /* ameth contains a pointer to a method table that contains many ASN.1 + * methods for the key type. */ + const EVP_PKEY_ASN1_METHOD *ameth; +} /* EVP_PKEY */; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define EVP_R_BUFFER_TOO_SMALL 100 +#define EVP_R_COMMAND_NOT_SUPPORTED 101 +#define EVP_R_DIFFERENT_KEY_TYPES 104 +#define EVP_R_DIFFERENT_PARAMETERS 105 +#define EVP_R_EXPECTING_AN_EC_KEY_KEY 107 +#define EVP_R_EXPECTING_A_DH_KEY 109 +#define EVP_R_EXPECTING_A_DSA_KEY 110 +#define EVP_R_ILLEGAL_OR_UNSUPPORTED_PADDING_MODE 111 +#define EVP_R_INVALID_CURVE 112 +#define EVP_R_INVALID_DIGEST_LENGTH 113 +#define EVP_R_INVALID_DIGEST_TYPE 114 +#define EVP_R_INVALID_KEYBITS 115 +#define EVP_R_INVALID_MGF1_MD 116 +#define EVP_R_INVALID_PADDING_MODE 118 +#define EVP_R_INVALID_PSS_PARAMETERS 119 +#define EVP_R_INVALID_SALT_LENGTH 121 +#define EVP_R_INVALID_TRAILER 122 +#define EVP_R_KEYS_NOT_SET 123 +#define EVP_R_MISSING_PARAMETERS 124 +#define EVP_R_NO_DEFAULT_DIGEST 125 +#define EVP_R_NO_KEY_SET 126 +#define EVP_R_NO_MDC2_SUPPORT 127 +#define EVP_R_NO_NID_FOR_CURVE 128 +#define EVP_R_NO_OPERATION_SET 129 +#define EVP_R_NO_PARAMETERS_SET 130 +#define EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE 131 +#define EVP_R_OPERATON_NOT_INITIALIZED 132 +#define EVP_R_UNKNOWN_DIGEST 133 +#define EVP_R_UNKNOWN_MASK_DIGEST 134 +#define EVP_R_UNSUPPORTED_ALGORITHM 138 +#define EVP_R_UNSUPPORTED_MASK_ALGORITHM 139 +#define EVP_R_UNSUPPORTED_MASK_PARAMETER 140 +#define EVP_R_EXPECTING_AN_RSA_KEY 141 +#define EVP_R_INVALID_OPERATION 142 +#define EVP_R_DECODE_ERROR 143 +#define EVP_R_INVALID_PSS_SALTLEN 144 +#define EVP_R_UNKNOWN_PUBLIC_KEY_TYPE 145 +#define EVP_R_CONTEXT_NOT_INITIALISED 146 +#define EVP_R_DIGEST_AND_KEY_TYPE_NOT_SUPPORTED 147 +#define EVP_R_WRONG_PUBLIC_KEY_TYPE 148 +#define EVP_R_UNKNOWN_SIGNATURE_ALGORITHM 149 +#define EVP_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM 150 +#define EVP_R_BN_DECODE_ERROR 151 +#define EVP_R_PARAMETER_ENCODING_ERROR 152 +#define EVP_R_UNSUPPORTED_PUBLIC_KEY_TYPE 153 +#define EVP_R_UNSUPPORTED_SIGNATURE_TYPE 154 + +#endif /* OPENSSL_HEADER_EVP_H */ diff --git a/project/jni/boringssl/include/openssl/ex_data.h b/project/jni/boringssl/include/openssl/ex_data.h new file mode 100644 index 000000000..e78e0703a --- /dev/null +++ b/project/jni/boringssl/include/openssl/ex_data.h @@ -0,0 +1,213 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_EX_DATA_H +#define OPENSSL_HEADER_EX_DATA_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* ex_data is a mechanism for associating arbitrary extra data with objects. + * For each type of object that supports ex_data, different users can be + * assigned indexes in which to store their data. Each index has callback + * functions that are called when an object of that type is freed or + * duplicated. */ + + +typedef struct crypto_ex_data_st CRYPTO_EX_DATA; + + +/* Type-specific functions. + * + * Each type that supports ex_data provides three functions: */ + +#if 0 /* Sample */ + +/* TYPE_get_ex_new_index allocates a new index for |TYPE|. See the + * descriptions of the callback typedefs for details of when they are + * called. Any of the callback arguments may be NULL. The |argl| and |argp| + * arguments are opaque values that are passed to the callbacks. It returns the + * new index or a negative number on error. + * + * TODO(fork): this should follow the standard calling convention. */ +OPENSSL_EXPORT int TYPE_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); + +/* TYPE_set_ex_data sets an extra data pointer on |t|. The |index| argument + * should have been returned from a previous call to |TYPE_get_ex_new_index|. */ +OPENSSL_EXPORT int TYPE_set_ex_data(TYPE *t, int index, void *arg); + +/* TYPE_get_ex_data returns an extra data pointer for |t|, or NULL if no such + * pointer exists. The |index| argument should have been returned from a + * previous call to |TYPE_get_ex_new_index|. */ +OPENSSL_EXPORT void *TYPE_get_ex_data(const TYPE *t, int index); + +#endif /* Sample */ + + +/* Callback types. */ + +/* CRYPTO_EX_free is a callback function that is called when an object of the + * class with extra data pointers is being destroyed. For example, if this + * callback has been passed to |SSL_get_ex_new_index| then it may be called each + * time an |SSL*| is destroyed. + * + * The callback is passed the new object (i.e. the |SSL*|) in |parent|. The + * arguments |argl| and |argp| contain opaque values that were given to + * |CRYPTO_get_ex_new_index|. The callback should return one on success, but + * the value is ignored. + * + * This callback may be called with a NULL value for |ptr| if |parent| has no + * value set for this index. However, the callbacks may also be skipped entirely + * if no extra data pointers are set on |parent| at all. */ +typedef void CRYPTO_EX_free(void *parent, void *ptr, CRYPTO_EX_DATA *ad, + int index, long argl, void *argp); + +/* CRYPTO_EX_dup is a callback function that is called when an object of the + * class is being copied and thus the ex_data linked to it also needs to be + * copied. On entry, |*from_d| points to the data for this index from the + * original object. When the callback returns, |*from_d| will be set as the + * data for this index in |to|. + * + * This callback may be called with a NULL value for |*from_d| if |from| has no + * value set for this index. However, the callbacks may also be skipped entirely + * if no extra data pointers are set on |from| at all. */ +typedef int CRYPTO_EX_dup(CRYPTO_EX_DATA *to, const CRYPTO_EX_DATA *from, + void **from_d, int index, long argl, void *argp); + + +/* Deprecated functions. */ + +/* CRYPTO_cleanup_all_ex_data does nothing. */ +OPENSSL_EXPORT void CRYPTO_cleanup_all_ex_data(void); + + +/* Private structures. */ + +/* CRYPTO_EX_unused is a placeholder for an unused callback. It is aliased to + * int to ensure non-NULL callers fail to compile rather than fail silently. */ +typedef int CRYPTO_EX_unused; + +struct crypto_ex_data_st { + STACK_OF(void) *sk; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_EX_DATA_H */ diff --git a/project/jni/boringssl/include/openssl/hkdf.h b/project/jni/boringssl/include/openssl/hkdf.h new file mode 100644 index 000000000..b7a0dc25e --- /dev/null +++ b/project/jni/boringssl/include/openssl/hkdf.h @@ -0,0 +1,44 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_HKDF_H +#define OPENSSL_HEADER_HKDF_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Computes HKDF (as specified by RFC 5869) of initial keying material |secret| + * with |salt| and |info| using |digest|, and outputs |out_len| bytes to + * |out_key|. It returns one on success and zero on error. + * + * HKDF is an Extract-and-Expand algorithm. It does not do any key stretching, + * and as such, is not suited to be used alone to generate a key from a + * password. */ +OPENSSL_EXPORT int HKDF(uint8_t *out_key, size_t out_len, const EVP_MD *digest, + const uint8_t *secret, size_t secret_len, + const uint8_t *salt, size_t salt_len, + const uint8_t *info, size_t info_len); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define HKDF_R_OUTPUT_TOO_LARGE 100 + +#endif /* OPENSSL_HEADER_HKDF_H */ diff --git a/project/jni/boringssl/include/openssl/hmac.h b/project/jni/boringssl/include/openssl/hmac.h new file mode 100644 index 000000000..e521212d4 --- /dev/null +++ b/project/jni/boringssl/include/openssl/hmac.h @@ -0,0 +1,160 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_HMAC_H +#define OPENSSL_HEADER_HMAC_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* HMAC contains functions for constructing PRFs from Merkle–Damgård hash + * functions using HMAC. */ + + +/* One-shot operation. */ + +/* HMAC calculates the HMAC of |data_len| bytes of |data|, using the given key + * and hash function, and writes the result to |out|. On entry, |out| must + * contain |EVP_MAX_MD_SIZE| bytes of space. The actual length of the result is + * written to |*out_len|. It returns |out| or NULL on error. */ +OPENSSL_EXPORT uint8_t *HMAC(const EVP_MD *evp_md, const void *key, + size_t key_len, const uint8_t *data, + size_t data_len, uint8_t *out, + unsigned int *out_len); + + +/* Incremental operation. */ + +/* HMAC_CTX_init initialises |ctx| for use in an HMAC operation. It's assumed + * that HMAC_CTX objects will be allocated on the stack thus no allocation + * function is provided. If needed, allocate |sizeof(HMAC_CTX)| and call + * |HMAC_CTX_init| on it. */ +OPENSSL_EXPORT void HMAC_CTX_init(HMAC_CTX *ctx); + +/* HMAC_CTX_cleanup frees data owned by |ctx|. */ +OPENSSL_EXPORT void HMAC_CTX_cleanup(HMAC_CTX *ctx); + +/* HMAC_Init_ex sets up an initialised |HMAC_CTX| to use |md| as the hash + * function and |key| as the key. For a non-initial call, |md| may be NULL, in + * which case the previous hash function will be used. If the hash function has + * not changed and |key| is NULL, |ctx| reuses the previous key. It returns one + * on success or zero otherwise. + * + * WARNING: NULL and empty keys are ambiguous on non-initial calls. Passing NULL + * |key| but repeating the previous |md| reuses the previous key rather than the + * empty key. */ +OPENSSL_EXPORT int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, size_t key_len, + const EVP_MD *md, ENGINE *impl); + +/* HMAC_Update hashes |data_len| bytes from |data| into the current HMAC + * operation in |ctx|. It returns one. */ +OPENSSL_EXPORT int HMAC_Update(HMAC_CTX *ctx, const uint8_t *data, + size_t data_len); + +/* HMAC_Final completes the HMAC operation in |ctx| and writes the result to + * |out| and the sets |*out_len| to the length of the result. On entry, |out| + * must contain at least |EVP_MAX_MD_SIZE| bytes of space. It returns one on + * success or zero on error. */ +OPENSSL_EXPORT int HMAC_Final(HMAC_CTX *ctx, uint8_t *out, + unsigned int *out_len); + + +/* Utility functions. */ + +/* HMAC_size returns the size, in bytes, of the HMAC that will be produced by + * |ctx|. On entry, |ctx| must have been setup with |HMAC_Init_ex|. */ +OPENSSL_EXPORT size_t HMAC_size(const HMAC_CTX *ctx); + +/* HMAC_CTX_copy_ex sets |dest| equal to |src|. On entry, |dest| must have been + * initialised by calling |HMAC_CTX_init|. It returns one on success and zero + * on error. */ +OPENSSL_EXPORT int HMAC_CTX_copy_ex(HMAC_CTX *dest, const HMAC_CTX *src); + + +/* Deprecated functions. */ + +OPENSSL_EXPORT int HMAC_Init(HMAC_CTX *ctx, const void *key, int key_len, + const EVP_MD *md); + +/* HMAC_CTX_copy calls |HMAC_CTX_init| on |dest| and then sets it equal to + * |src|. On entry, |dest| must /not/ be initialised for an operation with + * |HMAC_Init_ex|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int HMAC_CTX_copy(HMAC_CTX *dest, const HMAC_CTX *src); + + +/* Private functions */ + +#define HMAC_MAX_MD_CBLOCK 128 /* largest known is SHA512 */ + +struct hmac_ctx_st { + const EVP_MD *md; + EVP_MD_CTX md_ctx; + EVP_MD_CTX i_ctx; + EVP_MD_CTX o_ctx; +} /* HMAC_CTX */; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_HMAC_H */ diff --git a/project/jni/boringssl/include/openssl/lhash.h b/project/jni/boringssl/include/openssl/lhash.h new file mode 100644 index 000000000..0d6d3aef1 --- /dev/null +++ b/project/jni/boringssl/include/openssl/lhash.h @@ -0,0 +1,192 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_LHASH_H +#define OPENSSL_HEADER_LHASH_H + +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* lhash is a traditional, chaining hash table that automatically expands and + * contracts as needed. One should not use the lh_* functions directly, rather + * use the type-safe macro wrappers: + * + * A hash table of a specific type of object has type |LHASH_OF(type)|. This + * can be defined (once) with |DEFINE_LHASH_OF(type)| and declared where needed + * with |DECLARE_LHASH_OF(type)|. For example: + * + * struct foo { + * int bar; + * }; + * + * DEFINE_LHASH_OF(struct foo); + * + * Although note that the hash table will contain /pointers/ to |foo|. + * + * A macro will be defined for each of the lh_* functions below. For + * LHASH_OF(foo), the macros would be lh_foo_new, lh_foo_num_items etc. */ + + +#define LHASH_OF(type) struct lhash_st_##type + +#define DEFINE_LHASH_OF(type) LHASH_OF(type) { int dummy; } + +#define DECLARE_LHASH_OF(type) LHASH_OF(type); + +/* The make_macros.sh script in this directory parses the following lines and + * generates the lhash_macros.h file that contains macros for the following + * types of stacks: + * + * LHASH_OF:ASN1_OBJECT + * LHASH_OF:CONF_VALUE + * LHASH_OF:SSL_SESSION */ + +#define IN_LHASH_H +#include +#undef IN_LHASH_H + + +/* lhash_item_st is an element of a hash chain. It points to the opaque data + * for this element and to the next item in the chain. The linked-list is NULL + * terminated. */ +typedef struct lhash_item_st { + void *data; + struct lhash_item_st *next; + /* hash contains the cached, hash value of |data|. */ + uint32_t hash; +} LHASH_ITEM; + +/* lhash_cmp_func is a comparison function that returns a value equal, or not + * equal, to zero depending on whether |*a| is equal, or not equal to |*b|, + * respectively. Note the difference between this and |stack_cmp_func| in that + * this takes pointers to the objects directly. */ +typedef int (*lhash_cmp_func)(const void *a, const void *b); + +/* lhash_hash_func is a function that maps an object to a uniformly distributed + * uint32_t. */ +typedef uint32_t (*lhash_hash_func)(const void *a); + +typedef struct lhash_st { + /* num_items contains the total number of items in the hash table. */ + size_t num_items; + /* buckets is an array of |num_buckets| pointers. Each points to the head of + * a chain of LHASH_ITEM objects that have the same hash value, mod + * |num_buckets|. */ + LHASH_ITEM **buckets; + /* num_buckets contains the length of |buckets|. This value is always >= + * kMinNumBuckets. */ + size_t num_buckets; + /* callback_depth contains the current depth of |lh_doall| or |lh_doall_arg| + * calls. If non-zero then this suppresses resizing of the |buckets| array, + * which would otherwise disrupt the iteration. */ + unsigned callback_depth; + + lhash_cmp_func comp; + lhash_hash_func hash; +} _LHASH; + +/* lh_new returns a new, empty hash table or NULL on error. If |comp| is NULL, + * |strcmp| will be used. If |hash| is NULL, a generic hash function will be + * used. */ +OPENSSL_EXPORT _LHASH *lh_new(lhash_hash_func hash, lhash_cmp_func comp); + +/* lh_free frees the hash table itself but none of the elements. See + * |lh_doall|. */ +OPENSSL_EXPORT void lh_free(_LHASH *lh); + +/* lh_num_items returns the number of items in |lh|. */ +OPENSSL_EXPORT size_t lh_num_items(const _LHASH *lh); + +/* lh_retrieve finds an element equal to |data| in the hash table and returns + * it. If no such element exists, it returns NULL. */ +OPENSSL_EXPORT void *lh_retrieve(const _LHASH *lh, const void *data); + +/* lh_insert inserts |data| into the hash table. If an existing element is + * equal to |data| (with respect to the comparison function) then |*old_data| + * will be set to that value and it will be replaced. Otherwise, or in the + * event of an error, |*old_data| will be set to NULL. It returns one on + * success or zero in the case of an allocation error. */ +OPENSSL_EXPORT int lh_insert(_LHASH *lh, void **old_data, void *data); + +/* lh_delete removes an element equal to |data| from the hash table and returns + * it. If no such element is found, it returns NULL. */ +OPENSSL_EXPORT void *lh_delete(_LHASH *lh, const void *data); + +/* lh_doall calls |func| on each element of the hash table. + * TODO(fork): rename this */ +OPENSSL_EXPORT void lh_doall(_LHASH *lh, void (*func)(void *)); + +/* lh_doall_arg calls |func| on each element of the hash table and also passes + * |arg| as the second argument. + * TODO(fork): rename this */ +OPENSSL_EXPORT void lh_doall_arg(_LHASH *lh, void (*func)(void *, void *), + void *arg); + +/* lh_strhash is the default hash function which processes NUL-terminated + * strings. */ +OPENSSL_EXPORT uint32_t lh_strhash(const char *c); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_LHASH_H */ diff --git a/project/jni/boringssl/include/openssl/lhash_macros.h b/project/jni/boringssl/include/openssl/lhash_macros.h new file mode 100644 index 000000000..1d981073e --- /dev/null +++ b/project/jni/boringssl/include/openssl/lhash_macros.h @@ -0,0 +1,132 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#if !defined(IN_LHASH_H) +#error "Don't include this file directly. Include lhash.h" +#endif + +/* ASN1_OBJECT */ +#define lh_ASN1_OBJECT_new(hash, comp) \ + ((LHASH_OF(ASN1_OBJECT) *)lh_new( \ + CHECKED_CAST(lhash_hash_func, uint32_t (*)(const ASN1_OBJECT *), hash), \ + CHECKED_CAST(lhash_cmp_func, \ + int (*)(const ASN1_OBJECT *a, const ASN1_OBJECT *b), \ + comp))) + +#define lh_ASN1_OBJECT_free(lh) \ + lh_free(CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh)); + +#define lh_ASN1_OBJECT_num_items(lh) \ + lh_num_items(CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh)) + +#define lh_ASN1_OBJECT_retrieve(lh, data) \ + ((ASN1_OBJECT *)lh_retrieve( \ + CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh), \ + CHECKED_CAST(void *, ASN1_OBJECT *, data))) + +#define lh_ASN1_OBJECT_insert(lh, old_data, data) \ + lh_insert(CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh), \ + CHECKED_CAST(void **, ASN1_OBJECT **, old_data), \ + CHECKED_CAST(void *, ASN1_OBJECT *, data)) + +#define lh_ASN1_OBJECT_delete(lh, data) \ + ((ASN1_OBJECT *)lh_delete( \ + CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh), \ + CHECKED_CAST(void *, ASN1_OBJECT *, data))) + +#define lh_ASN1_OBJECT_doall(lh, func) \ + lh_doall(CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_OBJECT *), func)); + +#define lh_ASN1_OBJECT_doall_arg(lh, func, arg) \ + lh_doall_arg(CHECKED_CAST(_LHASH *, LHASH_OF(ASN1_OBJECT) *, lh), \ + CHECKED_CAST(void (*)(void *, void *), \ + void (*)(ASN1_OBJECT *, void *), func), \ + arg); + +/* CONF_VALUE */ +#define lh_CONF_VALUE_new(hash, comp) \ + ((LHASH_OF(CONF_VALUE) *)lh_new( \ + CHECKED_CAST(lhash_hash_func, uint32_t (*)(const CONF_VALUE *), hash), \ + CHECKED_CAST(lhash_cmp_func, \ + int (*)(const CONF_VALUE *a, const CONF_VALUE *b), comp))) + +#define lh_CONF_VALUE_free(lh) \ + lh_free(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh)); + +#define lh_CONF_VALUE_num_items(lh) \ + lh_num_items(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh)) + +#define lh_CONF_VALUE_retrieve(lh, data) \ + ((CONF_VALUE *)lh_retrieve( \ + CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh), \ + CHECKED_CAST(void *, CONF_VALUE *, data))) + +#define lh_CONF_VALUE_insert(lh, old_data, data) \ + lh_insert(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh), \ + CHECKED_CAST(void **, CONF_VALUE **, old_data), \ + CHECKED_CAST(void *, CONF_VALUE *, data)) + +#define lh_CONF_VALUE_delete(lh, data) \ + ((CONF_VALUE *)lh_delete(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh), \ + CHECKED_CAST(void *, CONF_VALUE *, data))) + +#define lh_CONF_VALUE_doall(lh, func) \ + lh_doall(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh), \ + CHECKED_CAST(void (*)(void *), void (*)(CONF_VALUE *), func)); + +#define lh_CONF_VALUE_doall_arg(lh, func, arg) \ + lh_doall_arg(CHECKED_CAST(_LHASH *, LHASH_OF(CONF_VALUE) *, lh), \ + CHECKED_CAST(void (*)(void *, void *), \ + void (*)(CONF_VALUE *, void *), func), \ + arg); + +/* SSL_SESSION */ +#define lh_SSL_SESSION_new(hash, comp) \ + ((LHASH_OF(SSL_SESSION) *)lh_new( \ + CHECKED_CAST(lhash_hash_func, uint32_t (*)(const SSL_SESSION *), hash), \ + CHECKED_CAST(lhash_cmp_func, \ + int (*)(const SSL_SESSION *a, const SSL_SESSION *b), \ + comp))) + +#define lh_SSL_SESSION_free(lh) \ + lh_free(CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh)); + +#define lh_SSL_SESSION_num_items(lh) \ + lh_num_items(CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh)) + +#define lh_SSL_SESSION_retrieve(lh, data) \ + ((SSL_SESSION *)lh_retrieve( \ + CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh), \ + CHECKED_CAST(void *, SSL_SESSION *, data))) + +#define lh_SSL_SESSION_insert(lh, old_data, data) \ + lh_insert(CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh), \ + CHECKED_CAST(void **, SSL_SESSION **, old_data), \ + CHECKED_CAST(void *, SSL_SESSION *, data)) + +#define lh_SSL_SESSION_delete(lh, data) \ + ((SSL_SESSION *)lh_delete( \ + CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh), \ + CHECKED_CAST(void *, SSL_SESSION *, data))) + +#define lh_SSL_SESSION_doall(lh, func) \ + lh_doall(CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh), \ + CHECKED_CAST(void (*)(void *), void (*)(SSL_SESSION *), func)); + +#define lh_SSL_SESSION_doall_arg(lh, func, arg) \ + lh_doall_arg(CHECKED_CAST(_LHASH *, LHASH_OF(SSL_SESSION) *, lh), \ + CHECKED_CAST(void (*)(void *, void *), \ + void (*)(SSL_SESSION *, void *), func), \ + arg); diff --git a/project/jni/boringssl/include/openssl/md4.h b/project/jni/boringssl/include/openssl/md4.h new file mode 100644 index 000000000..93c7af831 --- /dev/null +++ b/project/jni/boringssl/include/openssl/md4.h @@ -0,0 +1,102 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_MD4_H +#define OPENSSL_HEADER_MD4_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* MD4. */ + +/* MD4_CBLOCK is the block size of MD4. */ +#define MD4_CBLOCK 64 + +/* MD4_DIGEST_LENGTH is the length of an MD4 digest. */ +#define MD4_DIGEST_LENGTH 16 + +/* MD4_Init initialises |md4| and returns one. */ +OPENSSL_EXPORT int MD4_Init(MD4_CTX *md4); + +/* MD4_Update adds |len| bytes from |data| to |md4| and returns one. */ +OPENSSL_EXPORT int MD4_Update(MD4_CTX *md4, const void *data, size_t len); + +/* MD4_Final adds the final padding to |md4| and writes the resulting digest to + * |md|, which must have at least |MD4_DIGEST_LENGTH| bytes of space. It + * returns one. */ +OPENSSL_EXPORT int MD4_Final(uint8_t *md, MD4_CTX *md4); + +/* MD4_Transform is a low-level function that performs a single, MD4 block + * transformation using the state from |md4| and 64 bytes from |block|. */ +OPENSSL_EXPORT void MD4_Transform(MD4_CTX *md4, const uint8_t *block); + +struct md4_state_st { + uint32_t h[4]; + uint32_t Nl, Nh; + uint8_t data[MD4_CBLOCK]; + unsigned num; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_MD4_H */ diff --git a/project/jni/boringssl/include/openssl/md5.h b/project/jni/boringssl/include/openssl/md5.h new file mode 100644 index 000000000..55162f023 --- /dev/null +++ b/project/jni/boringssl/include/openssl/md5.h @@ -0,0 +1,107 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_MD5_H +#define OPENSSL_HEADER_MD5_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* MD5. */ + + +/* MD5_CBLOCK is the block size of MD5. */ +#define MD5_CBLOCK 64 + +/* MD5_DIGEST_LENGTH is the length of an MD5 digest. */ +#define MD5_DIGEST_LENGTH 16 + +/* MD5_Init initialises |md5| and returns one. */ +OPENSSL_EXPORT int MD5_Init(MD5_CTX *md5); + +/* MD5_Update adds |len| bytes from |data| to |md5| and returns one. */ +OPENSSL_EXPORT int MD5_Update(MD5_CTX *md5, const void *data, size_t len); + +/* MD5_Final adds the final padding to |md5| and writes the resulting digest to + * |md|, which must have at least |MD5_DIGEST_LENGTH| bytes of space. It + * returns one. */ +OPENSSL_EXPORT int MD5_Final(uint8_t *md, MD5_CTX *md5); + +/* MD5 writes the digest of |len| bytes from |data| to |out| and returns |out|. + * There must be at least |MD5_DIGEST_LENGTH| bytes of space in |out|. */ +OPENSSL_EXPORT uint8_t *MD5(const uint8_t *data, size_t len, uint8_t *out); + +/* MD5_Transform is a low-level function that performs a single, MD5 block + * transformation using the state from |md5| and 64 bytes from |block|. */ +OPENSSL_EXPORT void MD5_Transform(MD5_CTX *md5, const uint8_t *block); + +struct md5_state_st { + uint32_t h[4]; + uint32_t Nl, Nh; + uint8_t data[MD5_CBLOCK]; + unsigned num; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_MD5_H */ diff --git a/project/jni/boringssl/include/openssl/mem.h b/project/jni/boringssl/include/openssl/mem.h new file mode 100644 index 000000000..c8e2b3ef0 --- /dev/null +++ b/project/jni/boringssl/include/openssl/mem.h @@ -0,0 +1,140 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_MEM_H +#define OPENSSL_HEADER_MEM_H + +#include + +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Memory and string functions, see also buf.h. + * + * OpenSSL has, historically, had a complex set of malloc debugging options. + * However, that was written in a time before Valgrind and ASAN. Since we now + * have those tools, the OpenSSL allocation functions are simply macros around + * the standard memory functions. */ + + +#define OPENSSL_malloc malloc +#define OPENSSL_realloc realloc +#define OPENSSL_free free + +/* OPENSSL_realloc_clean acts like |realloc|, but clears the previous memory + * buffer. Because this is implemented as a wrapper around |malloc|, it needs + * to be given the size of the buffer pointed to by |ptr|. */ +void *OPENSSL_realloc_clean(void *ptr, size_t old_size, size_t new_size); + +/* OPENSSL_cleanse zeros out |len| bytes of memory at |ptr|. This is similar to + * |memset_s| from C11. */ +OPENSSL_EXPORT void OPENSSL_cleanse(void *ptr, size_t len); + +/* CRYPTO_memcmp returns zero iff the |len| bytes at |a| and |b| are equal. It + * takes an amount of time dependent on |len|, but independent of the contents + * of |a| and |b|. Unlike memcmp, it cannot be used to put elements into a + * defined order as the return value when a != b is undefined, other than to be + * non-zero. */ +OPENSSL_EXPORT int CRYPTO_memcmp(const void *a, const void *b, size_t len); + +/* OPENSSL_hash32 implements the 32 bit, FNV-1a hash. */ +OPENSSL_EXPORT uint32_t OPENSSL_hash32(const void *ptr, size_t len); + +/* OPENSSL_strdup has the same behaviour as strdup(3). */ +OPENSSL_EXPORT char *OPENSSL_strdup(const char *s); + +/* OPENSSL_strnlen has the same behaviour as strnlen(3). */ +OPENSSL_EXPORT size_t OPENSSL_strnlen(const char *s, size_t len); + +/* OPENSSL_strcasecmp has the same behaviour as strcasecmp(3). */ +OPENSSL_EXPORT int OPENSSL_strcasecmp(const char *a, const char *b); + +/* OPENSSL_strncasecmp has the same behaviour as strncasecmp(3). */ +OPENSSL_EXPORT int OPENSSL_strncasecmp(const char *a, const char *b, size_t n); + +/* DECIMAL_SIZE returns an upper bound for the length of the decimal + * representation of the given type. */ +#define DECIMAL_SIZE(type) ((sizeof(type)*8+2)/3+1) + +/* Printf functions. + * + * These functions are either OpenSSL wrappers for standard functions (i.e. + * |BIO_snprintf| and |BIO_vsnprintf|) which don't exist in C89, or are + * versions of printf functions that output to a BIO rather than a FILE. */ +#ifdef __GNUC__ +#define __bio_h__attr__ __attribute__ +#else +#define __bio_h__attr__(x) +#endif +OPENSSL_EXPORT int BIO_snprintf(char *buf, size_t n, const char *format, ...) + __bio_h__attr__((__format__(__printf__, 3, 4))); + +OPENSSL_EXPORT int BIO_vsnprintf(char *buf, size_t n, const char *format, + va_list args) + __bio_h__attr__((__format__(__printf__, 3, 0))); +#undef __bio_h__attr__ + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_MEM_H */ diff --git a/project/jni/boringssl/include/openssl/obj.h b/project/jni/boringssl/include/openssl/obj.h new file mode 100644 index 000000000..32a489484 --- /dev/null +++ b/project/jni/boringssl/include/openssl/obj.h @@ -0,0 +1,198 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_OBJ_H +#define OPENSSL_HEADER_OBJ_H + +#include + +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* The objects library deals with the registration and indexing of ASN.1 object + * identifiers. These values are often written as a dotted sequence of numbers, + * e.g. 1.2.840.113549.1.9.16.3.9. + * + * Internally, OpenSSL likes to deal with these values by numbering them with + * numbers called "nids". OpenSSL has a large, built-in database of common + * object identifiers and also has both short and long names for them. + * + * This library provides functions for translating between object identifiers, + * nids, short names and long names. + * + * The nid values should not be used outside of a single process: they are not + * stable identifiers. */ + + +/* Basic operations. */ + +/* OBJ_dup returns a duplicate copy of |obj| or NULL on allocation failure. */ +OPENSSL_EXPORT ASN1_OBJECT *OBJ_dup(const ASN1_OBJECT *obj); + +/* OBJ_cmp returns a value less than, equal to or greater than zero if |a| is + * less than, equal to or greater than |b|, respectively. */ +OPENSSL_EXPORT int OBJ_cmp(const ASN1_OBJECT *a, const ASN1_OBJECT *b); + + +/* Looking up nids. */ + +/* OBJ_obj2nid returns the nid corresponding to |obj|, or |NID_undef| if no + * such object is known. */ +OPENSSL_EXPORT int OBJ_obj2nid(const ASN1_OBJECT *obj); + +/* OBJ_cbs2nid returns the nid corresponding to the DER data in |cbs|, or + * |NID_undef| if no such object is known. */ +OPENSSL_EXPORT int OBJ_cbs2nid(const CBS *cbs); + +/* OBJ_sn2nid returns the nid corresponding to |short_name|, or |NID_undef| if + * no such short name is known. */ +OPENSSL_EXPORT int OBJ_sn2nid(const char *short_name); + +/* OBJ_ln2nid returns the nid corresponding to |long_name|, or |NID_undef| if + * no such long name is known. */ +OPENSSL_EXPORT int OBJ_ln2nid(const char *long_name); + +/* OBJ_txt2nid returns the nid corresponding to |s|, which may be a short name, + * long name, or an ASCII string containing a dotted sequence of numbers. It + * returns the nid or NID_undef if unknown. */ +OPENSSL_EXPORT int OBJ_txt2nid(const char *s); + + +/* Getting information about nids. */ + +/* OBJ_nid2obj returns the ASN1_OBJECT corresponding to |nid|, or NULL if |nid| + * is unknown. */ +OPENSSL_EXPORT const ASN1_OBJECT *OBJ_nid2obj(int nid); + +/* OBJ_nid2sn returns the short name for |nid|, or NULL if |nid| is unknown. */ +OPENSSL_EXPORT const char *OBJ_nid2sn(int nid); + +/* OBJ_nid2ln returns the long name for |nid|, or NULL if |nid| is unknown. */ +OPENSSL_EXPORT const char *OBJ_nid2ln(int nid); + +/* OBJ_nid2cbb writes |nid| as an ASN.1 OBJECT IDENTIFIER to |out|. It returns + * one on success or zero otherwise. */ +OPENSSL_EXPORT int OBJ_nid2cbb(CBB *out, int nid); + + +/* Dealing with textual representations of object identifiers. */ + +/* OBJ_txt2obj returns an ASN1_OBJECT for the textual respresentation in |s|. + * If |dont_search_names| is zero, then |s| will be matched against the long + * and short names of a known objects to find a match. Otherwise |s| must + * contain an ASCII string with a dotted sequence of numbers. The resulting + * object need not be previously known. It returns a freshly allocated + * |ASN1_OBJECT| or NULL on error. */ +OPENSSL_EXPORT ASN1_OBJECT *OBJ_txt2obj(const char *s, int dont_search_names); + +/* OBJ_obj2txt converts |obj| to a textual representation. If + * |dont_return_name| is zero then |obj| will be matched against known objects + * and the long (preferably) or short name will be used if found. Otherwise + * |obj| will be converted into a dotted sequence of integers. If |out| is not + * NULL, then at most |out_len| bytes of the textual form will be written + * there. If |out_len| is at least one, then string written to |out| will + * always be NUL terminated. It returns the number of characters that could + * have been written, not including the final NUL, or -1 on error. */ +OPENSSL_EXPORT int OBJ_obj2txt(char *out, int out_len, const ASN1_OBJECT *obj, + int dont_return_name); + + +/* Adding objects at runtime. */ + +/* OBJ_create adds a known object and returns the nid of the new object, or + * NID_undef on error. */ +OPENSSL_EXPORT int OBJ_create(const char *oid, const char *short_name, + const char *long_name); + + +/* Handling signature algorithm identifiers. + * + * Some NIDs (e.g. sha256WithRSAEncryption) specify both a digest algorithm and + * a public key algorithm. The following functions map between pairs of digest + * and public-key algorithms and the NIDs that specify their combination. + * + * Sometimes the combination NID leaves the digest unspecified (e.g. + * rsassaPss). In these cases, the digest NID is |NID_undef|. */ + +/* OBJ_find_sigid_algs finds the digest and public-key NIDs that correspond to + * the signing algorithm |sign_nid|. If successful, it sets |*out_digest_nid| + * and |*out_pkey_nid| and returns one. Otherwise it returns zero. Any of + * |out_digest_nid| or |out_pkey_nid| can be NULL if the caller doesn't need + * that output value. */ +OPENSSL_EXPORT int OBJ_find_sigid_algs(int sign_nid, int *out_digest_nid, + int *out_pkey_nid); + +/* OBJ_find_sigid_by_algs finds the signature NID that corresponds to the + * combination of |digest_nid| and |pkey_nid|. If success, it sets + * |*out_sign_nid| and returns one. Otherwise it returns zero. The + * |out_sign_nid| argument can be NULL if the caller only wishes to learn + * whether the combination is valid. */ +OPENSSL_EXPORT int OBJ_find_sigid_by_algs(int *out_sign_nid, int digest_nid, + int pkey_nid); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define OBJ_R_UNKNOWN_NID 100 + +#endif /* OPENSSL_HEADER_OBJ_H */ diff --git a/project/jni/boringssl/include/openssl/obj_mac.h b/project/jni/boringssl/include/openssl/obj_mac.h new file mode 100644 index 000000000..b636adcfc --- /dev/null +++ b/project/jni/boringssl/include/openssl/obj_mac.h @@ -0,0 +1,4144 @@ +/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the + * following command: + * perl objects.pl objects.txt obj_mac.num ../../include/openssl/obj_mac.h */ + +/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#define SN_undef "UNDEF" +#define LN_undef "undefined" +#define NID_undef 0 +#define OBJ_undef 0L + +#define SN_itu_t "ITU-T" +#define LN_itu_t "itu-t" +#define NID_itu_t 645 +#define OBJ_itu_t 0L + +#define NID_ccitt 404 +#define OBJ_ccitt OBJ_itu_t + +#define SN_iso "ISO" +#define LN_iso "iso" +#define NID_iso 181 +#define OBJ_iso 1L + +#define SN_joint_iso_itu_t "JOINT-ISO-ITU-T" +#define LN_joint_iso_itu_t "joint-iso-itu-t" +#define NID_joint_iso_itu_t 646 +#define OBJ_joint_iso_itu_t 2L + +#define NID_joint_iso_ccitt 393 +#define OBJ_joint_iso_ccitt OBJ_joint_iso_itu_t + +#define SN_member_body "member-body" +#define LN_member_body "ISO Member Body" +#define NID_member_body 182 +#define OBJ_member_body OBJ_iso,2L + +#define SN_identified_organization "identified-organization" +#define NID_identified_organization 676 +#define OBJ_identified_organization OBJ_iso,3L + +#define SN_hmac_md5 "HMAC-MD5" +#define LN_hmac_md5 "hmac-md5" +#define NID_hmac_md5 780 +#define OBJ_hmac_md5 OBJ_identified_organization,6L,1L,5L,5L,8L,1L,1L + +#define SN_hmac_sha1 "HMAC-SHA1" +#define LN_hmac_sha1 "hmac-sha1" +#define NID_hmac_sha1 781 +#define OBJ_hmac_sha1 OBJ_identified_organization,6L,1L,5L,5L,8L,1L,2L + +#define SN_certicom_arc "certicom-arc" +#define NID_certicom_arc 677 +#define OBJ_certicom_arc OBJ_identified_organization,132L + +#define SN_international_organizations "international-organizations" +#define LN_international_organizations "International Organizations" +#define NID_international_organizations 647 +#define OBJ_international_organizations OBJ_joint_iso_itu_t,23L + +#define SN_wap "wap" +#define NID_wap 678 +#define OBJ_wap OBJ_international_organizations,43L + +#define SN_wap_wsg "wap-wsg" +#define NID_wap_wsg 679 +#define OBJ_wap_wsg OBJ_wap,1L + +#define SN_selected_attribute_types "selected-attribute-types" +#define LN_selected_attribute_types "Selected Attribute Types" +#define NID_selected_attribute_types 394 +#define OBJ_selected_attribute_types OBJ_joint_iso_itu_t,5L,1L,5L + +#define SN_clearance "clearance" +#define NID_clearance 395 +#define OBJ_clearance OBJ_selected_attribute_types,55L + +#define SN_ISO_US "ISO-US" +#define LN_ISO_US "ISO US Member Body" +#define NID_ISO_US 183 +#define OBJ_ISO_US OBJ_member_body,840L + +#define SN_X9_57 "X9-57" +#define LN_X9_57 "X9.57" +#define NID_X9_57 184 +#define OBJ_X9_57 OBJ_ISO_US,10040L + +#define SN_X9cm "X9cm" +#define LN_X9cm "X9.57 CM ?" +#define NID_X9cm 185 +#define OBJ_X9cm OBJ_X9_57,4L + +#define SN_dsa "DSA" +#define LN_dsa "dsaEncryption" +#define NID_dsa 116 +#define OBJ_dsa OBJ_X9cm,1L + +#define SN_dsaWithSHA1 "DSA-SHA1" +#define LN_dsaWithSHA1 "dsaWithSHA1" +#define NID_dsaWithSHA1 113 +#define OBJ_dsaWithSHA1 OBJ_X9cm,3L + +#define SN_ansi_X9_62 "ansi-X9-62" +#define LN_ansi_X9_62 "ANSI X9.62" +#define NID_ansi_X9_62 405 +#define OBJ_ansi_X9_62 OBJ_ISO_US,10045L + +#define OBJ_X9_62_id_fieldType OBJ_ansi_X9_62,1L + +#define SN_X9_62_prime_field "prime-field" +#define NID_X9_62_prime_field 406 +#define OBJ_X9_62_prime_field OBJ_X9_62_id_fieldType,1L + +#define SN_X9_62_characteristic_two_field "characteristic-two-field" +#define NID_X9_62_characteristic_two_field 407 +#define OBJ_X9_62_characteristic_two_field OBJ_X9_62_id_fieldType,2L + +#define SN_X9_62_id_characteristic_two_basis "id-characteristic-two-basis" +#define NID_X9_62_id_characteristic_two_basis 680 +#define OBJ_X9_62_id_characteristic_two_basis OBJ_X9_62_characteristic_two_field,3L + +#define SN_X9_62_onBasis "onBasis" +#define NID_X9_62_onBasis 681 +#define OBJ_X9_62_onBasis OBJ_X9_62_id_characteristic_two_basis,1L + +#define SN_X9_62_tpBasis "tpBasis" +#define NID_X9_62_tpBasis 682 +#define OBJ_X9_62_tpBasis OBJ_X9_62_id_characteristic_two_basis,2L + +#define SN_X9_62_ppBasis "ppBasis" +#define NID_X9_62_ppBasis 683 +#define OBJ_X9_62_ppBasis OBJ_X9_62_id_characteristic_two_basis,3L + +#define OBJ_X9_62_id_publicKeyType OBJ_ansi_X9_62,2L + +#define SN_X9_62_id_ecPublicKey "id-ecPublicKey" +#define NID_X9_62_id_ecPublicKey 408 +#define OBJ_X9_62_id_ecPublicKey OBJ_X9_62_id_publicKeyType,1L + +#define OBJ_X9_62_ellipticCurve OBJ_ansi_X9_62,3L + +#define OBJ_X9_62_c_TwoCurve OBJ_X9_62_ellipticCurve,0L + +#define SN_X9_62_c2pnb163v1 "c2pnb163v1" +#define NID_X9_62_c2pnb163v1 684 +#define OBJ_X9_62_c2pnb163v1 OBJ_X9_62_c_TwoCurve,1L + +#define SN_X9_62_c2pnb163v2 "c2pnb163v2" +#define NID_X9_62_c2pnb163v2 685 +#define OBJ_X9_62_c2pnb163v2 OBJ_X9_62_c_TwoCurve,2L + +#define SN_X9_62_c2pnb163v3 "c2pnb163v3" +#define NID_X9_62_c2pnb163v3 686 +#define OBJ_X9_62_c2pnb163v3 OBJ_X9_62_c_TwoCurve,3L + +#define SN_X9_62_c2pnb176v1 "c2pnb176v1" +#define NID_X9_62_c2pnb176v1 687 +#define OBJ_X9_62_c2pnb176v1 OBJ_X9_62_c_TwoCurve,4L + +#define SN_X9_62_c2tnb191v1 "c2tnb191v1" +#define NID_X9_62_c2tnb191v1 688 +#define OBJ_X9_62_c2tnb191v1 OBJ_X9_62_c_TwoCurve,5L + +#define SN_X9_62_c2tnb191v2 "c2tnb191v2" +#define NID_X9_62_c2tnb191v2 689 +#define OBJ_X9_62_c2tnb191v2 OBJ_X9_62_c_TwoCurve,6L + +#define SN_X9_62_c2tnb191v3 "c2tnb191v3" +#define NID_X9_62_c2tnb191v3 690 +#define OBJ_X9_62_c2tnb191v3 OBJ_X9_62_c_TwoCurve,7L + +#define SN_X9_62_c2onb191v4 "c2onb191v4" +#define NID_X9_62_c2onb191v4 691 +#define OBJ_X9_62_c2onb191v4 OBJ_X9_62_c_TwoCurve,8L + +#define SN_X9_62_c2onb191v5 "c2onb191v5" +#define NID_X9_62_c2onb191v5 692 +#define OBJ_X9_62_c2onb191v5 OBJ_X9_62_c_TwoCurve,9L + +#define SN_X9_62_c2pnb208w1 "c2pnb208w1" +#define NID_X9_62_c2pnb208w1 693 +#define OBJ_X9_62_c2pnb208w1 OBJ_X9_62_c_TwoCurve,10L + +#define SN_X9_62_c2tnb239v1 "c2tnb239v1" +#define NID_X9_62_c2tnb239v1 694 +#define OBJ_X9_62_c2tnb239v1 OBJ_X9_62_c_TwoCurve,11L + +#define SN_X9_62_c2tnb239v2 "c2tnb239v2" +#define NID_X9_62_c2tnb239v2 695 +#define OBJ_X9_62_c2tnb239v2 OBJ_X9_62_c_TwoCurve,12L + +#define SN_X9_62_c2tnb239v3 "c2tnb239v3" +#define NID_X9_62_c2tnb239v3 696 +#define OBJ_X9_62_c2tnb239v3 OBJ_X9_62_c_TwoCurve,13L + +#define SN_X9_62_c2onb239v4 "c2onb239v4" +#define NID_X9_62_c2onb239v4 697 +#define OBJ_X9_62_c2onb239v4 OBJ_X9_62_c_TwoCurve,14L + +#define SN_X9_62_c2onb239v5 "c2onb239v5" +#define NID_X9_62_c2onb239v5 698 +#define OBJ_X9_62_c2onb239v5 OBJ_X9_62_c_TwoCurve,15L + +#define SN_X9_62_c2pnb272w1 "c2pnb272w1" +#define NID_X9_62_c2pnb272w1 699 +#define OBJ_X9_62_c2pnb272w1 OBJ_X9_62_c_TwoCurve,16L + +#define SN_X9_62_c2pnb304w1 "c2pnb304w1" +#define NID_X9_62_c2pnb304w1 700 +#define OBJ_X9_62_c2pnb304w1 OBJ_X9_62_c_TwoCurve,17L + +#define SN_X9_62_c2tnb359v1 "c2tnb359v1" +#define NID_X9_62_c2tnb359v1 701 +#define OBJ_X9_62_c2tnb359v1 OBJ_X9_62_c_TwoCurve,18L + +#define SN_X9_62_c2pnb368w1 "c2pnb368w1" +#define NID_X9_62_c2pnb368w1 702 +#define OBJ_X9_62_c2pnb368w1 OBJ_X9_62_c_TwoCurve,19L + +#define SN_X9_62_c2tnb431r1 "c2tnb431r1" +#define NID_X9_62_c2tnb431r1 703 +#define OBJ_X9_62_c2tnb431r1 OBJ_X9_62_c_TwoCurve,20L + +#define OBJ_X9_62_primeCurve OBJ_X9_62_ellipticCurve,1L + +#define SN_X9_62_prime192v1 "prime192v1" +#define NID_X9_62_prime192v1 409 +#define OBJ_X9_62_prime192v1 OBJ_X9_62_primeCurve,1L + +#define SN_X9_62_prime192v2 "prime192v2" +#define NID_X9_62_prime192v2 410 +#define OBJ_X9_62_prime192v2 OBJ_X9_62_primeCurve,2L + +#define SN_X9_62_prime192v3 "prime192v3" +#define NID_X9_62_prime192v3 411 +#define OBJ_X9_62_prime192v3 OBJ_X9_62_primeCurve,3L + +#define SN_X9_62_prime239v1 "prime239v1" +#define NID_X9_62_prime239v1 412 +#define OBJ_X9_62_prime239v1 OBJ_X9_62_primeCurve,4L + +#define SN_X9_62_prime239v2 "prime239v2" +#define NID_X9_62_prime239v2 413 +#define OBJ_X9_62_prime239v2 OBJ_X9_62_primeCurve,5L + +#define SN_X9_62_prime239v3 "prime239v3" +#define NID_X9_62_prime239v3 414 +#define OBJ_X9_62_prime239v3 OBJ_X9_62_primeCurve,6L + +#define SN_X9_62_prime256v1 "prime256v1" +#define NID_X9_62_prime256v1 415 +#define OBJ_X9_62_prime256v1 OBJ_X9_62_primeCurve,7L + +#define OBJ_X9_62_id_ecSigType OBJ_ansi_X9_62,4L + +#define SN_ecdsa_with_SHA1 "ecdsa-with-SHA1" +#define NID_ecdsa_with_SHA1 416 +#define OBJ_ecdsa_with_SHA1 OBJ_X9_62_id_ecSigType,1L + +#define SN_ecdsa_with_Recommended "ecdsa-with-Recommended" +#define NID_ecdsa_with_Recommended 791 +#define OBJ_ecdsa_with_Recommended OBJ_X9_62_id_ecSigType,2L + +#define SN_ecdsa_with_Specified "ecdsa-with-Specified" +#define NID_ecdsa_with_Specified 792 +#define OBJ_ecdsa_with_Specified OBJ_X9_62_id_ecSigType,3L + +#define SN_ecdsa_with_SHA224 "ecdsa-with-SHA224" +#define NID_ecdsa_with_SHA224 793 +#define OBJ_ecdsa_with_SHA224 OBJ_ecdsa_with_Specified,1L + +#define SN_ecdsa_with_SHA256 "ecdsa-with-SHA256" +#define NID_ecdsa_with_SHA256 794 +#define OBJ_ecdsa_with_SHA256 OBJ_ecdsa_with_Specified,2L + +#define SN_ecdsa_with_SHA384 "ecdsa-with-SHA384" +#define NID_ecdsa_with_SHA384 795 +#define OBJ_ecdsa_with_SHA384 OBJ_ecdsa_with_Specified,3L + +#define SN_ecdsa_with_SHA512 "ecdsa-with-SHA512" +#define NID_ecdsa_with_SHA512 796 +#define OBJ_ecdsa_with_SHA512 OBJ_ecdsa_with_Specified,4L + +#define OBJ_secg_ellipticCurve OBJ_certicom_arc,0L + +#define SN_secp112r1 "secp112r1" +#define NID_secp112r1 704 +#define OBJ_secp112r1 OBJ_secg_ellipticCurve,6L + +#define SN_secp112r2 "secp112r2" +#define NID_secp112r2 705 +#define OBJ_secp112r2 OBJ_secg_ellipticCurve,7L + +#define SN_secp128r1 "secp128r1" +#define NID_secp128r1 706 +#define OBJ_secp128r1 OBJ_secg_ellipticCurve,28L + +#define SN_secp128r2 "secp128r2" +#define NID_secp128r2 707 +#define OBJ_secp128r2 OBJ_secg_ellipticCurve,29L + +#define SN_secp160k1 "secp160k1" +#define NID_secp160k1 708 +#define OBJ_secp160k1 OBJ_secg_ellipticCurve,9L + +#define SN_secp160r1 "secp160r1" +#define NID_secp160r1 709 +#define OBJ_secp160r1 OBJ_secg_ellipticCurve,8L + +#define SN_secp160r2 "secp160r2" +#define NID_secp160r2 710 +#define OBJ_secp160r2 OBJ_secg_ellipticCurve,30L + +#define SN_secp192k1 "secp192k1" +#define NID_secp192k1 711 +#define OBJ_secp192k1 OBJ_secg_ellipticCurve,31L + +#define SN_secp224k1 "secp224k1" +#define NID_secp224k1 712 +#define OBJ_secp224k1 OBJ_secg_ellipticCurve,32L + +#define SN_secp224r1 "secp224r1" +#define NID_secp224r1 713 +#define OBJ_secp224r1 OBJ_secg_ellipticCurve,33L + +#define SN_secp256k1 "secp256k1" +#define NID_secp256k1 714 +#define OBJ_secp256k1 OBJ_secg_ellipticCurve,10L + +#define SN_secp384r1 "secp384r1" +#define NID_secp384r1 715 +#define OBJ_secp384r1 OBJ_secg_ellipticCurve,34L + +#define SN_secp521r1 "secp521r1" +#define NID_secp521r1 716 +#define OBJ_secp521r1 OBJ_secg_ellipticCurve,35L + +#define SN_sect113r1 "sect113r1" +#define NID_sect113r1 717 +#define OBJ_sect113r1 OBJ_secg_ellipticCurve,4L + +#define SN_sect113r2 "sect113r2" +#define NID_sect113r2 718 +#define OBJ_sect113r2 OBJ_secg_ellipticCurve,5L + +#define SN_sect131r1 "sect131r1" +#define NID_sect131r1 719 +#define OBJ_sect131r1 OBJ_secg_ellipticCurve,22L + +#define SN_sect131r2 "sect131r2" +#define NID_sect131r2 720 +#define OBJ_sect131r2 OBJ_secg_ellipticCurve,23L + +#define SN_sect163k1 "sect163k1" +#define NID_sect163k1 721 +#define OBJ_sect163k1 OBJ_secg_ellipticCurve,1L + +#define SN_sect163r1 "sect163r1" +#define NID_sect163r1 722 +#define OBJ_sect163r1 OBJ_secg_ellipticCurve,2L + +#define SN_sect163r2 "sect163r2" +#define NID_sect163r2 723 +#define OBJ_sect163r2 OBJ_secg_ellipticCurve,15L + +#define SN_sect193r1 "sect193r1" +#define NID_sect193r1 724 +#define OBJ_sect193r1 OBJ_secg_ellipticCurve,24L + +#define SN_sect193r2 "sect193r2" +#define NID_sect193r2 725 +#define OBJ_sect193r2 OBJ_secg_ellipticCurve,25L + +#define SN_sect233k1 "sect233k1" +#define NID_sect233k1 726 +#define OBJ_sect233k1 OBJ_secg_ellipticCurve,26L + +#define SN_sect233r1 "sect233r1" +#define NID_sect233r1 727 +#define OBJ_sect233r1 OBJ_secg_ellipticCurve,27L + +#define SN_sect239k1 "sect239k1" +#define NID_sect239k1 728 +#define OBJ_sect239k1 OBJ_secg_ellipticCurve,3L + +#define SN_sect283k1 "sect283k1" +#define NID_sect283k1 729 +#define OBJ_sect283k1 OBJ_secg_ellipticCurve,16L + +#define SN_sect283r1 "sect283r1" +#define NID_sect283r1 730 +#define OBJ_sect283r1 OBJ_secg_ellipticCurve,17L + +#define SN_sect409k1 "sect409k1" +#define NID_sect409k1 731 +#define OBJ_sect409k1 OBJ_secg_ellipticCurve,36L + +#define SN_sect409r1 "sect409r1" +#define NID_sect409r1 732 +#define OBJ_sect409r1 OBJ_secg_ellipticCurve,37L + +#define SN_sect571k1 "sect571k1" +#define NID_sect571k1 733 +#define OBJ_sect571k1 OBJ_secg_ellipticCurve,38L + +#define SN_sect571r1 "sect571r1" +#define NID_sect571r1 734 +#define OBJ_sect571r1 OBJ_secg_ellipticCurve,39L + +#define OBJ_wap_wsg_idm_ecid OBJ_wap_wsg,4L + +#define SN_wap_wsg_idm_ecid_wtls1 "wap-wsg-idm-ecid-wtls1" +#define NID_wap_wsg_idm_ecid_wtls1 735 +#define OBJ_wap_wsg_idm_ecid_wtls1 OBJ_wap_wsg_idm_ecid,1L + +#define SN_wap_wsg_idm_ecid_wtls3 "wap-wsg-idm-ecid-wtls3" +#define NID_wap_wsg_idm_ecid_wtls3 736 +#define OBJ_wap_wsg_idm_ecid_wtls3 OBJ_wap_wsg_idm_ecid,3L + +#define SN_wap_wsg_idm_ecid_wtls4 "wap-wsg-idm-ecid-wtls4" +#define NID_wap_wsg_idm_ecid_wtls4 737 +#define OBJ_wap_wsg_idm_ecid_wtls4 OBJ_wap_wsg_idm_ecid,4L + +#define SN_wap_wsg_idm_ecid_wtls5 "wap-wsg-idm-ecid-wtls5" +#define NID_wap_wsg_idm_ecid_wtls5 738 +#define OBJ_wap_wsg_idm_ecid_wtls5 OBJ_wap_wsg_idm_ecid,5L + +#define SN_wap_wsg_idm_ecid_wtls6 "wap-wsg-idm-ecid-wtls6" +#define NID_wap_wsg_idm_ecid_wtls6 739 +#define OBJ_wap_wsg_idm_ecid_wtls6 OBJ_wap_wsg_idm_ecid,6L + +#define SN_wap_wsg_idm_ecid_wtls7 "wap-wsg-idm-ecid-wtls7" +#define NID_wap_wsg_idm_ecid_wtls7 740 +#define OBJ_wap_wsg_idm_ecid_wtls7 OBJ_wap_wsg_idm_ecid,7L + +#define SN_wap_wsg_idm_ecid_wtls8 "wap-wsg-idm-ecid-wtls8" +#define NID_wap_wsg_idm_ecid_wtls8 741 +#define OBJ_wap_wsg_idm_ecid_wtls8 OBJ_wap_wsg_idm_ecid,8L + +#define SN_wap_wsg_idm_ecid_wtls9 "wap-wsg-idm-ecid-wtls9" +#define NID_wap_wsg_idm_ecid_wtls9 742 +#define OBJ_wap_wsg_idm_ecid_wtls9 OBJ_wap_wsg_idm_ecid,9L + +#define SN_wap_wsg_idm_ecid_wtls10 "wap-wsg-idm-ecid-wtls10" +#define NID_wap_wsg_idm_ecid_wtls10 743 +#define OBJ_wap_wsg_idm_ecid_wtls10 OBJ_wap_wsg_idm_ecid,10L + +#define SN_wap_wsg_idm_ecid_wtls11 "wap-wsg-idm-ecid-wtls11" +#define NID_wap_wsg_idm_ecid_wtls11 744 +#define OBJ_wap_wsg_idm_ecid_wtls11 OBJ_wap_wsg_idm_ecid,11L + +#define SN_wap_wsg_idm_ecid_wtls12 "wap-wsg-idm-ecid-wtls12" +#define NID_wap_wsg_idm_ecid_wtls12 745 +#define OBJ_wap_wsg_idm_ecid_wtls12 OBJ_wap_wsg_idm_ecid,12L + +#define SN_cast5_cbc "CAST5-CBC" +#define LN_cast5_cbc "cast5-cbc" +#define NID_cast5_cbc 108 +#define OBJ_cast5_cbc OBJ_ISO_US,113533L,7L,66L,10L + +#define SN_cast5_ecb "CAST5-ECB" +#define LN_cast5_ecb "cast5-ecb" +#define NID_cast5_ecb 109 + +#define SN_cast5_cfb64 "CAST5-CFB" +#define LN_cast5_cfb64 "cast5-cfb" +#define NID_cast5_cfb64 110 + +#define SN_cast5_ofb64 "CAST5-OFB" +#define LN_cast5_ofb64 "cast5-ofb" +#define NID_cast5_ofb64 111 + +#define LN_pbeWithMD5AndCast5_CBC "pbeWithMD5AndCast5CBC" +#define NID_pbeWithMD5AndCast5_CBC 112 +#define OBJ_pbeWithMD5AndCast5_CBC OBJ_ISO_US,113533L,7L,66L,12L + +#define SN_id_PasswordBasedMAC "id-PasswordBasedMAC" +#define LN_id_PasswordBasedMAC "password based MAC" +#define NID_id_PasswordBasedMAC 782 +#define OBJ_id_PasswordBasedMAC OBJ_ISO_US,113533L,7L,66L,13L + +#define SN_id_DHBasedMac "id-DHBasedMac" +#define LN_id_DHBasedMac "Diffie-Hellman based MAC" +#define NID_id_DHBasedMac 783 +#define OBJ_id_DHBasedMac OBJ_ISO_US,113533L,7L,66L,30L + +#define SN_rsadsi "rsadsi" +#define LN_rsadsi "RSA Data Security, Inc." +#define NID_rsadsi 1 +#define OBJ_rsadsi OBJ_ISO_US,113549L + +#define SN_pkcs "pkcs" +#define LN_pkcs "RSA Data Security, Inc. PKCS" +#define NID_pkcs 2 +#define OBJ_pkcs OBJ_rsadsi,1L + +#define SN_pkcs1 "pkcs1" +#define NID_pkcs1 186 +#define OBJ_pkcs1 OBJ_pkcs,1L + +#define LN_rsaEncryption "rsaEncryption" +#define NID_rsaEncryption 6 +#define OBJ_rsaEncryption OBJ_pkcs1,1L + +#define SN_md2WithRSAEncryption "RSA-MD2" +#define LN_md2WithRSAEncryption "md2WithRSAEncryption" +#define NID_md2WithRSAEncryption 7 +#define OBJ_md2WithRSAEncryption OBJ_pkcs1,2L + +#define SN_md4WithRSAEncryption "RSA-MD4" +#define LN_md4WithRSAEncryption "md4WithRSAEncryption" +#define NID_md4WithRSAEncryption 396 +#define OBJ_md4WithRSAEncryption OBJ_pkcs1,3L + +#define SN_md5WithRSAEncryption "RSA-MD5" +#define LN_md5WithRSAEncryption "md5WithRSAEncryption" +#define NID_md5WithRSAEncryption 8 +#define OBJ_md5WithRSAEncryption OBJ_pkcs1,4L + +#define SN_sha1WithRSAEncryption "RSA-SHA1" +#define LN_sha1WithRSAEncryption "sha1WithRSAEncryption" +#define NID_sha1WithRSAEncryption 65 +#define OBJ_sha1WithRSAEncryption OBJ_pkcs1,5L + +#define SN_rsaesOaep "RSAES-OAEP" +#define LN_rsaesOaep "rsaesOaep" +#define NID_rsaesOaep 919 +#define OBJ_rsaesOaep OBJ_pkcs1,7L + +#define SN_mgf1 "MGF1" +#define LN_mgf1 "mgf1" +#define NID_mgf1 911 +#define OBJ_mgf1 OBJ_pkcs1,8L + +#define SN_pSpecified "PSPECIFIED" +#define LN_pSpecified "pSpecified" +#define NID_pSpecified 935 +#define OBJ_pSpecified OBJ_pkcs1,9L + +#define SN_rsassaPss "RSASSA-PSS" +#define LN_rsassaPss "rsassaPss" +#define NID_rsassaPss 912 +#define OBJ_rsassaPss OBJ_pkcs1,10L + +#define SN_sha256WithRSAEncryption "RSA-SHA256" +#define LN_sha256WithRSAEncryption "sha256WithRSAEncryption" +#define NID_sha256WithRSAEncryption 668 +#define OBJ_sha256WithRSAEncryption OBJ_pkcs1,11L + +#define SN_sha384WithRSAEncryption "RSA-SHA384" +#define LN_sha384WithRSAEncryption "sha384WithRSAEncryption" +#define NID_sha384WithRSAEncryption 669 +#define OBJ_sha384WithRSAEncryption OBJ_pkcs1,12L + +#define SN_sha512WithRSAEncryption "RSA-SHA512" +#define LN_sha512WithRSAEncryption "sha512WithRSAEncryption" +#define NID_sha512WithRSAEncryption 670 +#define OBJ_sha512WithRSAEncryption OBJ_pkcs1,13L + +#define SN_sha224WithRSAEncryption "RSA-SHA224" +#define LN_sha224WithRSAEncryption "sha224WithRSAEncryption" +#define NID_sha224WithRSAEncryption 671 +#define OBJ_sha224WithRSAEncryption OBJ_pkcs1,14L + +#define SN_pkcs3 "pkcs3" +#define NID_pkcs3 27 +#define OBJ_pkcs3 OBJ_pkcs,3L + +#define LN_dhKeyAgreement "dhKeyAgreement" +#define NID_dhKeyAgreement 28 +#define OBJ_dhKeyAgreement OBJ_pkcs3,1L + +#define SN_pkcs5 "pkcs5" +#define NID_pkcs5 187 +#define OBJ_pkcs5 OBJ_pkcs,5L + +#define SN_pbeWithMD2AndDES_CBC "PBE-MD2-DES" +#define LN_pbeWithMD2AndDES_CBC "pbeWithMD2AndDES-CBC" +#define NID_pbeWithMD2AndDES_CBC 9 +#define OBJ_pbeWithMD2AndDES_CBC OBJ_pkcs5,1L + +#define SN_pbeWithMD5AndDES_CBC "PBE-MD5-DES" +#define LN_pbeWithMD5AndDES_CBC "pbeWithMD5AndDES-CBC" +#define NID_pbeWithMD5AndDES_CBC 10 +#define OBJ_pbeWithMD5AndDES_CBC OBJ_pkcs5,3L + +#define SN_pbeWithMD2AndRC2_CBC "PBE-MD2-RC2-64" +#define LN_pbeWithMD2AndRC2_CBC "pbeWithMD2AndRC2-CBC" +#define NID_pbeWithMD2AndRC2_CBC 168 +#define OBJ_pbeWithMD2AndRC2_CBC OBJ_pkcs5,4L + +#define SN_pbeWithMD5AndRC2_CBC "PBE-MD5-RC2-64" +#define LN_pbeWithMD5AndRC2_CBC "pbeWithMD5AndRC2-CBC" +#define NID_pbeWithMD5AndRC2_CBC 169 +#define OBJ_pbeWithMD5AndRC2_CBC OBJ_pkcs5,6L + +#define SN_pbeWithSHA1AndDES_CBC "PBE-SHA1-DES" +#define LN_pbeWithSHA1AndDES_CBC "pbeWithSHA1AndDES-CBC" +#define NID_pbeWithSHA1AndDES_CBC 170 +#define OBJ_pbeWithSHA1AndDES_CBC OBJ_pkcs5,10L + +#define SN_pbeWithSHA1AndRC2_CBC "PBE-SHA1-RC2-64" +#define LN_pbeWithSHA1AndRC2_CBC "pbeWithSHA1AndRC2-CBC" +#define NID_pbeWithSHA1AndRC2_CBC 68 +#define OBJ_pbeWithSHA1AndRC2_CBC OBJ_pkcs5,11L + +#define LN_id_pbkdf2 "PBKDF2" +#define NID_id_pbkdf2 69 +#define OBJ_id_pbkdf2 OBJ_pkcs5,12L + +#define LN_pbes2 "PBES2" +#define NID_pbes2 161 +#define OBJ_pbes2 OBJ_pkcs5,13L + +#define LN_pbmac1 "PBMAC1" +#define NID_pbmac1 162 +#define OBJ_pbmac1 OBJ_pkcs5,14L + +#define SN_pkcs7 "pkcs7" +#define NID_pkcs7 20 +#define OBJ_pkcs7 OBJ_pkcs,7L + +#define LN_pkcs7_data "pkcs7-data" +#define NID_pkcs7_data 21 +#define OBJ_pkcs7_data OBJ_pkcs7,1L + +#define LN_pkcs7_signed "pkcs7-signedData" +#define NID_pkcs7_signed 22 +#define OBJ_pkcs7_signed OBJ_pkcs7,2L + +#define LN_pkcs7_enveloped "pkcs7-envelopedData" +#define NID_pkcs7_enveloped 23 +#define OBJ_pkcs7_enveloped OBJ_pkcs7,3L + +#define LN_pkcs7_signedAndEnveloped "pkcs7-signedAndEnvelopedData" +#define NID_pkcs7_signedAndEnveloped 24 +#define OBJ_pkcs7_signedAndEnveloped OBJ_pkcs7,4L + +#define LN_pkcs7_digest "pkcs7-digestData" +#define NID_pkcs7_digest 25 +#define OBJ_pkcs7_digest OBJ_pkcs7,5L + +#define LN_pkcs7_encrypted "pkcs7-encryptedData" +#define NID_pkcs7_encrypted 26 +#define OBJ_pkcs7_encrypted OBJ_pkcs7,6L + +#define SN_pkcs9 "pkcs9" +#define NID_pkcs9 47 +#define OBJ_pkcs9 OBJ_pkcs,9L + +#define LN_pkcs9_emailAddress "emailAddress" +#define NID_pkcs9_emailAddress 48 +#define OBJ_pkcs9_emailAddress OBJ_pkcs9,1L + +#define LN_pkcs9_unstructuredName "unstructuredName" +#define NID_pkcs9_unstructuredName 49 +#define OBJ_pkcs9_unstructuredName OBJ_pkcs9,2L + +#define LN_pkcs9_contentType "contentType" +#define NID_pkcs9_contentType 50 +#define OBJ_pkcs9_contentType OBJ_pkcs9,3L + +#define LN_pkcs9_messageDigest "messageDigest" +#define NID_pkcs9_messageDigest 51 +#define OBJ_pkcs9_messageDigest OBJ_pkcs9,4L + +#define LN_pkcs9_signingTime "signingTime" +#define NID_pkcs9_signingTime 52 +#define OBJ_pkcs9_signingTime OBJ_pkcs9,5L + +#define LN_pkcs9_countersignature "countersignature" +#define NID_pkcs9_countersignature 53 +#define OBJ_pkcs9_countersignature OBJ_pkcs9,6L + +#define LN_pkcs9_challengePassword "challengePassword" +#define NID_pkcs9_challengePassword 54 +#define OBJ_pkcs9_challengePassword OBJ_pkcs9,7L + +#define LN_pkcs9_unstructuredAddress "unstructuredAddress" +#define NID_pkcs9_unstructuredAddress 55 +#define OBJ_pkcs9_unstructuredAddress OBJ_pkcs9,8L + +#define LN_pkcs9_extCertAttributes "extendedCertificateAttributes" +#define NID_pkcs9_extCertAttributes 56 +#define OBJ_pkcs9_extCertAttributes OBJ_pkcs9,9L + +#define SN_ext_req "extReq" +#define LN_ext_req "Extension Request" +#define NID_ext_req 172 +#define OBJ_ext_req OBJ_pkcs9,14L + +#define SN_SMIMECapabilities "SMIME-CAPS" +#define LN_SMIMECapabilities "S/MIME Capabilities" +#define NID_SMIMECapabilities 167 +#define OBJ_SMIMECapabilities OBJ_pkcs9,15L + +#define SN_SMIME "SMIME" +#define LN_SMIME "S/MIME" +#define NID_SMIME 188 +#define OBJ_SMIME OBJ_pkcs9,16L + +#define SN_id_smime_mod "id-smime-mod" +#define NID_id_smime_mod 189 +#define OBJ_id_smime_mod OBJ_SMIME,0L + +#define SN_id_smime_ct "id-smime-ct" +#define NID_id_smime_ct 190 +#define OBJ_id_smime_ct OBJ_SMIME,1L + +#define SN_id_smime_aa "id-smime-aa" +#define NID_id_smime_aa 191 +#define OBJ_id_smime_aa OBJ_SMIME,2L + +#define SN_id_smime_alg "id-smime-alg" +#define NID_id_smime_alg 192 +#define OBJ_id_smime_alg OBJ_SMIME,3L + +#define SN_id_smime_cd "id-smime-cd" +#define NID_id_smime_cd 193 +#define OBJ_id_smime_cd OBJ_SMIME,4L + +#define SN_id_smime_spq "id-smime-spq" +#define NID_id_smime_spq 194 +#define OBJ_id_smime_spq OBJ_SMIME,5L + +#define SN_id_smime_cti "id-smime-cti" +#define NID_id_smime_cti 195 +#define OBJ_id_smime_cti OBJ_SMIME,6L + +#define SN_id_smime_mod_cms "id-smime-mod-cms" +#define NID_id_smime_mod_cms 196 +#define OBJ_id_smime_mod_cms OBJ_id_smime_mod,1L + +#define SN_id_smime_mod_ess "id-smime-mod-ess" +#define NID_id_smime_mod_ess 197 +#define OBJ_id_smime_mod_ess OBJ_id_smime_mod,2L + +#define SN_id_smime_mod_oid "id-smime-mod-oid" +#define NID_id_smime_mod_oid 198 +#define OBJ_id_smime_mod_oid OBJ_id_smime_mod,3L + +#define SN_id_smime_mod_msg_v3 "id-smime-mod-msg-v3" +#define NID_id_smime_mod_msg_v3 199 +#define OBJ_id_smime_mod_msg_v3 OBJ_id_smime_mod,4L + +#define SN_id_smime_mod_ets_eSignature_88 "id-smime-mod-ets-eSignature-88" +#define NID_id_smime_mod_ets_eSignature_88 200 +#define OBJ_id_smime_mod_ets_eSignature_88 OBJ_id_smime_mod,5L + +#define SN_id_smime_mod_ets_eSignature_97 "id-smime-mod-ets-eSignature-97" +#define NID_id_smime_mod_ets_eSignature_97 201 +#define OBJ_id_smime_mod_ets_eSignature_97 OBJ_id_smime_mod,6L + +#define SN_id_smime_mod_ets_eSigPolicy_88 "id-smime-mod-ets-eSigPolicy-88" +#define NID_id_smime_mod_ets_eSigPolicy_88 202 +#define OBJ_id_smime_mod_ets_eSigPolicy_88 OBJ_id_smime_mod,7L + +#define SN_id_smime_mod_ets_eSigPolicy_97 "id-smime-mod-ets-eSigPolicy-97" +#define NID_id_smime_mod_ets_eSigPolicy_97 203 +#define OBJ_id_smime_mod_ets_eSigPolicy_97 OBJ_id_smime_mod,8L + +#define SN_id_smime_ct_receipt "id-smime-ct-receipt" +#define NID_id_smime_ct_receipt 204 +#define OBJ_id_smime_ct_receipt OBJ_id_smime_ct,1L + +#define SN_id_smime_ct_authData "id-smime-ct-authData" +#define NID_id_smime_ct_authData 205 +#define OBJ_id_smime_ct_authData OBJ_id_smime_ct,2L + +#define SN_id_smime_ct_publishCert "id-smime-ct-publishCert" +#define NID_id_smime_ct_publishCert 206 +#define OBJ_id_smime_ct_publishCert OBJ_id_smime_ct,3L + +#define SN_id_smime_ct_TSTInfo "id-smime-ct-TSTInfo" +#define NID_id_smime_ct_TSTInfo 207 +#define OBJ_id_smime_ct_TSTInfo OBJ_id_smime_ct,4L + +#define SN_id_smime_ct_TDTInfo "id-smime-ct-TDTInfo" +#define NID_id_smime_ct_TDTInfo 208 +#define OBJ_id_smime_ct_TDTInfo OBJ_id_smime_ct,5L + +#define SN_id_smime_ct_contentInfo "id-smime-ct-contentInfo" +#define NID_id_smime_ct_contentInfo 209 +#define OBJ_id_smime_ct_contentInfo OBJ_id_smime_ct,6L + +#define SN_id_smime_ct_DVCSRequestData "id-smime-ct-DVCSRequestData" +#define NID_id_smime_ct_DVCSRequestData 210 +#define OBJ_id_smime_ct_DVCSRequestData OBJ_id_smime_ct,7L + +#define SN_id_smime_ct_DVCSResponseData "id-smime-ct-DVCSResponseData" +#define NID_id_smime_ct_DVCSResponseData 211 +#define OBJ_id_smime_ct_DVCSResponseData OBJ_id_smime_ct,8L + +#define SN_id_smime_ct_compressedData "id-smime-ct-compressedData" +#define NID_id_smime_ct_compressedData 786 +#define OBJ_id_smime_ct_compressedData OBJ_id_smime_ct,9L + +#define SN_id_ct_asciiTextWithCRLF "id-ct-asciiTextWithCRLF" +#define NID_id_ct_asciiTextWithCRLF 787 +#define OBJ_id_ct_asciiTextWithCRLF OBJ_id_smime_ct,27L + +#define SN_id_smime_aa_receiptRequest "id-smime-aa-receiptRequest" +#define NID_id_smime_aa_receiptRequest 212 +#define OBJ_id_smime_aa_receiptRequest OBJ_id_smime_aa,1L + +#define SN_id_smime_aa_securityLabel "id-smime-aa-securityLabel" +#define NID_id_smime_aa_securityLabel 213 +#define OBJ_id_smime_aa_securityLabel OBJ_id_smime_aa,2L + +#define SN_id_smime_aa_mlExpandHistory "id-smime-aa-mlExpandHistory" +#define NID_id_smime_aa_mlExpandHistory 214 +#define OBJ_id_smime_aa_mlExpandHistory OBJ_id_smime_aa,3L + +#define SN_id_smime_aa_contentHint "id-smime-aa-contentHint" +#define NID_id_smime_aa_contentHint 215 +#define OBJ_id_smime_aa_contentHint OBJ_id_smime_aa,4L + +#define SN_id_smime_aa_msgSigDigest "id-smime-aa-msgSigDigest" +#define NID_id_smime_aa_msgSigDigest 216 +#define OBJ_id_smime_aa_msgSigDigest OBJ_id_smime_aa,5L + +#define SN_id_smime_aa_encapContentType "id-smime-aa-encapContentType" +#define NID_id_smime_aa_encapContentType 217 +#define OBJ_id_smime_aa_encapContentType OBJ_id_smime_aa,6L + +#define SN_id_smime_aa_contentIdentifier "id-smime-aa-contentIdentifier" +#define NID_id_smime_aa_contentIdentifier 218 +#define OBJ_id_smime_aa_contentIdentifier OBJ_id_smime_aa,7L + +#define SN_id_smime_aa_macValue "id-smime-aa-macValue" +#define NID_id_smime_aa_macValue 219 +#define OBJ_id_smime_aa_macValue OBJ_id_smime_aa,8L + +#define SN_id_smime_aa_equivalentLabels "id-smime-aa-equivalentLabels" +#define NID_id_smime_aa_equivalentLabels 220 +#define OBJ_id_smime_aa_equivalentLabels OBJ_id_smime_aa,9L + +#define SN_id_smime_aa_contentReference "id-smime-aa-contentReference" +#define NID_id_smime_aa_contentReference 221 +#define OBJ_id_smime_aa_contentReference OBJ_id_smime_aa,10L + +#define SN_id_smime_aa_encrypKeyPref "id-smime-aa-encrypKeyPref" +#define NID_id_smime_aa_encrypKeyPref 222 +#define OBJ_id_smime_aa_encrypKeyPref OBJ_id_smime_aa,11L + +#define SN_id_smime_aa_signingCertificate "id-smime-aa-signingCertificate" +#define NID_id_smime_aa_signingCertificate 223 +#define OBJ_id_smime_aa_signingCertificate OBJ_id_smime_aa,12L + +#define SN_id_smime_aa_smimeEncryptCerts "id-smime-aa-smimeEncryptCerts" +#define NID_id_smime_aa_smimeEncryptCerts 224 +#define OBJ_id_smime_aa_smimeEncryptCerts OBJ_id_smime_aa,13L + +#define SN_id_smime_aa_timeStampToken "id-smime-aa-timeStampToken" +#define NID_id_smime_aa_timeStampToken 225 +#define OBJ_id_smime_aa_timeStampToken OBJ_id_smime_aa,14L + +#define SN_id_smime_aa_ets_sigPolicyId "id-smime-aa-ets-sigPolicyId" +#define NID_id_smime_aa_ets_sigPolicyId 226 +#define OBJ_id_smime_aa_ets_sigPolicyId OBJ_id_smime_aa,15L + +#define SN_id_smime_aa_ets_commitmentType "id-smime-aa-ets-commitmentType" +#define NID_id_smime_aa_ets_commitmentType 227 +#define OBJ_id_smime_aa_ets_commitmentType OBJ_id_smime_aa,16L + +#define SN_id_smime_aa_ets_signerLocation "id-smime-aa-ets-signerLocation" +#define NID_id_smime_aa_ets_signerLocation 228 +#define OBJ_id_smime_aa_ets_signerLocation OBJ_id_smime_aa,17L + +#define SN_id_smime_aa_ets_signerAttr "id-smime-aa-ets-signerAttr" +#define NID_id_smime_aa_ets_signerAttr 229 +#define OBJ_id_smime_aa_ets_signerAttr OBJ_id_smime_aa,18L + +#define SN_id_smime_aa_ets_otherSigCert "id-smime-aa-ets-otherSigCert" +#define NID_id_smime_aa_ets_otherSigCert 230 +#define OBJ_id_smime_aa_ets_otherSigCert OBJ_id_smime_aa,19L + +#define SN_id_smime_aa_ets_contentTimestamp "id-smime-aa-ets-contentTimestamp" +#define NID_id_smime_aa_ets_contentTimestamp 231 +#define OBJ_id_smime_aa_ets_contentTimestamp OBJ_id_smime_aa,20L + +#define SN_id_smime_aa_ets_CertificateRefs "id-smime-aa-ets-CertificateRefs" +#define NID_id_smime_aa_ets_CertificateRefs 232 +#define OBJ_id_smime_aa_ets_CertificateRefs OBJ_id_smime_aa,21L + +#define SN_id_smime_aa_ets_RevocationRefs "id-smime-aa-ets-RevocationRefs" +#define NID_id_smime_aa_ets_RevocationRefs 233 +#define OBJ_id_smime_aa_ets_RevocationRefs OBJ_id_smime_aa,22L + +#define SN_id_smime_aa_ets_certValues "id-smime-aa-ets-certValues" +#define NID_id_smime_aa_ets_certValues 234 +#define OBJ_id_smime_aa_ets_certValues OBJ_id_smime_aa,23L + +#define SN_id_smime_aa_ets_revocationValues "id-smime-aa-ets-revocationValues" +#define NID_id_smime_aa_ets_revocationValues 235 +#define OBJ_id_smime_aa_ets_revocationValues OBJ_id_smime_aa,24L + +#define SN_id_smime_aa_ets_escTimeStamp "id-smime-aa-ets-escTimeStamp" +#define NID_id_smime_aa_ets_escTimeStamp 236 +#define OBJ_id_smime_aa_ets_escTimeStamp OBJ_id_smime_aa,25L + +#define SN_id_smime_aa_ets_certCRLTimestamp "id-smime-aa-ets-certCRLTimestamp" +#define NID_id_smime_aa_ets_certCRLTimestamp 237 +#define OBJ_id_smime_aa_ets_certCRLTimestamp OBJ_id_smime_aa,26L + +#define SN_id_smime_aa_ets_archiveTimeStamp "id-smime-aa-ets-archiveTimeStamp" +#define NID_id_smime_aa_ets_archiveTimeStamp 238 +#define OBJ_id_smime_aa_ets_archiveTimeStamp OBJ_id_smime_aa,27L + +#define SN_id_smime_aa_signatureType "id-smime-aa-signatureType" +#define NID_id_smime_aa_signatureType 239 +#define OBJ_id_smime_aa_signatureType OBJ_id_smime_aa,28L + +#define SN_id_smime_aa_dvcs_dvc "id-smime-aa-dvcs-dvc" +#define NID_id_smime_aa_dvcs_dvc 240 +#define OBJ_id_smime_aa_dvcs_dvc OBJ_id_smime_aa,29L + +#define SN_id_smime_alg_ESDHwith3DES "id-smime-alg-ESDHwith3DES" +#define NID_id_smime_alg_ESDHwith3DES 241 +#define OBJ_id_smime_alg_ESDHwith3DES OBJ_id_smime_alg,1L + +#define SN_id_smime_alg_ESDHwithRC2 "id-smime-alg-ESDHwithRC2" +#define NID_id_smime_alg_ESDHwithRC2 242 +#define OBJ_id_smime_alg_ESDHwithRC2 OBJ_id_smime_alg,2L + +#define SN_id_smime_alg_3DESwrap "id-smime-alg-3DESwrap" +#define NID_id_smime_alg_3DESwrap 243 +#define OBJ_id_smime_alg_3DESwrap OBJ_id_smime_alg,3L + +#define SN_id_smime_alg_RC2wrap "id-smime-alg-RC2wrap" +#define NID_id_smime_alg_RC2wrap 244 +#define OBJ_id_smime_alg_RC2wrap OBJ_id_smime_alg,4L + +#define SN_id_smime_alg_ESDH "id-smime-alg-ESDH" +#define NID_id_smime_alg_ESDH 245 +#define OBJ_id_smime_alg_ESDH OBJ_id_smime_alg,5L + +#define SN_id_smime_alg_CMS3DESwrap "id-smime-alg-CMS3DESwrap" +#define NID_id_smime_alg_CMS3DESwrap 246 +#define OBJ_id_smime_alg_CMS3DESwrap OBJ_id_smime_alg,6L + +#define SN_id_smime_alg_CMSRC2wrap "id-smime-alg-CMSRC2wrap" +#define NID_id_smime_alg_CMSRC2wrap 247 +#define OBJ_id_smime_alg_CMSRC2wrap OBJ_id_smime_alg,7L + +#define SN_id_alg_PWRI_KEK "id-alg-PWRI-KEK" +#define NID_id_alg_PWRI_KEK 893 +#define OBJ_id_alg_PWRI_KEK OBJ_id_smime_alg,9L + +#define SN_id_smime_cd_ldap "id-smime-cd-ldap" +#define NID_id_smime_cd_ldap 248 +#define OBJ_id_smime_cd_ldap OBJ_id_smime_cd,1L + +#define SN_id_smime_spq_ets_sqt_uri "id-smime-spq-ets-sqt-uri" +#define NID_id_smime_spq_ets_sqt_uri 249 +#define OBJ_id_smime_spq_ets_sqt_uri OBJ_id_smime_spq,1L + +#define SN_id_smime_spq_ets_sqt_unotice "id-smime-spq-ets-sqt-unotice" +#define NID_id_smime_spq_ets_sqt_unotice 250 +#define OBJ_id_smime_spq_ets_sqt_unotice OBJ_id_smime_spq,2L + +#define SN_id_smime_cti_ets_proofOfOrigin "id-smime-cti-ets-proofOfOrigin" +#define NID_id_smime_cti_ets_proofOfOrigin 251 +#define OBJ_id_smime_cti_ets_proofOfOrigin OBJ_id_smime_cti,1L + +#define SN_id_smime_cti_ets_proofOfReceipt "id-smime-cti-ets-proofOfReceipt" +#define NID_id_smime_cti_ets_proofOfReceipt 252 +#define OBJ_id_smime_cti_ets_proofOfReceipt OBJ_id_smime_cti,2L + +#define SN_id_smime_cti_ets_proofOfDelivery "id-smime-cti-ets-proofOfDelivery" +#define NID_id_smime_cti_ets_proofOfDelivery 253 +#define OBJ_id_smime_cti_ets_proofOfDelivery OBJ_id_smime_cti,3L + +#define SN_id_smime_cti_ets_proofOfSender "id-smime-cti-ets-proofOfSender" +#define NID_id_smime_cti_ets_proofOfSender 254 +#define OBJ_id_smime_cti_ets_proofOfSender OBJ_id_smime_cti,4L + +#define SN_id_smime_cti_ets_proofOfApproval "id-smime-cti-ets-proofOfApproval" +#define NID_id_smime_cti_ets_proofOfApproval 255 +#define OBJ_id_smime_cti_ets_proofOfApproval OBJ_id_smime_cti,5L + +#define SN_id_smime_cti_ets_proofOfCreation "id-smime-cti-ets-proofOfCreation" +#define NID_id_smime_cti_ets_proofOfCreation 256 +#define OBJ_id_smime_cti_ets_proofOfCreation OBJ_id_smime_cti,6L + +#define LN_friendlyName "friendlyName" +#define NID_friendlyName 156 +#define OBJ_friendlyName OBJ_pkcs9,20L + +#define LN_localKeyID "localKeyID" +#define NID_localKeyID 157 +#define OBJ_localKeyID OBJ_pkcs9,21L + +#define SN_ms_csp_name "CSPName" +#define LN_ms_csp_name "Microsoft CSP Name" +#define NID_ms_csp_name 417 +#define OBJ_ms_csp_name 1L,3L,6L,1L,4L,1L,311L,17L,1L + +#define SN_LocalKeySet "LocalKeySet" +#define LN_LocalKeySet "Microsoft Local Key set" +#define NID_LocalKeySet 856 +#define OBJ_LocalKeySet 1L,3L,6L,1L,4L,1L,311L,17L,2L + +#define OBJ_certTypes OBJ_pkcs9,22L + +#define LN_x509Certificate "x509Certificate" +#define NID_x509Certificate 158 +#define OBJ_x509Certificate OBJ_certTypes,1L + +#define LN_sdsiCertificate "sdsiCertificate" +#define NID_sdsiCertificate 159 +#define OBJ_sdsiCertificate OBJ_certTypes,2L + +#define OBJ_crlTypes OBJ_pkcs9,23L + +#define LN_x509Crl "x509Crl" +#define NID_x509Crl 160 +#define OBJ_x509Crl OBJ_crlTypes,1L + +#define OBJ_pkcs12 OBJ_pkcs,12L + +#define OBJ_pkcs12_pbeids OBJ_pkcs12,1L + +#define SN_pbe_WithSHA1And128BitRC4 "PBE-SHA1-RC4-128" +#define LN_pbe_WithSHA1And128BitRC4 "pbeWithSHA1And128BitRC4" +#define NID_pbe_WithSHA1And128BitRC4 144 +#define OBJ_pbe_WithSHA1And128BitRC4 OBJ_pkcs12_pbeids,1L + +#define SN_pbe_WithSHA1And40BitRC4 "PBE-SHA1-RC4-40" +#define LN_pbe_WithSHA1And40BitRC4 "pbeWithSHA1And40BitRC4" +#define NID_pbe_WithSHA1And40BitRC4 145 +#define OBJ_pbe_WithSHA1And40BitRC4 OBJ_pkcs12_pbeids,2L + +#define SN_pbe_WithSHA1And3_Key_TripleDES_CBC "PBE-SHA1-3DES" +#define LN_pbe_WithSHA1And3_Key_TripleDES_CBC "pbeWithSHA1And3-KeyTripleDES-CBC" +#define NID_pbe_WithSHA1And3_Key_TripleDES_CBC 146 +#define OBJ_pbe_WithSHA1And3_Key_TripleDES_CBC OBJ_pkcs12_pbeids,3L + +#define SN_pbe_WithSHA1And2_Key_TripleDES_CBC "PBE-SHA1-2DES" +#define LN_pbe_WithSHA1And2_Key_TripleDES_CBC "pbeWithSHA1And2-KeyTripleDES-CBC" +#define NID_pbe_WithSHA1And2_Key_TripleDES_CBC 147 +#define OBJ_pbe_WithSHA1And2_Key_TripleDES_CBC OBJ_pkcs12_pbeids,4L + +#define SN_pbe_WithSHA1And128BitRC2_CBC "PBE-SHA1-RC2-128" +#define LN_pbe_WithSHA1And128BitRC2_CBC "pbeWithSHA1And128BitRC2-CBC" +#define NID_pbe_WithSHA1And128BitRC2_CBC 148 +#define OBJ_pbe_WithSHA1And128BitRC2_CBC OBJ_pkcs12_pbeids,5L + +#define SN_pbe_WithSHA1And40BitRC2_CBC "PBE-SHA1-RC2-40" +#define LN_pbe_WithSHA1And40BitRC2_CBC "pbeWithSHA1And40BitRC2-CBC" +#define NID_pbe_WithSHA1And40BitRC2_CBC 149 +#define OBJ_pbe_WithSHA1And40BitRC2_CBC OBJ_pkcs12_pbeids,6L + +#define OBJ_pkcs12_Version1 OBJ_pkcs12,10L + +#define OBJ_pkcs12_BagIds OBJ_pkcs12_Version1,1L + +#define LN_keyBag "keyBag" +#define NID_keyBag 150 +#define OBJ_keyBag OBJ_pkcs12_BagIds,1L + +#define LN_pkcs8ShroudedKeyBag "pkcs8ShroudedKeyBag" +#define NID_pkcs8ShroudedKeyBag 151 +#define OBJ_pkcs8ShroudedKeyBag OBJ_pkcs12_BagIds,2L + +#define LN_certBag "certBag" +#define NID_certBag 152 +#define OBJ_certBag OBJ_pkcs12_BagIds,3L + +#define LN_crlBag "crlBag" +#define NID_crlBag 153 +#define OBJ_crlBag OBJ_pkcs12_BagIds,4L + +#define LN_secretBag "secretBag" +#define NID_secretBag 154 +#define OBJ_secretBag OBJ_pkcs12_BagIds,5L + +#define LN_safeContentsBag "safeContentsBag" +#define NID_safeContentsBag 155 +#define OBJ_safeContentsBag OBJ_pkcs12_BagIds,6L + +#define SN_md2 "MD2" +#define LN_md2 "md2" +#define NID_md2 3 +#define OBJ_md2 OBJ_rsadsi,2L,2L + +#define SN_md4 "MD4" +#define LN_md4 "md4" +#define NID_md4 257 +#define OBJ_md4 OBJ_rsadsi,2L,4L + +#define SN_md5 "MD5" +#define LN_md5 "md5" +#define NID_md5 4 +#define OBJ_md5 OBJ_rsadsi,2L,5L + +#define SN_md5_sha1 "MD5-SHA1" +#define LN_md5_sha1 "md5-sha1" +#define NID_md5_sha1 114 + +#define LN_hmacWithMD5 "hmacWithMD5" +#define NID_hmacWithMD5 797 +#define OBJ_hmacWithMD5 OBJ_rsadsi,2L,6L + +#define LN_hmacWithSHA1 "hmacWithSHA1" +#define NID_hmacWithSHA1 163 +#define OBJ_hmacWithSHA1 OBJ_rsadsi,2L,7L + +#define LN_hmacWithSHA224 "hmacWithSHA224" +#define NID_hmacWithSHA224 798 +#define OBJ_hmacWithSHA224 OBJ_rsadsi,2L,8L + +#define LN_hmacWithSHA256 "hmacWithSHA256" +#define NID_hmacWithSHA256 799 +#define OBJ_hmacWithSHA256 OBJ_rsadsi,2L,9L + +#define LN_hmacWithSHA384 "hmacWithSHA384" +#define NID_hmacWithSHA384 800 +#define OBJ_hmacWithSHA384 OBJ_rsadsi,2L,10L + +#define LN_hmacWithSHA512 "hmacWithSHA512" +#define NID_hmacWithSHA512 801 +#define OBJ_hmacWithSHA512 OBJ_rsadsi,2L,11L + +#define SN_rc2_cbc "RC2-CBC" +#define LN_rc2_cbc "rc2-cbc" +#define NID_rc2_cbc 37 +#define OBJ_rc2_cbc OBJ_rsadsi,3L,2L + +#define SN_rc2_ecb "RC2-ECB" +#define LN_rc2_ecb "rc2-ecb" +#define NID_rc2_ecb 38 + +#define SN_rc2_cfb64 "RC2-CFB" +#define LN_rc2_cfb64 "rc2-cfb" +#define NID_rc2_cfb64 39 + +#define SN_rc2_ofb64 "RC2-OFB" +#define LN_rc2_ofb64 "rc2-ofb" +#define NID_rc2_ofb64 40 + +#define SN_rc2_40_cbc "RC2-40-CBC" +#define LN_rc2_40_cbc "rc2-40-cbc" +#define NID_rc2_40_cbc 98 + +#define SN_rc2_64_cbc "RC2-64-CBC" +#define LN_rc2_64_cbc "rc2-64-cbc" +#define NID_rc2_64_cbc 166 + +#define SN_rc4 "RC4" +#define LN_rc4 "rc4" +#define NID_rc4 5 +#define OBJ_rc4 OBJ_rsadsi,3L,4L + +#define SN_rc4_40 "RC4-40" +#define LN_rc4_40 "rc4-40" +#define NID_rc4_40 97 + +#define SN_des_ede3_cbc "DES-EDE3-CBC" +#define LN_des_ede3_cbc "des-ede3-cbc" +#define NID_des_ede3_cbc 44 +#define OBJ_des_ede3_cbc OBJ_rsadsi,3L,7L + +#define SN_rc5_cbc "RC5-CBC" +#define LN_rc5_cbc "rc5-cbc" +#define NID_rc5_cbc 120 +#define OBJ_rc5_cbc OBJ_rsadsi,3L,8L + +#define SN_rc5_ecb "RC5-ECB" +#define LN_rc5_ecb "rc5-ecb" +#define NID_rc5_ecb 121 + +#define SN_rc5_cfb64 "RC5-CFB" +#define LN_rc5_cfb64 "rc5-cfb" +#define NID_rc5_cfb64 122 + +#define SN_rc5_ofb64 "RC5-OFB" +#define LN_rc5_ofb64 "rc5-ofb" +#define NID_rc5_ofb64 123 + +#define SN_ms_ext_req "msExtReq" +#define LN_ms_ext_req "Microsoft Extension Request" +#define NID_ms_ext_req 171 +#define OBJ_ms_ext_req 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L + +#define SN_ms_code_ind "msCodeInd" +#define LN_ms_code_ind "Microsoft Individual Code Signing" +#define NID_ms_code_ind 134 +#define OBJ_ms_code_ind 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L + +#define SN_ms_code_com "msCodeCom" +#define LN_ms_code_com "Microsoft Commercial Code Signing" +#define NID_ms_code_com 135 +#define OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L + +#define SN_ms_ctl_sign "msCTLSign" +#define LN_ms_ctl_sign "Microsoft Trust List Signing" +#define NID_ms_ctl_sign 136 +#define OBJ_ms_ctl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L + +#define SN_ms_sgc "msSGC" +#define LN_ms_sgc "Microsoft Server Gated Crypto" +#define NID_ms_sgc 137 +#define OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L + +#define SN_ms_efs "msEFS" +#define LN_ms_efs "Microsoft Encrypted File System" +#define NID_ms_efs 138 +#define OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L + +#define SN_ms_smartcard_login "msSmartcardLogin" +#define LN_ms_smartcard_login "Microsoft Smartcardlogin" +#define NID_ms_smartcard_login 648 +#define OBJ_ms_smartcard_login 1L,3L,6L,1L,4L,1L,311L,20L,2L,2L + +#define SN_ms_upn "msUPN" +#define LN_ms_upn "Microsoft Universal Principal Name" +#define NID_ms_upn 649 +#define OBJ_ms_upn 1L,3L,6L,1L,4L,1L,311L,20L,2L,3L + +#define SN_idea_cbc "IDEA-CBC" +#define LN_idea_cbc "idea-cbc" +#define NID_idea_cbc 34 +#define OBJ_idea_cbc 1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L + +#define SN_idea_ecb "IDEA-ECB" +#define LN_idea_ecb "idea-ecb" +#define NID_idea_ecb 36 + +#define SN_idea_cfb64 "IDEA-CFB" +#define LN_idea_cfb64 "idea-cfb" +#define NID_idea_cfb64 35 + +#define SN_idea_ofb64 "IDEA-OFB" +#define LN_idea_ofb64 "idea-ofb" +#define NID_idea_ofb64 46 + +#define SN_bf_cbc "BF-CBC" +#define LN_bf_cbc "bf-cbc" +#define NID_bf_cbc 91 +#define OBJ_bf_cbc 1L,3L,6L,1L,4L,1L,3029L,1L,2L + +#define SN_bf_ecb "BF-ECB" +#define LN_bf_ecb "bf-ecb" +#define NID_bf_ecb 92 + +#define SN_bf_cfb64 "BF-CFB" +#define LN_bf_cfb64 "bf-cfb" +#define NID_bf_cfb64 93 + +#define SN_bf_ofb64 "BF-OFB" +#define LN_bf_ofb64 "bf-ofb" +#define NID_bf_ofb64 94 + +#define SN_id_pkix "PKIX" +#define NID_id_pkix 127 +#define OBJ_id_pkix 1L,3L,6L,1L,5L,5L,7L + +#define SN_id_pkix_mod "id-pkix-mod" +#define NID_id_pkix_mod 258 +#define OBJ_id_pkix_mod OBJ_id_pkix,0L + +#define SN_id_pe "id-pe" +#define NID_id_pe 175 +#define OBJ_id_pe OBJ_id_pkix,1L + +#define SN_id_qt "id-qt" +#define NID_id_qt 259 +#define OBJ_id_qt OBJ_id_pkix,2L + +#define SN_id_kp "id-kp" +#define NID_id_kp 128 +#define OBJ_id_kp OBJ_id_pkix,3L + +#define SN_id_it "id-it" +#define NID_id_it 260 +#define OBJ_id_it OBJ_id_pkix,4L + +#define SN_id_pkip "id-pkip" +#define NID_id_pkip 261 +#define OBJ_id_pkip OBJ_id_pkix,5L + +#define SN_id_alg "id-alg" +#define NID_id_alg 262 +#define OBJ_id_alg OBJ_id_pkix,6L + +#define SN_id_cmc "id-cmc" +#define NID_id_cmc 263 +#define OBJ_id_cmc OBJ_id_pkix,7L + +#define SN_id_on "id-on" +#define NID_id_on 264 +#define OBJ_id_on OBJ_id_pkix,8L + +#define SN_id_pda "id-pda" +#define NID_id_pda 265 +#define OBJ_id_pda OBJ_id_pkix,9L + +#define SN_id_aca "id-aca" +#define NID_id_aca 266 +#define OBJ_id_aca OBJ_id_pkix,10L + +#define SN_id_qcs "id-qcs" +#define NID_id_qcs 267 +#define OBJ_id_qcs OBJ_id_pkix,11L + +#define SN_id_cct "id-cct" +#define NID_id_cct 268 +#define OBJ_id_cct OBJ_id_pkix,12L + +#define SN_id_ppl "id-ppl" +#define NID_id_ppl 662 +#define OBJ_id_ppl OBJ_id_pkix,21L + +#define SN_id_ad "id-ad" +#define NID_id_ad 176 +#define OBJ_id_ad OBJ_id_pkix,48L + +#define SN_id_pkix1_explicit_88 "id-pkix1-explicit-88" +#define NID_id_pkix1_explicit_88 269 +#define OBJ_id_pkix1_explicit_88 OBJ_id_pkix_mod,1L + +#define SN_id_pkix1_implicit_88 "id-pkix1-implicit-88" +#define NID_id_pkix1_implicit_88 270 +#define OBJ_id_pkix1_implicit_88 OBJ_id_pkix_mod,2L + +#define SN_id_pkix1_explicit_93 "id-pkix1-explicit-93" +#define NID_id_pkix1_explicit_93 271 +#define OBJ_id_pkix1_explicit_93 OBJ_id_pkix_mod,3L + +#define SN_id_pkix1_implicit_93 "id-pkix1-implicit-93" +#define NID_id_pkix1_implicit_93 272 +#define OBJ_id_pkix1_implicit_93 OBJ_id_pkix_mod,4L + +#define SN_id_mod_crmf "id-mod-crmf" +#define NID_id_mod_crmf 273 +#define OBJ_id_mod_crmf OBJ_id_pkix_mod,5L + +#define SN_id_mod_cmc "id-mod-cmc" +#define NID_id_mod_cmc 274 +#define OBJ_id_mod_cmc OBJ_id_pkix_mod,6L + +#define SN_id_mod_kea_profile_88 "id-mod-kea-profile-88" +#define NID_id_mod_kea_profile_88 275 +#define OBJ_id_mod_kea_profile_88 OBJ_id_pkix_mod,7L + +#define SN_id_mod_kea_profile_93 "id-mod-kea-profile-93" +#define NID_id_mod_kea_profile_93 276 +#define OBJ_id_mod_kea_profile_93 OBJ_id_pkix_mod,8L + +#define SN_id_mod_cmp "id-mod-cmp" +#define NID_id_mod_cmp 277 +#define OBJ_id_mod_cmp OBJ_id_pkix_mod,9L + +#define SN_id_mod_qualified_cert_88 "id-mod-qualified-cert-88" +#define NID_id_mod_qualified_cert_88 278 +#define OBJ_id_mod_qualified_cert_88 OBJ_id_pkix_mod,10L + +#define SN_id_mod_qualified_cert_93 "id-mod-qualified-cert-93" +#define NID_id_mod_qualified_cert_93 279 +#define OBJ_id_mod_qualified_cert_93 OBJ_id_pkix_mod,11L + +#define SN_id_mod_attribute_cert "id-mod-attribute-cert" +#define NID_id_mod_attribute_cert 280 +#define OBJ_id_mod_attribute_cert OBJ_id_pkix_mod,12L + +#define SN_id_mod_timestamp_protocol "id-mod-timestamp-protocol" +#define NID_id_mod_timestamp_protocol 281 +#define OBJ_id_mod_timestamp_protocol OBJ_id_pkix_mod,13L + +#define SN_id_mod_ocsp "id-mod-ocsp" +#define NID_id_mod_ocsp 282 +#define OBJ_id_mod_ocsp OBJ_id_pkix_mod,14L + +#define SN_id_mod_dvcs "id-mod-dvcs" +#define NID_id_mod_dvcs 283 +#define OBJ_id_mod_dvcs OBJ_id_pkix_mod,15L + +#define SN_id_mod_cmp2000 "id-mod-cmp2000" +#define NID_id_mod_cmp2000 284 +#define OBJ_id_mod_cmp2000 OBJ_id_pkix_mod,16L + +#define SN_info_access "authorityInfoAccess" +#define LN_info_access "Authority Information Access" +#define NID_info_access 177 +#define OBJ_info_access OBJ_id_pe,1L + +#define SN_biometricInfo "biometricInfo" +#define LN_biometricInfo "Biometric Info" +#define NID_biometricInfo 285 +#define OBJ_biometricInfo OBJ_id_pe,2L + +#define SN_qcStatements "qcStatements" +#define NID_qcStatements 286 +#define OBJ_qcStatements OBJ_id_pe,3L + +#define SN_ac_auditEntity "ac-auditEntity" +#define NID_ac_auditEntity 287 +#define OBJ_ac_auditEntity OBJ_id_pe,4L + +#define SN_ac_targeting "ac-targeting" +#define NID_ac_targeting 288 +#define OBJ_ac_targeting OBJ_id_pe,5L + +#define SN_aaControls "aaControls" +#define NID_aaControls 289 +#define OBJ_aaControls OBJ_id_pe,6L + +#define SN_sbgp_ipAddrBlock "sbgp-ipAddrBlock" +#define NID_sbgp_ipAddrBlock 290 +#define OBJ_sbgp_ipAddrBlock OBJ_id_pe,7L + +#define SN_sbgp_autonomousSysNum "sbgp-autonomousSysNum" +#define NID_sbgp_autonomousSysNum 291 +#define OBJ_sbgp_autonomousSysNum OBJ_id_pe,8L + +#define SN_sbgp_routerIdentifier "sbgp-routerIdentifier" +#define NID_sbgp_routerIdentifier 292 +#define OBJ_sbgp_routerIdentifier OBJ_id_pe,9L + +#define SN_ac_proxying "ac-proxying" +#define NID_ac_proxying 397 +#define OBJ_ac_proxying OBJ_id_pe,10L + +#define SN_sinfo_access "subjectInfoAccess" +#define LN_sinfo_access "Subject Information Access" +#define NID_sinfo_access 398 +#define OBJ_sinfo_access OBJ_id_pe,11L + +#define SN_proxyCertInfo "proxyCertInfo" +#define LN_proxyCertInfo "Proxy Certificate Information" +#define NID_proxyCertInfo 663 +#define OBJ_proxyCertInfo OBJ_id_pe,14L + +#define SN_id_qt_cps "id-qt-cps" +#define LN_id_qt_cps "Policy Qualifier CPS" +#define NID_id_qt_cps 164 +#define OBJ_id_qt_cps OBJ_id_qt,1L + +#define SN_id_qt_unotice "id-qt-unotice" +#define LN_id_qt_unotice "Policy Qualifier User Notice" +#define NID_id_qt_unotice 165 +#define OBJ_id_qt_unotice OBJ_id_qt,2L + +#define SN_textNotice "textNotice" +#define NID_textNotice 293 +#define OBJ_textNotice OBJ_id_qt,3L + +#define SN_server_auth "serverAuth" +#define LN_server_auth "TLS Web Server Authentication" +#define NID_server_auth 129 +#define OBJ_server_auth OBJ_id_kp,1L + +#define SN_client_auth "clientAuth" +#define LN_client_auth "TLS Web Client Authentication" +#define NID_client_auth 130 +#define OBJ_client_auth OBJ_id_kp,2L + +#define SN_code_sign "codeSigning" +#define LN_code_sign "Code Signing" +#define NID_code_sign 131 +#define OBJ_code_sign OBJ_id_kp,3L + +#define SN_email_protect "emailProtection" +#define LN_email_protect "E-mail Protection" +#define NID_email_protect 132 +#define OBJ_email_protect OBJ_id_kp,4L + +#define SN_ipsecEndSystem "ipsecEndSystem" +#define LN_ipsecEndSystem "IPSec End System" +#define NID_ipsecEndSystem 294 +#define OBJ_ipsecEndSystem OBJ_id_kp,5L + +#define SN_ipsecTunnel "ipsecTunnel" +#define LN_ipsecTunnel "IPSec Tunnel" +#define NID_ipsecTunnel 295 +#define OBJ_ipsecTunnel OBJ_id_kp,6L + +#define SN_ipsecUser "ipsecUser" +#define LN_ipsecUser "IPSec User" +#define NID_ipsecUser 296 +#define OBJ_ipsecUser OBJ_id_kp,7L + +#define SN_time_stamp "timeStamping" +#define LN_time_stamp "Time Stamping" +#define NID_time_stamp 133 +#define OBJ_time_stamp OBJ_id_kp,8L + +#define SN_OCSP_sign "OCSPSigning" +#define LN_OCSP_sign "OCSP Signing" +#define NID_OCSP_sign 180 +#define OBJ_OCSP_sign OBJ_id_kp,9L + +#define SN_dvcs "DVCS" +#define LN_dvcs "dvcs" +#define NID_dvcs 297 +#define OBJ_dvcs OBJ_id_kp,10L + +#define SN_id_it_caProtEncCert "id-it-caProtEncCert" +#define NID_id_it_caProtEncCert 298 +#define OBJ_id_it_caProtEncCert OBJ_id_it,1L + +#define SN_id_it_signKeyPairTypes "id-it-signKeyPairTypes" +#define NID_id_it_signKeyPairTypes 299 +#define OBJ_id_it_signKeyPairTypes OBJ_id_it,2L + +#define SN_id_it_encKeyPairTypes "id-it-encKeyPairTypes" +#define NID_id_it_encKeyPairTypes 300 +#define OBJ_id_it_encKeyPairTypes OBJ_id_it,3L + +#define SN_id_it_preferredSymmAlg "id-it-preferredSymmAlg" +#define NID_id_it_preferredSymmAlg 301 +#define OBJ_id_it_preferredSymmAlg OBJ_id_it,4L + +#define SN_id_it_caKeyUpdateInfo "id-it-caKeyUpdateInfo" +#define NID_id_it_caKeyUpdateInfo 302 +#define OBJ_id_it_caKeyUpdateInfo OBJ_id_it,5L + +#define SN_id_it_currentCRL "id-it-currentCRL" +#define NID_id_it_currentCRL 303 +#define OBJ_id_it_currentCRL OBJ_id_it,6L + +#define SN_id_it_unsupportedOIDs "id-it-unsupportedOIDs" +#define NID_id_it_unsupportedOIDs 304 +#define OBJ_id_it_unsupportedOIDs OBJ_id_it,7L + +#define SN_id_it_subscriptionRequest "id-it-subscriptionRequest" +#define NID_id_it_subscriptionRequest 305 +#define OBJ_id_it_subscriptionRequest OBJ_id_it,8L + +#define SN_id_it_subscriptionResponse "id-it-subscriptionResponse" +#define NID_id_it_subscriptionResponse 306 +#define OBJ_id_it_subscriptionResponse OBJ_id_it,9L + +#define SN_id_it_keyPairParamReq "id-it-keyPairParamReq" +#define NID_id_it_keyPairParamReq 307 +#define OBJ_id_it_keyPairParamReq OBJ_id_it,10L + +#define SN_id_it_keyPairParamRep "id-it-keyPairParamRep" +#define NID_id_it_keyPairParamRep 308 +#define OBJ_id_it_keyPairParamRep OBJ_id_it,11L + +#define SN_id_it_revPassphrase "id-it-revPassphrase" +#define NID_id_it_revPassphrase 309 +#define OBJ_id_it_revPassphrase OBJ_id_it,12L + +#define SN_id_it_implicitConfirm "id-it-implicitConfirm" +#define NID_id_it_implicitConfirm 310 +#define OBJ_id_it_implicitConfirm OBJ_id_it,13L + +#define SN_id_it_confirmWaitTime "id-it-confirmWaitTime" +#define NID_id_it_confirmWaitTime 311 +#define OBJ_id_it_confirmWaitTime OBJ_id_it,14L + +#define SN_id_it_origPKIMessage "id-it-origPKIMessage" +#define NID_id_it_origPKIMessage 312 +#define OBJ_id_it_origPKIMessage OBJ_id_it,15L + +#define SN_id_it_suppLangTags "id-it-suppLangTags" +#define NID_id_it_suppLangTags 784 +#define OBJ_id_it_suppLangTags OBJ_id_it,16L + +#define SN_id_regCtrl "id-regCtrl" +#define NID_id_regCtrl 313 +#define OBJ_id_regCtrl OBJ_id_pkip,1L + +#define SN_id_regInfo "id-regInfo" +#define NID_id_regInfo 314 +#define OBJ_id_regInfo OBJ_id_pkip,2L + +#define SN_id_regCtrl_regToken "id-regCtrl-regToken" +#define NID_id_regCtrl_regToken 315 +#define OBJ_id_regCtrl_regToken OBJ_id_regCtrl,1L + +#define SN_id_regCtrl_authenticator "id-regCtrl-authenticator" +#define NID_id_regCtrl_authenticator 316 +#define OBJ_id_regCtrl_authenticator OBJ_id_regCtrl,2L + +#define SN_id_regCtrl_pkiPublicationInfo "id-regCtrl-pkiPublicationInfo" +#define NID_id_regCtrl_pkiPublicationInfo 317 +#define OBJ_id_regCtrl_pkiPublicationInfo OBJ_id_regCtrl,3L + +#define SN_id_regCtrl_pkiArchiveOptions "id-regCtrl-pkiArchiveOptions" +#define NID_id_regCtrl_pkiArchiveOptions 318 +#define OBJ_id_regCtrl_pkiArchiveOptions OBJ_id_regCtrl,4L + +#define SN_id_regCtrl_oldCertID "id-regCtrl-oldCertID" +#define NID_id_regCtrl_oldCertID 319 +#define OBJ_id_regCtrl_oldCertID OBJ_id_regCtrl,5L + +#define SN_id_regCtrl_protocolEncrKey "id-regCtrl-protocolEncrKey" +#define NID_id_regCtrl_protocolEncrKey 320 +#define OBJ_id_regCtrl_protocolEncrKey OBJ_id_regCtrl,6L + +#define SN_id_regInfo_utf8Pairs "id-regInfo-utf8Pairs" +#define NID_id_regInfo_utf8Pairs 321 +#define OBJ_id_regInfo_utf8Pairs OBJ_id_regInfo,1L + +#define SN_id_regInfo_certReq "id-regInfo-certReq" +#define NID_id_regInfo_certReq 322 +#define OBJ_id_regInfo_certReq OBJ_id_regInfo,2L + +#define SN_id_alg_des40 "id-alg-des40" +#define NID_id_alg_des40 323 +#define OBJ_id_alg_des40 OBJ_id_alg,1L + +#define SN_id_alg_noSignature "id-alg-noSignature" +#define NID_id_alg_noSignature 324 +#define OBJ_id_alg_noSignature OBJ_id_alg,2L + +#define SN_id_alg_dh_sig_hmac_sha1 "id-alg-dh-sig-hmac-sha1" +#define NID_id_alg_dh_sig_hmac_sha1 325 +#define OBJ_id_alg_dh_sig_hmac_sha1 OBJ_id_alg,3L + +#define SN_id_alg_dh_pop "id-alg-dh-pop" +#define NID_id_alg_dh_pop 326 +#define OBJ_id_alg_dh_pop OBJ_id_alg,4L + +#define SN_id_cmc_statusInfo "id-cmc-statusInfo" +#define NID_id_cmc_statusInfo 327 +#define OBJ_id_cmc_statusInfo OBJ_id_cmc,1L + +#define SN_id_cmc_identification "id-cmc-identification" +#define NID_id_cmc_identification 328 +#define OBJ_id_cmc_identification OBJ_id_cmc,2L + +#define SN_id_cmc_identityProof "id-cmc-identityProof" +#define NID_id_cmc_identityProof 329 +#define OBJ_id_cmc_identityProof OBJ_id_cmc,3L + +#define SN_id_cmc_dataReturn "id-cmc-dataReturn" +#define NID_id_cmc_dataReturn 330 +#define OBJ_id_cmc_dataReturn OBJ_id_cmc,4L + +#define SN_id_cmc_transactionId "id-cmc-transactionId" +#define NID_id_cmc_transactionId 331 +#define OBJ_id_cmc_transactionId OBJ_id_cmc,5L + +#define SN_id_cmc_senderNonce "id-cmc-senderNonce" +#define NID_id_cmc_senderNonce 332 +#define OBJ_id_cmc_senderNonce OBJ_id_cmc,6L + +#define SN_id_cmc_recipientNonce "id-cmc-recipientNonce" +#define NID_id_cmc_recipientNonce 333 +#define OBJ_id_cmc_recipientNonce OBJ_id_cmc,7L + +#define SN_id_cmc_addExtensions "id-cmc-addExtensions" +#define NID_id_cmc_addExtensions 334 +#define OBJ_id_cmc_addExtensions OBJ_id_cmc,8L + +#define SN_id_cmc_encryptedPOP "id-cmc-encryptedPOP" +#define NID_id_cmc_encryptedPOP 335 +#define OBJ_id_cmc_encryptedPOP OBJ_id_cmc,9L + +#define SN_id_cmc_decryptedPOP "id-cmc-decryptedPOP" +#define NID_id_cmc_decryptedPOP 336 +#define OBJ_id_cmc_decryptedPOP OBJ_id_cmc,10L + +#define SN_id_cmc_lraPOPWitness "id-cmc-lraPOPWitness" +#define NID_id_cmc_lraPOPWitness 337 +#define OBJ_id_cmc_lraPOPWitness OBJ_id_cmc,11L + +#define SN_id_cmc_getCert "id-cmc-getCert" +#define NID_id_cmc_getCert 338 +#define OBJ_id_cmc_getCert OBJ_id_cmc,15L + +#define SN_id_cmc_getCRL "id-cmc-getCRL" +#define NID_id_cmc_getCRL 339 +#define OBJ_id_cmc_getCRL OBJ_id_cmc,16L + +#define SN_id_cmc_revokeRequest "id-cmc-revokeRequest" +#define NID_id_cmc_revokeRequest 340 +#define OBJ_id_cmc_revokeRequest OBJ_id_cmc,17L + +#define SN_id_cmc_regInfo "id-cmc-regInfo" +#define NID_id_cmc_regInfo 341 +#define OBJ_id_cmc_regInfo OBJ_id_cmc,18L + +#define SN_id_cmc_responseInfo "id-cmc-responseInfo" +#define NID_id_cmc_responseInfo 342 +#define OBJ_id_cmc_responseInfo OBJ_id_cmc,19L + +#define SN_id_cmc_queryPending "id-cmc-queryPending" +#define NID_id_cmc_queryPending 343 +#define OBJ_id_cmc_queryPending OBJ_id_cmc,21L + +#define SN_id_cmc_popLinkRandom "id-cmc-popLinkRandom" +#define NID_id_cmc_popLinkRandom 344 +#define OBJ_id_cmc_popLinkRandom OBJ_id_cmc,22L + +#define SN_id_cmc_popLinkWitness "id-cmc-popLinkWitness" +#define NID_id_cmc_popLinkWitness 345 +#define OBJ_id_cmc_popLinkWitness OBJ_id_cmc,23L + +#define SN_id_cmc_confirmCertAcceptance "id-cmc-confirmCertAcceptance" +#define NID_id_cmc_confirmCertAcceptance 346 +#define OBJ_id_cmc_confirmCertAcceptance OBJ_id_cmc,24L + +#define SN_id_on_personalData "id-on-personalData" +#define NID_id_on_personalData 347 +#define OBJ_id_on_personalData OBJ_id_on,1L + +#define SN_id_on_permanentIdentifier "id-on-permanentIdentifier" +#define LN_id_on_permanentIdentifier "Permanent Identifier" +#define NID_id_on_permanentIdentifier 858 +#define OBJ_id_on_permanentIdentifier OBJ_id_on,3L + +#define SN_id_pda_dateOfBirth "id-pda-dateOfBirth" +#define NID_id_pda_dateOfBirth 348 +#define OBJ_id_pda_dateOfBirth OBJ_id_pda,1L + +#define SN_id_pda_placeOfBirth "id-pda-placeOfBirth" +#define NID_id_pda_placeOfBirth 349 +#define OBJ_id_pda_placeOfBirth OBJ_id_pda,2L + +#define SN_id_pda_gender "id-pda-gender" +#define NID_id_pda_gender 351 +#define OBJ_id_pda_gender OBJ_id_pda,3L + +#define SN_id_pda_countryOfCitizenship "id-pda-countryOfCitizenship" +#define NID_id_pda_countryOfCitizenship 352 +#define OBJ_id_pda_countryOfCitizenship OBJ_id_pda,4L + +#define SN_id_pda_countryOfResidence "id-pda-countryOfResidence" +#define NID_id_pda_countryOfResidence 353 +#define OBJ_id_pda_countryOfResidence OBJ_id_pda,5L + +#define SN_id_aca_authenticationInfo "id-aca-authenticationInfo" +#define NID_id_aca_authenticationInfo 354 +#define OBJ_id_aca_authenticationInfo OBJ_id_aca,1L + +#define SN_id_aca_accessIdentity "id-aca-accessIdentity" +#define NID_id_aca_accessIdentity 355 +#define OBJ_id_aca_accessIdentity OBJ_id_aca,2L + +#define SN_id_aca_chargingIdentity "id-aca-chargingIdentity" +#define NID_id_aca_chargingIdentity 356 +#define OBJ_id_aca_chargingIdentity OBJ_id_aca,3L + +#define SN_id_aca_group "id-aca-group" +#define NID_id_aca_group 357 +#define OBJ_id_aca_group OBJ_id_aca,4L + +#define SN_id_aca_role "id-aca-role" +#define NID_id_aca_role 358 +#define OBJ_id_aca_role OBJ_id_aca,5L + +#define SN_id_aca_encAttrs "id-aca-encAttrs" +#define NID_id_aca_encAttrs 399 +#define OBJ_id_aca_encAttrs OBJ_id_aca,6L + +#define SN_id_qcs_pkixQCSyntax_v1 "id-qcs-pkixQCSyntax-v1" +#define NID_id_qcs_pkixQCSyntax_v1 359 +#define OBJ_id_qcs_pkixQCSyntax_v1 OBJ_id_qcs,1L + +#define SN_id_cct_crs "id-cct-crs" +#define NID_id_cct_crs 360 +#define OBJ_id_cct_crs OBJ_id_cct,1L + +#define SN_id_cct_PKIData "id-cct-PKIData" +#define NID_id_cct_PKIData 361 +#define OBJ_id_cct_PKIData OBJ_id_cct,2L + +#define SN_id_cct_PKIResponse "id-cct-PKIResponse" +#define NID_id_cct_PKIResponse 362 +#define OBJ_id_cct_PKIResponse OBJ_id_cct,3L + +#define SN_id_ppl_anyLanguage "id-ppl-anyLanguage" +#define LN_id_ppl_anyLanguage "Any language" +#define NID_id_ppl_anyLanguage 664 +#define OBJ_id_ppl_anyLanguage OBJ_id_ppl,0L + +#define SN_id_ppl_inheritAll "id-ppl-inheritAll" +#define LN_id_ppl_inheritAll "Inherit all" +#define NID_id_ppl_inheritAll 665 +#define OBJ_id_ppl_inheritAll OBJ_id_ppl,1L + +#define SN_Independent "id-ppl-independent" +#define LN_Independent "Independent" +#define NID_Independent 667 +#define OBJ_Independent OBJ_id_ppl,2L + +#define SN_ad_OCSP "OCSP" +#define LN_ad_OCSP "OCSP" +#define NID_ad_OCSP 178 +#define OBJ_ad_OCSP OBJ_id_ad,1L + +#define SN_ad_ca_issuers "caIssuers" +#define LN_ad_ca_issuers "CA Issuers" +#define NID_ad_ca_issuers 179 +#define OBJ_ad_ca_issuers OBJ_id_ad,2L + +#define SN_ad_timeStamping "ad_timestamping" +#define LN_ad_timeStamping "AD Time Stamping" +#define NID_ad_timeStamping 363 +#define OBJ_ad_timeStamping OBJ_id_ad,3L + +#define SN_ad_dvcs "AD_DVCS" +#define LN_ad_dvcs "ad dvcs" +#define NID_ad_dvcs 364 +#define OBJ_ad_dvcs OBJ_id_ad,4L + +#define SN_caRepository "caRepository" +#define LN_caRepository "CA Repository" +#define NID_caRepository 785 +#define OBJ_caRepository OBJ_id_ad,5L + +#define OBJ_id_pkix_OCSP OBJ_ad_OCSP + +#define SN_id_pkix_OCSP_basic "basicOCSPResponse" +#define LN_id_pkix_OCSP_basic "Basic OCSP Response" +#define NID_id_pkix_OCSP_basic 365 +#define OBJ_id_pkix_OCSP_basic OBJ_id_pkix_OCSP,1L + +#define SN_id_pkix_OCSP_Nonce "Nonce" +#define LN_id_pkix_OCSP_Nonce "OCSP Nonce" +#define NID_id_pkix_OCSP_Nonce 366 +#define OBJ_id_pkix_OCSP_Nonce OBJ_id_pkix_OCSP,2L + +#define SN_id_pkix_OCSP_CrlID "CrlID" +#define LN_id_pkix_OCSP_CrlID "OCSP CRL ID" +#define NID_id_pkix_OCSP_CrlID 367 +#define OBJ_id_pkix_OCSP_CrlID OBJ_id_pkix_OCSP,3L + +#define SN_id_pkix_OCSP_acceptableResponses "acceptableResponses" +#define LN_id_pkix_OCSP_acceptableResponses "Acceptable OCSP Responses" +#define NID_id_pkix_OCSP_acceptableResponses 368 +#define OBJ_id_pkix_OCSP_acceptableResponses OBJ_id_pkix_OCSP,4L + +#define SN_id_pkix_OCSP_noCheck "noCheck" +#define LN_id_pkix_OCSP_noCheck "OCSP No Check" +#define NID_id_pkix_OCSP_noCheck 369 +#define OBJ_id_pkix_OCSP_noCheck OBJ_id_pkix_OCSP,5L + +#define SN_id_pkix_OCSP_archiveCutoff "archiveCutoff" +#define LN_id_pkix_OCSP_archiveCutoff "OCSP Archive Cutoff" +#define NID_id_pkix_OCSP_archiveCutoff 370 +#define OBJ_id_pkix_OCSP_archiveCutoff OBJ_id_pkix_OCSP,6L + +#define SN_id_pkix_OCSP_serviceLocator "serviceLocator" +#define LN_id_pkix_OCSP_serviceLocator "OCSP Service Locator" +#define NID_id_pkix_OCSP_serviceLocator 371 +#define OBJ_id_pkix_OCSP_serviceLocator OBJ_id_pkix_OCSP,7L + +#define SN_id_pkix_OCSP_extendedStatus "extendedStatus" +#define LN_id_pkix_OCSP_extendedStatus "Extended OCSP Status" +#define NID_id_pkix_OCSP_extendedStatus 372 +#define OBJ_id_pkix_OCSP_extendedStatus OBJ_id_pkix_OCSP,8L + +#define SN_id_pkix_OCSP_valid "valid" +#define NID_id_pkix_OCSP_valid 373 +#define OBJ_id_pkix_OCSP_valid OBJ_id_pkix_OCSP,9L + +#define SN_id_pkix_OCSP_path "path" +#define NID_id_pkix_OCSP_path 374 +#define OBJ_id_pkix_OCSP_path OBJ_id_pkix_OCSP,10L + +#define SN_id_pkix_OCSP_trustRoot "trustRoot" +#define LN_id_pkix_OCSP_trustRoot "Trust Root" +#define NID_id_pkix_OCSP_trustRoot 375 +#define OBJ_id_pkix_OCSP_trustRoot OBJ_id_pkix_OCSP,11L + +#define SN_algorithm "algorithm" +#define LN_algorithm "algorithm" +#define NID_algorithm 376 +#define OBJ_algorithm 1L,3L,14L,3L,2L + +#define SN_md5WithRSA "RSA-NP-MD5" +#define LN_md5WithRSA "md5WithRSA" +#define NID_md5WithRSA 104 +#define OBJ_md5WithRSA OBJ_algorithm,3L + +#define SN_des_ecb "DES-ECB" +#define LN_des_ecb "des-ecb" +#define NID_des_ecb 29 +#define OBJ_des_ecb OBJ_algorithm,6L + +#define SN_des_cbc "DES-CBC" +#define LN_des_cbc "des-cbc" +#define NID_des_cbc 31 +#define OBJ_des_cbc OBJ_algorithm,7L + +#define SN_des_ofb64 "DES-OFB" +#define LN_des_ofb64 "des-ofb" +#define NID_des_ofb64 45 +#define OBJ_des_ofb64 OBJ_algorithm,8L + +#define SN_des_cfb64 "DES-CFB" +#define LN_des_cfb64 "des-cfb" +#define NID_des_cfb64 30 +#define OBJ_des_cfb64 OBJ_algorithm,9L + +#define SN_rsaSignature "rsaSignature" +#define NID_rsaSignature 377 +#define OBJ_rsaSignature OBJ_algorithm,11L + +#define SN_dsa_2 "DSA-old" +#define LN_dsa_2 "dsaEncryption-old" +#define NID_dsa_2 67 +#define OBJ_dsa_2 OBJ_algorithm,12L + +#define SN_dsaWithSHA "DSA-SHA" +#define LN_dsaWithSHA "dsaWithSHA" +#define NID_dsaWithSHA 66 +#define OBJ_dsaWithSHA OBJ_algorithm,13L + +#define SN_shaWithRSAEncryption "RSA-SHA" +#define LN_shaWithRSAEncryption "shaWithRSAEncryption" +#define NID_shaWithRSAEncryption 42 +#define OBJ_shaWithRSAEncryption OBJ_algorithm,15L + +#define SN_des_ede_ecb "DES-EDE" +#define LN_des_ede_ecb "des-ede" +#define NID_des_ede_ecb 32 +#define OBJ_des_ede_ecb OBJ_algorithm,17L + +#define SN_des_ede3_ecb "DES-EDE3" +#define LN_des_ede3_ecb "des-ede3" +#define NID_des_ede3_ecb 33 + +#define SN_des_ede_cbc "DES-EDE-CBC" +#define LN_des_ede_cbc "des-ede-cbc" +#define NID_des_ede_cbc 43 + +#define SN_des_ede_cfb64 "DES-EDE-CFB" +#define LN_des_ede_cfb64 "des-ede-cfb" +#define NID_des_ede_cfb64 60 + +#define SN_des_ede3_cfb64 "DES-EDE3-CFB" +#define LN_des_ede3_cfb64 "des-ede3-cfb" +#define NID_des_ede3_cfb64 61 + +#define SN_des_ede_ofb64 "DES-EDE-OFB" +#define LN_des_ede_ofb64 "des-ede-ofb" +#define NID_des_ede_ofb64 62 + +#define SN_des_ede3_ofb64 "DES-EDE3-OFB" +#define LN_des_ede3_ofb64 "des-ede3-ofb" +#define NID_des_ede3_ofb64 63 + +#define SN_desx_cbc "DESX-CBC" +#define LN_desx_cbc "desx-cbc" +#define NID_desx_cbc 80 + +#define SN_sha "SHA" +#define LN_sha "sha" +#define NID_sha 41 +#define OBJ_sha OBJ_algorithm,18L + +#define SN_sha1 "SHA1" +#define LN_sha1 "sha1" +#define NID_sha1 64 +#define OBJ_sha1 OBJ_algorithm,26L + +#define SN_dsaWithSHA1_2 "DSA-SHA1-old" +#define LN_dsaWithSHA1_2 "dsaWithSHA1-old" +#define NID_dsaWithSHA1_2 70 +#define OBJ_dsaWithSHA1_2 OBJ_algorithm,27L + +#define SN_sha1WithRSA "RSA-SHA1-2" +#define LN_sha1WithRSA "sha1WithRSA" +#define NID_sha1WithRSA 115 +#define OBJ_sha1WithRSA OBJ_algorithm,29L + +#define SN_ripemd160 "RIPEMD160" +#define LN_ripemd160 "ripemd160" +#define NID_ripemd160 117 +#define OBJ_ripemd160 1L,3L,36L,3L,2L,1L + +#define SN_ripemd160WithRSA "RSA-RIPEMD160" +#define LN_ripemd160WithRSA "ripemd160WithRSA" +#define NID_ripemd160WithRSA 119 +#define OBJ_ripemd160WithRSA 1L,3L,36L,3L,3L,1L,2L + +#define SN_sxnet "SXNetID" +#define LN_sxnet "Strong Extranet ID" +#define NID_sxnet 143 +#define OBJ_sxnet 1L,3L,101L,1L,4L,1L + +#define SN_X500 "X500" +#define LN_X500 "directory services (X.500)" +#define NID_X500 11 +#define OBJ_X500 2L,5L + +#define SN_X509 "X509" +#define NID_X509 12 +#define OBJ_X509 OBJ_X500,4L + +#define SN_commonName "CN" +#define LN_commonName "commonName" +#define NID_commonName 13 +#define OBJ_commonName OBJ_X509,3L + +#define SN_surname "SN" +#define LN_surname "surname" +#define NID_surname 100 +#define OBJ_surname OBJ_X509,4L + +#define LN_serialNumber "serialNumber" +#define NID_serialNumber 105 +#define OBJ_serialNumber OBJ_X509,5L + +#define SN_countryName "C" +#define LN_countryName "countryName" +#define NID_countryName 14 +#define OBJ_countryName OBJ_X509,6L + +#define SN_localityName "L" +#define LN_localityName "localityName" +#define NID_localityName 15 +#define OBJ_localityName OBJ_X509,7L + +#define SN_stateOrProvinceName "ST" +#define LN_stateOrProvinceName "stateOrProvinceName" +#define NID_stateOrProvinceName 16 +#define OBJ_stateOrProvinceName OBJ_X509,8L + +#define SN_streetAddress "street" +#define LN_streetAddress "streetAddress" +#define NID_streetAddress 660 +#define OBJ_streetAddress OBJ_X509,9L + +#define SN_organizationName "O" +#define LN_organizationName "organizationName" +#define NID_organizationName 17 +#define OBJ_organizationName OBJ_X509,10L + +#define SN_organizationalUnitName "OU" +#define LN_organizationalUnitName "organizationalUnitName" +#define NID_organizationalUnitName 18 +#define OBJ_organizationalUnitName OBJ_X509,11L + +#define SN_title "title" +#define LN_title "title" +#define NID_title 106 +#define OBJ_title OBJ_X509,12L + +#define LN_description "description" +#define NID_description 107 +#define OBJ_description OBJ_X509,13L + +#define LN_searchGuide "searchGuide" +#define NID_searchGuide 859 +#define OBJ_searchGuide OBJ_X509,14L + +#define LN_businessCategory "businessCategory" +#define NID_businessCategory 860 +#define OBJ_businessCategory OBJ_X509,15L + +#define LN_postalAddress "postalAddress" +#define NID_postalAddress 861 +#define OBJ_postalAddress OBJ_X509,16L + +#define LN_postalCode "postalCode" +#define NID_postalCode 661 +#define OBJ_postalCode OBJ_X509,17L + +#define LN_postOfficeBox "postOfficeBox" +#define NID_postOfficeBox 862 +#define OBJ_postOfficeBox OBJ_X509,18L + +#define LN_physicalDeliveryOfficeName "physicalDeliveryOfficeName" +#define NID_physicalDeliveryOfficeName 863 +#define OBJ_physicalDeliveryOfficeName OBJ_X509,19L + +#define LN_telephoneNumber "telephoneNumber" +#define NID_telephoneNumber 864 +#define OBJ_telephoneNumber OBJ_X509,20L + +#define LN_telexNumber "telexNumber" +#define NID_telexNumber 865 +#define OBJ_telexNumber OBJ_X509,21L + +#define LN_teletexTerminalIdentifier "teletexTerminalIdentifier" +#define NID_teletexTerminalIdentifier 866 +#define OBJ_teletexTerminalIdentifier OBJ_X509,22L + +#define LN_facsimileTelephoneNumber "facsimileTelephoneNumber" +#define NID_facsimileTelephoneNumber 867 +#define OBJ_facsimileTelephoneNumber OBJ_X509,23L + +#define LN_x121Address "x121Address" +#define NID_x121Address 868 +#define OBJ_x121Address OBJ_X509,24L + +#define LN_internationaliSDNNumber "internationaliSDNNumber" +#define NID_internationaliSDNNumber 869 +#define OBJ_internationaliSDNNumber OBJ_X509,25L + +#define LN_registeredAddress "registeredAddress" +#define NID_registeredAddress 870 +#define OBJ_registeredAddress OBJ_X509,26L + +#define LN_destinationIndicator "destinationIndicator" +#define NID_destinationIndicator 871 +#define OBJ_destinationIndicator OBJ_X509,27L + +#define LN_preferredDeliveryMethod "preferredDeliveryMethod" +#define NID_preferredDeliveryMethod 872 +#define OBJ_preferredDeliveryMethod OBJ_X509,28L + +#define LN_presentationAddress "presentationAddress" +#define NID_presentationAddress 873 +#define OBJ_presentationAddress OBJ_X509,29L + +#define LN_supportedApplicationContext "supportedApplicationContext" +#define NID_supportedApplicationContext 874 +#define OBJ_supportedApplicationContext OBJ_X509,30L + +#define SN_member "member" +#define NID_member 875 +#define OBJ_member OBJ_X509,31L + +#define SN_owner "owner" +#define NID_owner 876 +#define OBJ_owner OBJ_X509,32L + +#define LN_roleOccupant "roleOccupant" +#define NID_roleOccupant 877 +#define OBJ_roleOccupant OBJ_X509,33L + +#define SN_seeAlso "seeAlso" +#define NID_seeAlso 878 +#define OBJ_seeAlso OBJ_X509,34L + +#define LN_userPassword "userPassword" +#define NID_userPassword 879 +#define OBJ_userPassword OBJ_X509,35L + +#define LN_userCertificate "userCertificate" +#define NID_userCertificate 880 +#define OBJ_userCertificate OBJ_X509,36L + +#define LN_cACertificate "cACertificate" +#define NID_cACertificate 881 +#define OBJ_cACertificate OBJ_X509,37L + +#define LN_authorityRevocationList "authorityRevocationList" +#define NID_authorityRevocationList 882 +#define OBJ_authorityRevocationList OBJ_X509,38L + +#define LN_certificateRevocationList "certificateRevocationList" +#define NID_certificateRevocationList 883 +#define OBJ_certificateRevocationList OBJ_X509,39L + +#define LN_crossCertificatePair "crossCertificatePair" +#define NID_crossCertificatePair 884 +#define OBJ_crossCertificatePair OBJ_X509,40L + +#define SN_name "name" +#define LN_name "name" +#define NID_name 173 +#define OBJ_name OBJ_X509,41L + +#define SN_givenName "GN" +#define LN_givenName "givenName" +#define NID_givenName 99 +#define OBJ_givenName OBJ_X509,42L + +#define SN_initials "initials" +#define LN_initials "initials" +#define NID_initials 101 +#define OBJ_initials OBJ_X509,43L + +#define LN_generationQualifier "generationQualifier" +#define NID_generationQualifier 509 +#define OBJ_generationQualifier OBJ_X509,44L + +#define LN_x500UniqueIdentifier "x500UniqueIdentifier" +#define NID_x500UniqueIdentifier 503 +#define OBJ_x500UniqueIdentifier OBJ_X509,45L + +#define SN_dnQualifier "dnQualifier" +#define LN_dnQualifier "dnQualifier" +#define NID_dnQualifier 174 +#define OBJ_dnQualifier OBJ_X509,46L + +#define LN_enhancedSearchGuide "enhancedSearchGuide" +#define NID_enhancedSearchGuide 885 +#define OBJ_enhancedSearchGuide OBJ_X509,47L + +#define LN_protocolInformation "protocolInformation" +#define NID_protocolInformation 886 +#define OBJ_protocolInformation OBJ_X509,48L + +#define LN_distinguishedName "distinguishedName" +#define NID_distinguishedName 887 +#define OBJ_distinguishedName OBJ_X509,49L + +#define LN_uniqueMember "uniqueMember" +#define NID_uniqueMember 888 +#define OBJ_uniqueMember OBJ_X509,50L + +#define LN_houseIdentifier "houseIdentifier" +#define NID_houseIdentifier 889 +#define OBJ_houseIdentifier OBJ_X509,51L + +#define LN_supportedAlgorithms "supportedAlgorithms" +#define NID_supportedAlgorithms 890 +#define OBJ_supportedAlgorithms OBJ_X509,52L + +#define LN_deltaRevocationList "deltaRevocationList" +#define NID_deltaRevocationList 891 +#define OBJ_deltaRevocationList OBJ_X509,53L + +#define SN_dmdName "dmdName" +#define NID_dmdName 892 +#define OBJ_dmdName OBJ_X509,54L + +#define LN_pseudonym "pseudonym" +#define NID_pseudonym 510 +#define OBJ_pseudonym OBJ_X509,65L + +#define SN_role "role" +#define LN_role "role" +#define NID_role 400 +#define OBJ_role OBJ_X509,72L + +#define SN_X500algorithms "X500algorithms" +#define LN_X500algorithms "directory services - algorithms" +#define NID_X500algorithms 378 +#define OBJ_X500algorithms OBJ_X500,8L + +#define SN_rsa "RSA" +#define LN_rsa "rsa" +#define NID_rsa 19 +#define OBJ_rsa OBJ_X500algorithms,1L,1L + +#define SN_mdc2WithRSA "RSA-MDC2" +#define LN_mdc2WithRSA "mdc2WithRSA" +#define NID_mdc2WithRSA 96 +#define OBJ_mdc2WithRSA OBJ_X500algorithms,3L,100L + +#define SN_mdc2 "MDC2" +#define LN_mdc2 "mdc2" +#define NID_mdc2 95 +#define OBJ_mdc2 OBJ_X500algorithms,3L,101L + +#define SN_id_ce "id-ce" +#define NID_id_ce 81 +#define OBJ_id_ce OBJ_X500,29L + +#define SN_subject_directory_attributes "subjectDirectoryAttributes" +#define LN_subject_directory_attributes "X509v3 Subject Directory Attributes" +#define NID_subject_directory_attributes 769 +#define OBJ_subject_directory_attributes OBJ_id_ce,9L + +#define SN_subject_key_identifier "subjectKeyIdentifier" +#define LN_subject_key_identifier "X509v3 Subject Key Identifier" +#define NID_subject_key_identifier 82 +#define OBJ_subject_key_identifier OBJ_id_ce,14L + +#define SN_key_usage "keyUsage" +#define LN_key_usage "X509v3 Key Usage" +#define NID_key_usage 83 +#define OBJ_key_usage OBJ_id_ce,15L + +#define SN_private_key_usage_period "privateKeyUsagePeriod" +#define LN_private_key_usage_period "X509v3 Private Key Usage Period" +#define NID_private_key_usage_period 84 +#define OBJ_private_key_usage_period OBJ_id_ce,16L + +#define SN_subject_alt_name "subjectAltName" +#define LN_subject_alt_name "X509v3 Subject Alternative Name" +#define NID_subject_alt_name 85 +#define OBJ_subject_alt_name OBJ_id_ce,17L + +#define SN_issuer_alt_name "issuerAltName" +#define LN_issuer_alt_name "X509v3 Issuer Alternative Name" +#define NID_issuer_alt_name 86 +#define OBJ_issuer_alt_name OBJ_id_ce,18L + +#define SN_basic_constraints "basicConstraints" +#define LN_basic_constraints "X509v3 Basic Constraints" +#define NID_basic_constraints 87 +#define OBJ_basic_constraints OBJ_id_ce,19L + +#define SN_crl_number "crlNumber" +#define LN_crl_number "X509v3 CRL Number" +#define NID_crl_number 88 +#define OBJ_crl_number OBJ_id_ce,20L + +#define SN_crl_reason "CRLReason" +#define LN_crl_reason "X509v3 CRL Reason Code" +#define NID_crl_reason 141 +#define OBJ_crl_reason OBJ_id_ce,21L + +#define SN_invalidity_date "invalidityDate" +#define LN_invalidity_date "Invalidity Date" +#define NID_invalidity_date 142 +#define OBJ_invalidity_date OBJ_id_ce,24L + +#define SN_delta_crl "deltaCRL" +#define LN_delta_crl "X509v3 Delta CRL Indicator" +#define NID_delta_crl 140 +#define OBJ_delta_crl OBJ_id_ce,27L + +#define SN_issuing_distribution_point "issuingDistributionPoint" +#define LN_issuing_distribution_point "X509v3 Issuing Distribution Point" +#define NID_issuing_distribution_point 770 +#define OBJ_issuing_distribution_point OBJ_id_ce,28L + +#define SN_certificate_issuer "certificateIssuer" +#define LN_certificate_issuer "X509v3 Certificate Issuer" +#define NID_certificate_issuer 771 +#define OBJ_certificate_issuer OBJ_id_ce,29L + +#define SN_name_constraints "nameConstraints" +#define LN_name_constraints "X509v3 Name Constraints" +#define NID_name_constraints 666 +#define OBJ_name_constraints OBJ_id_ce,30L + +#define SN_crl_distribution_points "crlDistributionPoints" +#define LN_crl_distribution_points "X509v3 CRL Distribution Points" +#define NID_crl_distribution_points 103 +#define OBJ_crl_distribution_points OBJ_id_ce,31L + +#define SN_certificate_policies "certificatePolicies" +#define LN_certificate_policies "X509v3 Certificate Policies" +#define NID_certificate_policies 89 +#define OBJ_certificate_policies OBJ_id_ce,32L + +#define SN_any_policy "anyPolicy" +#define LN_any_policy "X509v3 Any Policy" +#define NID_any_policy 746 +#define OBJ_any_policy OBJ_certificate_policies,0L + +#define SN_policy_mappings "policyMappings" +#define LN_policy_mappings "X509v3 Policy Mappings" +#define NID_policy_mappings 747 +#define OBJ_policy_mappings OBJ_id_ce,33L + +#define SN_authority_key_identifier "authorityKeyIdentifier" +#define LN_authority_key_identifier "X509v3 Authority Key Identifier" +#define NID_authority_key_identifier 90 +#define OBJ_authority_key_identifier OBJ_id_ce,35L + +#define SN_policy_constraints "policyConstraints" +#define LN_policy_constraints "X509v3 Policy Constraints" +#define NID_policy_constraints 401 +#define OBJ_policy_constraints OBJ_id_ce,36L + +#define SN_ext_key_usage "extendedKeyUsage" +#define LN_ext_key_usage "X509v3 Extended Key Usage" +#define NID_ext_key_usage 126 +#define OBJ_ext_key_usage OBJ_id_ce,37L + +#define SN_freshest_crl "freshestCRL" +#define LN_freshest_crl "X509v3 Freshest CRL" +#define NID_freshest_crl 857 +#define OBJ_freshest_crl OBJ_id_ce,46L + +#define SN_inhibit_any_policy "inhibitAnyPolicy" +#define LN_inhibit_any_policy "X509v3 Inhibit Any Policy" +#define NID_inhibit_any_policy 748 +#define OBJ_inhibit_any_policy OBJ_id_ce,54L + +#define SN_target_information "targetInformation" +#define LN_target_information "X509v3 AC Targeting" +#define NID_target_information 402 +#define OBJ_target_information OBJ_id_ce,55L + +#define SN_no_rev_avail "noRevAvail" +#define LN_no_rev_avail "X509v3 No Revocation Available" +#define NID_no_rev_avail 403 +#define OBJ_no_rev_avail OBJ_id_ce,56L + +#define SN_anyExtendedKeyUsage "anyExtendedKeyUsage" +#define LN_anyExtendedKeyUsage "Any Extended Key Usage" +#define NID_anyExtendedKeyUsage 910 +#define OBJ_anyExtendedKeyUsage OBJ_ext_key_usage,0L + +#define SN_netscape "Netscape" +#define LN_netscape "Netscape Communications Corp." +#define NID_netscape 57 +#define OBJ_netscape 2L,16L,840L,1L,113730L + +#define SN_netscape_cert_extension "nsCertExt" +#define LN_netscape_cert_extension "Netscape Certificate Extension" +#define NID_netscape_cert_extension 58 +#define OBJ_netscape_cert_extension OBJ_netscape,1L + +#define SN_netscape_data_type "nsDataType" +#define LN_netscape_data_type "Netscape Data Type" +#define NID_netscape_data_type 59 +#define OBJ_netscape_data_type OBJ_netscape,2L + +#define SN_netscape_cert_type "nsCertType" +#define LN_netscape_cert_type "Netscape Cert Type" +#define NID_netscape_cert_type 71 +#define OBJ_netscape_cert_type OBJ_netscape_cert_extension,1L + +#define SN_netscape_base_url "nsBaseUrl" +#define LN_netscape_base_url "Netscape Base Url" +#define NID_netscape_base_url 72 +#define OBJ_netscape_base_url OBJ_netscape_cert_extension,2L + +#define SN_netscape_revocation_url "nsRevocationUrl" +#define LN_netscape_revocation_url "Netscape Revocation Url" +#define NID_netscape_revocation_url 73 +#define OBJ_netscape_revocation_url OBJ_netscape_cert_extension,3L + +#define SN_netscape_ca_revocation_url "nsCaRevocationUrl" +#define LN_netscape_ca_revocation_url "Netscape CA Revocation Url" +#define NID_netscape_ca_revocation_url 74 +#define OBJ_netscape_ca_revocation_url OBJ_netscape_cert_extension,4L + +#define SN_netscape_renewal_url "nsRenewalUrl" +#define LN_netscape_renewal_url "Netscape Renewal Url" +#define NID_netscape_renewal_url 75 +#define OBJ_netscape_renewal_url OBJ_netscape_cert_extension,7L + +#define SN_netscape_ca_policy_url "nsCaPolicyUrl" +#define LN_netscape_ca_policy_url "Netscape CA Policy Url" +#define NID_netscape_ca_policy_url 76 +#define OBJ_netscape_ca_policy_url OBJ_netscape_cert_extension,8L + +#define SN_netscape_ssl_server_name "nsSslServerName" +#define LN_netscape_ssl_server_name "Netscape SSL Server Name" +#define NID_netscape_ssl_server_name 77 +#define OBJ_netscape_ssl_server_name OBJ_netscape_cert_extension,12L + +#define SN_netscape_comment "nsComment" +#define LN_netscape_comment "Netscape Comment" +#define NID_netscape_comment 78 +#define OBJ_netscape_comment OBJ_netscape_cert_extension,13L + +#define SN_netscape_cert_sequence "nsCertSequence" +#define LN_netscape_cert_sequence "Netscape Certificate Sequence" +#define NID_netscape_cert_sequence 79 +#define OBJ_netscape_cert_sequence OBJ_netscape_data_type,5L + +#define SN_ns_sgc "nsSGC" +#define LN_ns_sgc "Netscape Server Gated Crypto" +#define NID_ns_sgc 139 +#define OBJ_ns_sgc OBJ_netscape,4L,1L + +#define SN_org "ORG" +#define LN_org "org" +#define NID_org 379 +#define OBJ_org OBJ_iso,3L + +#define SN_dod "DOD" +#define LN_dod "dod" +#define NID_dod 380 +#define OBJ_dod OBJ_org,6L + +#define SN_iana "IANA" +#define LN_iana "iana" +#define NID_iana 381 +#define OBJ_iana OBJ_dod,1L + +#define OBJ_internet OBJ_iana + +#define SN_Directory "directory" +#define LN_Directory "Directory" +#define NID_Directory 382 +#define OBJ_Directory OBJ_internet,1L + +#define SN_Management "mgmt" +#define LN_Management "Management" +#define NID_Management 383 +#define OBJ_Management OBJ_internet,2L + +#define SN_Experimental "experimental" +#define LN_Experimental "Experimental" +#define NID_Experimental 384 +#define OBJ_Experimental OBJ_internet,3L + +#define SN_Private "private" +#define LN_Private "Private" +#define NID_Private 385 +#define OBJ_Private OBJ_internet,4L + +#define SN_Security "security" +#define LN_Security "Security" +#define NID_Security 386 +#define OBJ_Security OBJ_internet,5L + +#define SN_SNMPv2 "snmpv2" +#define LN_SNMPv2 "SNMPv2" +#define NID_SNMPv2 387 +#define OBJ_SNMPv2 OBJ_internet,6L + +#define LN_Mail "Mail" +#define NID_Mail 388 +#define OBJ_Mail OBJ_internet,7L + +#define SN_Enterprises "enterprises" +#define LN_Enterprises "Enterprises" +#define NID_Enterprises 389 +#define OBJ_Enterprises OBJ_Private,1L + +#define SN_dcObject "dcobject" +#define LN_dcObject "dcObject" +#define NID_dcObject 390 +#define OBJ_dcObject OBJ_Enterprises,1466L,344L + +#define SN_mime_mhs "mime-mhs" +#define LN_mime_mhs "MIME MHS" +#define NID_mime_mhs 504 +#define OBJ_mime_mhs OBJ_Mail,1L + +#define SN_mime_mhs_headings "mime-mhs-headings" +#define LN_mime_mhs_headings "mime-mhs-headings" +#define NID_mime_mhs_headings 505 +#define OBJ_mime_mhs_headings OBJ_mime_mhs,1L + +#define SN_mime_mhs_bodies "mime-mhs-bodies" +#define LN_mime_mhs_bodies "mime-mhs-bodies" +#define NID_mime_mhs_bodies 506 +#define OBJ_mime_mhs_bodies OBJ_mime_mhs,2L + +#define SN_id_hex_partial_message "id-hex-partial-message" +#define LN_id_hex_partial_message "id-hex-partial-message" +#define NID_id_hex_partial_message 507 +#define OBJ_id_hex_partial_message OBJ_mime_mhs_headings,1L + +#define SN_id_hex_multipart_message "id-hex-multipart-message" +#define LN_id_hex_multipart_message "id-hex-multipart-message" +#define NID_id_hex_multipart_message 508 +#define OBJ_id_hex_multipart_message OBJ_mime_mhs_headings,2L + +#define SN_zlib_compression "ZLIB" +#define LN_zlib_compression "zlib compression" +#define NID_zlib_compression 125 +#define OBJ_zlib_compression OBJ_id_smime_alg,8L + +#define OBJ_csor 2L,16L,840L,1L,101L,3L + +#define OBJ_nistAlgorithms OBJ_csor,4L + +#define OBJ_aes OBJ_nistAlgorithms,1L + +#define SN_aes_128_ecb "AES-128-ECB" +#define LN_aes_128_ecb "aes-128-ecb" +#define NID_aes_128_ecb 418 +#define OBJ_aes_128_ecb OBJ_aes,1L + +#define SN_aes_128_cbc "AES-128-CBC" +#define LN_aes_128_cbc "aes-128-cbc" +#define NID_aes_128_cbc 419 +#define OBJ_aes_128_cbc OBJ_aes,2L + +#define SN_aes_128_ofb128 "AES-128-OFB" +#define LN_aes_128_ofb128 "aes-128-ofb" +#define NID_aes_128_ofb128 420 +#define OBJ_aes_128_ofb128 OBJ_aes,3L + +#define SN_aes_128_cfb128 "AES-128-CFB" +#define LN_aes_128_cfb128 "aes-128-cfb" +#define NID_aes_128_cfb128 421 +#define OBJ_aes_128_cfb128 OBJ_aes,4L + +#define SN_id_aes128_wrap "id-aes128-wrap" +#define NID_id_aes128_wrap 788 +#define OBJ_id_aes128_wrap OBJ_aes,5L + +#define SN_aes_128_gcm "id-aes128-GCM" +#define LN_aes_128_gcm "aes-128-gcm" +#define NID_aes_128_gcm 895 +#define OBJ_aes_128_gcm OBJ_aes,6L + +#define SN_aes_128_ccm "id-aes128-CCM" +#define LN_aes_128_ccm "aes-128-ccm" +#define NID_aes_128_ccm 896 +#define OBJ_aes_128_ccm OBJ_aes,7L + +#define SN_id_aes128_wrap_pad "id-aes128-wrap-pad" +#define NID_id_aes128_wrap_pad 897 +#define OBJ_id_aes128_wrap_pad OBJ_aes,8L + +#define SN_aes_192_ecb "AES-192-ECB" +#define LN_aes_192_ecb "aes-192-ecb" +#define NID_aes_192_ecb 422 +#define OBJ_aes_192_ecb OBJ_aes,21L + +#define SN_aes_192_cbc "AES-192-CBC" +#define LN_aes_192_cbc "aes-192-cbc" +#define NID_aes_192_cbc 423 +#define OBJ_aes_192_cbc OBJ_aes,22L + +#define SN_aes_192_ofb128 "AES-192-OFB" +#define LN_aes_192_ofb128 "aes-192-ofb" +#define NID_aes_192_ofb128 424 +#define OBJ_aes_192_ofb128 OBJ_aes,23L + +#define SN_aes_192_cfb128 "AES-192-CFB" +#define LN_aes_192_cfb128 "aes-192-cfb" +#define NID_aes_192_cfb128 425 +#define OBJ_aes_192_cfb128 OBJ_aes,24L + +#define SN_id_aes192_wrap "id-aes192-wrap" +#define NID_id_aes192_wrap 789 +#define OBJ_id_aes192_wrap OBJ_aes,25L + +#define SN_aes_192_gcm "id-aes192-GCM" +#define LN_aes_192_gcm "aes-192-gcm" +#define NID_aes_192_gcm 898 +#define OBJ_aes_192_gcm OBJ_aes,26L + +#define SN_aes_192_ccm "id-aes192-CCM" +#define LN_aes_192_ccm "aes-192-ccm" +#define NID_aes_192_ccm 899 +#define OBJ_aes_192_ccm OBJ_aes,27L + +#define SN_id_aes192_wrap_pad "id-aes192-wrap-pad" +#define NID_id_aes192_wrap_pad 900 +#define OBJ_id_aes192_wrap_pad OBJ_aes,28L + +#define SN_aes_256_ecb "AES-256-ECB" +#define LN_aes_256_ecb "aes-256-ecb" +#define NID_aes_256_ecb 426 +#define OBJ_aes_256_ecb OBJ_aes,41L + +#define SN_aes_256_cbc "AES-256-CBC" +#define LN_aes_256_cbc "aes-256-cbc" +#define NID_aes_256_cbc 427 +#define OBJ_aes_256_cbc OBJ_aes,42L + +#define SN_aes_256_ofb128 "AES-256-OFB" +#define LN_aes_256_ofb128 "aes-256-ofb" +#define NID_aes_256_ofb128 428 +#define OBJ_aes_256_ofb128 OBJ_aes,43L + +#define SN_aes_256_cfb128 "AES-256-CFB" +#define LN_aes_256_cfb128 "aes-256-cfb" +#define NID_aes_256_cfb128 429 +#define OBJ_aes_256_cfb128 OBJ_aes,44L + +#define SN_id_aes256_wrap "id-aes256-wrap" +#define NID_id_aes256_wrap 790 +#define OBJ_id_aes256_wrap OBJ_aes,45L + +#define SN_aes_256_gcm "id-aes256-GCM" +#define LN_aes_256_gcm "aes-256-gcm" +#define NID_aes_256_gcm 901 +#define OBJ_aes_256_gcm OBJ_aes,46L + +#define SN_aes_256_ccm "id-aes256-CCM" +#define LN_aes_256_ccm "aes-256-ccm" +#define NID_aes_256_ccm 902 +#define OBJ_aes_256_ccm OBJ_aes,47L + +#define SN_id_aes256_wrap_pad "id-aes256-wrap-pad" +#define NID_id_aes256_wrap_pad 903 +#define OBJ_id_aes256_wrap_pad OBJ_aes,48L + +#define SN_aes_128_cfb1 "AES-128-CFB1" +#define LN_aes_128_cfb1 "aes-128-cfb1" +#define NID_aes_128_cfb1 650 + +#define SN_aes_192_cfb1 "AES-192-CFB1" +#define LN_aes_192_cfb1 "aes-192-cfb1" +#define NID_aes_192_cfb1 651 + +#define SN_aes_256_cfb1 "AES-256-CFB1" +#define LN_aes_256_cfb1 "aes-256-cfb1" +#define NID_aes_256_cfb1 652 + +#define SN_aes_128_cfb8 "AES-128-CFB8" +#define LN_aes_128_cfb8 "aes-128-cfb8" +#define NID_aes_128_cfb8 653 + +#define SN_aes_192_cfb8 "AES-192-CFB8" +#define LN_aes_192_cfb8 "aes-192-cfb8" +#define NID_aes_192_cfb8 654 + +#define SN_aes_256_cfb8 "AES-256-CFB8" +#define LN_aes_256_cfb8 "aes-256-cfb8" +#define NID_aes_256_cfb8 655 + +#define SN_aes_128_ctr "AES-128-CTR" +#define LN_aes_128_ctr "aes-128-ctr" +#define NID_aes_128_ctr 904 + +#define SN_aes_192_ctr "AES-192-CTR" +#define LN_aes_192_ctr "aes-192-ctr" +#define NID_aes_192_ctr 905 + +#define SN_aes_256_ctr "AES-256-CTR" +#define LN_aes_256_ctr "aes-256-ctr" +#define NID_aes_256_ctr 906 + +#define SN_aes_128_xts "AES-128-XTS" +#define LN_aes_128_xts "aes-128-xts" +#define NID_aes_128_xts 913 + +#define SN_aes_256_xts "AES-256-XTS" +#define LN_aes_256_xts "aes-256-xts" +#define NID_aes_256_xts 914 + +#define SN_des_cfb1 "DES-CFB1" +#define LN_des_cfb1 "des-cfb1" +#define NID_des_cfb1 656 + +#define SN_des_cfb8 "DES-CFB8" +#define LN_des_cfb8 "des-cfb8" +#define NID_des_cfb8 657 + +#define SN_des_ede3_cfb1 "DES-EDE3-CFB1" +#define LN_des_ede3_cfb1 "des-ede3-cfb1" +#define NID_des_ede3_cfb1 658 + +#define SN_des_ede3_cfb8 "DES-EDE3-CFB8" +#define LN_des_ede3_cfb8 "des-ede3-cfb8" +#define NID_des_ede3_cfb8 659 + +#define OBJ_nist_hashalgs OBJ_nistAlgorithms,2L + +#define SN_sha256 "SHA256" +#define LN_sha256 "sha256" +#define NID_sha256 672 +#define OBJ_sha256 OBJ_nist_hashalgs,1L + +#define SN_sha384 "SHA384" +#define LN_sha384 "sha384" +#define NID_sha384 673 +#define OBJ_sha384 OBJ_nist_hashalgs,2L + +#define SN_sha512 "SHA512" +#define LN_sha512 "sha512" +#define NID_sha512 674 +#define OBJ_sha512 OBJ_nist_hashalgs,3L + +#define SN_sha224 "SHA224" +#define LN_sha224 "sha224" +#define NID_sha224 675 +#define OBJ_sha224 OBJ_nist_hashalgs,4L + +#define OBJ_dsa_with_sha2 OBJ_nistAlgorithms,3L + +#define SN_dsa_with_SHA224 "dsa_with_SHA224" +#define NID_dsa_with_SHA224 802 +#define OBJ_dsa_with_SHA224 OBJ_dsa_with_sha2,1L + +#define SN_dsa_with_SHA256 "dsa_with_SHA256" +#define NID_dsa_with_SHA256 803 +#define OBJ_dsa_with_SHA256 OBJ_dsa_with_sha2,2L + +#define SN_hold_instruction_code "holdInstructionCode" +#define LN_hold_instruction_code "Hold Instruction Code" +#define NID_hold_instruction_code 430 +#define OBJ_hold_instruction_code OBJ_id_ce,23L + +#define OBJ_holdInstruction OBJ_X9_57,2L + +#define SN_hold_instruction_none "holdInstructionNone" +#define LN_hold_instruction_none "Hold Instruction None" +#define NID_hold_instruction_none 431 +#define OBJ_hold_instruction_none OBJ_holdInstruction,1L + +#define SN_hold_instruction_call_issuer "holdInstructionCallIssuer" +#define LN_hold_instruction_call_issuer "Hold Instruction Call Issuer" +#define NID_hold_instruction_call_issuer 432 +#define OBJ_hold_instruction_call_issuer OBJ_holdInstruction,2L + +#define SN_hold_instruction_reject "holdInstructionReject" +#define LN_hold_instruction_reject "Hold Instruction Reject" +#define NID_hold_instruction_reject 433 +#define OBJ_hold_instruction_reject OBJ_holdInstruction,3L + +#define SN_data "data" +#define NID_data 434 +#define OBJ_data OBJ_itu_t,9L + +#define SN_pss "pss" +#define NID_pss 435 +#define OBJ_pss OBJ_data,2342L + +#define SN_ucl "ucl" +#define NID_ucl 436 +#define OBJ_ucl OBJ_pss,19200300L + +#define SN_pilot "pilot" +#define NID_pilot 437 +#define OBJ_pilot OBJ_ucl,100L + +#define LN_pilotAttributeType "pilotAttributeType" +#define NID_pilotAttributeType 438 +#define OBJ_pilotAttributeType OBJ_pilot,1L + +#define LN_pilotAttributeSyntax "pilotAttributeSyntax" +#define NID_pilotAttributeSyntax 439 +#define OBJ_pilotAttributeSyntax OBJ_pilot,3L + +#define LN_pilotObjectClass "pilotObjectClass" +#define NID_pilotObjectClass 440 +#define OBJ_pilotObjectClass OBJ_pilot,4L + +#define LN_pilotGroups "pilotGroups" +#define NID_pilotGroups 441 +#define OBJ_pilotGroups OBJ_pilot,10L + +#define LN_iA5StringSyntax "iA5StringSyntax" +#define NID_iA5StringSyntax 442 +#define OBJ_iA5StringSyntax OBJ_pilotAttributeSyntax,4L + +#define LN_caseIgnoreIA5StringSyntax "caseIgnoreIA5StringSyntax" +#define NID_caseIgnoreIA5StringSyntax 443 +#define OBJ_caseIgnoreIA5StringSyntax OBJ_pilotAttributeSyntax,5L + +#define LN_pilotObject "pilotObject" +#define NID_pilotObject 444 +#define OBJ_pilotObject OBJ_pilotObjectClass,3L + +#define LN_pilotPerson "pilotPerson" +#define NID_pilotPerson 445 +#define OBJ_pilotPerson OBJ_pilotObjectClass,4L + +#define SN_account "account" +#define NID_account 446 +#define OBJ_account OBJ_pilotObjectClass,5L + +#define SN_document "document" +#define NID_document 447 +#define OBJ_document OBJ_pilotObjectClass,6L + +#define SN_room "room" +#define NID_room 448 +#define OBJ_room OBJ_pilotObjectClass,7L + +#define LN_documentSeries "documentSeries" +#define NID_documentSeries 449 +#define OBJ_documentSeries OBJ_pilotObjectClass,9L + +#define SN_Domain "domain" +#define LN_Domain "Domain" +#define NID_Domain 392 +#define OBJ_Domain OBJ_pilotObjectClass,13L + +#define LN_rFC822localPart "rFC822localPart" +#define NID_rFC822localPart 450 +#define OBJ_rFC822localPart OBJ_pilotObjectClass,14L + +#define LN_dNSDomain "dNSDomain" +#define NID_dNSDomain 451 +#define OBJ_dNSDomain OBJ_pilotObjectClass,15L + +#define LN_domainRelatedObject "domainRelatedObject" +#define NID_domainRelatedObject 452 +#define OBJ_domainRelatedObject OBJ_pilotObjectClass,17L + +#define LN_friendlyCountry "friendlyCountry" +#define NID_friendlyCountry 453 +#define OBJ_friendlyCountry OBJ_pilotObjectClass,18L + +#define LN_simpleSecurityObject "simpleSecurityObject" +#define NID_simpleSecurityObject 454 +#define OBJ_simpleSecurityObject OBJ_pilotObjectClass,19L + +#define LN_pilotOrganization "pilotOrganization" +#define NID_pilotOrganization 455 +#define OBJ_pilotOrganization OBJ_pilotObjectClass,20L + +#define LN_pilotDSA "pilotDSA" +#define NID_pilotDSA 456 +#define OBJ_pilotDSA OBJ_pilotObjectClass,21L + +#define LN_qualityLabelledData "qualityLabelledData" +#define NID_qualityLabelledData 457 +#define OBJ_qualityLabelledData OBJ_pilotObjectClass,22L + +#define SN_userId "UID" +#define LN_userId "userId" +#define NID_userId 458 +#define OBJ_userId OBJ_pilotAttributeType,1L + +#define LN_textEncodedORAddress "textEncodedORAddress" +#define NID_textEncodedORAddress 459 +#define OBJ_textEncodedORAddress OBJ_pilotAttributeType,2L + +#define SN_rfc822Mailbox "mail" +#define LN_rfc822Mailbox "rfc822Mailbox" +#define NID_rfc822Mailbox 460 +#define OBJ_rfc822Mailbox OBJ_pilotAttributeType,3L + +#define SN_info "info" +#define NID_info 461 +#define OBJ_info OBJ_pilotAttributeType,4L + +#define LN_favouriteDrink "favouriteDrink" +#define NID_favouriteDrink 462 +#define OBJ_favouriteDrink OBJ_pilotAttributeType,5L + +#define LN_roomNumber "roomNumber" +#define NID_roomNumber 463 +#define OBJ_roomNumber OBJ_pilotAttributeType,6L + +#define SN_photo "photo" +#define NID_photo 464 +#define OBJ_photo OBJ_pilotAttributeType,7L + +#define LN_userClass "userClass" +#define NID_userClass 465 +#define OBJ_userClass OBJ_pilotAttributeType,8L + +#define SN_host "host" +#define NID_host 466 +#define OBJ_host OBJ_pilotAttributeType,9L + +#define SN_manager "manager" +#define NID_manager 467 +#define OBJ_manager OBJ_pilotAttributeType,10L + +#define LN_documentIdentifier "documentIdentifier" +#define NID_documentIdentifier 468 +#define OBJ_documentIdentifier OBJ_pilotAttributeType,11L + +#define LN_documentTitle "documentTitle" +#define NID_documentTitle 469 +#define OBJ_documentTitle OBJ_pilotAttributeType,12L + +#define LN_documentVersion "documentVersion" +#define NID_documentVersion 470 +#define OBJ_documentVersion OBJ_pilotAttributeType,13L + +#define LN_documentAuthor "documentAuthor" +#define NID_documentAuthor 471 +#define OBJ_documentAuthor OBJ_pilotAttributeType,14L + +#define LN_documentLocation "documentLocation" +#define NID_documentLocation 472 +#define OBJ_documentLocation OBJ_pilotAttributeType,15L + +#define LN_homeTelephoneNumber "homeTelephoneNumber" +#define NID_homeTelephoneNumber 473 +#define OBJ_homeTelephoneNumber OBJ_pilotAttributeType,20L + +#define SN_secretary "secretary" +#define NID_secretary 474 +#define OBJ_secretary OBJ_pilotAttributeType,21L + +#define LN_otherMailbox "otherMailbox" +#define NID_otherMailbox 475 +#define OBJ_otherMailbox OBJ_pilotAttributeType,22L + +#define LN_lastModifiedTime "lastModifiedTime" +#define NID_lastModifiedTime 476 +#define OBJ_lastModifiedTime OBJ_pilotAttributeType,23L + +#define LN_lastModifiedBy "lastModifiedBy" +#define NID_lastModifiedBy 477 +#define OBJ_lastModifiedBy OBJ_pilotAttributeType,24L + +#define SN_domainComponent "DC" +#define LN_domainComponent "domainComponent" +#define NID_domainComponent 391 +#define OBJ_domainComponent OBJ_pilotAttributeType,25L + +#define LN_aRecord "aRecord" +#define NID_aRecord 478 +#define OBJ_aRecord OBJ_pilotAttributeType,26L + +#define LN_pilotAttributeType27 "pilotAttributeType27" +#define NID_pilotAttributeType27 479 +#define OBJ_pilotAttributeType27 OBJ_pilotAttributeType,27L + +#define LN_mXRecord "mXRecord" +#define NID_mXRecord 480 +#define OBJ_mXRecord OBJ_pilotAttributeType,28L + +#define LN_nSRecord "nSRecord" +#define NID_nSRecord 481 +#define OBJ_nSRecord OBJ_pilotAttributeType,29L + +#define LN_sOARecord "sOARecord" +#define NID_sOARecord 482 +#define OBJ_sOARecord OBJ_pilotAttributeType,30L + +#define LN_cNAMERecord "cNAMERecord" +#define NID_cNAMERecord 483 +#define OBJ_cNAMERecord OBJ_pilotAttributeType,31L + +#define LN_associatedDomain "associatedDomain" +#define NID_associatedDomain 484 +#define OBJ_associatedDomain OBJ_pilotAttributeType,37L + +#define LN_associatedName "associatedName" +#define NID_associatedName 485 +#define OBJ_associatedName OBJ_pilotAttributeType,38L + +#define LN_homePostalAddress "homePostalAddress" +#define NID_homePostalAddress 486 +#define OBJ_homePostalAddress OBJ_pilotAttributeType,39L + +#define LN_personalTitle "personalTitle" +#define NID_personalTitle 487 +#define OBJ_personalTitle OBJ_pilotAttributeType,40L + +#define LN_mobileTelephoneNumber "mobileTelephoneNumber" +#define NID_mobileTelephoneNumber 488 +#define OBJ_mobileTelephoneNumber OBJ_pilotAttributeType,41L + +#define LN_pagerTelephoneNumber "pagerTelephoneNumber" +#define NID_pagerTelephoneNumber 489 +#define OBJ_pagerTelephoneNumber OBJ_pilotAttributeType,42L + +#define LN_friendlyCountryName "friendlyCountryName" +#define NID_friendlyCountryName 490 +#define OBJ_friendlyCountryName OBJ_pilotAttributeType,43L + +#define LN_organizationalStatus "organizationalStatus" +#define NID_organizationalStatus 491 +#define OBJ_organizationalStatus OBJ_pilotAttributeType,45L + +#define LN_janetMailbox "janetMailbox" +#define NID_janetMailbox 492 +#define OBJ_janetMailbox OBJ_pilotAttributeType,46L + +#define LN_mailPreferenceOption "mailPreferenceOption" +#define NID_mailPreferenceOption 493 +#define OBJ_mailPreferenceOption OBJ_pilotAttributeType,47L + +#define LN_buildingName "buildingName" +#define NID_buildingName 494 +#define OBJ_buildingName OBJ_pilotAttributeType,48L + +#define LN_dSAQuality "dSAQuality" +#define NID_dSAQuality 495 +#define OBJ_dSAQuality OBJ_pilotAttributeType,49L + +#define LN_singleLevelQuality "singleLevelQuality" +#define NID_singleLevelQuality 496 +#define OBJ_singleLevelQuality OBJ_pilotAttributeType,50L + +#define LN_subtreeMinimumQuality "subtreeMinimumQuality" +#define NID_subtreeMinimumQuality 497 +#define OBJ_subtreeMinimumQuality OBJ_pilotAttributeType,51L + +#define LN_subtreeMaximumQuality "subtreeMaximumQuality" +#define NID_subtreeMaximumQuality 498 +#define OBJ_subtreeMaximumQuality OBJ_pilotAttributeType,52L + +#define LN_personalSignature "personalSignature" +#define NID_personalSignature 499 +#define OBJ_personalSignature OBJ_pilotAttributeType,53L + +#define LN_dITRedirect "dITRedirect" +#define NID_dITRedirect 500 +#define OBJ_dITRedirect OBJ_pilotAttributeType,54L + +#define SN_audio "audio" +#define NID_audio 501 +#define OBJ_audio OBJ_pilotAttributeType,55L + +#define LN_documentPublisher "documentPublisher" +#define NID_documentPublisher 502 +#define OBJ_documentPublisher OBJ_pilotAttributeType,56L + +#define SN_id_set "id-set" +#define LN_id_set "Secure Electronic Transactions" +#define NID_id_set 512 +#define OBJ_id_set OBJ_international_organizations,42L + +#define SN_set_ctype "set-ctype" +#define LN_set_ctype "content types" +#define NID_set_ctype 513 +#define OBJ_set_ctype OBJ_id_set,0L + +#define SN_set_msgExt "set-msgExt" +#define LN_set_msgExt "message extensions" +#define NID_set_msgExt 514 +#define OBJ_set_msgExt OBJ_id_set,1L + +#define SN_set_attr "set-attr" +#define NID_set_attr 515 +#define OBJ_set_attr OBJ_id_set,3L + +#define SN_set_policy "set-policy" +#define NID_set_policy 516 +#define OBJ_set_policy OBJ_id_set,5L + +#define SN_set_certExt "set-certExt" +#define LN_set_certExt "certificate extensions" +#define NID_set_certExt 517 +#define OBJ_set_certExt OBJ_id_set,7L + +#define SN_set_brand "set-brand" +#define NID_set_brand 518 +#define OBJ_set_brand OBJ_id_set,8L + +#define SN_setct_PANData "setct-PANData" +#define NID_setct_PANData 519 +#define OBJ_setct_PANData OBJ_set_ctype,0L + +#define SN_setct_PANToken "setct-PANToken" +#define NID_setct_PANToken 520 +#define OBJ_setct_PANToken OBJ_set_ctype,1L + +#define SN_setct_PANOnly "setct-PANOnly" +#define NID_setct_PANOnly 521 +#define OBJ_setct_PANOnly OBJ_set_ctype,2L + +#define SN_setct_OIData "setct-OIData" +#define NID_setct_OIData 522 +#define OBJ_setct_OIData OBJ_set_ctype,3L + +#define SN_setct_PI "setct-PI" +#define NID_setct_PI 523 +#define OBJ_setct_PI OBJ_set_ctype,4L + +#define SN_setct_PIData "setct-PIData" +#define NID_setct_PIData 524 +#define OBJ_setct_PIData OBJ_set_ctype,5L + +#define SN_setct_PIDataUnsigned "setct-PIDataUnsigned" +#define NID_setct_PIDataUnsigned 525 +#define OBJ_setct_PIDataUnsigned OBJ_set_ctype,6L + +#define SN_setct_HODInput "setct-HODInput" +#define NID_setct_HODInput 526 +#define OBJ_setct_HODInput OBJ_set_ctype,7L + +#define SN_setct_AuthResBaggage "setct-AuthResBaggage" +#define NID_setct_AuthResBaggage 527 +#define OBJ_setct_AuthResBaggage OBJ_set_ctype,8L + +#define SN_setct_AuthRevReqBaggage "setct-AuthRevReqBaggage" +#define NID_setct_AuthRevReqBaggage 528 +#define OBJ_setct_AuthRevReqBaggage OBJ_set_ctype,9L + +#define SN_setct_AuthRevResBaggage "setct-AuthRevResBaggage" +#define NID_setct_AuthRevResBaggage 529 +#define OBJ_setct_AuthRevResBaggage OBJ_set_ctype,10L + +#define SN_setct_CapTokenSeq "setct-CapTokenSeq" +#define NID_setct_CapTokenSeq 530 +#define OBJ_setct_CapTokenSeq OBJ_set_ctype,11L + +#define SN_setct_PInitResData "setct-PInitResData" +#define NID_setct_PInitResData 531 +#define OBJ_setct_PInitResData OBJ_set_ctype,12L + +#define SN_setct_PI_TBS "setct-PI-TBS" +#define NID_setct_PI_TBS 532 +#define OBJ_setct_PI_TBS OBJ_set_ctype,13L + +#define SN_setct_PResData "setct-PResData" +#define NID_setct_PResData 533 +#define OBJ_setct_PResData OBJ_set_ctype,14L + +#define SN_setct_AuthReqTBS "setct-AuthReqTBS" +#define NID_setct_AuthReqTBS 534 +#define OBJ_setct_AuthReqTBS OBJ_set_ctype,16L + +#define SN_setct_AuthResTBS "setct-AuthResTBS" +#define NID_setct_AuthResTBS 535 +#define OBJ_setct_AuthResTBS OBJ_set_ctype,17L + +#define SN_setct_AuthResTBSX "setct-AuthResTBSX" +#define NID_setct_AuthResTBSX 536 +#define OBJ_setct_AuthResTBSX OBJ_set_ctype,18L + +#define SN_setct_AuthTokenTBS "setct-AuthTokenTBS" +#define NID_setct_AuthTokenTBS 537 +#define OBJ_setct_AuthTokenTBS OBJ_set_ctype,19L + +#define SN_setct_CapTokenData "setct-CapTokenData" +#define NID_setct_CapTokenData 538 +#define OBJ_setct_CapTokenData OBJ_set_ctype,20L + +#define SN_setct_CapTokenTBS "setct-CapTokenTBS" +#define NID_setct_CapTokenTBS 539 +#define OBJ_setct_CapTokenTBS OBJ_set_ctype,21L + +#define SN_setct_AcqCardCodeMsg "setct-AcqCardCodeMsg" +#define NID_setct_AcqCardCodeMsg 540 +#define OBJ_setct_AcqCardCodeMsg OBJ_set_ctype,22L + +#define SN_setct_AuthRevReqTBS "setct-AuthRevReqTBS" +#define NID_setct_AuthRevReqTBS 541 +#define OBJ_setct_AuthRevReqTBS OBJ_set_ctype,23L + +#define SN_setct_AuthRevResData "setct-AuthRevResData" +#define NID_setct_AuthRevResData 542 +#define OBJ_setct_AuthRevResData OBJ_set_ctype,24L + +#define SN_setct_AuthRevResTBS "setct-AuthRevResTBS" +#define NID_setct_AuthRevResTBS 543 +#define OBJ_setct_AuthRevResTBS OBJ_set_ctype,25L + +#define SN_setct_CapReqTBS "setct-CapReqTBS" +#define NID_setct_CapReqTBS 544 +#define OBJ_setct_CapReqTBS OBJ_set_ctype,26L + +#define SN_setct_CapReqTBSX "setct-CapReqTBSX" +#define NID_setct_CapReqTBSX 545 +#define OBJ_setct_CapReqTBSX OBJ_set_ctype,27L + +#define SN_setct_CapResData "setct-CapResData" +#define NID_setct_CapResData 546 +#define OBJ_setct_CapResData OBJ_set_ctype,28L + +#define SN_setct_CapRevReqTBS "setct-CapRevReqTBS" +#define NID_setct_CapRevReqTBS 547 +#define OBJ_setct_CapRevReqTBS OBJ_set_ctype,29L + +#define SN_setct_CapRevReqTBSX "setct-CapRevReqTBSX" +#define NID_setct_CapRevReqTBSX 548 +#define OBJ_setct_CapRevReqTBSX OBJ_set_ctype,30L + +#define SN_setct_CapRevResData "setct-CapRevResData" +#define NID_setct_CapRevResData 549 +#define OBJ_setct_CapRevResData OBJ_set_ctype,31L + +#define SN_setct_CredReqTBS "setct-CredReqTBS" +#define NID_setct_CredReqTBS 550 +#define OBJ_setct_CredReqTBS OBJ_set_ctype,32L + +#define SN_setct_CredReqTBSX "setct-CredReqTBSX" +#define NID_setct_CredReqTBSX 551 +#define OBJ_setct_CredReqTBSX OBJ_set_ctype,33L + +#define SN_setct_CredResData "setct-CredResData" +#define NID_setct_CredResData 552 +#define OBJ_setct_CredResData OBJ_set_ctype,34L + +#define SN_setct_CredRevReqTBS "setct-CredRevReqTBS" +#define NID_setct_CredRevReqTBS 553 +#define OBJ_setct_CredRevReqTBS OBJ_set_ctype,35L + +#define SN_setct_CredRevReqTBSX "setct-CredRevReqTBSX" +#define NID_setct_CredRevReqTBSX 554 +#define OBJ_setct_CredRevReqTBSX OBJ_set_ctype,36L + +#define SN_setct_CredRevResData "setct-CredRevResData" +#define NID_setct_CredRevResData 555 +#define OBJ_setct_CredRevResData OBJ_set_ctype,37L + +#define SN_setct_PCertReqData "setct-PCertReqData" +#define NID_setct_PCertReqData 556 +#define OBJ_setct_PCertReqData OBJ_set_ctype,38L + +#define SN_setct_PCertResTBS "setct-PCertResTBS" +#define NID_setct_PCertResTBS 557 +#define OBJ_setct_PCertResTBS OBJ_set_ctype,39L + +#define SN_setct_BatchAdminReqData "setct-BatchAdminReqData" +#define NID_setct_BatchAdminReqData 558 +#define OBJ_setct_BatchAdminReqData OBJ_set_ctype,40L + +#define SN_setct_BatchAdminResData "setct-BatchAdminResData" +#define NID_setct_BatchAdminResData 559 +#define OBJ_setct_BatchAdminResData OBJ_set_ctype,41L + +#define SN_setct_CardCInitResTBS "setct-CardCInitResTBS" +#define NID_setct_CardCInitResTBS 560 +#define OBJ_setct_CardCInitResTBS OBJ_set_ctype,42L + +#define SN_setct_MeAqCInitResTBS "setct-MeAqCInitResTBS" +#define NID_setct_MeAqCInitResTBS 561 +#define OBJ_setct_MeAqCInitResTBS OBJ_set_ctype,43L + +#define SN_setct_RegFormResTBS "setct-RegFormResTBS" +#define NID_setct_RegFormResTBS 562 +#define OBJ_setct_RegFormResTBS OBJ_set_ctype,44L + +#define SN_setct_CertReqData "setct-CertReqData" +#define NID_setct_CertReqData 563 +#define OBJ_setct_CertReqData OBJ_set_ctype,45L + +#define SN_setct_CertReqTBS "setct-CertReqTBS" +#define NID_setct_CertReqTBS 564 +#define OBJ_setct_CertReqTBS OBJ_set_ctype,46L + +#define SN_setct_CertResData "setct-CertResData" +#define NID_setct_CertResData 565 +#define OBJ_setct_CertResData OBJ_set_ctype,47L + +#define SN_setct_CertInqReqTBS "setct-CertInqReqTBS" +#define NID_setct_CertInqReqTBS 566 +#define OBJ_setct_CertInqReqTBS OBJ_set_ctype,48L + +#define SN_setct_ErrorTBS "setct-ErrorTBS" +#define NID_setct_ErrorTBS 567 +#define OBJ_setct_ErrorTBS OBJ_set_ctype,49L + +#define SN_setct_PIDualSignedTBE "setct-PIDualSignedTBE" +#define NID_setct_PIDualSignedTBE 568 +#define OBJ_setct_PIDualSignedTBE OBJ_set_ctype,50L + +#define SN_setct_PIUnsignedTBE "setct-PIUnsignedTBE" +#define NID_setct_PIUnsignedTBE 569 +#define OBJ_setct_PIUnsignedTBE OBJ_set_ctype,51L + +#define SN_setct_AuthReqTBE "setct-AuthReqTBE" +#define NID_setct_AuthReqTBE 570 +#define OBJ_setct_AuthReqTBE OBJ_set_ctype,52L + +#define SN_setct_AuthResTBE "setct-AuthResTBE" +#define NID_setct_AuthResTBE 571 +#define OBJ_setct_AuthResTBE OBJ_set_ctype,53L + +#define SN_setct_AuthResTBEX "setct-AuthResTBEX" +#define NID_setct_AuthResTBEX 572 +#define OBJ_setct_AuthResTBEX OBJ_set_ctype,54L + +#define SN_setct_AuthTokenTBE "setct-AuthTokenTBE" +#define NID_setct_AuthTokenTBE 573 +#define OBJ_setct_AuthTokenTBE OBJ_set_ctype,55L + +#define SN_setct_CapTokenTBE "setct-CapTokenTBE" +#define NID_setct_CapTokenTBE 574 +#define OBJ_setct_CapTokenTBE OBJ_set_ctype,56L + +#define SN_setct_CapTokenTBEX "setct-CapTokenTBEX" +#define NID_setct_CapTokenTBEX 575 +#define OBJ_setct_CapTokenTBEX OBJ_set_ctype,57L + +#define SN_setct_AcqCardCodeMsgTBE "setct-AcqCardCodeMsgTBE" +#define NID_setct_AcqCardCodeMsgTBE 576 +#define OBJ_setct_AcqCardCodeMsgTBE OBJ_set_ctype,58L + +#define SN_setct_AuthRevReqTBE "setct-AuthRevReqTBE" +#define NID_setct_AuthRevReqTBE 577 +#define OBJ_setct_AuthRevReqTBE OBJ_set_ctype,59L + +#define SN_setct_AuthRevResTBE "setct-AuthRevResTBE" +#define NID_setct_AuthRevResTBE 578 +#define OBJ_setct_AuthRevResTBE OBJ_set_ctype,60L + +#define SN_setct_AuthRevResTBEB "setct-AuthRevResTBEB" +#define NID_setct_AuthRevResTBEB 579 +#define OBJ_setct_AuthRevResTBEB OBJ_set_ctype,61L + +#define SN_setct_CapReqTBE "setct-CapReqTBE" +#define NID_setct_CapReqTBE 580 +#define OBJ_setct_CapReqTBE OBJ_set_ctype,62L + +#define SN_setct_CapReqTBEX "setct-CapReqTBEX" +#define NID_setct_CapReqTBEX 581 +#define OBJ_setct_CapReqTBEX OBJ_set_ctype,63L + +#define SN_setct_CapResTBE "setct-CapResTBE" +#define NID_setct_CapResTBE 582 +#define OBJ_setct_CapResTBE OBJ_set_ctype,64L + +#define SN_setct_CapRevReqTBE "setct-CapRevReqTBE" +#define NID_setct_CapRevReqTBE 583 +#define OBJ_setct_CapRevReqTBE OBJ_set_ctype,65L + +#define SN_setct_CapRevReqTBEX "setct-CapRevReqTBEX" +#define NID_setct_CapRevReqTBEX 584 +#define OBJ_setct_CapRevReqTBEX OBJ_set_ctype,66L + +#define SN_setct_CapRevResTBE "setct-CapRevResTBE" +#define NID_setct_CapRevResTBE 585 +#define OBJ_setct_CapRevResTBE OBJ_set_ctype,67L + +#define SN_setct_CredReqTBE "setct-CredReqTBE" +#define NID_setct_CredReqTBE 586 +#define OBJ_setct_CredReqTBE OBJ_set_ctype,68L + +#define SN_setct_CredReqTBEX "setct-CredReqTBEX" +#define NID_setct_CredReqTBEX 587 +#define OBJ_setct_CredReqTBEX OBJ_set_ctype,69L + +#define SN_setct_CredResTBE "setct-CredResTBE" +#define NID_setct_CredResTBE 588 +#define OBJ_setct_CredResTBE OBJ_set_ctype,70L + +#define SN_setct_CredRevReqTBE "setct-CredRevReqTBE" +#define NID_setct_CredRevReqTBE 589 +#define OBJ_setct_CredRevReqTBE OBJ_set_ctype,71L + +#define SN_setct_CredRevReqTBEX "setct-CredRevReqTBEX" +#define NID_setct_CredRevReqTBEX 590 +#define OBJ_setct_CredRevReqTBEX OBJ_set_ctype,72L + +#define SN_setct_CredRevResTBE "setct-CredRevResTBE" +#define NID_setct_CredRevResTBE 591 +#define OBJ_setct_CredRevResTBE OBJ_set_ctype,73L + +#define SN_setct_BatchAdminReqTBE "setct-BatchAdminReqTBE" +#define NID_setct_BatchAdminReqTBE 592 +#define OBJ_setct_BatchAdminReqTBE OBJ_set_ctype,74L + +#define SN_setct_BatchAdminResTBE "setct-BatchAdminResTBE" +#define NID_setct_BatchAdminResTBE 593 +#define OBJ_setct_BatchAdminResTBE OBJ_set_ctype,75L + +#define SN_setct_RegFormReqTBE "setct-RegFormReqTBE" +#define NID_setct_RegFormReqTBE 594 +#define OBJ_setct_RegFormReqTBE OBJ_set_ctype,76L + +#define SN_setct_CertReqTBE "setct-CertReqTBE" +#define NID_setct_CertReqTBE 595 +#define OBJ_setct_CertReqTBE OBJ_set_ctype,77L + +#define SN_setct_CertReqTBEX "setct-CertReqTBEX" +#define NID_setct_CertReqTBEX 596 +#define OBJ_setct_CertReqTBEX OBJ_set_ctype,78L + +#define SN_setct_CertResTBE "setct-CertResTBE" +#define NID_setct_CertResTBE 597 +#define OBJ_setct_CertResTBE OBJ_set_ctype,79L + +#define SN_setct_CRLNotificationTBS "setct-CRLNotificationTBS" +#define NID_setct_CRLNotificationTBS 598 +#define OBJ_setct_CRLNotificationTBS OBJ_set_ctype,80L + +#define SN_setct_CRLNotificationResTBS "setct-CRLNotificationResTBS" +#define NID_setct_CRLNotificationResTBS 599 +#define OBJ_setct_CRLNotificationResTBS OBJ_set_ctype,81L + +#define SN_setct_BCIDistributionTBS "setct-BCIDistributionTBS" +#define NID_setct_BCIDistributionTBS 600 +#define OBJ_setct_BCIDistributionTBS OBJ_set_ctype,82L + +#define SN_setext_genCrypt "setext-genCrypt" +#define LN_setext_genCrypt "generic cryptogram" +#define NID_setext_genCrypt 601 +#define OBJ_setext_genCrypt OBJ_set_msgExt,1L + +#define SN_setext_miAuth "setext-miAuth" +#define LN_setext_miAuth "merchant initiated auth" +#define NID_setext_miAuth 602 +#define OBJ_setext_miAuth OBJ_set_msgExt,3L + +#define SN_setext_pinSecure "setext-pinSecure" +#define NID_setext_pinSecure 603 +#define OBJ_setext_pinSecure OBJ_set_msgExt,4L + +#define SN_setext_pinAny "setext-pinAny" +#define NID_setext_pinAny 604 +#define OBJ_setext_pinAny OBJ_set_msgExt,5L + +#define SN_setext_track2 "setext-track2" +#define NID_setext_track2 605 +#define OBJ_setext_track2 OBJ_set_msgExt,7L + +#define SN_setext_cv "setext-cv" +#define LN_setext_cv "additional verification" +#define NID_setext_cv 606 +#define OBJ_setext_cv OBJ_set_msgExt,8L + +#define SN_set_policy_root "set-policy-root" +#define NID_set_policy_root 607 +#define OBJ_set_policy_root OBJ_set_policy,0L + +#define SN_setCext_hashedRoot "setCext-hashedRoot" +#define NID_setCext_hashedRoot 608 +#define OBJ_setCext_hashedRoot OBJ_set_certExt,0L + +#define SN_setCext_certType "setCext-certType" +#define NID_setCext_certType 609 +#define OBJ_setCext_certType OBJ_set_certExt,1L + +#define SN_setCext_merchData "setCext-merchData" +#define NID_setCext_merchData 610 +#define OBJ_setCext_merchData OBJ_set_certExt,2L + +#define SN_setCext_cCertRequired "setCext-cCertRequired" +#define NID_setCext_cCertRequired 611 +#define OBJ_setCext_cCertRequired OBJ_set_certExt,3L + +#define SN_setCext_tunneling "setCext-tunneling" +#define NID_setCext_tunneling 612 +#define OBJ_setCext_tunneling OBJ_set_certExt,4L + +#define SN_setCext_setExt "setCext-setExt" +#define NID_setCext_setExt 613 +#define OBJ_setCext_setExt OBJ_set_certExt,5L + +#define SN_setCext_setQualf "setCext-setQualf" +#define NID_setCext_setQualf 614 +#define OBJ_setCext_setQualf OBJ_set_certExt,6L + +#define SN_setCext_PGWYcapabilities "setCext-PGWYcapabilities" +#define NID_setCext_PGWYcapabilities 615 +#define OBJ_setCext_PGWYcapabilities OBJ_set_certExt,7L + +#define SN_setCext_TokenIdentifier "setCext-TokenIdentifier" +#define NID_setCext_TokenIdentifier 616 +#define OBJ_setCext_TokenIdentifier OBJ_set_certExt,8L + +#define SN_setCext_Track2Data "setCext-Track2Data" +#define NID_setCext_Track2Data 617 +#define OBJ_setCext_Track2Data OBJ_set_certExt,9L + +#define SN_setCext_TokenType "setCext-TokenType" +#define NID_setCext_TokenType 618 +#define OBJ_setCext_TokenType OBJ_set_certExt,10L + +#define SN_setCext_IssuerCapabilities "setCext-IssuerCapabilities" +#define NID_setCext_IssuerCapabilities 619 +#define OBJ_setCext_IssuerCapabilities OBJ_set_certExt,11L + +#define SN_setAttr_Cert "setAttr-Cert" +#define NID_setAttr_Cert 620 +#define OBJ_setAttr_Cert OBJ_set_attr,0L + +#define SN_setAttr_PGWYcap "setAttr-PGWYcap" +#define LN_setAttr_PGWYcap "payment gateway capabilities" +#define NID_setAttr_PGWYcap 621 +#define OBJ_setAttr_PGWYcap OBJ_set_attr,1L + +#define SN_setAttr_TokenType "setAttr-TokenType" +#define NID_setAttr_TokenType 622 +#define OBJ_setAttr_TokenType OBJ_set_attr,2L + +#define SN_setAttr_IssCap "setAttr-IssCap" +#define LN_setAttr_IssCap "issuer capabilities" +#define NID_setAttr_IssCap 623 +#define OBJ_setAttr_IssCap OBJ_set_attr,3L + +#define SN_set_rootKeyThumb "set-rootKeyThumb" +#define NID_set_rootKeyThumb 624 +#define OBJ_set_rootKeyThumb OBJ_setAttr_Cert,0L + +#define SN_set_addPolicy "set-addPolicy" +#define NID_set_addPolicy 625 +#define OBJ_set_addPolicy OBJ_setAttr_Cert,1L + +#define SN_setAttr_Token_EMV "setAttr-Token-EMV" +#define NID_setAttr_Token_EMV 626 +#define OBJ_setAttr_Token_EMV OBJ_setAttr_TokenType,1L + +#define SN_setAttr_Token_B0Prime "setAttr-Token-B0Prime" +#define NID_setAttr_Token_B0Prime 627 +#define OBJ_setAttr_Token_B0Prime OBJ_setAttr_TokenType,2L + +#define SN_setAttr_IssCap_CVM "setAttr-IssCap-CVM" +#define NID_setAttr_IssCap_CVM 628 +#define OBJ_setAttr_IssCap_CVM OBJ_setAttr_IssCap,3L + +#define SN_setAttr_IssCap_T2 "setAttr-IssCap-T2" +#define NID_setAttr_IssCap_T2 629 +#define OBJ_setAttr_IssCap_T2 OBJ_setAttr_IssCap,4L + +#define SN_setAttr_IssCap_Sig "setAttr-IssCap-Sig" +#define NID_setAttr_IssCap_Sig 630 +#define OBJ_setAttr_IssCap_Sig OBJ_setAttr_IssCap,5L + +#define SN_setAttr_GenCryptgrm "setAttr-GenCryptgrm" +#define LN_setAttr_GenCryptgrm "generate cryptogram" +#define NID_setAttr_GenCryptgrm 631 +#define OBJ_setAttr_GenCryptgrm OBJ_setAttr_IssCap_CVM,1L + +#define SN_setAttr_T2Enc "setAttr-T2Enc" +#define LN_setAttr_T2Enc "encrypted track 2" +#define NID_setAttr_T2Enc 632 +#define OBJ_setAttr_T2Enc OBJ_setAttr_IssCap_T2,1L + +#define SN_setAttr_T2cleartxt "setAttr-T2cleartxt" +#define LN_setAttr_T2cleartxt "cleartext track 2" +#define NID_setAttr_T2cleartxt 633 +#define OBJ_setAttr_T2cleartxt OBJ_setAttr_IssCap_T2,2L + +#define SN_setAttr_TokICCsig "setAttr-TokICCsig" +#define LN_setAttr_TokICCsig "ICC or token signature" +#define NID_setAttr_TokICCsig 634 +#define OBJ_setAttr_TokICCsig OBJ_setAttr_IssCap_Sig,1L + +#define SN_setAttr_SecDevSig "setAttr-SecDevSig" +#define LN_setAttr_SecDevSig "secure device signature" +#define NID_setAttr_SecDevSig 635 +#define OBJ_setAttr_SecDevSig OBJ_setAttr_IssCap_Sig,2L + +#define SN_set_brand_IATA_ATA "set-brand-IATA-ATA" +#define NID_set_brand_IATA_ATA 636 +#define OBJ_set_brand_IATA_ATA OBJ_set_brand,1L + +#define SN_set_brand_Diners "set-brand-Diners" +#define NID_set_brand_Diners 637 +#define OBJ_set_brand_Diners OBJ_set_brand,30L + +#define SN_set_brand_AmericanExpress "set-brand-AmericanExpress" +#define NID_set_brand_AmericanExpress 638 +#define OBJ_set_brand_AmericanExpress OBJ_set_brand,34L + +#define SN_set_brand_JCB "set-brand-JCB" +#define NID_set_brand_JCB 639 +#define OBJ_set_brand_JCB OBJ_set_brand,35L + +#define SN_set_brand_Visa "set-brand-Visa" +#define NID_set_brand_Visa 640 +#define OBJ_set_brand_Visa OBJ_set_brand,4L + +#define SN_set_brand_MasterCard "set-brand-MasterCard" +#define NID_set_brand_MasterCard 641 +#define OBJ_set_brand_MasterCard OBJ_set_brand,5L + +#define SN_set_brand_Novus "set-brand-Novus" +#define NID_set_brand_Novus 642 +#define OBJ_set_brand_Novus OBJ_set_brand,6011L + +#define SN_des_cdmf "DES-CDMF" +#define LN_des_cdmf "des-cdmf" +#define NID_des_cdmf 643 +#define OBJ_des_cdmf OBJ_rsadsi,3L,10L + +#define SN_rsaOAEPEncryptionSET "rsaOAEPEncryptionSET" +#define NID_rsaOAEPEncryptionSET 644 +#define OBJ_rsaOAEPEncryptionSET OBJ_rsadsi,1L,1L,6L + +#define SN_ipsec3 "Oakley-EC2N-3" +#define LN_ipsec3 "ipsec3" +#define NID_ipsec3 749 + +#define SN_ipsec4 "Oakley-EC2N-4" +#define LN_ipsec4 "ipsec4" +#define NID_ipsec4 750 + +#define SN_whirlpool "whirlpool" +#define NID_whirlpool 804 +#define OBJ_whirlpool OBJ_iso,0L,10118L,3L,0L,55L + +#define SN_cryptopro "cryptopro" +#define NID_cryptopro 805 +#define OBJ_cryptopro OBJ_member_body,643L,2L,2L + +#define SN_cryptocom "cryptocom" +#define NID_cryptocom 806 +#define OBJ_cryptocom OBJ_member_body,643L,2L,9L + +#define SN_id_GostR3411_94_with_GostR3410_2001 "id-GostR3411-94-with-GostR3410-2001" +#define LN_id_GostR3411_94_with_GostR3410_2001 "GOST R 34.11-94 with GOST R 34.10-2001" +#define NID_id_GostR3411_94_with_GostR3410_2001 807 +#define OBJ_id_GostR3411_94_with_GostR3410_2001 OBJ_cryptopro,3L + +#define SN_id_GostR3411_94_with_GostR3410_94 "id-GostR3411-94-with-GostR3410-94" +#define LN_id_GostR3411_94_with_GostR3410_94 "GOST R 34.11-94 with GOST R 34.10-94" +#define NID_id_GostR3411_94_with_GostR3410_94 808 +#define OBJ_id_GostR3411_94_with_GostR3410_94 OBJ_cryptopro,4L + +#define SN_id_GostR3411_94 "md_gost94" +#define LN_id_GostR3411_94 "GOST R 34.11-94" +#define NID_id_GostR3411_94 809 +#define OBJ_id_GostR3411_94 OBJ_cryptopro,9L + +#define SN_id_HMACGostR3411_94 "id-HMACGostR3411-94" +#define LN_id_HMACGostR3411_94 "HMAC GOST 34.11-94" +#define NID_id_HMACGostR3411_94 810 +#define OBJ_id_HMACGostR3411_94 OBJ_cryptopro,10L + +#define SN_id_GostR3410_2001 "gost2001" +#define LN_id_GostR3410_2001 "GOST R 34.10-2001" +#define NID_id_GostR3410_2001 811 +#define OBJ_id_GostR3410_2001 OBJ_cryptopro,19L + +#define SN_id_GostR3410_94 "gost94" +#define LN_id_GostR3410_94 "GOST R 34.10-94" +#define NID_id_GostR3410_94 812 +#define OBJ_id_GostR3410_94 OBJ_cryptopro,20L + +#define SN_id_Gost28147_89 "gost89" +#define LN_id_Gost28147_89 "GOST 28147-89" +#define NID_id_Gost28147_89 813 +#define OBJ_id_Gost28147_89 OBJ_cryptopro,21L + +#define SN_gost89_cnt "gost89-cnt" +#define NID_gost89_cnt 814 + +#define SN_id_Gost28147_89_MAC "gost-mac" +#define LN_id_Gost28147_89_MAC "GOST 28147-89 MAC" +#define NID_id_Gost28147_89_MAC 815 +#define OBJ_id_Gost28147_89_MAC OBJ_cryptopro,22L + +#define SN_id_GostR3411_94_prf "prf-gostr3411-94" +#define LN_id_GostR3411_94_prf "GOST R 34.11-94 PRF" +#define NID_id_GostR3411_94_prf 816 +#define OBJ_id_GostR3411_94_prf OBJ_cryptopro,23L + +#define SN_id_GostR3410_2001DH "id-GostR3410-2001DH" +#define LN_id_GostR3410_2001DH "GOST R 34.10-2001 DH" +#define NID_id_GostR3410_2001DH 817 +#define OBJ_id_GostR3410_2001DH OBJ_cryptopro,98L + +#define SN_id_GostR3410_94DH "id-GostR3410-94DH" +#define LN_id_GostR3410_94DH "GOST R 34.10-94 DH" +#define NID_id_GostR3410_94DH 818 +#define OBJ_id_GostR3410_94DH OBJ_cryptopro,99L + +#define SN_id_Gost28147_89_CryptoPro_KeyMeshing "id-Gost28147-89-CryptoPro-KeyMeshing" +#define NID_id_Gost28147_89_CryptoPro_KeyMeshing 819 +#define OBJ_id_Gost28147_89_CryptoPro_KeyMeshing OBJ_cryptopro,14L,1L + +#define SN_id_Gost28147_89_None_KeyMeshing "id-Gost28147-89-None-KeyMeshing" +#define NID_id_Gost28147_89_None_KeyMeshing 820 +#define OBJ_id_Gost28147_89_None_KeyMeshing OBJ_cryptopro,14L,0L + +#define SN_id_GostR3411_94_TestParamSet "id-GostR3411-94-TestParamSet" +#define NID_id_GostR3411_94_TestParamSet 821 +#define OBJ_id_GostR3411_94_TestParamSet OBJ_cryptopro,30L,0L + +#define SN_id_GostR3411_94_CryptoProParamSet "id-GostR3411-94-CryptoProParamSet" +#define NID_id_GostR3411_94_CryptoProParamSet 822 +#define OBJ_id_GostR3411_94_CryptoProParamSet OBJ_cryptopro,30L,1L + +#define SN_id_Gost28147_89_TestParamSet "id-Gost28147-89-TestParamSet" +#define NID_id_Gost28147_89_TestParamSet 823 +#define OBJ_id_Gost28147_89_TestParamSet OBJ_cryptopro,31L,0L + +#define SN_id_Gost28147_89_CryptoPro_A_ParamSet "id-Gost28147-89-CryptoPro-A-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_A_ParamSet 824 +#define OBJ_id_Gost28147_89_CryptoPro_A_ParamSet OBJ_cryptopro,31L,1L + +#define SN_id_Gost28147_89_CryptoPro_B_ParamSet "id-Gost28147-89-CryptoPro-B-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_B_ParamSet 825 +#define OBJ_id_Gost28147_89_CryptoPro_B_ParamSet OBJ_cryptopro,31L,2L + +#define SN_id_Gost28147_89_CryptoPro_C_ParamSet "id-Gost28147-89-CryptoPro-C-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_C_ParamSet 826 +#define OBJ_id_Gost28147_89_CryptoPro_C_ParamSet OBJ_cryptopro,31L,3L + +#define SN_id_Gost28147_89_CryptoPro_D_ParamSet "id-Gost28147-89-CryptoPro-D-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_D_ParamSet 827 +#define OBJ_id_Gost28147_89_CryptoPro_D_ParamSet OBJ_cryptopro,31L,4L + +#define SN_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet "id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet 828 +#define OBJ_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet OBJ_cryptopro,31L,5L + +#define SN_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet "id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet 829 +#define OBJ_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet OBJ_cryptopro,31L,6L + +#define SN_id_Gost28147_89_CryptoPro_RIC_1_ParamSet "id-Gost28147-89-CryptoPro-RIC-1-ParamSet" +#define NID_id_Gost28147_89_CryptoPro_RIC_1_ParamSet 830 +#define OBJ_id_Gost28147_89_CryptoPro_RIC_1_ParamSet OBJ_cryptopro,31L,7L + +#define SN_id_GostR3410_94_TestParamSet "id-GostR3410-94-TestParamSet" +#define NID_id_GostR3410_94_TestParamSet 831 +#define OBJ_id_GostR3410_94_TestParamSet OBJ_cryptopro,32L,0L + +#define SN_id_GostR3410_94_CryptoPro_A_ParamSet "id-GostR3410-94-CryptoPro-A-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_A_ParamSet 832 +#define OBJ_id_GostR3410_94_CryptoPro_A_ParamSet OBJ_cryptopro,32L,2L + +#define SN_id_GostR3410_94_CryptoPro_B_ParamSet "id-GostR3410-94-CryptoPro-B-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_B_ParamSet 833 +#define OBJ_id_GostR3410_94_CryptoPro_B_ParamSet OBJ_cryptopro,32L,3L + +#define SN_id_GostR3410_94_CryptoPro_C_ParamSet "id-GostR3410-94-CryptoPro-C-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_C_ParamSet 834 +#define OBJ_id_GostR3410_94_CryptoPro_C_ParamSet OBJ_cryptopro,32L,4L + +#define SN_id_GostR3410_94_CryptoPro_D_ParamSet "id-GostR3410-94-CryptoPro-D-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_D_ParamSet 835 +#define OBJ_id_GostR3410_94_CryptoPro_D_ParamSet OBJ_cryptopro,32L,5L + +#define SN_id_GostR3410_94_CryptoPro_XchA_ParamSet "id-GostR3410-94-CryptoPro-XchA-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_XchA_ParamSet 836 +#define OBJ_id_GostR3410_94_CryptoPro_XchA_ParamSet OBJ_cryptopro,33L,1L + +#define SN_id_GostR3410_94_CryptoPro_XchB_ParamSet "id-GostR3410-94-CryptoPro-XchB-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_XchB_ParamSet 837 +#define OBJ_id_GostR3410_94_CryptoPro_XchB_ParamSet OBJ_cryptopro,33L,2L + +#define SN_id_GostR3410_94_CryptoPro_XchC_ParamSet "id-GostR3410-94-CryptoPro-XchC-ParamSet" +#define NID_id_GostR3410_94_CryptoPro_XchC_ParamSet 838 +#define OBJ_id_GostR3410_94_CryptoPro_XchC_ParamSet OBJ_cryptopro,33L,3L + +#define SN_id_GostR3410_2001_TestParamSet "id-GostR3410-2001-TestParamSet" +#define NID_id_GostR3410_2001_TestParamSet 839 +#define OBJ_id_GostR3410_2001_TestParamSet OBJ_cryptopro,35L,0L + +#define SN_id_GostR3410_2001_CryptoPro_A_ParamSet "id-GostR3410-2001-CryptoPro-A-ParamSet" +#define NID_id_GostR3410_2001_CryptoPro_A_ParamSet 840 +#define OBJ_id_GostR3410_2001_CryptoPro_A_ParamSet OBJ_cryptopro,35L,1L + +#define SN_id_GostR3410_2001_CryptoPro_B_ParamSet "id-GostR3410-2001-CryptoPro-B-ParamSet" +#define NID_id_GostR3410_2001_CryptoPro_B_ParamSet 841 +#define OBJ_id_GostR3410_2001_CryptoPro_B_ParamSet OBJ_cryptopro,35L,2L + +#define SN_id_GostR3410_2001_CryptoPro_C_ParamSet "id-GostR3410-2001-CryptoPro-C-ParamSet" +#define NID_id_GostR3410_2001_CryptoPro_C_ParamSet 842 +#define OBJ_id_GostR3410_2001_CryptoPro_C_ParamSet OBJ_cryptopro,35L,3L + +#define SN_id_GostR3410_2001_CryptoPro_XchA_ParamSet "id-GostR3410-2001-CryptoPro-XchA-ParamSet" +#define NID_id_GostR3410_2001_CryptoPro_XchA_ParamSet 843 +#define OBJ_id_GostR3410_2001_CryptoPro_XchA_ParamSet OBJ_cryptopro,36L,0L + +#define SN_id_GostR3410_2001_CryptoPro_XchB_ParamSet "id-GostR3410-2001-CryptoPro-XchB-ParamSet" +#define NID_id_GostR3410_2001_CryptoPro_XchB_ParamSet 844 +#define OBJ_id_GostR3410_2001_CryptoPro_XchB_ParamSet OBJ_cryptopro,36L,1L + +#define SN_id_GostR3410_94_a "id-GostR3410-94-a" +#define NID_id_GostR3410_94_a 845 +#define OBJ_id_GostR3410_94_a OBJ_id_GostR3410_94,1L + +#define SN_id_GostR3410_94_aBis "id-GostR3410-94-aBis" +#define NID_id_GostR3410_94_aBis 846 +#define OBJ_id_GostR3410_94_aBis OBJ_id_GostR3410_94,2L + +#define SN_id_GostR3410_94_b "id-GostR3410-94-b" +#define NID_id_GostR3410_94_b 847 +#define OBJ_id_GostR3410_94_b OBJ_id_GostR3410_94,3L + +#define SN_id_GostR3410_94_bBis "id-GostR3410-94-bBis" +#define NID_id_GostR3410_94_bBis 848 +#define OBJ_id_GostR3410_94_bBis OBJ_id_GostR3410_94,4L + +#define SN_id_Gost28147_89_cc "id-Gost28147-89-cc" +#define LN_id_Gost28147_89_cc "GOST 28147-89 Cryptocom ParamSet" +#define NID_id_Gost28147_89_cc 849 +#define OBJ_id_Gost28147_89_cc OBJ_cryptocom,1L,6L,1L + +#define SN_id_GostR3410_94_cc "gost94cc" +#define LN_id_GostR3410_94_cc "GOST 34.10-94 Cryptocom" +#define NID_id_GostR3410_94_cc 850 +#define OBJ_id_GostR3410_94_cc OBJ_cryptocom,1L,5L,3L + +#define SN_id_GostR3410_2001_cc "gost2001cc" +#define LN_id_GostR3410_2001_cc "GOST 34.10-2001 Cryptocom" +#define NID_id_GostR3410_2001_cc 851 +#define OBJ_id_GostR3410_2001_cc OBJ_cryptocom,1L,5L,4L + +#define SN_id_GostR3411_94_with_GostR3410_94_cc "id-GostR3411-94-with-GostR3410-94-cc" +#define LN_id_GostR3411_94_with_GostR3410_94_cc "GOST R 34.11-94 with GOST R 34.10-94 Cryptocom" +#define NID_id_GostR3411_94_with_GostR3410_94_cc 852 +#define OBJ_id_GostR3411_94_with_GostR3410_94_cc OBJ_cryptocom,1L,3L,3L + +#define SN_id_GostR3411_94_with_GostR3410_2001_cc "id-GostR3411-94-with-GostR3410-2001-cc" +#define LN_id_GostR3411_94_with_GostR3410_2001_cc "GOST R 34.11-94 with GOST R 34.10-2001 Cryptocom" +#define NID_id_GostR3411_94_with_GostR3410_2001_cc 853 +#define OBJ_id_GostR3411_94_with_GostR3410_2001_cc OBJ_cryptocom,1L,3L,4L + +#define SN_id_GostR3410_2001_ParamSet_cc "id-GostR3410-2001-ParamSet-cc" +#define LN_id_GostR3410_2001_ParamSet_cc "GOST R 3410-2001 Parameter Set Cryptocom" +#define NID_id_GostR3410_2001_ParamSet_cc 854 +#define OBJ_id_GostR3410_2001_ParamSet_cc OBJ_cryptocom,1L,8L,1L + +#define SN_camellia_128_cbc "CAMELLIA-128-CBC" +#define LN_camellia_128_cbc "camellia-128-cbc" +#define NID_camellia_128_cbc 751 +#define OBJ_camellia_128_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,2L + +#define SN_camellia_192_cbc "CAMELLIA-192-CBC" +#define LN_camellia_192_cbc "camellia-192-cbc" +#define NID_camellia_192_cbc 752 +#define OBJ_camellia_192_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,3L + +#define SN_camellia_256_cbc "CAMELLIA-256-CBC" +#define LN_camellia_256_cbc "camellia-256-cbc" +#define NID_camellia_256_cbc 753 +#define OBJ_camellia_256_cbc 1L,2L,392L,200011L,61L,1L,1L,1L,4L + +#define SN_id_camellia128_wrap "id-camellia128-wrap" +#define NID_id_camellia128_wrap 907 +#define OBJ_id_camellia128_wrap 1L,2L,392L,200011L,61L,1L,1L,3L,2L + +#define SN_id_camellia192_wrap "id-camellia192-wrap" +#define NID_id_camellia192_wrap 908 +#define OBJ_id_camellia192_wrap 1L,2L,392L,200011L,61L,1L,1L,3L,3L + +#define SN_id_camellia256_wrap "id-camellia256-wrap" +#define NID_id_camellia256_wrap 909 +#define OBJ_id_camellia256_wrap 1L,2L,392L,200011L,61L,1L,1L,3L,4L + +#define OBJ_ntt_ds 0L,3L,4401L,5L + +#define OBJ_camellia OBJ_ntt_ds,3L,1L,9L + +#define SN_camellia_128_ecb "CAMELLIA-128-ECB" +#define LN_camellia_128_ecb "camellia-128-ecb" +#define NID_camellia_128_ecb 754 +#define OBJ_camellia_128_ecb OBJ_camellia,1L + +#define SN_camellia_128_ofb128 "CAMELLIA-128-OFB" +#define LN_camellia_128_ofb128 "camellia-128-ofb" +#define NID_camellia_128_ofb128 766 +#define OBJ_camellia_128_ofb128 OBJ_camellia,3L + +#define SN_camellia_128_cfb128 "CAMELLIA-128-CFB" +#define LN_camellia_128_cfb128 "camellia-128-cfb" +#define NID_camellia_128_cfb128 757 +#define OBJ_camellia_128_cfb128 OBJ_camellia,4L + +#define SN_camellia_192_ecb "CAMELLIA-192-ECB" +#define LN_camellia_192_ecb "camellia-192-ecb" +#define NID_camellia_192_ecb 755 +#define OBJ_camellia_192_ecb OBJ_camellia,21L + +#define SN_camellia_192_ofb128 "CAMELLIA-192-OFB" +#define LN_camellia_192_ofb128 "camellia-192-ofb" +#define NID_camellia_192_ofb128 767 +#define OBJ_camellia_192_ofb128 OBJ_camellia,23L + +#define SN_camellia_192_cfb128 "CAMELLIA-192-CFB" +#define LN_camellia_192_cfb128 "camellia-192-cfb" +#define NID_camellia_192_cfb128 758 +#define OBJ_camellia_192_cfb128 OBJ_camellia,24L + +#define SN_camellia_256_ecb "CAMELLIA-256-ECB" +#define LN_camellia_256_ecb "camellia-256-ecb" +#define NID_camellia_256_ecb 756 +#define OBJ_camellia_256_ecb OBJ_camellia,41L + +#define SN_camellia_256_ofb128 "CAMELLIA-256-OFB" +#define LN_camellia_256_ofb128 "camellia-256-ofb" +#define NID_camellia_256_ofb128 768 +#define OBJ_camellia_256_ofb128 OBJ_camellia,43L + +#define SN_camellia_256_cfb128 "CAMELLIA-256-CFB" +#define LN_camellia_256_cfb128 "camellia-256-cfb" +#define NID_camellia_256_cfb128 759 +#define OBJ_camellia_256_cfb128 OBJ_camellia,44L + +#define SN_camellia_128_cfb1 "CAMELLIA-128-CFB1" +#define LN_camellia_128_cfb1 "camellia-128-cfb1" +#define NID_camellia_128_cfb1 760 + +#define SN_camellia_192_cfb1 "CAMELLIA-192-CFB1" +#define LN_camellia_192_cfb1 "camellia-192-cfb1" +#define NID_camellia_192_cfb1 761 + +#define SN_camellia_256_cfb1 "CAMELLIA-256-CFB1" +#define LN_camellia_256_cfb1 "camellia-256-cfb1" +#define NID_camellia_256_cfb1 762 + +#define SN_camellia_128_cfb8 "CAMELLIA-128-CFB8" +#define LN_camellia_128_cfb8 "camellia-128-cfb8" +#define NID_camellia_128_cfb8 763 + +#define SN_camellia_192_cfb8 "CAMELLIA-192-CFB8" +#define LN_camellia_192_cfb8 "camellia-192-cfb8" +#define NID_camellia_192_cfb8 764 + +#define SN_camellia_256_cfb8 "CAMELLIA-256-CFB8" +#define LN_camellia_256_cfb8 "camellia-256-cfb8" +#define NID_camellia_256_cfb8 765 + +#define SN_kisa "KISA" +#define LN_kisa "kisa" +#define NID_kisa 773 +#define OBJ_kisa OBJ_member_body,410L,200004L + +#define SN_seed_ecb "SEED-ECB" +#define LN_seed_ecb "seed-ecb" +#define NID_seed_ecb 776 +#define OBJ_seed_ecb OBJ_kisa,1L,3L + +#define SN_seed_cbc "SEED-CBC" +#define LN_seed_cbc "seed-cbc" +#define NID_seed_cbc 777 +#define OBJ_seed_cbc OBJ_kisa,1L,4L + +#define SN_seed_cfb128 "SEED-CFB" +#define LN_seed_cfb128 "seed-cfb" +#define NID_seed_cfb128 779 +#define OBJ_seed_cfb128 OBJ_kisa,1L,5L + +#define SN_seed_ofb128 "SEED-OFB" +#define LN_seed_ofb128 "seed-ofb" +#define NID_seed_ofb128 778 +#define OBJ_seed_ofb128 OBJ_kisa,1L,6L + +#define SN_hmac "HMAC" +#define LN_hmac "hmac" +#define NID_hmac 855 + +#define SN_cmac "CMAC" +#define LN_cmac "cmac" +#define NID_cmac 894 + +#define SN_rc4_hmac_md5 "RC4-HMAC-MD5" +#define LN_rc4_hmac_md5 "rc4-hmac-md5" +#define NID_rc4_hmac_md5 915 + +#define SN_aes_128_cbc_hmac_sha1 "AES-128-CBC-HMAC-SHA1" +#define LN_aes_128_cbc_hmac_sha1 "aes-128-cbc-hmac-sha1" +#define NID_aes_128_cbc_hmac_sha1 916 + +#define SN_aes_192_cbc_hmac_sha1 "AES-192-CBC-HMAC-SHA1" +#define LN_aes_192_cbc_hmac_sha1 "aes-192-cbc-hmac-sha1" +#define NID_aes_192_cbc_hmac_sha1 917 + +#define SN_aes_256_cbc_hmac_sha1 "AES-256-CBC-HMAC-SHA1" +#define LN_aes_256_cbc_hmac_sha1 "aes-256-cbc-hmac-sha1" +#define NID_aes_256_cbc_hmac_sha1 918 + +#define SN_dhpublicnumber "dhpublicnumber" +#define LN_dhpublicnumber "X9.42 DH" +#define NID_dhpublicnumber 920 +#define OBJ_dhpublicnumber OBJ_ISO_US,10046L,2L,1L + +#define SN_brainpoolP160r1 "brainpoolP160r1" +#define NID_brainpoolP160r1 921 +#define OBJ_brainpoolP160r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,1L + +#define SN_brainpoolP160t1 "brainpoolP160t1" +#define NID_brainpoolP160t1 922 +#define OBJ_brainpoolP160t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,2L + +#define SN_brainpoolP192r1 "brainpoolP192r1" +#define NID_brainpoolP192r1 923 +#define OBJ_brainpoolP192r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,3L + +#define SN_brainpoolP192t1 "brainpoolP192t1" +#define NID_brainpoolP192t1 924 +#define OBJ_brainpoolP192t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,4L + +#define SN_brainpoolP224r1 "brainpoolP224r1" +#define NID_brainpoolP224r1 925 +#define OBJ_brainpoolP224r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,5L + +#define SN_brainpoolP224t1 "brainpoolP224t1" +#define NID_brainpoolP224t1 926 +#define OBJ_brainpoolP224t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,6L + +#define SN_brainpoolP256r1 "brainpoolP256r1" +#define NID_brainpoolP256r1 927 +#define OBJ_brainpoolP256r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,7L + +#define SN_brainpoolP256t1 "brainpoolP256t1" +#define NID_brainpoolP256t1 928 +#define OBJ_brainpoolP256t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,8L + +#define SN_brainpoolP320r1 "brainpoolP320r1" +#define NID_brainpoolP320r1 929 +#define OBJ_brainpoolP320r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,9L + +#define SN_brainpoolP320t1 "brainpoolP320t1" +#define NID_brainpoolP320t1 930 +#define OBJ_brainpoolP320t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,10L + +#define SN_brainpoolP384r1 "brainpoolP384r1" +#define NID_brainpoolP384r1 931 +#define OBJ_brainpoolP384r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,11L + +#define SN_brainpoolP384t1 "brainpoolP384t1" +#define NID_brainpoolP384t1 932 +#define OBJ_brainpoolP384t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,12L + +#define SN_brainpoolP512r1 "brainpoolP512r1" +#define NID_brainpoolP512r1 933 +#define OBJ_brainpoolP512r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,13L + +#define SN_brainpoolP512t1 "brainpoolP512t1" +#define NID_brainpoolP512t1 934 +#define OBJ_brainpoolP512t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,14L + +#define OBJ_x9_63_scheme 1L,3L,133L,16L,840L,63L,0L + +#define OBJ_secg_scheme OBJ_certicom_arc,1L + +#define SN_dhSinglePass_stdDH_sha1kdf_scheme "dhSinglePass-stdDH-sha1kdf-scheme" +#define NID_dhSinglePass_stdDH_sha1kdf_scheme 936 +#define OBJ_dhSinglePass_stdDH_sha1kdf_scheme OBJ_x9_63_scheme,2L + +#define SN_dhSinglePass_stdDH_sha224kdf_scheme "dhSinglePass-stdDH-sha224kdf-scheme" +#define NID_dhSinglePass_stdDH_sha224kdf_scheme 937 +#define OBJ_dhSinglePass_stdDH_sha224kdf_scheme OBJ_secg_scheme,11L,0L + +#define SN_dhSinglePass_stdDH_sha256kdf_scheme "dhSinglePass-stdDH-sha256kdf-scheme" +#define NID_dhSinglePass_stdDH_sha256kdf_scheme 938 +#define OBJ_dhSinglePass_stdDH_sha256kdf_scheme OBJ_secg_scheme,11L,1L + +#define SN_dhSinglePass_stdDH_sha384kdf_scheme "dhSinglePass-stdDH-sha384kdf-scheme" +#define NID_dhSinglePass_stdDH_sha384kdf_scheme 939 +#define OBJ_dhSinglePass_stdDH_sha384kdf_scheme OBJ_secg_scheme,11L,2L + +#define SN_dhSinglePass_stdDH_sha512kdf_scheme "dhSinglePass-stdDH-sha512kdf-scheme" +#define NID_dhSinglePass_stdDH_sha512kdf_scheme 940 +#define OBJ_dhSinglePass_stdDH_sha512kdf_scheme OBJ_secg_scheme,11L,3L + +#define SN_dhSinglePass_cofactorDH_sha1kdf_scheme "dhSinglePass-cofactorDH-sha1kdf-scheme" +#define NID_dhSinglePass_cofactorDH_sha1kdf_scheme 941 +#define OBJ_dhSinglePass_cofactorDH_sha1kdf_scheme OBJ_x9_63_scheme,3L + +#define SN_dhSinglePass_cofactorDH_sha224kdf_scheme "dhSinglePass-cofactorDH-sha224kdf-scheme" +#define NID_dhSinglePass_cofactorDH_sha224kdf_scheme 942 +#define OBJ_dhSinglePass_cofactorDH_sha224kdf_scheme OBJ_secg_scheme,14L,0L + +#define SN_dhSinglePass_cofactorDH_sha256kdf_scheme "dhSinglePass-cofactorDH-sha256kdf-scheme" +#define NID_dhSinglePass_cofactorDH_sha256kdf_scheme 943 +#define OBJ_dhSinglePass_cofactorDH_sha256kdf_scheme OBJ_secg_scheme,14L,1L + +#define SN_dhSinglePass_cofactorDH_sha384kdf_scheme "dhSinglePass-cofactorDH-sha384kdf-scheme" +#define NID_dhSinglePass_cofactorDH_sha384kdf_scheme 944 +#define OBJ_dhSinglePass_cofactorDH_sha384kdf_scheme OBJ_secg_scheme,14L,2L + +#define SN_dhSinglePass_cofactorDH_sha512kdf_scheme "dhSinglePass-cofactorDH-sha512kdf-scheme" +#define NID_dhSinglePass_cofactorDH_sha512kdf_scheme 945 +#define OBJ_dhSinglePass_cofactorDH_sha512kdf_scheme OBJ_secg_scheme,14L,3L + +#define SN_dh_std_kdf "dh-std-kdf" +#define NID_dh_std_kdf 946 + +#define SN_dh_cofactor_kdf "dh-cofactor-kdf" +#define NID_dh_cofactor_kdf 947 + +#define SN_x25519 "X25519" +#define LN_x25519 "x25519" +#define NID_x25519 948 + diff --git a/project/jni/boringssl/include/openssl/objects.h b/project/jni/boringssl/include/openssl/objects.h new file mode 100644 index 000000000..dd6556f26 --- /dev/null +++ b/project/jni/boringssl/include/openssl/objects.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "obj.h" diff --git a/project/jni/boringssl/include/openssl/opensslfeatures.h b/project/jni/boringssl/include/openssl/opensslfeatures.h new file mode 100644 index 000000000..c3f97d5a4 --- /dev/null +++ b/project/jni/boringssl/include/openssl/opensslfeatures.h @@ -0,0 +1,60 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#ifndef OPENSSL_HEADER_OPENSSLFEATURES_H +#define OPENSSL_HEADER_OPENSSLFEATURES_H + + +#define OPENSSL_NO_BF +#define OPENSSL_NO_BUF_FREELISTS +#define OPENSSL_NO_CAMELLIA +#define OPENSSL_NO_CAPIENG +#define OPENSSL_NO_CAST +#define OPENSSL_NO_CMS +#define OPENSSL_NO_COMP +#define OPENSSL_NO_DANE +#define OPENSSL_NO_DEPRECATED +#define OPENSSL_NO_DYNAMIC_ENGINE +#define OPENSSL_NO_EC_NISTP_64_GCC_128 +#define OPENSSL_NO_EC2M +#define OPENSSL_NO_ENGINE +#define OPENSSL_NO_GMP +#define OPENSSL_NO_GOST +#define OPENSSL_NO_HEARTBEATS +#define OPENSSL_NO_HW +#define OPENSSL_NO_IDEA +#define OPENSSL_NO_JPAKE +#define OPENSSL_NO_KRB5 +#define OPENSSL_NO_MD2 +#define OPENSSL_NO_MDC2 +#define OPENSSL_NO_OCB +#define OPENSSL_NO_OCSP +#define OPENSSL_NO_RC2 +#define OPENSSL_NO_RC5 +#define OPENSSL_NO_RFC3779 +#define OPENSSL_NO_RIPEMD +#define OPENSSL_NO_RMD160 +#define OPENSSL_NO_SCTP +#define OPENSSL_NO_SEED +#define OPENSSL_NO_SRP +#define OPENSSL_NO_SSL2 +#define OPENSSL_NO_STATIC_ENGINE +#define OPENSSL_NO_STORE +#define OPENSSL_NO_WHIRLPOOL + + +#endif /* OPENSSL_HEADER_OPENSSLFEATURES_H */ diff --git a/project/jni/boringssl/include/openssl/opensslv.h b/project/jni/boringssl/include/openssl/opensslv.h new file mode 100644 index 000000000..a3555d4f8 --- /dev/null +++ b/project/jni/boringssl/include/openssl/opensslv.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "crypto.h" diff --git a/project/jni/boringssl/include/openssl/ossl_typ.h b/project/jni/boringssl/include/openssl/ossl_typ.h new file mode 100644 index 000000000..c2b3fe7c5 --- /dev/null +++ b/project/jni/boringssl/include/openssl/ossl_typ.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "base.h" diff --git a/project/jni/boringssl/include/openssl/pem.h b/project/jni/boringssl/include/openssl/pem.h new file mode 100644 index 000000000..a6687a69c --- /dev/null +++ b/project/jni/boringssl/include/openssl/pem.h @@ -0,0 +1,517 @@ +/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_PEM_H +#define OPENSSL_HEADER_PEM_H + +#include +#include +#include +#include +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +#define PEM_BUFSIZE 1024 + +#define PEM_OBJ_UNDEF 0 +#define PEM_OBJ_X509 1 +#define PEM_OBJ_X509_REQ 2 +#define PEM_OBJ_CRL 3 +#define PEM_OBJ_SSL_SESSION 4 +#define PEM_OBJ_PRIV_KEY 10 +#define PEM_OBJ_PRIV_RSA 11 +#define PEM_OBJ_PRIV_DSA 12 +#define PEM_OBJ_PRIV_DH 13 +#define PEM_OBJ_PUB_RSA 14 +#define PEM_OBJ_PUB_DSA 15 +#define PEM_OBJ_PUB_DH 16 +#define PEM_OBJ_DHPARAMS 17 +#define PEM_OBJ_DSAPARAMS 18 +#define PEM_OBJ_PRIV_RSA_PUBLIC 19 +#define PEM_OBJ_PRIV_ECDSA 20 +#define PEM_OBJ_PUB_ECDSA 21 +#define PEM_OBJ_ECPARAMETERS 22 + +#define PEM_ERROR 30 +#define PEM_DEK_DES_CBC 40 +#define PEM_DEK_IDEA_CBC 45 +#define PEM_DEK_DES_EDE 50 +#define PEM_DEK_DES_ECB 60 +#define PEM_DEK_RSA 70 +#define PEM_DEK_RSA_MD2 80 +#define PEM_DEK_RSA_MD5 90 + +#define PEM_MD_MD2 NID_md2 +#define PEM_MD_MD5 NID_md5 +#define PEM_MD_SHA NID_sha +#define PEM_MD_MD2_RSA NID_md2WithRSAEncryption +#define PEM_MD_MD5_RSA NID_md5WithRSAEncryption +#define PEM_MD_SHA_RSA NID_sha1WithRSAEncryption + +#define PEM_STRING_X509_OLD "X509 CERTIFICATE" +#define PEM_STRING_X509 "CERTIFICATE" +#define PEM_STRING_X509_PAIR "CERTIFICATE PAIR" +#define PEM_STRING_X509_TRUSTED "TRUSTED CERTIFICATE" +#define PEM_STRING_X509_REQ_OLD "NEW CERTIFICATE REQUEST" +#define PEM_STRING_X509_REQ "CERTIFICATE REQUEST" +#define PEM_STRING_X509_CRL "X509 CRL" +#define PEM_STRING_EVP_PKEY "ANY PRIVATE KEY" +#define PEM_STRING_PUBLIC "PUBLIC KEY" +#define PEM_STRING_RSA "RSA PRIVATE KEY" +#define PEM_STRING_RSA_PUBLIC "RSA PUBLIC KEY" +#define PEM_STRING_DSA "DSA PRIVATE KEY" +#define PEM_STRING_DSA_PUBLIC "DSA PUBLIC KEY" +#define PEM_STRING_PKCS7 "PKCS7" +#define PEM_STRING_PKCS7_SIGNED "PKCS #7 SIGNED DATA" +#define PEM_STRING_PKCS8 "ENCRYPTED PRIVATE KEY" +#define PEM_STRING_PKCS8INF "PRIVATE KEY" +#define PEM_STRING_DHPARAMS "DH PARAMETERS" +#define PEM_STRING_SSL_SESSION "SSL SESSION PARAMETERS" +#define PEM_STRING_DSAPARAMS "DSA PARAMETERS" +#define PEM_STRING_ECDSA_PUBLIC "ECDSA PUBLIC KEY" +#define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY" +#define PEM_STRING_PARAMETERS "PARAMETERS" +#define PEM_STRING_CMS "CMS" + + /* Note that this structure is initialised by PEM_SealInit and cleaned up + by PEM_SealFinal (at least for now) */ +typedef struct PEM_Encode_Seal_st + { + EVP_ENCODE_CTX encode; + EVP_MD_CTX md; + EVP_CIPHER_CTX cipher; + } PEM_ENCODE_SEAL_CTX; + +/* enc_type is one off */ +#define PEM_TYPE_ENCRYPTED 10 +#define PEM_TYPE_MIC_ONLY 20 +#define PEM_TYPE_MIC_CLEAR 30 +#define PEM_TYPE_CLEAR 40 + +typedef struct pem_recip_st + { + char *name; + X509_NAME *dn; + + int cipher; + int key_enc; + /* char iv[8]; unused and wrong size */ + } PEM_USER; + +typedef struct pem_ctx_st + { + int type; /* what type of object */ + + struct { + int version; + int mode; + } proc_type; + + char *domain; + + struct { + int cipher; + /* unused, and wrong size + unsigned char iv[8]; */ + } DEK_info; + + PEM_USER *originator; + + int num_recipient; + PEM_USER **recipient; + + EVP_MD *md; /* signature type */ + + int md_enc; /* is the md encrypted or not? */ + int md_len; /* length of md_data */ + char *md_data; /* message digest, could be pkey encrypted */ + + EVP_CIPHER *dec; /* date encryption cipher */ + int key_len; /* key length */ + unsigned char *key; /* key */ + /* unused, and wrong size + unsigned char iv[8]; */ + + + int data_enc; /* is the data encrypted */ + int data_len; + unsigned char *data; + } PEM_CTX; + +/* These macros make the PEM_read/PEM_write functions easier to maintain and + * write. Now they are all implemented with either: + * IMPLEMENT_PEM_rw(...) or IMPLEMENT_PEM_rw_cb(...) + */ + +#ifdef OPENSSL_NO_FP_API + +#define IMPLEMENT_PEM_read_fp(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_fp(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) /**/ + +#else + +#define IMPLEMENT_PEM_read_fp(name, type, str, asn1) \ +OPENSSL_EXPORT type *PEM_read_##name(FILE *fp, type **x, pem_password_cb *cb, void *u)\ +{ \ +return PEM_ASN1_read((d2i_of_void *)d2i_##asn1, str,fp,(void **)x,cb,u); \ +} + +#define IMPLEMENT_PEM_write_fp(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_##name(FILE *fp, type *x) \ +{ \ +return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,NULL,NULL,0,NULL,NULL); \ +} + +#define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_##name(FILE *fp, const type *x) \ +{ \ +return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,(void *)x,NULL,NULL,0,NULL,NULL); \ +} + +#define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, \ + void *u) \ + { \ + return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \ + } + +#define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, \ + void *u) \ + { \ + return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \ + } + +#endif + +#define IMPLEMENT_PEM_read_bio(name, type, str, asn1) \ +OPENSSL_EXPORT type *PEM_read_bio_##name(BIO *bp, type **x, pem_password_cb *cb, void *u)\ +{ \ +return PEM_ASN1_read_bio((d2i_of_void *)d2i_##asn1, str,bp,(void **)x,cb,u); \ +} + +#define IMPLEMENT_PEM_write_bio(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, type *x) \ +{ \ +return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,x,NULL,NULL,0,NULL,NULL); \ +} + +#define IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, const type *x) \ +{ \ +return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,(void *)x,NULL,NULL,0,NULL,NULL); \ +} + +#define IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \ + { \ + return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,x,enc,kstr,klen,cb,u); \ + } + +#define IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \ +OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \ + { \ + return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,(void *)x,enc,kstr,klen,cb,u); \ + } + +#define IMPLEMENT_PEM_write(name, type, str, asn1) \ + IMPLEMENT_PEM_write_bio(name, type, str, asn1) \ + IMPLEMENT_PEM_write_fp(name, type, str, asn1) + +#define IMPLEMENT_PEM_write_const(name, type, str, asn1) \ + IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \ + IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) + +#define IMPLEMENT_PEM_write_cb(name, type, str, asn1) \ + IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \ + IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) + +#define IMPLEMENT_PEM_write_cb_const(name, type, str, asn1) \ + IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \ + IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) + +#define IMPLEMENT_PEM_read(name, type, str, asn1) \ + IMPLEMENT_PEM_read_bio(name, type, str, asn1) \ + IMPLEMENT_PEM_read_fp(name, type, str, asn1) + +#define IMPLEMENT_PEM_rw(name, type, str, asn1) \ + IMPLEMENT_PEM_read(name, type, str, asn1) \ + IMPLEMENT_PEM_write(name, type, str, asn1) + +#define IMPLEMENT_PEM_rw_const(name, type, str, asn1) \ + IMPLEMENT_PEM_read(name, type, str, asn1) \ + IMPLEMENT_PEM_write_const(name, type, str, asn1) + +#define IMPLEMENT_PEM_rw_cb(name, type, str, asn1) \ + IMPLEMENT_PEM_read(name, type, str, asn1) \ + IMPLEMENT_PEM_write_cb(name, type, str, asn1) + +/* These are the same except they are for the declarations */ + +#if defined(OPENSSL_NO_FP_API) + +#define DECLARE_PEM_read_fp(name, type) /**/ +#define DECLARE_PEM_write_fp(name, type) /**/ +#define DECLARE_PEM_write_cb_fp(name, type) /**/ + +#else + +#define DECLARE_PEM_read_fp(name, type) \ + OPENSSL_EXPORT type *PEM_read_##name(FILE *fp, type **x, pem_password_cb *cb, void *u); + +#define DECLARE_PEM_write_fp(name, type) \ + OPENSSL_EXPORT int PEM_write_##name(FILE *fp, type *x); + +#define DECLARE_PEM_write_fp_const(name, type) \ + OPENSSL_EXPORT int PEM_write_##name(FILE *fp, const type *x); + +#define DECLARE_PEM_write_cb_fp(name, type) \ + OPENSSL_EXPORT int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, void *u); + +#endif + +#define DECLARE_PEM_read_bio(name, type) \ + OPENSSL_EXPORT type *PEM_read_bio_##name(BIO *bp, type **x, pem_password_cb *cb, void *u); + +#define DECLARE_PEM_write_bio(name, type) \ + OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, type *x); + +#define DECLARE_PEM_write_bio_const(name, type) \ + OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, const type *x); + +#define DECLARE_PEM_write_cb_bio(name, type) \ + OPENSSL_EXPORT int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \ + unsigned char *kstr, int klen, pem_password_cb *cb, void *u); + + +#define DECLARE_PEM_write(name, type) \ + DECLARE_PEM_write_bio(name, type) \ + DECLARE_PEM_write_fp(name, type) + +#define DECLARE_PEM_write_const(name, type) \ + DECLARE_PEM_write_bio_const(name, type) \ + DECLARE_PEM_write_fp_const(name, type) + +#define DECLARE_PEM_write_cb(name, type) \ + DECLARE_PEM_write_cb_bio(name, type) \ + DECLARE_PEM_write_cb_fp(name, type) + +#define DECLARE_PEM_read(name, type) \ + DECLARE_PEM_read_bio(name, type) \ + DECLARE_PEM_read_fp(name, type) + +#define DECLARE_PEM_rw(name, type) \ + DECLARE_PEM_read(name, type) \ + DECLARE_PEM_write(name, type) + +#define DECLARE_PEM_rw_const(name, type) \ + DECLARE_PEM_read(name, type) \ + DECLARE_PEM_write_const(name, type) + +#define DECLARE_PEM_rw_cb(name, type) \ + DECLARE_PEM_read(name, type) \ + DECLARE_PEM_write_cb(name, type) + +/* "userdata": new with OpenSSL 0.9.4 */ +typedef int pem_password_cb(char *buf, int size, int rwflag, void *userdata); + +OPENSSL_EXPORT int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher); +OPENSSL_EXPORT int PEM_do_header (EVP_CIPHER_INFO *cipher, unsigned char *data,long *len, pem_password_cb *callback,void *u); + +OPENSSL_EXPORT int PEM_read_bio(BIO *bp, char **name, char **header, unsigned char **data,long *len); +OPENSSL_EXPORT int PEM_write_bio(BIO *bp,const char *name, const char *hdr, const unsigned char *data, long len); +OPENSSL_EXPORT int PEM_bytes_read_bio(unsigned char **pdata, long *plen, char **pnm, const char *name, BIO *bp, pem_password_cb *cb, void *u); +OPENSSL_EXPORT void * PEM_ASN1_read_bio(d2i_of_void *d2i, const char *name, BIO *bp, void **x, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int PEM_ASN1_write_bio(i2d_of_void *i2d,const char *name,BIO *bp, void *x, const EVP_CIPHER *enc,unsigned char *kstr,int klen, pem_password_cb *cb, void *u); + +OPENSSL_EXPORT STACK_OF(X509_INFO) * PEM_X509_INFO_read_bio(BIO *bp, STACK_OF(X509_INFO) *sk, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int PEM_X509_INFO_write_bio(BIO *bp,X509_INFO *xi, EVP_CIPHER *enc, unsigned char *kstr, int klen, pem_password_cb *cd, void *u); + +OPENSSL_EXPORT int PEM_read(FILE *fp, char **name, char **header, unsigned char **data,long *len); +OPENSSL_EXPORT int PEM_write(FILE *fp, const char *name, const char *hdr, const unsigned char *data, long len); +OPENSSL_EXPORT void * PEM_ASN1_read(d2i_of_void *d2i, const char *name, FILE *fp, void **x, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int PEM_ASN1_write(i2d_of_void *i2d,const char *name,FILE *fp, void *x,const EVP_CIPHER *enc,unsigned char *kstr, int klen,pem_password_cb *callback, void *u); +OPENSSL_EXPORT STACK_OF(X509_INFO) * PEM_X509_INFO_read(FILE *fp, STACK_OF(X509_INFO) *sk, pem_password_cb *cb, void *u); + +OPENSSL_EXPORT int PEM_SealInit(PEM_ENCODE_SEAL_CTX *ctx, EVP_CIPHER *type, EVP_MD *md_type, unsigned char **ek, int *ekl, unsigned char *iv, EVP_PKEY **pubk, int npubk); +OPENSSL_EXPORT void PEM_SealUpdate(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *out, int *outl, unsigned char *in, int inl); +OPENSSL_EXPORT int PEM_SealFinal(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *sig,int *sigl, unsigned char *out, int *outl, EVP_PKEY *priv); + +OPENSSL_EXPORT void PEM_SignInit(EVP_MD_CTX *ctx, EVP_MD *type); +OPENSSL_EXPORT void PEM_SignUpdate(EVP_MD_CTX *ctx,unsigned char *d,unsigned int cnt); +OPENSSL_EXPORT int PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, EVP_PKEY *pkey); + +/* PEM_def_callback treats |userdata| as a string and copies it into |buf|, + * assuming its |size| is sufficient. Returns the length of the string, or 0 + * if there is not enough room. If either |buf| or |userdata| is NULL, 0 is + * returned. Note that this is different from OpenSSL, which prompts for a + * password. */ +OPENSSL_EXPORT int PEM_def_callback(char *buf, int size, int rwflag, void *userdata); +OPENSSL_EXPORT void PEM_proc_type(char *buf, int type); +OPENSSL_EXPORT void PEM_dek_info(char *buf, const char *type, int len, char *str); + + +DECLARE_PEM_rw(X509, X509) + +DECLARE_PEM_rw(X509_AUX, X509) + +DECLARE_PEM_rw(X509_CERT_PAIR, X509_CERT_PAIR) + +DECLARE_PEM_rw(X509_REQ, X509_REQ) +DECLARE_PEM_write(X509_REQ_NEW, X509_REQ) + +DECLARE_PEM_rw(X509_CRL, X509_CRL) + +/* DECLARE_PEM_rw(PKCS7, PKCS7) */ + +DECLARE_PEM_rw(NETSCAPE_CERT_SEQUENCE, NETSCAPE_CERT_SEQUENCE) + +DECLARE_PEM_rw(PKCS8, X509_SIG) + +DECLARE_PEM_rw(PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO) + +DECLARE_PEM_rw_cb(RSAPrivateKey, RSA) + +DECLARE_PEM_rw_const(RSAPublicKey, RSA) +DECLARE_PEM_rw(RSA_PUBKEY, RSA) + +#ifndef OPENSSL_NO_DSA + +DECLARE_PEM_rw_cb(DSAPrivateKey, DSA) + +DECLARE_PEM_rw(DSA_PUBKEY, DSA) + +DECLARE_PEM_rw_const(DSAparams, DSA) + +#endif + +DECLARE_PEM_rw_cb(ECPrivateKey, EC_KEY) +DECLARE_PEM_rw(EC_PUBKEY, EC_KEY) + + +DECLARE_PEM_rw_const(DHparams, DH) + + +DECLARE_PEM_rw_cb(PrivateKey, EVP_PKEY) + +DECLARE_PEM_rw(PUBKEY, EVP_PKEY) + +OPENSSL_EXPORT int PEM_write_bio_PKCS8PrivateKey_nid(BIO *bp, EVP_PKEY *x, int nid, char *kstr, int klen, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int PEM_write_bio_PKCS8PrivateKey(BIO *, EVP_PKEY *, const EVP_CIPHER *, char *, int, pem_password_cb *, void *); +OPENSSL_EXPORT int i2d_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY *x, const EVP_CIPHER *enc, char *kstr, int klen, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int i2d_PKCS8PrivateKey_nid_bio(BIO *bp, EVP_PKEY *x, int nid, char *kstr, int klen, pem_password_cb *cb, void *u); +OPENSSL_EXPORT EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, void *u); + +OPENSSL_EXPORT int i2d_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc, char *kstr, int klen, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int i2d_PKCS8PrivateKey_nid_fp(FILE *fp, EVP_PKEY *x, int nid, char *kstr, int klen, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int PEM_write_PKCS8PrivateKey_nid(FILE *fp, EVP_PKEY *x, int nid, char *kstr, int klen, pem_password_cb *cb, void *u); + +OPENSSL_EXPORT EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u); + +OPENSSL_EXPORT int PEM_write_PKCS8PrivateKey(FILE *fp,EVP_PKEY *x,const EVP_CIPHER *enc, char *kstr,int klen, pem_password_cb *cd, void *u); + +OPENSSL_EXPORT EVP_PKEY *PEM_read_bio_Parameters(BIO *bp, EVP_PKEY **x); +OPENSSL_EXPORT int PEM_write_bio_Parameters(BIO *bp, EVP_PKEY *x); + + +OPENSSL_EXPORT EVP_PKEY *b2i_PrivateKey(const unsigned char **in, long length); +OPENSSL_EXPORT EVP_PKEY *b2i_PublicKey(const unsigned char **in, long length); +OPENSSL_EXPORT EVP_PKEY *b2i_PrivateKey_bio(BIO *in); +OPENSSL_EXPORT EVP_PKEY *b2i_PublicKey_bio(BIO *in); +OPENSSL_EXPORT int i2b_PrivateKey_bio(BIO *out, EVP_PKEY *pk); +OPENSSL_EXPORT int i2b_PublicKey_bio(BIO *out, EVP_PKEY *pk); +OPENSSL_EXPORT EVP_PKEY *b2i_PVK_bio(BIO *in, pem_password_cb *cb, void *u); +OPENSSL_EXPORT int i2b_PVK_bio(BIO *out, EVP_PKEY *pk, int enclevel, pem_password_cb *cb, void *u); + + +void ERR_load_PEM_strings(void); + + +#ifdef __cplusplus +} +#endif + +#define PEM_R_BAD_BASE64_DECODE 100 +#define PEM_R_BAD_DECRYPT 101 +#define PEM_R_BAD_END_LINE 102 +#define PEM_R_BAD_IV_CHARS 103 +#define PEM_R_BAD_PASSWORD_READ 104 +#define PEM_R_CIPHER_IS_NULL 105 +#define PEM_R_ERROR_CONVERTING_PRIVATE_KEY 106 +#define PEM_R_NOT_DEK_INFO 107 +#define PEM_R_NOT_ENCRYPTED 108 +#define PEM_R_NOT_PROC_TYPE 109 +#define PEM_R_NO_START_LINE 110 +#define PEM_R_READ_KEY 111 +#define PEM_R_SHORT_HEADER 112 +#define PEM_R_UNSUPPORTED_CIPHER 113 +#define PEM_R_UNSUPPORTED_ENCRYPTION 114 + +#endif /* OPENSSL_HEADER_PEM_H */ diff --git a/project/jni/boringssl/include/openssl/pkcs12.h b/project/jni/boringssl/include/openssl/pkcs12.h new file mode 100644 index 000000000..b5e951638 --- /dev/null +++ b/project/jni/boringssl/include/openssl/pkcs12.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "pkcs8.h" diff --git a/project/jni/boringssl/include/openssl/pkcs7.h b/project/jni/boringssl/include/openssl/pkcs7.h new file mode 100644 index 000000000..6e5e43307 --- /dev/null +++ b/project/jni/boringssl/include/openssl/pkcs7.h @@ -0,0 +1,16 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ diff --git a/project/jni/boringssl/include/openssl/pkcs8.h b/project/jni/boringssl/include/openssl/pkcs8.h new file mode 100644 index 000000000..6b51f8550 --- /dev/null +++ b/project/jni/boringssl/include/openssl/pkcs8.h @@ -0,0 +1,220 @@ +/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + * project 1999. + */ +/* ==================================================================== + * Copyright (c) 1999 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + + +#ifndef OPENSSL_HEADER_PKCS8_H +#define OPENSSL_HEADER_PKCS8_H + +#include +#include + + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* PKCS8_encrypt_pbe serializes and encrypts a PKCS8_PRIV_KEY_INFO with PBES1 or + * PBES2 as defined in PKCS #5. Only pbeWithSHAAnd128BitRC4, + * pbeWithSHAAnd3-KeyTripleDES-CBC and pbeWithSHA1And40BitRC2, defined in PKCS + * #12, and PBES2, are supported. PBES2 is selected by setting |cipher| and + * passing -1 for |pbe_nid|. Otherwise, PBES1 is used and |cipher| is ignored. + * + * The |pass_raw_len| bytes pointed to by |pass_raw| are used as the password. + * Note that any conversions from the password as supplied in a text string + * (such as those specified in B.1 of PKCS #12) must be performed by the caller. + * + * If |salt| is NULL, a random salt of |salt_len| bytes is generated. If + * |salt_len| is zero, a default salt length is used instead. + * + * The resulting structure is stored in an X509_SIG which must be freed by the + * caller. + * + * TODO(davidben): Really? An X509_SIG? OpenSSL probably did that because it has + * the same structure as EncryptedPrivateKeyInfo. */ +OPENSSL_EXPORT X509_SIG *PKCS8_encrypt_pbe(int pbe_nid, + const EVP_CIPHER *cipher, + const uint8_t *pass_raw, + size_t pass_raw_len, + uint8_t *salt, size_t salt_len, + int iterations, + PKCS8_PRIV_KEY_INFO *p8inf); + +/* PKCS8_decrypt_pbe decrypts and decodes a PKCS8_PRIV_KEY_INFO with PBES1 or + * PBES2 as defined in PKCS #5. Only pbeWithSHAAnd128BitRC4, + * pbeWithSHAAnd3-KeyTripleDES-CBC and pbeWithSHA1And40BitRC2, and PBES2, + * defined in PKCS #12, are supported. + * + * The |pass_raw_len| bytes pointed to by |pass_raw| are used as the password. + * Note that any conversions from the password as supplied in a text string + * (such as those specified in B.1 of PKCS #12) must be performed by the caller. + * + * The resulting structure must be freed by the caller. */ +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *PKCS8_decrypt_pbe(X509_SIG *pkcs8, + const uint8_t *pass_raw, + size_t pass_raw_len); + +/* PKCS12_get_key_and_certs parses a PKCS#12 structure from |in|, authenticates + * and decrypts it using |password|, sets |*out_key| to the included private + * key and appends the included certificates to |out_certs|. It returns one on + * success and zero on error. The caller takes ownership of the outputs. */ +OPENSSL_EXPORT int PKCS12_get_key_and_certs(EVP_PKEY **out_key, + STACK_OF(X509) *out_certs, + CBS *in, const char *password); + + +/* Deprecated functions. */ + +/* PKCS8_encrypt calls |PKCS8_encrypt_pbe| after (in the PKCS#12 case) treating + * |pass| as an ASCII string, appending U+0000, and converting to UCS-2. (So the + * empty password encodes as two NUL bytes.) In the PBES2 case, the password is + * unchanged. */ +OPENSSL_EXPORT X509_SIG *PKCS8_encrypt(int pbe_nid, const EVP_CIPHER *cipher, + const char *pass, int pass_len, + uint8_t *salt, size_t salt_len, + int iterations, + PKCS8_PRIV_KEY_INFO *p8inf); + +/* PKCS8_decrypt calls PKCS8_decrypt_pbe after (in the PKCS#12 case) treating + * |pass| as an ASCII string, appending U+0000, and converting to UCS-2. (So the + * empty password encodes as two NUL bytes.) In the PBES2 case, the password is + * unchanged. */ +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *PKCS8_decrypt(X509_SIG *pkcs8, + const char *pass, + int pass_len); + +/* PKCS12_PBE_add does nothing. It exists for compatibility with OpenSSL. */ +OPENSSL_EXPORT void PKCS12_PBE_add(void); + +/* d2i_PKCS12 is a dummy function that copies |*ber_bytes| into a + * |PKCS12| structure. The |out_p12| argument must be NULL. On exit, + * |*ber_bytes| will be advanced by |ber_len|. It returns a fresh |PKCS12| + * structure or NULL on error. + * + * Note: unlike other d2i functions, |d2i_PKCS12| will always consume |ber_len| + * bytes.*/ +OPENSSL_EXPORT PKCS12 *d2i_PKCS12(PKCS12 **out_p12, const uint8_t **ber_bytes, + size_t ber_len); + +/* d2i_PKCS12_bio acts like |d2i_PKCS12| but reads from a |BIO|. */ +OPENSSL_EXPORT PKCS12* d2i_PKCS12_bio(BIO *bio, PKCS12 **out_p12); + +/* d2i_PKCS12_fp acts like |d2i_PKCS12| but reads from a |FILE|. */ +OPENSSL_EXPORT PKCS12* d2i_PKCS12_fp(FILE *fp, PKCS12 **out_p12); + +/* PKCS12_parse calls |PKCS12_get_key_and_certs| on the ASN.1 data stored in + * |p12|. The |out_pkey| and |out_cert| arguments must not be NULL and, on + * successful exit, the private key and first certificate will be stored in + * them. The |out_ca_certs| argument may be NULL but, if not, then any extra + * certificates will be appended to |*out_ca_certs|. If |*out_ca_certs| is NULL + * then it will be set to a freshly allocated stack containing the extra certs. + * + * It returns one on success and zero on error. */ +OPENSSL_EXPORT int PKCS12_parse(const PKCS12 *p12, const char *password, + EVP_PKEY **out_pkey, X509 **out_cert, + STACK_OF(X509) **out_ca_certs); + +/* PKCS12_verify_mac returns one if |password| is a valid password for |p12| + * and zero otherwise. Since |PKCS12_parse| doesn't take a length parameter, + * it's not actually possible to use a non-NUL-terminated password to actually + * get anything from a |PKCS12|. Thus |password| and |password_len| may be + * |NULL| and zero, respectively, or else |password_len| may be -1, or else + * |password[password_len]| must be zero and no other NUL bytes may appear in + * |password|. If the |password_len| checks fail, zero is returned + * immediately. */ +OPENSSL_EXPORT int PKCS12_verify_mac(const PKCS12 *p12, const char *password, + int password_len); + +/* PKCS12_free frees |p12| and its contents. */ +OPENSSL_EXPORT void PKCS12_free(PKCS12 *p12); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define PKCS8_R_BAD_PKCS12_DATA 100 +#define PKCS8_R_BAD_PKCS12_VERSION 101 +#define PKCS8_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 102 +#define PKCS8_R_CRYPT_ERROR 103 +#define PKCS8_R_DECODE_ERROR 104 +#define PKCS8_R_ENCODE_ERROR 105 +#define PKCS8_R_ENCRYPT_ERROR 106 +#define PKCS8_R_ERROR_SETTING_CIPHER_PARAMS 107 +#define PKCS8_R_INCORRECT_PASSWORD 108 +#define PKCS8_R_KEYGEN_FAILURE 109 +#define PKCS8_R_KEY_GEN_ERROR 110 +#define PKCS8_R_METHOD_NOT_SUPPORTED 111 +#define PKCS8_R_MISSING_MAC 112 +#define PKCS8_R_MULTIPLE_PRIVATE_KEYS_IN_PKCS12 113 +#define PKCS8_R_PKCS12_PUBLIC_KEY_INTEGRITY_NOT_SUPPORTED 114 +#define PKCS8_R_PKCS12_TOO_DEEPLY_NESTED 115 +#define PKCS8_R_PRIVATE_KEY_DECODE_ERROR 116 +#define PKCS8_R_PRIVATE_KEY_ENCODE_ERROR 117 +#define PKCS8_R_TOO_LONG 118 +#define PKCS8_R_UNKNOWN_ALGORITHM 119 +#define PKCS8_R_UNKNOWN_CIPHER 120 +#define PKCS8_R_UNKNOWN_CIPHER_ALGORITHM 121 +#define PKCS8_R_UNKNOWN_DIGEST 122 +#define PKCS8_R_UNKNOWN_HASH 123 +#define PKCS8_R_UNSUPPORTED_PRIVATE_KEY_ALGORITHM 124 +#define PKCS8_R_UNSUPPORTED_KEYLENGTH 125 +#define PKCS8_R_UNSUPPORTED_SALT_TYPE 126 +#define PKCS8_R_UNSUPPORTED_CIPHER 127 +#define PKCS8_R_UNSUPPORTED_KEY_DERIVATION_FUNCTION 128 +#define PKCS8_R_BAD_ITERATION_COUNT 129 +#define PKCS8_R_UNSUPPORTED_PRF 130 + +#endif /* OPENSSL_HEADER_PKCS8_H */ diff --git a/project/jni/boringssl/include/openssl/poly1305.h b/project/jni/boringssl/include/openssl/poly1305.h new file mode 100644 index 000000000..b4e23e298 --- /dev/null +++ b/project/jni/boringssl/include/openssl/poly1305.h @@ -0,0 +1,51 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_POLY1305_H +#define OPENSSL_HEADER_POLY1305_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +typedef uint8_t poly1305_state[512]; + +/* CRYPTO_poly1305_init sets up |state| so that it can be used to calculate an + * authentication tag with the one-time key |key|. Note that |key| is a + * one-time key and therefore there is no `reset' method because that would + * enable several messages to be authenticated with the same key. */ +OPENSSL_EXPORT void CRYPTO_poly1305_init(poly1305_state* state, + const uint8_t key[32]); + +/* CRYPTO_poly1305_update processes |in_len| bytes from |in|. It can be called + * zero or more times after poly1305_init. */ +OPENSSL_EXPORT void CRYPTO_poly1305_update(poly1305_state* state, + const uint8_t* in, + size_t in_len); + +/* CRYPTO_poly1305_finish completes the poly1305 calculation and writes a 16 + * byte authentication tag to |mac|. The |mac| address must be 16-byte + * aligned. */ +OPENSSL_EXPORT void CRYPTO_poly1305_finish(poly1305_state* state, + uint8_t mac[16]); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_POLY1305_H */ diff --git a/project/jni/boringssl/include/openssl/pqueue.h b/project/jni/boringssl/include/openssl/pqueue.h new file mode 100644 index 000000000..ceb1fa2a7 --- /dev/null +++ b/project/jni/boringssl/include/openssl/pqueue.h @@ -0,0 +1,146 @@ +/* + * DTLS implementation written by Nagendra Modadugu + * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. + */ +/* ==================================================================== + * Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_PQUEUE_H +#define OPENSSL_HEADER_PQUEUE_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Priority queue. + * + * The priority queue maintains a linked-list of nodes, each with a unique, + * 64-bit priority, in ascending priority order. */ + +typedef struct _pqueue *pqueue; + +typedef struct _pitem { + uint8_t priority[8]; /* 64-bit value in big-endian encoding */ + void *data; + struct _pitem *next; +} pitem; + +typedef struct _pitem *piterator; + + +/* Creating and freeing queues. */ + +/* pqueue_new allocates a fresh, empty priority queue object and returns it, or + * NULL on error. */ +OPENSSL_EXPORT pqueue pqueue_new(void); + +/* pqueue_free frees |pq| but not any of the items it points to. Thus |pq| must + * be empty or a memory leak will occur. */ +OPENSSL_EXPORT void pqueue_free(pqueue pq); + + +/* Creating and freeing items. */ + +/* pitem_new allocates a fresh priority queue item that points at |data| and + * has a priority given by |prio64be|, which is a 64-bit, unsigned number + * expressed in big-endian form. It returns the fresh item, or NULL on + * error. */ +OPENSSL_EXPORT pitem *pitem_new(uint8_t prio64be[8], void *data); + +/* pitem_free frees |item|, but not any data that it points to. */ +OPENSSL_EXPORT void pitem_free(pitem *item); + + +/* Queue accessor functions */ + +/* pqueue_peek returns the item with the smallest priority from |pq|, or NULL + * if empty. */ +OPENSSL_EXPORT pitem *pqueue_peek(pqueue pq); + +/* pqueue_find returns the item whose priority matches |prio64be| or NULL if no + * such item exists. */ +OPENSSL_EXPORT pitem *pqueue_find(pqueue pq, uint8_t *prio64be); + + +/* Queue mutation functions */ + +/* pqueue_insert inserts |item| into |pq| and returns item. */ +OPENSSL_EXPORT pitem *pqueue_insert(pqueue pq, pitem *item); + +/* pqueue_pop takes the item with the least priority from |pq| and returns it, + * or NULL if |pq| is empty. */ +OPENSSL_EXPORT pitem *pqueue_pop(pqueue pq); + +/* pqueue_size returns the number of items in |pq|. */ +OPENSSL_EXPORT size_t pqueue_size(pqueue pq); + + +/* Iterating */ + +/* pqueue_iterator returns an iterator that can be used to iterate over the + * contents of the queue. */ +OPENSSL_EXPORT piterator pqueue_iterator(pqueue pq); + +/* pqueue_next returns the current value of |iter| and advances it to the next + * position. If the iterator has advanced over all the elements, it returns + * NULL. */ +OPENSSL_EXPORT pitem *pqueue_next(piterator *iter); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_PQUEUE_H */ diff --git a/project/jni/boringssl/include/openssl/rand.h b/project/jni/boringssl/include/openssl/rand.h new file mode 100644 index 000000000..3a8e357cc --- /dev/null +++ b/project/jni/boringssl/include/openssl/rand.h @@ -0,0 +1,113 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#ifndef OPENSSL_HEADER_RAND_H +#define OPENSSL_HEADER_RAND_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Random number generation. */ + + +/* RAND_bytes writes |len| bytes of random data to |buf| and returns one. */ +OPENSSL_EXPORT int RAND_bytes(uint8_t *buf, size_t len); + +/* RAND_cleanup frees any resources used by the RNG. This is not safe if other + * threads might still be calling |RAND_bytes|. */ +OPENSSL_EXPORT void RAND_cleanup(void); + + +/* Obscure functions. */ + +#if !defined(OPENSSL_WINDOWS) +/* RAND_set_urandom_fd causes the module to use a copy of |fd| for system + * randomness rather opening /dev/urandom internally. The caller retains + * ownership of |fd| and is at liberty to close it at any time. This is useful + * if, due to a sandbox, /dev/urandom isn't available. If used, it must be + * called before the first call to |RAND_bytes|, and it is mutually exclusive + * with |RAND_enable_fork_unsafe_buffering|. + * + * |RAND_set_urandom_fd| does not buffer any entropy, so it is safe to call + * |fork| at any time after calling |RAND_set_urandom_fd|. */ +OPENSSL_EXPORT void RAND_set_urandom_fd(int fd); + +/* RAND_enable_fork_unsafe_buffering enables efficient buffered reading of + * /dev/urandom. It adds an overhead of a few KB of memory per thread. It must + * be called before the first call to |RAND_bytes| and it is mutually exclusive + * with calls to |RAND_set_urandom_fd|. + * + * If |fd| is non-negative then a copy of |fd| will be used rather than opening + * /dev/urandom internally. Like |RAND_set_urandom_fd|, the caller retains + * ownership of |fd|. If |fd| is negative then /dev/urandom will be opened and + * any error from open(2) crashes the address space. + * + * It has an unusual name because the buffer is unsafe across calls to |fork|. + * Hence, this function should never be called by libraries. */ +OPENSSL_EXPORT void RAND_enable_fork_unsafe_buffering(int fd); +#endif + + +/* Deprecated functions */ + +/* RAND_pseudo_bytes is a wrapper around |RAND_bytes|. */ +OPENSSL_EXPORT int RAND_pseudo_bytes(uint8_t *buf, size_t len); + +/* RAND_seed reads a single byte of random data to ensure that any file + * descriptors etc are opened. */ +OPENSSL_EXPORT void RAND_seed(const void *buf, int num); + +/* RAND_load_file returns a nonnegative number. */ +OPENSSL_EXPORT int RAND_load_file(const char *path, long num); + +/* RAND_add does nothing. */ +OPENSSL_EXPORT void RAND_add(const void *buf, int num, double entropy); + +/* RAND_egd returns 255. */ +OPENSSL_EXPORT int RAND_egd(const char *); + +/* RAND_poll returns one. */ +OPENSSL_EXPORT int RAND_poll(void); + +/* RAND_status returns one. */ +OPENSSL_EXPORT int RAND_status(void); + +/* rand_meth_st is typedefed to |RAND_METHOD| in base.h. It isn't used; it + * exists only to be the return type of |RAND_SSLeay|. It's + * external so that variables of this type can be initialized. */ +struct rand_meth_st { + void (*seed) (const void *buf, int num); + int (*bytes) (uint8_t *buf, size_t num); + void (*cleanup) (void); + void (*add) (const void *buf, int num, double entropy); + int (*pseudorand) (uint8_t *buf, size_t num); + int (*status) (void); +}; + +/* RAND_SSLeay returns a pointer to a dummy |RAND_METHOD|. */ +OPENSSL_EXPORT RAND_METHOD *RAND_SSLeay(void); + +/* RAND_set_rand_method does nothing. */ +OPENSSL_EXPORT void RAND_set_rand_method(const RAND_METHOD *); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_RAND_H */ diff --git a/project/jni/boringssl/include/openssl/rc4.h b/project/jni/boringssl/include/openssl/rc4.h new file mode 100644 index 000000000..0619cac35 --- /dev/null +++ b/project/jni/boringssl/include/openssl/rc4.h @@ -0,0 +1,90 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_RC4_H +#define OPENSSL_HEADER_RC4_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* RC4. */ + + +struct rc4_key_st { + uint32_t x, y; + uint32_t data[256]; +} /* RC4_KEY */; + +/* RC4_set_key performs an RC4 key schedule and initialises |rc4key| with |len| + * bytes of key material from |key|. */ +OPENSSL_EXPORT void RC4_set_key(RC4_KEY *rc4key, unsigned len, + const uint8_t *key); + +/* RC4 encrypts (or decrypts, it's the same with RC4) |len| bytes from |in| to + * |out|. */ +OPENSSL_EXPORT void RC4(RC4_KEY *key, size_t len, const uint8_t *in, + uint8_t *out); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_RC4_H */ diff --git a/project/jni/boringssl/include/openssl/rsa.h b/project/jni/boringssl/include/openssl/rsa.h new file mode 100644 index 000000000..304c5558c --- /dev/null +++ b/project/jni/boringssl/include/openssl/rsa.h @@ -0,0 +1,637 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_RSA_H +#define OPENSSL_HEADER_RSA_H + +#include + +#include +#include +#include +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* rsa.h contains functions for handling encryption and signature using RSA. */ + + +/* Allocation and destruction. */ + +/* RSA_new returns a new, empty RSA object or NULL on error. */ +OPENSSL_EXPORT RSA *RSA_new(void); + +/* RSA_new_method acts the same as |RSA_new| but takes an explicit |ENGINE|. */ +OPENSSL_EXPORT RSA *RSA_new_method(const ENGINE *engine); + +/* RSA_free decrements the reference count of |rsa| and frees it if the + * reference count drops to zero. */ +OPENSSL_EXPORT void RSA_free(RSA *rsa); + +/* RSA_up_ref increments the reference count of |rsa|. */ +OPENSSL_EXPORT int RSA_up_ref(RSA *rsa); + + +/* Key generation. */ + +/* RSA_generate_key_ex generates a new RSA key where the modulus has size + * |bits| and the public exponent is |e|. If unsure, |RSA_F4| is a good value + * for |e|. If |cb| is not NULL then it is called during the key generation + * process. In addition to the calls documented for |BN_generate_prime_ex|, it + * is called with event=2 when the n'th prime is rejected as unsuitable and + * with event=3 when a suitable value for |p| is found. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, + BN_GENCB *cb); + +/* RSA_generate_multi_prime_key acts like |RSA_generate_key_ex| but can + * generate an RSA private key with more than two primes. */ +OPENSSL_EXPORT int RSA_generate_multi_prime_key(RSA *rsa, int bits, + int num_primes, BIGNUM *e, + BN_GENCB *cb); + + +/* Encryption / Decryption */ + +/* Padding types for encryption. */ +#define RSA_PKCS1_PADDING 1 +#define RSA_NO_PADDING 3 +#define RSA_PKCS1_OAEP_PADDING 4 +/* RSA_PKCS1_PSS_PADDING can only be used via the EVP interface. */ +#define RSA_PKCS1_PSS_PADDING 6 + +/* RSA_encrypt encrypts |in_len| bytes from |in| to the public key from |rsa| + * and writes, at most, |max_out| bytes of encrypted data to |out|. The + * |max_out| argument must be, at least, |RSA_size| in order to ensure success. + * + * It returns 1 on success or zero on error. + * + * The |padding| argument must be one of the |RSA_*_PADDING| values. If in + * doubt, use |RSA_PKCS1_OAEP_PADDING| for new protocols but + * |RSA_PKCS1_PADDING| is most common. */ +OPENSSL_EXPORT int RSA_encrypt(RSA *rsa, size_t *out_len, uint8_t *out, + size_t max_out, const uint8_t *in, size_t in_len, + int padding); + +/* RSA_decrypt decrypts |in_len| bytes from |in| with the private key from + * |rsa| and writes, at most, |max_out| bytes of plaintext to |out|. The + * |max_out| argument must be, at least, |RSA_size| in order to ensure success. + * + * It returns 1 on success or zero on error. + * + * The |padding| argument must be one of the |RSA_*_PADDING| values. If in + * doubt, use |RSA_PKCS1_OAEP_PADDING| for new protocols. + * + * Passing |RSA_PKCS1_PADDING| into this function is deprecated and insecure. If + * implementing a protocol using RSAES-PKCS1-V1_5, use |RSA_NO_PADDING| and then + * check padding in constant-time combined with a swap to a random session key + * or other mitigation. See "Chosen Ciphertext Attacks Against Protocols Based + * on the RSA Encryption Standard PKCS #1", Daniel Bleichenbacher, Advances in + * Cryptology (Crypto '98). */ +OPENSSL_EXPORT int RSA_decrypt(RSA *rsa, size_t *out_len, uint8_t *out, + size_t max_out, const uint8_t *in, size_t in_len, + int padding); + +/* RSA_public_encrypt encrypts |flen| bytes from |from| to the public key in + * |rsa| and writes the encrypted data to |to|. The |to| buffer must have at + * least |RSA_size| bytes of space. It returns the number of bytes written, or + * -1 on error. The |padding| argument must be one of the |RSA_*_PADDING| + * values. If in doubt, use |RSA_PKCS1_OAEP_PADDING| for new protocols but + * |RSA_PKCS1_PADDING| is most common. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |RSA_encrypt| instead. */ +OPENSSL_EXPORT int RSA_public_encrypt(size_t flen, const uint8_t *from, + uint8_t *to, RSA *rsa, int padding); + +/* RSA_private_decrypt decrypts |flen| bytes from |from| with the public key in + * |rsa| and writes the plaintext to |to|. The |to| buffer must have at least + * |RSA_size| bytes of space. It returns the number of bytes written, or -1 on + * error. The |padding| argument must be one of the |RSA_*_PADDING| values. If + * in doubt, use |RSA_PKCS1_OAEP_PADDING| for new protocols. Passing + * |RSA_PKCS1_PADDING| into this function is deprecated and insecure. See + * |RSA_decrypt|. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |RSA_decrypt| instead. */ +OPENSSL_EXPORT int RSA_private_decrypt(size_t flen, const uint8_t *from, + uint8_t *to, RSA *rsa, int padding); + + +/* Signing / Verification */ + +/* RSA_sign signs |in_len| bytes of digest from |in| with |rsa| using + * RSASSA-PKCS1-v1_5. It writes, at most, |RSA_size(rsa)| bytes to |out|. On + * successful return, the actual number of bytes written is written to + * |*out_len|. + * + * The |hash_nid| argument identifies the hash function used to calculate |in| + * and is embedded in the resulting signature. For example, it might be + * |NID_sha256|. + * + * It returns 1 on success and zero on error. */ +OPENSSL_EXPORT int RSA_sign(int hash_nid, const uint8_t *in, + unsigned int in_len, uint8_t *out, + unsigned int *out_len, RSA *rsa); + +/* RSA_sign_raw signs |in_len| bytes from |in| with the public key from |rsa| + * and writes, at most, |max_out| bytes of signature data to |out|. The + * |max_out| argument must be, at least, |RSA_size| in order to ensure success. + * + * It returns 1 on success or zero on error. + * + * The |padding| argument must be one of the |RSA_*_PADDING| values. If in + * doubt, |RSA_PKCS1_PADDING| is the most common but |RSA_PKCS1_PSS_PADDING| + * (via the |EVP_PKEY| interface) is preferred for new protocols. */ +OPENSSL_EXPORT int RSA_sign_raw(RSA *rsa, size_t *out_len, uint8_t *out, + size_t max_out, const uint8_t *in, + size_t in_len, int padding); + +/* RSA_verify verifies that |sig_len| bytes from |sig| are a valid, + * RSASSA-PKCS1-v1_5 signature of |msg_len| bytes at |msg| by |rsa|. + * + * The |hash_nid| argument identifies the hash function used to calculate |in| + * and is embedded in the resulting signature in order to prevent hash + * confusion attacks. For example, it might be |NID_sha256|. + * + * It returns one if the signature is valid and zero otherwise. + * + * WARNING: this differs from the original, OpenSSL function which additionally + * returned -1 on error. */ +OPENSSL_EXPORT int RSA_verify(int hash_nid, const uint8_t *msg, size_t msg_len, + const uint8_t *sig, size_t sig_len, RSA *rsa); + +/* RSA_verify_raw verifies |in_len| bytes of signature from |in| using the + * public key from |rsa| and writes, at most, |max_out| bytes of plaintext to + * |out|. The |max_out| argument must be, at least, |RSA_size| in order to + * ensure success. + * + * It returns 1 on success or zero on error. + * + * The |padding| argument must be one of the |RSA_*_PADDING| values. If in + * doubt, |RSA_PKCS1_PADDING| is the most common but |RSA_PKCS1_PSS_PADDING| + * (via the |EVP_PKEY| interface) is preferred for new protocols. */ +OPENSSL_EXPORT int RSA_verify_raw(RSA *rsa, size_t *out_len, uint8_t *out, + size_t max_out, const uint8_t *in, + size_t in_len, int padding); + +/* RSA_private_encrypt encrypts |flen| bytes from |from| with the private key in + * |rsa| and writes the encrypted data to |to|. The |to| buffer must have at + * least |RSA_size| bytes of space. It returns the number of bytes written, or + * -1 on error. The |padding| argument must be one of the |RSA_*_PADDING| + * values. If in doubt, |RSA_PKCS1_PADDING| is the most common but + * |RSA_PKCS1_PSS_PADDING| (via the |EVP_PKEY| interface) is preferred for new + * protocols. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |RSA_sign_raw| instead. */ +OPENSSL_EXPORT int RSA_private_encrypt(size_t flen, const uint8_t *from, + uint8_t *to, RSA *rsa, int padding); + +/* RSA_public_decrypt verifies |flen| bytes of signature from |from| using the + * public key in |rsa| and writes the plaintext to |to|. The |to| buffer must + * have at least |RSA_size| bytes of space. It returns the number of bytes + * written, or -1 on error. The |padding| argument must be one of the + * |RSA_*_PADDING| values. If in doubt, |RSA_PKCS1_PADDING| is the most common + * but |RSA_PKCS1_PSS_PADDING| (via the |EVP_PKEY| interface) is preferred for + * new protocols. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |RSA_verify_raw| instead. */ +OPENSSL_EXPORT int RSA_public_decrypt(size_t flen, const uint8_t *from, + uint8_t *to, RSA *rsa, int padding); + + +/* Utility functions. */ + +/* RSA_size returns the number of bytes in the modulus, which is also the size + * of a signature or encrypted value using |rsa|. */ +OPENSSL_EXPORT unsigned RSA_size(const RSA *rsa); + +/* RSA_is_opaque returns one if |rsa| is opaque and doesn't expose its key + * material. Otherwise it returns zero. */ +OPENSSL_EXPORT int RSA_is_opaque(const RSA *rsa); + +/* RSA_supports_digest returns one if |rsa| supports signing digests + * of type |md|. Otherwise it returns zero. */ +OPENSSL_EXPORT int RSA_supports_digest(const RSA *rsa, const EVP_MD *md); + +/* RSAPublicKey_dup allocates a fresh |RSA| and copies the public key from + * |rsa| into it. It returns the fresh |RSA| object, or NULL on error. */ +OPENSSL_EXPORT RSA *RSAPublicKey_dup(const RSA *rsa); + +/* RSAPrivateKey_dup allocates a fresh |RSA| and copies the private key from + * |rsa| into it. It returns the fresh |RSA| object, or NULL on error. */ +OPENSSL_EXPORT RSA *RSAPrivateKey_dup(const RSA *rsa); + +/* RSA_check_key performs basic validatity tests on |rsa|. It returns one if + * they pass and zero otherwise. Opaque keys and public keys always pass. If it + * returns zero then a more detailed error is available on the error queue. */ +OPENSSL_EXPORT int RSA_check_key(const RSA *rsa); + +/* RSA_recover_crt_params uses |rsa->n|, |rsa->d| and |rsa->e| in order to + * calculate the two primes used and thus the precomputed, CRT values. These + * values are set in the |p|, |q|, |dmp1|, |dmq1| and |iqmp| members of |rsa|, + * which must be |NULL| on entry. It returns one on success and zero + * otherwise. */ +OPENSSL_EXPORT int RSA_recover_crt_params(RSA *rsa); + +/* RSA_verify_PKCS1_PSS_mgf1 verifies that |EM| is a correct PSS padding of + * |mHash|, where |mHash| is a digest produced by |Hash|. |EM| must point to + * exactly |RSA_size(rsa)| bytes of data. The |mgf1Hash| argument specifies the + * hash function for generating the mask. If NULL, |Hash| is used. The |sLen| + * argument specifies the expected salt length in bytes. If |sLen| is -1 then + * the salt length is the same as the hash length. If -2, then the salt length + * is maximal and is taken from the size of |EM|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int RSA_verify_PKCS1_PSS_mgf1(RSA *rsa, const uint8_t *mHash, + const EVP_MD *Hash, + const EVP_MD *mgf1Hash, + const uint8_t *EM, int sLen); + +/* RSA_padding_add_PKCS1_PSS_mgf1 writes a PSS padding of |mHash| to |EM|, + * where |mHash| is a digest produced by |Hash|. |RSA_size(rsa)| bytes of + * output will be written to |EM|. The |mgf1Hash| argument specifies the hash + * function for generating the mask. If NULL, |Hash| is used. The |sLen| + * argument specifies the expected salt length in bytes. If |sLen| is -1 then + * the salt length is the same as the hash length. If -2, then the salt length + * is maximal given the space in |EM|. + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int RSA_padding_add_PKCS1_PSS_mgf1(RSA *rsa, uint8_t *EM, + const uint8_t *mHash, + const EVP_MD *Hash, + const EVP_MD *mgf1Hash, + int sLen); + +/* RSA_add_pkcs1_prefix builds a version of |msg| prefixed with the DigestInfo + * header for the given hash function and sets |out_msg| to point to it. On + * successful return, |*out_msg| may be allocated memory and, if so, + * |*is_alloced| will be 1. */ +OPENSSL_EXPORT int RSA_add_pkcs1_prefix(uint8_t **out_msg, size_t *out_msg_len, + int *is_alloced, int hash_nid, + const uint8_t *msg, size_t msg_len); + + +/* ASN.1 functions. */ + +/* RSA_parse_public_key parses a DER-encoded RSAPublicKey structure (RFC 3447) + * from |cbs| and advances |cbs|. It returns a newly-allocated |RSA| or NULL on + * error. */ +OPENSSL_EXPORT RSA *RSA_parse_public_key(CBS *cbs); + +/* RSA_parse_public_key_buggy behaves like |RSA_parse_public_key|, but it + * tolerates some invalid encodings. Do not use this function. */ +OPENSSL_EXPORT RSA *RSA_parse_public_key_buggy(CBS *cbs); + +/* RSA_public_key_from_bytes parses |in| as a DER-encoded RSAPublicKey structure + * (RFC 3447). It returns a newly-allocated |RSA| or NULL on error. */ +OPENSSL_EXPORT RSA *RSA_public_key_from_bytes(const uint8_t *in, size_t in_len); + +/* RSA_marshal_public_key marshals |rsa| as a DER-encoded RSAPublicKey structure + * (RFC 3447) and appends the result to |cbb|. It returns one on success and + * zero on failure. */ +OPENSSL_EXPORT int RSA_marshal_public_key(CBB *cbb, const RSA *rsa); + +/* RSA_public_key_to_bytes marshals |rsa| as a DER-encoded RSAPublicKey + * structure (RFC 3447) and, on success, sets |*out_bytes| to a newly allocated + * buffer containing the result and returns one. Otherwise, it returns zero. The + * result should be freed with |OPENSSL_free|. */ +OPENSSL_EXPORT int RSA_public_key_to_bytes(uint8_t **out_bytes, size_t *out_len, + const RSA *rsa); + +/* RSA_parse_private_key parses a DER-encoded RSAPrivateKey structure (RFC 3447) + * from |cbs| and advances |cbs|. It returns a newly-allocated |RSA| or NULL on + * error. */ +OPENSSL_EXPORT RSA *RSA_parse_private_key(CBS *cbs); + +/* RSA_private_key_from_bytes parses |in| as a DER-encoded RSAPrivateKey + * structure (RFC 3447). It returns a newly-allocated |RSA| or NULL on error. */ +OPENSSL_EXPORT RSA *RSA_private_key_from_bytes(const uint8_t *in, + size_t in_len); + +/* RSA_marshal_private_key marshals |rsa| as a DER-encoded RSAPrivateKey + * structure (RFC 3447) and appends the result to |cbb|. It returns one on + * success and zero on failure. */ +OPENSSL_EXPORT int RSA_marshal_private_key(CBB *cbb, const RSA *rsa); + +/* RSA_private_key_to_bytes marshals |rsa| as a DER-encoded RSAPrivateKey + * structure (RFC 3447) and, on success, sets |*out_bytes| to a newly allocated + * buffer containing the result and returns one. Otherwise, it returns zero. The + * result should be freed with |OPENSSL_free|. */ +OPENSSL_EXPORT int RSA_private_key_to_bytes(uint8_t **out_bytes, + size_t *out_len, const RSA *rsa); + + +/* ex_data functions. + * + * See |ex_data.h| for details. */ + +OPENSSL_EXPORT int RSA_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int RSA_set_ex_data(RSA *r, int idx, void *arg); +OPENSSL_EXPORT void *RSA_get_ex_data(const RSA *r, int idx); + + +/* Flags. */ + +/* RSA_FLAG_OPAQUE specifies that this RSA_METHOD does not expose its key + * material. This may be set if, for instance, it is wrapping some other crypto + * API, like a platform key store. */ +#define RSA_FLAG_OPAQUE 1 + +/* RSA_FLAG_CACHE_PUBLIC causes a precomputed Montgomery context to be created, + * on demand, for the public key operations. */ +#define RSA_FLAG_CACHE_PUBLIC 2 + +/* RSA_FLAG_CACHE_PRIVATE causes a precomputed Montgomery context to be + * created, on demand, for the private key operations. */ +#define RSA_FLAG_CACHE_PRIVATE 4 + +/* RSA_FLAG_NO_BLINDING disables blinding of private operations. */ +#define RSA_FLAG_NO_BLINDING 8 + +/* RSA_FLAG_EXT_PKEY means that private key operations will be handled by + * |mod_exp| and that they do not depend on the private key components being + * present: for example a key stored in external hardware. */ +#define RSA_FLAG_EXT_PKEY 0x20 + +/* RSA_FLAG_SIGN_VER causes the |sign| and |verify| functions of |rsa_meth_st| + * to be called when set. */ +#define RSA_FLAG_SIGN_VER 0x40 + + +/* RSA public exponent values. */ + +#define RSA_3 0x3 +#define RSA_F4 0x10001 + + +/* Deprecated functions. */ + +/* RSA_blinding_on returns one. */ +OPENSSL_EXPORT int RSA_blinding_on(RSA *rsa, BN_CTX *ctx); + +/* RSA_generate_key behaves like |RSA_generate_key_ex|, which is what you + * should use instead. It returns NULL on error, or a newly-allocated |RSA| on + * success. This function is provided for compatibility only. The |callback| + * and |cb_arg| parameters must be NULL. */ +OPENSSL_EXPORT RSA *RSA_generate_key(int bits, unsigned long e, void *callback, + void *cb_arg); + +/* d2i_RSAPublicKey parses an ASN.1, DER-encoded, RSA public key from |len| + * bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result + * is in |*out|. If |*out| is already non-NULL on entry then the result is + * written directly into |*out|, otherwise a fresh |RSA| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT RSA *d2i_RSAPublicKey(RSA **out, const uint8_t **inp, long len); + +/* i2d_RSAPublicKey marshals |in| to an ASN.1, DER structure. If |outp| is not + * NULL then the result is written to |*outp| and |*outp| is advanced just past + * the output. It returns the number of bytes in the result, whether written or + * not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_RSAPublicKey(const RSA *in, uint8_t **outp); + +/* d2i_RSAPrivateKey parses an ASN.1, DER-encoded, RSA private key from |len| + * bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result + * is in |*out|. If |*out| is already non-NULL on entry then the result is + * written directly into |*out|, otherwise a fresh |RSA| is allocated. On + * successful exit, |*inp| is advanced past the DER structure. It returns the + * result or NULL on error. */ +OPENSSL_EXPORT RSA *d2i_RSAPrivateKey(RSA **out, const uint8_t **inp, long len); + +/* i2d_RSAPrivateKey marshals |in| to an ASN.1, DER structure. If |outp| is not + * NULL then the result is written to |*outp| and |*outp| is advanced just past + * the output. It returns the number of bytes in the result, whether written or + * not, or a negative value on error. */ +OPENSSL_EXPORT int i2d_RSAPrivateKey(const RSA *in, uint8_t **outp); + +typedef struct rsa_pss_params_st { + X509_ALGOR *hashAlgorithm; + X509_ALGOR *maskGenAlgorithm; + ASN1_INTEGER *saltLength; + ASN1_INTEGER *trailerField; +} RSA_PSS_PARAMS; + +DECLARE_ASN1_FUNCTIONS(RSA_PSS_PARAMS) + + +struct rsa_meth_st { + struct openssl_method_common_st common; + + void *app_data; + + int (*init)(RSA *rsa); + int (*finish)(RSA *rsa); + + /* size returns the size of the RSA modulus in bytes. */ + size_t (*size)(const RSA *rsa); + + int (*sign)(int type, const uint8_t *m, unsigned int m_length, + uint8_t *sigret, unsigned int *siglen, const RSA *rsa); + + int (*verify)(int dtype, const uint8_t *m, unsigned int m_length, + const uint8_t *sigbuf, unsigned int siglen, const RSA *rsa); + + + /* These functions mirror the |RSA_*| functions of the same name. */ + int (*encrypt)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, + const uint8_t *in, size_t in_len, int padding); + int (*sign_raw)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, + const uint8_t *in, size_t in_len, int padding); + + int (*decrypt)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, + const uint8_t *in, size_t in_len, int padding); + int (*verify_raw)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out, + const uint8_t *in, size_t in_len, int padding); + + /* private_transform takes a big-endian integer from |in|, calculates the + * d'th power of it, modulo the RSA modulus and writes the result as a + * big-endian integer to |out|. Both |in| and |out| are |len| bytes long and + * |len| is always equal to |RSA_size(rsa)|. If the result of the transform + * can be represented in fewer than |len| bytes, then |out| must be zero + * padded on the left. + * + * It returns one on success and zero otherwise. + * + * RSA decrypt and sign operations will call this, thus an ENGINE might wish + * to override it in order to avoid having to implement the padding + * functionality demanded by those, higher level, operations. */ + int (*private_transform)(RSA *rsa, uint8_t *out, const uint8_t *in, + size_t len); + + int (*mod_exp)(BIGNUM *r0, const BIGNUM *I, RSA *rsa, + BN_CTX *ctx); /* Can be null */ + int (*bn_mod_exp)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, + const BN_MONT_CTX *mont); + + int flags; + + int (*keygen)(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb); + + int (*multi_prime_keygen)(RSA *rsa, int bits, int num_primes, BIGNUM *e, + BN_GENCB *cb); + + /* supports_digest returns one if |rsa| supports digests of type + * |md|. If null, it is assumed that all digests are supported. */ + int (*supports_digest)(const RSA *rsa, const EVP_MD *md); +}; + + +/* Private functions. */ + +typedef struct bn_blinding_st BN_BLINDING; + +struct rsa_st { + RSA_METHOD *meth; + + BIGNUM *n; + BIGNUM *e; + BIGNUM *d; + BIGNUM *p; + BIGNUM *q; + BIGNUM *dmp1; + BIGNUM *dmq1; + BIGNUM *iqmp; + + STACK_OF(RSA_additional_prime) *additional_primes; + + /* be careful using this if the RSA structure is shared */ + CRYPTO_EX_DATA ex_data; + CRYPTO_refcount_t references; + int flags; + + CRYPTO_MUTEX lock; + + /* Used to cache montgomery values. The creation of these values is protected + * by |lock|. */ + BN_MONT_CTX *mont_n; + BN_MONT_CTX *mont_p; + BN_MONT_CTX *mont_q; + + /* num_blindings contains the size of the |blindings| and |blindings_inuse| + * arrays. This member and the |blindings_inuse| array are protected by + * |lock|. */ + unsigned num_blindings; + /* blindings is an array of BN_BLINDING structures that can be reserved by a + * thread by locking |lock| and changing the corresponding element in + * |blindings_inuse| from 0 to 1. */ + BN_BLINDING **blindings; + unsigned char *blindings_inuse; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define RSA_R_BAD_E_VALUE 100 +#define RSA_R_BAD_FIXED_HEADER_DECRYPT 101 +#define RSA_R_BAD_PAD_BYTE_COUNT 102 +#define RSA_R_BAD_RSA_PARAMETERS 103 +#define RSA_R_BAD_SIGNATURE 104 +#define RSA_R_BLOCK_TYPE_IS_NOT_01 105 +#define RSA_R_BN_NOT_INITIALIZED 106 +#define RSA_R_CRT_PARAMS_ALREADY_GIVEN 107 +#define RSA_R_CRT_VALUES_INCORRECT 108 +#define RSA_R_DATA_LEN_NOT_EQUAL_TO_MOD_LEN 109 +#define RSA_R_DATA_TOO_LARGE 110 +#define RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 111 +#define RSA_R_DATA_TOO_LARGE_FOR_MODULUS 112 +#define RSA_R_DATA_TOO_SMALL 113 +#define RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 114 +#define RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 115 +#define RSA_R_D_E_NOT_CONGRUENT_TO_1 116 +#define RSA_R_EMPTY_PUBLIC_KEY 117 +#define RSA_R_FIRST_OCTET_INVALID 118 +#define RSA_R_INCONSISTENT_SET_OF_CRT_VALUES 119 +#define RSA_R_INTERNAL_ERROR 120 +#define RSA_R_INVALID_MESSAGE_LENGTH 121 +#define RSA_R_KEY_SIZE_TOO_SMALL 122 +#define RSA_R_LAST_OCTET_INVALID 123 +#define RSA_R_MODULUS_TOO_LARGE 124 +#define RSA_R_NO_PUBLIC_EXPONENT 125 +#define RSA_R_NULL_BEFORE_BLOCK_MISSING 126 +#define RSA_R_N_NOT_EQUAL_P_Q 127 +#define RSA_R_OAEP_DECODING_ERROR 128 +#define RSA_R_ONLY_ONE_OF_P_Q_GIVEN 129 +#define RSA_R_OUTPUT_BUFFER_TOO_SMALL 130 +#define RSA_R_PADDING_CHECK_FAILED 131 +#define RSA_R_PKCS_DECODING_ERROR 132 +#define RSA_R_SLEN_CHECK_FAILED 133 +#define RSA_R_SLEN_RECOVERY_FAILED 134 +#define RSA_R_TOO_LONG 135 +#define RSA_R_TOO_MANY_ITERATIONS 136 +#define RSA_R_UNKNOWN_ALGORITHM_TYPE 137 +#define RSA_R_UNKNOWN_PADDING_TYPE 138 +#define RSA_R_VALUE_MISSING 139 +#define RSA_R_WRONG_SIGNATURE_LENGTH 140 +#define RSA_R_MUST_HAVE_AT_LEAST_TWO_PRIMES 141 +#define RSA_R_CANNOT_RECOVER_MULTI_PRIME_KEY 142 +#define RSA_R_BAD_ENCODING 143 +#define RSA_R_ENCODE_ERROR 144 +#define RSA_R_BAD_VERSION 145 + +#endif /* OPENSSL_HEADER_RSA_H */ diff --git a/project/jni/boringssl/include/openssl/safestack.h b/project/jni/boringssl/include/openssl/safestack.h new file mode 100644 index 000000000..6e5e43307 --- /dev/null +++ b/project/jni/boringssl/include/openssl/safestack.h @@ -0,0 +1,16 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ diff --git a/project/jni/boringssl/include/openssl/sha.h b/project/jni/boringssl/include/openssl/sha.h new file mode 100644 index 000000000..48a52e8f0 --- /dev/null +++ b/project/jni/boringssl/include/openssl/sha.h @@ -0,0 +1,256 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_SHA_H +#define OPENSSL_HEADER_SHA_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* The SHA family of hash functions (SHA-1 and SHA-2). */ + + +/* SHA_CBLOCK is the block size of SHA-1. */ +#define SHA_CBLOCK 64 + +/* SHA_DIGEST_LENGTH is the length of a SHA-1 digest. */ +#define SHA_DIGEST_LENGTH 20 + +/* TODO(fork): remove */ +#define SHA_LBLOCK 16 +#define SHA_LONG uint32_t + +/* SHA1_Init initialises |sha| and returns one. */ +OPENSSL_EXPORT int SHA1_Init(SHA_CTX *sha); + +/* SHA1_Update adds |len| bytes from |data| to |sha| and returns one. */ +OPENSSL_EXPORT int SHA1_Update(SHA_CTX *sha, const void *data, size_t len); + +/* SHA1_Final adds the final padding to |sha| and writes the resulting digest + * to |md|, which must have at least |SHA_DIGEST_LENGTH| bytes of space. It + * returns one. */ +OPENSSL_EXPORT int SHA1_Final(uint8_t *md, SHA_CTX *sha); + +/* SHA1 writes the digest of |len| bytes from |data| to |out| and returns + * |out|. There must be at least |SHA_DIGEST_LENGTH| bytes of space in + * |out|. */ +OPENSSL_EXPORT uint8_t *SHA1(const uint8_t *data, size_t len, uint8_t *out); + +/* SHA1_Transform is a low-level function that performs a single, SHA-1 block + * transformation using the state from |sha| and 64 bytes from |block|. */ +OPENSSL_EXPORT void SHA1_Transform(SHA_CTX *sha, const uint8_t *block); + +struct sha_state_st { +#if defined(OPENSSL_WINDOWS) + uint32_t h[5]; +#else + /* wpa_supplicant accesses |h0|..|h4| so we must support those names + * for compatibility with it until it can be updated. */ + union { + uint32_t h[5]; + struct { + uint32_t h0; + uint32_t h1; + uint32_t h2; + uint32_t h3; + uint32_t h4; + }; + }; +#endif + uint32_t Nl, Nh; + uint8_t data[SHA_CBLOCK]; + unsigned num; +}; + + +/* SHA-224. */ + +/* SHA224_CBLOCK is the block size of SHA-224. */ +#define SHA224_CBLOCK 64 + +/* SHA224_DIGEST_LENGTH is the length of a SHA-224 digest. */ +#define SHA224_DIGEST_LENGTH 28 + +/* SHA224_Init initialises |sha| and returns 1. */ +OPENSSL_EXPORT int SHA224_Init(SHA256_CTX *sha); + +/* SHA224_Update adds |len| bytes from |data| to |sha| and returns 1. */ +OPENSSL_EXPORT int SHA224_Update(SHA256_CTX *sha, const void *data, size_t len); + +/* SHA224_Final adds the final padding to |sha| and writes the resulting digest + * to |md|, which must have at least |SHA224_DIGEST_LENGTH| bytes of space. It + * returns one on success and zero on programmer error. */ +OPENSSL_EXPORT int SHA224_Final(uint8_t *md, SHA256_CTX *sha); + +/* SHA224 writes the digest of |len| bytes from |data| to |out| and returns + * |out|. There must be at least |SHA224_DIGEST_LENGTH| bytes of space in + * |out|. */ +OPENSSL_EXPORT uint8_t *SHA224(const uint8_t *data, size_t len, uint8_t *out); + + +/* SHA-256. */ + +/* SHA256_CBLOCK is the block size of SHA-256. */ +#define SHA256_CBLOCK 64 + +/* SHA256_DIGEST_LENGTH is the length of a SHA-256 digest. */ +#define SHA256_DIGEST_LENGTH 32 + +/* SHA256_Init initialises |sha| and returns 1. */ +OPENSSL_EXPORT int SHA256_Init(SHA256_CTX *sha); + +/* SHA256_Update adds |len| bytes from |data| to |sha| and returns 1. */ +OPENSSL_EXPORT int SHA256_Update(SHA256_CTX *sha, const void *data, size_t len); + +/* SHA256_Final adds the final padding to |sha| and writes the resulting digest + * to |md|, which must have at least |SHA256_DIGEST_LENGTH| bytes of space. It + * returns one on success and zero on programmer error. */ +OPENSSL_EXPORT int SHA256_Final(uint8_t *md, SHA256_CTX *sha); + +/* SHA256 writes the digest of |len| bytes from |data| to |out| and returns + * |out|. There must be at least |SHA256_DIGEST_LENGTH| bytes of space in + * |out|. */ +OPENSSL_EXPORT uint8_t *SHA256(const uint8_t *data, size_t len, uint8_t *out); + +/* SHA256_Transform is a low-level function that performs a single, SHA-1 block + * transformation using the state from |sha| and 64 bytes from |block|. */ +OPENSSL_EXPORT void SHA256_Transform(SHA256_CTX *sha, const uint8_t *data); + +struct sha256_state_st { + uint32_t h[8]; + uint32_t Nl, Nh; + uint8_t data[SHA256_CBLOCK]; + unsigned num, md_len; +}; + + +/* SHA-384. */ + +/* SHA384_CBLOCK is the block size of SHA-384. */ +#define SHA384_CBLOCK 128 + +/* SHA384_DIGEST_LENGTH is the length of a SHA-384 digest. */ +#define SHA384_DIGEST_LENGTH 48 + +/* SHA384_Init initialises |sha| and returns 1. */ +OPENSSL_EXPORT int SHA384_Init(SHA512_CTX *sha); + +/* SHA384_Update adds |len| bytes from |data| to |sha| and returns 1. */ +OPENSSL_EXPORT int SHA384_Update(SHA512_CTX *sha, const void *data, size_t len); + +/* SHA384_Final adds the final padding to |sha| and writes the resulting digest + * to |md|, which must have at least |SHA384_DIGEST_LENGTH| bytes of space. It + * returns one on success and zero on programmer error. */ +OPENSSL_EXPORT int SHA384_Final(uint8_t *md, SHA512_CTX *sha); + +/* SHA384 writes the digest of |len| bytes from |data| to |out| and returns + * |out|. There must be at least |SHA384_DIGEST_LENGTH| bytes of space in + * |out|. */ +OPENSSL_EXPORT uint8_t *SHA384(const uint8_t *data, size_t len, uint8_t *out); + +/* SHA384_Transform is a low-level function that performs a single, SHA-1 block + * transformation using the state from |sha| and 64 bytes from |block|. */ +OPENSSL_EXPORT void SHA384_Transform(SHA512_CTX *sha, const uint8_t *data); + + +/* SHA-512. */ + +/* SHA512_CBLOCK is the block size of SHA-512. */ +#define SHA512_CBLOCK 128 + +/* SHA512_DIGEST_LENGTH is the length of a SHA-512 digest. */ +#define SHA512_DIGEST_LENGTH 64 + +/* SHA512_Init initialises |sha| and returns 1. */ +OPENSSL_EXPORT int SHA512_Init(SHA512_CTX *sha); + +/* SHA512_Update adds |len| bytes from |data| to |sha| and returns 1. */ +OPENSSL_EXPORT int SHA512_Update(SHA512_CTX *sha, const void *data, size_t len); + +/* SHA512_Final adds the final padding to |sha| and writes the resulting digest + * to |md|, which must have at least |SHA512_DIGEST_LENGTH| bytes of space. It + * returns one on success and zero on programmer error. */ +OPENSSL_EXPORT int SHA512_Final(uint8_t *md, SHA512_CTX *sha); + +/* SHA512 writes the digest of |len| bytes from |data| to |out| and returns + * |out|. There must be at least |SHA512_DIGEST_LENGTH| bytes of space in + * |out|. */ +OPENSSL_EXPORT uint8_t *SHA512(const uint8_t *data, size_t len, uint8_t *out); + +/* SHA512_Transform is a low-level function that performs a single, SHA-1 block + * transformation using the state from |sha| and 64 bytes from |block|. */ +OPENSSL_EXPORT void SHA512_Transform(SHA512_CTX *sha, const uint8_t *data); + +struct sha512_state_st { + uint64_t h[8]; + uint64_t Nl, Nh; + union { + uint64_t d[16]; + uint8_t p[128]; + } u; + unsigned num, md_len; +}; + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_SHA_H */ diff --git a/project/jni/boringssl/include/openssl/srtp.h b/project/jni/boringssl/include/openssl/srtp.h new file mode 100644 index 000000000..39f6a8552 --- /dev/null +++ b/project/jni/boringssl/include/openssl/srtp.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +/* This header is provided in order to make compiling against code that expects + OpenSSL easier. */ + +#include "ssl.h" diff --git a/project/jni/boringssl/include/openssl/ssl.h b/project/jni/boringssl/include/openssl/ssl.h new file mode 100644 index 000000000..dcfee915d --- /dev/null +++ b/project/jni/boringssl/include/openssl/ssl.h @@ -0,0 +1,4472 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * ECC cipher suite support in OpenSSL originally developed by + * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. + */ +/* ==================================================================== + * Copyright 2005 Nokia. All rights reserved. + * + * The portions of the attached software ("Contribution") is developed by + * Nokia Corporation and is licensed pursuant to the OpenSSL open source + * license. + * + * The Contribution, originally written by Mika Kousa and Pasi Eronen of + * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites + * support (see RFC 4279) to OpenSSL. + * + * No patent licenses or other rights except those expressly stated in + * the OpenSSL open source license shall be deemed granted or received + * expressly, by implication, estoppel, or otherwise. + * + * No assurances are provided by Nokia that the Contribution does not + * infringe the patent or other intellectual property rights of any third + * party or that the license provides you with all the necessary rights + * to make use of the Contribution. + * + * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN + * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA + * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY + * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR + * OTHERWISE. + */ + +#ifndef OPENSSL_HEADER_SSL_H +#define OPENSSL_HEADER_SSL_H + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if !defined(OPENSSL_WINDOWS) +#include +#endif + +/* wpa_supplicant expects to get the version functions from ssl.h */ +#include + +/* Forward-declare struct timeval. On Windows, it is defined in winsock2.h and + * Windows headers define too many macros to be included in public headers. + * However, only a forward declaration is needed. */ +struct timeval; + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* SSL implementation. */ + + +/* SSL contexts. + * + * |SSL_CTX| objects manage shared state and configuration between multiple TLS + * or DTLS connections. Whether the connections are TLS or DTLS is selected by + * an |SSL_METHOD| on creation. + * + * |SSL_CTX| are reference-counted and may be shared by connections across + * multiple threads. Once shared, functions which change the |SSL_CTX|'s + * configuration may not be used. */ + +/* TLS_method is the |SSL_METHOD| used for TLS (and SSLv3) connections. */ +OPENSSL_EXPORT const SSL_METHOD *TLS_method(void); + +/* DTLS_method is the |SSL_METHOD| used for DTLS connections. */ +OPENSSL_EXPORT const SSL_METHOD *DTLS_method(void); + +/* SSL_CTX_new returns a newly-allocated |SSL_CTX| with default settings or NULL + * on error. */ +OPENSSL_EXPORT SSL_CTX *SSL_CTX_new(const SSL_METHOD *method); + +/* SSL_CTX_free releases memory associated with |ctx|. */ +OPENSSL_EXPORT void SSL_CTX_free(SSL_CTX *ctx); + + +/* SSL connections. + * + * An |SSL| object represents a single TLS or DTLS connection. Although the + * shared |SSL_CTX| is thread-safe, an |SSL| is not thread-safe and may only be + * used on one thread at a time. */ + +/* SSL_new returns a newly-allocated |SSL| using |ctx| or NULL on error. The new + * connection inherits settings from |ctx| at the time of creation. Settings may + * also be individually configured on the connection. + * + * On creation, an |SSL| is not configured to be either a client or server. Call + * |SSL_set_connect_state| or |SSL_set_accept_state| to set this. */ +OPENSSL_EXPORT SSL *SSL_new(SSL_CTX *ctx); + +/* SSL_free releases memory associated with |ssl|. */ +OPENSSL_EXPORT void SSL_free(SSL *ssl); + +/* SSL_get_SSL_CTX returns the |SSL_CTX| associated with |ssl|. If + * |SSL_set_SSL_CTX| is called, it returns the new |SSL_CTX|, not the initial + * one. */ +OPENSSL_EXPORT SSL_CTX *SSL_get_SSL_CTX(const SSL *ssl); + +/* SSL_set_connect_state configures |ssl| to be a client. */ +OPENSSL_EXPORT void SSL_set_connect_state(SSL *ssl); + +/* SSL_set_accept_state configures |ssl| to be a server. */ +OPENSSL_EXPORT void SSL_set_accept_state(SSL *ssl); + +/* SSL_is_server returns one if |ssl| is configured as a server and zero + * otherwise. */ +OPENSSL_EXPORT int SSL_is_server(SSL *ssl); + +/* SSL_set_bio configures |ssl| to read from |rbio| and write to |wbio|. |ssl| + * takes ownership of the two |BIO|s. If |rbio| and |wbio| are the same, |ssl| + * only takes ownership of one reference. + * + * In DTLS, if |rbio| is blocking, it must handle + * |BIO_CTRL_DGRAM_SET_NEXT_TIMEOUT| control requests to set read timeouts. + * + * Calling this function on an already-configured |ssl| is deprecated. */ +OPENSSL_EXPORT void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio); + +/* SSL_get_rbio returns the |BIO| that |ssl| reads from. */ +OPENSSL_EXPORT BIO *SSL_get_rbio(const SSL *ssl); + +/* SSL_get_wbio returns the |BIO| that |ssl| writes to. */ +OPENSSL_EXPORT BIO *SSL_get_wbio(const SSL *ssl); + +/* SSL_get_fd calls |SSL_get_rfd|. */ +OPENSSL_EXPORT int SSL_get_fd(const SSL *ssl); + +/* SSL_get_rfd returns the file descriptor that |ssl| is configured to read + * from. If |ssl|'s read |BIO| is not configured or doesn't wrap a file + * descriptor then it returns -1. */ +OPENSSL_EXPORT int SSL_get_rfd(const SSL *ssl); + +/* SSL_get_wfd returns the file descriptor that |ssl| is configured to write + * to. If |ssl|'s write |BIO| is not configured or doesn't wrap a file + * descriptor then it returns -1. */ +OPENSSL_EXPORT int SSL_get_wfd(const SSL *ssl); + +/* SSL_set_fd configures |ssl| to read from and write to |fd|. It returns one + * on success and zero on allocation error. The caller retains ownership of + * |fd|. */ +OPENSSL_EXPORT int SSL_set_fd(SSL *ssl, int fd); + +/* SSL_set_rfd configures |ssl| to read from |fd|. It returns one on success and + * zero on allocation error. The caller retains ownership of |fd|. */ +OPENSSL_EXPORT int SSL_set_rfd(SSL *ssl, int fd); + +/* SSL_set_wfd configures |ssl| to write to |fd|. It returns one on success and + * zero on allocation error. The caller retains ownership of |fd|. */ +OPENSSL_EXPORT int SSL_set_wfd(SSL *ssl, int fd); + +/* SSL_do_handshake continues the current handshake. If there is none or the + * handshake has completed or False Started, it returns one. Otherwise, it + * returns <= 0. The caller should pass the value into |SSL_get_error| to + * determine how to proceed. + * + * In DTLS, if the read |BIO| is non-blocking, the caller must drive + * retransmissions. Whenever |SSL_get_error| signals |SSL_ERROR_WANT_READ|, use + * |DTLSv1_get_timeout| to determine the current timeout. If it expires before + * the next retry, call |DTLSv1_handle_timeout|. Note that DTLS handshake + * retransmissions use fresh sequence numbers, so it is not sufficient to replay + * packets at the transport. + * + * TODO(davidben): Ensure 0 is only returned on transport EOF. + * https://crbug.com/466303. */ +OPENSSL_EXPORT int SSL_do_handshake(SSL *ssl); + +/* SSL_connect configures |ssl| as a client, if unconfigured, and calls + * |SSL_do_handshake|. */ +OPENSSL_EXPORT int SSL_connect(SSL *ssl); + +/* SSL_accept configures |ssl| as a server, if unconfigured, and calls + * |SSL_do_handshake|. */ +OPENSSL_EXPORT int SSL_accept(SSL *ssl); + +/* SSL_read reads up to |num| bytes from |ssl| into |buf|. It implicitly runs + * any pending handshakes, including renegotiations when enabled. On success, it + * returns the number of bytes read. Otherwise, it returns <= 0. The caller + * should pass the value into |SSL_get_error| to determine how to proceed. + * + * TODO(davidben): Ensure 0 is only returned on transport EOF. + * https://crbug.com/466303. */ +OPENSSL_EXPORT int SSL_read(SSL *ssl, void *buf, int num); + +/* SSL_peek behaves like |SSL_read| but does not consume any bytes returned. */ +OPENSSL_EXPORT int SSL_peek(SSL *ssl, void *buf, int num); + +/* SSL_pending returns the number of bytes available in |ssl|. It does not read + * from the transport. */ +OPENSSL_EXPORT int SSL_pending(const SSL *ssl); + +/* SSL_write writes up to |num| bytes from |buf| into |ssl|. It implicitly runs + * any pending handshakes, including renegotiations when enabled. On success, it + * returns the number of bytes read. Otherwise, it returns <= 0. The caller + * should pass the value into |SSL_get_error| to determine how to proceed. + * + * In TLS, a non-blocking |SSL_write| differs from non-blocking |write| in that + * a failed |SSL_write| still commits to the data passed in. When retrying, the + * caller must supply the original write buffer (or a larger one containing the + * original as a prefix). By default, retries will fail if they also do not + * reuse the same |buf| pointer. This may be relaxed with + * |SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER|, but the buffer contents still must be + * unchanged. + * + * By default, in TLS, |SSL_write| will not return success until all |num| bytes + * are written. This may be relaxed with |SSL_MODE_ENABLE_PARTIAL_WRITE|. It + * allows |SSL_write| to complete with a partial result when only part of the + * input was written in a single record. + * + * In DTLS, neither |SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER| and + * |SSL_MODE_ENABLE_PARTIAL_WRITE| do anything. The caller may retry with a + * different buffer freely. A single call to |SSL_write| only ever writes a + * single record in a single packet, so |num| must be at most + * |SSL3_RT_MAX_PLAIN_LENGTH|. + * + * TODO(davidben): Ensure 0 is only returned on transport EOF. + * https://crbug.com/466303. */ +OPENSSL_EXPORT int SSL_write(SSL *ssl, const void *buf, int num); + +/* SSL_shutdown shuts down |ssl|. On success, it completes in two stages. First, + * it returns 0 if |ssl| completed uni-directional shutdown; close_notify has + * been sent, but the peer's close_notify has not been received. Most callers + * may stop at this point. For bi-directional shutdown, call |SSL_shutdown| + * again. It returns 1 if close_notify has been both sent and received. + * + * If the peer's close_notify arrived first, the first stage is skipped. + * |SSL_shutdown| will return 1 once close_notify is sent and skip 0. Callers + * only interested in uni-directional shutdown must therefore allow for the + * first stage returning either 0 or 1. + * + * |SSL_shutdown| returns -1 on failure. The caller should pass the return value + * into |SSL_get_error| to determine how to proceed. If the underlying |BIO| is + * non-blocking, both stages may require retry. + * + * |SSL_shutdown| must be called to retain |ssl|'s session in the session + * cache. Use |SSL_CTX_set_quiet_shutdown| to configure |SSL_shutdown| to + * neither send nor wait for close_notify but still retain the session. + * + * TODO(davidben): Is there any point in the session cache interaction? Remove + * it? */ +OPENSSL_EXPORT int SSL_shutdown(SSL *ssl); + +/* SSL_CTX_set_quiet_shutdown sets quiet shutdown on |ctx| to |mode|. If + * enabled, |SSL_shutdown| will not send a close_notify alert or wait for one + * from the peer. It will instead synchronously return one. */ +OPENSSL_EXPORT void SSL_CTX_set_quiet_shutdown(SSL_CTX *ctx, int mode); + +/* SSL_CTX_get_quiet_shutdown returns whether quiet shutdown is enabled for + * |ctx|. */ +OPENSSL_EXPORT int SSL_CTX_get_quiet_shutdown(const SSL_CTX *ctx); + +/* SSL_set_quiet_shutdown sets quiet shutdown on |ssl| to |mode|. If enabled, + * |SSL_shutdown| will not send a close_notify alert or wait for one from the + * peer. It will instead synchronously return one. */ +OPENSSL_EXPORT void SSL_set_quiet_shutdown(SSL *ssl, int mode); + +/* SSL_get_quiet_shutdown returns whether quiet shutdown is enabled for + * |ssl|. */ +OPENSSL_EXPORT int SSL_get_quiet_shutdown(const SSL *ssl); + +/* SSL_get_error returns a |SSL_ERROR_*| value for the most recent operation on + * |ssl|. It should be called after an operation failed to determine whether the + * error was fatal and, if not, when to retry. */ +OPENSSL_EXPORT int SSL_get_error(const SSL *ssl, int ret_code); + +/* SSL_ERROR_NONE indicates the operation succeeded. */ +#define SSL_ERROR_NONE 0 + +/* SSL_ERROR_SSL indicates the operation failed within the library. The caller + * may inspect the error queue for more information. */ +#define SSL_ERROR_SSL 1 + +/* SSL_ERROR_WANT_READ indicates the operation failed attempting to read from + * the transport. The caller may retry the operation when the transport is ready + * for reading. + * + * If signaled by a DTLS handshake, the caller must also call + * |DTLSv1_get_timeout| and |DTLSv1_handle_timeout| as appropriate. See + * |SSL_do_handshake|. */ +#define SSL_ERROR_WANT_READ 2 + +/* SSL_ERROR_WANT_WRITE indicates the operation failed attempting to write to + * the transport. The caller may retry the operation when the transport is ready + * for writing. */ +#define SSL_ERROR_WANT_WRITE 3 + +/* SSL_ERROR_WANT_X509_LOOKUP indicates the operation failed in calling the + * |cert_cb| or |client_cert_cb|. The caller may retry the operation when the + * callback is ready to return a certificate or one has been configured + * externally. + * + * See also |SSL_CTX_set_cert_cb| and |SSL_CTX_set_client_cert_cb|. */ +#define SSL_ERROR_WANT_X509_LOOKUP 4 + +/* SSL_ERROR_WANT_SYSCALL indicates the operation failed externally to the + * library. The caller should consult the system-specific error mechanism. This + * is typically |errno| but may be something custom if using a custom |BIO|. It + * may also be signaled if the transport returned EOF, in which case the + * operation's return value will be zero. */ +#define SSL_ERROR_SYSCALL 5 + +/* SSL_ERROR_ZERO_RETURN indicates the operation failed because the connection + * was cleanly shut down with a close_notify alert. */ +#define SSL_ERROR_ZERO_RETURN 6 + +/* SSL_ERROR_WANT_CONNECT indicates the operation failed attempting to connect + * the transport (the |BIO| signaled |BIO_RR_CONNECT|). The caller may retry the + * operation when the transport is ready. */ +#define SSL_ERROR_WANT_CONNECT 7 + +/* SSL_ERROR_WANT_ACCEPT indicates the operation failed attempting to accept a + * connection from the transport (the |BIO| signaled |BIO_RR_ACCEPT|). The + * caller may retry the operation when the transport is ready. + * + * TODO(davidben): Remove this. It's used by accept BIOs which are bizarre. */ +#define SSL_ERROR_WANT_ACCEPT 8 + +/* SSL_ERROR_WANT_CHANNEL_ID_LOOKUP indicates the operation failed looking up + * the Channel ID key. The caller may retry the operation when |channel_id_cb| + * is ready to return a key or one has been configured with + * |SSL_set1_tls_channel_id|. + * + * See also |SSL_CTX_set_channel_id_cb|. */ +#define SSL_ERROR_WANT_CHANNEL_ID_LOOKUP 9 + +/* SSL_ERROR_PENDING_SESSION indicates the operation failed because the session + * lookup callback indicated the session was unavailable. The caller may retry + * the operation when lookup has completed. + * + * See also |SSL_CTX_sess_set_get_cb| and |SSL_magic_pending_session_ptr|. */ +#define SSL_ERROR_PENDING_SESSION 11 + +/* SSL_ERROR_PENDING_CERTIFICATE indicates the operation failed because the + * early callback indicated certificate lookup was incomplete. The caller may + * retry the operation when lookup has completed. Note: when the operation is + * retried, the early callback will not be called a second time. + * + * See also |SSL_CTX_set_select_certificate_cb|. */ +#define SSL_ERROR_PENDING_CERTIFICATE 12 + +/* SSL_ERROR_WANT_PRIVATE_KEY_OPERATION indicates the operation failed because + * a private key operation was unfinished. The caller may retry the operation + * when the private key operation is complete. + * + * See also |SSL_set_private_key_method|. */ +#define SSL_ERROR_WANT_PRIVATE_KEY_OPERATION 13 + +/* SSL_set_mtu sets the |ssl|'s MTU in DTLS to |mtu|. It returns one on success + * and zero on failure. */ +OPENSSL_EXPORT int SSL_set_mtu(SSL *ssl, unsigned mtu); + +/* DTLSv1_get_timeout queries the next DTLS handshake timeout. If there is a + * timeout in progress, it sets |*out| to the time remaining and returns one. + * Otherwise, it returns zero. + * + * When the timeout expires, call |DTLSv1_handle_timeout| to handle the + * retransmit behavior. + * + * NOTE: This function must be queried again whenever the handshake state + * machine changes, including when |DTLSv1_handle_timeout| is called. */ +OPENSSL_EXPORT int DTLSv1_get_timeout(const SSL *ssl, struct timeval *out); + +/* DTLSv1_handle_timeout is called when a DTLS handshake timeout expires. If no + * timeout had expired, it returns 0. Otherwise, it retransmits the previous + * flight of handshake messages and returns 1. If too many timeouts had expired + * without progress or an error occurs, it returns -1. + * + * The caller's external timer should be compatible with the one |ssl| queries + * within some fudge factor. Otherwise, the call will be a no-op, but + * |DTLSv1_get_timeout| will return an updated timeout. + * + * If the function returns -1, checking if |SSL_get_error| returns + * |SSL_ERROR_WANT_WRITE| may be used to determine if the retransmit failed due + * to a non-fatal error at the write |BIO|. However, the operation may not be + * retried until the next timeout fires. + * + * WARNING: This function breaks the usual return value convention. + * + * TODO(davidben): This |SSL_ERROR_WANT_WRITE| behavior is kind of bizarre. */ +OPENSSL_EXPORT int DTLSv1_handle_timeout(SSL *ssl); + + +/* Protocol versions. */ + +#define DTLS1_VERSION_MAJOR 0xfe +#define SSL3_VERSION_MAJOR 0x03 + +#define SSL3_VERSION 0x0300 +#define TLS1_VERSION 0x0301 +#define TLS1_1_VERSION 0x0302 +#define TLS1_2_VERSION 0x0303 + +#define DTLS1_VERSION 0xfeff +#define DTLS1_2_VERSION 0xfefd + +/* SSL_CTX_set_min_version sets the minimum protocol version for |ctx| to + * |version|. */ +OPENSSL_EXPORT void SSL_CTX_set_min_version(SSL_CTX *ctx, uint16_t version); + +/* SSL_CTX_set_max_version sets the maximum protocol version for |ctx| to + * |version|. */ +OPENSSL_EXPORT void SSL_CTX_set_max_version(SSL_CTX *ctx, uint16_t version); + +/* SSL_set_min_version sets the minimum protocol version for |ssl| to + * |version|. */ +OPENSSL_EXPORT void SSL_set_min_version(SSL *ssl, uint16_t version); + +/* SSL_set_max_version sets the maximum protocol version for |ssl| to + * |version|. */ +OPENSSL_EXPORT void SSL_set_max_version(SSL *ssl, uint16_t version); + +/* SSL_version returns the TLS or DTLS protocol version used by |ssl|, which is + * one of the |*_VERSION| values. (E.g. |TLS1_2_VERSION|.) Before the version + * is negotiated, the result is undefined. */ +OPENSSL_EXPORT int SSL_version(const SSL *ssl); + + +/* Options. + * + * Options configure protocol behavior. */ + +/* SSL_OP_NO_QUERY_MTU, in DTLS, disables querying the MTU from the underlying + * |BIO|. Instead, the MTU is configured with |SSL_set_mtu|. */ +#define SSL_OP_NO_QUERY_MTU 0x00001000L + +/* SSL_OP_NO_TICKET disables session ticket support (RFC 5077). */ +#define SSL_OP_NO_TICKET 0x00004000L + +/* SSL_OP_CIPHER_SERVER_PREFERENCE configures servers to select ciphers and + * ECDHE curves according to the server's preferences instead of the + * client's. */ +#define SSL_OP_CIPHER_SERVER_PREFERENCE 0x00400000L + +/* SSL_OP_DISABLE_NPN configures an individual |SSL| to not advertise NPN, + * despite |SSL_CTX_set_next_proto_select_cb| being configured on the + * |SSL_CTX|. */ +#define SSL_OP_DISABLE_NPN 0x00800000L + +/* SSL_CTX_set_options enables all options set in |options| (which should be one + * or more of the |SSL_OP_*| values, ORed together) in |ctx|. It returns a + * bitmask representing the resulting enabled options. */ +OPENSSL_EXPORT uint32_t SSL_CTX_set_options(SSL_CTX *ctx, uint32_t options); + +/* SSL_CTX_clear_options disables all options set in |options| (which should be + * one or more of the |SSL_OP_*| values, ORed together) in |ctx|. It returns a + * bitmask representing the resulting enabled options. */ +OPENSSL_EXPORT uint32_t SSL_CTX_clear_options(SSL_CTX *ctx, uint32_t options); + +/* SSL_CTX_get_options returns a bitmask of |SSL_OP_*| values that represent all + * the options enabled for |ctx|. */ +OPENSSL_EXPORT uint32_t SSL_CTX_get_options(const SSL_CTX *ctx); + +/* SSL_set_options enables all options set in |options| (which should be one or + * more of the |SSL_OP_*| values, ORed together) in |ssl|. It returns a bitmask + * representing the resulting enabled options. */ +OPENSSL_EXPORT uint32_t SSL_set_options(SSL *ssl, uint32_t options); + +/* SSL_clear_options disables all options set in |options| (which should be one + * or more of the |SSL_OP_*| values, ORed together) in |ssl|. It returns a + * bitmask representing the resulting enabled options. */ +OPENSSL_EXPORT uint32_t SSL_clear_options(SSL *ssl, uint32_t options); + +/* SSL_get_options returns a bitmask of |SSL_OP_*| values that represent all the + * options enabled for |ssl|. */ +OPENSSL_EXPORT uint32_t SSL_get_options(const SSL *ssl); + + +/* Modes. + * + * Modes configure API behavior. */ + +/* SSL_MODE_ENABLE_PARTIAL_WRITE, in TLS, allows |SSL_write| to complete with a + * partial result when the only part of the input was written in a single + * record. In DTLS, it does nothing. */ +#define SSL_MODE_ENABLE_PARTIAL_WRITE 0x00000001L + +/* SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER, in TLS, allows retrying an incomplete + * |SSL_write| with a different buffer. However, |SSL_write| still assumes the + * buffer contents are unchanged. This is not the default to avoid the + * misconception that non-blocking |SSL_write| behaves like non-blocking + * |write|. In DTLS, it does nothing. */ +#define SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER 0x00000002L + +/* SSL_MODE_NO_AUTO_CHAIN disables automatically building a certificate chain + * before sending certificates to the peer. + * TODO(davidben): Remove this behavior. https://crbug.com/486295. */ +#define SSL_MODE_NO_AUTO_CHAIN 0x00000008L + +/* SSL_MODE_ENABLE_FALSE_START allows clients to send application data before + * receipt of ChangeCipherSpec and Finished. This mode enables full-handshakes + * to 'complete' in one RTT. See draft-bmoeller-tls-falsestart-01. + * + * When False Start is enabled, |SSL_do_handshake| may succeed before the + * handshake has completely finished. |SSL_write| will function at this point, + * and |SSL_read| will transparently wait for the final handshake leg before + * returning application data. To determine if False Start occurred or when the + * handshake is completely finished, see |SSL_in_false_start|, |SSL_in_init|, + * and |SSL_CB_HANDSHAKE_DONE| from |SSL_CTX_set_info_callback|. */ +#define SSL_MODE_ENABLE_FALSE_START 0x00000080L + +/* SSL_MODE_CBC_RECORD_SPLITTING causes multi-byte CBC records in SSL 3.0 and + * TLS 1.0 to be split in two: the first record will contain a single byte and + * the second will contain the remainder. This effectively randomises the IV and + * prevents BEAST attacks. */ +#define SSL_MODE_CBC_RECORD_SPLITTING 0x00000100L + +/* SSL_MODE_NO_SESSION_CREATION will cause any attempts to create a session to + * fail with SSL_R_SESSION_MAY_NOT_BE_CREATED. This can be used to enforce that + * session resumption is used for a given SSL*. */ +#define SSL_MODE_NO_SESSION_CREATION 0x00000200L + +/* SSL_MODE_SEND_FALLBACK_SCSV sends TLS_FALLBACK_SCSV in the ClientHello. + * To be set only by applications that reconnect with a downgraded protocol + * version; see RFC 7507 for details. + * + * DO NOT ENABLE THIS if your application attempts a normal handshake. Only use + * this in explicit fallback retries, following the guidance in RFC 7507. */ +#define SSL_MODE_SEND_FALLBACK_SCSV 0x00000400L + +/* SSL_CTX_set_mode enables all modes set in |mode| (which should be one or more + * of the |SSL_MODE_*| values, ORed together) in |ctx|. It returns a bitmask + * representing the resulting enabled modes. */ +OPENSSL_EXPORT uint32_t SSL_CTX_set_mode(SSL_CTX *ctx, uint32_t mode); + +/* SSL_CTX_clear_mode disables all modes set in |mode| (which should be one or + * more of the |SSL_MODE_*| values, ORed together) in |ctx|. It returns a + * bitmask representing the resulting enabled modes. */ +OPENSSL_EXPORT uint32_t SSL_CTX_clear_mode(SSL_CTX *ctx, uint32_t mode); + +/* SSL_CTX_get_mode returns a bitmask of |SSL_MODE_*| values that represent all + * the modes enabled for |ssl|. */ +OPENSSL_EXPORT uint32_t SSL_CTX_get_mode(const SSL_CTX *ctx); + +/* SSL_set_mode enables all modes set in |mode| (which should be one or more of + * the |SSL_MODE_*| values, ORed together) in |ssl|. It returns a bitmask + * representing the resulting enabled modes. */ +OPENSSL_EXPORT uint32_t SSL_set_mode(SSL *ssl, uint32_t mode); + +/* SSL_clear_mode disables all modes set in |mode| (which should be one or more + * of the |SSL_MODE_*| values, ORed together) in |ssl|. It returns a bitmask + * representing the resulting enabled modes. */ +OPENSSL_EXPORT uint32_t SSL_clear_mode(SSL *ssl, uint32_t mode); + +/* SSL_get_mode returns a bitmask of |SSL_MODE_*| values that represent all the + * modes enabled for |ssl|. */ +OPENSSL_EXPORT uint32_t SSL_get_mode(const SSL *ssl); + + +/* Configuring certificates and private keys. + * + * These functions configure the connection's leaf certificate, private key, and + * certificate chain. The certificate chain is ordered leaf to root (as sent on + * the wire) but does not include the leaf. Both client and server certificates + * use these functions. + * + * Certificates and keys may be configured before the handshake or dynamically + * in the early callback and certificate callback. */ + +/* SSL_CTX_use_certificate sets |ctx|'s leaf certificate to |x509|. It returns + * one on success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_use_certificate(SSL_CTX *ctx, X509 *x509); + +/* SSL_use_certificate sets |ssl|'s leaf certificate to |x509|. It returns one + * on success and zero on failure. */ +OPENSSL_EXPORT int SSL_use_certificate(SSL *ssl, X509 *x509); + +/* SSL_CTX_use_PrivateKey sets |ctx|'s private key to |pkey|. It returns one on + * success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_use_PrivateKey(SSL_CTX *ctx, EVP_PKEY *pkey); + +/* SSL_use_PrivateKey sets |ssl|'s private key to |pkey|. It returns one on + * success and zero on failure. */ +OPENSSL_EXPORT int SSL_use_PrivateKey(SSL *ssl, EVP_PKEY *pkey); + +/* SSL_CTX_set0_chain sets |ctx|'s certificate chain, excluding the leaf, to + * |chain|. On success, it returns one and takes ownership of |chain|. + * Otherwise, it returns zero. */ +OPENSSL_EXPORT int SSL_CTX_set0_chain(SSL_CTX *ctx, STACK_OF(X509) *chain); + +/* SSL_CTX_set1_chain sets |ctx|'s certificate chain, excluding the leaf, to + * |chain|. It returns one on success and zero on failure. The caller retains + * ownership of |chain| and may release it freely. */ +OPENSSL_EXPORT int SSL_CTX_set1_chain(SSL_CTX *ctx, STACK_OF(X509) *chain); + +/* SSL_set0_chain sets |ssl|'s certificate chain, excluding the leaf, to + * |chain|. On success, it returns one and takes ownership of |chain|. + * Otherwise, it returns zero. */ +OPENSSL_EXPORT int SSL_set0_chain(SSL *ssl, STACK_OF(X509) *chain); + +/* SSL_set1_chain sets |ssl|'s certificate chain, excluding the leaf, to + * |chain|. It returns one on success and zero on failure. The caller retains + * ownership of |chain| and may release it freely. */ +OPENSSL_EXPORT int SSL_set1_chain(SSL *ssl, STACK_OF(X509) *chain); + +/* SSL_CTX_add0_chain_cert appends |x509| to |ctx|'s certificate chain. On + * success, it returns one and takes ownership of |x509|. Otherwise, it returns + * zero. */ +OPENSSL_EXPORT int SSL_CTX_add0_chain_cert(SSL_CTX *ctx, X509 *x509); + +/* SSL_CTX_add1_chain_cert appends |x509| to |ctx|'s certificate chain. It + * returns one on success and zero on failure. The caller retains ownership of + * |x509| and may release it freely. */ +OPENSSL_EXPORT int SSL_CTX_add1_chain_cert(SSL_CTX *ctx, X509 *x509); + +/* SSL_add0_chain_cert appends |x509| to |ctx|'s certificate chain. On success, + * it returns one and takes ownership of |x509|. Otherwise, it returns zero. */ +OPENSSL_EXPORT int SSL_add0_chain_cert(SSL *ssl, X509 *x509); + +/* SSL_CTX_add_extra_chain_cert calls |SSL_CTX_add0_chain_cert|. */ +OPENSSL_EXPORT int SSL_CTX_add_extra_chain_cert(SSL_CTX *ctx, X509 *x509); + +/* SSL_add1_chain_cert appends |x509| to |ctx|'s certificate chain. It returns + * one on success and zero on failure. The caller retains ownership of |x509| + * and may release it freely. */ +OPENSSL_EXPORT int SSL_add1_chain_cert(SSL *ssl, X509 *x509); + +/* SSL_CTX_clear_chain_certs clears |ctx|'s certificate chain and returns + * one. */ +OPENSSL_EXPORT int SSL_CTX_clear_chain_certs(SSL_CTX *ctx); + +/* SSL_CTX_clear_extra_chain_certs calls |SSL_CTX_clear_chain_certs|. */ +OPENSSL_EXPORT int SSL_CTX_clear_extra_chain_certs(SSL_CTX *ctx); + +/* SSL_clear_chain_certs clears |ssl|'s certificate chain and returns one. */ +OPENSSL_EXPORT int SSL_clear_chain_certs(SSL *ssl); + +/* SSL_CTX_set_cert_cb sets a callback that is called to select a certificate. + * The callback returns one on success, zero on internal error, and a negative + * number on failure or to pause the handshake. If the handshake is paused, + * |SSL_get_error| will return |SSL_ERROR_WANT_X509_LOOKUP|. + * + * On the client, the callback may call |SSL_get0_certificate_types| and + * |SSL_get_client_CA_list| for information on the server's certificate + * request. */ +OPENSSL_EXPORT void SSL_CTX_set_cert_cb(SSL_CTX *ctx, + int (*cb)(SSL *ssl, void *arg), + void *arg); + +/* SSL_set_cert_cb sets a callback that is called to select a certificate. The + * callback returns one on success, zero on internal error, and a negative + * number on failure or to pause the handshake. If the handshake is paused, + * |SSL_get_error| will return |SSL_ERROR_WANT_X509_LOOKUP|. + * + * On the client, the callback may call |SSL_get0_certificate_types| and + * |SSL_get_client_CA_list| for information on the server's certificate + * request. */ +OPENSSL_EXPORT void SSL_set_cert_cb(SSL *ssl, int (*cb)(SSL *ssl, void *arg), + void *arg); + +/* SSL_get0_certificate_types, for a client, sets |*out_types| to an array + * containing the client certificate types requested by a server. It returns the + * length of the array. + * + * The behavior of this function is undefined except during the callbacks set by + * by |SSL_CTX_set_cert_cb| and |SSL_CTX_set_client_cert_cb| or when the + * handshake is paused because of them. */ +OPENSSL_EXPORT size_t SSL_get0_certificate_types(SSL *ssl, + const uint8_t **out_types); + +/* SSL_certs_clear resets the private key, leaf certificate, and certificate + * chain of |ssl|. */ +OPENSSL_EXPORT void SSL_certs_clear(SSL *ssl); + +/* SSL_CTX_check_private_key returns one if the certificate and private key + * configured in |ctx| are consistent and zero otherwise. */ +OPENSSL_EXPORT int SSL_CTX_check_private_key(const SSL_CTX *ctx); + +/* SSL_check_private_key returns one if the certificate and private key + * configured in |ssl| are consistent and zero otherwise. */ +OPENSSL_EXPORT int SSL_check_private_key(const SSL *ssl); + +/* SSL_CTX_get0_certificate returns |ctx|'s leaf certificate. */ +OPENSSL_EXPORT X509 *SSL_CTX_get0_certificate(const SSL_CTX *ctx); + +/* SSL_get_certificate returns |ssl|'s leaf certificate. */ +OPENSSL_EXPORT X509 *SSL_get_certificate(const SSL *ssl); + +/* SSL_CTX_get0_privatekey returns |ctx|'s private key. */ +OPENSSL_EXPORT EVP_PKEY *SSL_CTX_get0_privatekey(const SSL_CTX *ctx); + +/* SSL_get_privatekey returns |ssl|'s private key. */ +OPENSSL_EXPORT EVP_PKEY *SSL_get_privatekey(const SSL *ssl); + +/* SSL_CTX_get0_chain_certs sets |*out_chain| to |ctx|'s certificate chain and + * returns one. */ +OPENSSL_EXPORT int SSL_CTX_get0_chain_certs(const SSL_CTX *ctx, + STACK_OF(X509) **out_chain); + +/* SSL_CTX_get_extra_chain_certs calls |SSL_CTX_get0_chain_certs|. */ +OPENSSL_EXPORT int SSL_CTX_get_extra_chain_certs(const SSL_CTX *ctx, + STACK_OF(X509) **out_chain); + +/* SSL_get0_chain_certs sets |*out_chain| to |ssl|'s certificate chain and + * returns one. */ +OPENSSL_EXPORT int SSL_get0_chain_certs(const SSL *ssl, + STACK_OF(X509) **out_chain); + +/* SSL_CTX_set_signed_cert_timestamp_list sets the list of signed certificate + * timestamps that is sent to clients that request it. The |list| argument must + * contain one or more SCT structures serialised as a SignedCertificateTimestamp + * List (see https://tools.ietf.org/html/rfc6962#section-3.3) – i.e. each SCT + * is prefixed by a big-endian, uint16 length and the concatenation of one or + * more such prefixed SCTs are themselves also prefixed by a uint16 length. It + * returns one on success and zero on error. The caller retains ownership of + * |list|. */ +OPENSSL_EXPORT int SSL_CTX_set_signed_cert_timestamp_list(SSL_CTX *ctx, + const uint8_t *list, + size_t list_len); + +/* SSL_CTX_set_ocsp_response sets the OCSP reponse that is sent to clients + * which request it. It returns one on success and zero on error. The caller + * retains ownership of |response|. */ +OPENSSL_EXPORT int SSL_CTX_set_ocsp_response(SSL_CTX *ctx, + const uint8_t *response, + size_t response_len); + +/* SSL_set_private_key_digest_prefs copies |num_digests| NIDs from |digest_nids| + * into |ssl|. These digests will be used, in decreasing order of preference, + * when signing with |ssl|'s private key. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int SSL_set_private_key_digest_prefs(SSL *ssl, + const int *digest_nids, + size_t num_digests); + + +/* Certificate and private key convenience functions. */ + +/* SSL_CTX_use_RSAPrivateKey sets |ctx|'s private key to |rsa|. It returns one + * on success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_use_RSAPrivateKey(SSL_CTX *ctx, RSA *rsa); + +/* SSL_use_RSAPrivateKey sets |ctx|'s private key to |rsa|. It returns one on + * success and zero on failure. */ +OPENSSL_EXPORT int SSL_use_RSAPrivateKey(SSL *ssl, RSA *rsa); + +/* The following functions configure certificates or private keys but take as + * input DER-encoded structures. They return one on success and zero on + * failure. */ + +OPENSSL_EXPORT int SSL_CTX_use_certificate_ASN1(SSL_CTX *ctx, size_t der_len, + const uint8_t *der); +OPENSSL_EXPORT int SSL_use_certificate_ASN1(SSL *ssl, const uint8_t *der, + size_t der_len); + +OPENSSL_EXPORT int SSL_CTX_use_PrivateKey_ASN1(int pk, SSL_CTX *ctx, + const uint8_t *der, + size_t der_len); +OPENSSL_EXPORT int SSL_use_PrivateKey_ASN1(int type, SSL *ssl, + const uint8_t *der, size_t der_len); + +OPENSSL_EXPORT int SSL_CTX_use_RSAPrivateKey_ASN1(SSL_CTX *ctx, + const uint8_t *der, + size_t der_len); +OPENSSL_EXPORT int SSL_use_RSAPrivateKey_ASN1(SSL *ssl, const uint8_t *der, + size_t der_len); + +/* The following functions configure certificates or private keys but take as + * input files to read from. They return one on success and zero on failure. The + * |type| parameter is one of the |SSL_FILETYPE_*| values and determines whether + * the file's contents are read as PEM or DER. */ + +#define SSL_FILETYPE_ASN1 X509_FILETYPE_ASN1 +#define SSL_FILETYPE_PEM X509_FILETYPE_PEM + +OPENSSL_EXPORT int SSL_CTX_use_RSAPrivateKey_file(SSL_CTX *ctx, + const char *file, + int type); +OPENSSL_EXPORT int SSL_use_RSAPrivateKey_file(SSL *ssl, const char *file, + int type); + +OPENSSL_EXPORT int SSL_CTX_use_certificate_file(SSL_CTX *ctx, const char *file, + int type); +OPENSSL_EXPORT int SSL_use_certificate_file(SSL *ssl, const char *file, + int type); + +OPENSSL_EXPORT int SSL_CTX_use_PrivateKey_file(SSL_CTX *ctx, const char *file, + int type); +OPENSSL_EXPORT int SSL_use_PrivateKey_file(SSL *ssl, const char *file, + int type); + +/* SSL_CTX_use_certificate_chain_file configures certificates for |ctx|. It + * reads the contents of |file| as a PEM-encoded leaf certificate followed + * optionally by the certificate chain to send to the peer. It returns one on + * success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_use_certificate_chain_file(SSL_CTX *ctx, + const char *file); + +/* SSL_CTX_set_default_passwd_cb sets the password callback for PEM-based + * convenience functions called on |ctx|. */ +OPENSSL_EXPORT void SSL_CTX_set_default_passwd_cb(SSL_CTX *ctx, + pem_password_cb *cb); + +/* SSL_CTX_set_default_passwd_cb_userdata sets the userdata parameter for + * |ctx|'s password callback. */ +OPENSSL_EXPORT void SSL_CTX_set_default_passwd_cb_userdata(SSL_CTX *ctx, + void *data); + + +/* Custom private keys. */ + +enum ssl_private_key_result_t { + ssl_private_key_success, + ssl_private_key_retry, + ssl_private_key_failure, +}; + +/* SSL_PRIVATE_KEY_METHOD describes private key hooks. This is used to off-load + * signing operations to a custom, potentially asynchronous, backend. */ +typedef struct ssl_private_key_method_st { + /* type returns either |EVP_PKEY_RSA| or |EVP_PKEY_EC| to denote the type of + * key used by |ssl|. */ + int (*type)(SSL *ssl); + + /* max_signature_len returns the maximum length of a signature signed by the + * key used by |ssl|. This must be a constant value for a given |ssl|. */ + size_t (*max_signature_len)(SSL *ssl); + + /* sign signs |in_len| bytes of digest from |in|. |md| is the hash function + * used to calculate |in|. On success, it returns |ssl_private_key_success| + * and writes at most |max_out| bytes of signature data to |out|. On failure, + * it returns |ssl_private_key_failure|. If the operation has not completed, + * it returns |ssl_private_key_retry|. |sign| should arrange for the + * high-level operation on |ssl| to be retried when the operation is + * completed. This will result in a call to |sign_complete|. + * + * If the key is an RSA key, implementations must use PKCS#1 padding. |in| is + * the digest itself, so the DigestInfo prefix, if any, must be prepended by + * |sign|. If |md| is |EVP_md5_sha1|, there is no prefix. + * + * It is an error to call |sign| while another private key operation is in + * progress on |ssl|. */ + enum ssl_private_key_result_t (*sign)(SSL *ssl, uint8_t *out, size_t *out_len, + size_t max_out, const EVP_MD *md, + const uint8_t *in, size_t in_len); + + /* sign_complete completes a pending |sign| operation. If the operation has + * completed, it returns |ssl_private_key_success| and writes the result to + * |out| as in |sign|. Otherwise, it returns |ssl_private_key_failure| on + * failure and |ssl_private_key_retry| if the operation is still in progress. + * + * |sign_complete| may be called arbitrarily many times before completion, but + * it is an error to call |sign_complete| if there is no pending |sign| + * operation in progress on |ssl|. */ + enum ssl_private_key_result_t (*sign_complete)(SSL *ssl, uint8_t *out, + size_t *out_len, + size_t max_out); + + /* decrypt decrypts |in_len| bytes of encrypted data from |in|. On success it + * returns |ssl_private_key_success|, writes at most |max_out| bytes of + * decrypted data to |out| and sets |*out_len| to the actual number of bytes + * written. On failure it returns |ssl_private_key_failure|. If the operation + * has not completed, it returns |ssl_private_key_retry|. The caller should + * arrange for the high-level operation on |ssl| to be retried when the + * operation is completed, which will result in a call to |decrypt_complete|. + * This function only works with RSA keys and should perform a raw RSA + * decryption operation with no padding. + * + * It is an error to call |decrypt| while another private key operation is in + * progress on |ssl|. */ + enum ssl_private_key_result_t (*decrypt)(SSL *ssl, uint8_t *out, + size_t *out_len, size_t max_out, + const uint8_t *in, size_t in_len); + + /* decrypt_complete completes a pending |decrypt| operation. If the operation + * has completed, it returns |ssl_private_key_success| and writes the result + * to |out| as in |decrypt|. Otherwise, it returns |ssl_private_key_failure| + * on failure and |ssl_private_key_retry| if the operation is still in + * progress. + * + * |decrypt_complete| may be called arbitrarily many times before completion, + * but it is an error to call |decrypt_complete| if there is no pending + * |decrypt| operation in progress on |ssl|. */ + enum ssl_private_key_result_t (*decrypt_complete)(SSL *ssl, uint8_t *out, + size_t *out_len, + size_t max_out); +} SSL_PRIVATE_KEY_METHOD; + +/* SSL_set_private_key_method configures a custom private key on |ssl|. + * |key_method| must remain valid for the lifetime of |ssl|. */ +OPENSSL_EXPORT void SSL_set_private_key_method( + SSL *ssl, const SSL_PRIVATE_KEY_METHOD *key_method); + + +/* Cipher suites. + * + * |SSL_CIPHER| objects represent cipher suites. */ + +DECLARE_STACK_OF(SSL_CIPHER) + +/* SSL_get_cipher_by_value returns the structure representing a TLS cipher + * suite based on its assigned number, or NULL if unknown. See + * https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-4. */ +OPENSSL_EXPORT const SSL_CIPHER *SSL_get_cipher_by_value(uint16_t value); + +/* SSL_CIPHER_get_id returns |cipher|'s id. It may be cast to a |uint16_t| to + * get the cipher suite value. */ +OPENSSL_EXPORT uint32_t SSL_CIPHER_get_id(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_AES returns one if |cipher| uses AES (either GCM or CBC + * mode). */ +OPENSSL_EXPORT int SSL_CIPHER_is_AES(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_has_MD5_HMAC returns one if |cipher| uses HMAC-MD5. */ +OPENSSL_EXPORT int SSL_CIPHER_has_MD5_HMAC(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_has_SHA1_HMAC returns one if |cipher| uses HMAC-SHA1. */ +OPENSSL_EXPORT int SSL_CIPHER_has_SHA1_HMAC(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_AESGCM returns one if |cipher| uses AES-GCM. */ +OPENSSL_EXPORT int SSL_CIPHER_is_AESGCM(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_AES128GCM returns one if |cipher| uses 128-bit AES-GCM. */ +OPENSSL_EXPORT int SSL_CIPHER_is_AES128GCM(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_AES128CBC returns one if |cipher| uses 128-bit AES in CBC + * mode. */ +OPENSSL_EXPORT int SSL_CIPHER_is_AES128CBC(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_AES256CBC returns one if |cipher| uses 256-bit AES in CBC + * mode. */ +OPENSSL_EXPORT int SSL_CIPHER_is_AES256CBC(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_CHACHA20POLY1305 returns one if |cipher| uses + * CHACHA20_POLY1305. Note this includes both the + * draft-ietf-tls-chacha20-poly1305-04 and draft-agl-tls-chacha20poly1305-04 + * versions. */ +OPENSSL_EXPORT int SSL_CIPHER_is_CHACHA20POLY1305(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_NULL returns one if |cipher| does not encrypt. */ +OPENSSL_EXPORT int SSL_CIPHER_is_NULL(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_RC4 returns one if |cipher| uses RC4. */ +OPENSSL_EXPORT int SSL_CIPHER_is_RC4(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_block_cipher returns one if |cipher| is a block cipher. */ +OPENSSL_EXPORT int SSL_CIPHER_is_block_cipher(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_ECDSA returns one if |cipher| uses ECDSA. */ +OPENSSL_EXPORT int SSL_CIPHER_is_ECDSA(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_is_ECDHE returns one if |cipher| uses ECDHE. */ +OPENSSL_EXPORT int SSL_CIPHER_is_ECDHE(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_get_min_version returns the minimum protocol version required + * for |cipher|. */ +OPENSSL_EXPORT uint16_t SSL_CIPHER_get_min_version(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_get_name returns the OpenSSL name of |cipher|. */ +OPENSSL_EXPORT const char *SSL_CIPHER_get_name(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_get_kx_name returns a string that describes the key-exchange + * method used by |cipher|. For example, "ECDHE_ECDSA". */ +OPENSSL_EXPORT const char *SSL_CIPHER_get_kx_name(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_get_rfc_name returns a newly-allocated string with the standard + * name for |cipher| or NULL on error. For example, + * "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256". The caller is responsible for + * calling |OPENSSL_free| on the result. */ +OPENSSL_EXPORT char *SSL_CIPHER_get_rfc_name(const SSL_CIPHER *cipher); + +/* SSL_CIPHER_get_bits returns the strength, in bits, of |cipher|. If + * |out_alg_bits| is not NULL, it writes the number of bits consumed by the + * symmetric algorithm to |*out_alg_bits|. */ +OPENSSL_EXPORT int SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, + int *out_alg_bits); + + +/* Cipher suite configuration. + * + * OpenSSL uses a mini-language to configure cipher suites. The language + * maintains an ordered list of enabled ciphers, along with an ordered list of + * disabled but available ciphers. Initially, all ciphers are disabled with a + * default ordering. The cipher string is then interpreted as a sequence of + * directives, separated by colons, each of which modifies this state. + * + * Most directives consist of a one character or empty opcode followed by a + * selector which matches a subset of available ciphers. + * + * Available opcodes are: + * + * The empty opcode enables and appends all matching disabled ciphers to the + * end of the enabled list. The newly appended ciphers are ordered relative to + * each other matching their order in the disabled list. + * + * |-| disables all matching enabled ciphers and prepends them to the disabled + * list, with relative order from the enabled list preserved. This means the + * most recently disabled ciphers get highest preference relative to other + * disabled ciphers if re-enabled. + * + * |+| moves all matching enabled ciphers to the end of the enabled list, with + * relative order preserved. + * + * |!| deletes all matching ciphers, enabled or not, from either list. Deleted + * ciphers will not matched by future operations. + * + * A selector may be a specific cipher (using the OpenSSL name for the cipher) + * or one or more rules separated by |+|. The final selector matches the + * intersection of each rule. For instance, |AESGCM+aECDSA| matches + * ECDSA-authenticated AES-GCM ciphers. + * + * Available cipher rules are: + * + * |ALL| matches all ciphers. + * + * |kRSA|, |kDHE|, |kECDHE|, and |kPSK| match ciphers using plain RSA, DHE, + * ECDHE, and plain PSK key exchanges, respectively. Note that ECDHE_PSK is + * matched by |kECDHE| and not |kPSK|. + * + * |aRSA|, |aECDSA|, and |aPSK| match ciphers authenticated by RSA, ECDSA, and + * a pre-shared key, respectively. + * + * |RSA|, |DHE|, |ECDHE|, |PSK|, |ECDSA|, and |PSK| are aliases for the + * corresponding |k*| or |a*| cipher rule. |RSA| is an alias for |kRSA|, not + * |aRSA|. + * + * |3DES|, |RC4|, |AES128|, |AES256|, |AES|, |AESGCM|, |CHACHA20| match + * ciphers whose bulk cipher use the corresponding encryption scheme. Note + * that |AES|, |AES128|, and |AES256| match both CBC and GCM ciphers. + * + * |MD5|, |SHA1|, |SHA256|, and |SHA384| match legacy cipher suites using the + * corresponding hash function in their MAC. AEADs are matched by none of + * these. + * + * |SHA| is an alias for |SHA1|. + * + * Although implemented, authentication-only ciphers match no rules and must be + * explicitly selected by name. + * + * Deprecated cipher rules: + * + * |kEDH|, |EDH|, |kEECDH|, and |EECDH| are legacy aliases for |kDHE|, |DHE|, + * |kECDHE|, and |ECDHE|, respectively. + * + * |MEDIUM| and |HIGH| match RC4-based ciphers and all others, respectively. + * + * |FIPS| is an alias for |HIGH|. + * + * |SSLv3| and |TLSv1| match ciphers available in TLS 1.1 or earlier. + * |TLSv1_2| matches ciphers new in TLS 1.2. This is confusing and should not + * be used. + * + * Unknown rules silently match nothing. + * + * The special |@STRENGTH| directive will sort all enabled ciphers by strength. + * + * The |DEFAULT| directive, when appearing at the front of the string, expands + * to the default ordering of available ciphers. + * + * If configuring a server, one may also configure equal-preference groups to + * partially respect the client's preferences when + * |SSL_OP_CIPHER_SERVER_PREFERENCE| is enabled. Ciphers in an equal-preference + * group have equal priority and use the client order. This may be used to + * enforce that AEADs are preferred but select AES-GCM vs. ChaCha20-Poly1305 + * based on client preferences. An equal-preference is specified with square + * brackets, combining multiple selectors separated by |. For example: + * + * [ECDHE-ECDSA-CHACHA20-POLY1305|ECDHE-ECDSA-AES128-GCM-SHA256] + * + * Once an equal-preference group is used, future directives must be + * opcode-less. */ + +/* SSL_DEFAULT_CIPHER_LIST is the default cipher suite configuration. It is + * substituted when a cipher string starts with 'DEFAULT'. */ +#define SSL_DEFAULT_CIPHER_LIST "ALL" + +/* SSL_CTX_set_cipher_list configures the cipher list for |ctx|, evaluating + * |str| as a cipher string. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_set_cipher_list(SSL_CTX *ctx, const char *str); + +/* SSL_CTX_set_cipher_list_tls10 configures the TLS 1.0+ cipher list for |ctx|, + * evaluating |str| as a cipher string. It returns one on success and zero on + * failure. If set, servers will use this cipher suite list for TLS 1.0 or + * higher. */ +OPENSSL_EXPORT int SSL_CTX_set_cipher_list_tls10(SSL_CTX *ctx, const char *str); + +/* SSL_CTX_set_cipher_list_tls11 configures the TLS 1.1+ cipher list for |ctx|, + * evaluating |str| as a cipher string. It returns one on success and zero on + * failure. If set, servers will use this cipher suite list for TLS 1.1 or + * higher. */ +OPENSSL_EXPORT int SSL_CTX_set_cipher_list_tls11(SSL_CTX *ctx, const char *str); + +/* SSL_set_cipher_list configures the cipher list for |ssl|, evaluating |str| as + * a cipher string. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int SSL_set_cipher_list(SSL *ssl, const char *str); + +/* SSL_get_ciphers returns the cipher list for |ssl|, in order of preference. If + * |SSL_CTX_set_cipher_list_tls10| or |SSL_CTX_set_cipher_list_tls11| has been + * used, the corresponding list for the current version is returned. */ +OPENSSL_EXPORT STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *ssl); + + +/* Connection information. */ + +/* SSL_is_init_finished returns one if |ssl| has completed its initial handshake + * and has no pending handshake. It returns zero otherwise. */ +OPENSSL_EXPORT int SSL_is_init_finished(const SSL *ssl); + +/* SSL_in_init returns one if |ssl| has a pending handshake and zero + * otherwise. */ +OPENSSL_EXPORT int SSL_in_init(const SSL *ssl); + +/* SSL_in_false_start returns one if |ssl| has a pending handshake that is in + * False Start. |SSL_write| may be called at this point without waiting for the + * peer, but |SSL_read| will complete the handshake before accepting application + * data. + * + * See also |SSL_MODE_ENABLE_FALSE_START|. */ +OPENSSL_EXPORT int SSL_in_false_start(const SSL *ssl); + +/* SSL_get_peer_certificate returns the peer's leaf certificate or NULL if the + * peer did not use certificates. The caller must call |X509_free| on the + * result to release it. */ +OPENSSL_EXPORT X509 *SSL_get_peer_certificate(const SSL *ssl); + +/* SSL_get_peer_cert_chain returns the peer's certificate chain or NULL if + * unavailable or the peer did not use certificates. This is the unverified + * list of certificates as sent by the peer, not the final chain built during + * verification. For historical reasons, this value may not be available if + * resuming a serialized |SSL_SESSION|. The caller does not take ownership of + * the result. + * + * WARNING: This function behaves differently between client and server. If + * |ssl| is a server, the returned chain does not include the leaf certificate. + * If a client, it does. */ +OPENSSL_EXPORT STACK_OF(X509) *SSL_get_peer_cert_chain(const SSL *ssl); + +/* SSL_get0_signed_cert_timestamp_list sets |*out| and |*out_len| to point to + * |*out_len| bytes of SCT information from the server. This is only valid if + * |ssl| is a client. The SCT information is a SignedCertificateTimestampList + * (including the two leading length bytes). + * See https://tools.ietf.org/html/rfc6962#section-3.3 + * If no SCT was received then |*out_len| will be zero on return. + * + * WARNING: the returned data is not guaranteed to be well formed. */ +OPENSSL_EXPORT void SSL_get0_signed_cert_timestamp_list(const SSL *ssl, + const uint8_t **out, + size_t *out_len); + +/* SSL_get0_ocsp_response sets |*out| and |*out_len| to point to |*out_len| + * bytes of an OCSP response from the server. This is the DER encoding of an + * OCSPResponse type as defined in RFC 2560. + * + * WARNING: the returned data is not guaranteed to be well formed. */ +OPENSSL_EXPORT void SSL_get0_ocsp_response(const SSL *ssl, const uint8_t **out, + size_t *out_len); + +/* SSL_get_tls_unique writes at most |max_out| bytes of the tls-unique value + * for |ssl| to |out| and sets |*out_len| to the number of bytes written. It + * returns one on success or zero on error. In general |max_out| should be at + * least 12. + * + * This function will always fail if the initial handshake has not completed. + * The tls-unique value will change after a renegotiation but, since + * renegotiations can be initiated by the server at any point, the higher-level + * protocol must either leave them disabled or define states in which the + * tls-unique value can be read. + * + * The tls-unique value is defined by + * https://tools.ietf.org/html/rfc5929#section-3.1. Due to a weakness in the + * TLS protocol, tls-unique is broken for resumed connections unless the + * Extended Master Secret extension is negotiated. Thus this function will + * return zero if |ssl| performed session resumption unless EMS was used when + * negotiating the original session. */ +OPENSSL_EXPORT int SSL_get_tls_unique(const SSL *ssl, uint8_t *out, + size_t *out_len, size_t max_out); + +/* SSL_get_extms_support returns one if the Extended Master Secret + * extension was negotiated. Otherwise, it returns zero. */ +OPENSSL_EXPORT int SSL_get_extms_support(const SSL *ssl); + +/* SSL_get_current_cipher returns the cipher used in the current outgoing + * connection state, or NULL if the null cipher is active. */ +OPENSSL_EXPORT const SSL_CIPHER *SSL_get_current_cipher(const SSL *ssl); + +/* SSL_session_reused returns one if |ssl| performed an abbreviated handshake + * and zero otherwise. + * + * TODO(davidben): Hammer down the semantics of this API while a handshake, + * initial or renego, is in progress. */ +OPENSSL_EXPORT int SSL_session_reused(const SSL *ssl); + +/* SSL_get_secure_renegotiation_support returns one if the peer supports secure + * renegotiation (RFC 5746) and zero otherwise. */ +OPENSSL_EXPORT int SSL_get_secure_renegotiation_support(const SSL *ssl); + +/* SSL_export_keying_material exports a value derived from the master secret, as + * specified in RFC 5705. It writes |out_len| bytes to |out| given a label and + * optional context. (Since a zero length context is allowed, the |use_context| + * flag controls whether a context is included.) + * + * It returns one on success and zero otherwise. */ +OPENSSL_EXPORT int SSL_export_keying_material( + SSL *ssl, uint8_t *out, size_t out_len, const char *label, size_t label_len, + const uint8_t *context, size_t context_len, int use_context); + + +/* Custom extensions. + * + * The custom extension functions allow TLS extensions to be added to + * ClientHello and ServerHello messages. */ + +/* SSL_custom_ext_add_cb is a callback function that is called when the + * ClientHello (for clients) or ServerHello (for servers) is constructed. In + * the case of a server, this callback will only be called for a given + * extension if the ClientHello contained that extension – it's not possible to + * inject extensions into a ServerHello that the client didn't request. + * + * When called, |extension_value| will contain the extension number that is + * being considered for addition (so that a single callback can handle multiple + * extensions). If the callback wishes to include the extension, it must set + * |*out| to point to |*out_len| bytes of extension contents and return one. In + * this case, the corresponding |SSL_custom_ext_free_cb| callback will later be + * called with the value of |*out| once that data has been copied. + * + * If the callback does not wish to add an extension it must return zero. + * + * Alternatively, the callback can abort the connection by setting + * |*out_alert_value| to a TLS alert number and returning -1. */ +typedef int (*SSL_custom_ext_add_cb)(SSL *ssl, unsigned extension_value, + const uint8_t **out, size_t *out_len, + int *out_alert_value, void *add_arg); + +/* SSL_custom_ext_free_cb is a callback function that is called by OpenSSL iff + * an |SSL_custom_ext_add_cb| callback previously returned one. In that case, + * this callback is called and passed the |out| pointer that was returned by + * the add callback. This is to free any dynamically allocated data created by + * the add callback. */ +typedef void (*SSL_custom_ext_free_cb)(SSL *ssl, unsigned extension_value, + const uint8_t *out, void *add_arg); + +/* SSL_custom_ext_parse_cb is a callback function that is called by OpenSSL to + * parse an extension from the peer: that is from the ServerHello for a client + * and from the ClientHello for a server. + * + * When called, |extension_value| will contain the extension number and the + * contents of the extension are |contents_len| bytes at |contents|. + * + * The callback must return one to continue the handshake. Otherwise, if it + * returns zero, a fatal alert with value |*out_alert_value| is sent and the + * handshake is aborted. */ +typedef int (*SSL_custom_ext_parse_cb)(SSL *ssl, unsigned extension_value, + const uint8_t *contents, + size_t contents_len, + int *out_alert_value, void *parse_arg); + +/* SSL_extension_supported returns one iff OpenSSL internally handles + * extensions of type |extension_value|. This can be used to avoid registering + * custom extension handlers for extensions that a future version of OpenSSL + * may handle internally. */ +OPENSSL_EXPORT int SSL_extension_supported(unsigned extension_value); + +/* SSL_CTX_add_client_custom_ext registers callback functions for handling + * custom TLS extensions for client connections. + * + * If |add_cb| is NULL then an empty extension will be added in each + * ClientHello. Otherwise, see the comment for |SSL_custom_ext_add_cb| about + * this callback. + * + * The |free_cb| may be NULL if |add_cb| doesn't dynamically allocate data that + * needs to be freed. + * + * It returns one on success or zero on error. It's always an error to register + * callbacks for the same extension twice, or to register callbacks for an + * extension that OpenSSL handles internally. See |SSL_extension_supported| to + * discover, at runtime, which extensions OpenSSL handles internally. */ +OPENSSL_EXPORT int SSL_CTX_add_client_custom_ext( + SSL_CTX *ctx, unsigned extension_value, SSL_custom_ext_add_cb add_cb, + SSL_custom_ext_free_cb free_cb, void *add_arg, + SSL_custom_ext_parse_cb parse_cb, void *parse_arg); + +/* SSL_CTX_add_server_custom_ext is the same as + * |SSL_CTX_add_client_custom_ext|, but for server connections. + * + * Unlike on the client side, if |add_cb| is NULL no extension will be added. + * The |add_cb|, if any, will only be called if the ClientHello contained a + * matching extension. */ +OPENSSL_EXPORT int SSL_CTX_add_server_custom_ext( + SSL_CTX *ctx, unsigned extension_value, SSL_custom_ext_add_cb add_cb, + SSL_custom_ext_free_cb free_cb, void *add_arg, + SSL_custom_ext_parse_cb parse_cb, void *parse_arg); + + +/* Sessions. + * + * An |SSL_SESSION| represents an SSL session that may be resumed in an + * abbreviated handshake. It is reference-counted and immutable. Once + * established, an |SSL_SESSION| may be shared by multiple |SSL| objects on + * different threads and must not be modified. */ + +DECLARE_LHASH_OF(SSL_SESSION) +DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) + +/* SSL_SESSION_new returns a newly-allocated blank |SSL_SESSION| or NULL on + * error. This may be useful in writing tests but otherwise should not be + * used outside the library. */ +OPENSSL_EXPORT SSL_SESSION *SSL_SESSION_new(void); + +/* SSL_SESSION_up_ref, if |session| is not NULL, increments the reference count + * of |session|. It then returns |session|. */ +OPENSSL_EXPORT SSL_SESSION *SSL_SESSION_up_ref(SSL_SESSION *session); + +/* SSL_SESSION_free decrements the reference count of |session|. If it reaches + * zero, all data referenced by |session| and |session| itself are released. */ +OPENSSL_EXPORT void SSL_SESSION_free(SSL_SESSION *session); + +/* SSL_SESSION_to_bytes serializes |in| into a newly allocated buffer and sets + * |*out_data| to that buffer and |*out_len| to its length. The caller takes + * ownership of the buffer and must call |OPENSSL_free| when done. It returns + * one on success and zero on error. */ +OPENSSL_EXPORT int SSL_SESSION_to_bytes(const SSL_SESSION *in, + uint8_t **out_data, size_t *out_len); + +/* SSL_SESSION_to_bytes_for_ticket serializes |in|, but excludes the session + * identification information, namely the session ID and ticket. */ +OPENSSL_EXPORT int SSL_SESSION_to_bytes_for_ticket(const SSL_SESSION *in, + uint8_t **out_data, + size_t *out_len); + +/* SSL_SESSION_from_bytes parses |in_len| bytes from |in| as an SSL_SESSION. It + * returns a newly-allocated |SSL_SESSION| on success or NULL on error. */ +OPENSSL_EXPORT SSL_SESSION *SSL_SESSION_from_bytes(const uint8_t *in, + size_t in_len); + +/* SSL_SESSION_get_version returns a string describing the TLS version |session| + * was established at. For example, "TLSv1.2" or "SSLv3". */ +OPENSSL_EXPORT const char *SSL_SESSION_get_version(const SSL_SESSION *session); + +/* SSL_SESSION_get_id returns a pointer to a buffer containg |session|'s session + * ID and sets |*out_len| to its length. */ +OPENSSL_EXPORT const uint8_t *SSL_SESSION_get_id(const SSL_SESSION *session, + unsigned *out_len); + +/* SSL_SESSION_get_time returns the time at which |session| was established in + * seconds since the UNIX epoch. */ +OPENSSL_EXPORT long SSL_SESSION_get_time(const SSL_SESSION *session); + +/* SSL_SESSION_get_timeout returns the lifetime of |session| in seconds. */ +OPENSSL_EXPORT long SSL_SESSION_get_timeout(const SSL_SESSION *session); + +/* SSL_SESSION_get_key_exchange_info returns a value that describes the + * strength of the asymmetric operation that provides confidentiality to + * |session|. Its interpretation depends on the operation used. See the + * documentation for this value in the |SSL_SESSION| structure. */ +OPENSSL_EXPORT uint32_t SSL_SESSION_get_key_exchange_info( + const SSL_SESSION *session); + +/* SSL_SESSION_get0_peer return's the peer leaf certificate stored in + * |session|. + * + * TODO(davidben): This should return a const X509 *. */ +OPENSSL_EXPORT X509 *SSL_SESSION_get0_peer(const SSL_SESSION *session); + +/* SSL_SESSION_set_time sets |session|'s creation time to |time| and returns + * |time|. This function may be useful in writing tests but otherwise should not + * be used. */ +OPENSSL_EXPORT long SSL_SESSION_set_time(SSL_SESSION *session, long time); + +/* SSL_SESSION_set_timeout sets |session|'s timeout to |timeout| and returns + * one. This function may be useful in writing tests but otherwise should not + * be used. */ +OPENSSL_EXPORT long SSL_SESSION_set_timeout(SSL_SESSION *session, long timeout); + +/* SSL_SESSION_set1_id_context sets |session|'s session ID context (see + * |SSL_CTX_set_session_id_context|) to |sid_ctx|. It returns one on success and + * zero on error. This function may be useful in writing tests but otherwise + * should not be used. */ +OPENSSL_EXPORT int SSL_SESSION_set1_id_context(SSL_SESSION *session, + const uint8_t *sid_ctx, + unsigned sid_ctx_len); + + +/* Session caching. + * + * Session caching allows clients to reconnect to a server based on saved + * parameters from a previous connection. + * + * For a server, the library implements a built-in internal session cache as an + * in-memory hash table. One may also register callbacks to implement a custom + * external session cache. An external cache may be used in addition to or + * instead of the internal one. Use |SSL_CTX_set_session_cache_mode| to toggle + * the internal cache. + * + * For a client, the only option is an external session cache. Prior to + * handshaking, the consumer should look up a session externally (keyed, for + * instance, by hostname) and use |SSL_set_session| to configure which session + * to offer. The callbacks may be used to determine when new sessions are + * available. + * + * Note that offering or accepting a session short-circuits most parameter + * negotiation. Resuming sessions across different configurations may result in + * surprising behavor. So, for instance, a client implementing a version + * fallback should shard its session cache by maximum protocol version. */ + +/* SSL_SESS_CACHE_OFF disables all session caching. */ +#define SSL_SESS_CACHE_OFF 0x0000 + +/* SSL_SESS_CACHE_CLIENT enables session caching for a client. The internal + * cache is never used on a client, so this only enables the callbacks. */ +#define SSL_SESS_CACHE_CLIENT 0x0001 + +/* SSL_SESS_CACHE_SERVER enables session caching for a server. */ +#define SSL_SESS_CACHE_SERVER 0x0002 + +/* SSL_SESS_CACHE_SERVER enables session caching for both client and server. */ +#define SSL_SESS_CACHE_BOTH (SSL_SESS_CACHE_CLIENT | SSL_SESS_CACHE_SERVER) + +/* SSL_SESS_CACHE_NO_AUTO_CLEAR disables automatically calling + * |SSL_CTX_flush_sessions| every 255 connections. */ +#define SSL_SESS_CACHE_NO_AUTO_CLEAR 0x0080 + +/* SSL_SESS_CACHE_NO_INTERNAL_LOOKUP, on a server, disables looking up a session + * from the internal session cache. */ +#define SSL_SESS_CACHE_NO_INTERNAL_LOOKUP 0x0100 + +/* SSL_SESS_CACHE_NO_INTERNAL_STORE, on a server, disables storing sessions in + * the internal session cache. */ +#define SSL_SESS_CACHE_NO_INTERNAL_STORE 0x0200 + +/* SSL_SESS_CACHE_NO_INTERNAL, on a server, disables the internal session + * cache. */ +#define SSL_SESS_CACHE_NO_INTERNAL \ + (SSL_SESS_CACHE_NO_INTERNAL_LOOKUP | SSL_SESS_CACHE_NO_INTERNAL_STORE) + +/* SSL_CTX_set_session_cache_mode sets the session cache mode bits for |ctx| to + * |mode|. It returns the previous value. */ +OPENSSL_EXPORT int SSL_CTX_set_session_cache_mode(SSL_CTX *ctx, int mode); + +/* SSL_CTX_get_session_cache_mode returns the session cache mode bits for + * |ctx| */ +OPENSSL_EXPORT int SSL_CTX_get_session_cache_mode(const SSL_CTX *ctx); + +/* SSL_set_session, for a client, configures |ssl| to offer to resume |session| + * in the initial handshake and returns one. The caller retains ownership of + * |session|. */ +OPENSSL_EXPORT int SSL_set_session(SSL *ssl, SSL_SESSION *session); + +/* SSL_get_session returns a non-owning pointer to |ssl|'s session. Prior to the + * initial handshake beginning, this is the session to be offered, set by + * |SSL_set_session|. After a handshake has finished, this is the currently + * active session. Its behavior is undefined while a handshake is progress. */ +OPENSSL_EXPORT SSL_SESSION *SSL_get_session(const SSL *ssl); + +/* SSL_get0_session is an alias for |SSL_get_session|. */ +#define SSL_get0_session SSL_get_session + +/* SSL_get1_session acts like |SSL_get_session| but returns a new reference to + * the session. */ +OPENSSL_EXPORT SSL_SESSION *SSL_get1_session(SSL *ssl); + +/* SSL_DEFAULT_SESSION_TIMEOUT is the default lifetime, in seconds, of a + * session. */ +#define SSL_DEFAULT_SESSION_TIMEOUT (2 * 60 * 60) + +/* SSL_CTX_set_timeout sets the lifetime, in seconds, of sessions created in + * |ctx| to |timeout|. */ +OPENSSL_EXPORT long SSL_CTX_set_timeout(SSL_CTX *ctx, long timeout); + +/* SSL_CTX_get_timeout returns the lifetime, in seconds, of sessions created in + * |ctx|. */ +OPENSSL_EXPORT long SSL_CTX_get_timeout(const SSL_CTX *ctx); + +/* SSL_CTX_set_session_id_context sets |ctx|'s session ID context to |sid_ctx|. + * It returns one on success and zero on error. The session ID context is an + * application-defined opaque byte string. A session will not be used in a + * connection without a matching session ID context. + * + * For a server, if |SSL_VERIFY_PEER| is enabled, it is an error to not set a + * session ID context. + * + * TODO(davidben): Is that check needed? That seems a special case of taking + * care not to cross-resume across configuration changes, and this is only + * relevant if a server requires client auth. */ +OPENSSL_EXPORT int SSL_CTX_set_session_id_context(SSL_CTX *ctx, + const uint8_t *sid_ctx, + unsigned sid_ctx_len); + +/* SSL_set_session_id_context sets |ssl|'s session ID context to |sid_ctx|. It + * returns one on success and zero on error. See also + * |SSL_CTX_set_session_id_context|. */ +OPENSSL_EXPORT int SSL_set_session_id_context(SSL *ssl, const uint8_t *sid_ctx, + unsigned sid_ctx_len); + +/* SSL_SESSION_CACHE_MAX_SIZE_DEFAULT is the default maximum size of a session + * cache. */ +#define SSL_SESSION_CACHE_MAX_SIZE_DEFAULT (1024 * 20) + +/* SSL_CTX_sess_set_cache_size sets the maximum size of |ctx|'s internal session + * cache to |size|. It returns the previous value. */ +OPENSSL_EXPORT unsigned long SSL_CTX_sess_set_cache_size(SSL_CTX *ctx, + unsigned long size); + +/* SSL_CTX_sess_get_cache_size returns the maximum size of |ctx|'s internal + * session cache. */ +OPENSSL_EXPORT unsigned long SSL_CTX_sess_get_cache_size(const SSL_CTX *ctx); + +/* SSL_CTX_sessions returns |ctx|'s internal session cache. */ +OPENSSL_EXPORT LHASH_OF(SSL_SESSION) *SSL_CTX_sessions(SSL_CTX *ctx); + +/* SSL_CTX_sess_number returns the number of sessions in |ctx|'s internal + * session cache. */ +OPENSSL_EXPORT size_t SSL_CTX_sess_number(const SSL_CTX *ctx); + +/* SSL_CTX_add_session inserts |session| into |ctx|'s internal session cache. It + * returns one on success and zero on error or if |session| is already in the + * cache. The caller retains its reference to |session|. */ +OPENSSL_EXPORT int SSL_CTX_add_session(SSL_CTX *ctx, SSL_SESSION *session); + +/* SSL_CTX_remove_session removes |session| from |ctx|'s internal session cache. + * It returns one on success and zero if |session| was not in the cache. */ +OPENSSL_EXPORT int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *session); + +/* SSL_CTX_flush_sessions removes all sessions from |ctx| which have expired as + * of time |time|. If |time| is zero, all sessions are removed. */ +OPENSSL_EXPORT void SSL_CTX_flush_sessions(SSL_CTX *ctx, long time); + +/* SSL_CTX_sess_set_new_cb sets the callback to be called when a new session is + * established and ready to be cached. If the session cache is disabled (the + * appropriate one of |SSL_SESS_CACHE_CLIENT| or |SSL_SESS_CACHE_SERVER| is + * unset), the callback is not called. + * + * The callback is passed a reference to |session|. It returns one if it takes + * ownership and zero otherwise. + * + * Note: For a client, the callback may be called on abbreviated handshakes if a + * ticket is renewed. Further, it may not be called until some time after + * |SSL_do_handshake| or |SSL_connect| completes if False Start is enabled. Thus + * it's recommended to use this callback over checking |SSL_session_reused| on + * handshake completion. + * + * TODO(davidben): Conditioning callbacks on |SSL_SESS_CACHE_CLIENT| or + * |SSL_SESS_CACHE_SERVER| doesn't make any sense when one could just as easily + * not supply the callbacks. Removing that condition and the client internal + * cache would simplify things. */ +OPENSSL_EXPORT void SSL_CTX_sess_set_new_cb( + SSL_CTX *ctx, int (*new_session_cb)(SSL *ssl, SSL_SESSION *session)); + +/* SSL_CTX_sess_get_new_cb returns the callback set by + * |SSL_CTX_sess_set_new_cb|. */ +OPENSSL_EXPORT int (*SSL_CTX_sess_get_new_cb(SSL_CTX *ctx))( + SSL *ssl, SSL_SESSION *session); + +/* SSL_CTX_sess_set_remove_cb sets a callback which is called when a session is + * removed from the internal session cache. + * + * TODO(davidben): What is the point of this callback? It seems useless since it + * only fires on sessions in the internal cache. */ +OPENSSL_EXPORT void SSL_CTX_sess_set_remove_cb( + SSL_CTX *ctx, + void (*remove_session_cb)(SSL_CTX *ctx, SSL_SESSION *session)); + +/* SSL_CTX_sess_get_remove_cb returns the callback set by + * |SSL_CTX_sess_set_remove_cb|. */ +OPENSSL_EXPORT void (*SSL_CTX_sess_get_remove_cb(SSL_CTX *ctx))( + SSL_CTX *ctx, SSL_SESSION *session); + +/* SSL_CTX_sess_set_get_cb sets a callback to look up a session by ID for a + * server. The callback is passed the session ID and should return a matching + * |SSL_SESSION| or NULL if not found. It should set |*out_copy| to zero and + * return a new reference to the session. This callback is not used for a + * client. + * + * For historical reasons, if |*out_copy| is set to one (default), the SSL + * library will take a new reference to the returned |SSL_SESSION|, expecting + * the callback to return a non-owning pointer. This is not recommended. If + * |ctx| and thus the callback is used on multiple threads, the session may be + * removed and invalidated before the SSL library calls |SSL_SESSION_up_ref|, + * whereas the callback may synchronize internally. + * + * To look up a session asynchronously, the callback may return + * |SSL_magic_pending_session_ptr|. See the documentation for that function and + * |SSL_ERROR_PENDING_SESSION|. + * + * If the internal session cache is enabled, the callback is only consulted if + * the internal cache does not return a match. + * + * The callback's |id| parameter is not const for historical reasons, but the + * contents may not be modified. */ +OPENSSL_EXPORT void SSL_CTX_sess_set_get_cb( + SSL_CTX *ctx, + SSL_SESSION *(*get_session_cb)(SSL *ssl, uint8_t *id, int id_len, + int *out_copy)); + +/* SSL_CTX_sess_get_get_cb returns the callback set by + * |SSL_CTX_sess_set_get_cb|. */ +OPENSSL_EXPORT SSL_SESSION *(*SSL_CTX_sess_get_get_cb(SSL_CTX *ctx))( + SSL *ssl, uint8_t *id, int id_len, int *out_copy); + +/* SSL_magic_pending_session_ptr returns a magic |SSL_SESSION|* which indicates + * that the session isn't currently unavailable. |SSL_get_error| will then + * return |SSL_ERROR_PENDING_SESSION| and the handshake can be retried later + * when the lookup has completed. */ +OPENSSL_EXPORT SSL_SESSION *SSL_magic_pending_session_ptr(void); + + +/* Session tickets. + * + * Session tickets, from RFC 5077, allow session resumption without server-side + * state. Session tickets are supported in by default but may be disabled with + * |SSL_OP_NO_TICKET|. + * + * On the client, ticket-based sessions use the same APIs as ID-based tickets. + * Callers do not need to handle them differently. + * + * On the server, tickets are encrypted and authenticated with a secret key. By + * default, an |SSL_CTX| generates a key on creation. Tickets are minted and + * processed transparently. The following functions may be used to configure a + * persistent key or implement more custom behavior. */ + +/* SSL_CTX_get_tlsext_ticket_keys writes |ctx|'s session ticket key material to + * |len| bytes of |out|. It returns one on success and zero if |len| is not + * 48. If |out| is NULL, it returns 48 instead. */ +OPENSSL_EXPORT int SSL_CTX_get_tlsext_ticket_keys(SSL_CTX *ctx, void *out, + size_t len); + +/* SSL_CTX_set_tlsext_ticket_keys sets |ctx|'s session ticket key material to + * |len| bytes of |in|. It returns one on success and zero if |len| is not + * 48. If |in| is NULL, it returns 48 instead. */ +OPENSSL_EXPORT int SSL_CTX_set_tlsext_ticket_keys(SSL_CTX *ctx, const void *in, + size_t len); + +/* SSL_TICKET_KEY_NAME_LEN is the length of the key name prefix of a session + * ticket. */ +#define SSL_TICKET_KEY_NAME_LEN 16 + +/* SSL_CTX_set_tlsext_ticket_key_cb sets the ticket callback to |callback| and + * returns one. |callback| will be called when encrypting a new ticket and when + * decrypting a ticket from the client. + * + * In both modes, |ctx| and |hmac_ctx| will already have been initialized with + * |EVP_CIPHER_CTX_init| and |HMAC_CTX_init|, respectively. |callback| + * configures |hmac_ctx| with an HMAC digest and key, and configures |ctx| + * for encryption or decryption, based on the mode. + * + * When encrypting a new ticket, |encrypt| will be one. It writes a public + * 16-byte key name to |key_name| and a fresh IV to |iv|. The output IV length + * must match |EVP_CIPHER_CTX_iv_length| of the cipher selected. In this mode, + * |callback| returns 1 on success and -1 on error. + * + * When decrypting a ticket, |encrypt| will be zero. |key_name| will point to a + * 16-byte key name and |iv| points to an IV. The length of the IV consumed must + * match |EVP_CIPHER_CTX_iv_length| of the cipher selected. In this mode, + * |callback| returns -1 to abort the handshake, 0 if decrypting the ticket + * failed, and 1 or 2 on success. If it returns 2, the ticket will be renewed. + * This may be used to re-key the ticket. + * + * WARNING: |callback| wildly breaks the usual return value convention and is + * called in two different modes. */ +OPENSSL_EXPORT int SSL_CTX_set_tlsext_ticket_key_cb( + SSL_CTX *ctx, int (*callback)(SSL *ssl, uint8_t *key_name, uint8_t *iv, + EVP_CIPHER_CTX *ctx, HMAC_CTX *hmac_ctx, + int encrypt)); + + +/* Elliptic curve Diffie-Hellman. + * + * Cipher suites using an ECDHE key exchange perform Diffie-Hellman over an + * elliptic curve negotiated by both endpoints. See RFC 4492. Only named curves + * are supported. ECDHE is always enabled, but the curve preferences may be + * configured with these functions. + * + * A client may use |SSL_SESSION_get_key_exchange_info| to determine the curve + * selected. */ + +/* SSL_CTX_set1_curves sets the preferred curves for |ctx| to be |curves|. Each + * element of |curves| should be a curve nid. It returns one on success and + * zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_set1_curves(SSL_CTX *ctx, const int *curves, + size_t curves_len); + +/* SSL_set1_curves sets the preferred curves for |ssl| to be |curves|. Each + * element of |curves| should be a curve nid. It returns one on success and + * zero on failure. */ +OPENSSL_EXPORT int SSL_set1_curves(SSL *ssl, const int *curves, + size_t curves_len); + +/* SSL_get_curve_name returns a human-readable name for the elliptic curve + * specified by the given TLS curve id, or NULL if the curve if unknown. */ +OPENSSL_EXPORT const char *SSL_get_curve_name(uint16_t curve_id); + + +/* Multiplicative Diffie-Hellman. + * + * Cipher suites using a DHE key exchange perform Diffie-Hellman over a + * multiplicative group selected by the server. These ciphers are disabled for a + * server unless a group is chosen with one of these functions. + * + * A client may use |SSL_SESSION_get_key_exchange_info| to determine the size of + * the selected group's prime, but note that servers may select degenerate + * groups. */ + +/* SSL_CTX_set_tmp_dh configures |ctx| to use the group from |dh| as the group + * for DHE. Only the group is used, so |dh| needn't have a keypair. It returns + * one on success and zero on error. */ +OPENSSL_EXPORT int SSL_CTX_set_tmp_dh(SSL_CTX *ctx, const DH *dh); + +/* SSL_set_tmp_dh configures |ssl| to use the group from |dh| as the group for + * DHE. Only the group is used, so |dh| needn't have a keypair. It returns one + * on success and zero on error. */ +OPENSSL_EXPORT int SSL_set_tmp_dh(SSL *ssl, const DH *dh); + +/* SSL_CTX_set_tmp_dh_callback configures |ctx| to use |callback| to determine + * the group for DHE ciphers. |callback| should ignore |is_export| and + * |keylength| and return a |DH| of the selected group or NULL on error. Only + * the parameters are used, so the |DH| needn't have a generated keypair. + * + * WARNING: The caller does not take ownership of the resulting |DH|, so + * |callback| must save and release the object elsewhere. */ +OPENSSL_EXPORT void SSL_CTX_set_tmp_dh_callback( + SSL_CTX *ctx, DH *(*callback)(SSL *ssl, int is_export, int keylength)); + +/* SSL_set_tmp_dh_callback configures |ssl| to use |callback| to determine the + * group for DHE ciphers. |callback| should ignore |is_export| and |keylength| + * and return a |DH| of the selected group or NULL on error. Only the + * parameters are used, so the |DH| needn't have a generated keypair. + * + * WARNING: The caller does not take ownership of the resulting |DH|, so + * |callback| must save and release the object elsewhere. */ +OPENSSL_EXPORT void SSL_set_tmp_dh_callback(SSL *ssl, + DH *(*dh)(SSL *ssl, int is_export, + int keylength)); + + +/* Certificate verification. + * + * SSL may authenticate either endpoint with an X.509 certificate. Typically + * this is used to authenticate the server to the client. These functions + * configure certificate verification. + * + * WARNING: By default, certificate verification errors on a client are not + * fatal. See |SSL_VERIFY_NONE| This may be configured with + * |SSL_CTX_set_verify|. + * + * By default clients are anonymous but a server may request a certificate from + * the client by setting |SSL_VERIFY_PEER|. + * + * Many of these functions use OpenSSL's legacy X.509 stack which is + * underdocumented and deprecated, but the replacement isn't ready yet. For + * now, consumers may use the existing stack or bypass it by performing + * certificate verification externally. This may be done with + * |SSL_CTX_set_cert_verify_callback| or by extracting the chain with + * |SSL_get_peer_cert_chain| after the handshake. In the future, functions will + * be added to use the SSL stack without dependency on any part of the legacy + * X.509 and ASN.1 stack. + * + * To augment certificate verification, a client may also enable OCSP stapling + * (RFC 6066) and Certificate Transparency (RFC 6962) extensions. */ + +/* SSL_VERIFY_NONE, on a client, verifies the server certificate but does not + * make errors fatal. The result may be checked with |SSL_get_verify_result|. On + * a server it does not request a client certificate. This is the default. */ +#define SSL_VERIFY_NONE 0x00 + +/* SSL_VERIFY_PEER, on a client, makes server certificate errors fatal. On a + * server it requests a client certificate and makes errors fatal. However, + * anonymous clients are still allowed. See + * |SSL_VERIFY_FAIL_IF_NO_PEER_CERT|. */ +#define SSL_VERIFY_PEER 0x01 + +/* SSL_VERIFY_FAIL_IF_NO_PEER_CERT configures a server to reject connections if + * the client declines to send a certificate. Otherwise |SSL_VERIFY_PEER| still + * allows anonymous clients. */ +#define SSL_VERIFY_FAIL_IF_NO_PEER_CERT 0x02 + +/* SSL_VERIFY_PEER_IF_NO_OBC configures a server to request a client certificate + * if and only if Channel ID is not negotiated. */ +#define SSL_VERIFY_PEER_IF_NO_OBC 0x04 + +/* SSL_CTX_set_verify configures certificate verification behavior. |mode| is + * one of the |SSL_VERIFY_*| values defined above. |callback|, if not NULL, is + * used to customize certificate verification. See the behavior of + * |X509_STORE_CTX_set_verify_cb|. + * + * The callback may use |SSL_get_ex_data_X509_STORE_CTX_idx| with + * |X509_STORE_CTX_get_ex_data| to look up the |SSL| from |store_ctx|. */ +OPENSSL_EXPORT void SSL_CTX_set_verify( + SSL_CTX *ctx, int mode, int (*callback)(int ok, X509_STORE_CTX *store_ctx)); + +/* SSL_set_verify configures certificate verification behavior. |mode| is one of + * the |SSL_VERIFY_*| values defined above. |callback|, if not NULL, is used to + * customize certificate verification. See the behavior of + * |X509_STORE_CTX_set_verify_cb|. + * + * The callback may use |SSL_get_ex_data_X509_STORE_CTX_idx| with + * |X509_STORE_CTX_get_ex_data| to look up the |SSL| from |store_ctx|. */ +OPENSSL_EXPORT void SSL_set_verify(SSL *ssl, int mode, + int (*callback)(int ok, + X509_STORE_CTX *store_ctx)); + +/* SSL_CTX_get_verify_mode returns |ctx|'s verify mode, set by + * |SSL_CTX_set_verify|. */ +OPENSSL_EXPORT int SSL_CTX_get_verify_mode(const SSL_CTX *ctx); + +/* SSL_get_verify_mode returns |ssl|'s verify mode, set by |SSL_CTX_set_verify| + * or |SSL_set_verify|. */ +OPENSSL_EXPORT int SSL_get_verify_mode(const SSL *ssl); + +/* SSL_CTX_get_verify_callback returns the callback set by + * |SSL_CTX_set_verify|. */ +OPENSSL_EXPORT int (*SSL_CTX_get_verify_callback(const SSL_CTX *ctx))( + int ok, X509_STORE_CTX *store_ctx); + +/* SSL_get_verify_callback returns the callback set by |SSL_CTX_set_verify| or + * |SSL_set_verify|. */ +OPENSSL_EXPORT int (*SSL_get_verify_callback(const SSL *ssl))( + int ok, X509_STORE_CTX *store_ctx); + +/* SSL_CTX_set_verify_depth sets the maximum depth of a certificate chain + * accepted in verification. This number does not include the leaf, so a depth + * of 1 allows the leaf and one CA certificate. */ +OPENSSL_EXPORT void SSL_CTX_set_verify_depth(SSL_CTX *ctx, int depth); + +/* SSL_set_verify_depth sets the maximum depth of a certificate chain accepted + * in verification. This number does not include the leaf, so a depth of 1 + * allows the leaf and one CA certificate. */ +OPENSSL_EXPORT void SSL_set_verify_depth(SSL *ssl, int depth); + +/* SSL_CTX_get_verify_depth returns the maximum depth of a certificate accepted + * in verification. */ +OPENSSL_EXPORT int SSL_CTX_get_verify_depth(const SSL_CTX *ctx); + +/* SSL_get_verify_depth returns the maximum depth of a certificate accepted in + * verification. */ +OPENSSL_EXPORT int SSL_get_verify_depth(const SSL *ssl); + +/* SSL_CTX_set1_param sets verification parameters from |param|. It returns one + * on success and zero on failure. The caller retains ownership of |param|. */ +OPENSSL_EXPORT int SSL_CTX_set1_param(SSL_CTX *ctx, + const X509_VERIFY_PARAM *param); + +/* SSL_set1_param sets verification parameters from |param|. It returns one on + * success and zero on failure. The caller retains ownership of |param|. */ +OPENSSL_EXPORT int SSL_set1_param(SSL *ssl, + const X509_VERIFY_PARAM *param); + +/* SSL_CTX_get0_param returns |ctx|'s |X509_VERIFY_PARAM| for certificate + * verification. The caller must not release the returned pointer but may call + * functions on it to configure it. */ +OPENSSL_EXPORT X509_VERIFY_PARAM *SSL_CTX_get0_param(SSL_CTX *ctx); + +/* SSL_get0_param returns |ssl|'s |X509_VERIFY_PARAM| for certificate + * verification. The caller must not release the returned pointer but may call + * functions on it to configure it. */ +OPENSSL_EXPORT X509_VERIFY_PARAM *SSL_get0_param(SSL *ssl); + +/* SSL_CTX_set_purpose sets |ctx|'s |X509_VERIFY_PARAM|'s 'purpose' parameter to + * |purpose|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int SSL_CTX_set_purpose(SSL_CTX *ctx, int purpose); + +/* SSL_set_purpose sets |ssl|'s |X509_VERIFY_PARAM|'s 'purpose' parameter to + * |purpose|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int SSL_set_purpose(SSL *ssl, int purpose); + +/* SSL_CTX_set_trust sets |ctx|'s |X509_VERIFY_PARAM|'s 'trust' parameter to + * |trust|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int SSL_CTX_set_trust(SSL_CTX *ctx, int trust); + +/* SSL_set_trust sets |ssl|'s |X509_VERIFY_PARAM|'s 'trust' parameter to + * |trust|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int SSL_set_trust(SSL *ssl, int trust); + +/* SSL_CTX_set_cert_store sets |ctx|'s certificate store to |store|. It takes + * ownership of |store|. The store is used for certificate verification. + * + * The store is also used for the auto-chaining feature, but this is deprecated. + * See also |SSL_MODE_NO_AUTO_CHAIN|. */ +OPENSSL_EXPORT void SSL_CTX_set_cert_store(SSL_CTX *ctx, X509_STORE *store); + +/* SSL_CTX_get_cert_store returns |ctx|'s certificate store. */ +OPENSSL_EXPORT X509_STORE *SSL_CTX_get_cert_store(const SSL_CTX *ctx); + +/* SSL_CTX_set_default_verify_paths loads the OpenSSL system-default trust + * anchors into |ctx|'s store. It returns one on success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx); + +/* SSL_CTX_load_verify_locations loads trust anchors into |ctx|'s store from + * |ca_file| and |ca_dir|, either of which may be NULL. If |ca_file| is passed, + * it is opened and PEM-encoded CA certificates are read. If |ca_dir| is passed, + * it is treated as a directory in OpenSSL's hashed directory format. It returns + * one on success and zero on failure. + * + * See + * https://www.openssl.org/docs/manmaster/ssl/SSL_CTX_load_verify_locations.html + * for documentation on the directory format. */ +OPENSSL_EXPORT int SSL_CTX_load_verify_locations(SSL_CTX *ctx, + const char *ca_file, + const char *ca_dir); + +/* SSL_get_verify_result returns the result of certificate verification. It is + * either |X509_V_OK| or a |X509_V_ERR_*| value. */ +OPENSSL_EXPORT long SSL_get_verify_result(const SSL *ssl); + +/* SSL_set_verify_result overrides the result of certificate verification. */ +OPENSSL_EXPORT void SSL_set_verify_result(SSL *ssl, long result); + +/* SSL_get_ex_data_X509_STORE_CTX_idx returns the ex_data index used to look up + * the |SSL| associated with an |X509_STORE_CTX| in the verify callback. */ +OPENSSL_EXPORT int SSL_get_ex_data_X509_STORE_CTX_idx(void); + +/* SSL_CTX_set_cert_verify_callback sets a custom callback to be called on + * certificate verification rather than |X509_verify_cert|. |store_ctx| contains + * the verification parameters. The callback should return one on success and + * zero on fatal error. It may use |X509_STORE_CTX_set_error| to set a + * verification result. + * + * The callback may use either the |arg| parameter or + * |SSL_get_ex_data_X509_STORE_CTX_idx| to recover the associated |SSL| + * object. */ +OPENSSL_EXPORT void SSL_CTX_set_cert_verify_callback( + SSL_CTX *ctx, int (*callback)(X509_STORE_CTX *store_ctx, void *arg), + void *arg); + +/* SSL_enable_signed_cert_timestamps causes |ssl| (which must be the client end + * of a connection) to request SCTs from the server. See + * https://tools.ietf.org/html/rfc6962. It returns one. + * + * Call |SSL_get0_signed_cert_timestamp_list| to recover the SCT after the + * handshake. */ +OPENSSL_EXPORT int SSL_enable_signed_cert_timestamps(SSL *ssl); + +/* SSL_CTX_enable_signed_cert_timestamps enables SCT requests on all client SSL + * objects created from |ctx|. + * + * Call |SSL_get0_signed_cert_timestamp_list| to recover the SCT after the + * handshake. */ +OPENSSL_EXPORT void SSL_CTX_enable_signed_cert_timestamps(SSL_CTX *ctx); + +/* SSL_enable_ocsp_stapling causes |ssl| (which must be the client end of a + * connection) to request a stapled OCSP response from the server. It returns + * one. + * + * Call |SSL_get0_ocsp_response| to recover the OCSP response after the + * handshake. */ +OPENSSL_EXPORT int SSL_enable_ocsp_stapling(SSL *ssl); + +/* SSL_CTX_enable_ocsp_stapling enables OCSP stapling on all client SSL objects + * created from |ctx|. + * + * Call |SSL_get0_ocsp_response| to recover the OCSP response after the + * handshake. */ +OPENSSL_EXPORT void SSL_CTX_enable_ocsp_stapling(SSL_CTX *ctx); + + +/* Client certificate CA list. + * + * When requesting a client certificate, a server may advertise a list of + * certificate authorities which are accepted. These functions may be used to + * configure this list. */ + +/* SSL_set_client_CA_list sets |ssl|'s client certificate CA list to + * |name_list|. It takes ownership of |name_list|. */ +OPENSSL_EXPORT void SSL_set_client_CA_list(SSL *ssl, + STACK_OF(X509_NAME) *name_list); + +/* SSL_CTX_set_client_CA_list sets |ctx|'s client certificate CA list to + * |name_list|. It takes ownership of |name_list|. */ +OPENSSL_EXPORT void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, + STACK_OF(X509_NAME) *name_list); + +/* SSL_get_client_CA_list returns |ssl|'s client certificate CA list. If |ssl| + * has not been configured as a client, this is the list configured by + * |SSL_CTX_set_client_CA_list|. + * + * If configured as a client, it returns the client certificate CA list sent by + * the server. In this mode, the behavior is undefined except during the + * callbacks set by |SSL_CTX_set_cert_cb| and |SSL_CTX_set_client_cert_cb| or + * when the handshake is paused because of them. */ +OPENSSL_EXPORT STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *ssl); + +/* SSL_CTX_get_client_CA_list returns |ctx|'s client certificate CA list. */ +OPENSSL_EXPORT STACK_OF(X509_NAME) * + SSL_CTX_get_client_CA_list(const SSL_CTX *ctx); + +/* SSL_add_client_CA appends |x509|'s subject to the client certificate CA list. + * It returns one on success or zero on error. The caller retains ownership of + * |x509|. */ +OPENSSL_EXPORT int SSL_add_client_CA(SSL *ssl, X509 *x509); + +/* SSL_CTX_add_client_CA appends |x509|'s subject to the client certificate CA + * list. It returns one on success or zero on error. The caller retains + * ownership of |x509|. */ +OPENSSL_EXPORT int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *x509); + +/* SSL_load_client_CA_file opens |file| and reads PEM-encoded certificates from + * it. It returns a newly-allocated stack of the certificate subjects or NULL + * on error. */ +OPENSSL_EXPORT STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file); + +/* SSL_dup_CA_list makes a deep copy of |list|. It returns the new list on + * success or NULL on allocation error. */ +OPENSSL_EXPORT STACK_OF(X509_NAME) *SSL_dup_CA_list(STACK_OF(X509_NAME) *list); + +/* SSL_add_file_cert_subjects_to_stack behaves like |SSL_load_client_CA_file| + * but appends the result to |out|. It returns one on success or zero on + * error. */ +OPENSSL_EXPORT int SSL_add_file_cert_subjects_to_stack(STACK_OF(X509_NAME) *out, + const char *file); + +/* SSL_add_dir_cert_subjects_to_stack lists files in directory |dir|. It calls + * |SSL_add_file_cert_subjects_to_stack| on each file and returns one on success + * or zero on error. */ +OPENSSL_EXPORT int SSL_add_dir_cert_subjects_to_stack(STACK_OF(X509_NAME) *out, + const char *dir); + + +/* Server name indication. + * + * The server_name extension (RFC 3546) allows the client to advertise the name + * of the server it is connecting to. This is used in virtual hosting + * deployments to select one of a several certificates on a single IP. Only the + * host_name name type is supported. */ + +#define TLSEXT_NAMETYPE_host_name 0 + +/* SSL_set_tlsext_host_name, for a client, configures |ssl| to advertise |name| + * in the server_name extension. It returns one on success and zero on error. */ +OPENSSL_EXPORT int SSL_set_tlsext_host_name(SSL *ssl, const char *name); + +/* SSL_get_servername, for a server, returns the hostname supplied by the + * client or NULL if there was none. The |type| argument must be + * |TLSEXT_NAMETYPE_host_name|. */ +OPENSSL_EXPORT const char *SSL_get_servername(const SSL *ssl, const int type); + +/* SSL_get_servername_type, for a server, returns |TLSEXT_NAMETYPE_host_name| + * if the client sent a hostname and -1 otherwise. */ +OPENSSL_EXPORT int SSL_get_servername_type(const SSL *ssl); + +/* SSL_CTX_set_tlsext_servername_callback configures |callback| to be called on + * the server after ClientHello extensions have been parsed and returns one. + * The callback may use |SSL_get_servername| to examine the server_name extension + * and returns a |SSL_TLSEXT_ERR_*| value. The value of |arg| may be set by + * calling |SSL_CTX_set_tlsext_servername_arg|. + * + * If the callback returns |SSL_TLSEXT_ERR_NOACK|, the server_name extension is + * not acknowledged in the ServerHello. If the return value is + * |SSL_TLSEXT_ERR_ALERT_FATAL| or |SSL_TLSEXT_ERR_ALERT_WARNING| then + * |*out_alert| must be set to the alert value to send. */ +OPENSSL_EXPORT int SSL_CTX_set_tlsext_servername_callback( + SSL_CTX *ctx, int (*callback)(SSL *ssl, int *out_alert, void *arg)); + +/* SSL_CTX_set_tlsext_servername_arg sets the argument to the servername + * callback and returns one. See |SSL_CTX_set_tlsext_servername_callback|. */ +OPENSSL_EXPORT int SSL_CTX_set_tlsext_servername_arg(SSL_CTX *ctx, void *arg); + +/* SSL_TLSEXT_ERR_* are values returned by some extension-related callbacks. */ +#define SSL_TLSEXT_ERR_OK 0 +#define SSL_TLSEXT_ERR_ALERT_WARNING 1 +#define SSL_TLSEXT_ERR_ALERT_FATAL 2 +#define SSL_TLSEXT_ERR_NOACK 3 + + +/* Application-layer protocol negotation. + * + * The ALPN extension (RFC 7301) allows negotiating different application-layer + * protocols over a single port. This is used, for example, to negotiate + * HTTP/2. */ + +/* SSL_CTX_set_alpn_protos sets the client ALPN protocol list on |ctx| to + * |protos|. |protos| must be in wire-format (i.e. a series of non-empty, 8-bit + * length-prefixed strings). It returns zero on success and one on failure. + * Configuring this list enables ALPN on a client. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. */ +OPENSSL_EXPORT int SSL_CTX_set_alpn_protos(SSL_CTX *ctx, const uint8_t *protos, + unsigned protos_len); + +/* SSL_set_alpn_protos sets the client ALPN protocol list on |ssl| to |protos|. + * |protos| must be in wire-format (i.e. a series of non-empty, 8-bit + * length-prefixed strings). It returns zero on success and one on failure. + * Configuring this list enables ALPN on a client. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. */ +OPENSSL_EXPORT int SSL_set_alpn_protos(SSL *ssl, const uint8_t *protos, + unsigned protos_len); + +/* SSL_CTX_set_alpn_select_cb sets a callback function on |ctx| that is called + * during ClientHello processing in order to select an ALPN protocol from the + * client's list of offered protocols. Configuring this callback enables ALPN on + * a server. + * + * The callback is passed a wire-format (i.e. a series of non-empty, 8-bit + * length-prefixed strings) ALPN protocol list in |in|. It should set |*out| and + * |*out_len| to the selected protocol and return |SSL_TLSEXT_ERR_OK| on + * success. It does not pass ownership of the buffer. Otherwise, it should + * return |SSL_TLSEXT_ERR_NOACK|. Other |SSL_TLSEXT_ERR_*| values are + * unimplemented and will be treated as |SSL_TLSEXT_ERR_NOACK|. */ +OPENSSL_EXPORT void SSL_CTX_set_alpn_select_cb( + SSL_CTX *ctx, int (*cb)(SSL *ssl, const uint8_t **out, uint8_t *out_len, + const uint8_t *in, unsigned in_len, void *arg), + void *arg); + +/* SSL_get0_alpn_selected gets the selected ALPN protocol (if any) from |ssl|. + * On return it sets |*out_data| to point to |*out_len| bytes of protocol name + * (not including the leading length-prefix byte). If the server didn't respond + * with a negotiated protocol then |*out_len| will be zero. */ +OPENSSL_EXPORT void SSL_get0_alpn_selected(const SSL *ssl, + const uint8_t **out_data, + unsigned *out_len); + + +/* Next protocol negotiation. + * + * The NPN extension (draft-agl-tls-nextprotoneg-03) is the predecessor to ALPN + * and deprecated in favor of it. */ + +/* SSL_CTX_set_next_protos_advertised_cb sets a callback that is called when a + * TLS server needs a list of supported protocols for Next Protocol + * Negotiation. The returned list must be in wire format. The list is returned + * by setting |*out| to point to it and |*out_len| to its length. This memory + * will not be modified, but one should assume that |ssl| keeps a reference to + * it. + * + * The callback should return |SSL_TLSEXT_ERR_OK| if it wishes to advertise. + * Otherwise, no such extension will be included in the ServerHello. */ +OPENSSL_EXPORT void SSL_CTX_set_next_protos_advertised_cb( + SSL_CTX *ctx, + int (*cb)(SSL *ssl, const uint8_t **out, unsigned *out_len, void *arg), + void *arg); + +/* SSL_CTX_set_next_proto_select_cb sets a callback that is called when a client + * needs to select a protocol from the server's provided list. |*out| must be + * set to point to the selected protocol (which may be within |in|). The length + * of the protocol name must be written into |*out_len|. The server's advertised + * protocols are provided in |in| and |in_len|. The callback can assume that + * |in| is syntactically valid. + * + * The client must select a protocol. It is fatal to the connection if this + * callback returns a value other than |SSL_TLSEXT_ERR_OK|. + * + * Configuring this callback enables NPN on a client. */ +OPENSSL_EXPORT void SSL_CTX_set_next_proto_select_cb( + SSL_CTX *ctx, int (*cb)(SSL *ssl, uint8_t **out, uint8_t *out_len, + const uint8_t *in, unsigned in_len, void *arg), + void *arg); + +/* SSL_get0_next_proto_negotiated sets |*out_data| and |*out_len| to point to + * the client's requested protocol for this connection. If the client didn't + * request any protocol, then |*out_data| is set to NULL. + * + * Note that the client can request any protocol it chooses. The value returned + * from this function need not be a member of the list of supported protocols + * provided by the server. */ +OPENSSL_EXPORT void SSL_get0_next_proto_negotiated(const SSL *ssl, + const uint8_t **out_data, + unsigned *out_len); + +/* SSL_select_next_proto implements the standard protocol selection. It is + * expected that this function is called from the callback set by + * |SSL_CTX_set_next_proto_select_cb|. + * + * The protocol data is assumed to be a vector of 8-bit, length prefixed byte + * strings. The length byte itself is not included in the length. A byte + * string of length 0 is invalid. No byte string may be truncated. + * + * The current, but experimental algorithm for selecting the protocol is: + * + * 1) If the server doesn't support NPN then this is indicated to the + * callback. In this case, the client application has to abort the connection + * or have a default application level protocol. + * + * 2) If the server supports NPN, but advertises an empty list then the + * client selects the first protcol in its list, but indicates via the + * API that this fallback case was enacted. + * + * 3) Otherwise, the client finds the first protocol in the server's list + * that it supports and selects this protocol. This is because it's + * assumed that the server has better information about which protocol + * a client should use. + * + * 4) If the client doesn't support any of the server's advertised + * protocols, then this is treated the same as case 2. + * + * It returns either |OPENSSL_NPN_NEGOTIATED| if a common protocol was found, or + * |OPENSSL_NPN_NO_OVERLAP| if the fallback case was reached. */ +OPENSSL_EXPORT int SSL_select_next_proto(uint8_t **out, uint8_t *out_len, + const uint8_t *server, + unsigned server_len, + const uint8_t *client, + unsigned client_len); + +#define OPENSSL_NPN_UNSUPPORTED 0 +#define OPENSSL_NPN_NEGOTIATED 1 +#define OPENSSL_NPN_NO_OVERLAP 2 + + +/* Channel ID. + * + * See draft-balfanz-tls-channelid-01. */ + +/* SSL_CTX_enable_tls_channel_id either configures a TLS server to accept TLS + * Channel IDs from clients, or configures a client to send TLS Channel IDs to + * a server. It returns one. */ +OPENSSL_EXPORT int SSL_CTX_enable_tls_channel_id(SSL_CTX *ctx); + +/* SSL_enable_tls_channel_id either configures a TLS server to accept TLS + * Channel IDs from clients, or configures a client to send TLS Channel IDs to + * server. It returns one. */ +OPENSSL_EXPORT int SSL_enable_tls_channel_id(SSL *ssl); + +/* SSL_CTX_set1_tls_channel_id configures a TLS client to send a TLS Channel ID + * to compatible servers. |private_key| must be a P-256 EC key. It returns one + * on success and zero on error. */ +OPENSSL_EXPORT int SSL_CTX_set1_tls_channel_id(SSL_CTX *ctx, + EVP_PKEY *private_key); + +/* SSL_set1_tls_channel_id configures a TLS client to send a TLS Channel ID to + * compatible servers. |private_key| must be a P-256 EC key. It returns one on + * success and zero on error. */ +OPENSSL_EXPORT int SSL_set1_tls_channel_id(SSL *ssl, EVP_PKEY *private_key); + +/* SSL_get_tls_channel_id gets the client's TLS Channel ID from a server |SSL*| + * and copies up to the first |max_out| bytes into |out|. The Channel ID + * consists of the client's P-256 public key as an (x,y) pair where each is a + * 32-byte, big-endian field element. It returns 0 if the client didn't offer a + * Channel ID and the length of the complete Channel ID otherwise. */ +OPENSSL_EXPORT size_t SSL_get_tls_channel_id(SSL *ssl, uint8_t *out, + size_t max_out); + +/* SSL_CTX_set_channel_id_cb sets a callback to be called when a TLS Channel ID + * is requested. The callback may set |*out_pkey| to a key, passing a reference + * to the caller. If none is returned, the handshake will pause and + * |SSL_get_error| will return |SSL_ERROR_WANT_CHANNEL_ID_LOOKUP|. + * + * See also |SSL_ERROR_WANT_CHANNEL_ID_LOOKUP|. */ +OPENSSL_EXPORT void SSL_CTX_set_channel_id_cb( + SSL_CTX *ctx, void (*channel_id_cb)(SSL *ssl, EVP_PKEY **out_pkey)); + +/* SSL_CTX_get_channel_id_cb returns the callback set by + * |SSL_CTX_set_channel_id_cb|. */ +OPENSSL_EXPORT void (*SSL_CTX_get_channel_id_cb(SSL_CTX *ctx))( + SSL *ssl, EVP_PKEY **out_pkey); + + +/* DTLS-SRTP. + * + * See RFC 5764. */ + +/* An SRTP_PROTECTION_PROFILE is an SRTP profile for use with the use_srtp + * extension. */ +struct srtp_protection_profile_st { + const char *name; + unsigned long id; +} /* SRTP_PROTECTION_PROFILE */; + +DECLARE_STACK_OF(SRTP_PROTECTION_PROFILE) + +/* SRTP_* define constants for SRTP profiles. */ +#define SRTP_AES128_CM_SHA1_80 0x0001 +#define SRTP_AES128_CM_SHA1_32 0x0002 +#define SRTP_AES128_F8_SHA1_80 0x0003 +#define SRTP_AES128_F8_SHA1_32 0x0004 +#define SRTP_NULL_SHA1_80 0x0005 +#define SRTP_NULL_SHA1_32 0x0006 +#define SRTP_AEAD_AES_128_GCM 0x0007 +#define SRTP_AEAD_AES_256_GCM 0x0008 + +/* SSL_CTX_set_srtp_profiles enables SRTP for all SSL objects created from + * |ctx|. |profile| contains a colon-separated list of profile names. It returns + * one on success and zero on failure. */ +OPENSSL_EXPORT int SSL_CTX_set_srtp_profiles(SSL_CTX *ctx, + const char *profiles); + +/* SSL_set_srtp_profiles enables SRTP for |ssl|. |profile| contains a + * colon-separated list of profile names. It returns one on success and zero on + * failure. */ +OPENSSL_EXPORT int SSL_set_srtp_profiles(SSL *ssl, const char *profiles); + +/* SSL_get_srtp_profiles returns the SRTP profiles supported by |ssl|. */ +OPENSSL_EXPORT STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles( + SSL *ssl); + +/* SSL_get_selected_srtp_profile returns the selected SRTP profile, or NULL if + * SRTP was not negotiated. */ +OPENSSL_EXPORT const SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile( + SSL *ssl); + + +/* Pre-shared keys. + * + * Connections may be configured with PSK (Pre-Shared Key) cipher suites. These + * authenticate using out-of-band pre-shared keys rather than certificates. See + * RFC 4279. + * + * This implementation uses NUL-terminated C strings for identities and identity + * hints, so values with a NUL character are not supported. (RFC 4279 does not + * specify the format of an identity.) */ + +/* PSK_MAX_IDENTITY_LEN is the maximum supported length of a PSK identity, + * excluding the NUL terminator. */ +#define PSK_MAX_IDENTITY_LEN 128 + +/* PSK_MAX_PSK_LEN is the maximum supported length of a pre-shared key. */ +#define PSK_MAX_PSK_LEN 256 + +/* SSL_CTX_set_psk_client_callback sets the callback to be called when PSK is + * negotiated on the client. This callback must be set to enable PSK cipher + * suites on the client. + * + * The callback is passed the identity hint in |hint| or NULL if none was + * provided. It should select a PSK identity and write the identity and the + * corresponding PSK to |identity| and |psk|, respectively. The identity is + * written as a NUL-terminated C string of length (excluding the NUL terminator) + * at most |max_identity_len|. The PSK's length must be at most |max_psk_len|. + * The callback returns the length of the PSK or 0 if no suitable identity was + * found. */ +OPENSSL_EXPORT void SSL_CTX_set_psk_client_callback( + SSL_CTX *ctx, + unsigned (*psk_client_callback)( + SSL *ssl, const char *hint, char *identity, + unsigned max_identity_len, uint8_t *psk, unsigned max_psk_len)); + +/* SSL_set_psk_client_callback sets the callback to be called when PSK is + * negotiated on the client. This callback must be set to enable PSK cipher + * suites on the client. See also |SSL_CTX_set_psk_client_callback|. */ +OPENSSL_EXPORT void SSL_set_psk_client_callback( + SSL *ssl, unsigned (*psk_client_callback)(SSL *ssl, const char *hint, + char *identity, + unsigned max_identity_len, + uint8_t *psk, + unsigned max_psk_len)); + +/* SSL_CTX_set_psk_server_callback sets the callback to be called when PSK is + * negotiated on the server. This callback must be set to enable PSK cipher + * suites on the server. + * + * The callback is passed the identity in |identity|. It should write a PSK of + * length at most |max_psk_len| to |psk| and return the number of bytes written + * or zero if the PSK identity is unknown. */ +OPENSSL_EXPORT void SSL_CTX_set_psk_server_callback( + SSL_CTX *ctx, + unsigned (*psk_server_callback)(SSL *ssl, const char *identity, + uint8_t *psk, + unsigned max_psk_len)); + +/* SSL_set_psk_server_callback sets the callback to be called when PSK is + * negotiated on the server. This callback must be set to enable PSK cipher + * suites on the server. See also |SSL_CTX_set_psk_server_callback|. */ +OPENSSL_EXPORT void SSL_set_psk_server_callback( + SSL *ssl, + unsigned (*psk_server_callback)(SSL *ssl, const char *identity, + uint8_t *psk, + unsigned max_psk_len)); + +/* SSL_CTX_use_psk_identity_hint configures server connections to advertise an + * identity hint of |identity_hint|. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int SSL_CTX_use_psk_identity_hint(SSL_CTX *ctx, + const char *identity_hint); + +/* SSL_use_psk_identity_hint configures server connections to advertise an + * identity hint of |identity_hint|. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int SSL_use_psk_identity_hint(SSL *ssl, + const char *identity_hint); + +/* SSL_get_psk_identity_hint returns the PSK identity hint advertised for |ssl| + * or NULL if there is none. */ +OPENSSL_EXPORT const char *SSL_get_psk_identity_hint(const SSL *ssl); + +/* SSL_get_psk_identity, after the handshake completes, returns the PSK identity + * that was negotiated by |ssl| or NULL if PSK was not used. */ +OPENSSL_EXPORT const char *SSL_get_psk_identity(const SSL *ssl); + + +/* Alerts. + * + * TLS and SSL 3.0 use alerts to signal error conditions. Alerts have a type + * (warning or fatal) and description. OpenSSL internally handles fatal alerts + * with dedicated error codes (see |SSL_AD_REASON_OFFSET|). Except for + * close_notify, warning alerts are silently ignored and may only be surfaced + * with |SSL_CTX_set_info_callback|. */ + +/* SSL_AD_REASON_OFFSET is the offset between error reasons and |SSL_AD_*| + * values. Any error code under |ERR_LIB_SSL| with an error reason above this + * value corresponds to an alert description. Consumers may add or subtract + * |SSL_AD_REASON_OFFSET| to convert between them. + * + * make_errors.go reserves error codes above 1000 for manually-assigned errors. + * This value must be kept in sync with reservedReasonCode in make_errors.h */ +#define SSL_AD_REASON_OFFSET 1000 + +/* SSL_AD_* are alert descriptions for SSL 3.0 and TLS. */ +#define SSL_AD_CLOSE_NOTIFY SSL3_AD_CLOSE_NOTIFY +#define SSL_AD_UNEXPECTED_MESSAGE SSL3_AD_UNEXPECTED_MESSAGE +#define SSL_AD_BAD_RECORD_MAC SSL3_AD_BAD_RECORD_MAC +#define SSL_AD_DECRYPTION_FAILED TLS1_AD_DECRYPTION_FAILED +#define SSL_AD_RECORD_OVERFLOW TLS1_AD_RECORD_OVERFLOW +#define SSL_AD_DECOMPRESSION_FAILURE SSL3_AD_DECOMPRESSION_FAILURE +#define SSL_AD_HANDSHAKE_FAILURE SSL3_AD_HANDSHAKE_FAILURE +#define SSL_AD_NO_CERTIFICATE SSL3_AD_NO_CERTIFICATE /* Not used in TLS */ +#define SSL_AD_BAD_CERTIFICATE SSL3_AD_BAD_CERTIFICATE +#define SSL_AD_UNSUPPORTED_CERTIFICATE SSL3_AD_UNSUPPORTED_CERTIFICATE +#define SSL_AD_CERTIFICATE_REVOKED SSL3_AD_CERTIFICATE_REVOKED +#define SSL_AD_CERTIFICATE_EXPIRED SSL3_AD_CERTIFICATE_EXPIRED +#define SSL_AD_CERTIFICATE_UNKNOWN SSL3_AD_CERTIFICATE_UNKNOWN +#define SSL_AD_ILLEGAL_PARAMETER SSL3_AD_ILLEGAL_PARAMETER +#define SSL_AD_UNKNOWN_CA TLS1_AD_UNKNOWN_CA +#define SSL_AD_ACCESS_DENIED TLS1_AD_ACCESS_DENIED +#define SSL_AD_DECODE_ERROR TLS1_AD_DECODE_ERROR +#define SSL_AD_DECRYPT_ERROR TLS1_AD_DECRYPT_ERROR +#define SSL_AD_EXPORT_RESTRICTION TLS1_AD_EXPORT_RESTRICTION +#define SSL_AD_PROTOCOL_VERSION TLS1_AD_PROTOCOL_VERSION +#define SSL_AD_INSUFFICIENT_SECURITY TLS1_AD_INSUFFICIENT_SECURITY +#define SSL_AD_INTERNAL_ERROR TLS1_AD_INTERNAL_ERROR +#define SSL_AD_USER_CANCELLED TLS1_AD_USER_CANCELLED +#define SSL_AD_NO_RENEGOTIATION TLS1_AD_NO_RENEGOTIATION +#define SSL_AD_UNSUPPORTED_EXTENSION TLS1_AD_UNSUPPORTED_EXTENSION +#define SSL_AD_CERTIFICATE_UNOBTAINABLE TLS1_AD_CERTIFICATE_UNOBTAINABLE +#define SSL_AD_UNRECOGNIZED_NAME TLS1_AD_UNRECOGNIZED_NAME +#define SSL_AD_BAD_CERTIFICATE_STATUS_RESPONSE \ + TLS1_AD_BAD_CERTIFICATE_STATUS_RESPONSE +#define SSL_AD_BAD_CERTIFICATE_HASH_VALUE TLS1_AD_BAD_CERTIFICATE_HASH_VALUE +#define SSL_AD_UNKNOWN_PSK_IDENTITY TLS1_AD_UNKNOWN_PSK_IDENTITY +#define SSL_AD_INAPPROPRIATE_FALLBACK SSL3_AD_INAPPROPRIATE_FALLBACK + +/* SSL_alert_type_string_long returns a string description of |value| as an + * alert type (warning or fatal). */ +OPENSSL_EXPORT const char *SSL_alert_type_string_long(int value); + +/* SSL_alert_desc_string_long returns a string description of |value| as an + * alert description or "unknown" if unknown. */ +OPENSSL_EXPORT const char *SSL_alert_desc_string_long(int value); + + +/* ex_data functions. + * + * See |ex_data.h| for details. */ + +OPENSSL_EXPORT int SSL_set_ex_data(SSL *ssl, int idx, void *data); +OPENSSL_EXPORT void *SSL_get_ex_data(const SSL *ssl, int idx); +OPENSSL_EXPORT int SSL_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); + +OPENSSL_EXPORT int SSL_SESSION_set_ex_data(SSL_SESSION *session, int idx, + void *data); +OPENSSL_EXPORT void *SSL_SESSION_get_ex_data(const SSL_SESSION *session, + int idx); +OPENSSL_EXPORT int SSL_SESSION_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); + +OPENSSL_EXPORT int SSL_CTX_set_ex_data(SSL_CTX *ctx, int idx, void *data); +OPENSSL_EXPORT void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx); +OPENSSL_EXPORT int SSL_CTX_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); + + +/* Obscure functions. */ + +/* SSL_get_rc4_state sets |*read_key| and |*write_key| to the RC4 states for + * the read and write directions. It returns one on success or zero if |ssl| + * isn't using an RC4-based cipher suite. */ +OPENSSL_EXPORT int SSL_get_rc4_state(const SSL *ssl, const RC4_KEY **read_key, + const RC4_KEY **write_key); + +/* SSL_get_ivs sets |*out_iv_len| to the length of the IVs for the ciphers + * underlying |ssl| and sets |*out_read_iv| and |*out_write_iv| to point to the + * current IVs for the read and write directions. This is only meaningful for + * connections with implicit IVs (i.e. CBC mode with SSLv3 or TLS 1.0). + * + * It returns one on success or zero on error. */ +OPENSSL_EXPORT int SSL_get_ivs(const SSL *ssl, const uint8_t **out_read_iv, + const uint8_t **out_write_iv, + size_t *out_iv_len); + +/* SSL_get_structure_sizes returns the sizes of the SSL, SSL_CTX and + * SSL_SESSION structures so that a test can ensure that outside code agrees on + * these values. */ +OPENSSL_EXPORT void SSL_get_structure_sizes(size_t *ssl_size, + size_t *ssl_ctx_size, + size_t *ssl_session_size); + +/* SSL_CTX_set_msg_callback installs |cb| as the message callback for |ctx|. + * This callback will be called when sending or receiving low-level record + * headers, complete handshake messages, ChangeCipherSpec, and alerts. + * |write_p| is one for outgoing messages and zero for incoming messages. + * + * For each record header, |cb| is called with |version| = 0 and |content_type| + * = |SSL3_RT_HEADER|. The |len| bytes from |buf| contain the header. Note that + * this does not include the record body. If the record is sealed, the length + * in the header is the length of the ciphertext. + * + * For each handshake message, ChangeCipherSpec, and alert, |version| is the + * protocol version and |content_type| is the corresponding record type. The + * |len| bytes from |buf| contain the handshake message, one-byte + * ChangeCipherSpec body, and two-byte alert, respectively. */ +OPENSSL_EXPORT void SSL_CTX_set_msg_callback( + SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, + const void *buf, size_t len, SSL *ssl, void *arg)); + +/* SSL_CTX_set_msg_callback_arg sets the |arg| parameter of the message + * callback. */ +OPENSSL_EXPORT void SSL_CTX_set_msg_callback_arg(SSL_CTX *ctx, void *arg); + +/* SSL_set_msg_callback installs |cb| as the message callback of |ssl|. See + * |SSL_CTX_set_msg_callback| for when this callback is called. */ +OPENSSL_EXPORT void SSL_set_msg_callback( + SSL *ssl, void (*cb)(int write_p, int version, int content_type, + const void *buf, size_t len, SSL *ssl, void *arg)); + +/* SSL_set_msg_callback_arg sets the |arg| parameter of the message callback. */ +OPENSSL_EXPORT void SSL_set_msg_callback_arg(SSL *ssl, void *arg); + +/* SSL_CTX_set_keylog_callback configures a callback to log key material. This + * is intended for debugging use with tools like Wireshark. The |cb| function + * should log |line| followed by a newline, synchronizing with any concurrent + * access to the log. + * + * The format is described in + * https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format. */ +OPENSSL_EXPORT void SSL_CTX_set_keylog_callback( + SSL_CTX *ctx, void (*cb)(const SSL *ssl, const char *line)); + +enum ssl_renegotiate_mode_t { + ssl_renegotiate_never = 0, + ssl_renegotiate_once, + ssl_renegotiate_freely, + ssl_renegotiate_ignore, +}; + +/* SSL_set_renegotiate_mode configures how |ssl|, a client, reacts to + * renegotiation attempts by a server. If |ssl| is a server, peer-initiated + * renegotiations are *always* rejected and this function does nothing. + * + * The renegotiation mode defaults to |ssl_renegotiate_never|, but may be set + * at any point in a connection's lifetime. Set it to |ssl_renegotiate_once| to + * allow one renegotiation, |ssl_renegotiate_freely| to allow all + * renegotiations or |ssl_renegotiate_ignore| to ignore HelloRequest messages. + * Note that ignoring HelloRequest messages may cause the connection to stall + * if the server waits for the renegotiation to complete. + * + * There is no support in BoringSSL for initiating renegotiations as a client + * or server. */ +OPENSSL_EXPORT void SSL_set_renegotiate_mode(SSL *ssl, + enum ssl_renegotiate_mode_t mode); + +/* SSL_renegotiate_pending returns one if |ssl| is in the middle of a + * renegotiation. */ +OPENSSL_EXPORT int SSL_renegotiate_pending(SSL *ssl); + +/* SSL_total_renegotiations returns the total number of renegotiation handshakes + * peformed by |ssl|. This includes the pending renegotiation, if any. */ +OPENSSL_EXPORT int SSL_total_renegotiations(const SSL *ssl); + +/* SSL_MAX_CERT_LIST_DEFAULT is the default maximum length, in bytes, of a peer + * certificate chain. */ +#define SSL_MAX_CERT_LIST_DEFAULT 1024 * 100 + +/* SSL_CTX_get_max_cert_list returns the maximum length, in bytes, of a peer + * certificate chain accepted by |ctx|. */ +OPENSSL_EXPORT size_t SSL_CTX_get_max_cert_list(const SSL_CTX *ctx); + +/* SSL_CTX_set_max_cert_list sets the maximum length, in bytes, of a peer + * certificate chain to |max_cert_list|. This affects how much memory may be + * consumed during the handshake. */ +OPENSSL_EXPORT void SSL_CTX_set_max_cert_list(SSL_CTX *ctx, + size_t max_cert_list); + +/* SSL_get_max_cert_list returns the maximum length, in bytes, of a peer + * certificate chain accepted by |ssl|. */ +OPENSSL_EXPORT size_t SSL_get_max_cert_list(const SSL *ssl); + +/* SSL_set_max_cert_list sets the maximum length, in bytes, of a peer + * certificate chain to |max_cert_list|. This affects how much memory may be + * consumed during the handshake. */ +OPENSSL_EXPORT void SSL_set_max_cert_list(SSL *ssl, size_t max_cert_list); + +/* SSL_CTX_set_max_send_fragment sets the maximum length, in bytes, of records + * sent by |ctx|. Beyond this length, handshake messages and application data + * will be split into multiple records. */ +OPENSSL_EXPORT void SSL_CTX_set_max_send_fragment(SSL_CTX *ctx, + size_t max_send_fragment); + +/* SSL_set_max_send_fragment sets the maximum length, in bytes, of records + * sent by |ssl|. Beyond this length, handshake messages and application data + * will be split into multiple records. */ +OPENSSL_EXPORT void SSL_set_max_send_fragment(SSL *ssl, + size_t max_send_fragment); + +/* ssl_early_callback_ctx is passed to certain callbacks that are called very + * early on during the server handshake. At this point, much of the SSL* hasn't + * been filled out and only the ClientHello can be depended on. */ +struct ssl_early_callback_ctx { + SSL *ssl; + const uint8_t *client_hello; + size_t client_hello_len; + const uint8_t *session_id; + size_t session_id_len; + const uint8_t *cipher_suites; + size_t cipher_suites_len; + const uint8_t *compression_methods; + size_t compression_methods_len; + const uint8_t *extensions; + size_t extensions_len; +}; + +/* SSL_early_callback_ctx_extension_get searches the extensions in |ctx| for an + * extension of the given type. If not found, it returns zero. Otherwise it + * sets |out_data| to point to the extension contents (not including the type + * and length bytes), sets |out_len| to the length of the extension contents + * and returns one. */ +OPENSSL_EXPORT int SSL_early_callback_ctx_extension_get( + const struct ssl_early_callback_ctx *ctx, uint16_t extension_type, + const uint8_t **out_data, size_t *out_len); + +/* SSL_CTX_set_select_certificate_cb sets a callback that is called before most + * ClientHello processing and before the decision whether to resume a session + * is made. The callback may inspect the ClientHello and configure the + * connection. It may then return one to continue the handshake or zero to + * pause the handshake to perform an asynchronous operation. If paused, + * |SSL_get_error| will return |SSL_ERROR_PENDING_CERTIFICATE|. + * + * Note: The |ssl_early_callback_ctx| is only valid for the duration of the + * callback and is not valid while the handshake is paused. Further, unlike with + * most callbacks, when the handshake loop is resumed, it will not call the + * callback a second time. The caller must finish reconfiguring the connection + * before resuming the handshake. */ +OPENSSL_EXPORT void SSL_CTX_set_select_certificate_cb( + SSL_CTX *ctx, int (*cb)(const struct ssl_early_callback_ctx *)); + +/* SSL_CTX_set_dos_protection_cb sets a callback that is called once the + * resumption decision for a ClientHello has been made. It can return one to + * allow the handshake to continue or zero to cause the handshake to abort. */ +OPENSSL_EXPORT void SSL_CTX_set_dos_protection_cb( + SSL_CTX *ctx, int (*cb)(const struct ssl_early_callback_ctx *)); + +/* SSL_ST_* are possible values for |SSL_state| and the bitmasks that make them + * up. */ +#define SSL_ST_CONNECT 0x1000 +#define SSL_ST_ACCEPT 0x2000 +#define SSL_ST_MASK 0x0FFF +#define SSL_ST_INIT (SSL_ST_CONNECT | SSL_ST_ACCEPT) +#define SSL_ST_OK 0x03 +#define SSL_ST_RENEGOTIATE (0x04 | SSL_ST_INIT) + +/* SSL_CB_* are possible values for the |type| parameter in the info + * callback and the bitmasks that make them up. */ +#define SSL_CB_LOOP 0x01 +#define SSL_CB_EXIT 0x02 +#define SSL_CB_READ 0x04 +#define SSL_CB_WRITE 0x08 +#define SSL_CB_ALERT 0x4000 +#define SSL_CB_READ_ALERT (SSL_CB_ALERT | SSL_CB_READ) +#define SSL_CB_WRITE_ALERT (SSL_CB_ALERT | SSL_CB_WRITE) +#define SSL_CB_ACCEPT_LOOP (SSL_ST_ACCEPT | SSL_CB_LOOP) +#define SSL_CB_ACCEPT_EXIT (SSL_ST_ACCEPT | SSL_CB_EXIT) +#define SSL_CB_CONNECT_LOOP (SSL_ST_CONNECT | SSL_CB_LOOP) +#define SSL_CB_CONNECT_EXIT (SSL_ST_CONNECT | SSL_CB_EXIT) +#define SSL_CB_HANDSHAKE_START 0x10 +#define SSL_CB_HANDSHAKE_DONE 0x20 + +/* SSL_CTX_set_info_callback configures a callback to be run when various + * events occur during a connection's lifetime. The |type| argumentj determines + * the type of event and the meaning of the |value| argument. Callbacks must + * ignore unexpected |type| values. + * + * |SSL_CB_READ_ALERT| is signaled for each alert received, warning or fatal. + * The |value| argument is a 16-bit value where the alert level (either + * |SSL3_AL_WARNING| or |SSL3_AL_FATAL|) is in the most-significant eight bits and + * the alert type (one of |SSL_AD_*|) is in the least-significant eight. + * + * |SSL_CB_WRITE_ALERT| is signaled for each alert sent. The |value| argument + * is constructed as with |SSL_CB_READ_ALERT|. + * + * |SSL_CB_HANDSHAKE_START| is signaled when a handshake begins. The |value| + * argument is always one. + * + * |SSL_CB_HANDSHAKE_DONE| is signaled when a handshake completes successfully. + * The |value| argument is always one. If a handshake False Starts, this event + * may be used to determine when the Finished message is received. + * + * The following event types expose implementation details of the handshake + * state machine. Consuming them is deprecated. + * + * |SSL_CB_ACCEPT_LOOP| (respectively, |SSL_CB_CONNECT_LOOP|) is signaled when + * a server (respectively, client) handshake progresses. The |value| argument + * is always one. For the duration of the callback, |SSL_state| will return the + * previous state. + * + * |SSL_CB_ACCEPT_EXIT| (respectively, |SSL_CB_CONNECT_EXIT|) is signaled when + * a server (respectively, client) handshake completes, fails, or is paused. + * The |value| argument is one if the handshake succeeded and <= 0 + * otherwise. */ +OPENSSL_EXPORT void SSL_CTX_set_info_callback( + SSL_CTX *ctx, void (*cb)(const SSL *ssl, int type, int value)); + +/* SSL_CTX_get_info_callback returns the callback set by + * |SSL_CTX_set_info_callback|. */ +OPENSSL_EXPORT void (*SSL_CTX_get_info_callback(SSL_CTX *ctx))(const SSL *ssl, + int type, + int value); + +/* SSL_set_info_callback configures a callback to be run at various events + * during a connection's lifetime. See |SSL_CTX_set_info_callback|. */ +OPENSSL_EXPORT void SSL_set_info_callback( + SSL *ssl, void (*cb)(const SSL *ssl, int type, int value)); + +/* SSL_get_info_callback returns the callback set by |SSL_set_info_callback|. */ +OPENSSL_EXPORT void (*SSL_get_info_callback(const SSL *ssl))(const SSL *ssl, + int type, + int value); + +/* SSL_state_string_long returns the current state of the handshake state + * machine as a string. This may be useful for debugging and logging. */ +OPENSSL_EXPORT const char *SSL_state_string_long(const SSL *ssl); + +/* SSL_set_SSL_CTX partially changes |ssl|'s |SSL_CTX|. |ssl| will use the + * certificate and session_id_context from |ctx|, and |SSL_get_SSL_CTX| will + * report |ctx|. However most settings and the session cache itself will + * continue to use the initial |SSL_CTX|. It is often used as part of SNI. + * + * TODO(davidben): Make a better story here and get rid of this API. Also + * determine if there's anything else affected by |SSL_set_SSL_CTX| that + * matters. Not as many values are affected as one might initially think. The + * session cache explicitly selects the initial |SSL_CTX|. Most settings are + * copied at |SSL_new| so |ctx|'s versions don't apply. This, notably, has some + * consequences for any plans to make |SSL| copy-on-write most of its + * configuration. */ +OPENSSL_EXPORT SSL_CTX *SSL_set_SSL_CTX(SSL *ssl, SSL_CTX *ctx); + +#define SSL_SENT_SHUTDOWN 1 +#define SSL_RECEIVED_SHUTDOWN 2 + +/* SSL_get_shutdown returns a bitmask with a subset of |SSL_SENT_SHUTDOWN| and + * |SSL_RECEIVED_SHUTDOWN| to query whether close_notify was sent or received, + * respectively. */ +OPENSSL_EXPORT int SSL_get_shutdown(const SSL *ssl); + +/* SSL_get_server_key_exchange_hash, on a client, returns the hash the server + * used to sign the ServerKeyExchange in TLS 1.2. If not applicable, it returns + * |TLSEXT_hash_none|. */ +OPENSSL_EXPORT uint8_t SSL_get_server_key_exchange_hash(const SSL *ssl); + + +/* Deprecated functions. */ + +/* SSL_library_init calls |CRYPTO_library_init| and returns one. */ +OPENSSL_EXPORT int SSL_library_init(void); + +/* SSL_set_reject_peer_renegotiations calls |SSL_set_renegotiate_mode| with + * |ssl_never_renegotiate| if |reject| is one and |ssl_renegotiate_freely| if + * zero. */ +OPENSSL_EXPORT void SSL_set_reject_peer_renegotiations(SSL *ssl, int reject); + +/* SSL_CIPHER_description writes a description of |cipher| into |buf| and + * returns |buf|. If |buf| is NULL, it returns a newly allocated string, to be + * freed with |OPENSSL_free|, or NULL on error. + * + * The description includes a trailing newline and has the form: + * AES128-SHA Kx=RSA Au=RSA Enc=AES(128) Mac=SHA1 + * + * Consider |SSL_CIPHER_get_name| or |SSL_CIPHER_get_rfc_name| instead. */ +OPENSSL_EXPORT const char *SSL_CIPHER_description(const SSL_CIPHER *cipher, + char *buf, int len); + +/* SSL_CIPHER_get_version returns the string "TLSv1/SSLv3". */ +OPENSSL_EXPORT const char *SSL_CIPHER_get_version(const SSL_CIPHER *cipher); + +typedef void COMP_METHOD; + +/* SSL_COMP_get_compression_methods returns NULL. */ +OPENSSL_EXPORT COMP_METHOD *SSL_COMP_get_compression_methods(void); + +/* SSL_COMP_add_compression_method returns one. */ +OPENSSL_EXPORT int SSL_COMP_add_compression_method(int id, COMP_METHOD *cm); + +/* SSL_COMP_get_name returns NULL. */ +OPENSSL_EXPORT const char *SSL_COMP_get_name(const COMP_METHOD *comp); + +/* SSLv23_method calls |TLS_method|. */ +OPENSSL_EXPORT const SSL_METHOD *SSLv23_method(void); + +/* These version-specific methods behave exactly like |TLS_method| and + * |DTLS_method| except they also call |SSL_CTX_set_min_version| and + * |SSL_CTX_set_max_version| to lock connections to that protocol version. */ +OPENSSL_EXPORT const SSL_METHOD *SSLv3_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_1_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_2_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_2_method(void); + +/* These client- and server-specific methods call their corresponding generic + * methods. */ +OPENSSL_EXPORT const SSL_METHOD *SSLv23_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *SSLv23_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *SSLv3_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *SSLv3_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_1_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_1_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_2_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *TLSv1_2_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLS_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLS_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_client_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_2_server_method(void); +OPENSSL_EXPORT const SSL_METHOD *DTLSv1_2_client_method(void); + +/* SSL_clear resets |ssl| to allow another connection and returns one on success + * or zero on failure. It returns most configuration state but releases memory + * associated with the current connection. + * + * Free |ssl| and create a new one instead. */ +OPENSSL_EXPORT int SSL_clear(SSL *ssl); + +/* SSL_CTX_set_tmp_rsa_callback does nothing. */ +OPENSSL_EXPORT void SSL_CTX_set_tmp_rsa_callback( + SSL_CTX *ctx, RSA *(*cb)(SSL *ssl, int is_export, int keylength)); + +/* SSL_set_tmp_rsa_callback does nothing. */ +OPENSSL_EXPORT void SSL_set_tmp_rsa_callback(SSL *ssl, + RSA *(*cb)(SSL *ssl, int is_export, + int keylength)); + +/* SSL_CTX_sess_connect returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_connect(const SSL_CTX *ctx); + +/* SSL_CTX_sess_connect_good returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_connect_good(const SSL_CTX *ctx); + +/* SSL_CTX_sess_connect_renegotiate returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_connect_renegotiate(const SSL_CTX *ctx); + +/* SSL_CTX_sess_accept returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_accept(const SSL_CTX *ctx); + +/* SSL_CTX_sess_accept_renegotiate returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_accept_renegotiate(const SSL_CTX *ctx); + +/* SSL_CTX_sess_accept_good returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_accept_good(const SSL_CTX *ctx); + +/* SSL_CTX_sess_hits returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_hits(const SSL_CTX *ctx); + +/* SSL_CTX_sess_cb_hits returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_cb_hits(const SSL_CTX *ctx); + +/* SSL_CTX_sess_misses returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_misses(const SSL_CTX *ctx); + +/* SSL_CTX_sess_timeouts returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_timeouts(const SSL_CTX *ctx); + +/* SSL_CTX_sess_cache_full returns zero. */ +OPENSSL_EXPORT int SSL_CTX_sess_cache_full(const SSL_CTX *ctx); + +/* SSL_cutthrough_complete calls |SSL_in_false_start|. */ +OPENSSL_EXPORT int SSL_cutthrough_complete(const SSL *s); + +/* SSL_num_renegotiations calls |SSL_total_renegotiations|. */ +OPENSSL_EXPORT int SSL_num_renegotiations(const SSL *ssl); + +/* SSL_CTX_need_tmp_RSA returns zero. */ +OPENSSL_EXPORT int SSL_CTX_need_tmp_RSA(const SSL_CTX *ctx); + +/* SSL_need_tmp_RSA returns zero. */ +OPENSSL_EXPORT int SSL_need_tmp_RSA(const SSL *ssl); + +/* SSL_CTX_set_tmp_rsa returns one. */ +OPENSSL_EXPORT int SSL_CTX_set_tmp_rsa(SSL_CTX *ctx, const RSA *rsa); + +/* SSL_set_tmp_rsa returns one. */ +OPENSSL_EXPORT int SSL_set_tmp_rsa(SSL *ssl, const RSA *rsa); + +/* SSL_CTX_get_read_ahead returns zero. */ +OPENSSL_EXPORT int SSL_CTX_get_read_ahead(const SSL_CTX *ctx); + +/* SSL_CTX_set_read_ahead does nothing. */ +OPENSSL_EXPORT void SSL_CTX_set_read_ahead(SSL_CTX *ctx, int yes); + +/* SSL_get_read_ahead returns zero. */ +OPENSSL_EXPORT int SSL_get_read_ahead(const SSL *s); + +/* SSL_set_read_ahead does nothing. */ +OPENSSL_EXPORT void SSL_set_read_ahead(SSL *s, int yes); + +/* SSL_renegotiate put an error on the error queue and returns zero. */ +OPENSSL_EXPORT int SSL_renegotiate(SSL *ssl); + +/* SSL_set_state does nothing. */ +OPENSSL_EXPORT void SSL_set_state(SSL *ssl, int state); + +/* SSL_MODE_HANDSHAKE_CUTTHROUGH is the same as SSL_MODE_ENABLE_FALSE_START. */ +#define SSL_MODE_HANDSHAKE_CUTTHROUGH SSL_MODE_ENABLE_FALSE_START + +/* i2d_SSL_SESSION serializes |in| to the bytes pointed to by |*pp|. On success, + * it returns the number of bytes written and advances |*pp| by that many bytes. + * On failure, it returns -1. If |pp| is NULL, no bytes are written and only the + * length is returned. + * + * Use |SSL_SESSION_to_bytes| instead. */ +OPENSSL_EXPORT int i2d_SSL_SESSION(SSL_SESSION *in, uint8_t **pp); + +/* d2i_SSL_SESSION parses a serialized session from the |length| bytes pointed + * to by |*pp|. It returns the new |SSL_SESSION| and advances |*pp| by the + * number of bytes consumed on success and NULL on failure. The caller takes + * ownership of the new session and must call |SSL_SESSION_free| when done. + * + * If |a| is non-NULL, |*a| is released and set the new |SSL_SESSION|. + * + * Use |SSL_SESSION_from_bytes| instead. */ +OPENSSL_EXPORT SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const uint8_t **pp, + long length); + +/* i2d_SSL_SESSION_bio serializes |session| and writes the result to |bio|. It + * returns the number of bytes written on success and <= 0 on error. */ +OPENSSL_EXPORT int i2d_SSL_SESSION_bio(BIO *bio, const SSL_SESSION *session); + +/* d2i_SSL_SESSION_bio reads a serialized |SSL_SESSION| from |bio| and returns a + * newly-allocated |SSL_SESSION| or NULL on error. If |out| is not NULL, it also + * frees |*out| and sets |*out| to the new |SSL_SESSION|. */ +OPENSSL_EXPORT SSL_SESSION *d2i_SSL_SESSION_bio(BIO *bio, SSL_SESSION **out); + +/* ERR_load_SSL_strings does nothing. */ +OPENSSL_EXPORT void ERR_load_SSL_strings(void); + +/* SSL_load_error_strings does nothing. */ +OPENSSL_EXPORT void SSL_load_error_strings(void); + +/* SSL_CTX_set_tlsext_use_srtp calls |SSL_CTX_set_srtp_profiles|. It returns + * zero on success and one on failure. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |SSL_CTX_set_srtp_profiles| instead. */ +OPENSSL_EXPORT int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, + const char *profiles); + +/* SSL_set_tlsext_use_srtp calls |SSL_set_srtp_profiles|. It returns zero on + * success and one on failure. + * + * WARNING: this function is dangerous because it breaks the usual return value + * convention. Use |SSL_set_srtp_profiles| instead. */ +OPENSSL_EXPORT int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles); + +/* SSL_get_current_compression returns NULL. */ +OPENSSL_EXPORT const COMP_METHOD *SSL_get_current_compression(SSL *s); + +/* SSL_get_current_expansion returns NULL. */ +OPENSSL_EXPORT const COMP_METHOD *SSL_get_current_expansion(SSL *s); + +#define SSL_set_app_data(s, arg) (SSL_set_ex_data(s, 0, (char *)arg)) +#define SSL_get_app_data(s) (SSL_get_ex_data(s, 0)) +#define SSL_SESSION_set_app_data(s, a) \ + (SSL_SESSION_set_ex_data(s, 0, (char *)a)) +#define SSL_SESSION_get_app_data(s) (SSL_SESSION_get_ex_data(s, 0)) +#define SSL_CTX_get_app_data(ctx) (SSL_CTX_get_ex_data(ctx, 0)) +#define SSL_CTX_set_app_data(ctx, arg) \ + (SSL_CTX_set_ex_data(ctx, 0, (char *)arg)) + +#define OpenSSL_add_ssl_algorithms() SSL_library_init() +#define SSLeay_add_ssl_algorithms() SSL_library_init() + +#define SSL_get_cipher(ssl) SSL_CIPHER_get_name(SSL_get_current_cipher(ssl)) +#define SSL_get_cipher_bits(ssl, out_alg_bits) \ + SSL_CIPHER_get_bits(SSL_get_current_cipher(ssl), out_alg_bits) +#define SSL_get_cipher_version(ssl) \ + SSL_CIPHER_get_version(SSL_get_current_cipher(ssl)) +#define SSL_get_cipher_name(ssl) \ + SSL_CIPHER_get_name(SSL_get_current_cipher(ssl)) +#define SSL_get_time(session) SSL_SESSION_get_time(session) +#define SSL_set_time(session, time) SSL_SESSION_set_time((session), (time)) +#define SSL_get_timeout(session) SSL_SESSION_get_timeout(session) +#define SSL_set_timeout(session, timeout) \ + SSL_SESSION_set_timeout((session), (timeout)) + +typedef struct ssl_comp_st SSL_COMP; + +struct ssl_comp_st { + int id; + const char *name; + char *method; +}; + +DECLARE_STACK_OF(SSL_COMP) + +/* The following flags toggle individual protocol versions. This is deprecated. + * Use |SSL_CTX_set_min_version| and |SSL_CTX_set_max_version| instead. */ +#define SSL_OP_NO_SSLv3 0x02000000L +#define SSL_OP_NO_TLSv1 0x04000000L +#define SSL_OP_NO_TLSv1_2 0x08000000L +#define SSL_OP_NO_TLSv1_1 0x10000000L +#define SSL_OP_NO_DTLSv1 SSL_OP_NO_TLSv1 +#define SSL_OP_NO_DTLSv1_2 SSL_OP_NO_TLSv1_2 + +/* The following flags do nothing and are included only to make it easier to + * compile code with BoringSSL. */ +#define SSL_MODE_AUTO_RETRY 0 +#define SSL_MODE_RELEASE_BUFFERS 0 +#define SSL_MODE_SEND_CLIENTHELLO_TIME 0 +#define SSL_MODE_SEND_SERVERHELLO_TIME 0 +#define SSL_OP_ALL 0 +#define SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION 0 +#define SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS 0 +#define SSL_OP_EPHEMERAL_RSA 0 +#define SSL_OP_LEGACY_SERVER_CONNECT 0 +#define SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER 0 +#define SSL_OP_MICROSOFT_SESS_ID_BUG 0 +#define SSL_OP_MSIE_SSLV2_RSA_PADDING 0 +#define SSL_OP_NETSCAPE_CA_DN_BUG 0 +#define SSL_OP_NETSCAPE_CHALLENGE_BUG 0 +#define SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG 0 +#define SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG 0 +#define SSL_OP_NO_COMPRESSION 0 +#define SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION 0 +#define SSL_OP_NO_SSLv2 0 +#define SSL_OP_PKCS1_CHECK_1 0 +#define SSL_OP_PKCS1_CHECK_2 0 +#define SSL_OP_SINGLE_DH_USE 0 +#define SSL_OP_SINGLE_ECDH_USE 0 +#define SSL_OP_SSLEAY_080_CLIENT_DH_BUG 0 +#define SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG 0 +#define SSL_OP_TLS_BLOCK_PADDING_BUG 0 +#define SSL_OP_TLS_D5_BUG 0 +#define SSL_OP_TLS_ROLLBACK_BUG 0 +#define SSL_VERIFY_CLIENT_ONCE 0 + +/* SSL_cache_hit calls |SSL_session_resumed|. */ +OPENSSL_EXPORT int SSL_cache_hit(SSL *ssl); + +/* SSL_get_default_timeout returns |SSL_DEFAULT_SESSION_TIMEOUT|. */ +OPENSSL_EXPORT long SSL_get_default_timeout(const SSL *ssl); + +/* SSL_get_version returns a string describing the TLS version used by |ssl|. + * For example, "TLSv1.2" or "SSLv3". */ +OPENSSL_EXPORT const char *SSL_get_version(const SSL *ssl); + +/* SSL_get_cipher_list returns the name of the |n|th cipher in the output of + * |SSL_get_ciphers| or NULL if out of range. Use |SSL_get_ciphers| insteads. */ +OPENSSL_EXPORT const char *SSL_get_cipher_list(const SSL *ssl, int n); + +/* SSL_CTX_set_client_cert_cb sets a callback which is called on the client if + * the server requests a client certificate and none is configured. On success, + * the callback should return one and set |*out_x509| to |*out_pkey| to a leaf + * certificate and private key, respectively, passing ownership. It should + * return zero to send no certificate and -1 to fail or pause the handshake. If + * the handshake is paused, |SSL_get_error| will return + * |SSL_ERROR_WANT_X509_LOOKUP|. + * + * The callback may call |SSL_get0_certificate_types| and + * |SSL_get_client_CA_list| for information on the server's certificate request. + * + * Use |SSL_CTX_set_cert_cb| instead. Configuring intermediate certificates with + * this function is confusing. */ +OPENSSL_EXPORT void SSL_CTX_set_client_cert_cb( + SSL_CTX *ctx, + int (*client_cert_cb)(SSL *ssl, X509 **out_x509, EVP_PKEY **out_pkey)); + +/* SSL_CTX_get_client_cert_cb returns the callback set by + * |SSL_CTX_set_client_cert_cb|. */ +OPENSSL_EXPORT int (*SSL_CTX_get_client_cert_cb(SSL_CTX *ctx))( + SSL *ssl, X509 **out_x509, EVP_PKEY **out_pkey); + +#define SSL_NOTHING 1 +#define SSL_WRITING 2 +#define SSL_READING 3 +#define SSL_X509_LOOKUP 4 +#define SSL_CHANNEL_ID_LOOKUP 5 +#define SSL_PENDING_SESSION 7 +#define SSL_CERTIFICATE_SELECTION_PENDING 8 +#define SSL_PRIVATE_KEY_OPERATION 9 + +/* SSL_want returns one of the above values to determine what the most recent + * operation on |ssl| was blocked on. Use |SSL_get_error| instead. */ +OPENSSL_EXPORT int SSL_want(const SSL *ssl); + +#define SSL_want_nothing(ssl) (SSL_want(ssl) == SSL_NOTHING) +#define SSL_want_read(ssl) (SSL_want(ssl) == SSL_READING) +#define SSL_want_write(ssl) (SSL_want(ssl) == SSL_WRITING) +#define SSL_want_x509_lookup(ssl) (SSL_want(ssl) == SSL_X509_LOOKUP) +#define SSL_want_channel_id_lookup(ssl) (SSL_want(ssl) == SSL_CHANNEL_ID_LOOKUP) +#define SSL_want_session(ssl) (SSL_want(ssl) == SSL_PENDING_SESSION) +#define SSL_want_certificate(ssl) \ + (SSL_want(ssl) == SSL_CERTIFICATE_SELECTION_PENDING) +#define SSL_want_private_key_operation(ssl) \ + (SSL_want(ssl) == SSL_PRIVATE_KEY_OPERATION) + + /* SSL_get_finished writes up to |count| bytes of the Finished message sent by + * |ssl| to |buf|. It returns the total untruncated length or zero if none has + * been sent yet. + * + * Use |SSL_get_tls_unique| instead. */ +OPENSSL_EXPORT size_t SSL_get_finished(const SSL *ssl, void *buf, size_t count); + + /* SSL_get_peer_finished writes up to |count| bytes of the Finished message + * received from |ssl|'s peer to |buf|. It returns the total untruncated length + * or zero if none has been received yet. + * + * Use |SSL_get_tls_unique| instead. */ +OPENSSL_EXPORT size_t SSL_get_peer_finished(const SSL *ssl, void *buf, + size_t count); + +/* SSL_alert_type_string returns "!". Use |SSL_alert_type_string_long| + * instead. */ +OPENSSL_EXPORT const char *SSL_alert_type_string(int value); + +/* SSL_alert_desc_string returns "!!". Use |SSL_alert_desc_string_long| + * instead. */ +OPENSSL_EXPORT const char *SSL_alert_desc_string(int value); + +/* SSL_TXT_* expand to strings. */ +#define SSL_TXT_MEDIUM "MEDIUM" +#define SSL_TXT_HIGH "HIGH" +#define SSL_TXT_FIPS "FIPS" +#define SSL_TXT_kRSA "kRSA" +#define SSL_TXT_kDHE "kDHE" +#define SSL_TXT_kEDH "kEDH" +#define SSL_TXT_kECDHE "kECDHE" +#define SSL_TXT_kEECDH "kEECDH" +#define SSL_TXT_kPSK "kPSK" +#define SSL_TXT_aRSA "aRSA" +#define SSL_TXT_aECDSA "aECDSA" +#define SSL_TXT_aPSK "aPSK" +#define SSL_TXT_DH "DH" +#define SSL_TXT_DHE "DHE" +#define SSL_TXT_EDH "EDH" +#define SSL_TXT_RSA "RSA" +#define SSL_TXT_ECDH "ECDH" +#define SSL_TXT_ECDHE "ECDHE" +#define SSL_TXT_EECDH "EECDH" +#define SSL_TXT_ECDSA "ECDSA" +#define SSL_TXT_PSK "PSK" +#define SSL_TXT_3DES "3DES" +#define SSL_TXT_RC4 "RC4" +#define SSL_TXT_AES128 "AES128" +#define SSL_TXT_AES256 "AES256" +#define SSL_TXT_AES "AES" +#define SSL_TXT_AES_GCM "AESGCM" +#define SSL_TXT_CHACHA20 "CHACHA20" +#define SSL_TXT_MD5 "MD5" +#define SSL_TXT_SHA1 "SHA1" +#define SSL_TXT_SHA "SHA" +#define SSL_TXT_SHA256 "SHA256" +#define SSL_TXT_SHA384 "SHA384" +#define SSL_TXT_SSLV3 "SSLv3" +#define SSL_TXT_TLSV1 "TLSv1" +#define SSL_TXT_TLSV1_1 "TLSv1.1" +#define SSL_TXT_TLSV1_2 "TLSv1.2" +#define SSL_TXT_ALL "ALL" +#define SSL_TXT_CMPDEF "COMPLEMENTOFDEFAULT" + +typedef struct ssl_conf_ctx_st SSL_CONF_CTX; + +/* SSL_state returns the current state of the handshake state machine. */ +OPENSSL_EXPORT int SSL_state(const SSL *ssl); + +#define SSL_get_state(ssl) SSL_state(ssl) + +/* SSL_state_string returns the current state of the handshake state machine as + * a six-letter string. Use |SSL_state_string_long| for a more intelligible + * string. */ +OPENSSL_EXPORT const char *SSL_state_string(const SSL *ssl); + +/* SSL_set_shutdown causes |ssl| to behave as if the shutdown bitmask (see + * |SSL_get_shutdown|) were |mode|. This may be used to skip sending or + * receiving close_notify in |SSL_shutdown| by causing the implementation to + * believe the events already happened. + * + * It is an error to use |SSL_set_shutdown| to unset a bit that has already been + * set. Doing so will trigger an |assert| in debug builds and otherwise be + * ignored. + * + * Use |SSL_CTX_set_quiet_shutdown| instead. */ +OPENSSL_EXPORT void SSL_set_shutdown(SSL *ssl, int mode); + +/* SSL_CTX_set_tmp_ecdh calls |SSL_CTX_set1_curves| with a one-element list + * containing |ec_key|'s curve. */ +OPENSSL_EXPORT int SSL_CTX_set_tmp_ecdh(SSL_CTX *ctx, const EC_KEY *ec_key); + +/* SSL_set_tmp_ecdh calls |SSL_set1_curves| with a one-element list containing + * |ec_key|'s curve. */ +OPENSSL_EXPORT int SSL_set_tmp_ecdh(SSL *ssl, const EC_KEY *ec_key); + + +/* Private structures. + * + * This structures are exposed for historical reasons, but access to them is + * deprecated. */ + +typedef struct ssl_protocol_method_st SSL_PROTOCOL_METHOD; +typedef struct ssl3_enc_method SSL3_ENC_METHOD; +typedef struct ssl_aead_ctx_st SSL_AEAD_CTX; + +struct ssl_cipher_st { + /* name is the OpenSSL name for the cipher. */ + const char *name; + /* id is the cipher suite value bitwise OR-d with 0x03000000. */ + uint32_t id; + + /* algorithm_* are internal fields. See ssl/internal.h for their values. */ + uint32_t algorithm_mkey; + uint32_t algorithm_auth; + uint32_t algorithm_enc; + uint32_t algorithm_mac; + uint32_t algorithm_prf; +}; + +typedef struct ssl_ecdh_method_st SSL_ECDH_METHOD; +typedef struct ssl_ecdh_ctx_st { + const SSL_ECDH_METHOD *method; + void *data; +} SSL_ECDH_CTX; + +#define SSL_MAX_SSL_SESSION_ID_LENGTH 32 +#define SSL_MAX_SID_CTX_LENGTH 32 +#define SSL_MAX_MASTER_KEY_LENGTH 48 + +struct ssl_session_st { + CRYPTO_refcount_t references; + int ssl_version; /* what ssl version session info is being kept in here? */ + + /* key_exchange_info contains an indication of the size of the asymmetric + * primitive used in the handshake that created this session. In the event + * that two asymmetric operations are used, this value applies to the one + * that controls the confidentiality of the connection. Its interpretation + * depends on the primitive that was used; as specified by the cipher suite: + * DHE: the size, in bits, of the multiplicative group. + * RSA: the size, in bits, of the modulus. + * ECDHE: the TLS id for the curve. + * + * A zero indicates that the value is unknown. */ + uint32_t key_exchange_info; + + int master_key_length; + uint8_t master_key[SSL_MAX_MASTER_KEY_LENGTH]; + + /* session_id - valid? */ + unsigned int session_id_length; + uint8_t session_id[SSL_MAX_SSL_SESSION_ID_LENGTH]; + /* this is used to determine whether the session is being reused in + * the appropriate context. It is up to the application to set this, + * via SSL_new */ + unsigned int sid_ctx_length; + uint8_t sid_ctx[SSL_MAX_SID_CTX_LENGTH]; + + char *psk_identity; + /* peer is the peer's certificate. */ + X509 *peer; + + /* cert_chain is the certificate chain sent by the peer. NOTE: for historical + * reasons, when a client (so the peer is a server), the chain includes + * |peer|, but when a server it does not. */ + STACK_OF(X509) *cert_chain; + + /* when app_verify_callback accepts a session where the peer's certificate is + * not ok, we must remember the error for session reuse: */ + long verify_result; /* only for servers */ + + long timeout; + long time; + + const SSL_CIPHER *cipher; + + CRYPTO_EX_DATA ex_data; /* application specific data */ + + /* These are used to make removal of session-ids more efficient and to + * implement a maximum cache size. */ + SSL_SESSION *prev, *next; + char *tlsext_hostname; + + /* RFC4507 info */ + uint8_t *tlsext_tick; /* Session ticket */ + size_t tlsext_ticklen; /* Session ticket length */ + + size_t tlsext_signed_cert_timestamp_list_length; + uint8_t *tlsext_signed_cert_timestamp_list; /* Server's list. */ + + /* The OCSP response that came with the session. */ + size_t ocsp_response_length; + uint8_t *ocsp_response; + + /* peer_sha256 contains the SHA-256 hash of the peer's certificate if + * |peer_sha256_valid| is true. */ + uint8_t peer_sha256[SHA256_DIGEST_LENGTH]; + + /* original_handshake_hash contains the handshake hash (either SHA-1+MD5 or + * SHA-2, depending on TLS version) for the original, full handshake that + * created a session. This is used by Channel IDs during resumption. */ + uint8_t original_handshake_hash[EVP_MAX_MD_SIZE]; + unsigned original_handshake_hash_len; + + uint32_t tlsext_tick_lifetime_hint; /* Session lifetime hint in seconds */ + + /* extended_master_secret is true if the master secret in this session was + * generated using EMS and thus isn't vulnerable to the Triple Handshake + * attack. */ + unsigned extended_master_secret:1; + + /* peer_sha256_valid is non-zero if |peer_sha256| is valid. */ + unsigned peer_sha256_valid:1; /* Non-zero if peer_sha256 is valid */ + + /* not_resumable is used to indicate that session resumption is not allowed. + * Applications can also set this bit for a new session via + * not_resumable_session_cb to disable session caching and tickets. */ + unsigned not_resumable:1; +}; + +/* ssl_cipher_preference_list_st contains a list of SSL_CIPHERs with + * equal-preference groups. For TLS clients, the groups are moot because the + * server picks the cipher and groups cannot be expressed on the wire. However, + * for servers, the equal-preference groups allow the client's preferences to + * be partially respected. (This only has an effect with + * SSL_OP_CIPHER_SERVER_PREFERENCE). + * + * The equal-preference groups are expressed by grouping SSL_CIPHERs together. + * All elements of a group have the same priority: no ordering is expressed + * within a group. + * + * The values in |ciphers| are in one-to-one correspondence with + * |in_group_flags|. (That is, sk_SSL_CIPHER_num(ciphers) is the number of + * bytes in |in_group_flags|.) The bytes in |in_group_flags| are either 1, to + * indicate that the corresponding SSL_CIPHER is not the last element of a + * group, or 0 to indicate that it is. + * + * For example, if |in_group_flags| contains all zeros then that indicates a + * traditional, fully-ordered preference. Every SSL_CIPHER is the last element + * of the group (i.e. they are all in a one-element group). + * + * For a more complex example, consider: + * ciphers: A B C D E F + * in_group_flags: 1 1 0 0 1 0 + * + * That would express the following, order: + * + * A E + * B -> D -> F + * C + */ +struct ssl_cipher_preference_list_st { + STACK_OF(SSL_CIPHER) *ciphers; + uint8_t *in_group_flags; +}; + +struct ssl_ctx_st { + const SSL_PROTOCOL_METHOD *method; + + /* lock is used to protect various operations on this object. */ + CRYPTO_MUTEX lock; + + /* max_version is the maximum acceptable protocol version. If zero, the + * maximum supported version, currently (D)TLS 1.2, is used. */ + uint16_t max_version; + + /* min_version is the minimum acceptable protocl version. If zero, the + * minimum supported version, currently SSL 3.0 and DTLS 1.0, is used */ + uint16_t min_version; + + struct ssl_cipher_preference_list_st *cipher_list; + /* same as above but sorted for lookup */ + STACK_OF(SSL_CIPHER) *cipher_list_by_id; + + /* cipher_list_tls10 is the list of ciphers when TLS 1.0 or greater is in + * use. This only applies to server connections as, for clients, the version + * number is known at connect time and so the cipher list can be set then. If + * |cipher_list_tls11| is non-NULL then this applies only to TLS 1.0 + * connections. + * + * TODO(agl): this exists to assist in the death of SSLv3. It can hopefully + * be removed after that. */ + struct ssl_cipher_preference_list_st *cipher_list_tls10; + + /* cipher_list_tls11 is the list of ciphers when TLS 1.1 or greater is in + * use. This only applies to server connections as, for clients, the version + * number is known at connect time and so the cipher list can be set then. */ + struct ssl_cipher_preference_list_st *cipher_list_tls11; + + X509_STORE *cert_store; + LHASH_OF(SSL_SESSION) *sessions; + /* Most session-ids that will be cached, default is + * SSL_SESSION_CACHE_MAX_SIZE_DEFAULT. 0 is unlimited. */ + unsigned long session_cache_size; + SSL_SESSION *session_cache_head; + SSL_SESSION *session_cache_tail; + + /* handshakes_since_cache_flush is the number of successful handshakes since + * the last cache flush. */ + int handshakes_since_cache_flush; + + /* This can have one of 2 values, ored together, + * SSL_SESS_CACHE_CLIENT, + * SSL_SESS_CACHE_SERVER, + * Default is SSL_SESSION_CACHE_SERVER, which means only + * SSL_accept which cache SSL_SESSIONS. */ + int session_cache_mode; + + /* If timeout is not 0, it is the default timeout value set when SSL_new() is + * called. This has been put in to make life easier to set things up */ + long session_timeout; + + /* If this callback is not null, it will be called each time a session id is + * added to the cache. If this function returns 1, it means that the + * callback will do a SSL_SESSION_free() when it has finished using it. + * Otherwise, on 0, it means the callback has finished with it. If + * remove_session_cb is not null, it will be called when a session-id is + * removed from the cache. After the call, OpenSSL will SSL_SESSION_free() + * it. */ + int (*new_session_cb)(SSL *ssl, SSL_SESSION *sess); + void (*remove_session_cb)(SSL_CTX *ctx, SSL_SESSION *sess); + SSL_SESSION *(*get_session_cb)(SSL *ssl, uint8_t *data, int len, + int *copy); + + CRYPTO_refcount_t references; + + /* if defined, these override the X509_verify_cert() calls */ + int (*app_verify_callback)(X509_STORE_CTX *store_ctx, void *arg); + void *app_verify_arg; + + /* Default password callback. */ + pem_password_cb *default_passwd_callback; + + /* Default password callback user data. */ + void *default_passwd_callback_userdata; + + /* get client cert callback */ + int (*client_cert_cb)(SSL *ssl, X509 **out_x509, EVP_PKEY **out_pkey); + + /* get channel id callback */ + void (*channel_id_cb)(SSL *ssl, EVP_PKEY **out_pkey); + + CRYPTO_EX_DATA ex_data; + + /* custom_*_extensions stores any callback sets for custom extensions. Note + * that these pointers will be NULL if the stack would otherwise be empty. */ + STACK_OF(SSL_CUSTOM_EXTENSION) *client_custom_extensions; + STACK_OF(SSL_CUSTOM_EXTENSION) *server_custom_extensions; + + /* Default values used when no per-SSL value is defined follow */ + + void (*info_callback)(const SSL *ssl, int type, int value); + + /* what we put in client cert requests */ + STACK_OF(X509_NAME) *client_CA; + + + /* Default values to use in SSL structures follow (these are copied by + * SSL_new) */ + + uint32_t options; + uint32_t mode; + uint32_t max_cert_list; + + struct cert_st /* CERT */ *cert; + + /* callback that allows applications to peek at protocol messages */ + void (*msg_callback)(int write_p, int version, int content_type, + const void *buf, size_t len, SSL *ssl, void *arg); + void *msg_callback_arg; + + int verify_mode; + unsigned int sid_ctx_length; + uint8_t sid_ctx[SSL_MAX_SID_CTX_LENGTH]; + int (*default_verify_callback)( + int ok, X509_STORE_CTX *ctx); /* called 'verify_callback' in the SSL */ + + X509_VERIFY_PARAM *param; + + /* select_certificate_cb is called before most ClientHello processing and + * before the decision whether to resume a session is made. It may return one + * to continue the handshake or zero to cause the handshake loop to return + * with an error and cause SSL_get_error to return + * SSL_ERROR_PENDING_CERTIFICATE. Note: when the handshake loop is resumed, it + * will not call the callback a second time. */ + int (*select_certificate_cb)(const struct ssl_early_callback_ctx *); + + /* dos_protection_cb is called once the resumption decision for a ClientHello + * has been made. It returns one to continue the handshake or zero to + * abort. */ + int (*dos_protection_cb) (const struct ssl_early_callback_ctx *); + + /* Maximum amount of data to send in one fragment. actual record size can be + * more than this due to padding and MAC overheads. */ + uint16_t max_send_fragment; + + /* TLS extensions servername callback */ + int (*tlsext_servername_callback)(SSL *, int *, void *); + void *tlsext_servername_arg; + /* RFC 4507 session ticket keys */ + uint8_t tlsext_tick_key_name[SSL_TICKET_KEY_NAME_LEN]; + uint8_t tlsext_tick_hmac_key[16]; + uint8_t tlsext_tick_aes_key[16]; + /* Callback to support customisation of ticket key setting */ + int (*tlsext_ticket_key_cb)(SSL *ssl, uint8_t *name, uint8_t *iv, + EVP_CIPHER_CTX *ectx, HMAC_CTX *hctx, int enc); + + /* Server-only: psk_identity_hint is the default identity hint to send in + * PSK-based key exchanges. */ + char *psk_identity_hint; + + unsigned int (*psk_client_callback)(SSL *ssl, const char *hint, + char *identity, + unsigned int max_identity_len, + uint8_t *psk, unsigned int max_psk_len); + unsigned int (*psk_server_callback)(SSL *ssl, const char *identity, + uint8_t *psk, unsigned int max_psk_len); + + + /* retain_only_sha256_of_client_certs is true if we should compute the SHA256 + * hash of the peer's certifiate and then discard it to save memory and + * session space. Only effective on the server side. */ + char retain_only_sha256_of_client_certs; + + /* Next protocol negotiation information */ + /* (for experimental NPN extension). */ + + /* For a server, this contains a callback function by which the set of + * advertised protocols can be provided. */ + int (*next_protos_advertised_cb)(SSL *ssl, const uint8_t **out, + unsigned *out_len, void *arg); + void *next_protos_advertised_cb_arg; + /* For a client, this contains a callback function that selects the + * next protocol from the list provided by the server. */ + int (*next_proto_select_cb)(SSL *ssl, uint8_t **out, uint8_t *out_len, + const uint8_t *in, unsigned in_len, void *arg); + void *next_proto_select_cb_arg; + + /* ALPN information + * (we are in the process of transitioning from NPN to ALPN.) */ + + /* For a server, this contains a callback function that allows the + * server to select the protocol for the connection. + * out: on successful return, this must point to the raw protocol + * name (without the length prefix). + * outlen: on successful return, this contains the length of |*out|. + * in: points to the client's list of supported protocols in + * wire-format. + * inlen: the length of |in|. */ + int (*alpn_select_cb)(SSL *s, const uint8_t **out, uint8_t *out_len, + const uint8_t *in, unsigned in_len, void *arg); + void *alpn_select_cb_arg; + + /* For a client, this contains the list of supported protocols in wire + * format. */ + uint8_t *alpn_client_proto_list; + unsigned alpn_client_proto_list_len; + + /* SRTP profiles we are willing to do from RFC 5764 */ + STACK_OF(SRTP_PROTECTION_PROFILE) *srtp_profiles; + + /* EC extension values inherited by SSL structure */ + size_t tlsext_ellipticcurvelist_length; + uint16_t *tlsext_ellipticcurvelist; + + /* The client's Channel ID private key. */ + EVP_PKEY *tlsext_channel_id_private; + + /* Signed certificate timestamp list to be sent to the client, if requested */ + uint8_t *signed_cert_timestamp_list; + size_t signed_cert_timestamp_list_length; + + /* OCSP response to be sent to the client, if requested. */ + uint8_t *ocsp_response; + size_t ocsp_response_length; + + /* keylog_callback, if not NULL, is the key logging callback. See + * |SSL_CTX_set_keylog_callback|. */ + void (*keylog_callback)(const SSL *ssl, const char *line); + + /* current_time_cb, if not NULL, is the function to use to get the current + * time. It sets |*out_clock| to the current time. */ + void (*current_time_cb)(const SSL *ssl, struct timeval *out_clock); + + /* quiet_shutdown is true if the connection should not send a close_notify on + * shutdown. */ + unsigned quiet_shutdown:1; + + /* ocsp_stapling_enabled is only used by client connections and indicates + * whether OCSP stapling will be requested. */ + unsigned ocsp_stapling_enabled:1; + + /* If true, a client will request certificate timestamps. */ + unsigned signed_cert_timestamps_enabled:1; + + /* tlsext_channel_id_enabled is copied from the |SSL_CTX|. For a server, + * means that we'll accept Channel IDs from clients. For a client, means that + * we'll advertise support. */ + unsigned tlsext_channel_id_enabled:1; +}; + +struct ssl_st { + /* version is the protocol version. */ + int version; + + /* max_version is the maximum acceptable protocol version. If zero, the + * maximum supported version, currently (D)TLS 1.2, is used. */ + uint16_t max_version; + + /* min_version is the minimum acceptable protocl version. If zero, the + * minimum supported version, currently SSL 3.0 and DTLS 1.0, is used */ + uint16_t min_version; + + /* method is the method table corresponding to the current protocol (DTLS or + * TLS). */ + const SSL_PROTOCOL_METHOD *method; + + /* enc_method is the method table corresponding to the current protocol + * version. */ + const SSL3_ENC_METHOD *enc_method; + + /* There are 2 BIO's even though they are normally both the same. This is so + * data can be read and written to different handlers */ + + BIO *rbio; /* used by SSL_read */ + BIO *wbio; /* used by SSL_write */ + + /* bbio, if non-NULL, is a buffer placed in front of |wbio| to pack handshake + * messages within one flight into a single |BIO_write|. + * + * TODO(davidben): This does not work right for DTLS. It assumes the MTU is + * smaller than the buffer size so that the buffer's internal flushing never + * kicks in. It also doesn't kick in for DTLS retransmission. Replace this + * with a better mechanism. */ + BIO *bbio; + + int (*handshake_func)(SSL *); + + /* Imagine that here's a boolean member "init" that is switched as soon as + * SSL_set_{accept/connect}_state is called for the first time, so that + * "state" and "handshake_func" are properly initialized. But as + * handshake_func is == 0 until then, we use this test instead of an "init" + * member. */ + + int shutdown; /* we have shut things down, 0x01 sent, 0x02 + * for received */ + int state; /* where we are */ + + BUF_MEM *init_buf; /* buffer used during init */ + uint8_t *init_msg; /* pointer to handshake message body, set by + ssl3_get_message() */ + int init_num; /* amount read/written */ + int init_off; /* amount read/written */ + + struct ssl3_state_st *s3; /* SSLv3 variables */ + struct dtls1_state_st *d1; /* DTLSv1 variables */ + + /* callback that allows applications to peek at protocol messages */ + void (*msg_callback)(int write_p, int version, int content_type, + const void *buf, size_t len, SSL *ssl, void *arg); + void *msg_callback_arg; + + X509_VERIFY_PARAM *param; + + /* crypto */ + struct ssl_cipher_preference_list_st *cipher_list; + STACK_OF(SSL_CIPHER) *cipher_list_by_id; + + SSL_AEAD_CTX *aead_read_ctx; + SSL_AEAD_CTX *aead_write_ctx; + + /* session info */ + + /* client cert? */ + /* This is used to hold the server certificate used */ + struct cert_st /* CERT */ *cert; + + /* This holds a variable that indicates what we were doing when a 0 or -1 is + * returned. This is needed for non-blocking IO so we know what request + * needs re-doing when in SSL_accept or SSL_connect */ + int rwstate; + + /* the session_id_context is used to ensure sessions are only reused + * in the appropriate context */ + unsigned int sid_ctx_length; + uint8_t sid_ctx[SSL_MAX_SID_CTX_LENGTH]; + + /* This can also be in the session once a session is established */ + SSL_SESSION *session; + + int (*verify_callback)(int ok, + X509_STORE_CTX *ctx); /* fail if callback returns 0 */ + + void (*info_callback)(const SSL *ssl, int type, int value); + + /* Server-only: psk_identity_hint is the identity hint to send in + * PSK-based key exchanges. */ + char *psk_identity_hint; + + unsigned int (*psk_client_callback)(SSL *ssl, const char *hint, + char *identity, + unsigned int max_identity_len, + uint8_t *psk, unsigned int max_psk_len); + unsigned int (*psk_server_callback)(SSL *ssl, const char *identity, + uint8_t *psk, unsigned int max_psk_len); + + SSL_CTX *ctx; + + /* extra application data */ + long verify_result; + CRYPTO_EX_DATA ex_data; + + /* for server side, keep the list of CA_dn we can use */ + STACK_OF(X509_NAME) *client_CA; + + uint32_t options; /* protocol behaviour */ + uint32_t mode; /* API behaviour */ + uint32_t max_cert_list; + int client_version; /* what was passed, used for + * SSLv3/TLS rollback check */ + uint16_t max_send_fragment; + char *tlsext_hostname; + /* RFC4507 session ticket expected to be received or sent */ + int tlsext_ticket_expected; + size_t tlsext_ellipticcurvelist_length; + uint16_t *tlsext_ellipticcurvelist; /* our list */ + + SSL_CTX *initial_ctx; /* initial ctx, used to store sessions */ + + /* Next protocol negotiation. For the client, this is the protocol that we + * sent in NextProtocol and is set when handling ServerHello extensions. + * + * For a server, this is the client's selected_protocol from NextProtocol and + * is set when handling the NextProtocol message, before the Finished + * message. */ + uint8_t *next_proto_negotiated; + size_t next_proto_negotiated_len; + + /* srtp_profiles is the list of configured SRTP protection profiles for + * DTLS-SRTP. */ + STACK_OF(SRTP_PROTECTION_PROFILE) *srtp_profiles; + + /* srtp_profile is the selected SRTP protection profile for + * DTLS-SRTP. */ + const SRTP_PROTECTION_PROFILE *srtp_profile; + + /* The client's Channel ID private key. */ + EVP_PKEY *tlsext_channel_id_private; + + /* For a client, this contains the list of supported protocols in wire + * format. */ + uint8_t *alpn_client_proto_list; + unsigned alpn_client_proto_list_len; + + /* renegotiate_mode controls how peer renegotiation attempts are handled. */ + enum ssl_renegotiate_mode_t renegotiate_mode; + + /* These fields are always NULL and exist only to keep wpa_supplicant happy + * about the change to EVP_AEAD. They are only needed for EAP-FAST, which we + * don't support. */ + EVP_CIPHER_CTX *enc_read_ctx; + EVP_MD_CTX *read_hash; + + /* in_handshake is non-zero when we are actually in SSL_accept() or + * SSL_connect() */ + int in_handshake; + + /* verify_mode is a bitmask of |SSL_VERIFY_*| values. */ + uint8_t verify_mode; + + /* hit is true if this connection is resuming a previous session. */ + unsigned hit:1; + + /* server is true iff the this SSL* is the server half. Note: before the SSL* + * is initialized by either SSL_set_accept_state or SSL_set_connect_state, + * the side is not determined. In this state, server is always false. */ + unsigned server:1; + + /* quiet_shutdown is true if the connection should not send a close_notify on + * shutdown. */ + unsigned quiet_shutdown:1; + + /* Enable signed certificate time stamps. Currently client only. */ + unsigned signed_cert_timestamps_enabled:1; + + /* ocsp_stapling_enabled is only used by client connections and indicates + * whether OCSP stapling will be requested. */ + unsigned ocsp_stapling_enabled:1; + + /* tlsext_channel_id_enabled is copied from the |SSL_CTX|. For a server, + * means that we'll accept Channel IDs from clients. For a client, means that + * we'll advertise support. */ + unsigned tlsext_channel_id_enabled:1; +}; + +typedef struct ssl3_record_st { + /* type is the record type. */ + uint8_t type; + /* length is the number of unconsumed bytes in the record. */ + uint16_t length; + /* data is a non-owning pointer to the first unconsumed byte of the record. */ + uint8_t *data; +} SSL3_RECORD; + +typedef struct ssl3_buffer_st { + /* buf is the memory allocated for this buffer. */ + uint8_t *buf; + /* offset is the offset into |buf| which the buffer contents start at. */ + uint16_t offset; + /* len is the length of the buffer contents from |buf| + |offset|. */ + uint16_t len; + /* cap is how much memory beyond |buf| + |offset| is available. */ + uint16_t cap; +} SSL3_BUFFER; + +typedef struct ssl3_state_st { + uint8_t read_sequence[8]; + uint8_t write_sequence[8]; + + uint8_t server_random[SSL3_RANDOM_SIZE]; + uint8_t client_random[SSL3_RANDOM_SIZE]; + + /* have_version is true if the connection's final version is known. Otherwise + * the version has not been negotiated yet. */ + char have_version; + + /* initial_handshake_complete is true if the initial handshake has + * completed. */ + char initial_handshake_complete; + + /* read_buffer holds data from the transport to be processed. */ + SSL3_BUFFER read_buffer; + /* write_buffer holds data to be written to the transport. */ + SSL3_BUFFER write_buffer; + + SSL3_RECORD rrec; /* each decoded record goes in here */ + + /* hello_request_len is the number of bytes of HelloRequest received, possibly + * split over multiple records. */ + uint8_t hello_request_len; + + /* partial write - check the numbers match */ + unsigned int wnum; /* number of bytes sent so far */ + int wpend_tot; /* number bytes written */ + int wpend_type; + int wpend_ret; /* number of bytes submitted */ + const uint8_t *wpend_buf; + + /* handshake_buffer, if non-NULL, contains the handshake transcript. */ + BUF_MEM *handshake_buffer; + /* handshake_hash, if initialized with an |EVP_MD|, maintains the handshake + * hash. For TLS 1.1 and below, it is the SHA-1 half. */ + EVP_MD_CTX handshake_hash; + /* handshake_md5, if initialized with an |EVP_MD|, maintains the MD5 half of + * the handshake hash for TLS 1.1 and below. */ + EVP_MD_CTX handshake_md5; + + int warn_alert; + int fatal_alert; + /* we allow one fatal and one warning alert to be outstanding, send close + * alert via the warning alert */ + int alert_dispatch; + uint8_t send_alert[2]; + + int total_renegotiations; + + /* empty_record_count is the number of consecutive empty records received. */ + uint8_t empty_record_count; + + /* warning_alert_count is the number of consecutive warning alerts + * received. */ + uint8_t warning_alert_count; + + /* State pertaining to the pending handshake. + * + * TODO(davidben): State is current spread all over the place. Move + * pending handshake state here so it can be managed separately from + * established connection state in case of renegotiations. */ + struct { + uint8_t finish_md[EVP_MAX_MD_SIZE]; + int finish_md_len; + uint8_t peer_finish_md[EVP_MAX_MD_SIZE]; + int peer_finish_md_len; + + unsigned long message_size; + int message_type; + + /* used to hold the new cipher we are going to use */ + const SSL_CIPHER *new_cipher; + + /* used when SSL_ST_FLUSH_DATA is entered */ + int next_state; + + int reuse_message; + + union { + /* sent is a bitset where the bits correspond to elements of kExtensions + * in t1_lib.c. Each bit is set if that extension was sent in a + * ClientHello. It's not used by servers. */ + uint32_t sent; + /* received is a bitset, like |sent|, but is used by servers to record + * which extensions were received from a client. */ + uint32_t received; + } extensions; + + union { + /* sent is a bitset where the bits correspond to elements of + * |client_custom_extensions| in the |SSL_CTX|. Each bit is set if that + * extension was sent in a ClientHello. It's not used by servers. */ + uint16_t sent; + /* received is a bitset, like |sent|, but is used by servers to record + * which custom extensions were received from a client. The bits here + * correspond to |server_custom_extensions|. */ + uint16_t received; + } custom_extensions; + + /* SNI extension */ + + /* should_ack_sni is used by a server and indicates that the SNI extension + * should be echoed in the ServerHello. */ + unsigned should_ack_sni:1; + + + /* Client-only: cert_req determines if a client certificate is to be sent. + * This is 0 if no client Certificate message is to be sent, 1 if there is + * a client certificate, and 2 to send an empty client Certificate + * message. */ + int cert_req; + + /* Client-only: ca_names contains the list of CAs received in a + * CertificateRequest message. */ + STACK_OF(X509_NAME) *ca_names; + + /* Client-only: certificate_types contains the set of certificate types + * received in a CertificateRequest message. */ + uint8_t *certificate_types; + size_t num_certificate_types; + + int key_block_length; + uint8_t *key_block; + + const EVP_AEAD *new_aead; + uint8_t new_mac_secret_len; + uint8_t new_fixed_iv_len; + uint8_t new_variable_iv_len; + + /* Server-only: cert_request is true if a client certificate was + * requested. */ + int cert_request; + + /* certificate_status_expected is true if OCSP stapling was negotiated and + * the server is expected to send a CertificateStatus message. (This is + * used on both the client and server sides.) */ + unsigned certificate_status_expected:1; + + /* ocsp_stapling_requested is true if a client requested OCSP stapling. */ + unsigned ocsp_stapling_requested:1; + + /* Server-only: peer_ellipticcurvelist contains the EC curve IDs advertised + * by the peer. This is only set on the server's end. The server does not + * advertise this extension to the client. */ + uint16_t *peer_ellipticcurvelist; + size_t peer_ellipticcurvelist_length; + + /* extended_master_secret indicates whether the extended master secret + * computation is used in this handshake. Note that this is different from + * whether it was used for the current session. If this is a resumption + * handshake then EMS might be negotiated in the client and server hello + * messages, but it doesn't matter if the session that's being resumed + * didn't use it to create the master secret initially. */ + char extended_master_secret; + + /* Client-only: peer_psk_identity_hint is the psk_identity_hint sent by the + * server when using a PSK key exchange. */ + char *peer_psk_identity_hint; + + /* new_mac_secret_size is unused and exists only until wpa_supplicant can + * be updated. It is only needed for EAP-FAST, which we don't support. */ + uint8_t new_mac_secret_size; + + /* Client-only: in_false_start is one if there is a pending handshake in + * False Start. The client may write data at this point. */ + char in_false_start; + + /* server_key_exchange_hash, on a client, is the hash the server used to + * sign the ServerKeyExchange in TLS 1.2. If not applicable, it is + * |TLSEXT_hash_none|. */ + uint8_t server_key_exchange_hash; + + /* ecdh_ctx is the current ECDH instance. */ + SSL_ECDH_CTX ecdh_ctx; + + /* peer_key is the peer's ECDH key. */ + uint8_t *peer_key; + uint16_t peer_key_len; + } tmp; + + /* Connection binding to prevent renegotiation attacks */ + uint8_t previous_client_finished[EVP_MAX_MD_SIZE]; + uint8_t previous_client_finished_len; + uint8_t previous_server_finished[EVP_MAX_MD_SIZE]; + uint8_t previous_server_finished_len; + int send_connection_binding; /* TODOEKR */ + + /* Set if we saw the Next Protocol Negotiation extension from our peer. */ + int next_proto_neg_seen; + + /* ALPN information + * (we are in the process of transitioning from NPN to ALPN.) */ + + /* In a server these point to the selected ALPN protocol after the + * ClientHello has been processed. In a client these contain the protocol + * that the server selected once the ServerHello has been processed. */ + uint8_t *alpn_selected; + size_t alpn_selected_len; + + /* In a client, this means that the server supported Channel ID and that a + * Channel ID was sent. In a server it means that we echoed support for + * Channel IDs and that tlsext_channel_id will be valid after the + * handshake. */ + char tlsext_channel_id_valid; + /* For a server: + * If |tlsext_channel_id_valid| is true, then this contains the + * verified Channel ID from the client: a P256 point, (x,y), where + * each are big-endian values. */ + uint8_t tlsext_channel_id[64]; +} SSL3_STATE; + + +/* Android compatibility section (hidden). + * + * These functions are declared, temporarily, for Android because + * wpa_supplicant will take a little time to sync with upstream. Outside of + * Android they'll have no definition. */ + +#define SSL_F_SSL_SET_SESSION_TICKET_EXT doesnt_exist + +OPENSSL_EXPORT int SSL_set_session_ticket_ext(SSL *s, void *ext_data, + int ext_len); +OPENSSL_EXPORT int SSL_set_session_secret_cb(SSL *s, void *cb, void *arg); +OPENSSL_EXPORT int SSL_set_session_ticket_ext_cb(SSL *s, void *cb, void *arg); +OPENSSL_EXPORT int SSL_set_ssl_method(SSL *s, const SSL_METHOD *method); + + +/* Preprocessor compatibility section (hidden). + * + * Historically, a number of APIs were implemented in OpenSSL as macros and + * constants to 'ctrl' functions. To avoid breaking #ifdefs in consumers, this + * section defines a number of legacy macros. + * + * Although using either the CTRL values or their wrapper macros in #ifdefs is + * still supported, the CTRL values may not be passed to |SSL_ctrl| and + * |SSL_CTX_ctrl|. Call the functions (previously wrapper macros) instead. */ + +#define DTLS_CTRL_GET_TIMEOUT doesnt_exist +#define DTLS_CTRL_HANDLE_TIMEOUT doesnt_exist +#define SSL_CTRL_CHAIN doesnt_exist +#define SSL_CTRL_CHAIN_CERT doesnt_exist +#define SSL_CTRL_CHANNEL_ID doesnt_exist +#define SSL_CTRL_CLEAR_EXTRA_CHAIN_CERTS doesnt_exist +#define SSL_CTRL_CLEAR_MODE doesnt_exist +#define SSL_CTRL_CLEAR_OPTIONS doesnt_exist +#define SSL_CTRL_EXTRA_CHAIN_CERT doesnt_exist +#define SSL_CTRL_GET_CHAIN_CERTS doesnt_exist +#define SSL_CTRL_GET_CHANNEL_ID doesnt_exist +#define SSL_CTRL_GET_CLIENT_CERT_TYPES doesnt_exist +#define SSL_CTRL_GET_EXTRA_CHAIN_CERTS doesnt_exist +#define SSL_CTRL_GET_MAX_CERT_LIST doesnt_exist +#define SSL_CTRL_GET_NUM_RENEGOTIATIONS doesnt_exist +#define SSL_CTRL_GET_READ_AHEAD doesnt_exist +#define SSL_CTRL_GET_RI_SUPPORT doesnt_exist +#define SSL_CTRL_GET_SESSION_REUSED doesnt_exist +#define SSL_CTRL_GET_SESS_CACHE_MODE doesnt_exist +#define SSL_CTRL_GET_SESS_CACHE_SIZE doesnt_exist +#define SSL_CTRL_GET_TLSEXT_TICKET_KEYS doesnt_exist +#define SSL_CTRL_GET_TOTAL_RENEGOTIATIONS doesnt_exist +#define SSL_CTRL_MODE doesnt_exist +#define SSL_CTRL_NEED_TMP_RSA doesnt_exist +#define SSL_CTRL_OPTIONS doesnt_exist +#define SSL_CTRL_SESS_NUMBER doesnt_exist +#define SSL_CTRL_SET_CHANNEL_ID doesnt_exist +#define SSL_CTRL_SET_CURVES doesnt_exist +#define SSL_CTRL_SET_MAX_CERT_LIST doesnt_exist +#define SSL_CTRL_SET_MAX_SEND_FRAGMENT doesnt_exist +#define SSL_CTRL_SET_MSG_CALLBACK doesnt_exist +#define SSL_CTRL_SET_MSG_CALLBACK_ARG doesnt_exist +#define SSL_CTRL_SET_MTU doesnt_exist +#define SSL_CTRL_SET_READ_AHEAD doesnt_exist +#define SSL_CTRL_SET_SESS_CACHE_MODE doesnt_exist +#define SSL_CTRL_SET_SESS_CACHE_SIZE doesnt_exist +#define SSL_CTRL_SET_TLSEXT_HOSTNAME doesnt_exist +#define SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG doesnt_exist +#define SSL_CTRL_SET_TLSEXT_SERVERNAME_CB doesnt_exist +#define SSL_CTRL_SET_TLSEXT_TICKET_KEYS doesnt_exist +#define SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB doesnt_exist +#define SSL_CTRL_SET_TMP_DH doesnt_exist +#define SSL_CTRL_SET_TMP_DH_CB doesnt_exist +#define SSL_CTRL_SET_TMP_ECDH doesnt_exist +#define SSL_CTRL_SET_TMP_ECDH_CB doesnt_exist +#define SSL_CTRL_SET_TMP_RSA doesnt_exist +#define SSL_CTRL_SET_TMP_RSA_CB doesnt_exist + +#define DTLSv1_get_timeout DTLSv1_get_timeout +#define DTLSv1_handle_timeout DTLSv1_handle_timeout +#define SSL_CTX_add0_chain_cert SSL_CTX_add0_chain_cert +#define SSL_CTX_add1_chain_cert SSL_CTX_add1_chain_cert +#define SSL_CTX_add_extra_chain_cert SSL_CTX_add_extra_chain_cert +#define SSL_CTX_clear_extra_chain_certs SSL_CTX_clear_extra_chain_certs +#define SSL_CTX_clear_chain_certs SSL_CTX_clear_chain_certs +#define SSL_CTX_clear_mode SSL_CTX_clear_mode +#define SSL_CTX_clear_options SSL_CTX_clear_options +#define SSL_CTX_enable_tls_channel_id SSL_CTX_enable_tls_channel_id +#define SSL_CTX_get0_chain_certs SSL_CTX_get0_chain_certs +#define SSL_CTX_get_extra_chain_certs SSL_CTX_get_extra_chain_certs +#define SSL_CTX_get_max_cert_list SSL_CTX_get_max_cert_list +#define SSL_CTX_get_mode SSL_CTX_get_mode +#define SSL_CTX_get_options SSL_CTX_get_options +#define SSL_CTX_get_read_ahead SSL_CTX_get_read_ahead +#define SSL_CTX_get_session_cache_mode SSL_CTX_get_session_cache_mode +#define SSL_CTX_get_tlsext_ticket_keys SSL_CTX_get_tlsext_ticket_keys +#define SSL_CTX_need_tmp_RSA SSL_CTX_need_tmp_RSA +#define SSL_CTX_sess_get_cache_size SSL_CTX_sess_get_cache_size +#define SSL_CTX_sess_number SSL_CTX_sess_number +#define SSL_CTX_sess_set_cache_size SSL_CTX_sess_set_cache_size +#define SSL_CTX_set0_chain SSL_CTX_set0_chain +#define SSL_CTX_set1_chain SSL_CTX_set1_chain +#define SSL_CTX_set1_curves SSL_CTX_set1_curves +#define SSL_CTX_set1_tls_channel_id SSL_CTX_set1_tls_channel_id +#define SSL_CTX_set_max_cert_list SSL_CTX_set_max_cert_list +#define SSL_CTX_set_max_send_fragment SSL_CTX_set_max_send_fragment +#define SSL_CTX_set_mode SSL_CTX_set_mode +#define SSL_CTX_set_msg_callback_arg SSL_CTX_set_msg_callback_arg +#define SSL_CTX_set_options SSL_CTX_set_options +#define SSL_CTX_set_read_ahead SSL_CTX_set_read_ahead +#define SSL_CTX_set_session_cache_mode SSL_CTX_set_session_cache_mode +#define SSL_CTX_set_tlsext_servername_arg SSL_CTX_set_tlsext_servername_arg +#define SSL_CTX_set_tlsext_servername_callback \ + SSL_CTX_set_tlsext_servername_callback +#define SSL_CTX_set_tlsext_ticket_key_cb SSL_CTX_set_tlsext_ticket_key_cb +#define SSL_CTX_set_tlsext_ticket_keys SSL_CTX_set_tlsext_ticket_keys +#define SSL_CTX_set_tmp_dh SSL_CTX_set_tmp_dh +#define SSL_CTX_set_tmp_ecdh SSL_CTX_set_tmp_ecdh +#define SSL_CTX_set_tmp_rsa SSL_CTX_set_tmp_rsa +#define SSL_add0_chain_cert SSL_add0_chain_cert +#define SSL_add1_chain_cert SSL_add1_chain_cert +#define SSL_clear_chain_certs SSL_clear_chain_certs +#define SSL_clear_mode SSL_clear_mode +#define SSL_clear_options SSL_clear_options +#define SSL_enable_tls_channel_id SSL_enable_tls_channel_id +#define SSL_get0_certificate_types SSL_get0_certificate_types +#define SSL_get0_chain_certs SSL_get0_chain_certs +#define SSL_get_max_cert_list SSL_get_max_cert_list +#define SSL_get_mode SSL_get_mode +#define SSL_get_options SSL_get_options +#define SSL_get_secure_renegotiation_support \ + SSL_get_secure_renegotiation_support +#define SSL_get_tls_channel_id SSL_get_tls_channel_id +#define SSL_need_tmp_RSA SSL_need_tmp_RSA +#define SSL_num_renegotiations SSL_num_renegotiations +#define SSL_session_reused SSL_session_reused +#define SSL_set0_chain SSL_set0_chain +#define SSL_set1_chain SSL_set1_chain +#define SSL_set1_curves SSL_set1_curves +#define SSL_set1_tls_channel_id SSL_set1_tls_channel_id +#define SSL_set_max_cert_list SSL_set_max_cert_list +#define SSL_set_max_send_fragment SSL_set_max_send_fragment +#define SSL_set_mode SSL_set_mode +#define SSL_set_msg_callback_arg SSL_set_msg_callback_arg +#define SSL_set_mtu SSL_set_mtu +#define SSL_set_options SSL_set_options +#define SSL_set_tlsext_host_name SSL_set_tlsext_host_name +#define SSL_set_tmp_dh SSL_set_tmp_dh +#define SSL_set_tmp_ecdh SSL_set_tmp_ecdh +#define SSL_set_tmp_rsa SSL_set_tmp_rsa +#define SSL_total_renegotiations SSL_total_renegotiations + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#define SSL_R_APP_DATA_IN_HANDSHAKE 100 +#define SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT 101 +#define SSL_R_BAD_ALERT 102 +#define SSL_R_BAD_CHANGE_CIPHER_SPEC 103 +#define SSL_R_BAD_DATA_RETURNED_BY_CALLBACK 104 +#define SSL_R_BAD_DH_P_LENGTH 105 +#define SSL_R_BAD_DIGEST_LENGTH 106 +#define SSL_R_BAD_ECC_CERT 107 +#define SSL_R_BAD_ECPOINT 108 +#define SSL_R_BAD_HANDSHAKE_RECORD 109 +#define SSL_R_BAD_HELLO_REQUEST 110 +#define SSL_R_BAD_LENGTH 111 +#define SSL_R_BAD_PACKET_LENGTH 112 +#define SSL_R_BAD_RSA_ENCRYPT 113 +#define SSL_R_BAD_SIGNATURE 114 +#define SSL_R_BAD_SRTP_MKI_VALUE 115 +#define SSL_R_BAD_SRTP_PROTECTION_PROFILE_LIST 116 +#define SSL_R_BAD_SSL_FILETYPE 117 +#define SSL_R_BAD_WRITE_RETRY 118 +#define SSL_R_BIO_NOT_SET 119 +#define SSL_R_BN_LIB 120 +#define SSL_R_BUFFER_TOO_SMALL 121 +#define SSL_R_CA_DN_LENGTH_MISMATCH 122 +#define SSL_R_CA_DN_TOO_LONG 123 +#define SSL_R_CCS_RECEIVED_EARLY 124 +#define SSL_R_CERTIFICATE_VERIFY_FAILED 125 +#define SSL_R_CERT_CB_ERROR 126 +#define SSL_R_CERT_LENGTH_MISMATCH 127 +#define SSL_R_CHANNEL_ID_NOT_P256 128 +#define SSL_R_CHANNEL_ID_SIGNATURE_INVALID 129 +#define SSL_R_CIPHER_OR_HASH_UNAVAILABLE 130 +#define SSL_R_CLIENTHELLO_PARSE_FAILED 131 +#define SSL_R_CLIENTHELLO_TLSEXT 132 +#define SSL_R_CONNECTION_REJECTED 133 +#define SSL_R_CONNECTION_TYPE_NOT_SET 134 +#define SSL_R_CUSTOM_EXTENSION_ERROR 135 +#define SSL_R_DATA_LENGTH_TOO_LONG 136 +#define SSL_R_DECODE_ERROR 137 +#define SSL_R_DECRYPTION_FAILED 138 +#define SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC 139 +#define SSL_R_DH_PUBLIC_VALUE_LENGTH_IS_WRONG 140 +#define SSL_R_DH_P_TOO_LONG 141 +#define SSL_R_DIGEST_CHECK_FAILED 142 +#define SSL_R_DTLS_MESSAGE_TOO_BIG 143 +#define SSL_R_ECC_CERT_NOT_FOR_SIGNING 144 +#define SSL_R_EMS_STATE_INCONSISTENT 145 +#define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 146 +#define SSL_R_ERROR_ADDING_EXTENSION 147 +#define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 148 +#define SSL_R_ERROR_PARSING_EXTENSION 149 +#define SSL_R_EXCESSIVE_MESSAGE_SIZE 150 +#define SSL_R_EXTRA_DATA_IN_MESSAGE 151 +#define SSL_R_FRAGMENT_MISMATCH 152 +#define SSL_R_GOT_NEXT_PROTO_WITHOUT_EXTENSION 153 +#define SSL_R_HANDSHAKE_FAILURE_ON_CLIENT_HELLO 154 +#define SSL_R_HTTPS_PROXY_REQUEST 155 +#define SSL_R_HTTP_REQUEST 156 +#define SSL_R_INAPPROPRIATE_FALLBACK 157 +#define SSL_R_INVALID_COMMAND 158 +#define SSL_R_INVALID_MESSAGE 159 +#define SSL_R_INVALID_SSL_SESSION 160 +#define SSL_R_INVALID_TICKET_KEYS_LENGTH 161 +#define SSL_R_LENGTH_MISMATCH 162 +#define SSL_R_LIBRARY_HAS_NO_CIPHERS 163 +#define SSL_R_MISSING_EXTENSION 164 +#define SSL_R_MISSING_RSA_CERTIFICATE 165 +#define SSL_R_MISSING_TMP_DH_KEY 166 +#define SSL_R_MISSING_TMP_ECDH_KEY 167 +#define SSL_R_MIXED_SPECIAL_OPERATOR_WITH_GROUPS 168 +#define SSL_R_MTU_TOO_SMALL 169 +#define SSL_R_NEGOTIATED_BOTH_NPN_AND_ALPN 170 +#define SSL_R_NESTED_GROUP 171 +#define SSL_R_NO_CERTIFICATES_RETURNED 172 +#define SSL_R_NO_CERTIFICATE_ASSIGNED 173 +#define SSL_R_NO_CERTIFICATE_SET 174 +#define SSL_R_NO_CIPHERS_AVAILABLE 175 +#define SSL_R_NO_CIPHERS_PASSED 176 +#define SSL_R_NO_CIPHER_MATCH 177 +#define SSL_R_NO_COMPRESSION_SPECIFIED 178 +#define SSL_R_NO_METHOD_SPECIFIED 179 +#define SSL_R_NO_P256_SUPPORT 180 +#define SSL_R_NO_PRIVATE_KEY_ASSIGNED 181 +#define SSL_R_NO_RENEGOTIATION 182 +#define SSL_R_NO_REQUIRED_DIGEST 183 +#define SSL_R_NO_SHARED_CIPHER 184 +#define SSL_R_NULL_SSL_CTX 185 +#define SSL_R_NULL_SSL_METHOD_PASSED 186 +#define SSL_R_OLD_SESSION_CIPHER_NOT_RETURNED 187 +#define SSL_R_OLD_SESSION_VERSION_NOT_RETURNED 188 +#define SSL_R_OUTPUT_ALIASES_INPUT 189 +#define SSL_R_PARSE_TLSEXT 190 +#define SSL_R_PATH_TOO_LONG 191 +#define SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE 192 +#define SSL_R_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE 193 +#define SSL_R_PROTOCOL_IS_SHUTDOWN 194 +#define SSL_R_PSK_IDENTITY_NOT_FOUND 195 +#define SSL_R_PSK_NO_CLIENT_CB 196 +#define SSL_R_PSK_NO_SERVER_CB 197 +#define SSL_R_READ_TIMEOUT_EXPIRED 198 +#define SSL_R_RECORD_LENGTH_MISMATCH 199 +#define SSL_R_RECORD_TOO_LARGE 200 +#define SSL_R_RENEGOTIATION_ENCODING_ERR 201 +#define SSL_R_RENEGOTIATION_MISMATCH 202 +#define SSL_R_REQUIRED_CIPHER_MISSING 203 +#define SSL_R_RESUMED_EMS_SESSION_WITHOUT_EMS_EXTENSION 204 +#define SSL_R_RESUMED_NON_EMS_SESSION_WITH_EMS_EXTENSION 205 +#define SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING 206 +#define SSL_R_SERVERHELLO_TLSEXT 207 +#define SSL_R_SESSION_ID_CONTEXT_UNINITIALIZED 208 +#define SSL_R_SESSION_MAY_NOT_BE_CREATED 209 +#define SSL_R_SIGNATURE_ALGORITHMS_EXTENSION_SENT_BY_SERVER 210 +#define SSL_R_SRTP_COULD_NOT_ALLOCATE_PROFILES 211 +#define SSL_R_SRTP_UNKNOWN_PROTECTION_PROFILE 212 +#define SSL_R_SSL3_EXT_INVALID_SERVERNAME 213 +#define SSL_R_SSL_CTX_HAS_NO_DEFAULT_SSL_VERSION 214 +#define SSL_R_SSL_HANDSHAKE_FAILURE 215 +#define SSL_R_SSL_SESSION_ID_CONTEXT_TOO_LONG 216 +#define SSL_R_TLS_PEER_DID_NOT_RESPOND_WITH_CERTIFICATE_LIST 217 +#define SSL_R_TLS_RSA_ENCRYPTED_VALUE_LENGTH_IS_WRONG 218 +#define SSL_R_TOO_MANY_EMPTY_FRAGMENTS 219 +#define SSL_R_TOO_MANY_WARNING_ALERTS 220 +#define SSL_R_UNABLE_TO_FIND_ECDH_PARAMETERS 221 +#define SSL_R_UNEXPECTED_EXTENSION 222 +#define SSL_R_UNEXPECTED_MESSAGE 223 +#define SSL_R_UNEXPECTED_OPERATOR_IN_GROUP 224 +#define SSL_R_UNEXPECTED_RECORD 225 +#define SSL_R_UNINITIALIZED 226 +#define SSL_R_UNKNOWN_ALERT_TYPE 227 +#define SSL_R_UNKNOWN_CERTIFICATE_TYPE 228 +#define SSL_R_UNKNOWN_CIPHER_RETURNED 229 +#define SSL_R_UNKNOWN_CIPHER_TYPE 230 +#define SSL_R_UNKNOWN_DIGEST 231 +#define SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE 232 +#define SSL_R_UNKNOWN_PROTOCOL 233 +#define SSL_R_UNKNOWN_SSL_VERSION 234 +#define SSL_R_UNKNOWN_STATE 235 +#define SSL_R_UNSAFE_LEGACY_RENEGOTIATION_DISABLED 236 +#define SSL_R_UNSUPPORTED_CIPHER 237 +#define SSL_R_UNSUPPORTED_COMPRESSION_ALGORITHM 238 +#define SSL_R_UNSUPPORTED_ELLIPTIC_CURVE 239 +#define SSL_R_UNSUPPORTED_PROTOCOL 240 +#define SSL_R_WRONG_CERTIFICATE_TYPE 241 +#define SSL_R_WRONG_CIPHER_RETURNED 242 +#define SSL_R_WRONG_CURVE 243 +#define SSL_R_WRONG_MESSAGE_TYPE 244 +#define SSL_R_WRONG_SIGNATURE_TYPE 245 +#define SSL_R_WRONG_SSL_VERSION 246 +#define SSL_R_WRONG_VERSION_NUMBER 247 +#define SSL_R_X509_LIB 248 +#define SSL_R_X509_VERIFICATION_SETUP_PROBLEMS 249 +#define SSL_R_SSLV3_ALERT_CLOSE_NOTIFY 1000 +#define SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE 1010 +#define SSL_R_SSLV3_ALERT_BAD_RECORD_MAC 1020 +#define SSL_R_TLSV1_ALERT_DECRYPTION_FAILED 1021 +#define SSL_R_TLSV1_ALERT_RECORD_OVERFLOW 1022 +#define SSL_R_SSLV3_ALERT_DECOMPRESSION_FAILURE 1030 +#define SSL_R_SSLV3_ALERT_HANDSHAKE_FAILURE 1040 +#define SSL_R_SSLV3_ALERT_NO_CERTIFICATE 1041 +#define SSL_R_SSLV3_ALERT_BAD_CERTIFICATE 1042 +#define SSL_R_SSLV3_ALERT_UNSUPPORTED_CERTIFICATE 1043 +#define SSL_R_SSLV3_ALERT_CERTIFICATE_REVOKED 1044 +#define SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED 1045 +#define SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN 1046 +#define SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER 1047 +#define SSL_R_TLSV1_ALERT_UNKNOWN_CA 1048 +#define SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049 +#define SSL_R_TLSV1_ALERT_DECODE_ERROR 1050 +#define SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051 +#define SSL_R_TLSV1_ALERT_EXPORT_RESTRICTION 1060 +#define SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070 +#define SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY 1071 +#define SSL_R_TLSV1_ALERT_INTERNAL_ERROR 1080 +#define SSL_R_TLSV1_ALERT_INAPPROPRIATE_FALLBACK 1086 +#define SSL_R_TLSV1_ALERT_USER_CANCELLED 1090 +#define SSL_R_TLSV1_ALERT_NO_RENEGOTIATION 1100 +#define SSL_R_TLSV1_UNSUPPORTED_EXTENSION 1110 +#define SSL_R_TLSV1_CERTIFICATE_UNOBTAINABLE 1111 +#define SSL_R_TLSV1_UNRECOGNIZED_NAME 1112 +#define SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE 1113 +#define SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE 1114 + +#endif /* OPENSSL_HEADER_SSL_H */ diff --git a/project/jni/boringssl/include/openssl/ssl3.h b/project/jni/boringssl/include/openssl/ssl3.h new file mode 100644 index 000000000..957b740e9 --- /dev/null +++ b/project/jni/boringssl/include/openssl/ssl3.h @@ -0,0 +1,441 @@ +/* ssl/ssl3.h */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * ECC cipher suite support in OpenSSL originally developed by + * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. + */ + +#ifndef OPENSSL_HEADER_SSL3_H +#define OPENSSL_HEADER_SSL3_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +/* These are kept to support clients that negotiates higher protocol versions + * using SSLv2 client hello records. */ +#define SSL2_MT_CLIENT_HELLO 1 +#define SSL2_VERSION 0x0002 + +/* Signalling cipher suite value from RFC 5746. */ +#define SSL3_CK_SCSV 0x030000FF +/* Fallback signalling cipher suite value from RFC 7507. */ +#define SSL3_CK_FALLBACK_SCSV 0x03005600 + +#define SSL3_CK_RSA_NULL_MD5 0x03000001 +#define SSL3_CK_RSA_NULL_SHA 0x03000002 +#define SSL3_CK_RSA_RC4_40_MD5 0x03000003 +#define SSL3_CK_RSA_RC4_128_MD5 0x03000004 +#define SSL3_CK_RSA_RC4_128_SHA 0x03000005 +#define SSL3_CK_RSA_RC2_40_MD5 0x03000006 +#define SSL3_CK_RSA_IDEA_128_SHA 0x03000007 +#define SSL3_CK_RSA_DES_40_CBC_SHA 0x03000008 +#define SSL3_CK_RSA_DES_64_CBC_SHA 0x03000009 +#define SSL3_CK_RSA_DES_192_CBC3_SHA 0x0300000A + +#define SSL3_CK_DH_DSS_DES_40_CBC_SHA 0x0300000B +#define SSL3_CK_DH_DSS_DES_64_CBC_SHA 0x0300000C +#define SSL3_CK_DH_DSS_DES_192_CBC3_SHA 0x0300000D +#define SSL3_CK_DH_RSA_DES_40_CBC_SHA 0x0300000E +#define SSL3_CK_DH_RSA_DES_64_CBC_SHA 0x0300000F +#define SSL3_CK_DH_RSA_DES_192_CBC3_SHA 0x03000010 + +#define SSL3_CK_EDH_DSS_DES_40_CBC_SHA 0x03000011 +#define SSL3_CK_EDH_DSS_DES_64_CBC_SHA 0x03000012 +#define SSL3_CK_EDH_DSS_DES_192_CBC3_SHA 0x03000013 +#define SSL3_CK_EDH_RSA_DES_40_CBC_SHA 0x03000014 +#define SSL3_CK_EDH_RSA_DES_64_CBC_SHA 0x03000015 +#define SSL3_CK_EDH_RSA_DES_192_CBC3_SHA 0x03000016 + +#define SSL3_CK_ADH_RC4_40_MD5 0x03000017 +#define SSL3_CK_ADH_RC4_128_MD5 0x03000018 +#define SSL3_CK_ADH_DES_40_CBC_SHA 0x03000019 +#define SSL3_CK_ADH_DES_64_CBC_SHA 0x0300001A +#define SSL3_CK_ADH_DES_192_CBC_SHA 0x0300001B + +#define SSL3_TXT_RSA_NULL_MD5 "NULL-MD5" +#define SSL3_TXT_RSA_NULL_SHA "NULL-SHA" +#define SSL3_TXT_RSA_RC4_40_MD5 "EXP-RC4-MD5" +#define SSL3_TXT_RSA_RC4_128_MD5 "RC4-MD5" +#define SSL3_TXT_RSA_RC4_128_SHA "RC4-SHA" +#define SSL3_TXT_RSA_RC2_40_MD5 "EXP-RC2-CBC-MD5" +#define SSL3_TXT_RSA_IDEA_128_SHA "IDEA-CBC-SHA" +#define SSL3_TXT_RSA_DES_40_CBC_SHA "EXP-DES-CBC-SHA" +#define SSL3_TXT_RSA_DES_64_CBC_SHA "DES-CBC-SHA" +#define SSL3_TXT_RSA_DES_192_CBC3_SHA "DES-CBC3-SHA" + +#define SSL3_TXT_DH_DSS_DES_40_CBC_SHA "EXP-DH-DSS-DES-CBC-SHA" +#define SSL3_TXT_DH_DSS_DES_64_CBC_SHA "DH-DSS-DES-CBC-SHA" +#define SSL3_TXT_DH_DSS_DES_192_CBC3_SHA "DH-DSS-DES-CBC3-SHA" +#define SSL3_TXT_DH_RSA_DES_40_CBC_SHA "EXP-DH-RSA-DES-CBC-SHA" +#define SSL3_TXT_DH_RSA_DES_64_CBC_SHA "DH-RSA-DES-CBC-SHA" +#define SSL3_TXT_DH_RSA_DES_192_CBC3_SHA "DH-RSA-DES-CBC3-SHA" + +#define SSL3_TXT_EDH_DSS_DES_40_CBC_SHA "EXP-EDH-DSS-DES-CBC-SHA" +#define SSL3_TXT_EDH_DSS_DES_64_CBC_SHA "EDH-DSS-DES-CBC-SHA" +#define SSL3_TXT_EDH_DSS_DES_192_CBC3_SHA "EDH-DSS-DES-CBC3-SHA" +#define SSL3_TXT_EDH_RSA_DES_40_CBC_SHA "EXP-EDH-RSA-DES-CBC-SHA" +#define SSL3_TXT_EDH_RSA_DES_64_CBC_SHA "EDH-RSA-DES-CBC-SHA" +#define SSL3_TXT_EDH_RSA_DES_192_CBC3_SHA "EDH-RSA-DES-CBC3-SHA" + +#define SSL3_TXT_ADH_RC4_40_MD5 "EXP-ADH-RC4-MD5" +#define SSL3_TXT_ADH_RC4_128_MD5 "ADH-RC4-MD5" +#define SSL3_TXT_ADH_DES_40_CBC_SHA "EXP-ADH-DES-CBC-SHA" +#define SSL3_TXT_ADH_DES_64_CBC_SHA "ADH-DES-CBC-SHA" +#define SSL3_TXT_ADH_DES_192_CBC_SHA "ADH-DES-CBC3-SHA" + +#define SSL3_SSL_SESSION_ID_LENGTH 32 +#define SSL3_MAX_SSL_SESSION_ID_LENGTH 32 + +#define SSL3_MASTER_SECRET_SIZE 48 +#define SSL3_RANDOM_SIZE 32 +#define SSL3_SESSION_ID_SIZE 32 +#define SSL3_RT_HEADER_LENGTH 5 + +#define SSL3_HM_HEADER_LENGTH 4 + +#ifndef SSL3_ALIGN_PAYLOAD +/* Some will argue that this increases memory footprint, but it's not actually + * true. Point is that malloc has to return at least 64-bit aligned pointers, + * meaning that allocating 5 bytes wastes 3 bytes in either case. Suggested + * pre-gaping simply moves these wasted bytes from the end of allocated region + * to its front, but makes data payload aligned, which improves performance. */ +#define SSL3_ALIGN_PAYLOAD 8 +#else +#if (SSL3_ALIGN_PAYLOAD & (SSL3_ALIGN_PAYLOAD - 1)) != 0 +#error "insane SSL3_ALIGN_PAYLOAD" +#undef SSL3_ALIGN_PAYLOAD +#endif +#endif + +/* This is the maximum MAC (digest) size used by the SSL library. Currently + * maximum of 20 is used by SHA1, but we reserve for future extension for + * 512-bit hashes. */ + +#define SSL3_RT_MAX_MD_SIZE 64 + +/* Maximum block size used in all ciphersuites. Currently 16 for AES. */ + +#define SSL_RT_MAX_CIPHER_BLOCK_SIZE 16 + +/* Maximum plaintext length: defined by SSL/TLS standards */ +#define SSL3_RT_MAX_PLAIN_LENGTH 16384 +/* Maximum compression overhead: defined by SSL/TLS standards */ +#define SSL3_RT_MAX_COMPRESSED_OVERHEAD 1024 + +/* The standards give a maximum encryption overhead of 1024 bytes. In practice + * the value is lower than this. The overhead is the maximum number of padding + * bytes (256) plus the mac size. + * + * TODO(davidben): This derivation doesn't take AEADs into account, or TLS 1.1 + * explicit nonces. It happens to work because |SSL3_RT_MAX_MD_SIZE| is larger + * than necessary and no true AEAD has variable overhead in TLS 1.2. */ +#define SSL3_RT_MAX_ENCRYPTED_OVERHEAD (256 + SSL3_RT_MAX_MD_SIZE) + +/* SSL3_RT_SEND_MAX_ENCRYPTED_OVERHEAD is the maximum overhead in encrypting a + * record. This does not include the record header. Some ciphers use explicit + * nonces, so it includes both the AEAD overhead as well as the nonce. */ +#define SSL3_RT_SEND_MAX_ENCRYPTED_OVERHEAD \ + (EVP_AEAD_MAX_OVERHEAD + EVP_AEAD_MAX_NONCE_LENGTH) + +OPENSSL_COMPILE_ASSERT( + SSL3_RT_MAX_ENCRYPTED_OVERHEAD >= SSL3_RT_SEND_MAX_ENCRYPTED_OVERHEAD, + max_overheads_are_consistent); + +/* SSL3_RT_MAX_COMPRESSED_LENGTH is an alias for + * |SSL3_RT_MAX_PLAIN_LENGTH|. Compression is gone, so don't include the + * compression overhead. */ +#define SSL3_RT_MAX_COMPRESSED_LENGTH SSL3_RT_MAX_PLAIN_LENGTH + +#define SSL3_RT_MAX_ENCRYPTED_LENGTH \ + (SSL3_RT_MAX_ENCRYPTED_OVERHEAD + SSL3_RT_MAX_COMPRESSED_LENGTH) +#define SSL3_RT_MAX_PACKET_SIZE \ + (SSL3_RT_MAX_ENCRYPTED_LENGTH + SSL3_RT_HEADER_LENGTH) + +#define SSL3_MD_CLIENT_FINISHED_CONST "\x43\x4C\x4E\x54" +#define SSL3_MD_SERVER_FINISHED_CONST "\x53\x52\x56\x52" + +#define SSL3_RT_CHANGE_CIPHER_SPEC 20 +#define SSL3_RT_ALERT 21 +#define SSL3_RT_HANDSHAKE 22 +#define SSL3_RT_APPLICATION_DATA 23 + +/* Pseudo content type for SSL/TLS header info */ +#define SSL3_RT_HEADER 0x100 + +#define SSL3_AL_WARNING 1 +#define SSL3_AL_FATAL 2 + +#define SSL3_AD_CLOSE_NOTIFY 0 +#define SSL3_AD_UNEXPECTED_MESSAGE 10 /* fatal */ +#define SSL3_AD_BAD_RECORD_MAC 20 /* fatal */ +#define SSL3_AD_DECOMPRESSION_FAILURE 30 /* fatal */ +#define SSL3_AD_HANDSHAKE_FAILURE 40 /* fatal */ +#define SSL3_AD_NO_CERTIFICATE 41 +#define SSL3_AD_BAD_CERTIFICATE 42 +#define SSL3_AD_UNSUPPORTED_CERTIFICATE 43 +#define SSL3_AD_CERTIFICATE_REVOKED 44 +#define SSL3_AD_CERTIFICATE_EXPIRED 45 +#define SSL3_AD_CERTIFICATE_UNKNOWN 46 +#define SSL3_AD_ILLEGAL_PARAMETER 47 /* fatal */ +#define SSL3_AD_INAPPROPRIATE_FALLBACK 86 /* fatal */ + +#define SSL3_CT_RSA_SIGN 1 +#define SSL3_CT_DSS_SIGN 2 +#define SSL3_CT_RSA_FIXED_DH 3 +#define SSL3_CT_DSS_FIXED_DH 4 +#define SSL3_CT_RSA_EPHEMERAL_DH 5 +#define SSL3_CT_DSS_EPHEMERAL_DH 6 +#define SSL3_CT_FORTEZZA_DMS 20 + +/* SSLv3 */ +/* client */ +/* extra state */ +#define SSL3_ST_CW_FLUSH (0x100 | SSL_ST_CONNECT) +#define SSL3_ST_FALSE_START (0x101 | SSL_ST_CONNECT) +#define SSL3_ST_VERIFY_SERVER_CERT (0x102 | SSL_ST_CONNECT) +/* write to server */ +#define SSL3_ST_CW_CLNT_HELLO_A (0x110 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CLNT_HELLO_B (0x111 | SSL_ST_CONNECT) +/* read from server */ +#define SSL3_ST_CR_SRVR_HELLO_A (0x120 | SSL_ST_CONNECT) +#define SSL3_ST_CR_SRVR_HELLO_B (0x121 | SSL_ST_CONNECT) +#define DTLS1_ST_CR_HELLO_VERIFY_REQUEST_A (0x126 | SSL_ST_CONNECT) +#define DTLS1_ST_CR_HELLO_VERIFY_REQUEST_B (0x127 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_A (0x130 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_B (0x131 | SSL_ST_CONNECT) +#define SSL3_ST_CR_KEY_EXCH_A (0x140 | SSL_ST_CONNECT) +#define SSL3_ST_CR_KEY_EXCH_B (0x141 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_REQ_A (0x150 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_REQ_B (0x151 | SSL_ST_CONNECT) +#define SSL3_ST_CR_SRVR_DONE_A (0x160 | SSL_ST_CONNECT) +#define SSL3_ST_CR_SRVR_DONE_B (0x161 | SSL_ST_CONNECT) +/* write to server */ +#define SSL3_ST_CW_CERT_A (0x170 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_B (0x171 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_C (0x172 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_D (0x173 | SSL_ST_CONNECT) +#define SSL3_ST_CW_KEY_EXCH_A (0x180 | SSL_ST_CONNECT) +#define SSL3_ST_CW_KEY_EXCH_B (0x181 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_VRFY_A (0x190 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_VRFY_B (0x191 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CERT_VRFY_C (0x192 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CHANGE_A (0x1A0 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CHANGE_B (0x1A1 | SSL_ST_CONNECT) +#define SSL3_ST_CW_NEXT_PROTO_A (0x200 | SSL_ST_CONNECT) +#define SSL3_ST_CW_NEXT_PROTO_B (0x201 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CHANNEL_ID_A (0x220 | SSL_ST_CONNECT) +#define SSL3_ST_CW_CHANNEL_ID_B (0x221 | SSL_ST_CONNECT) +#define SSL3_ST_CW_FINISHED_A (0x1B0 | SSL_ST_CONNECT) +#define SSL3_ST_CW_FINISHED_B (0x1B1 | SSL_ST_CONNECT) +/* read from server */ +#define SSL3_ST_CR_CHANGE (0x1C0 | SSL_ST_CONNECT) +#define SSL3_ST_CR_FINISHED_A (0x1D0 | SSL_ST_CONNECT) +#define SSL3_ST_CR_FINISHED_B (0x1D1 | SSL_ST_CONNECT) +#define SSL3_ST_CR_SESSION_TICKET_A (0x1E0 | SSL_ST_CONNECT) +#define SSL3_ST_CR_SESSION_TICKET_B (0x1E1 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_STATUS_A (0x1F0 | SSL_ST_CONNECT) +#define SSL3_ST_CR_CERT_STATUS_B (0x1F1 | SSL_ST_CONNECT) + +/* server */ +/* extra state */ +#define SSL3_ST_SW_FLUSH (0x100 | SSL_ST_ACCEPT) +/* read from client */ +#define SSL3_ST_SR_INITIAL_BYTES (0x240 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_V2_CLIENT_HELLO (0x241 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CLNT_HELLO_A (0x110 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CLNT_HELLO_B (0x111 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CLNT_HELLO_C (0x112 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CLNT_HELLO_D (0x115 | SSL_ST_ACCEPT) +/* write to client */ +#define SSL3_ST_SW_HELLO_REQ_A (0x120 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_HELLO_REQ_B (0x121 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_HELLO_REQ_C (0x122 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SRVR_HELLO_A (0x130 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SRVR_HELLO_B (0x131 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_A (0x140 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_B (0x141 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_KEY_EXCH_A (0x150 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_KEY_EXCH_B (0x151 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_KEY_EXCH_C (0x152 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_REQ_A (0x160 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_REQ_B (0x161 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SRVR_DONE_A (0x170 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SRVR_DONE_B (0x171 | SSL_ST_ACCEPT) +/* read from client */ +#define SSL3_ST_SR_CERT_A (0x180 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CERT_B (0x181 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_KEY_EXCH_A (0x190 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_KEY_EXCH_B (0x191 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_KEY_EXCH_C (0x192 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CERT_VRFY_A (0x1A0 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CERT_VRFY_B (0x1A1 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CHANGE (0x1B0 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_NEXT_PROTO_A (0x210 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_NEXT_PROTO_B (0x211 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CHANNEL_ID_A (0x230 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_CHANNEL_ID_B (0x231 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_FINISHED_A (0x1C0 | SSL_ST_ACCEPT) +#define SSL3_ST_SR_FINISHED_B (0x1C1 | SSL_ST_ACCEPT) + +/* write to client */ +#define SSL3_ST_SW_CHANGE_A (0x1D0 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CHANGE_B (0x1D1 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_FINISHED_A (0x1E0 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_FINISHED_B (0x1E1 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SESSION_TICKET_A (0x1F0 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SESSION_TICKET_B (0x1F1 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_STATUS_A (0x200 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_CERT_STATUS_B (0x201 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SUPPLEMENTAL_DATA_A (0x220 | SSL_ST_ACCEPT) +#define SSL3_ST_SW_SUPPLEMENTAL_DATA_B (0x221 | SSL_ST_ACCEPT) + +#define SSL3_MT_HELLO_REQUEST 0 +#define SSL3_MT_CLIENT_HELLO 1 +#define SSL3_MT_SERVER_HELLO 2 +#define SSL3_MT_NEWSESSION_TICKET 4 +#define SSL3_MT_CERTIFICATE 11 +#define SSL3_MT_SERVER_KEY_EXCHANGE 12 +#define SSL3_MT_CERTIFICATE_REQUEST 13 +#define SSL3_MT_SERVER_DONE 14 +#define SSL3_MT_CERTIFICATE_VERIFY 15 +#define SSL3_MT_CLIENT_KEY_EXCHANGE 16 +#define SSL3_MT_FINISHED 20 +#define SSL3_MT_CERTIFICATE_STATUS 22 +#define SSL3_MT_SUPPLEMENTAL_DATA 23 +#define SSL3_MT_NEXT_PROTO 67 +#define SSL3_MT_ENCRYPTED_EXTENSIONS 203 +#define DTLS1_MT_HELLO_VERIFY_REQUEST 3 + + +#define SSL3_MT_CCS 1 + +/* These are used when changing over to a new cipher */ +#define SSL3_CC_READ 0x01 +#define SSL3_CC_WRITE 0x02 +#define SSL3_CC_CLIENT 0x10 +#define SSL3_CC_SERVER 0x20 +#define SSL3_CHANGE_CIPHER_CLIENT_WRITE (SSL3_CC_CLIENT | SSL3_CC_WRITE) +#define SSL3_CHANGE_CIPHER_SERVER_READ (SSL3_CC_SERVER | SSL3_CC_READ) +#define SSL3_CHANGE_CIPHER_CLIENT_READ (SSL3_CC_CLIENT | SSL3_CC_READ) +#define SSL3_CHANGE_CIPHER_SERVER_WRITE (SSL3_CC_SERVER | SSL3_CC_WRITE) + + +#ifdef __cplusplus +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_SSL3_H */ diff --git a/project/jni/boringssl/include/openssl/stack.h b/project/jni/boringssl/include/openssl/stack.h new file mode 100644 index 000000000..16b9f4f66 --- /dev/null +++ b/project/jni/boringssl/include/openssl/stack.h @@ -0,0 +1,295 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_STACK_H +#define OPENSSL_HEADER_STACK_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* A stack, in OpenSSL, is an array of pointers. They are the most commonly + * used collection object. + * + * This file defines macros for type safe use of the stack functions. A stack + * of a specific type of object has type |STACK_OF(type)|. This can be defined + * (once) with |DEFINE_STACK_OF(type)| and declared where needed with + * |DECLARE_STACK_OF(type)|. For example: + * + * struct foo { + * int bar; + * }; + * + * DEFINE_STACK_OF(struct foo); + * + * Although note that the stack will contain /pointers/ to |foo|. + * + * A macro will be defined for each of the sk_* functions below. For + * STACK_OF(foo), the macros would be sk_foo_new, sk_foo_pop etc. */ + + +/* stack_cmp_func is a comparison function that returns a value < 0, 0 or > 0 + * if |*a| is less than, equal to or greater than |*b|, respectively. Note the + * extra indirection - the function is given a pointer to a pointer to the + * element. This differs from the usual qsort/bsearch comparison function. */ +typedef int (*stack_cmp_func)(const void **a, const void **b); + +/* stack_st contains an array of pointers. It is not designed to be used + * directly, rather the wrapper macros should be used. */ +typedef struct stack_st { + /* num contains the number of valid pointers in |data|. */ + size_t num; + void **data; + /* sorted is non-zero if the values pointed to by |data| are in ascending + * order, based on |comp|. */ + size_t sorted; + /* num_alloc contains the number of pointers allocated in the buffer pointed + * to by |data|, which may be larger than |num|. */ + size_t num_alloc; + /* comp is an optional comparison function. */ + stack_cmp_func comp; +} _STACK; + + +#define STACK_OF(type) struct stack_st_##type + +#define DECLARE_STACK_OF(type) STACK_OF(type); + +/* The make_macros.sh script in this directory parses the following lines and + * generates the stack_macros.h file that contains macros for the following + * types of stacks: + * + * STACK_OF:ACCESS_DESCRIPTION + * STACK_OF:ASN1_ADB_TABLE + * STACK_OF:ASN1_GENERALSTRING + * STACK_OF:ASN1_INTEGER + * STACK_OF:ASN1_OBJECT + * STACK_OF:ASN1_STRING_TABLE + * STACK_OF:ASN1_TYPE + * STACK_OF:ASN1_VALUE + * STACK_OF:BIO + * STACK_OF:BY_DIR_ENTRY + * STACK_OF:BY_DIR_HASH + * STACK_OF:CONF_VALUE + * STACK_OF:CRYPTO_EX_DATA_FUNCS + * STACK_OF:DIST_POINT + * STACK_OF:GENERAL_NAME + * STACK_OF:GENERAL_NAMES + * STACK_OF:GENERAL_SUBTREE + * STACK_OF:POLICYINFO + * STACK_OF:POLICYQUALINFO + * STACK_OF:POLICY_MAPPING + * STACK_OF:RSA_additional_prime + * STACK_OF:SSL_COMP + * STACK_OF:SSL_CUSTOM_EXTENSION + * STACK_OF:STACK_OF_X509_NAME_ENTRY + * STACK_OF:SXNETID + * STACK_OF:X509 + * STACK_OF:X509V3_EXT_METHOD + * STACK_OF:X509_ALGOR + * STACK_OF:X509_ATTRIBUTE + * STACK_OF:X509_CRL + * STACK_OF:X509_EXTENSION + * STACK_OF:X509_INFO + * STACK_OF:X509_LOOKUP + * STACK_OF:X509_NAME + * STACK_OF:X509_NAME_ENTRY + * STACK_OF:X509_OBJECT + * STACK_OF:X509_POLICY_DATA + * STACK_OF:X509_POLICY_NODE + * STACK_OF:X509_PURPOSE + * STACK_OF:X509_REVOKED + * STACK_OF:X509_TRUST + * STACK_OF:X509_VERIFY_PARAM + * STACK_OF:void + * + * Some stacks contain only const structures, so the stack should return const + * pointers to retain type-checking. + * + * CONST_STACK_OF:SRTP_PROTECTION_PROFILE + * CONST_STACK_OF:SSL_CIPHER */ + + +/* Some stacks are special because, although we would like STACK_OF(char *), + * that would actually be a stack of pointers to char*, but we just want to + * point to the string directly. In this case we call them "special" and use + * |DEFINE_SPECIAL_STACK_OF(type)| */ +#define DEFINE_SPECIAL_STACK_OF(type, inner) \ + STACK_OF(type) { _STACK special_stack; }; \ + OPENSSL_COMPILE_ASSERT(sizeof(type) == sizeof(void *), \ + special_stack_of_non_pointer_##type); + +typedef char *OPENSSL_STRING; + +DEFINE_SPECIAL_STACK_OF(OPENSSL_STRING, char) +DEFINE_SPECIAL_STACK_OF(OPENSSL_BLOCK, uint8_t) + +/* The make_macros.sh script in this directory parses the following lines and + * generates the stack_macros.h file that contains macros for the following + * types of stacks: + * + * SPECIAL_STACK_OF:OPENSSL_STRING + * SPECIAL_STACK_OF:OPENSSL_BLOCK */ + +#define IN_STACK_H +#include +#undef IN_STACK_H + + +/* These are the raw stack functions, you shouldn't be using them. Rather you + * should be using the type stack macros implemented above. */ + +/* sk_new creates a new, empty stack with the given comparison function, which + * may be zero. It returns the new stack or NULL on allocation failure. */ +OPENSSL_EXPORT _STACK *sk_new(stack_cmp_func comp); + +/* sk_new_null creates a new, empty stack. It returns the new stack or NULL on + * allocation failure. */ +OPENSSL_EXPORT _STACK *sk_new_null(void); + +/* sk_num returns the number of elements in |s|. */ +OPENSSL_EXPORT size_t sk_num(const _STACK *sk); + +/* sk_zero resets |sk| to the empty state but does nothing to free the + * individual elements themselves. */ +OPENSSL_EXPORT void sk_zero(_STACK *sk); + +/* sk_value returns the |i|th pointer in |sk|, or NULL if |i| is out of + * range. */ +OPENSSL_EXPORT void *sk_value(const _STACK *sk, size_t i); + +/* sk_set sets the |i|th pointer in |sk| to |p| and returns |p|. If |i| is out + * of range, it returns NULL. */ +OPENSSL_EXPORT void *sk_set(_STACK *sk, size_t i, void *p); + +/* sk_free frees the given stack and array of pointers, but does nothing to + * free the individual elements. Also see |sk_pop_free|. */ +OPENSSL_EXPORT void sk_free(_STACK *sk); + +/* sk_pop_free calls |free_func| on each element in the stack and then frees + * the stack itself. */ +OPENSSL_EXPORT void sk_pop_free(_STACK *sk, void (*free_func)(void *)); + +/* sk_insert inserts |p| into the stack at index |where|, moving existing + * elements if needed. It returns the length of the new stack, or zero on + * error. */ +OPENSSL_EXPORT size_t sk_insert(_STACK *sk, void *p, size_t where); + +/* sk_delete removes the pointer at index |where|, moving other elements down + * if needed. It returns the removed pointer, or NULL if |where| is out of + * range. */ +OPENSSL_EXPORT void *sk_delete(_STACK *sk, size_t where); + +/* sk_delete_ptr removes, at most, one instance of |p| from the stack based on + * pointer equality. If an instance of |p| is found then |p| is returned, + * otherwise it returns NULL. */ +OPENSSL_EXPORT void *sk_delete_ptr(_STACK *sk, void *p); + +/* sk_find returns the first value in the stack equal to |p|. If a comparison + * function has been set on the stack, then equality is defined by it and the + * stack will be sorted if need be so that a binary search can be used. + * Otherwise pointer equality is used. If a matching element is found, its + * index is written to |*out_index| (if |out_index| is not NULL) and one is + * returned. Otherwise zero is returned. */ +OPENSSL_EXPORT int sk_find(_STACK *sk, size_t *out_index, void *p); + +/* sk_shift removes and returns the first element in the stack, or returns NULL + * if the stack is empty. */ +OPENSSL_EXPORT void *sk_shift(_STACK *sk); + +/* sk_push appends |p| to the stack and returns the length of the new stack, or + * 0 on allocation failure. */ +OPENSSL_EXPORT size_t sk_push(_STACK *sk, void *p); + +/* sk_pop returns and removes the last element on the stack, or NULL if the + * stack is empty. */ +OPENSSL_EXPORT void *sk_pop(_STACK *sk); + +/* sk_dup performs a shallow copy of a stack and returns the new stack, or NULL + * on error. */ +OPENSSL_EXPORT _STACK *sk_dup(const _STACK *sk); + +/* sk_sort sorts the elements of |sk| into ascending order based on the + * comparison function. The stack maintains a |sorted| flag and sorting an + * already sorted stack is a no-op. */ +OPENSSL_EXPORT void sk_sort(_STACK *sk); + +/* sk_is_sorted returns one if |sk| is known to be sorted and zero + * otherwise. */ +OPENSSL_EXPORT int sk_is_sorted(const _STACK *sk); + +/* sk_set_cmp_func sets the comparison function to be used by |sk| and returns + * the previous one. */ +OPENSSL_EXPORT stack_cmp_func sk_set_cmp_func(_STACK *sk, stack_cmp_func comp); + +/* sk_deep_copy performs a copy of |sk| and of each of the non-NULL elements in + * |sk| by using |copy_func|. If an error occurs, |free_func| is used to free + * any copies already made and NULL is returned. */ +OPENSSL_EXPORT _STACK *sk_deep_copy(const _STACK *sk, + void *(*copy_func)(void *), + void (*free_func)(void *)); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_STACK_H */ diff --git a/project/jni/boringssl/include/openssl/stack_macros.h b/project/jni/boringssl/include/openssl/stack_macros.h new file mode 100644 index 000000000..809424c72 --- /dev/null +++ b/project/jni/boringssl/include/openssl/stack_macros.h @@ -0,0 +1,3934 @@ +/* Copyright (c) 2014, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + +#if !defined(IN_STACK_H) +#error "Don't include this file directly. Include stack.h." +#endif + +/* ACCESS_DESCRIPTION */ +#define sk_ACCESS_DESCRIPTION_new(comp) \ + ((STACK_OF(ACCESS_DESCRIPTION) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const ACCESS_DESCRIPTION **a, const ACCESS_DESCRIPTION **b), \ + comp))) + +#define sk_ACCESS_DESCRIPTION_new_null() \ + ((STACK_OF(ACCESS_DESCRIPTION) *)sk_new_null()) + +#define sk_ACCESS_DESCRIPTION_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk)) + +#define sk_ACCESS_DESCRIPTION_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk)); + +#define sk_ACCESS_DESCRIPTION_value(sk, i) \ + ((ACCESS_DESCRIPTION *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ACCESS_DESCRIPTION) *, sk), (i))) + +#define sk_ACCESS_DESCRIPTION_set(sk, i, p) \ + ((ACCESS_DESCRIPTION *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), (i), \ + CHECKED_CAST(void *, ACCESS_DESCRIPTION *, p))) + +#define sk_ACCESS_DESCRIPTION_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk)) + +#define sk_ACCESS_DESCRIPTION_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ACCESS_DESCRIPTION *), \ + free_func)) + +#define sk_ACCESS_DESCRIPTION_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(void *, ACCESS_DESCRIPTION *, p), (where)) + +#define sk_ACCESS_DESCRIPTION_delete(sk, where) \ + ((ACCESS_DESCRIPTION *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), (where))) + +#define sk_ACCESS_DESCRIPTION_delete_ptr(sk, p) \ + ((ACCESS_DESCRIPTION *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(void *, ACCESS_DESCRIPTION *, p))) + +#define sk_ACCESS_DESCRIPTION_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + (out_index), CHECKED_CAST(void *, ACCESS_DESCRIPTION *, p)) + +#define sk_ACCESS_DESCRIPTION_shift(sk) \ + ((ACCESS_DESCRIPTION *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk))) + +#define sk_ACCESS_DESCRIPTION_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(void *, ACCESS_DESCRIPTION *, p)) + +#define sk_ACCESS_DESCRIPTION_pop(sk) \ + ((ACCESS_DESCRIPTION *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk))) + +#define sk_ACCESS_DESCRIPTION_dup(sk) \ + ((STACK_OF(ACCESS_DESCRIPTION) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ACCESS_DESCRIPTION) *, sk))) + +#define sk_ACCESS_DESCRIPTION_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk)) + +#define sk_ACCESS_DESCRIPTION_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ACCESS_DESCRIPTION) *, sk)) + +#define sk_ACCESS_DESCRIPTION_set_cmp_func(sk, comp) \ + ((int (*)(const ACCESS_DESCRIPTION **a, const ACCESS_DESCRIPTION **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const ACCESS_DESCRIPTION **a, \ + const ACCESS_DESCRIPTION **b), \ + comp))) + +#define sk_ACCESS_DESCRIPTION_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ACCESS_DESCRIPTION) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ACCESS_DESCRIPTION) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + ACCESS_DESCRIPTION *(*)(ACCESS_DESCRIPTION *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ACCESS_DESCRIPTION *), \ + free_func))) + +/* ASN1_ADB_TABLE */ +#define sk_ASN1_ADB_TABLE_new(comp) \ + ((STACK_OF(ASN1_ADB_TABLE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const ASN1_ADB_TABLE **a, const ASN1_ADB_TABLE **b), comp))) + +#define sk_ASN1_ADB_TABLE_new_null() ((STACK_OF(ASN1_ADB_TABLE) *)sk_new_null()) + +#define sk_ASN1_ADB_TABLE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk)) + +#define sk_ASN1_ADB_TABLE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk)); + +#define sk_ASN1_ADB_TABLE_value(sk, i) \ + ((ASN1_ADB_TABLE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_ADB_TABLE) *, sk), (i))) + +#define sk_ASN1_ADB_TABLE_set(sk, i, p) \ + ((ASN1_ADB_TABLE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), (i), \ + CHECKED_CAST(void *, ASN1_ADB_TABLE *, p))) + +#define sk_ASN1_ADB_TABLE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk)) + +#define sk_ASN1_ADB_TABLE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_ADB_TABLE *), free_func)) + +#define sk_ASN1_ADB_TABLE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_ADB_TABLE *, p), (where)) + +#define sk_ASN1_ADB_TABLE_delete(sk, where) \ + ((ASN1_ADB_TABLE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), (where))) + +#define sk_ASN1_ADB_TABLE_delete_ptr(sk, p) \ + ((ASN1_ADB_TABLE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_ADB_TABLE *, p))) + +#define sk_ASN1_ADB_TABLE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), (out_index), \ + CHECKED_CAST(void *, ASN1_ADB_TABLE *, p)) + +#define sk_ASN1_ADB_TABLE_shift(sk) \ + ((ASN1_ADB_TABLE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk))) + +#define sk_ASN1_ADB_TABLE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_ADB_TABLE *, p)) + +#define sk_ASN1_ADB_TABLE_pop(sk) \ + ((ASN1_ADB_TABLE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk))) + +#define sk_ASN1_ADB_TABLE_dup(sk) \ + ((STACK_OF(ASN1_ADB_TABLE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_ADB_TABLE) *, sk))) + +#define sk_ASN1_ADB_TABLE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk)) + +#define sk_ASN1_ADB_TABLE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_ADB_TABLE) *, sk)) + +#define sk_ASN1_ADB_TABLE_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_ADB_TABLE **a, const ASN1_ADB_TABLE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const ASN1_ADB_TABLE **a, \ + const ASN1_ADB_TABLE **b), \ + comp))) + +#define sk_ASN1_ADB_TABLE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_ADB_TABLE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_ADB_TABLE) *, sk), \ + CHECKED_CAST(void *(*)(void *), ASN1_ADB_TABLE *(*)(ASN1_ADB_TABLE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_ADB_TABLE *), free_func))) + +/* ASN1_GENERALSTRING */ +#define sk_ASN1_GENERALSTRING_new(comp) \ + ((STACK_OF(ASN1_GENERALSTRING) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const ASN1_GENERALSTRING **a, const ASN1_GENERALSTRING **b), \ + comp))) + +#define sk_ASN1_GENERALSTRING_new_null() \ + ((STACK_OF(ASN1_GENERALSTRING) *)sk_new_null()) + +#define sk_ASN1_GENERALSTRING_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk)) + +#define sk_ASN1_GENERALSTRING_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk)); + +#define sk_ASN1_GENERALSTRING_value(sk, i) \ + ((ASN1_GENERALSTRING *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_GENERALSTRING) *, sk), (i))) + +#define sk_ASN1_GENERALSTRING_set(sk, i, p) \ + ((ASN1_GENERALSTRING *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), (i), \ + CHECKED_CAST(void *, ASN1_GENERALSTRING *, p))) + +#define sk_ASN1_GENERALSTRING_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk)) + +#define sk_ASN1_GENERALSTRING_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_GENERALSTRING *), \ + free_func)) + +#define sk_ASN1_GENERALSTRING_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(void *, ASN1_GENERALSTRING *, p), (where)) + +#define sk_ASN1_GENERALSTRING_delete(sk, where) \ + ((ASN1_GENERALSTRING *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), (where))) + +#define sk_ASN1_GENERALSTRING_delete_ptr(sk, p) \ + ((ASN1_GENERALSTRING *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(void *, ASN1_GENERALSTRING *, p))) + +#define sk_ASN1_GENERALSTRING_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + (out_index), CHECKED_CAST(void *, ASN1_GENERALSTRING *, p)) + +#define sk_ASN1_GENERALSTRING_shift(sk) \ + ((ASN1_GENERALSTRING *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk))) + +#define sk_ASN1_GENERALSTRING_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(void *, ASN1_GENERALSTRING *, p)) + +#define sk_ASN1_GENERALSTRING_pop(sk) \ + ((ASN1_GENERALSTRING *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk))) + +#define sk_ASN1_GENERALSTRING_dup(sk) \ + ((STACK_OF(ASN1_GENERALSTRING) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_GENERALSTRING) *, sk))) + +#define sk_ASN1_GENERALSTRING_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk)) + +#define sk_ASN1_GENERALSTRING_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_GENERALSTRING) *, sk)) + +#define sk_ASN1_GENERALSTRING_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_GENERALSTRING **a, const ASN1_GENERALSTRING **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const ASN1_GENERALSTRING **a, \ + const ASN1_GENERALSTRING **b), \ + comp))) + +#define sk_ASN1_GENERALSTRING_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_GENERALSTRING) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_GENERALSTRING) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + ASN1_GENERALSTRING *(*)(ASN1_GENERALSTRING *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_GENERALSTRING *), \ + free_func))) + +/* ASN1_INTEGER */ +#define sk_ASN1_INTEGER_new(comp) \ + ((STACK_OF(ASN1_INTEGER) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const ASN1_INTEGER **a, const ASN1_INTEGER **b), \ + comp))) + +#define sk_ASN1_INTEGER_new_null() ((STACK_OF(ASN1_INTEGER) *)sk_new_null()) + +#define sk_ASN1_INTEGER_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk)) + +#define sk_ASN1_INTEGER_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk)); + +#define sk_ASN1_INTEGER_value(sk, i) \ + ((ASN1_INTEGER *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_INTEGER) *, sk), (i))) + +#define sk_ASN1_INTEGER_set(sk, i, p) \ + ((ASN1_INTEGER *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), (i), \ + CHECKED_CAST(void *, ASN1_INTEGER *, p))) + +#define sk_ASN1_INTEGER_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk)) + +#define sk_ASN1_INTEGER_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_INTEGER *), free_func)) + +#define sk_ASN1_INTEGER_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(void *, ASN1_INTEGER *, p), (where)) + +#define sk_ASN1_INTEGER_delete(sk, where) \ + ((ASN1_INTEGER *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), (where))) + +#define sk_ASN1_INTEGER_delete_ptr(sk, p) \ + ((ASN1_INTEGER *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(void *, ASN1_INTEGER *, p))) + +#define sk_ASN1_INTEGER_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), (out_index), \ + CHECKED_CAST(void *, ASN1_INTEGER *, p)) + +#define sk_ASN1_INTEGER_shift(sk) \ + ((ASN1_INTEGER *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk))) + +#define sk_ASN1_INTEGER_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(void *, ASN1_INTEGER *, p)) + +#define sk_ASN1_INTEGER_pop(sk) \ + ((ASN1_INTEGER *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk))) + +#define sk_ASN1_INTEGER_dup(sk) \ + ((STACK_OF(ASN1_INTEGER) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_INTEGER) *, sk))) + +#define sk_ASN1_INTEGER_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk)) + +#define sk_ASN1_INTEGER_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_INTEGER) *, sk)) + +#define sk_ASN1_INTEGER_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_INTEGER **a, const ASN1_INTEGER **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const ASN1_INTEGER **a, const ASN1_INTEGER **b), \ + comp))) + +#define sk_ASN1_INTEGER_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_INTEGER) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_INTEGER) *, sk), \ + CHECKED_CAST(void *(*)(void *), ASN1_INTEGER *(*)(ASN1_INTEGER *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_INTEGER *), free_func))) + +/* ASN1_OBJECT */ +#define sk_ASN1_OBJECT_new(comp) \ + ((STACK_OF(ASN1_OBJECT) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const ASN1_OBJECT **a, const ASN1_OBJECT **b), \ + comp))) + +#define sk_ASN1_OBJECT_new_null() ((STACK_OF(ASN1_OBJECT) *)sk_new_null()) + +#define sk_ASN1_OBJECT_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk)) + +#define sk_ASN1_OBJECT_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk)); + +#define sk_ASN1_OBJECT_value(sk, i) \ + ((ASN1_OBJECT *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_OBJECT) *, sk), (i))) + +#define sk_ASN1_OBJECT_set(sk, i, p) \ + ((ASN1_OBJECT *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + (i), CHECKED_CAST(void *, ASN1_OBJECT *, p))) + +#define sk_ASN1_OBJECT_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk)) + +#define sk_ASN1_OBJECT_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_OBJECT *), free_func)) + +#define sk_ASN1_OBJECT_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(void *, ASN1_OBJECT *, p), (where)) + +#define sk_ASN1_OBJECT_delete(sk, where) \ + ((ASN1_OBJECT *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), (where))) + +#define sk_ASN1_OBJECT_delete_ptr(sk, p) \ + ((ASN1_OBJECT *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(void *, ASN1_OBJECT *, p))) + +#define sk_ASN1_OBJECT_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), (out_index), \ + CHECKED_CAST(void *, ASN1_OBJECT *, p)) + +#define sk_ASN1_OBJECT_shift(sk) \ + ((ASN1_OBJECT *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk))) + +#define sk_ASN1_OBJECT_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(void *, ASN1_OBJECT *, p)) + +#define sk_ASN1_OBJECT_pop(sk) \ + ((ASN1_OBJECT *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk))) + +#define sk_ASN1_OBJECT_dup(sk) \ + ((STACK_OF(ASN1_OBJECT) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_OBJECT) *, sk))) + +#define sk_ASN1_OBJECT_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk)) + +#define sk_ASN1_OBJECT_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_OBJECT) *, sk)) + +#define sk_ASN1_OBJECT_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_OBJECT **a, const ASN1_OBJECT **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const ASN1_OBJECT **a, const ASN1_OBJECT **b), \ + comp))) + +#define sk_ASN1_OBJECT_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_OBJECT) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_OBJECT) *, sk), \ + CHECKED_CAST(void *(*)(void *), ASN1_OBJECT *(*)(ASN1_OBJECT *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_OBJECT *), free_func))) + +/* ASN1_STRING_TABLE */ +#define sk_ASN1_STRING_TABLE_new(comp) \ + ((STACK_OF(ASN1_STRING_TABLE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const ASN1_STRING_TABLE **a, const ASN1_STRING_TABLE **b), \ + comp))) + +#define sk_ASN1_STRING_TABLE_new_null() \ + ((STACK_OF(ASN1_STRING_TABLE) *)sk_new_null()) + +#define sk_ASN1_STRING_TABLE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk)) + +#define sk_ASN1_STRING_TABLE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk)); + +#define sk_ASN1_STRING_TABLE_value(sk, i) \ + ((ASN1_STRING_TABLE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_STRING_TABLE) *, sk), (i))) + +#define sk_ASN1_STRING_TABLE_set(sk, i, p) \ + ((ASN1_STRING_TABLE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), (i), \ + CHECKED_CAST(void *, ASN1_STRING_TABLE *, p))) + +#define sk_ASN1_STRING_TABLE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk)) + +#define sk_ASN1_STRING_TABLE_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_STRING_TABLE *), \ + free_func)) + +#define sk_ASN1_STRING_TABLE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_STRING_TABLE *, p), (where)) + +#define sk_ASN1_STRING_TABLE_delete(sk, where) \ + ((ASN1_STRING_TABLE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), (where))) + +#define sk_ASN1_STRING_TABLE_delete_ptr(sk, p) \ + ((ASN1_STRING_TABLE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_STRING_TABLE *, p))) + +#define sk_ASN1_STRING_TABLE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + (out_index), CHECKED_CAST(void *, ASN1_STRING_TABLE *, p)) + +#define sk_ASN1_STRING_TABLE_shift(sk) \ + ((ASN1_STRING_TABLE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk))) + +#define sk_ASN1_STRING_TABLE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(void *, ASN1_STRING_TABLE *, p)) + +#define sk_ASN1_STRING_TABLE_pop(sk) \ + ((ASN1_STRING_TABLE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk))) + +#define sk_ASN1_STRING_TABLE_dup(sk) \ + ((STACK_OF(ASN1_STRING_TABLE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_STRING_TABLE) *, sk))) + +#define sk_ASN1_STRING_TABLE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk)) + +#define sk_ASN1_STRING_TABLE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_STRING_TABLE) *, sk)) + +#define sk_ASN1_STRING_TABLE_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_STRING_TABLE **a, const ASN1_STRING_TABLE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const ASN1_STRING_TABLE **a, \ + const ASN1_STRING_TABLE **b), \ + comp))) + +#define sk_ASN1_STRING_TABLE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_STRING_TABLE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_STRING_TABLE) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + ASN1_STRING_TABLE *(*)(ASN1_STRING_TABLE *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_STRING_TABLE *), \ + free_func))) + +/* ASN1_TYPE */ +#define sk_ASN1_TYPE_new(comp) \ + ((STACK_OF(ASN1_TYPE) *)sk_new( \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const ASN1_TYPE **a, const ASN1_TYPE **b), comp))) + +#define sk_ASN1_TYPE_new_null() ((STACK_OF(ASN1_TYPE) *)sk_new_null()) + +#define sk_ASN1_TYPE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk)) + +#define sk_ASN1_TYPE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk)); + +#define sk_ASN1_TYPE_value(sk, i) \ + ((ASN1_TYPE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_TYPE) *, sk), (i))) + +#define sk_ASN1_TYPE_set(sk, i, p) \ + ((ASN1_TYPE *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), (i), \ + CHECKED_CAST(void *, ASN1_TYPE *, p))) + +#define sk_ASN1_TYPE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk)) + +#define sk_ASN1_TYPE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_TYPE *), free_func)) + +#define sk_ASN1_TYPE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(void *, ASN1_TYPE *, p), (where)) + +#define sk_ASN1_TYPE_delete(sk, where) \ + ((ASN1_TYPE *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + (where))) + +#define sk_ASN1_TYPE_delete_ptr(sk, p) \ + ((ASN1_TYPE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(void *, ASN1_TYPE *, p))) + +#define sk_ASN1_TYPE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), (out_index), \ + CHECKED_CAST(void *, ASN1_TYPE *, p)) + +#define sk_ASN1_TYPE_shift(sk) \ + ((ASN1_TYPE *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk))) + +#define sk_ASN1_TYPE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(void *, ASN1_TYPE *, p)) + +#define sk_ASN1_TYPE_pop(sk) \ + ((ASN1_TYPE *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk))) + +#define sk_ASN1_TYPE_dup(sk) \ + ((STACK_OF(ASN1_TYPE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_TYPE) *, sk))) + +#define sk_ASN1_TYPE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk)) + +#define sk_ASN1_TYPE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_TYPE) *, sk)) + +#define sk_ASN1_TYPE_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_TYPE **a, const ASN1_TYPE **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const ASN1_TYPE **a, const ASN1_TYPE **b), comp))) + +#define sk_ASN1_TYPE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_TYPE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_TYPE) *, sk), \ + CHECKED_CAST(void *(*)(void *), ASN1_TYPE *(*)(ASN1_TYPE *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_TYPE *), free_func))) + +/* ASN1_VALUE */ +#define sk_ASN1_VALUE_new(comp) \ + ((STACK_OF(ASN1_VALUE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const ASN1_VALUE **a, const ASN1_VALUE **b), \ + comp))) + +#define sk_ASN1_VALUE_new_null() ((STACK_OF(ASN1_VALUE) *)sk_new_null()) + +#define sk_ASN1_VALUE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk)) + +#define sk_ASN1_VALUE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk)); + +#define sk_ASN1_VALUE_value(sk, i) \ + ((ASN1_VALUE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_VALUE) *, sk), (i))) + +#define sk_ASN1_VALUE_set(sk, i, p) \ + ((ASN1_VALUE *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + (i), CHECKED_CAST(void *, ASN1_VALUE *, p))) + +#define sk_ASN1_VALUE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk)) + +#define sk_ASN1_VALUE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_VALUE *), free_func)) + +#define sk_ASN1_VALUE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(void *, ASN1_VALUE *, p), (where)) + +#define sk_ASN1_VALUE_delete(sk, where) \ + ((ASN1_VALUE *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + (where))) + +#define sk_ASN1_VALUE_delete_ptr(sk, p) \ + ((ASN1_VALUE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(void *, ASN1_VALUE *, p))) + +#define sk_ASN1_VALUE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), (out_index), \ + CHECKED_CAST(void *, ASN1_VALUE *, p)) + +#define sk_ASN1_VALUE_shift(sk) \ + ((ASN1_VALUE *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk))) + +#define sk_ASN1_VALUE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(void *, ASN1_VALUE *, p)) + +#define sk_ASN1_VALUE_pop(sk) \ + ((ASN1_VALUE *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk))) + +#define sk_ASN1_VALUE_dup(sk) \ + ((STACK_OF(ASN1_VALUE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(ASN1_VALUE) *, sk))) + +#define sk_ASN1_VALUE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk)) + +#define sk_ASN1_VALUE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(ASN1_VALUE) *, sk)) + +#define sk_ASN1_VALUE_set_cmp_func(sk, comp) \ + ((int (*)(const ASN1_VALUE **a, const ASN1_VALUE **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const ASN1_VALUE **a, const ASN1_VALUE **b), \ + comp))) + +#define sk_ASN1_VALUE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(ASN1_VALUE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(ASN1_VALUE) *, sk), \ + CHECKED_CAST(void *(*)(void *), ASN1_VALUE *(*)(ASN1_VALUE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(ASN1_VALUE *), free_func))) + +/* BIO */ +#define sk_BIO_new(comp) \ + ((STACK_OF(BIO) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const BIO **a, const BIO **b), comp))) + +#define sk_BIO_new_null() ((STACK_OF(BIO) *)sk_new_null()) + +#define sk_BIO_num(sk) sk_num(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk)) + +#define sk_BIO_zero(sk) sk_zero(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk)); + +#define sk_BIO_value(sk, i) \ + ((BIO *)sk_value(CHECKED_CAST(_STACK *, const STACK_OF(BIO) *, sk), (i))) + +#define sk_BIO_set(sk, i, p) \ + ((BIO *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), (i), \ + CHECKED_CAST(void *, BIO *, p))) + +#define sk_BIO_free(sk) sk_free(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk)) + +#define sk_BIO_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(BIO *), free_func)) + +#define sk_BIO_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), \ + CHECKED_CAST(void *, BIO *, p), (where)) + +#define sk_BIO_delete(sk, where) \ + ((BIO *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), (where))) + +#define sk_BIO_delete_ptr(sk, p) \ + ((BIO *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), \ + CHECKED_CAST(void *, BIO *, p))) + +#define sk_BIO_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), (out_index), \ + CHECKED_CAST(void *, BIO *, p)) + +#define sk_BIO_shift(sk) \ + ((BIO *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk))) + +#define sk_BIO_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), \ + CHECKED_CAST(void *, BIO *, p)) + +#define sk_BIO_pop(sk) \ + ((BIO *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk))) + +#define sk_BIO_dup(sk) \ + ((STACK_OF(BIO) *)sk_dup(CHECKED_CAST(_STACK *, const STACK_OF(BIO) *, sk))) + +#define sk_BIO_sort(sk) sk_sort(CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk)) + +#define sk_BIO_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(BIO) *, sk)) + +#define sk_BIO_set_cmp_func(sk, comp) \ + ((int (*)(const BIO **a, const BIO **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(BIO) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const BIO **a, const BIO **b), \ + comp))) + +#define sk_BIO_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(BIO) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(BIO) *, sk), \ + CHECKED_CAST(void *(*)(void *), BIO *(*)(BIO *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(BIO *), free_func))) + +/* BY_DIR_ENTRY */ +#define sk_BY_DIR_ENTRY_new(comp) \ + ((STACK_OF(BY_DIR_ENTRY) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const BY_DIR_ENTRY **a, const BY_DIR_ENTRY **b), \ + comp))) + +#define sk_BY_DIR_ENTRY_new_null() ((STACK_OF(BY_DIR_ENTRY) *)sk_new_null()) + +#define sk_BY_DIR_ENTRY_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk)) + +#define sk_BY_DIR_ENTRY_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk)); + +#define sk_BY_DIR_ENTRY_value(sk, i) \ + ((BY_DIR_ENTRY *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_ENTRY) *, sk), (i))) + +#define sk_BY_DIR_ENTRY_set(sk, i, p) \ + ((BY_DIR_ENTRY *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), (i), \ + CHECKED_CAST(void *, BY_DIR_ENTRY *, p))) + +#define sk_BY_DIR_ENTRY_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk)) + +#define sk_BY_DIR_ENTRY_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(BY_DIR_ENTRY *), free_func)) + +#define sk_BY_DIR_ENTRY_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(void *, BY_DIR_ENTRY *, p), (where)) + +#define sk_BY_DIR_ENTRY_delete(sk, where) \ + ((BY_DIR_ENTRY *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), (where))) + +#define sk_BY_DIR_ENTRY_delete_ptr(sk, p) \ + ((BY_DIR_ENTRY *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(void *, BY_DIR_ENTRY *, p))) + +#define sk_BY_DIR_ENTRY_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), (out_index), \ + CHECKED_CAST(void *, BY_DIR_ENTRY *, p)) + +#define sk_BY_DIR_ENTRY_shift(sk) \ + ((BY_DIR_ENTRY *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk))) + +#define sk_BY_DIR_ENTRY_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(void *, BY_DIR_ENTRY *, p)) + +#define sk_BY_DIR_ENTRY_pop(sk) \ + ((BY_DIR_ENTRY *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk))) + +#define sk_BY_DIR_ENTRY_dup(sk) \ + ((STACK_OF(BY_DIR_ENTRY) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_ENTRY) *, sk))) + +#define sk_BY_DIR_ENTRY_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk)) + +#define sk_BY_DIR_ENTRY_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_ENTRY) *, sk)) + +#define sk_BY_DIR_ENTRY_set_cmp_func(sk, comp) \ + ((int (*)(const BY_DIR_ENTRY **a, const BY_DIR_ENTRY **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const BY_DIR_ENTRY **a, const BY_DIR_ENTRY **b), \ + comp))) + +#define sk_BY_DIR_ENTRY_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(BY_DIR_ENTRY) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(BY_DIR_ENTRY) *, sk), \ + CHECKED_CAST(void *(*)(void *), BY_DIR_ENTRY *(*)(BY_DIR_ENTRY *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(BY_DIR_ENTRY *), free_func))) + +/* BY_DIR_HASH */ +#define sk_BY_DIR_HASH_new(comp) \ + ((STACK_OF(BY_DIR_HASH) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const BY_DIR_HASH **a, const BY_DIR_HASH **b), \ + comp))) + +#define sk_BY_DIR_HASH_new_null() ((STACK_OF(BY_DIR_HASH) *)sk_new_null()) + +#define sk_BY_DIR_HASH_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk)) + +#define sk_BY_DIR_HASH_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk)); + +#define sk_BY_DIR_HASH_value(sk, i) \ + ((BY_DIR_HASH *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_HASH) *, sk), (i))) + +#define sk_BY_DIR_HASH_set(sk, i, p) \ + ((BY_DIR_HASH *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + (i), CHECKED_CAST(void *, BY_DIR_HASH *, p))) + +#define sk_BY_DIR_HASH_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk)) + +#define sk_BY_DIR_HASH_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(BY_DIR_HASH *), free_func)) + +#define sk_BY_DIR_HASH_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(void *, BY_DIR_HASH *, p), (where)) + +#define sk_BY_DIR_HASH_delete(sk, where) \ + ((BY_DIR_HASH *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), (where))) + +#define sk_BY_DIR_HASH_delete_ptr(sk, p) \ + ((BY_DIR_HASH *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(void *, BY_DIR_HASH *, p))) + +#define sk_BY_DIR_HASH_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), (out_index), \ + CHECKED_CAST(void *, BY_DIR_HASH *, p)) + +#define sk_BY_DIR_HASH_shift(sk) \ + ((BY_DIR_HASH *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk))) + +#define sk_BY_DIR_HASH_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(void *, BY_DIR_HASH *, p)) + +#define sk_BY_DIR_HASH_pop(sk) \ + ((BY_DIR_HASH *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk))) + +#define sk_BY_DIR_HASH_dup(sk) \ + ((STACK_OF(BY_DIR_HASH) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_HASH) *, sk))) + +#define sk_BY_DIR_HASH_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk)) + +#define sk_BY_DIR_HASH_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(BY_DIR_HASH) *, sk)) + +#define sk_BY_DIR_HASH_set_cmp_func(sk, comp) \ + ((int (*)(const BY_DIR_HASH **a, const BY_DIR_HASH **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const BY_DIR_HASH **a, const BY_DIR_HASH **b), \ + comp))) + +#define sk_BY_DIR_HASH_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(BY_DIR_HASH) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(BY_DIR_HASH) *, sk), \ + CHECKED_CAST(void *(*)(void *), BY_DIR_HASH *(*)(BY_DIR_HASH *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(BY_DIR_HASH *), free_func))) + +/* CONF_VALUE */ +#define sk_CONF_VALUE_new(comp) \ + ((STACK_OF(CONF_VALUE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const CONF_VALUE **a, const CONF_VALUE **b), \ + comp))) + +#define sk_CONF_VALUE_new_null() ((STACK_OF(CONF_VALUE) *)sk_new_null()) + +#define sk_CONF_VALUE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk)) + +#define sk_CONF_VALUE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk)); + +#define sk_CONF_VALUE_value(sk, i) \ + ((CONF_VALUE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(CONF_VALUE) *, sk), (i))) + +#define sk_CONF_VALUE_set(sk, i, p) \ + ((CONF_VALUE *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + (i), CHECKED_CAST(void *, CONF_VALUE *, p))) + +#define sk_CONF_VALUE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk)) + +#define sk_CONF_VALUE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(CONF_VALUE *), free_func)) + +#define sk_CONF_VALUE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(void *, CONF_VALUE *, p), (where)) + +#define sk_CONF_VALUE_delete(sk, where) \ + ((CONF_VALUE *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + (where))) + +#define sk_CONF_VALUE_delete_ptr(sk, p) \ + ((CONF_VALUE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(void *, CONF_VALUE *, p))) + +#define sk_CONF_VALUE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), (out_index), \ + CHECKED_CAST(void *, CONF_VALUE *, p)) + +#define sk_CONF_VALUE_shift(sk) \ + ((CONF_VALUE *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk))) + +#define sk_CONF_VALUE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(void *, CONF_VALUE *, p)) + +#define sk_CONF_VALUE_pop(sk) \ + ((CONF_VALUE *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk))) + +#define sk_CONF_VALUE_dup(sk) \ + ((STACK_OF(CONF_VALUE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(CONF_VALUE) *, sk))) + +#define sk_CONF_VALUE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk)) + +#define sk_CONF_VALUE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(CONF_VALUE) *, sk)) + +#define sk_CONF_VALUE_set_cmp_func(sk, comp) \ + ((int (*)(const CONF_VALUE **a, const CONF_VALUE **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const CONF_VALUE **a, const CONF_VALUE **b), \ + comp))) + +#define sk_CONF_VALUE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(CONF_VALUE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(CONF_VALUE) *, sk), \ + CHECKED_CAST(void *(*)(void *), CONF_VALUE *(*)(CONF_VALUE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(CONF_VALUE *), free_func))) + +/* CRYPTO_EX_DATA_FUNCS */ +#define sk_CRYPTO_EX_DATA_FUNCS_new(comp) \ + ((STACK_OF(CRYPTO_EX_DATA_FUNCS) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const CRYPTO_EX_DATA_FUNCS **a, const CRYPTO_EX_DATA_FUNCS **b), \ + comp))) + +#define sk_CRYPTO_EX_DATA_FUNCS_new_null() \ + ((STACK_OF(CRYPTO_EX_DATA_FUNCS) *)sk_new_null()) + +#define sk_CRYPTO_EX_DATA_FUNCS_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk)) + +#define sk_CRYPTO_EX_DATA_FUNCS_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk)); + +#define sk_CRYPTO_EX_DATA_FUNCS_value(sk, i) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + (i))) + +#define sk_CRYPTO_EX_DATA_FUNCS_set(sk, i, p) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), (i), \ + CHECKED_CAST(void *, CRYPTO_EX_DATA_FUNCS *, p))) + +#define sk_CRYPTO_EX_DATA_FUNCS_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk)) + +#define sk_CRYPTO_EX_DATA_FUNCS_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(CRYPTO_EX_DATA_FUNCS *), \ + free_func)) + +#define sk_CRYPTO_EX_DATA_FUNCS_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + CHECKED_CAST(void *, CRYPTO_EX_DATA_FUNCS *, p), (where)) + +#define sk_CRYPTO_EX_DATA_FUNCS_delete(sk, where) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), (where))) + +#define sk_CRYPTO_EX_DATA_FUNCS_delete_ptr(sk, p) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + CHECKED_CAST(void *, CRYPTO_EX_DATA_FUNCS *, p))) + +#define sk_CRYPTO_EX_DATA_FUNCS_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + (out_index), CHECKED_CAST(void *, CRYPTO_EX_DATA_FUNCS *, p)) + +#define sk_CRYPTO_EX_DATA_FUNCS_shift(sk) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk))) + +#define sk_CRYPTO_EX_DATA_FUNCS_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + CHECKED_CAST(void *, CRYPTO_EX_DATA_FUNCS *, p)) + +#define sk_CRYPTO_EX_DATA_FUNCS_pop(sk) \ + ((CRYPTO_EX_DATA_FUNCS *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk))) + +#define sk_CRYPTO_EX_DATA_FUNCS_dup(sk) \ + ((STACK_OF(CRYPTO_EX_DATA_FUNCS) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk))) + +#define sk_CRYPTO_EX_DATA_FUNCS_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk)) + +#define sk_CRYPTO_EX_DATA_FUNCS_is_sorted(sk) \ + sk_is_sorted( \ + CHECKED_CAST(_STACK *, const STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk)) + +#define sk_CRYPTO_EX_DATA_FUNCS_set_cmp_func(sk, comp) \ + ((int (*)(const CRYPTO_EX_DATA_FUNCS **a, const CRYPTO_EX_DATA_FUNCS **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(CRYPTO_EX_DATA_FUNCS) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const CRYPTO_EX_DATA_FUNCS **a, \ + const CRYPTO_EX_DATA_FUNCS **b), \ + comp))) + +#define sk_CRYPTO_EX_DATA_FUNCS_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(CRYPTO_EX_DATA_FUNCS) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(CRYPTO_EX_DATA_FUNCS) *, \ + sk), \ + CHECKED_CAST(void *(*)(void *), \ + CRYPTO_EX_DATA_FUNCS *(*)(CRYPTO_EX_DATA_FUNCS *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(CRYPTO_EX_DATA_FUNCS *), \ + free_func))) + +/* DIST_POINT */ +#define sk_DIST_POINT_new(comp) \ + ((STACK_OF(DIST_POINT) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const DIST_POINT **a, const DIST_POINT **b), \ + comp))) + +#define sk_DIST_POINT_new_null() ((STACK_OF(DIST_POINT) *)sk_new_null()) + +#define sk_DIST_POINT_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk)) + +#define sk_DIST_POINT_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk)); + +#define sk_DIST_POINT_value(sk, i) \ + ((DIST_POINT *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(DIST_POINT) *, sk), (i))) + +#define sk_DIST_POINT_set(sk, i, p) \ + ((DIST_POINT *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + (i), CHECKED_CAST(void *, DIST_POINT *, p))) + +#define sk_DIST_POINT_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk)) + +#define sk_DIST_POINT_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(DIST_POINT *), free_func)) + +#define sk_DIST_POINT_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(void *, DIST_POINT *, p), (where)) + +#define sk_DIST_POINT_delete(sk, where) \ + ((DIST_POINT *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + (where))) + +#define sk_DIST_POINT_delete_ptr(sk, p) \ + ((DIST_POINT *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(void *, DIST_POINT *, p))) + +#define sk_DIST_POINT_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), (out_index), \ + CHECKED_CAST(void *, DIST_POINT *, p)) + +#define sk_DIST_POINT_shift(sk) \ + ((DIST_POINT *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk))) + +#define sk_DIST_POINT_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(void *, DIST_POINT *, p)) + +#define sk_DIST_POINT_pop(sk) \ + ((DIST_POINT *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk))) + +#define sk_DIST_POINT_dup(sk) \ + ((STACK_OF(DIST_POINT) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(DIST_POINT) *, sk))) + +#define sk_DIST_POINT_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk)) + +#define sk_DIST_POINT_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(DIST_POINT) *, sk)) + +#define sk_DIST_POINT_set_cmp_func(sk, comp) \ + ((int (*)(const DIST_POINT **a, const DIST_POINT **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const DIST_POINT **a, const DIST_POINT **b), \ + comp))) + +#define sk_DIST_POINT_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(DIST_POINT) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(DIST_POINT) *, sk), \ + CHECKED_CAST(void *(*)(void *), DIST_POINT *(*)(DIST_POINT *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(DIST_POINT *), free_func))) + +/* GENERAL_NAME */ +#define sk_GENERAL_NAME_new(comp) \ + ((STACK_OF(GENERAL_NAME) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const GENERAL_NAME **a, const GENERAL_NAME **b), \ + comp))) + +#define sk_GENERAL_NAME_new_null() ((STACK_OF(GENERAL_NAME) *)sk_new_null()) + +#define sk_GENERAL_NAME_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk)) + +#define sk_GENERAL_NAME_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk)); + +#define sk_GENERAL_NAME_value(sk, i) \ + ((GENERAL_NAME *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAME) *, sk), (i))) + +#define sk_GENERAL_NAME_set(sk, i, p) \ + ((GENERAL_NAME *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), (i), \ + CHECKED_CAST(void *, GENERAL_NAME *, p))) + +#define sk_GENERAL_NAME_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk)) + +#define sk_GENERAL_NAME_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_NAME *), free_func)) + +#define sk_GENERAL_NAME_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAME *, p), (where)) + +#define sk_GENERAL_NAME_delete(sk, where) \ + ((GENERAL_NAME *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), (where))) + +#define sk_GENERAL_NAME_delete_ptr(sk, p) \ + ((GENERAL_NAME *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAME *, p))) + +#define sk_GENERAL_NAME_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), (out_index), \ + CHECKED_CAST(void *, GENERAL_NAME *, p)) + +#define sk_GENERAL_NAME_shift(sk) \ + ((GENERAL_NAME *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk))) + +#define sk_GENERAL_NAME_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAME *, p)) + +#define sk_GENERAL_NAME_pop(sk) \ + ((GENERAL_NAME *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk))) + +#define sk_GENERAL_NAME_dup(sk) \ + ((STACK_OF(GENERAL_NAME) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAME) *, sk))) + +#define sk_GENERAL_NAME_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk)) + +#define sk_GENERAL_NAME_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAME) *, sk)) + +#define sk_GENERAL_NAME_set_cmp_func(sk, comp) \ + ((int (*)(const GENERAL_NAME **a, const GENERAL_NAME **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const GENERAL_NAME **a, const GENERAL_NAME **b), \ + comp))) + +#define sk_GENERAL_NAME_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(GENERAL_NAME) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(GENERAL_NAME) *, sk), \ + CHECKED_CAST(void *(*)(void *), GENERAL_NAME *(*)(GENERAL_NAME *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_NAME *), free_func))) + +/* GENERAL_NAMES */ +#define sk_GENERAL_NAMES_new(comp) \ + ((STACK_OF(GENERAL_NAMES) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const GENERAL_NAMES **a, const GENERAL_NAMES **b), comp))) + +#define sk_GENERAL_NAMES_new_null() ((STACK_OF(GENERAL_NAMES) *)sk_new_null()) + +#define sk_GENERAL_NAMES_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk)) + +#define sk_GENERAL_NAMES_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk)); + +#define sk_GENERAL_NAMES_value(sk, i) \ + ((GENERAL_NAMES *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAMES) *, sk), (i))) + +#define sk_GENERAL_NAMES_set(sk, i, p) \ + ((GENERAL_NAMES *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), (i), \ + CHECKED_CAST(void *, GENERAL_NAMES *, p))) + +#define sk_GENERAL_NAMES_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk)) + +#define sk_GENERAL_NAMES_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_NAMES *), free_func)) + +#define sk_GENERAL_NAMES_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAMES *, p), (where)) + +#define sk_GENERAL_NAMES_delete(sk, where) \ + ((GENERAL_NAMES *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), (where))) + +#define sk_GENERAL_NAMES_delete_ptr(sk, p) \ + ((GENERAL_NAMES *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAMES *, p))) + +#define sk_GENERAL_NAMES_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), (out_index), \ + CHECKED_CAST(void *, GENERAL_NAMES *, p)) + +#define sk_GENERAL_NAMES_shift(sk) \ + ((GENERAL_NAMES *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk))) + +#define sk_GENERAL_NAMES_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(void *, GENERAL_NAMES *, p)) + +#define sk_GENERAL_NAMES_pop(sk) \ + ((GENERAL_NAMES *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk))) + +#define sk_GENERAL_NAMES_dup(sk) \ + ((STACK_OF(GENERAL_NAMES) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAMES) *, sk))) + +#define sk_GENERAL_NAMES_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk)) + +#define sk_GENERAL_NAMES_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_NAMES) *, sk)) + +#define sk_GENERAL_NAMES_set_cmp_func(sk, comp) \ + ((int (*)(const GENERAL_NAMES **a, const GENERAL_NAMES **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const GENERAL_NAMES **a, const GENERAL_NAMES **b), \ + comp))) + +#define sk_GENERAL_NAMES_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(GENERAL_NAMES) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(GENERAL_NAMES) *, sk), \ + CHECKED_CAST(void *(*)(void *), GENERAL_NAMES *(*)(GENERAL_NAMES *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_NAMES *), free_func))) + +/* GENERAL_SUBTREE */ +#define sk_GENERAL_SUBTREE_new(comp) \ + ((STACK_OF(GENERAL_SUBTREE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const GENERAL_SUBTREE **a, const GENERAL_SUBTREE **b), comp))) + +#define sk_GENERAL_SUBTREE_new_null() \ + ((STACK_OF(GENERAL_SUBTREE) *)sk_new_null()) + +#define sk_GENERAL_SUBTREE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk)) + +#define sk_GENERAL_SUBTREE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk)); + +#define sk_GENERAL_SUBTREE_value(sk, i) \ + ((GENERAL_SUBTREE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_SUBTREE) *, sk), (i))) + +#define sk_GENERAL_SUBTREE_set(sk, i, p) \ + ((GENERAL_SUBTREE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), (i), \ + CHECKED_CAST(void *, GENERAL_SUBTREE *, p))) + +#define sk_GENERAL_SUBTREE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk)) + +#define sk_GENERAL_SUBTREE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_SUBTREE *), free_func)) + +#define sk_GENERAL_SUBTREE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(void *, GENERAL_SUBTREE *, p), (where)) + +#define sk_GENERAL_SUBTREE_delete(sk, where) \ + ((GENERAL_SUBTREE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), (where))) + +#define sk_GENERAL_SUBTREE_delete_ptr(sk, p) \ + ((GENERAL_SUBTREE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(void *, GENERAL_SUBTREE *, p))) + +#define sk_GENERAL_SUBTREE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + (out_index), CHECKED_CAST(void *, GENERAL_SUBTREE *, p)) + +#define sk_GENERAL_SUBTREE_shift(sk) \ + ((GENERAL_SUBTREE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk))) + +#define sk_GENERAL_SUBTREE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(void *, GENERAL_SUBTREE *, p)) + +#define sk_GENERAL_SUBTREE_pop(sk) \ + ((GENERAL_SUBTREE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk))) + +#define sk_GENERAL_SUBTREE_dup(sk) \ + ((STACK_OF(GENERAL_SUBTREE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_SUBTREE) *, sk))) + +#define sk_GENERAL_SUBTREE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk)) + +#define sk_GENERAL_SUBTREE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(GENERAL_SUBTREE) *, sk)) + +#define sk_GENERAL_SUBTREE_set_cmp_func(sk, comp) \ + ((int (*)(const GENERAL_SUBTREE **a, const GENERAL_SUBTREE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const GENERAL_SUBTREE **a, \ + const GENERAL_SUBTREE **b), \ + comp))) + +#define sk_GENERAL_SUBTREE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(GENERAL_SUBTREE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(GENERAL_SUBTREE) *, sk), \ + CHECKED_CAST(void *(*)(void *), GENERAL_SUBTREE *(*)(GENERAL_SUBTREE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(GENERAL_SUBTREE *), free_func))) + +/* POLICYINFO */ +#define sk_POLICYINFO_new(comp) \ + ((STACK_OF(POLICYINFO) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const POLICYINFO **a, const POLICYINFO **b), \ + comp))) + +#define sk_POLICYINFO_new_null() ((STACK_OF(POLICYINFO) *)sk_new_null()) + +#define sk_POLICYINFO_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk)) + +#define sk_POLICYINFO_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk)); + +#define sk_POLICYINFO_value(sk, i) \ + ((POLICYINFO *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICYINFO) *, sk), (i))) + +#define sk_POLICYINFO_set(sk, i, p) \ + ((POLICYINFO *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + (i), CHECKED_CAST(void *, POLICYINFO *, p))) + +#define sk_POLICYINFO_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk)) + +#define sk_POLICYINFO_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICYINFO *), free_func)) + +#define sk_POLICYINFO_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(void *, POLICYINFO *, p), (where)) + +#define sk_POLICYINFO_delete(sk, where) \ + ((POLICYINFO *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + (where))) + +#define sk_POLICYINFO_delete_ptr(sk, p) \ + ((POLICYINFO *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(void *, POLICYINFO *, p))) + +#define sk_POLICYINFO_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), (out_index), \ + CHECKED_CAST(void *, POLICYINFO *, p)) + +#define sk_POLICYINFO_shift(sk) \ + ((POLICYINFO *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk))) + +#define sk_POLICYINFO_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(void *, POLICYINFO *, p)) + +#define sk_POLICYINFO_pop(sk) \ + ((POLICYINFO *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk))) + +#define sk_POLICYINFO_dup(sk) \ + ((STACK_OF(POLICYINFO) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICYINFO) *, sk))) + +#define sk_POLICYINFO_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk)) + +#define sk_POLICYINFO_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(POLICYINFO) *, sk)) + +#define sk_POLICYINFO_set_cmp_func(sk, comp) \ + ((int (*)(const POLICYINFO **a, const POLICYINFO **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const POLICYINFO **a, const POLICYINFO **b), \ + comp))) + +#define sk_POLICYINFO_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(POLICYINFO) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(POLICYINFO) *, sk), \ + CHECKED_CAST(void *(*)(void *), POLICYINFO *(*)(POLICYINFO *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICYINFO *), free_func))) + +/* POLICYQUALINFO */ +#define sk_POLICYQUALINFO_new(comp) \ + ((STACK_OF(POLICYQUALINFO) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const POLICYQUALINFO **a, const POLICYQUALINFO **b), comp))) + +#define sk_POLICYQUALINFO_new_null() ((STACK_OF(POLICYQUALINFO) *)sk_new_null()) + +#define sk_POLICYQUALINFO_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk)) + +#define sk_POLICYQUALINFO_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk)); + +#define sk_POLICYQUALINFO_value(sk, i) \ + ((POLICYQUALINFO *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICYQUALINFO) *, sk), (i))) + +#define sk_POLICYQUALINFO_set(sk, i, p) \ + ((POLICYQUALINFO *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), (i), \ + CHECKED_CAST(void *, POLICYQUALINFO *, p))) + +#define sk_POLICYQUALINFO_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk)) + +#define sk_POLICYQUALINFO_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICYQUALINFO *), free_func)) + +#define sk_POLICYQUALINFO_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(void *, POLICYQUALINFO *, p), (where)) + +#define sk_POLICYQUALINFO_delete(sk, where) \ + ((POLICYQUALINFO *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), (where))) + +#define sk_POLICYQUALINFO_delete_ptr(sk, p) \ + ((POLICYQUALINFO *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(void *, POLICYQUALINFO *, p))) + +#define sk_POLICYQUALINFO_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), (out_index), \ + CHECKED_CAST(void *, POLICYQUALINFO *, p)) + +#define sk_POLICYQUALINFO_shift(sk) \ + ((POLICYQUALINFO *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk))) + +#define sk_POLICYQUALINFO_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(void *, POLICYQUALINFO *, p)) + +#define sk_POLICYQUALINFO_pop(sk) \ + ((POLICYQUALINFO *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk))) + +#define sk_POLICYQUALINFO_dup(sk) \ + ((STACK_OF(POLICYQUALINFO) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICYQUALINFO) *, sk))) + +#define sk_POLICYQUALINFO_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk)) + +#define sk_POLICYQUALINFO_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(POLICYQUALINFO) *, sk)) + +#define sk_POLICYQUALINFO_set_cmp_func(sk, comp) \ + ((int (*)(const POLICYQUALINFO **a, const POLICYQUALINFO **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const POLICYQUALINFO **a, \ + const POLICYQUALINFO **b), \ + comp))) + +#define sk_POLICYQUALINFO_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(POLICYQUALINFO) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(POLICYQUALINFO) *, sk), \ + CHECKED_CAST(void *(*)(void *), POLICYQUALINFO *(*)(POLICYQUALINFO *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICYQUALINFO *), free_func))) + +/* POLICY_MAPPING */ +#define sk_POLICY_MAPPING_new(comp) \ + ((STACK_OF(POLICY_MAPPING) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const POLICY_MAPPING **a, const POLICY_MAPPING **b), comp))) + +#define sk_POLICY_MAPPING_new_null() ((STACK_OF(POLICY_MAPPING) *)sk_new_null()) + +#define sk_POLICY_MAPPING_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk)) + +#define sk_POLICY_MAPPING_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk)); + +#define sk_POLICY_MAPPING_value(sk, i) \ + ((POLICY_MAPPING *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICY_MAPPING) *, sk), (i))) + +#define sk_POLICY_MAPPING_set(sk, i, p) \ + ((POLICY_MAPPING *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), (i), \ + CHECKED_CAST(void *, POLICY_MAPPING *, p))) + +#define sk_POLICY_MAPPING_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk)) + +#define sk_POLICY_MAPPING_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICY_MAPPING *), free_func)) + +#define sk_POLICY_MAPPING_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(void *, POLICY_MAPPING *, p), (where)) + +#define sk_POLICY_MAPPING_delete(sk, where) \ + ((POLICY_MAPPING *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), (where))) + +#define sk_POLICY_MAPPING_delete_ptr(sk, p) \ + ((POLICY_MAPPING *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(void *, POLICY_MAPPING *, p))) + +#define sk_POLICY_MAPPING_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), (out_index), \ + CHECKED_CAST(void *, POLICY_MAPPING *, p)) + +#define sk_POLICY_MAPPING_shift(sk) \ + ((POLICY_MAPPING *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk))) + +#define sk_POLICY_MAPPING_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(void *, POLICY_MAPPING *, p)) + +#define sk_POLICY_MAPPING_pop(sk) \ + ((POLICY_MAPPING *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk))) + +#define sk_POLICY_MAPPING_dup(sk) \ + ((STACK_OF(POLICY_MAPPING) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(POLICY_MAPPING) *, sk))) + +#define sk_POLICY_MAPPING_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk)) + +#define sk_POLICY_MAPPING_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(POLICY_MAPPING) *, sk)) + +#define sk_POLICY_MAPPING_set_cmp_func(sk, comp) \ + ((int (*)(const POLICY_MAPPING **a, const POLICY_MAPPING **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const POLICY_MAPPING **a, \ + const POLICY_MAPPING **b), \ + comp))) + +#define sk_POLICY_MAPPING_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(POLICY_MAPPING) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(POLICY_MAPPING) *, sk), \ + CHECKED_CAST(void *(*)(void *), POLICY_MAPPING *(*)(POLICY_MAPPING *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(POLICY_MAPPING *), free_func))) + +/* RSA_additional_prime */ +#define sk_RSA_additional_prime_new(comp) \ + ((STACK_OF(RSA_additional_prime) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const RSA_additional_prime **a, const RSA_additional_prime **b), \ + comp))) + +#define sk_RSA_additional_prime_new_null() \ + ((STACK_OF(RSA_additional_prime) *)sk_new_null()) + +#define sk_RSA_additional_prime_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk)) + +#define sk_RSA_additional_prime_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk)); + +#define sk_RSA_additional_prime_value(sk, i) \ + ((RSA_additional_prime *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(RSA_additional_prime) *, sk), \ + (i))) + +#define sk_RSA_additional_prime_set(sk, i, p) \ + ((RSA_additional_prime *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), (i), \ + CHECKED_CAST(void *, RSA_additional_prime *, p))) + +#define sk_RSA_additional_prime_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk)) + +#define sk_RSA_additional_prime_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(RSA_additional_prime *), \ + free_func)) + +#define sk_RSA_additional_prime_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + CHECKED_CAST(void *, RSA_additional_prime *, p), (where)) + +#define sk_RSA_additional_prime_delete(sk, where) \ + ((RSA_additional_prime *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), (where))) + +#define sk_RSA_additional_prime_delete_ptr(sk, p) \ + ((RSA_additional_prime *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + CHECKED_CAST(void *, RSA_additional_prime *, p))) + +#define sk_RSA_additional_prime_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + (out_index), CHECKED_CAST(void *, RSA_additional_prime *, p)) + +#define sk_RSA_additional_prime_shift(sk) \ + ((RSA_additional_prime *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk))) + +#define sk_RSA_additional_prime_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + CHECKED_CAST(void *, RSA_additional_prime *, p)) + +#define sk_RSA_additional_prime_pop(sk) \ + ((RSA_additional_prime *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk))) + +#define sk_RSA_additional_prime_dup(sk) \ + ((STACK_OF(RSA_additional_prime) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(RSA_additional_prime) *, sk))) + +#define sk_RSA_additional_prime_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk)) + +#define sk_RSA_additional_prime_is_sorted(sk) \ + sk_is_sorted( \ + CHECKED_CAST(_STACK *, const STACK_OF(RSA_additional_prime) *, sk)) + +#define sk_RSA_additional_prime_set_cmp_func(sk, comp) \ + ((int (*)(const RSA_additional_prime **a, const RSA_additional_prime **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(RSA_additional_prime) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const RSA_additional_prime **a, \ + const RSA_additional_prime **b), \ + comp))) + +#define sk_RSA_additional_prime_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(RSA_additional_prime) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(RSA_additional_prime) *, \ + sk), \ + CHECKED_CAST(void *(*)(void *), \ + RSA_additional_prime *(*)(RSA_additional_prime *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(RSA_additional_prime *), \ + free_func))) + +/* SSL_COMP */ +#define sk_SSL_COMP_new(comp) \ + ((STACK_OF(SSL_COMP) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const SSL_COMP **a, const SSL_COMP **b), comp))) + +#define sk_SSL_COMP_new_null() ((STACK_OF(SSL_COMP) *)sk_new_null()) + +#define sk_SSL_COMP_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk)) + +#define sk_SSL_COMP_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk)); + +#define sk_SSL_COMP_value(sk, i) \ + ((SSL_COMP *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_COMP) *, sk), (i))) + +#define sk_SSL_COMP_set(sk, i, p) \ + ((SSL_COMP *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), (i), \ + CHECKED_CAST(void *, SSL_COMP *, p))) + +#define sk_SSL_COMP_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk)) + +#define sk_SSL_COMP_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(SSL_COMP *), free_func)) + +#define sk_SSL_COMP_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(void *, SSL_COMP *, p), (where)) + +#define sk_SSL_COMP_delete(sk, where) \ + ((SSL_COMP *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + (where))) + +#define sk_SSL_COMP_delete_ptr(sk, p) \ + ((SSL_COMP *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(void *, SSL_COMP *, p))) + +#define sk_SSL_COMP_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), (out_index), \ + CHECKED_CAST(void *, SSL_COMP *, p)) + +#define sk_SSL_COMP_shift(sk) \ + ((SSL_COMP *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk))) + +#define sk_SSL_COMP_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(void *, SSL_COMP *, p)) + +#define sk_SSL_COMP_pop(sk) \ + ((SSL_COMP *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk))) + +#define sk_SSL_COMP_dup(sk) \ + ((STACK_OF(SSL_COMP) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_COMP) *, sk))) + +#define sk_SSL_COMP_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk)) + +#define sk_SSL_COMP_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(SSL_COMP) *, sk)) + +#define sk_SSL_COMP_set_cmp_func(sk, comp) \ + ((int (*)(const SSL_COMP **a, const SSL_COMP **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const SSL_COMP **a, const SSL_COMP **b), comp))) + +#define sk_SSL_COMP_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(SSL_COMP) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(SSL_COMP) *, sk), \ + CHECKED_CAST(void *(*)(void *), SSL_COMP *(*)(SSL_COMP *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(SSL_COMP *), free_func))) + +/* SSL_CUSTOM_EXTENSION */ +#define sk_SSL_CUSTOM_EXTENSION_new(comp) \ + ((STACK_OF(SSL_CUSTOM_EXTENSION) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const SSL_CUSTOM_EXTENSION **a, const SSL_CUSTOM_EXTENSION **b), \ + comp))) + +#define sk_SSL_CUSTOM_EXTENSION_new_null() \ + ((STACK_OF(SSL_CUSTOM_EXTENSION) *)sk_new_null()) + +#define sk_SSL_CUSTOM_EXTENSION_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk)) + +#define sk_SSL_CUSTOM_EXTENSION_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk)); + +#define sk_SSL_CUSTOM_EXTENSION_value(sk, i) \ + ((SSL_CUSTOM_EXTENSION *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + (i))) + +#define sk_SSL_CUSTOM_EXTENSION_set(sk, i, p) \ + ((SSL_CUSTOM_EXTENSION *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), (i), \ + CHECKED_CAST(void *, SSL_CUSTOM_EXTENSION *, p))) + +#define sk_SSL_CUSTOM_EXTENSION_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk)) + +#define sk_SSL_CUSTOM_EXTENSION_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(SSL_CUSTOM_EXTENSION *), \ + free_func)) + +#define sk_SSL_CUSTOM_EXTENSION_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + CHECKED_CAST(void *, SSL_CUSTOM_EXTENSION *, p), (where)) + +#define sk_SSL_CUSTOM_EXTENSION_delete(sk, where) \ + ((SSL_CUSTOM_EXTENSION *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), (where))) + +#define sk_SSL_CUSTOM_EXTENSION_delete_ptr(sk, p) \ + ((SSL_CUSTOM_EXTENSION *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + CHECKED_CAST(void *, SSL_CUSTOM_EXTENSION *, p))) + +#define sk_SSL_CUSTOM_EXTENSION_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + (out_index), CHECKED_CAST(void *, SSL_CUSTOM_EXTENSION *, p)) + +#define sk_SSL_CUSTOM_EXTENSION_shift(sk) \ + ((SSL_CUSTOM_EXTENSION *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk))) + +#define sk_SSL_CUSTOM_EXTENSION_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + CHECKED_CAST(void *, SSL_CUSTOM_EXTENSION *, p)) + +#define sk_SSL_CUSTOM_EXTENSION_pop(sk) \ + ((SSL_CUSTOM_EXTENSION *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk))) + +#define sk_SSL_CUSTOM_EXTENSION_dup(sk) \ + ((STACK_OF(SSL_CUSTOM_EXTENSION) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_CUSTOM_EXTENSION) *, sk))) + +#define sk_SSL_CUSTOM_EXTENSION_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk)) + +#define sk_SSL_CUSTOM_EXTENSION_is_sorted(sk) \ + sk_is_sorted( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_CUSTOM_EXTENSION) *, sk)) + +#define sk_SSL_CUSTOM_EXTENSION_set_cmp_func(sk, comp) \ + ((int (*)(const SSL_CUSTOM_EXTENSION **a, const SSL_CUSTOM_EXTENSION **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CUSTOM_EXTENSION) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const SSL_CUSTOM_EXTENSION **a, \ + const SSL_CUSTOM_EXTENSION **b), \ + comp))) + +#define sk_SSL_CUSTOM_EXTENSION_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(SSL_CUSTOM_EXTENSION) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(SSL_CUSTOM_EXTENSION) *, \ + sk), \ + CHECKED_CAST(void *(*)(void *), \ + SSL_CUSTOM_EXTENSION *(*)(SSL_CUSTOM_EXTENSION *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(SSL_CUSTOM_EXTENSION *), \ + free_func))) + +/* STACK_OF_X509_NAME_ENTRY */ +#define sk_STACK_OF_X509_NAME_ENTRY_new(comp) \ + ((STACK_OF(STACK_OF_X509_NAME_ENTRY) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const STACK_OF_X509_NAME_ENTRY **a, \ + const STACK_OF_X509_NAME_ENTRY **b), \ + comp))) + +#define sk_STACK_OF_X509_NAME_ENTRY_new_null() \ + ((STACK_OF(STACK_OF_X509_NAME_ENTRY) *)sk_new_null()) + +#define sk_STACK_OF_X509_NAME_ENTRY_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk)) + +#define sk_STACK_OF_X509_NAME_ENTRY_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk)); + +#define sk_STACK_OF_X509_NAME_ENTRY_value(sk, i) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + (i))) + +#define sk_STACK_OF_X509_NAME_ENTRY_set(sk, i, p) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), (i), \ + CHECKED_CAST(void *, STACK_OF_X509_NAME_ENTRY *, p))) + +#define sk_STACK_OF_X509_NAME_ENTRY_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk)) + +#define sk_STACK_OF_X509_NAME_ENTRY_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(STACK_OF_X509_NAME_ENTRY *), \ + free_func)) + +#define sk_STACK_OF_X509_NAME_ENTRY_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, STACK_OF_X509_NAME_ENTRY *, p), (where)) + +#define sk_STACK_OF_X509_NAME_ENTRY_delete(sk, where) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + (where))) + +#define sk_STACK_OF_X509_NAME_ENTRY_delete_ptr(sk, p) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, STACK_OF_X509_NAME_ENTRY *, p))) + +#define sk_STACK_OF_X509_NAME_ENTRY_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + (out_index), CHECKED_CAST(void *, STACK_OF_X509_NAME_ENTRY *, p)) + +#define sk_STACK_OF_X509_NAME_ENTRY_shift(sk) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk))) + +#define sk_STACK_OF_X509_NAME_ENTRY_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, STACK_OF_X509_NAME_ENTRY *, p)) + +#define sk_STACK_OF_X509_NAME_ENTRY_pop(sk) \ + ((STACK_OF_X509_NAME_ENTRY *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk))) + +#define sk_STACK_OF_X509_NAME_ENTRY_dup(sk) \ + ((STACK_OF(STACK_OF_X509_NAME_ENTRY) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk))) + +#define sk_STACK_OF_X509_NAME_ENTRY_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk)) + +#define sk_STACK_OF_X509_NAME_ENTRY_is_sorted(sk) \ + sk_is_sorted( \ + CHECKED_CAST(_STACK *, const STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk)) + +#define sk_STACK_OF_X509_NAME_ENTRY_set_cmp_func(sk, comp) \ + ((int (*)(const STACK_OF_X509_NAME_ENTRY **a, \ + const STACK_OF_X509_NAME_ENTRY **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(STACK_OF_X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const STACK_OF_X509_NAME_ENTRY **a, \ + const STACK_OF_X509_NAME_ENTRY **b), \ + comp))) + +#define sk_STACK_OF_X509_NAME_ENTRY_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(STACK_OF_X509_NAME_ENTRY) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(STACK_OF_X509_NAME_ENTRY) *, \ + sk), \ + CHECKED_CAST(void *(*)(void *), \ + STACK_OF_X509_NAME_ENTRY *(*)(STACK_OF_X509_NAME_ENTRY *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(STACK_OF_X509_NAME_ENTRY *), \ + free_func))) + +/* SXNETID */ +#define sk_SXNETID_new(comp) \ + ((STACK_OF(SXNETID) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const SXNETID **a, const SXNETID **b), comp))) + +#define sk_SXNETID_new_null() ((STACK_OF(SXNETID) *)sk_new_null()) + +#define sk_SXNETID_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk)) + +#define sk_SXNETID_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk)); + +#define sk_SXNETID_value(sk, i) \ + ((SXNETID *)sk_value(CHECKED_CAST(_STACK *, const STACK_OF(SXNETID) *, sk), \ + (i))) + +#define sk_SXNETID_set(sk, i, p) \ + ((SXNETID *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), (i), \ + CHECKED_CAST(void *, SXNETID *, p))) + +#define sk_SXNETID_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk)) + +#define sk_SXNETID_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(SXNETID *), free_func)) + +#define sk_SXNETID_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(void *, SXNETID *, p), (where)) + +#define sk_SXNETID_delete(sk, where) \ + ((SXNETID *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + (where))) + +#define sk_SXNETID_delete_ptr(sk, p) \ + ((SXNETID *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(void *, SXNETID *, p))) + +#define sk_SXNETID_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), (out_index), \ + CHECKED_CAST(void *, SXNETID *, p)) + +#define sk_SXNETID_shift(sk) \ + ((SXNETID *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk))) + +#define sk_SXNETID_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(void *, SXNETID *, p)) + +#define sk_SXNETID_pop(sk) \ + ((SXNETID *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk))) + +#define sk_SXNETID_dup(sk) \ + ((STACK_OF(SXNETID) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(SXNETID) *, sk))) + +#define sk_SXNETID_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk)) + +#define sk_SXNETID_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(SXNETID) *, sk)) + +#define sk_SXNETID_set_cmp_func(sk, comp) \ + ((int (*)(const SXNETID **a, const SXNETID **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const SXNETID **a, const SXNETID **b), comp))) + +#define sk_SXNETID_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(SXNETID) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(SXNETID) *, sk), \ + CHECKED_CAST(void *(*)(void *), SXNETID *(*)(SXNETID *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(SXNETID *), free_func))) + +/* X509 */ +#define sk_X509_new(comp) \ + ((STACK_OF(X509) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509 **a, const X509 **b), comp))) + +#define sk_X509_new_null() ((STACK_OF(X509) *)sk_new_null()) + +#define sk_X509_num(sk) sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk)) + +#define sk_X509_zero(sk) sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk)); + +#define sk_X509_value(sk, i) \ + ((X509 *)sk_value(CHECKED_CAST(_STACK *, const STACK_OF(X509) *, sk), (i))) + +#define sk_X509_set(sk, i, p) \ + ((X509 *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), (i), \ + CHECKED_CAST(void *, X509 *, p))) + +#define sk_X509_free(sk) sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk)) + +#define sk_X509_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509 *), free_func)) + +#define sk_X509_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), \ + CHECKED_CAST(void *, X509 *, p), (where)) + +#define sk_X509_delete(sk, where) \ + ((X509 *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), (where))) + +#define sk_X509_delete_ptr(sk, p) \ + ((X509 *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), \ + CHECKED_CAST(void *, X509 *, p))) + +#define sk_X509_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), (out_index), \ + CHECKED_CAST(void *, X509 *, p)) + +#define sk_X509_shift(sk) \ + ((X509 *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk))) + +#define sk_X509_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), \ + CHECKED_CAST(void *, X509 *, p)) + +#define sk_X509_pop(sk) \ + ((X509 *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk))) + +#define sk_X509_dup(sk) \ + ((STACK_OF(X509) *)sk_dup(CHECKED_CAST(_STACK *, const STACK_OF(X509) *, sk))) + +#define sk_X509_sort(sk) sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk)) + +#define sk_X509_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509) *, sk)) + +#define sk_X509_set_cmp_func(sk, comp) \ + ((int (*)(const X509 **a, const X509 **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509 **a, const X509 **b), \ + comp))) + +#define sk_X509_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509 *(*)(X509 *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509 *), free_func))) + +/* X509V3_EXT_METHOD */ +#define sk_X509V3_EXT_METHOD_new(comp) \ + ((STACK_OF(X509V3_EXT_METHOD) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509V3_EXT_METHOD **a, const X509V3_EXT_METHOD **b), \ + comp))) + +#define sk_X509V3_EXT_METHOD_new_null() \ + ((STACK_OF(X509V3_EXT_METHOD) *)sk_new_null()) + +#define sk_X509V3_EXT_METHOD_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk)) + +#define sk_X509V3_EXT_METHOD_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk)); + +#define sk_X509V3_EXT_METHOD_value(sk, i) \ + ((X509V3_EXT_METHOD *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509V3_EXT_METHOD) *, sk), (i))) + +#define sk_X509V3_EXT_METHOD_set(sk, i, p) \ + ((X509V3_EXT_METHOD *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), (i), \ + CHECKED_CAST(void *, X509V3_EXT_METHOD *, p))) + +#define sk_X509V3_EXT_METHOD_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk)) + +#define sk_X509V3_EXT_METHOD_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509V3_EXT_METHOD *), \ + free_func)) + +#define sk_X509V3_EXT_METHOD_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(void *, X509V3_EXT_METHOD *, p), (where)) + +#define sk_X509V3_EXT_METHOD_delete(sk, where) \ + ((X509V3_EXT_METHOD *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), (where))) + +#define sk_X509V3_EXT_METHOD_delete_ptr(sk, p) \ + ((X509V3_EXT_METHOD *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(void *, X509V3_EXT_METHOD *, p))) + +#define sk_X509V3_EXT_METHOD_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + (out_index), CHECKED_CAST(void *, X509V3_EXT_METHOD *, p)) + +#define sk_X509V3_EXT_METHOD_shift(sk) \ + ((X509V3_EXT_METHOD *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk))) + +#define sk_X509V3_EXT_METHOD_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(void *, X509V3_EXT_METHOD *, p)) + +#define sk_X509V3_EXT_METHOD_pop(sk) \ + ((X509V3_EXT_METHOD *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk))) + +#define sk_X509V3_EXT_METHOD_dup(sk) \ + ((STACK_OF(X509V3_EXT_METHOD) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509V3_EXT_METHOD) *, sk))) + +#define sk_X509V3_EXT_METHOD_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk)) + +#define sk_X509V3_EXT_METHOD_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509V3_EXT_METHOD) *, sk)) + +#define sk_X509V3_EXT_METHOD_set_cmp_func(sk, comp) \ + ((int (*)(const X509V3_EXT_METHOD **a, const X509V3_EXT_METHOD **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509V3_EXT_METHOD **a, \ + const X509V3_EXT_METHOD **b), \ + comp))) + +#define sk_X509V3_EXT_METHOD_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509V3_EXT_METHOD) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509V3_EXT_METHOD) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + X509V3_EXT_METHOD *(*)(X509V3_EXT_METHOD *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509V3_EXT_METHOD *), \ + free_func))) + +/* X509_ALGOR */ +#define sk_X509_ALGOR_new(comp) \ + ((STACK_OF(X509_ALGOR) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_ALGOR **a, const X509_ALGOR **b), \ + comp))) + +#define sk_X509_ALGOR_new_null() ((STACK_OF(X509_ALGOR) *)sk_new_null()) + +#define sk_X509_ALGOR_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk)) + +#define sk_X509_ALGOR_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk)); + +#define sk_X509_ALGOR_value(sk, i) \ + ((X509_ALGOR *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_ALGOR) *, sk), (i))) + +#define sk_X509_ALGOR_set(sk, i, p) \ + ((X509_ALGOR *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + (i), CHECKED_CAST(void *, X509_ALGOR *, p))) + +#define sk_X509_ALGOR_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk)) + +#define sk_X509_ALGOR_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_ALGOR *), free_func)) + +#define sk_X509_ALGOR_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(void *, X509_ALGOR *, p), (where)) + +#define sk_X509_ALGOR_delete(sk, where) \ + ((X509_ALGOR *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + (where))) + +#define sk_X509_ALGOR_delete_ptr(sk, p) \ + ((X509_ALGOR *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(void *, X509_ALGOR *, p))) + +#define sk_X509_ALGOR_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_ALGOR *, p)) + +#define sk_X509_ALGOR_shift(sk) \ + ((X509_ALGOR *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk))) + +#define sk_X509_ALGOR_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(void *, X509_ALGOR *, p)) + +#define sk_X509_ALGOR_pop(sk) \ + ((X509_ALGOR *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk))) + +#define sk_X509_ALGOR_dup(sk) \ + ((STACK_OF(X509_ALGOR) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_ALGOR) *, sk))) + +#define sk_X509_ALGOR_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk)) + +#define sk_X509_ALGOR_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_ALGOR) *, sk)) + +#define sk_X509_ALGOR_set_cmp_func(sk, comp) \ + ((int (*)(const X509_ALGOR **a, const X509_ALGOR **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_ALGOR **a, const X509_ALGOR **b), \ + comp))) + +#define sk_X509_ALGOR_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_ALGOR) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_ALGOR) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_ALGOR *(*)(X509_ALGOR *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_ALGOR *), free_func))) + +/* X509_ATTRIBUTE */ +#define sk_X509_ATTRIBUTE_new(comp) \ + ((STACK_OF(X509_ATTRIBUTE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_ATTRIBUTE **a, const X509_ATTRIBUTE **b), comp))) + +#define sk_X509_ATTRIBUTE_new_null() ((STACK_OF(X509_ATTRIBUTE) *)sk_new_null()) + +#define sk_X509_ATTRIBUTE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk)) + +#define sk_X509_ATTRIBUTE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk)); + +#define sk_X509_ATTRIBUTE_value(sk, i) \ + ((X509_ATTRIBUTE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_ATTRIBUTE) *, sk), (i))) + +#define sk_X509_ATTRIBUTE_set(sk, i, p) \ + ((X509_ATTRIBUTE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), (i), \ + CHECKED_CAST(void *, X509_ATTRIBUTE *, p))) + +#define sk_X509_ATTRIBUTE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk)) + +#define sk_X509_ATTRIBUTE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_ATTRIBUTE *), free_func)) + +#define sk_X509_ATTRIBUTE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(void *, X509_ATTRIBUTE *, p), (where)) + +#define sk_X509_ATTRIBUTE_delete(sk, where) \ + ((X509_ATTRIBUTE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), (where))) + +#define sk_X509_ATTRIBUTE_delete_ptr(sk, p) \ + ((X509_ATTRIBUTE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(void *, X509_ATTRIBUTE *, p))) + +#define sk_X509_ATTRIBUTE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_ATTRIBUTE *, p)) + +#define sk_X509_ATTRIBUTE_shift(sk) \ + ((X509_ATTRIBUTE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk))) + +#define sk_X509_ATTRIBUTE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(void *, X509_ATTRIBUTE *, p)) + +#define sk_X509_ATTRIBUTE_pop(sk) \ + ((X509_ATTRIBUTE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk))) + +#define sk_X509_ATTRIBUTE_dup(sk) \ + ((STACK_OF(X509_ATTRIBUTE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_ATTRIBUTE) *, sk))) + +#define sk_X509_ATTRIBUTE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk)) + +#define sk_X509_ATTRIBUTE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_ATTRIBUTE) *, sk)) + +#define sk_X509_ATTRIBUTE_set_cmp_func(sk, comp) \ + ((int (*)(const X509_ATTRIBUTE **a, const X509_ATTRIBUTE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_ATTRIBUTE **a, \ + const X509_ATTRIBUTE **b), \ + comp))) + +#define sk_X509_ATTRIBUTE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_ATTRIBUTE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_ATTRIBUTE) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_ATTRIBUTE *(*)(X509_ATTRIBUTE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_ATTRIBUTE *), free_func))) + +/* X509_CRL */ +#define sk_X509_CRL_new(comp) \ + ((STACK_OF(X509_CRL) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_CRL **a, const X509_CRL **b), comp))) + +#define sk_X509_CRL_new_null() ((STACK_OF(X509_CRL) *)sk_new_null()) + +#define sk_X509_CRL_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk)) + +#define sk_X509_CRL_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk)); + +#define sk_X509_CRL_value(sk, i) \ + ((X509_CRL *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_CRL) *, sk), (i))) + +#define sk_X509_CRL_set(sk, i, p) \ + ((X509_CRL *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), (i), \ + CHECKED_CAST(void *, X509_CRL *, p))) + +#define sk_X509_CRL_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk)) + +#define sk_X509_CRL_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_CRL *), free_func)) + +#define sk_X509_CRL_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(void *, X509_CRL *, p), (where)) + +#define sk_X509_CRL_delete(sk, where) \ + ((X509_CRL *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + (where))) + +#define sk_X509_CRL_delete_ptr(sk, p) \ + ((X509_CRL *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(void *, X509_CRL *, p))) + +#define sk_X509_CRL_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_CRL *, p)) + +#define sk_X509_CRL_shift(sk) \ + ((X509_CRL *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk))) + +#define sk_X509_CRL_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(void *, X509_CRL *, p)) + +#define sk_X509_CRL_pop(sk) \ + ((X509_CRL *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk))) + +#define sk_X509_CRL_dup(sk) \ + ((STACK_OF(X509_CRL) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_CRL) *, sk))) + +#define sk_X509_CRL_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk)) + +#define sk_X509_CRL_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_CRL) *, sk)) + +#define sk_X509_CRL_set_cmp_func(sk, comp) \ + ((int (*)(const X509_CRL **a, const X509_CRL **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_CRL **a, const X509_CRL **b), comp))) + +#define sk_X509_CRL_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_CRL) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_CRL) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_CRL *(*)(X509_CRL *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_CRL *), free_func))) + +/* X509_EXTENSION */ +#define sk_X509_EXTENSION_new(comp) \ + ((STACK_OF(X509_EXTENSION) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_EXTENSION **a, const X509_EXTENSION **b), comp))) + +#define sk_X509_EXTENSION_new_null() ((STACK_OF(X509_EXTENSION) *)sk_new_null()) + +#define sk_X509_EXTENSION_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk)) + +#define sk_X509_EXTENSION_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk)); + +#define sk_X509_EXTENSION_value(sk, i) \ + ((X509_EXTENSION *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_EXTENSION) *, sk), (i))) + +#define sk_X509_EXTENSION_set(sk, i, p) \ + ((X509_EXTENSION *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), (i), \ + CHECKED_CAST(void *, X509_EXTENSION *, p))) + +#define sk_X509_EXTENSION_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk)) + +#define sk_X509_EXTENSION_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_EXTENSION *), free_func)) + +#define sk_X509_EXTENSION_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(void *, X509_EXTENSION *, p), (where)) + +#define sk_X509_EXTENSION_delete(sk, where) \ + ((X509_EXTENSION *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), (where))) + +#define sk_X509_EXTENSION_delete_ptr(sk, p) \ + ((X509_EXTENSION *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(void *, X509_EXTENSION *, p))) + +#define sk_X509_EXTENSION_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_EXTENSION *, p)) + +#define sk_X509_EXTENSION_shift(sk) \ + ((X509_EXTENSION *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk))) + +#define sk_X509_EXTENSION_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(void *, X509_EXTENSION *, p)) + +#define sk_X509_EXTENSION_pop(sk) \ + ((X509_EXTENSION *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk))) + +#define sk_X509_EXTENSION_dup(sk) \ + ((STACK_OF(X509_EXTENSION) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_EXTENSION) *, sk))) + +#define sk_X509_EXTENSION_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk)) + +#define sk_X509_EXTENSION_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_EXTENSION) *, sk)) + +#define sk_X509_EXTENSION_set_cmp_func(sk, comp) \ + ((int (*)(const X509_EXTENSION **a, const X509_EXTENSION **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_EXTENSION **a, \ + const X509_EXTENSION **b), \ + comp))) + +#define sk_X509_EXTENSION_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_EXTENSION) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_EXTENSION) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_EXTENSION *(*)(X509_EXTENSION *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_EXTENSION *), free_func))) + +/* X509_INFO */ +#define sk_X509_INFO_new(comp) \ + ((STACK_OF(X509_INFO) *)sk_new( \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_INFO **a, const X509_INFO **b), comp))) + +#define sk_X509_INFO_new_null() ((STACK_OF(X509_INFO) *)sk_new_null()) + +#define sk_X509_INFO_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk)) + +#define sk_X509_INFO_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk)); + +#define sk_X509_INFO_value(sk, i) \ + ((X509_INFO *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_INFO) *, sk), (i))) + +#define sk_X509_INFO_set(sk, i, p) \ + ((X509_INFO *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), (i), \ + CHECKED_CAST(void *, X509_INFO *, p))) + +#define sk_X509_INFO_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk)) + +#define sk_X509_INFO_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_INFO *), free_func)) + +#define sk_X509_INFO_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(void *, X509_INFO *, p), (where)) + +#define sk_X509_INFO_delete(sk, where) \ + ((X509_INFO *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + (where))) + +#define sk_X509_INFO_delete_ptr(sk, p) \ + ((X509_INFO *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(void *, X509_INFO *, p))) + +#define sk_X509_INFO_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_INFO *, p)) + +#define sk_X509_INFO_shift(sk) \ + ((X509_INFO *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk))) + +#define sk_X509_INFO_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(void *, X509_INFO *, p)) + +#define sk_X509_INFO_pop(sk) \ + ((X509_INFO *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk))) + +#define sk_X509_INFO_dup(sk) \ + ((STACK_OF(X509_INFO) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_INFO) *, sk))) + +#define sk_X509_INFO_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk)) + +#define sk_X509_INFO_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_INFO) *, sk)) + +#define sk_X509_INFO_set_cmp_func(sk, comp) \ + ((int (*)(const X509_INFO **a, const X509_INFO **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_INFO **a, const X509_INFO **b), comp))) + +#define sk_X509_INFO_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_INFO) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_INFO) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_INFO *(*)(X509_INFO *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_INFO *), free_func))) + +/* X509_LOOKUP */ +#define sk_X509_LOOKUP_new(comp) \ + ((STACK_OF(X509_LOOKUP) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_LOOKUP **a, const X509_LOOKUP **b), \ + comp))) + +#define sk_X509_LOOKUP_new_null() ((STACK_OF(X509_LOOKUP) *)sk_new_null()) + +#define sk_X509_LOOKUP_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk)) + +#define sk_X509_LOOKUP_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk)); + +#define sk_X509_LOOKUP_value(sk, i) \ + ((X509_LOOKUP *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_LOOKUP) *, sk), (i))) + +#define sk_X509_LOOKUP_set(sk, i, p) \ + ((X509_LOOKUP *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + (i), CHECKED_CAST(void *, X509_LOOKUP *, p))) + +#define sk_X509_LOOKUP_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk)) + +#define sk_X509_LOOKUP_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_LOOKUP *), free_func)) + +#define sk_X509_LOOKUP_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(void *, X509_LOOKUP *, p), (where)) + +#define sk_X509_LOOKUP_delete(sk, where) \ + ((X509_LOOKUP *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), (where))) + +#define sk_X509_LOOKUP_delete_ptr(sk, p) \ + ((X509_LOOKUP *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(void *, X509_LOOKUP *, p))) + +#define sk_X509_LOOKUP_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_LOOKUP *, p)) + +#define sk_X509_LOOKUP_shift(sk) \ + ((X509_LOOKUP *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk))) + +#define sk_X509_LOOKUP_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(void *, X509_LOOKUP *, p)) + +#define sk_X509_LOOKUP_pop(sk) \ + ((X509_LOOKUP *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk))) + +#define sk_X509_LOOKUP_dup(sk) \ + ((STACK_OF(X509_LOOKUP) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_LOOKUP) *, sk))) + +#define sk_X509_LOOKUP_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk)) + +#define sk_X509_LOOKUP_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_LOOKUP) *, sk)) + +#define sk_X509_LOOKUP_set_cmp_func(sk, comp) \ + ((int (*)(const X509_LOOKUP **a, const X509_LOOKUP **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_LOOKUP **a, const X509_LOOKUP **b), \ + comp))) + +#define sk_X509_LOOKUP_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_LOOKUP) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_LOOKUP) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_LOOKUP *(*)(X509_LOOKUP *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_LOOKUP *), free_func))) + +/* X509_NAME */ +#define sk_X509_NAME_new(comp) \ + ((STACK_OF(X509_NAME) *)sk_new( \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_NAME **a, const X509_NAME **b), comp))) + +#define sk_X509_NAME_new_null() ((STACK_OF(X509_NAME) *)sk_new_null()) + +#define sk_X509_NAME_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk)) + +#define sk_X509_NAME_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk)); + +#define sk_X509_NAME_value(sk, i) \ + ((X509_NAME *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME) *, sk), (i))) + +#define sk_X509_NAME_set(sk, i, p) \ + ((X509_NAME *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), (i), \ + CHECKED_CAST(void *, X509_NAME *, p))) + +#define sk_X509_NAME_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk)) + +#define sk_X509_NAME_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_NAME *), free_func)) + +#define sk_X509_NAME_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(void *, X509_NAME *, p), (where)) + +#define sk_X509_NAME_delete(sk, where) \ + ((X509_NAME *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + (where))) + +#define sk_X509_NAME_delete_ptr(sk, p) \ + ((X509_NAME *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(void *, X509_NAME *, p))) + +#define sk_X509_NAME_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_NAME *, p)) + +#define sk_X509_NAME_shift(sk) \ + ((X509_NAME *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk))) + +#define sk_X509_NAME_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(void *, X509_NAME *, p)) + +#define sk_X509_NAME_pop(sk) \ + ((X509_NAME *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk))) + +#define sk_X509_NAME_dup(sk) \ + ((STACK_OF(X509_NAME) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME) *, sk))) + +#define sk_X509_NAME_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk)) + +#define sk_X509_NAME_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME) *, sk)) + +#define sk_X509_NAME_set_cmp_func(sk, comp) \ + ((int (*)(const X509_NAME **a, const X509_NAME **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_NAME **a, const X509_NAME **b), comp))) + +#define sk_X509_NAME_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_NAME) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_NAME) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_NAME *(*)(X509_NAME *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_NAME *), free_func))) + +/* X509_NAME_ENTRY */ +#define sk_X509_NAME_ENTRY_new(comp) \ + ((STACK_OF(X509_NAME_ENTRY) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_NAME_ENTRY **a, const X509_NAME_ENTRY **b), comp))) + +#define sk_X509_NAME_ENTRY_new_null() \ + ((STACK_OF(X509_NAME_ENTRY) *)sk_new_null()) + +#define sk_X509_NAME_ENTRY_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk)) + +#define sk_X509_NAME_ENTRY_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk)); + +#define sk_X509_NAME_ENTRY_value(sk, i) \ + ((X509_NAME_ENTRY *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME_ENTRY) *, sk), (i))) + +#define sk_X509_NAME_ENTRY_set(sk, i, p) \ + ((X509_NAME_ENTRY *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), (i), \ + CHECKED_CAST(void *, X509_NAME_ENTRY *, p))) + +#define sk_X509_NAME_ENTRY_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk)) + +#define sk_X509_NAME_ENTRY_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_NAME_ENTRY *), free_func)) + +#define sk_X509_NAME_ENTRY_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, X509_NAME_ENTRY *, p), (where)) + +#define sk_X509_NAME_ENTRY_delete(sk, where) \ + ((X509_NAME_ENTRY *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), (where))) + +#define sk_X509_NAME_ENTRY_delete_ptr(sk, p) \ + ((X509_NAME_ENTRY *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, X509_NAME_ENTRY *, p))) + +#define sk_X509_NAME_ENTRY_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + (out_index), CHECKED_CAST(void *, X509_NAME_ENTRY *, p)) + +#define sk_X509_NAME_ENTRY_shift(sk) \ + ((X509_NAME_ENTRY *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk))) + +#define sk_X509_NAME_ENTRY_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *, X509_NAME_ENTRY *, p)) + +#define sk_X509_NAME_ENTRY_pop(sk) \ + ((X509_NAME_ENTRY *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk))) + +#define sk_X509_NAME_ENTRY_dup(sk) \ + ((STACK_OF(X509_NAME_ENTRY) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME_ENTRY) *, sk))) + +#define sk_X509_NAME_ENTRY_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk)) + +#define sk_X509_NAME_ENTRY_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_NAME_ENTRY) *, sk)) + +#define sk_X509_NAME_ENTRY_set_cmp_func(sk, comp) \ + ((int (*)(const X509_NAME_ENTRY **a, const X509_NAME_ENTRY **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_NAME_ENTRY **a, \ + const X509_NAME_ENTRY **b), \ + comp))) + +#define sk_X509_NAME_ENTRY_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_NAME_ENTRY) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_NAME_ENTRY) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_NAME_ENTRY *(*)(X509_NAME_ENTRY *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_NAME_ENTRY *), free_func))) + +/* X509_OBJECT */ +#define sk_X509_OBJECT_new(comp) \ + ((STACK_OF(X509_OBJECT) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_OBJECT **a, const X509_OBJECT **b), \ + comp))) + +#define sk_X509_OBJECT_new_null() ((STACK_OF(X509_OBJECT) *)sk_new_null()) + +#define sk_X509_OBJECT_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk)) + +#define sk_X509_OBJECT_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk)); + +#define sk_X509_OBJECT_value(sk, i) \ + ((X509_OBJECT *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_OBJECT) *, sk), (i))) + +#define sk_X509_OBJECT_set(sk, i, p) \ + ((X509_OBJECT *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + (i), CHECKED_CAST(void *, X509_OBJECT *, p))) + +#define sk_X509_OBJECT_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk)) + +#define sk_X509_OBJECT_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_OBJECT *), free_func)) + +#define sk_X509_OBJECT_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(void *, X509_OBJECT *, p), (where)) + +#define sk_X509_OBJECT_delete(sk, where) \ + ((X509_OBJECT *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), (where))) + +#define sk_X509_OBJECT_delete_ptr(sk, p) \ + ((X509_OBJECT *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(void *, X509_OBJECT *, p))) + +#define sk_X509_OBJECT_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_OBJECT *, p)) + +#define sk_X509_OBJECT_shift(sk) \ + ((X509_OBJECT *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk))) + +#define sk_X509_OBJECT_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(void *, X509_OBJECT *, p)) + +#define sk_X509_OBJECT_pop(sk) \ + ((X509_OBJECT *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk))) + +#define sk_X509_OBJECT_dup(sk) \ + ((STACK_OF(X509_OBJECT) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_OBJECT) *, sk))) + +#define sk_X509_OBJECT_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk)) + +#define sk_X509_OBJECT_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_OBJECT) *, sk)) + +#define sk_X509_OBJECT_set_cmp_func(sk, comp) \ + ((int (*)(const X509_OBJECT **a, const X509_OBJECT **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_OBJECT **a, const X509_OBJECT **b), \ + comp))) + +#define sk_X509_OBJECT_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_OBJECT) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_OBJECT) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_OBJECT *(*)(X509_OBJECT *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_OBJECT *), free_func))) + +/* X509_POLICY_DATA */ +#define sk_X509_POLICY_DATA_new(comp) \ + ((STACK_OF(X509_POLICY_DATA) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_POLICY_DATA **a, const X509_POLICY_DATA **b), comp))) + +#define sk_X509_POLICY_DATA_new_null() \ + ((STACK_OF(X509_POLICY_DATA) *)sk_new_null()) + +#define sk_X509_POLICY_DATA_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk)) + +#define sk_X509_POLICY_DATA_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk)); + +#define sk_X509_POLICY_DATA_value(sk, i) \ + ((X509_POLICY_DATA *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_DATA) *, sk), (i))) + +#define sk_X509_POLICY_DATA_set(sk, i, p) \ + ((X509_POLICY_DATA *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), (i), \ + CHECKED_CAST(void *, X509_POLICY_DATA *, p))) + +#define sk_X509_POLICY_DATA_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk)) + +#define sk_X509_POLICY_DATA_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_POLICY_DATA *), free_func)) + +#define sk_X509_POLICY_DATA_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_DATA *, p), (where)) + +#define sk_X509_POLICY_DATA_delete(sk, where) \ + ((X509_POLICY_DATA *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), (where))) + +#define sk_X509_POLICY_DATA_delete_ptr(sk, p) \ + ((X509_POLICY_DATA *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_DATA *, p))) + +#define sk_X509_POLICY_DATA_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + (out_index), CHECKED_CAST(void *, X509_POLICY_DATA *, p)) + +#define sk_X509_POLICY_DATA_shift(sk) \ + ((X509_POLICY_DATA *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk))) + +#define sk_X509_POLICY_DATA_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_DATA *, p)) + +#define sk_X509_POLICY_DATA_pop(sk) \ + ((X509_POLICY_DATA *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk))) + +#define sk_X509_POLICY_DATA_dup(sk) \ + ((STACK_OF(X509_POLICY_DATA) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_DATA) *, sk))) + +#define sk_X509_POLICY_DATA_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk)) + +#define sk_X509_POLICY_DATA_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_DATA) *, sk)) + +#define sk_X509_POLICY_DATA_set_cmp_func(sk, comp) \ + ((int (*)(const X509_POLICY_DATA **a, const X509_POLICY_DATA **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_POLICY_DATA **a, \ + const X509_POLICY_DATA **b), \ + comp))) + +#define sk_X509_POLICY_DATA_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_POLICY_DATA) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_POLICY_DATA) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + X509_POLICY_DATA *(*)(X509_POLICY_DATA *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_POLICY_DATA *), \ + free_func))) + +/* X509_POLICY_NODE */ +#define sk_X509_POLICY_NODE_new(comp) \ + ((STACK_OF(X509_POLICY_NODE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_POLICY_NODE **a, const X509_POLICY_NODE **b), comp))) + +#define sk_X509_POLICY_NODE_new_null() \ + ((STACK_OF(X509_POLICY_NODE) *)sk_new_null()) + +#define sk_X509_POLICY_NODE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk)) + +#define sk_X509_POLICY_NODE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk)); + +#define sk_X509_POLICY_NODE_value(sk, i) \ + ((X509_POLICY_NODE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_NODE) *, sk), (i))) + +#define sk_X509_POLICY_NODE_set(sk, i, p) \ + ((X509_POLICY_NODE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), (i), \ + CHECKED_CAST(void *, X509_POLICY_NODE *, p))) + +#define sk_X509_POLICY_NODE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk)) + +#define sk_X509_POLICY_NODE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_POLICY_NODE *), free_func)) + +#define sk_X509_POLICY_NODE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_NODE *, p), (where)) + +#define sk_X509_POLICY_NODE_delete(sk, where) \ + ((X509_POLICY_NODE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), (where))) + +#define sk_X509_POLICY_NODE_delete_ptr(sk, p) \ + ((X509_POLICY_NODE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_NODE *, p))) + +#define sk_X509_POLICY_NODE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + (out_index), CHECKED_CAST(void *, X509_POLICY_NODE *, p)) + +#define sk_X509_POLICY_NODE_shift(sk) \ + ((X509_POLICY_NODE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk))) + +#define sk_X509_POLICY_NODE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(void *, X509_POLICY_NODE *, p)) + +#define sk_X509_POLICY_NODE_pop(sk) \ + ((X509_POLICY_NODE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk))) + +#define sk_X509_POLICY_NODE_dup(sk) \ + ((STACK_OF(X509_POLICY_NODE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_NODE) *, sk))) + +#define sk_X509_POLICY_NODE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk)) + +#define sk_X509_POLICY_NODE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_POLICY_NODE) *, sk)) + +#define sk_X509_POLICY_NODE_set_cmp_func(sk, comp) \ + ((int (*)(const X509_POLICY_NODE **a, const X509_POLICY_NODE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_POLICY_NODE **a, \ + const X509_POLICY_NODE **b), \ + comp))) + +#define sk_X509_POLICY_NODE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_POLICY_NODE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_POLICY_NODE) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + X509_POLICY_NODE *(*)(X509_POLICY_NODE *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_POLICY_NODE *), \ + free_func))) + +/* X509_PURPOSE */ +#define sk_X509_PURPOSE_new(comp) \ + ((STACK_OF(X509_PURPOSE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_PURPOSE **a, const X509_PURPOSE **b), \ + comp))) + +#define sk_X509_PURPOSE_new_null() ((STACK_OF(X509_PURPOSE) *)sk_new_null()) + +#define sk_X509_PURPOSE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk)) + +#define sk_X509_PURPOSE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk)); + +#define sk_X509_PURPOSE_value(sk, i) \ + ((X509_PURPOSE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_PURPOSE) *, sk), (i))) + +#define sk_X509_PURPOSE_set(sk, i, p) \ + ((X509_PURPOSE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), (i), \ + CHECKED_CAST(void *, X509_PURPOSE *, p))) + +#define sk_X509_PURPOSE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk)) + +#define sk_X509_PURPOSE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_PURPOSE *), free_func)) + +#define sk_X509_PURPOSE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(void *, X509_PURPOSE *, p), (where)) + +#define sk_X509_PURPOSE_delete(sk, where) \ + ((X509_PURPOSE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), (where))) + +#define sk_X509_PURPOSE_delete_ptr(sk, p) \ + ((X509_PURPOSE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(void *, X509_PURPOSE *, p))) + +#define sk_X509_PURPOSE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_PURPOSE *, p)) + +#define sk_X509_PURPOSE_shift(sk) \ + ((X509_PURPOSE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk))) + +#define sk_X509_PURPOSE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(void *, X509_PURPOSE *, p)) + +#define sk_X509_PURPOSE_pop(sk) \ + ((X509_PURPOSE *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk))) + +#define sk_X509_PURPOSE_dup(sk) \ + ((STACK_OF(X509_PURPOSE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_PURPOSE) *, sk))) + +#define sk_X509_PURPOSE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk)) + +#define sk_X509_PURPOSE_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_PURPOSE) *, sk)) + +#define sk_X509_PURPOSE_set_cmp_func(sk, comp) \ + ((int (*)(const X509_PURPOSE **a, const X509_PURPOSE **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_PURPOSE **a, const X509_PURPOSE **b), \ + comp))) + +#define sk_X509_PURPOSE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_PURPOSE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_PURPOSE) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_PURPOSE *(*)(X509_PURPOSE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_PURPOSE *), free_func))) + +/* X509_REVOKED */ +#define sk_X509_REVOKED_new(comp) \ + ((STACK_OF(X509_REVOKED) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_REVOKED **a, const X509_REVOKED **b), \ + comp))) + +#define sk_X509_REVOKED_new_null() ((STACK_OF(X509_REVOKED) *)sk_new_null()) + +#define sk_X509_REVOKED_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk)) + +#define sk_X509_REVOKED_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk)); + +#define sk_X509_REVOKED_value(sk, i) \ + ((X509_REVOKED *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_REVOKED) *, sk), (i))) + +#define sk_X509_REVOKED_set(sk, i, p) \ + ((X509_REVOKED *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), (i), \ + CHECKED_CAST(void *, X509_REVOKED *, p))) + +#define sk_X509_REVOKED_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk)) + +#define sk_X509_REVOKED_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_REVOKED *), free_func)) + +#define sk_X509_REVOKED_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(void *, X509_REVOKED *, p), (where)) + +#define sk_X509_REVOKED_delete(sk, where) \ + ((X509_REVOKED *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), (where))) + +#define sk_X509_REVOKED_delete_ptr(sk, p) \ + ((X509_REVOKED *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(void *, X509_REVOKED *, p))) + +#define sk_X509_REVOKED_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_REVOKED *, p)) + +#define sk_X509_REVOKED_shift(sk) \ + ((X509_REVOKED *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk))) + +#define sk_X509_REVOKED_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(void *, X509_REVOKED *, p)) + +#define sk_X509_REVOKED_pop(sk) \ + ((X509_REVOKED *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk))) + +#define sk_X509_REVOKED_dup(sk) \ + ((STACK_OF(X509_REVOKED) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_REVOKED) *, sk))) + +#define sk_X509_REVOKED_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk)) + +#define sk_X509_REVOKED_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_REVOKED) *, sk)) + +#define sk_X509_REVOKED_set_cmp_func(sk, comp) \ + ((int (*)(const X509_REVOKED **a, const X509_REVOKED **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_REVOKED **a, const X509_REVOKED **b), \ + comp))) + +#define sk_X509_REVOKED_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_REVOKED) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_REVOKED) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_REVOKED *(*)(X509_REVOKED *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_REVOKED *), free_func))) + +/* X509_TRUST */ +#define sk_X509_TRUST_new(comp) \ + ((STACK_OF(X509_TRUST) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const X509_TRUST **a, const X509_TRUST **b), \ + comp))) + +#define sk_X509_TRUST_new_null() ((STACK_OF(X509_TRUST) *)sk_new_null()) + +#define sk_X509_TRUST_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk)) + +#define sk_X509_TRUST_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk)); + +#define sk_X509_TRUST_value(sk, i) \ + ((X509_TRUST *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_TRUST) *, sk), (i))) + +#define sk_X509_TRUST_set(sk, i, p) \ + ((X509_TRUST *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + (i), CHECKED_CAST(void *, X509_TRUST *, p))) + +#define sk_X509_TRUST_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk)) + +#define sk_X509_TRUST_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_TRUST *), free_func)) + +#define sk_X509_TRUST_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(void *, X509_TRUST *, p), (where)) + +#define sk_X509_TRUST_delete(sk, where) \ + ((X509_TRUST *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + (where))) + +#define sk_X509_TRUST_delete_ptr(sk, p) \ + ((X509_TRUST *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(void *, X509_TRUST *, p))) + +#define sk_X509_TRUST_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), (out_index), \ + CHECKED_CAST(void *, X509_TRUST *, p)) + +#define sk_X509_TRUST_shift(sk) \ + ((X509_TRUST *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk))) + +#define sk_X509_TRUST_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(void *, X509_TRUST *, p)) + +#define sk_X509_TRUST_pop(sk) \ + ((X509_TRUST *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk))) + +#define sk_X509_TRUST_dup(sk) \ + ((STACK_OF(X509_TRUST) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_TRUST) *, sk))) + +#define sk_X509_TRUST_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk)) + +#define sk_X509_TRUST_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_TRUST) *, sk)) + +#define sk_X509_TRUST_set_cmp_func(sk, comp) \ + ((int (*)(const X509_TRUST **a, const X509_TRUST **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const X509_TRUST **a, const X509_TRUST **b), \ + comp))) + +#define sk_X509_TRUST_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_TRUST) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_TRUST) *, sk), \ + CHECKED_CAST(void *(*)(void *), X509_TRUST *(*)(X509_TRUST *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_TRUST *), free_func))) + +/* X509_VERIFY_PARAM */ +#define sk_X509_VERIFY_PARAM_new(comp) \ + ((STACK_OF(X509_VERIFY_PARAM) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const X509_VERIFY_PARAM **a, const X509_VERIFY_PARAM **b), \ + comp))) + +#define sk_X509_VERIFY_PARAM_new_null() \ + ((STACK_OF(X509_VERIFY_PARAM) *)sk_new_null()) + +#define sk_X509_VERIFY_PARAM_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk)) + +#define sk_X509_VERIFY_PARAM_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk)); + +#define sk_X509_VERIFY_PARAM_value(sk, i) \ + ((X509_VERIFY_PARAM *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_VERIFY_PARAM) *, sk), (i))) + +#define sk_X509_VERIFY_PARAM_set(sk, i, p) \ + ((X509_VERIFY_PARAM *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), (i), \ + CHECKED_CAST(void *, X509_VERIFY_PARAM *, p))) + +#define sk_X509_VERIFY_PARAM_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk)) + +#define sk_X509_VERIFY_PARAM_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_VERIFY_PARAM *), \ + free_func)) + +#define sk_X509_VERIFY_PARAM_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(void *, X509_VERIFY_PARAM *, p), (where)) + +#define sk_X509_VERIFY_PARAM_delete(sk, where) \ + ((X509_VERIFY_PARAM *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), (where))) + +#define sk_X509_VERIFY_PARAM_delete_ptr(sk, p) \ + ((X509_VERIFY_PARAM *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(void *, X509_VERIFY_PARAM *, p))) + +#define sk_X509_VERIFY_PARAM_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + (out_index), CHECKED_CAST(void *, X509_VERIFY_PARAM *, p)) + +#define sk_X509_VERIFY_PARAM_shift(sk) \ + ((X509_VERIFY_PARAM *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk))) + +#define sk_X509_VERIFY_PARAM_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(void *, X509_VERIFY_PARAM *, p)) + +#define sk_X509_VERIFY_PARAM_pop(sk) \ + ((X509_VERIFY_PARAM *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk))) + +#define sk_X509_VERIFY_PARAM_dup(sk) \ + ((STACK_OF(X509_VERIFY_PARAM) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(X509_VERIFY_PARAM) *, sk))) + +#define sk_X509_VERIFY_PARAM_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk)) + +#define sk_X509_VERIFY_PARAM_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(X509_VERIFY_PARAM) *, sk)) + +#define sk_X509_VERIFY_PARAM_set_cmp_func(sk, comp) \ + ((int (*)(const X509_VERIFY_PARAM **a, const X509_VERIFY_PARAM **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const X509_VERIFY_PARAM **a, \ + const X509_VERIFY_PARAM **b), \ + comp))) + +#define sk_X509_VERIFY_PARAM_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(X509_VERIFY_PARAM) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(X509_VERIFY_PARAM) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + X509_VERIFY_PARAM *(*)(X509_VERIFY_PARAM *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(X509_VERIFY_PARAM *), \ + free_func))) + +/* void */ +#define sk_void_new(comp) \ + ((STACK_OF(void)*)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const void **a, const void **b), comp))) + +#define sk_void_new_null() ((STACK_OF(void)*)sk_new_null()) + +#define sk_void_num(sk) sk_num(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk)) + +#define sk_void_zero(sk) sk_zero(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk)); + +#define sk_void_value(sk, i) \ + ((void *)sk_value(CHECKED_CAST(_STACK *, const STACK_OF(void) *, sk), (i))) + +#define sk_void_set(sk, i, p) \ + ((void *)sk_set(CHECKED_CAST(_STACK *, STACK_OF(void)*, sk), (i), \ + CHECKED_CAST(void *, void *, p))) + +#define sk_void_free(sk) sk_free(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk)) + +#define sk_void_pop_free(sk, free_func) \ + sk_pop_free(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(void *), free_func)) + +#define sk_void_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk), \ + CHECKED_CAST(void *, void *, p), (where)) + +#define sk_void_delete(sk, where) \ + ((void *)sk_delete(CHECKED_CAST(_STACK *, STACK_OF(void)*, sk), (where))) + +#define sk_void_delete_ptr(sk, p) \ + ((void *)sk_delete_ptr(CHECKED_CAST(_STACK *, STACK_OF(void)*, sk), \ + CHECKED_CAST(void *, void *, p))) + +#define sk_void_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk), (out_index), \ + CHECKED_CAST(void *, void *, p)) + +#define sk_void_shift(sk) \ + ((void *)sk_shift(CHECKED_CAST(_STACK *, STACK_OF(void)*, sk))) + +#define sk_void_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk), \ + CHECKED_CAST(void *, void *, p)) + +#define sk_void_pop(sk) \ + ((void *)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(void)*, sk))) + +#define sk_void_dup(sk) \ + ((STACK_OF(void)*)sk_dup(CHECKED_CAST(_STACK *, const STACK_OF(void) *, sk))) + +#define sk_void_sort(sk) sk_sort(CHECKED_CAST(_STACK *, STACK_OF(void) *, sk)) + +#define sk_void_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(void) *, sk)) + +#define sk_void_set_cmp_func(sk, comp) \ + ((int (*)(const void **a, const void **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(void)*, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const void **a, const void **b), \ + comp))) + +#define sk_void_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(void)*)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(void) *, sk), \ + CHECKED_CAST(void *(*)(void *), void *(*)(void *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(void *), free_func))) + +/* SRTP_PROTECTION_PROFILE */ +#define sk_SRTP_PROTECTION_PROFILE_new(comp) \ + ((STACK_OF(SRTP_PROTECTION_PROFILE) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const const SRTP_PROTECTION_PROFILE **a, \ + const const SRTP_PROTECTION_PROFILE **b), \ + comp))) + +#define sk_SRTP_PROTECTION_PROFILE_new_null() \ + ((STACK_OF(SRTP_PROTECTION_PROFILE) *)sk_new_null()) + +#define sk_SRTP_PROTECTION_PROFILE_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk)) + +#define sk_SRTP_PROTECTION_PROFILE_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk)); + +#define sk_SRTP_PROTECTION_PROFILE_value(sk, i) \ + ((const SRTP_PROTECTION_PROFILE *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + (i))) + +#define sk_SRTP_PROTECTION_PROFILE_set(sk, i, p) \ + ((const SRTP_PROTECTION_PROFILE *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), (i), \ + CHECKED_CAST(void *, const SRTP_PROTECTION_PROFILE *, p))) + +#define sk_SRTP_PROTECTION_PROFILE_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk)) + +#define sk_SRTP_PROTECTION_PROFILE_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + CHECKED_CAST(void (*)(void *), \ + void (*)(const SRTP_PROTECTION_PROFILE *), free_func)) + +#define sk_SRTP_PROTECTION_PROFILE_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + CHECKED_CAST(void *, const SRTP_PROTECTION_PROFILE *, p), (where)) + +#define sk_SRTP_PROTECTION_PROFILE_delete(sk, where) \ + ((const SRTP_PROTECTION_PROFILE *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + (where))) + +#define sk_SRTP_PROTECTION_PROFILE_delete_ptr(sk, p) \ + ((const SRTP_PROTECTION_PROFILE *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + CHECKED_CAST(void *, const SRTP_PROTECTION_PROFILE *, p))) + +#define sk_SRTP_PROTECTION_PROFILE_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + (out_index), \ + CHECKED_CAST(void *, const SRTP_PROTECTION_PROFILE *, p)) + +#define sk_SRTP_PROTECTION_PROFILE_shift(sk) \ + ((const SRTP_PROTECTION_PROFILE *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk))) + +#define sk_SRTP_PROTECTION_PROFILE_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + CHECKED_CAST(void *, const SRTP_PROTECTION_PROFILE *, p)) + +#define sk_SRTP_PROTECTION_PROFILE_pop(sk) \ + ((const SRTP_PROTECTION_PROFILE *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk))) + +#define sk_SRTP_PROTECTION_PROFILE_dup(sk) \ + ((STACK_OF(SRTP_PROTECTION_PROFILE) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(SRTP_PROTECTION_PROFILE) *, sk))) + +#define sk_SRTP_PROTECTION_PROFILE_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk)) + +#define sk_SRTP_PROTECTION_PROFILE_is_sorted(sk) \ + sk_is_sorted( \ + CHECKED_CAST(_STACK *, const STACK_OF(SRTP_PROTECTION_PROFILE) *, sk)) + +#define sk_SRTP_PROTECTION_PROFILE_set_cmp_func(sk, comp) \ + ((int (*)(const SRTP_PROTECTION_PROFILE **a, \ + const SRTP_PROTECTION_PROFILE **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(SRTP_PROTECTION_PROFILE) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const SRTP_PROTECTION_PROFILE **a, \ + const SRTP_PROTECTION_PROFILE **b), \ + comp))) + +#define sk_SRTP_PROTECTION_PROFILE_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(SRTP_PROTECTION_PROFILE) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(SRTP_PROTECTION_PROFILE) *, \ + sk), \ + CHECKED_CAST(void *(*)(void *), const SRTP_PROTECTION_PROFILE *(*)( \ + const SRTP_PROTECTION_PROFILE *), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), \ + void (*)(const SRTP_PROTECTION_PROFILE *), free_func))) + +/* SSL_CIPHER */ +#define sk_SSL_CIPHER_new(comp) \ + ((STACK_OF(SSL_CIPHER) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const const SSL_CIPHER **a, const const SSL_CIPHER **b), comp))) + +#define sk_SSL_CIPHER_new_null() ((STACK_OF(SSL_CIPHER) *)sk_new_null()) + +#define sk_SSL_CIPHER_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk)) + +#define sk_SSL_CIPHER_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk)); + +#define sk_SSL_CIPHER_value(sk, i) \ + ((const SSL_CIPHER *)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_CIPHER) *, sk), (i))) + +#define sk_SSL_CIPHER_set(sk, i, p) \ + ((const SSL_CIPHER *)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), (i), \ + CHECKED_CAST(void *, const SSL_CIPHER *, p))) + +#define sk_SSL_CIPHER_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk)) + +#define sk_SSL_CIPHER_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(const SSL_CIPHER *), free_func)) + +#define sk_SSL_CIPHER_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(void *, const SSL_CIPHER *, p), (where)) + +#define sk_SSL_CIPHER_delete(sk, where) \ + ((const SSL_CIPHER *)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), (where))) + +#define sk_SSL_CIPHER_delete_ptr(sk, p) \ + ((const SSL_CIPHER *)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(void *, const SSL_CIPHER *, p))) + +#define sk_SSL_CIPHER_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), (out_index), \ + CHECKED_CAST(void *, const SSL_CIPHER *, p)) + +#define sk_SSL_CIPHER_shift(sk) \ + ((const SSL_CIPHER *)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk))) + +#define sk_SSL_CIPHER_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(void *, const SSL_CIPHER *, p)) + +#define sk_SSL_CIPHER_pop(sk) \ + ((const SSL_CIPHER *)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk))) + +#define sk_SSL_CIPHER_dup(sk) \ + ((STACK_OF(SSL_CIPHER) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(SSL_CIPHER) *, sk))) + +#define sk_SSL_CIPHER_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk)) + +#define sk_SSL_CIPHER_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(SSL_CIPHER) *, sk)) + +#define sk_SSL_CIPHER_set_cmp_func(sk, comp) \ + ((int (*)(const SSL_CIPHER **a, const SSL_CIPHER **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const SSL_CIPHER **a, const SSL_CIPHER **b), \ + comp))) + +#define sk_SSL_CIPHER_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(SSL_CIPHER) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(SSL_CIPHER) *, sk), \ + CHECKED_CAST(void *(*)(void *), \ + const SSL_CIPHER *(*)(const SSL_CIPHER *), copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(const SSL_CIPHER *), \ + free_func))) + +/* OPENSSL_STRING */ +#define sk_OPENSSL_STRING_new(comp) \ + ((STACK_OF(OPENSSL_STRING) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, \ + int (*)(const OPENSSL_STRING *a, const OPENSSL_STRING *b), comp))) + +#define sk_OPENSSL_STRING_new_null() ((STACK_OF(OPENSSL_STRING) *)sk_new_null()) + +#define sk_OPENSSL_STRING_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk)) + +#define sk_OPENSSL_STRING_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk)); + +#define sk_OPENSSL_STRING_value(sk, i) \ + ((OPENSSL_STRING)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_STRING) *, sk), (i))) + +#define sk_OPENSSL_STRING_set(sk, i, p) \ + ((OPENSSL_STRING)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), (i), \ + CHECKED_CAST(void *, OPENSSL_STRING, p))) + +#define sk_OPENSSL_STRING_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk)) + +#define sk_OPENSSL_STRING_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(OPENSSL_STRING), free_func)) + +#define sk_OPENSSL_STRING_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(void *, OPENSSL_STRING, p), (where)) + +#define sk_OPENSSL_STRING_delete(sk, where) \ + ((OPENSSL_STRING)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), (where))) + +#define sk_OPENSSL_STRING_delete_ptr(sk, p) \ + ((OPENSSL_STRING)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(void *, OPENSSL_STRING, p))) + +#define sk_OPENSSL_STRING_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), (out_index), \ + CHECKED_CAST(void *, OPENSSL_STRING, p)) + +#define sk_OPENSSL_STRING_shift(sk) \ + ((OPENSSL_STRING)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk))) + +#define sk_OPENSSL_STRING_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(void *, OPENSSL_STRING, p)) + +#define sk_OPENSSL_STRING_pop(sk) \ + ((OPENSSL_STRING)sk_pop( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk))) + +#define sk_OPENSSL_STRING_dup(sk) \ + ((STACK_OF(OPENSSL_STRING) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_STRING) *, sk))) + +#define sk_OPENSSL_STRING_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk)) + +#define sk_OPENSSL_STRING_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_STRING) *, sk)) + +#define sk_OPENSSL_STRING_set_cmp_func(sk, comp) \ + ((int (*)(const OPENSSL_STRING **a, const OPENSSL_STRING **b)) \ + sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(stack_cmp_func, int (*)(const OPENSSL_STRING **a, \ + const OPENSSL_STRING **b), \ + comp))) + +#define sk_OPENSSL_STRING_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(OPENSSL_STRING) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(OPENSSL_STRING) *, sk), \ + CHECKED_CAST(void *(*)(void *), OPENSSL_STRING (*)(OPENSSL_STRING), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(OPENSSL_STRING), free_func))) + +/* OPENSSL_BLOCK */ +#define sk_OPENSSL_BLOCK_new(comp) \ + ((STACK_OF(OPENSSL_BLOCK) *)sk_new(CHECKED_CAST( \ + stack_cmp_func, int (*)(const OPENSSL_BLOCK *a, const OPENSSL_BLOCK *b), \ + comp))) + +#define sk_OPENSSL_BLOCK_new_null() ((STACK_OF(OPENSSL_BLOCK) *)sk_new_null()) + +#define sk_OPENSSL_BLOCK_num(sk) \ + sk_num(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk)) + +#define sk_OPENSSL_BLOCK_zero(sk) \ + sk_zero(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk)); + +#define sk_OPENSSL_BLOCK_value(sk, i) \ + ((OPENSSL_BLOCK)sk_value( \ + CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_BLOCK) *, sk), (i))) + +#define sk_OPENSSL_BLOCK_set(sk, i, p) \ + ((OPENSSL_BLOCK)sk_set( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), (i), \ + CHECKED_CAST(void *, OPENSSL_BLOCK, p))) + +#define sk_OPENSSL_BLOCK_free(sk) \ + sk_free(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk)) + +#define sk_OPENSSL_BLOCK_pop_free(sk, free_func) \ + sk_pop_free( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(void (*)(void *), void (*)(OPENSSL_BLOCK), free_func)) + +#define sk_OPENSSL_BLOCK_insert(sk, p, where) \ + sk_insert(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(void *, OPENSSL_BLOCK, p), (where)) + +#define sk_OPENSSL_BLOCK_delete(sk, where) \ + ((OPENSSL_BLOCK)sk_delete( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), (where))) + +#define sk_OPENSSL_BLOCK_delete_ptr(sk, p) \ + ((OPENSSL_BLOCK)sk_delete_ptr( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(void *, OPENSSL_BLOCK, p))) + +#define sk_OPENSSL_BLOCK_find(sk, out_index, p) \ + sk_find(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), (out_index), \ + CHECKED_CAST(void *, OPENSSL_BLOCK, p)) + +#define sk_OPENSSL_BLOCK_shift(sk) \ + ((OPENSSL_BLOCK)sk_shift( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk))) + +#define sk_OPENSSL_BLOCK_push(sk, p) \ + sk_push(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(void *, OPENSSL_BLOCK, p)) + +#define sk_OPENSSL_BLOCK_pop(sk) \ + ((OPENSSL_BLOCK)sk_pop(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk))) + +#define sk_OPENSSL_BLOCK_dup(sk) \ + ((STACK_OF(OPENSSL_BLOCK) *)sk_dup( \ + CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_BLOCK) *, sk))) + +#define sk_OPENSSL_BLOCK_sort(sk) \ + sk_sort(CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk)) + +#define sk_OPENSSL_BLOCK_is_sorted(sk) \ + sk_is_sorted(CHECKED_CAST(_STACK *, const STACK_OF(OPENSSL_BLOCK) *, sk)) + +#define sk_OPENSSL_BLOCK_set_cmp_func(sk, comp) \ + ((int (*)(const OPENSSL_BLOCK **a, const OPENSSL_BLOCK **b))sk_set_cmp_func( \ + CHECKED_CAST(_STACK *, STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(stack_cmp_func, \ + int (*)(const OPENSSL_BLOCK **a, const OPENSSL_BLOCK **b), \ + comp))) + +#define sk_OPENSSL_BLOCK_deep_copy(sk, copy_func, free_func) \ + ((STACK_OF(OPENSSL_BLOCK) *)sk_deep_copy( \ + CHECKED_CAST(const _STACK *, const STACK_OF(OPENSSL_BLOCK) *, sk), \ + CHECKED_CAST(void *(*)(void *), OPENSSL_BLOCK (*)(OPENSSL_BLOCK), \ + copy_func), \ + CHECKED_CAST(void (*)(void *), void (*)(OPENSSL_BLOCK), free_func))) diff --git a/project/jni/boringssl/include/openssl/thread.h b/project/jni/boringssl/include/openssl/thread.h new file mode 100644 index 000000000..568a85833 --- /dev/null +++ b/project/jni/boringssl/include/openssl/thread.h @@ -0,0 +1,173 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_THREAD_H +#define OPENSSL_HEADER_THREAD_H + +#include + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +#if defined(OPENSSL_NO_THREADS) +typedef struct crypto_mutex_st {} CRYPTO_MUTEX; +#elif defined(OPENSSL_WINDOWS) +/* CRYPTO_MUTEX can appear in public header files so we really don't want to + * pull in windows.h. It's statically asserted that this structure is large + * enough to contain a Windows CRITICAL_SECTION by thread_win.c. */ +typedef union crypto_mutex_st { + double alignment; + uint8_t padding[4*sizeof(void*) + 2*sizeof(int)]; +} CRYPTO_MUTEX; +#elif defined(__MACH__) && defined(__APPLE__) +typedef pthread_rwlock_t CRYPTO_MUTEX; +#else +/* It is reasonable to include pthread.h on non-Windows systems, however the + * |pthread_rwlock_t| that we need is hidden under feature flags, and we can't + * ensure that we'll be able to get it. It's statically asserted that this + * structure is large enough to contain a |pthread_rwlock_t| by + * thread_pthread.c. */ +typedef union crypto_mutex_st { + double alignment; + uint8_t padding[3*sizeof(int) + 5*sizeof(unsigned) + 16 + 8]; +} CRYPTO_MUTEX; +#endif + +/* CRYPTO_refcount_t is the type of a reference count. + * + * Since some platforms use C11 atomics to access this, it should have the + * _Atomic qualifier. However, this header is included by C++ programs as well + * as C code that might not set -std=c11. So, in practice, it's not possible to + * do that. Instead we statically assert that the size and native alignment of + * a plain uint32_t and an _Atomic uint32_t are equal in refcount_c11.c. */ +typedef uint32_t CRYPTO_refcount_t; + + +/* Deprecated functions */ + +/* These defines do nothing but are provided to make old code easier to + * compile. */ +#define CRYPTO_LOCK 1 +#define CRYPTO_UNLOCK 2 +#define CRYPTO_READ 4 +#define CRYPTO_WRITE 8 + +/* CRYPTO_num_locks returns one. (This is non-zero that callers who allocate + * sizeof(lock) times this value don't get zero and then fail because malloc(0) + * returned NULL.) */ +OPENSSL_EXPORT int CRYPTO_num_locks(void); + +/* CRYPTO_set_locking_callback does nothing. */ +OPENSSL_EXPORT void CRYPTO_set_locking_callback( + void (*func)(int mode, int lock_num, const char *file, int line)); + +/* CRYPTO_set_add_lock_callback does nothing. */ +OPENSSL_EXPORT void CRYPTO_set_add_lock_callback(int (*func)( + int *num, int amount, int lock_num, const char *file, int line)); + +/* CRYPTO_get_lock_name returns a fixed, dummy string. */ +OPENSSL_EXPORT const char *CRYPTO_get_lock_name(int lock_num); + +/* CRYPTO_THREADID_set_callback returns one. */ +OPENSSL_EXPORT int CRYPTO_THREADID_set_callback( + void (*threadid_func)(CRYPTO_THREADID *threadid)); + +/* CRYPTO_THREADID_set_numeric does nothing. */ +OPENSSL_EXPORT void CRYPTO_THREADID_set_numeric(CRYPTO_THREADID *id, + unsigned long val); + +/* CRYPTO_THREADID_set_pointer does nothing. */ +OPENSSL_EXPORT void CRYPTO_THREADID_set_pointer(CRYPTO_THREADID *id, void *ptr); + +/* CRYPTO_THREADID_current does nothing. */ +OPENSSL_EXPORT void CRYPTO_THREADID_current(CRYPTO_THREADID *id); + + +/* Private functions. + * + * Some old code calls these functions and so no-op implementations are + * provided. + * + * TODO(fork): cleanup callers and remove. */ + +OPENSSL_EXPORT void CRYPTO_set_id_callback(unsigned long (*func)(void)); + +typedef struct { + int references; + struct CRYPTO_dynlock_value *data; +} CRYPTO_dynlock; + +OPENSSL_EXPORT void CRYPTO_set_dynlock_create_callback( + struct CRYPTO_dynlock_value *(*dyn_create_function)(const char *file, + int line)); + +OPENSSL_EXPORT void CRYPTO_set_dynlock_lock_callback(void (*dyn_lock_function)( + int mode, struct CRYPTO_dynlock_value *l, const char *file, int line)); + +OPENSSL_EXPORT void CRYPTO_set_dynlock_destroy_callback( + void (*dyn_destroy_function)(struct CRYPTO_dynlock_value *l, + const char *file, int line)); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_THREAD_H */ diff --git a/project/jni/boringssl/include/openssl/time_support.h b/project/jni/boringssl/include/openssl/time_support.h new file mode 100644 index 000000000..cec430d32 --- /dev/null +++ b/project/jni/boringssl/include/openssl/time_support.h @@ -0,0 +1,90 @@ +/* Written by Richard Levitte (richard@levitte.org) for the OpenSSL + * project 2001. + * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + * project 2008. + */ +/* ==================================================================== + * Copyright (c) 2001 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef OPENSSL_HEADER_TIME_SUPPORT_H +#define OPENSSL_HEADER_TIME_SUPPORT_H + +#include + + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* Wrapper functions for time functions. */ + + +/* OPENSSL_gmtime wraps |gmtime_r|. See the manual page for that function. */ +struct tm *OPENSSL_gmtime(const time_t *timer, struct tm *result); + +/* OPENSSL_gmtime_adj updates |tm| by adding |offset_day| days and |offset_sec| + * seconds. */ +int OPENSSL_gmtime_adj(struct tm *tm, int offset_day, long offset_sec); + +/* OPENSSL_gmtime_diff calculates the difference between |from| and |to| and + * outputs the difference as a number of days and seconds in |*out_days| and + * |*out_secs|. */ +int OPENSSL_gmtime_diff(int *out_days, int *out_secs, const struct tm *from, + const struct tm *to); + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_TIME_SUPPORT_H */ diff --git a/project/jni/boringssl/include/openssl/tls1.h b/project/jni/boringssl/include/openssl/tls1.h new file mode 100644 index 000000000..92d275224 --- /dev/null +++ b/project/jni/boringssl/include/openssl/tls1.h @@ -0,0 +1,653 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * + * Portions of the attached software ("Contribution") are developed by + * SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + * + * The Contribution is licensed pursuant to the OpenSSL open source + * license provided above. + * + * ECC cipher suite support in OpenSSL originally written by + * Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories. + * + */ +/* ==================================================================== + * Copyright 2005 Nokia. All rights reserved. + * + * The portions of the attached software ("Contribution") is developed by + * Nokia Corporation and is licensed pursuant to the OpenSSL open source + * license. + * + * The Contribution, originally written by Mika Kousa and Pasi Eronen of + * Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites + * support (see RFC 4279) to OpenSSL. + * + * No patent licenses or other rights except those expressly stated in + * the OpenSSL open source license shall be deemed granted or received + * expressly, by implication, estoppel, or otherwise. + * + * No assurances are provided by Nokia that the Contribution does not + * infringe the patent or other intellectual property rights of any third + * party or that the license provides you with all the necessary rights + * to make use of the Contribution. + * + * THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN + * ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA + * SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY + * OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR + * OTHERWISE. + */ + +#ifndef OPENSSL_HEADER_TLS1_H +#define OPENSSL_HEADER_TLS1_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +#define TLS1_ALLOW_EXPERIMENTAL_CIPHERSUITES 0 + +#define TLS1_AD_DECRYPTION_FAILED 21 +#define TLS1_AD_RECORD_OVERFLOW 22 +#define TLS1_AD_UNKNOWN_CA 48 /* fatal */ +#define TLS1_AD_ACCESS_DENIED 49 /* fatal */ +#define TLS1_AD_DECODE_ERROR 50 /* fatal */ +#define TLS1_AD_DECRYPT_ERROR 51 +#define TLS1_AD_EXPORT_RESTRICTION 60 /* fatal */ +#define TLS1_AD_PROTOCOL_VERSION 70 /* fatal */ +#define TLS1_AD_INSUFFICIENT_SECURITY 71 /* fatal */ +#define TLS1_AD_INTERNAL_ERROR 80 /* fatal */ +#define TLS1_AD_USER_CANCELLED 90 +#define TLS1_AD_NO_RENEGOTIATION 100 +/* codes 110-114 are from RFC3546 */ +#define TLS1_AD_UNSUPPORTED_EXTENSION 110 +#define TLS1_AD_CERTIFICATE_UNOBTAINABLE 111 +#define TLS1_AD_UNRECOGNIZED_NAME 112 +#define TLS1_AD_BAD_CERTIFICATE_STATUS_RESPONSE 113 +#define TLS1_AD_BAD_CERTIFICATE_HASH_VALUE 114 +#define TLS1_AD_UNKNOWN_PSK_IDENTITY 115 /* fatal */ + +/* ExtensionType values from RFC3546 / RFC4366 / RFC6066 */ +#define TLSEXT_TYPE_server_name 0 +#define TLSEXT_TYPE_max_fragment_length 1 +#define TLSEXT_TYPE_client_certificate_url 2 +#define TLSEXT_TYPE_trusted_ca_keys 3 +#define TLSEXT_TYPE_truncated_hmac 4 +#define TLSEXT_TYPE_status_request 5 +/* ExtensionType values from RFC4681 */ +#define TLSEXT_TYPE_user_mapping 6 + +/* ExtensionType values from RFC5878 */ +#define TLSEXT_TYPE_client_authz 7 +#define TLSEXT_TYPE_server_authz 8 + +/* ExtensionType values from RFC6091 */ +#define TLSEXT_TYPE_cert_type 9 + +/* ExtensionType values from RFC4492 */ +#define TLSEXT_TYPE_elliptic_curves 10 +#define TLSEXT_TYPE_ec_point_formats 11 + +/* ExtensionType value from RFC5054 */ +#define TLSEXT_TYPE_srp 12 + +/* ExtensionType values from RFC5246 */ +#define TLSEXT_TYPE_signature_algorithms 13 + +/* ExtensionType value from RFC5764 */ +#define TLSEXT_TYPE_srtp 14 + +/* ExtensionType value from RFC5620 */ +#define TLSEXT_TYPE_heartbeat 15 + +/* ExtensionType value from RFC7301 */ +#define TLSEXT_TYPE_application_layer_protocol_negotiation 16 + +/* ExtensionType value from RFC7685 */ +#define TLSEXT_TYPE_padding 21 + +/* https://tools.ietf.org/html/draft-ietf-tls-session-hash-01 */ +#define TLSEXT_TYPE_extended_master_secret 23 + +/* ExtensionType value from RFC4507 */ +#define TLSEXT_TYPE_session_ticket 35 + +/* ExtensionType value from RFC5746 */ +#define TLSEXT_TYPE_renegotiate 0xff01 + +/* ExtensionType value from RFC6962 */ +#define TLSEXT_TYPE_certificate_timestamp 18 + +/* This is not an IANA defined extension number */ +#define TLSEXT_TYPE_next_proto_neg 13172 + +/* This is not an IANA defined extension number */ +#define TLSEXT_TYPE_channel_id 30032 + +/* status request value from RFC 3546 */ +#define TLSEXT_STATUSTYPE_ocsp 1 + +/* ECPointFormat values from RFC 4492 */ +#define TLSEXT_ECPOINTFORMAT_uncompressed 0 +#define TLSEXT_ECPOINTFORMAT_ansiX962_compressed_prime 1 +#define TLSEXT_ECPOINTFORMAT_ansiX962_compressed_char2 2 + +/* Signature and hash algorithms from RFC 5246 */ + +#define TLSEXT_signature_anonymous 0 +#define TLSEXT_signature_rsa 1 +#define TLSEXT_signature_dsa 2 +#define TLSEXT_signature_ecdsa 3 + +#define TLSEXT_hash_none 0 +#define TLSEXT_hash_md5 1 +#define TLSEXT_hash_sha1 2 +#define TLSEXT_hash_sha224 3 +#define TLSEXT_hash_sha256 4 +#define TLSEXT_hash_sha384 5 +#define TLSEXT_hash_sha512 6 + +/* Flag set for unrecognised algorithms */ +#define TLSEXT_nid_unknown 0x1000000 + +/* ECC curves */ + +#define TLSEXT_curve_P_256 23 +#define TLSEXT_curve_P_384 24 + + +#define TLSEXT_MAXLEN_host_name 255 + +/* PSK ciphersuites from 4279 */ +#define TLS1_CK_PSK_WITH_RC4_128_SHA 0x0300008A +#define TLS1_CK_PSK_WITH_3DES_EDE_CBC_SHA 0x0300008B +#define TLS1_CK_PSK_WITH_AES_128_CBC_SHA 0x0300008C +#define TLS1_CK_PSK_WITH_AES_256_CBC_SHA 0x0300008D + +/* PSK ciphersuites from RFC 5489 */ +#define TLS1_CK_ECDHE_PSK_WITH_AES_128_CBC_SHA 0x0300C035 +#define TLS1_CK_ECDHE_PSK_WITH_AES_256_CBC_SHA 0x0300C036 + +/* Additional TLS ciphersuites from expired Internet Draft + * draft-ietf-tls-56-bit-ciphersuites-01.txt + * (available if TLS1_ALLOW_EXPERIMENTAL_CIPHERSUITES is defined, see + * s3_lib.c). We actually treat them like SSL 3.0 ciphers, which we probably + * shouldn't. Note that the first two are actually not in the IDs. */ +#define TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_MD5 0x03000060 /* not in ID */ +#define TLS1_CK_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 0x03000061 /* not in ID */ +#define TLS1_CK_RSA_EXPORT1024_WITH_DES_CBC_SHA 0x03000062 +#define TLS1_CK_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA 0x03000063 +#define TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_SHA 0x03000064 +#define TLS1_CK_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA 0x03000065 +#define TLS1_CK_DHE_DSS_WITH_RC4_128_SHA 0x03000066 + +/* AES ciphersuites from RFC3268 */ + +#define TLS1_CK_RSA_WITH_AES_128_SHA 0x0300002F +#define TLS1_CK_DH_DSS_WITH_AES_128_SHA 0x03000030 +#define TLS1_CK_DH_RSA_WITH_AES_128_SHA 0x03000031 +#define TLS1_CK_DHE_DSS_WITH_AES_128_SHA 0x03000032 +#define TLS1_CK_DHE_RSA_WITH_AES_128_SHA 0x03000033 +#define TLS1_CK_ADH_WITH_AES_128_SHA 0x03000034 + +#define TLS1_CK_RSA_WITH_AES_256_SHA 0x03000035 +#define TLS1_CK_DH_DSS_WITH_AES_256_SHA 0x03000036 +#define TLS1_CK_DH_RSA_WITH_AES_256_SHA 0x03000037 +#define TLS1_CK_DHE_DSS_WITH_AES_256_SHA 0x03000038 +#define TLS1_CK_DHE_RSA_WITH_AES_256_SHA 0x03000039 +#define TLS1_CK_ADH_WITH_AES_256_SHA 0x0300003A + +/* TLS v1.2 ciphersuites */ +#define TLS1_CK_RSA_WITH_NULL_SHA256 0x0300003B +#define TLS1_CK_RSA_WITH_AES_128_SHA256 0x0300003C +#define TLS1_CK_RSA_WITH_AES_256_SHA256 0x0300003D +#define TLS1_CK_DH_DSS_WITH_AES_128_SHA256 0x0300003E +#define TLS1_CK_DH_RSA_WITH_AES_128_SHA256 0x0300003F +#define TLS1_CK_DHE_DSS_WITH_AES_128_SHA256 0x03000040 + +/* Camellia ciphersuites from RFC4132 */ +#define TLS1_CK_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000041 +#define TLS1_CK_DH_DSS_WITH_CAMELLIA_128_CBC_SHA 0x03000042 +#define TLS1_CK_DH_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000043 +#define TLS1_CK_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA 0x03000044 +#define TLS1_CK_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA 0x03000045 +#define TLS1_CK_ADH_WITH_CAMELLIA_128_CBC_SHA 0x03000046 + +/* TLS v1.2 ciphersuites */ +#define TLS1_CK_DHE_RSA_WITH_AES_128_SHA256 0x03000067 +#define TLS1_CK_DH_DSS_WITH_AES_256_SHA256 0x03000068 +#define TLS1_CK_DH_RSA_WITH_AES_256_SHA256 0x03000069 +#define TLS1_CK_DHE_DSS_WITH_AES_256_SHA256 0x0300006A +#define TLS1_CK_DHE_RSA_WITH_AES_256_SHA256 0x0300006B +#define TLS1_CK_ADH_WITH_AES_128_SHA256 0x0300006C +#define TLS1_CK_ADH_WITH_AES_256_SHA256 0x0300006D + +/* Camellia ciphersuites from RFC4132 */ +#define TLS1_CK_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000084 +#define TLS1_CK_DH_DSS_WITH_CAMELLIA_256_CBC_SHA 0x03000085 +#define TLS1_CK_DH_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000086 +#define TLS1_CK_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA 0x03000087 +#define TLS1_CK_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA 0x03000088 +#define TLS1_CK_ADH_WITH_CAMELLIA_256_CBC_SHA 0x03000089 + +/* SEED ciphersuites from RFC4162 */ +#define TLS1_CK_RSA_WITH_SEED_SHA 0x03000096 +#define TLS1_CK_DH_DSS_WITH_SEED_SHA 0x03000097 +#define TLS1_CK_DH_RSA_WITH_SEED_SHA 0x03000098 +#define TLS1_CK_DHE_DSS_WITH_SEED_SHA 0x03000099 +#define TLS1_CK_DHE_RSA_WITH_SEED_SHA 0x0300009A +#define TLS1_CK_ADH_WITH_SEED_SHA 0x0300009B + +/* TLS v1.2 GCM ciphersuites from RFC5288 */ +#define TLS1_CK_RSA_WITH_AES_128_GCM_SHA256 0x0300009C +#define TLS1_CK_RSA_WITH_AES_256_GCM_SHA384 0x0300009D +#define TLS1_CK_DHE_RSA_WITH_AES_128_GCM_SHA256 0x0300009E +#define TLS1_CK_DHE_RSA_WITH_AES_256_GCM_SHA384 0x0300009F +#define TLS1_CK_DH_RSA_WITH_AES_128_GCM_SHA256 0x030000A0 +#define TLS1_CK_DH_RSA_WITH_AES_256_GCM_SHA384 0x030000A1 +#define TLS1_CK_DHE_DSS_WITH_AES_128_GCM_SHA256 0x030000A2 +#define TLS1_CK_DHE_DSS_WITH_AES_256_GCM_SHA384 0x030000A3 +#define TLS1_CK_DH_DSS_WITH_AES_128_GCM_SHA256 0x030000A4 +#define TLS1_CK_DH_DSS_WITH_AES_256_GCM_SHA384 0x030000A5 +#define TLS1_CK_ADH_WITH_AES_128_GCM_SHA256 0x030000A6 +#define TLS1_CK_ADH_WITH_AES_256_GCM_SHA384 0x030000A7 + +/* ECC ciphersuites from RFC4492 */ +#define TLS1_CK_ECDH_ECDSA_WITH_NULL_SHA 0x0300C001 +#define TLS1_CK_ECDH_ECDSA_WITH_RC4_128_SHA 0x0300C002 +#define TLS1_CK_ECDH_ECDSA_WITH_DES_192_CBC3_SHA 0x0300C003 +#define TLS1_CK_ECDH_ECDSA_WITH_AES_128_CBC_SHA 0x0300C004 +#define TLS1_CK_ECDH_ECDSA_WITH_AES_256_CBC_SHA 0x0300C005 + +#define TLS1_CK_ECDHE_ECDSA_WITH_NULL_SHA 0x0300C006 +#define TLS1_CK_ECDHE_ECDSA_WITH_RC4_128_SHA 0x0300C007 +#define TLS1_CK_ECDHE_ECDSA_WITH_DES_192_CBC3_SHA 0x0300C008 +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_128_CBC_SHA 0x0300C009 +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_256_CBC_SHA 0x0300C00A + +#define TLS1_CK_ECDH_RSA_WITH_NULL_SHA 0x0300C00B +#define TLS1_CK_ECDH_RSA_WITH_RC4_128_SHA 0x0300C00C +#define TLS1_CK_ECDH_RSA_WITH_DES_192_CBC3_SHA 0x0300C00D +#define TLS1_CK_ECDH_RSA_WITH_AES_128_CBC_SHA 0x0300C00E +#define TLS1_CK_ECDH_RSA_WITH_AES_256_CBC_SHA 0x0300C00F + +#define TLS1_CK_ECDHE_RSA_WITH_NULL_SHA 0x0300C010 +#define TLS1_CK_ECDHE_RSA_WITH_RC4_128_SHA 0x0300C011 +#define TLS1_CK_ECDHE_RSA_WITH_DES_192_CBC3_SHA 0x0300C012 +#define TLS1_CK_ECDHE_RSA_WITH_AES_128_CBC_SHA 0x0300C013 +#define TLS1_CK_ECDHE_RSA_WITH_AES_256_CBC_SHA 0x0300C014 + +#define TLS1_CK_ECDH_anon_WITH_NULL_SHA 0x0300C015 +#define TLS1_CK_ECDH_anon_WITH_RC4_128_SHA 0x0300C016 +#define TLS1_CK_ECDH_anon_WITH_DES_192_CBC3_SHA 0x0300C017 +#define TLS1_CK_ECDH_anon_WITH_AES_128_CBC_SHA 0x0300C018 +#define TLS1_CK_ECDH_anon_WITH_AES_256_CBC_SHA 0x0300C019 + +/* SRP ciphersuites from RFC 5054 */ +#define TLS1_CK_SRP_SHA_WITH_3DES_EDE_CBC_SHA 0x0300C01A +#define TLS1_CK_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA 0x0300C01B +#define TLS1_CK_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA 0x0300C01C +#define TLS1_CK_SRP_SHA_WITH_AES_128_CBC_SHA 0x0300C01D +#define TLS1_CK_SRP_SHA_RSA_WITH_AES_128_CBC_SHA 0x0300C01E +#define TLS1_CK_SRP_SHA_DSS_WITH_AES_128_CBC_SHA 0x0300C01F +#define TLS1_CK_SRP_SHA_WITH_AES_256_CBC_SHA 0x0300C020 +#define TLS1_CK_SRP_SHA_RSA_WITH_AES_256_CBC_SHA 0x0300C021 +#define TLS1_CK_SRP_SHA_DSS_WITH_AES_256_CBC_SHA 0x0300C022 + +/* ECDH HMAC based ciphersuites from RFC5289 */ + +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_128_SHA256 0x0300C023 +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_256_SHA384 0x0300C024 +#define TLS1_CK_ECDH_ECDSA_WITH_AES_128_SHA256 0x0300C025 +#define TLS1_CK_ECDH_ECDSA_WITH_AES_256_SHA384 0x0300C026 +#define TLS1_CK_ECDHE_RSA_WITH_AES_128_SHA256 0x0300C027 +#define TLS1_CK_ECDHE_RSA_WITH_AES_256_SHA384 0x0300C028 +#define TLS1_CK_ECDH_RSA_WITH_AES_128_SHA256 0x0300C029 +#define TLS1_CK_ECDH_RSA_WITH_AES_256_SHA384 0x0300C02A + +/* ECDH GCM based ciphersuites from RFC5289 */ +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 0x0300C02B +#define TLS1_CK_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 0x0300C02C +#define TLS1_CK_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 0x0300C02D +#define TLS1_CK_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 0x0300C02E +#define TLS1_CK_ECDHE_RSA_WITH_AES_128_GCM_SHA256 0x0300C02F +#define TLS1_CK_ECDHE_RSA_WITH_AES_256_GCM_SHA384 0x0300C030 +#define TLS1_CK_ECDH_RSA_WITH_AES_128_GCM_SHA256 0x0300C031 +#define TLS1_CK_ECDH_RSA_WITH_AES_256_GCM_SHA384 0x0300C032 + +#define TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305_OLD 0x0300CC13 +#define TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305_OLD 0x0300CC14 + +#define TLS1_CK_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 0x0300CCA8 +#define TLS1_CK_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 0x0300CCA9 +#define TLS1_CK_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 0x0300CCAC + +/* TODO(davidben): Remove this. Historically, the CK names for CHACHA20_POLY1305 + * were missing 'WITH' and 'SHA256'. */ +#define TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305 \ + TLS1_CK_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 + +/* XXX + * Inconsistency alert: + * The OpenSSL names of ciphers with ephemeral DH here include the string + * "DHE", while elsewhere it has always been "EDH". + * (The alias for the list of all such ciphers also is "EDH".) + * The specifications speak of "EDH"; maybe we should allow both forms + * for everything. */ +#define TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_MD5 "EXP1024-RC4-MD5" +#define TLS1_TXT_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 "EXP1024-RC2-CBC-MD5" +#define TLS1_TXT_RSA_EXPORT1024_WITH_DES_CBC_SHA "EXP1024-DES-CBC-SHA" +#define TLS1_TXT_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA \ + "EXP1024-DHE-DSS-DES-CBC-SHA" +#define TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_SHA "EXP1024-RC4-SHA" +#define TLS1_TXT_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA "EXP1024-DHE-DSS-RC4-SHA" +#define TLS1_TXT_DHE_DSS_WITH_RC4_128_SHA "DHE-DSS-RC4-SHA" + +/* AES ciphersuites from RFC3268 */ +#define TLS1_TXT_RSA_WITH_AES_128_SHA "AES128-SHA" +#define TLS1_TXT_DH_DSS_WITH_AES_128_SHA "DH-DSS-AES128-SHA" +#define TLS1_TXT_DH_RSA_WITH_AES_128_SHA "DH-RSA-AES128-SHA" +#define TLS1_TXT_DHE_DSS_WITH_AES_128_SHA "DHE-DSS-AES128-SHA" +#define TLS1_TXT_DHE_RSA_WITH_AES_128_SHA "DHE-RSA-AES128-SHA" +#define TLS1_TXT_ADH_WITH_AES_128_SHA "ADH-AES128-SHA" + +#define TLS1_TXT_RSA_WITH_AES_256_SHA "AES256-SHA" +#define TLS1_TXT_DH_DSS_WITH_AES_256_SHA "DH-DSS-AES256-SHA" +#define TLS1_TXT_DH_RSA_WITH_AES_256_SHA "DH-RSA-AES256-SHA" +#define TLS1_TXT_DHE_DSS_WITH_AES_256_SHA "DHE-DSS-AES256-SHA" +#define TLS1_TXT_DHE_RSA_WITH_AES_256_SHA "DHE-RSA-AES256-SHA" +#define TLS1_TXT_ADH_WITH_AES_256_SHA "ADH-AES256-SHA" + +/* ECC ciphersuites from RFC4492 */ +#define TLS1_TXT_ECDH_ECDSA_WITH_NULL_SHA "ECDH-ECDSA-NULL-SHA" +#define TLS1_TXT_ECDH_ECDSA_WITH_RC4_128_SHA "ECDH-ECDSA-RC4-SHA" +#define TLS1_TXT_ECDH_ECDSA_WITH_DES_192_CBC3_SHA "ECDH-ECDSA-DES-CBC3-SHA" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_128_CBC_SHA "ECDH-ECDSA-AES128-SHA" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_256_CBC_SHA "ECDH-ECDSA-AES256-SHA" + +#define TLS1_TXT_ECDHE_ECDSA_WITH_NULL_SHA "ECDHE-ECDSA-NULL-SHA" +#define TLS1_TXT_ECDHE_ECDSA_WITH_RC4_128_SHA "ECDHE-ECDSA-RC4-SHA" +#define TLS1_TXT_ECDHE_ECDSA_WITH_DES_192_CBC3_SHA "ECDHE-ECDSA-DES-CBC3-SHA" +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_CBC_SHA "ECDHE-ECDSA-AES128-SHA" +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_CBC_SHA "ECDHE-ECDSA-AES256-SHA" + +#define TLS1_TXT_ECDH_RSA_WITH_NULL_SHA "ECDH-RSA-NULL-SHA" +#define TLS1_TXT_ECDH_RSA_WITH_RC4_128_SHA "ECDH-RSA-RC4-SHA" +#define TLS1_TXT_ECDH_RSA_WITH_DES_192_CBC3_SHA "ECDH-RSA-DES-CBC3-SHA" +#define TLS1_TXT_ECDH_RSA_WITH_AES_128_CBC_SHA "ECDH-RSA-AES128-SHA" +#define TLS1_TXT_ECDH_RSA_WITH_AES_256_CBC_SHA "ECDH-RSA-AES256-SHA" + +#define TLS1_TXT_ECDHE_RSA_WITH_NULL_SHA "ECDHE-RSA-NULL-SHA" +#define TLS1_TXT_ECDHE_RSA_WITH_RC4_128_SHA "ECDHE-RSA-RC4-SHA" +#define TLS1_TXT_ECDHE_RSA_WITH_DES_192_CBC3_SHA "ECDHE-RSA-DES-CBC3-SHA" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_128_CBC_SHA "ECDHE-RSA-AES128-SHA" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_256_CBC_SHA "ECDHE-RSA-AES256-SHA" + +#define TLS1_TXT_ECDH_anon_WITH_NULL_SHA "AECDH-NULL-SHA" +#define TLS1_TXT_ECDH_anon_WITH_RC4_128_SHA "AECDH-RC4-SHA" +#define TLS1_TXT_ECDH_anon_WITH_DES_192_CBC3_SHA "AECDH-DES-CBC3-SHA" +#define TLS1_TXT_ECDH_anon_WITH_AES_128_CBC_SHA "AECDH-AES128-SHA" +#define TLS1_TXT_ECDH_anon_WITH_AES_256_CBC_SHA "AECDH-AES256-SHA" + +/* PSK ciphersuites from RFC 4279 */ +#define TLS1_TXT_PSK_WITH_RC4_128_SHA "PSK-RC4-SHA" +#define TLS1_TXT_PSK_WITH_3DES_EDE_CBC_SHA "PSK-3DES-EDE-CBC-SHA" +#define TLS1_TXT_PSK_WITH_AES_128_CBC_SHA "PSK-AES128-CBC-SHA" +#define TLS1_TXT_PSK_WITH_AES_256_CBC_SHA "PSK-AES256-CBC-SHA" + +/* PSK ciphersuites from RFC 5489 */ +#define TLS1_TXT_ECDHE_PSK_WITH_AES_128_CBC_SHA "ECDHE-PSK-AES128-CBC-SHA" +#define TLS1_TXT_ECDHE_PSK_WITH_AES_256_CBC_SHA "ECDHE-PSK-AES256-CBC-SHA" + +/* SRP ciphersuite from RFC 5054 */ +#define TLS1_TXT_SRP_SHA_WITH_3DES_EDE_CBC_SHA "SRP-3DES-EDE-CBC-SHA" +#define TLS1_TXT_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA "SRP-RSA-3DES-EDE-CBC-SHA" +#define TLS1_TXT_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA "SRP-DSS-3DES-EDE-CBC-SHA" +#define TLS1_TXT_SRP_SHA_WITH_AES_128_CBC_SHA "SRP-AES-128-CBC-SHA" +#define TLS1_TXT_SRP_SHA_RSA_WITH_AES_128_CBC_SHA "SRP-RSA-AES-128-CBC-SHA" +#define TLS1_TXT_SRP_SHA_DSS_WITH_AES_128_CBC_SHA "SRP-DSS-AES-128-CBC-SHA" +#define TLS1_TXT_SRP_SHA_WITH_AES_256_CBC_SHA "SRP-AES-256-CBC-SHA" +#define TLS1_TXT_SRP_SHA_RSA_WITH_AES_256_CBC_SHA "SRP-RSA-AES-256-CBC-SHA" +#define TLS1_TXT_SRP_SHA_DSS_WITH_AES_256_CBC_SHA "SRP-DSS-AES-256-CBC-SHA" + +/* Camellia ciphersuites from RFC4132 */ +#define TLS1_TXT_RSA_WITH_CAMELLIA_128_CBC_SHA "CAMELLIA128-SHA" +#define TLS1_TXT_DH_DSS_WITH_CAMELLIA_128_CBC_SHA "DH-DSS-CAMELLIA128-SHA" +#define TLS1_TXT_DH_RSA_WITH_CAMELLIA_128_CBC_SHA "DH-RSA-CAMELLIA128-SHA" +#define TLS1_TXT_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA "DHE-DSS-CAMELLIA128-SHA" +#define TLS1_TXT_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA "DHE-RSA-CAMELLIA128-SHA" +#define TLS1_TXT_ADH_WITH_CAMELLIA_128_CBC_SHA "ADH-CAMELLIA128-SHA" + +#define TLS1_TXT_RSA_WITH_CAMELLIA_256_CBC_SHA "CAMELLIA256-SHA" +#define TLS1_TXT_DH_DSS_WITH_CAMELLIA_256_CBC_SHA "DH-DSS-CAMELLIA256-SHA" +#define TLS1_TXT_DH_RSA_WITH_CAMELLIA_256_CBC_SHA "DH-RSA-CAMELLIA256-SHA" +#define TLS1_TXT_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA "DHE-DSS-CAMELLIA256-SHA" +#define TLS1_TXT_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA "DHE-RSA-CAMELLIA256-SHA" +#define TLS1_TXT_ADH_WITH_CAMELLIA_256_CBC_SHA "ADH-CAMELLIA256-SHA" + +/* SEED ciphersuites from RFC4162 */ +#define TLS1_TXT_RSA_WITH_SEED_SHA "SEED-SHA" +#define TLS1_TXT_DH_DSS_WITH_SEED_SHA "DH-DSS-SEED-SHA" +#define TLS1_TXT_DH_RSA_WITH_SEED_SHA "DH-RSA-SEED-SHA" +#define TLS1_TXT_DHE_DSS_WITH_SEED_SHA "DHE-DSS-SEED-SHA" +#define TLS1_TXT_DHE_RSA_WITH_SEED_SHA "DHE-RSA-SEED-SHA" +#define TLS1_TXT_ADH_WITH_SEED_SHA "ADH-SEED-SHA" + +/* TLS v1.2 ciphersuites */ +#define TLS1_TXT_RSA_WITH_NULL_SHA256 "NULL-SHA256" +#define TLS1_TXT_RSA_WITH_AES_128_SHA256 "AES128-SHA256" +#define TLS1_TXT_RSA_WITH_AES_256_SHA256 "AES256-SHA256" +#define TLS1_TXT_DH_DSS_WITH_AES_128_SHA256 "DH-DSS-AES128-SHA256" +#define TLS1_TXT_DH_RSA_WITH_AES_128_SHA256 "DH-RSA-AES128-SHA256" +#define TLS1_TXT_DHE_DSS_WITH_AES_128_SHA256 "DHE-DSS-AES128-SHA256" +#define TLS1_TXT_DHE_RSA_WITH_AES_128_SHA256 "DHE-RSA-AES128-SHA256" +#define TLS1_TXT_DH_DSS_WITH_AES_256_SHA256 "DH-DSS-AES256-SHA256" +#define TLS1_TXT_DH_RSA_WITH_AES_256_SHA256 "DH-RSA-AES256-SHA256" +#define TLS1_TXT_DHE_DSS_WITH_AES_256_SHA256 "DHE-DSS-AES256-SHA256" +#define TLS1_TXT_DHE_RSA_WITH_AES_256_SHA256 "DHE-RSA-AES256-SHA256" +#define TLS1_TXT_ADH_WITH_AES_128_SHA256 "ADH-AES128-SHA256" +#define TLS1_TXT_ADH_WITH_AES_256_SHA256 "ADH-AES256-SHA256" + +/* TLS v1.2 GCM ciphersuites from RFC5288 */ +#define TLS1_TXT_RSA_WITH_AES_128_GCM_SHA256 "AES128-GCM-SHA256" +#define TLS1_TXT_RSA_WITH_AES_256_GCM_SHA384 "AES256-GCM-SHA384" +#define TLS1_TXT_DHE_RSA_WITH_AES_128_GCM_SHA256 "DHE-RSA-AES128-GCM-SHA256" +#define TLS1_TXT_DHE_RSA_WITH_AES_256_GCM_SHA384 "DHE-RSA-AES256-GCM-SHA384" +#define TLS1_TXT_DH_RSA_WITH_AES_128_GCM_SHA256 "DH-RSA-AES128-GCM-SHA256" +#define TLS1_TXT_DH_RSA_WITH_AES_256_GCM_SHA384 "DH-RSA-AES256-GCM-SHA384" +#define TLS1_TXT_DHE_DSS_WITH_AES_128_GCM_SHA256 "DHE-DSS-AES128-GCM-SHA256" +#define TLS1_TXT_DHE_DSS_WITH_AES_256_GCM_SHA384 "DHE-DSS-AES256-GCM-SHA384" +#define TLS1_TXT_DH_DSS_WITH_AES_128_GCM_SHA256 "DH-DSS-AES128-GCM-SHA256" +#define TLS1_TXT_DH_DSS_WITH_AES_256_GCM_SHA384 "DH-DSS-AES256-GCM-SHA384" +#define TLS1_TXT_ADH_WITH_AES_128_GCM_SHA256 "ADH-AES128-GCM-SHA256" +#define TLS1_TXT_ADH_WITH_AES_256_GCM_SHA384 "ADH-AES256-GCM-SHA384" + +/* ECDH HMAC based ciphersuites from RFC5289 */ + +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_SHA256 "ECDHE-ECDSA-AES128-SHA256" +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_SHA384 "ECDHE-ECDSA-AES256-SHA384" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_128_SHA256 "ECDH-ECDSA-AES128-SHA256" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_256_SHA384 "ECDH-ECDSA-AES256-SHA384" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_128_SHA256 "ECDHE-RSA-AES128-SHA256" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_256_SHA384 "ECDHE-RSA-AES256-SHA384" +#define TLS1_TXT_ECDH_RSA_WITH_AES_128_SHA256 "ECDH-RSA-AES128-SHA256" +#define TLS1_TXT_ECDH_RSA_WITH_AES_256_SHA384 "ECDH-RSA-AES256-SHA384" + +/* ECDH GCM based ciphersuites from RFC5289 */ +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 \ + "ECDHE-ECDSA-AES128-GCM-SHA256" +#define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 \ + "ECDHE-ECDSA-AES256-GCM-SHA384" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 \ + "ECDH-ECDSA-AES128-GCM-SHA256" +#define TLS1_TXT_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 \ + "ECDH-ECDSA-AES256-GCM-SHA384" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_128_GCM_SHA256 "ECDHE-RSA-AES128-GCM-SHA256" +#define TLS1_TXT_ECDHE_RSA_WITH_AES_256_GCM_SHA384 "ECDHE-RSA-AES256-GCM-SHA384" +#define TLS1_TXT_ECDH_RSA_WITH_AES_128_GCM_SHA256 "ECDH-RSA-AES128-GCM-SHA256" +#define TLS1_TXT_ECDH_RSA_WITH_AES_256_GCM_SHA384 "ECDH-RSA-AES256-GCM-SHA384" + +/* For convenience, the old and new CHACHA20_POLY1305 ciphers have the same + * name. In cipher strings, both will be selected. This is temporary and will be + * removed when the pre-standard construction is removed. */ +#define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305_OLD \ + "ECDHE-RSA-CHACHA20-POLY1305" +#define TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_OLD \ + "ECDHE-ECDSA-CHACHA20-POLY1305" + +#define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 \ + "ECDHE-RSA-CHACHA20-POLY1305" +#define TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 \ + "ECDHE-ECDSA-CHACHA20-POLY1305" +#define TLS1_TXT_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 \ + "ECDHE-PSK-CHACHA20-POLY1305" + +/* TODO(davidben): Remove this. Historically, the TXT names for CHACHA20_POLY1305 + * were missing 'SHA256'. */ +#define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305 \ + TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 + +#define TLS_CT_RSA_SIGN 1 +#define TLS_CT_DSS_SIGN 2 +#define TLS_CT_RSA_FIXED_DH 3 +#define TLS_CT_DSS_FIXED_DH 4 +#define TLS_CT_ECDSA_SIGN 64 +#define TLS_CT_RSA_FIXED_ECDH 65 +#define TLS_CT_ECDSA_FIXED_ECDH 66 + +#define TLS_MD_MAX_CONST_SIZE 20 +#define TLS_MD_CLIENT_FINISH_CONST "client finished" +#define TLS_MD_CLIENT_FINISH_CONST_SIZE 15 +#define TLS_MD_SERVER_FINISH_CONST "server finished" +#define TLS_MD_SERVER_FINISH_CONST_SIZE 15 +#define TLS_MD_KEY_EXPANSION_CONST "key expansion" +#define TLS_MD_KEY_EXPANSION_CONST_SIZE 13 +#define TLS_MD_CLIENT_WRITE_KEY_CONST "client write key" +#define TLS_MD_CLIENT_WRITE_KEY_CONST_SIZE 16 +#define TLS_MD_SERVER_WRITE_KEY_CONST "server write key" +#define TLS_MD_SERVER_WRITE_KEY_CONST_SIZE 16 +#define TLS_MD_IV_BLOCK_CONST "IV block" +#define TLS_MD_IV_BLOCK_CONST_SIZE 8 +#define TLS_MD_MASTER_SECRET_CONST "master secret" +#define TLS_MD_MASTER_SECRET_CONST_SIZE 13 +#define TLS_MD_EXTENDED_MASTER_SECRET_CONST "extended master secret" +#define TLS_MD_EXTENDED_MASTER_SECRET_CONST_SIZE 22 + + +#ifdef __cplusplus +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_TLS1_H */ diff --git a/project/jni/boringssl/include/openssl/type_check.h b/project/jni/boringssl/include/openssl/type_check.h new file mode 100644 index 000000000..674913a35 --- /dev/null +++ b/project/jni/boringssl/include/openssl/type_check.h @@ -0,0 +1,91 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] */ + +#ifndef OPENSSL_HEADER_TYPE_CHECK_H +#define OPENSSL_HEADER_TYPE_CHECK_H + +#include + +#if defined(__cplusplus) +extern "C" { +#endif + + +/* This header file contains some common macros for enforcing type checking. + * Several, common OpenSSL structures (i.e. stack and lhash) operate on void + * pointers, but we wish to have type checking when they are used with a + * specific type. */ + +/* CHECKED_CAST casts |p| from type |from| to type |to|. */ +#define CHECKED_CAST(to, from, p) ((to) (1 ? (p) : (from)0)) + +/* CHECKED_PTR_OF casts a given pointer to void* and statically checks that it + * was a pointer to |type|. */ +#define CHECKED_PTR_OF(type, p) CHECKED_CAST(void*, type*, (p)) + +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L +#define OPENSSL_COMPILE_ASSERT(cond, msg) _Static_assert(cond, #msg) +#else +#define OPENSSL_COMPILE_ASSERT(cond, msg) \ + typedef char OPENSSL_COMPILE_ASSERT_##msg[((cond) ? 1 : -1)] +#endif + + +#if defined(__cplusplus) +} /* extern C */ +#endif + +#endif /* OPENSSL_HEADER_TYPE_CHECK_H */ diff --git a/project/jni/boringssl/include/openssl/x509.h b/project/jni/boringssl/include/openssl/x509.h new file mode 100644 index 000000000..a5aaf31b9 --- /dev/null +++ b/project/jni/boringssl/include/openssl/x509.h @@ -0,0 +1,1256 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + * ECDH support in OpenSSL originally developed by + * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. + */ + +#ifndef HEADER_X509_H +#define HEADER_X509_H + +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + + +#define X509_FILETYPE_PEM 1 +#define X509_FILETYPE_ASN1 2 +#define X509_FILETYPE_DEFAULT 3 + +#define X509v3_KU_DIGITAL_SIGNATURE 0x0080 +#define X509v3_KU_NON_REPUDIATION 0x0040 +#define X509v3_KU_KEY_ENCIPHERMENT 0x0020 +#define X509v3_KU_DATA_ENCIPHERMENT 0x0010 +#define X509v3_KU_KEY_AGREEMENT 0x0008 +#define X509v3_KU_KEY_CERT_SIGN 0x0004 +#define X509v3_KU_CRL_SIGN 0x0002 +#define X509v3_KU_ENCIPHER_ONLY 0x0001 +#define X509v3_KU_DECIPHER_ONLY 0x8000 +#define X509v3_KU_UNDEF 0xffff + +struct X509_objects_st + { + int nid; + int (*a2i)(void); + int (*i2a)(void); + } /* X509_OBJECTS */; + +DECLARE_ASN1_SET_OF(X509_ALGOR) + +typedef STACK_OF(X509_ALGOR) X509_ALGORS; + +struct X509_val_st + { + ASN1_TIME *notBefore; + ASN1_TIME *notAfter; + } /* X509_VAL */; + +struct X509_pubkey_st + { + X509_ALGOR *algor; + ASN1_BIT_STRING *public_key; + EVP_PKEY *pkey; + }; + +struct X509_sig_st + { + X509_ALGOR *algor; + ASN1_OCTET_STRING *digest; + } /* X509_SIG */; + +struct X509_name_entry_st + { + ASN1_OBJECT *object; + ASN1_STRING *value; + int set; + int size; /* temp variable */ + } /* X509_NAME_ENTRY */; + +DECLARE_STACK_OF(X509_NAME_ENTRY) +DECLARE_ASN1_SET_OF(X509_NAME_ENTRY) + +/* we always keep X509_NAMEs in 2 forms. */ +struct X509_name_st + { + STACK_OF(X509_NAME_ENTRY) *entries; + int modified; /* true if 'bytes' needs to be built */ +#ifndef OPENSSL_NO_BUFFER + BUF_MEM *bytes; +#else + char *bytes; +#endif +/* unsigned long hash; Keep the hash around for lookups */ + unsigned char *canon_enc; + int canon_enclen; + } /* X509_NAME */; + +DECLARE_STACK_OF(X509_NAME) + +#define X509_EX_V_NETSCAPE_HACK 0x8000 +#define X509_EX_V_INIT 0x0001 +struct X509_extension_st + { + ASN1_OBJECT *object; + ASN1_BOOLEAN critical; + ASN1_OCTET_STRING *value; + } /* X509_EXTENSION */; + +typedef STACK_OF(X509_EXTENSION) X509_EXTENSIONS; + +DECLARE_STACK_OF(X509_EXTENSION) +DECLARE_ASN1_SET_OF(X509_EXTENSION) + +/* a sequence of these are used */ +struct x509_attributes_st + { + ASN1_OBJECT *object; + int single; /* 0 for a set, 1 for a single item (which is wrong) */ + union { + char *ptr; +/* 0 */ STACK_OF(ASN1_TYPE) *set; +/* 1 */ ASN1_TYPE *single; + } value; + } /* X509_ATTRIBUTE */; + +DECLARE_STACK_OF(X509_ATTRIBUTE) +DECLARE_ASN1_SET_OF(X509_ATTRIBUTE) + + +struct X509_req_info_st + { + ASN1_ENCODING enc; + ASN1_INTEGER *version; + X509_NAME *subject; + X509_PUBKEY *pubkey; + /* d=2 hl=2 l= 0 cons: cont: 00 */ + STACK_OF(X509_ATTRIBUTE) *attributes; /* [ 0 ] */ + } /* X509_REQ_INFO */; + +struct X509_req_st + { + X509_REQ_INFO *req_info; + X509_ALGOR *sig_alg; + ASN1_BIT_STRING *signature; + CRYPTO_refcount_t references; + } /* X509_REQ */; + +struct x509_cinf_st + { + ASN1_INTEGER *version; /* [ 0 ] default of v1 */ + ASN1_INTEGER *serialNumber; + X509_ALGOR *signature; + X509_NAME *issuer; + X509_VAL *validity; + X509_NAME *subject; + X509_PUBKEY *key; + ASN1_BIT_STRING *issuerUID; /* [ 1 ] optional in v2 */ + ASN1_BIT_STRING *subjectUID; /* [ 2 ] optional in v2 */ + STACK_OF(X509_EXTENSION) *extensions; /* [ 3 ] optional in v3 */ + ASN1_ENCODING enc; + } /* X509_CINF */; + +/* This stuff is certificate "auxiliary info" + * it contains details which are useful in certificate + * stores and databases. When used this is tagged onto + * the end of the certificate itself + */ + +struct x509_cert_aux_st + { + STACK_OF(ASN1_OBJECT) *trust; /* trusted uses */ + STACK_OF(ASN1_OBJECT) *reject; /* rejected uses */ + ASN1_UTF8STRING *alias; /* "friendly name" */ + ASN1_OCTET_STRING *keyid; /* key id of private key */ + STACK_OF(X509_ALGOR) *other; /* other unspecified info */ + } /* X509_CERT_AUX */; + +struct x509_st + { + X509_CINF *cert_info; + X509_ALGOR *sig_alg; + ASN1_BIT_STRING *signature; + int valid; + CRYPTO_refcount_t references; + char *name; + CRYPTO_EX_DATA ex_data; + /* These contain copies of various extension values */ + long ex_pathlen; + long ex_pcpathlen; + unsigned long ex_flags; + unsigned long ex_kusage; + unsigned long ex_xkusage; + unsigned long ex_nscert; + ASN1_OCTET_STRING *skid; + AUTHORITY_KEYID *akid; + X509_POLICY_CACHE *policy_cache; + STACK_OF(DIST_POINT) *crldp; + STACK_OF(GENERAL_NAME) *altname; + NAME_CONSTRAINTS *nc; + unsigned char sha1_hash[SHA_DIGEST_LENGTH]; + X509_CERT_AUX *aux; + } /* X509 */; + +DECLARE_STACK_OF(X509) +DECLARE_ASN1_SET_OF(X509) + +/* This is used for a table of trust checking functions */ + +struct x509_trust_st { + int trust; + int flags; + int (*check_trust)(struct x509_trust_st *, X509 *, int); + char *name; + int arg1; + void *arg2; +} /* X509_TRUST */; + +DECLARE_STACK_OF(X509_TRUST) + +struct x509_cert_pair_st { + X509 *forward; + X509 *reverse; +} /* X509_CERT_PAIR */; + +/* standard trust ids */ + +#define X509_TRUST_DEFAULT -1 /* Only valid in purpose settings */ + +#define X509_TRUST_COMPAT 1 +#define X509_TRUST_SSL_CLIENT 2 +#define X509_TRUST_SSL_SERVER 3 +#define X509_TRUST_EMAIL 4 +#define X509_TRUST_OBJECT_SIGN 5 +#define X509_TRUST_OCSP_SIGN 6 +#define X509_TRUST_OCSP_REQUEST 7 +#define X509_TRUST_TSA 8 + +/* Keep these up to date! */ +#define X509_TRUST_MIN 1 +#define X509_TRUST_MAX 8 + + +/* trust_flags values */ +#define X509_TRUST_DYNAMIC 1 +#define X509_TRUST_DYNAMIC_NAME 2 + +/* check_trust return codes */ + +#define X509_TRUST_TRUSTED 1 +#define X509_TRUST_REJECTED 2 +#define X509_TRUST_UNTRUSTED 3 + +/* Flags for X509_print_ex() */ + +#define X509_FLAG_COMPAT 0 +#define X509_FLAG_NO_HEADER 1L +#define X509_FLAG_NO_VERSION (1L << 1) +#define X509_FLAG_NO_SERIAL (1L << 2) +#define X509_FLAG_NO_SIGNAME (1L << 3) +#define X509_FLAG_NO_ISSUER (1L << 4) +#define X509_FLAG_NO_VALIDITY (1L << 5) +#define X509_FLAG_NO_SUBJECT (1L << 6) +#define X509_FLAG_NO_PUBKEY (1L << 7) +#define X509_FLAG_NO_EXTENSIONS (1L << 8) +#define X509_FLAG_NO_SIGDUMP (1L << 9) +#define X509_FLAG_NO_AUX (1L << 10) +#define X509_FLAG_NO_ATTRIBUTES (1L << 11) +#define X509_FLAG_NO_IDS (1L << 12) + +/* Flags specific to X509_NAME_print_ex() */ + +/* The field separator information */ + +#define XN_FLAG_SEP_MASK (0xf << 16) + +#define XN_FLAG_COMPAT 0 /* Traditional SSLeay: use old X509_NAME_print */ +#define XN_FLAG_SEP_COMMA_PLUS (1 << 16) /* RFC2253 ,+ */ +#define XN_FLAG_SEP_CPLUS_SPC (2 << 16) /* ,+ spaced: more readable */ +#define XN_FLAG_SEP_SPLUS_SPC (3 << 16) /* ;+ spaced */ +#define XN_FLAG_SEP_MULTILINE (4 << 16) /* One line per field */ + +#define XN_FLAG_DN_REV (1 << 20) /* Reverse DN order */ + +/* How the field name is shown */ + +#define XN_FLAG_FN_MASK (0x3 << 21) + +#define XN_FLAG_FN_SN 0 /* Object short name */ +#define XN_FLAG_FN_LN (1 << 21) /* Object long name */ +#define XN_FLAG_FN_OID (2 << 21) /* Always use OIDs */ +#define XN_FLAG_FN_NONE (3 << 21) /* No field names */ + +#define XN_FLAG_SPC_EQ (1 << 23) /* Put spaces round '=' */ + +/* This determines if we dump fields we don't recognise: + * RFC2253 requires this. + */ + +#define XN_FLAG_DUMP_UNKNOWN_FIELDS (1 << 24) + +#define XN_FLAG_FN_ALIGN (1 << 25) /* Align field names to 20 characters */ + +/* Complete set of RFC2253 flags */ + +#define XN_FLAG_RFC2253 (ASN1_STRFLGS_RFC2253 | \ + XN_FLAG_SEP_COMMA_PLUS | \ + XN_FLAG_DN_REV | \ + XN_FLAG_FN_SN | \ + XN_FLAG_DUMP_UNKNOWN_FIELDS) + +/* readable oneline form */ + +#define XN_FLAG_ONELINE (ASN1_STRFLGS_RFC2253 | \ + ASN1_STRFLGS_ESC_QUOTE | \ + XN_FLAG_SEP_CPLUS_SPC | \ + XN_FLAG_SPC_EQ | \ + XN_FLAG_FN_SN) + +/* readable multiline form */ + +#define XN_FLAG_MULTILINE (ASN1_STRFLGS_ESC_CTRL | \ + ASN1_STRFLGS_ESC_MSB | \ + XN_FLAG_SEP_MULTILINE | \ + XN_FLAG_SPC_EQ | \ + XN_FLAG_FN_LN | \ + XN_FLAG_FN_ALIGN) + +struct x509_revoked_st + { + ASN1_INTEGER *serialNumber; + ASN1_TIME *revocationDate; + STACK_OF(X509_EXTENSION) /* optional */ *extensions; + /* Set up if indirect CRL */ + STACK_OF(GENERAL_NAME) *issuer; + /* Revocation reason */ + int reason; + int sequence; /* load sequence */ + }; + +DECLARE_STACK_OF(X509_REVOKED) +DECLARE_ASN1_SET_OF(X509_REVOKED) + +struct X509_crl_info_st + { + ASN1_INTEGER *version; + X509_ALGOR *sig_alg; + X509_NAME *issuer; + ASN1_TIME *lastUpdate; + ASN1_TIME *nextUpdate; + STACK_OF(X509_REVOKED) *revoked; + STACK_OF(X509_EXTENSION) /* [0] */ *extensions; + ASN1_ENCODING enc; + } /* X509_CRL_INFO */; + +struct X509_crl_st + { + /* actual signature */ + X509_CRL_INFO *crl; + X509_ALGOR *sig_alg; + ASN1_BIT_STRING *signature; + CRYPTO_refcount_t references; + int flags; + /* Copies of various extensions */ + AUTHORITY_KEYID *akid; + ISSUING_DIST_POINT *idp; + /* Convenient breakdown of IDP */ + int idp_flags; + int idp_reasons; + /* CRL and base CRL numbers for delta processing */ + ASN1_INTEGER *crl_number; + ASN1_INTEGER *base_crl_number; + unsigned char sha1_hash[SHA_DIGEST_LENGTH]; + STACK_OF(GENERAL_NAMES) *issuers; + const X509_CRL_METHOD *meth; + void *meth_data; + } /* X509_CRL */; + +DECLARE_STACK_OF(X509_CRL) +DECLARE_ASN1_SET_OF(X509_CRL) + +struct private_key_st + { + int version; + /* The PKCS#8 data types */ + X509_ALGOR *enc_algor; + ASN1_OCTET_STRING *enc_pkey; /* encrypted pub key */ + + /* When decrypted, the following will not be NULL */ + EVP_PKEY *dec_pkey; + + /* used to encrypt and decrypt */ + int key_length; + char *key_data; + int key_free; /* true if we should auto free key_data */ + + /* expanded version of 'enc_algor' */ + EVP_CIPHER_INFO cipher; + } /* X509_PKEY */; + +#ifndef OPENSSL_NO_EVP +struct X509_info_st + { + X509 *x509; + X509_CRL *crl; + X509_PKEY *x_pkey; + + EVP_CIPHER_INFO enc_cipher; + int enc_len; + char *enc_data; + + } /* X509_INFO */; + +DECLARE_STACK_OF(X509_INFO) +#endif + +/* The next 2 structures and their 8 routines were sent to me by + * Pat Richard and are used to manipulate + * Netscapes spki structures - useful if you are writing a CA web page + */ +struct Netscape_spkac_st + { + X509_PUBKEY *pubkey; + ASN1_IA5STRING *challenge; /* challenge sent in atlas >= PR2 */ + } /* NETSCAPE_SPKAC */; + +struct Netscape_spki_st + { + NETSCAPE_SPKAC *spkac; /* signed public key and challenge */ + X509_ALGOR *sig_algor; + ASN1_BIT_STRING *signature; + } /* NETSCAPE_SPKI */; + +/* Netscape certificate sequence structure */ +struct Netscape_certificate_sequence + { + ASN1_OBJECT *type; + STACK_OF(X509) *certs; + } /* NETSCAPE_CERT_SEQUENCE */; + +/* Unused (and iv length is wrong) +typedef struct CBCParameter_st + { + unsigned char iv[8]; + } CBC_PARAM; +*/ + +/* Password based encryption structure */ + +struct PBEPARAM_st { +ASN1_OCTET_STRING *salt; +ASN1_INTEGER *iter; +} /* PBEPARAM */; + +/* Password based encryption V2 structures */ + +struct PBE2PARAM_st { +X509_ALGOR *keyfunc; +X509_ALGOR *encryption; +} /* PBE2PARAM */; + +struct PBKDF2PARAM_st { +ASN1_TYPE *salt; /* Usually OCTET STRING but could be anything */ +ASN1_INTEGER *iter; +ASN1_INTEGER *keylength; +X509_ALGOR *prf; +} /* PBKDF2PARAM */; + + +/* PKCS#8 private key info structure */ + +struct pkcs8_priv_key_info_st + { + int broken; /* Flag for various broken formats */ +#define PKCS8_OK 0 +#define PKCS8_NO_OCTET 1 +#define PKCS8_EMBEDDED_PARAM 2 +#define PKCS8_NS_DB 3 +#define PKCS8_NEG_PRIVKEY 4 + ASN1_INTEGER *version; + X509_ALGOR *pkeyalg; + ASN1_TYPE *pkey; /* Should be OCTET STRING but some are broken */ + STACK_OF(X509_ATTRIBUTE) *attributes; + }; + +#ifdef __cplusplus +} +#endif + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#define X509_EXT_PACK_UNKNOWN 1 +#define X509_EXT_PACK_STRING 2 + +#define X509_get_version(x) ASN1_INTEGER_get((x)->cert_info->version) +/* #define X509_get_serialNumber(x) ((x)->cert_info->serialNumber) */ +#define X509_get_notBefore(x) ((x)->cert_info->validity->notBefore) +#define X509_get_notAfter(x) ((x)->cert_info->validity->notAfter) +#define X509_get_cert_info(x) ((x)->cert_info) +#define X509_extract_key(x) X509_get_pubkey(x) /*****/ +#define X509_REQ_get_version(x) ASN1_INTEGER_get((x)->req_info->version) +#define X509_REQ_get_subject_name(x) ((x)->req_info->subject) +#define X509_REQ_extract_key(a) X509_REQ_get_pubkey(a) +#define X509_name_cmp(a,b) X509_NAME_cmp((a),(b)) +#define X509_get_signature_type(x) EVP_PKEY_type(OBJ_obj2nid((x)->sig_alg->algorithm)) + +#define X509_CRL_get_version(x) ASN1_INTEGER_get((x)->crl->version) +#define X509_CRL_get_lastUpdate(x) ((x)->crl->lastUpdate) +#define X509_CRL_get_nextUpdate(x) ((x)->crl->nextUpdate) +#define X509_CRL_get_issuer(x) ((x)->crl->issuer) +#define X509_CRL_get_REVOKED(x) ((x)->crl->revoked) + +#define X509_CINF_set_modified(c) ((c)->enc.modified = 1) +#define X509_CINF_get_issuer(c) (&(c)->issuer) +#define X509_CINF_get_extensions(c) ((c)->extensions) +#define X509_CINF_get_signature(c) ((c)->signature) + +OPENSSL_EXPORT void X509_CRL_set_default_method(const X509_CRL_METHOD *meth); +OPENSSL_EXPORT X509_CRL_METHOD *X509_CRL_METHOD_new( + int (*crl_init)(X509_CRL *crl), + int (*crl_free)(X509_CRL *crl), + int (*crl_lookup)(X509_CRL *crl, X509_REVOKED **ret, + ASN1_INTEGER *ser, X509_NAME *issuer), + int (*crl_verify)(X509_CRL *crl, EVP_PKEY *pk)); +OPENSSL_EXPORT void X509_CRL_METHOD_free(X509_CRL_METHOD *m); + +OPENSSL_EXPORT void X509_CRL_set_meth_data(X509_CRL *crl, void *dat); +OPENSSL_EXPORT void *X509_CRL_get_meth_data(X509_CRL *crl); + +/* This one is only used so that a binary form can output, as in + * i2d_X509_NAME(X509_get_X509_PUBKEY(x),&buf) */ +#define X509_get_X509_PUBKEY(x) ((x)->cert_info->key) + + +OPENSSL_EXPORT const char *X509_verify_cert_error_string(long n); + +#ifndef OPENSSL_NO_EVP +OPENSSL_EXPORT int X509_verify(X509 *a, EVP_PKEY *r); + +OPENSSL_EXPORT int X509_REQ_verify(X509_REQ *a, EVP_PKEY *r); +OPENSSL_EXPORT int X509_CRL_verify(X509_CRL *a, EVP_PKEY *r); +OPENSSL_EXPORT int NETSCAPE_SPKI_verify(NETSCAPE_SPKI *a, EVP_PKEY *r); + +OPENSSL_EXPORT NETSCAPE_SPKI * NETSCAPE_SPKI_b64_decode(const char *str, int len); +OPENSSL_EXPORT char * NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *x); +OPENSSL_EXPORT EVP_PKEY *NETSCAPE_SPKI_get_pubkey(NETSCAPE_SPKI *x); +OPENSSL_EXPORT int NETSCAPE_SPKI_set_pubkey(NETSCAPE_SPKI *x, EVP_PKEY *pkey); + +OPENSSL_EXPORT int NETSCAPE_SPKI_print(BIO *out, NETSCAPE_SPKI *spki); + +OPENSSL_EXPORT int X509_signature_dump(BIO *bp,const ASN1_STRING *sig, int indent); +OPENSSL_EXPORT int X509_signature_print(BIO *bp,X509_ALGOR *alg, ASN1_STRING *sig); + +OPENSSL_EXPORT int X509_sign(X509 *x, EVP_PKEY *pkey, const EVP_MD *md); +OPENSSL_EXPORT int X509_sign_ctx(X509 *x, EVP_MD_CTX *ctx); +OPENSSL_EXPORT int X509_REQ_sign(X509_REQ *x, EVP_PKEY *pkey, const EVP_MD *md); +OPENSSL_EXPORT int X509_REQ_sign_ctx(X509_REQ *x, EVP_MD_CTX *ctx); +OPENSSL_EXPORT int X509_CRL_sign(X509_CRL *x, EVP_PKEY *pkey, const EVP_MD *md); +OPENSSL_EXPORT int X509_CRL_sign_ctx(X509_CRL *x, EVP_MD_CTX *ctx); +OPENSSL_EXPORT int NETSCAPE_SPKI_sign(NETSCAPE_SPKI *x, EVP_PKEY *pkey, const EVP_MD *md); + +OPENSSL_EXPORT int X509_pubkey_digest(const X509 *data,const EVP_MD *type, + unsigned char *md, unsigned int *len); +OPENSSL_EXPORT int X509_digest(const X509 *data,const EVP_MD *type, + unsigned char *md, unsigned int *len); +OPENSSL_EXPORT int X509_CRL_digest(const X509_CRL *data,const EVP_MD *type, + unsigned char *md, unsigned int *len); +OPENSSL_EXPORT int X509_REQ_digest(const X509_REQ *data,const EVP_MD *type, + unsigned char *md, unsigned int *len); +OPENSSL_EXPORT int X509_NAME_digest(const X509_NAME *data,const EVP_MD *type, + unsigned char *md, unsigned int *len); +#endif + +#ifndef OPENSSL_NO_FP_API +OPENSSL_EXPORT X509 *d2i_X509_fp(FILE *fp, X509 **x509); +OPENSSL_EXPORT int i2d_X509_fp(FILE *fp,X509 *x509); +OPENSSL_EXPORT X509_CRL *d2i_X509_CRL_fp(FILE *fp,X509_CRL **crl); +OPENSSL_EXPORT int i2d_X509_CRL_fp(FILE *fp,X509_CRL *crl); +OPENSSL_EXPORT X509_REQ *d2i_X509_REQ_fp(FILE *fp,X509_REQ **req); +OPENSSL_EXPORT int i2d_X509_REQ_fp(FILE *fp,X509_REQ *req); +OPENSSL_EXPORT RSA *d2i_RSAPrivateKey_fp(FILE *fp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSAPrivateKey_fp(FILE *fp,RSA *rsa); +OPENSSL_EXPORT RSA *d2i_RSAPublicKey_fp(FILE *fp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSAPublicKey_fp(FILE *fp,RSA *rsa); +OPENSSL_EXPORT RSA *d2i_RSA_PUBKEY_fp(FILE *fp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSA_PUBKEY_fp(FILE *fp,RSA *rsa); +#ifndef OPENSSL_NO_DSA +OPENSSL_EXPORT DSA *d2i_DSA_PUBKEY_fp(FILE *fp, DSA **dsa); +OPENSSL_EXPORT int i2d_DSA_PUBKEY_fp(FILE *fp, DSA *dsa); +OPENSSL_EXPORT DSA *d2i_DSAPrivateKey_fp(FILE *fp, DSA **dsa); +OPENSSL_EXPORT int i2d_DSAPrivateKey_fp(FILE *fp, DSA *dsa); +#endif +OPENSSL_EXPORT EC_KEY *d2i_EC_PUBKEY_fp(FILE *fp, EC_KEY **eckey); +OPENSSL_EXPORT int i2d_EC_PUBKEY_fp(FILE *fp, EC_KEY *eckey); +OPENSSL_EXPORT EC_KEY *d2i_ECPrivateKey_fp(FILE *fp, EC_KEY **eckey); +OPENSSL_EXPORT int i2d_ECPrivateKey_fp(FILE *fp, EC_KEY *eckey); +OPENSSL_EXPORT X509_SIG *d2i_PKCS8_fp(FILE *fp,X509_SIG **p8); +OPENSSL_EXPORT int i2d_PKCS8_fp(FILE *fp,X509_SIG *p8); +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_fp(FILE *fp, + PKCS8_PRIV_KEY_INFO **p8inf); +OPENSSL_EXPORT int i2d_PKCS8_PRIV_KEY_INFO_fp(FILE *fp,PKCS8_PRIV_KEY_INFO *p8inf); +OPENSSL_EXPORT int i2d_PKCS8PrivateKeyInfo_fp(FILE *fp, EVP_PKEY *key); +OPENSSL_EXPORT int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a); +OPENSSL_EXPORT int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a); +#endif + +OPENSSL_EXPORT X509 *d2i_X509_bio(BIO *bp,X509 **x509); +OPENSSL_EXPORT int i2d_X509_bio(BIO *bp,X509 *x509); +OPENSSL_EXPORT X509_CRL *d2i_X509_CRL_bio(BIO *bp,X509_CRL **crl); +OPENSSL_EXPORT int i2d_X509_CRL_bio(BIO *bp,X509_CRL *crl); +OPENSSL_EXPORT X509_REQ *d2i_X509_REQ_bio(BIO *bp,X509_REQ **req); +OPENSSL_EXPORT int i2d_X509_REQ_bio(BIO *bp,X509_REQ *req); +OPENSSL_EXPORT RSA *d2i_RSAPrivateKey_bio(BIO *bp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSAPrivateKey_bio(BIO *bp,RSA *rsa); +OPENSSL_EXPORT RSA *d2i_RSAPublicKey_bio(BIO *bp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSAPublicKey_bio(BIO *bp,RSA *rsa); +OPENSSL_EXPORT RSA *d2i_RSA_PUBKEY_bio(BIO *bp,RSA **rsa); +OPENSSL_EXPORT int i2d_RSA_PUBKEY_bio(BIO *bp,RSA *rsa); +#ifndef OPENSSL_NO_DSA +OPENSSL_EXPORT DSA *d2i_DSA_PUBKEY_bio(BIO *bp, DSA **dsa); +OPENSSL_EXPORT int i2d_DSA_PUBKEY_bio(BIO *bp, DSA *dsa); +OPENSSL_EXPORT DSA *d2i_DSAPrivateKey_bio(BIO *bp, DSA **dsa); +OPENSSL_EXPORT int i2d_DSAPrivateKey_bio(BIO *bp, DSA *dsa); +#endif +OPENSSL_EXPORT EC_KEY *d2i_EC_PUBKEY_bio(BIO *bp, EC_KEY **eckey); +OPENSSL_EXPORT int i2d_EC_PUBKEY_bio(BIO *bp, EC_KEY *eckey); +OPENSSL_EXPORT EC_KEY *d2i_ECPrivateKey_bio(BIO *bp, EC_KEY **eckey); +OPENSSL_EXPORT int i2d_ECPrivateKey_bio(BIO *bp, EC_KEY *eckey); +OPENSSL_EXPORT X509_SIG *d2i_PKCS8_bio(BIO *bp,X509_SIG **p8); +OPENSSL_EXPORT int i2d_PKCS8_bio(BIO *bp,X509_SIG *p8); +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO_bio(BIO *bp, + PKCS8_PRIV_KEY_INFO **p8inf); +OPENSSL_EXPORT int i2d_PKCS8_PRIV_KEY_INFO_bio(BIO *bp,PKCS8_PRIV_KEY_INFO *p8inf); +OPENSSL_EXPORT int i2d_PKCS8PrivateKeyInfo_bio(BIO *bp, EVP_PKEY *key); +OPENSSL_EXPORT int i2d_PrivateKey_bio(BIO *bp, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a); +OPENSSL_EXPORT int i2d_PUBKEY_bio(BIO *bp, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a); + +OPENSSL_EXPORT X509 *X509_dup(X509 *x509); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_dup(X509_ATTRIBUTE *xa); +OPENSSL_EXPORT X509_EXTENSION *X509_EXTENSION_dup(X509_EXTENSION *ex); +OPENSSL_EXPORT X509_CRL *X509_CRL_dup(X509_CRL *crl); +OPENSSL_EXPORT X509_REVOKED *X509_REVOKED_dup(X509_REVOKED *rev); +OPENSSL_EXPORT X509_REQ *X509_REQ_dup(X509_REQ *req); +OPENSSL_EXPORT X509_ALGOR *X509_ALGOR_dup(X509_ALGOR *xn); +OPENSSL_EXPORT int X509_ALGOR_set0(X509_ALGOR *alg, const ASN1_OBJECT *aobj, int ptype, void *pval); +OPENSSL_EXPORT void X509_ALGOR_get0(ASN1_OBJECT **paobj, int *pptype, void **ppval, + X509_ALGOR *algor); +OPENSSL_EXPORT void X509_ALGOR_set_md(X509_ALGOR *alg, const EVP_MD *md); +OPENSSL_EXPORT int X509_ALGOR_cmp(const X509_ALGOR *a, const X509_ALGOR *b); + +OPENSSL_EXPORT X509_NAME *X509_NAME_dup(X509_NAME *xn); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_ENTRY_dup(X509_NAME_ENTRY *ne); + +OPENSSL_EXPORT int X509_cmp_time(const ASN1_TIME *s, time_t *t); +OPENSSL_EXPORT int X509_cmp_current_time(const ASN1_TIME *s); +OPENSSL_EXPORT ASN1_TIME * X509_time_adj(ASN1_TIME *s, long adj, time_t *t); +OPENSSL_EXPORT ASN1_TIME * X509_time_adj_ex(ASN1_TIME *s, int offset_day, long offset_sec, time_t *t); +OPENSSL_EXPORT ASN1_TIME * X509_gmtime_adj(ASN1_TIME *s, long adj); + +OPENSSL_EXPORT const char * X509_get_default_cert_area(void ); +OPENSSL_EXPORT const char * X509_get_default_cert_dir(void ); +OPENSSL_EXPORT const char * X509_get_default_cert_file(void ); +OPENSSL_EXPORT const char * X509_get_default_cert_dir_env(void ); +OPENSSL_EXPORT const char * X509_get_default_cert_file_env(void ); +OPENSSL_EXPORT const char * X509_get_default_private_dir(void ); + +OPENSSL_EXPORT X509_REQ * X509_to_X509_REQ(X509 *x, EVP_PKEY *pkey, const EVP_MD *md); +OPENSSL_EXPORT X509 * X509_REQ_to_X509(X509_REQ *r, int days,EVP_PKEY *pkey); + +DECLARE_ASN1_ENCODE_FUNCTIONS(X509_ALGORS, X509_ALGORS, X509_ALGORS) +DECLARE_ASN1_FUNCTIONS(X509_VAL) + +DECLARE_ASN1_FUNCTIONS(X509_PUBKEY) + +OPENSSL_EXPORT int X509_PUBKEY_set(X509_PUBKEY **x, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY * X509_PUBKEY_get(X509_PUBKEY *key); +OPENSSL_EXPORT int i2d_PUBKEY(const EVP_PKEY *a,unsigned char **pp); +OPENSSL_EXPORT EVP_PKEY * d2i_PUBKEY(EVP_PKEY **a,const unsigned char **pp, + long length); +OPENSSL_EXPORT int i2d_RSA_PUBKEY(const RSA *a,unsigned char **pp); +OPENSSL_EXPORT RSA * d2i_RSA_PUBKEY(RSA **a,const unsigned char **pp, + long length); +#ifndef OPENSSL_NO_DSA +OPENSSL_EXPORT int i2d_DSA_PUBKEY(const DSA *a,unsigned char **pp); +OPENSSL_EXPORT DSA * d2i_DSA_PUBKEY(DSA **a,const unsigned char **pp, + long length); +#endif +OPENSSL_EXPORT int i2d_EC_PUBKEY(const EC_KEY *a, unsigned char **pp); +OPENSSL_EXPORT EC_KEY *d2i_EC_PUBKEY(EC_KEY **a, const unsigned char **pp, + long length); + +DECLARE_ASN1_FUNCTIONS(X509_SIG) +DECLARE_ASN1_FUNCTIONS(X509_REQ_INFO) +DECLARE_ASN1_FUNCTIONS(X509_REQ) + +DECLARE_ASN1_FUNCTIONS(X509_ATTRIBUTE) +OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create(int nid, int atrtype, void *value); + +DECLARE_ASN1_FUNCTIONS(X509_EXTENSION) +DECLARE_ASN1_ENCODE_FUNCTIONS(X509_EXTENSIONS, X509_EXTENSIONS, X509_EXTENSIONS) + +DECLARE_ASN1_FUNCTIONS(X509_NAME_ENTRY) + +DECLARE_ASN1_FUNCTIONS(X509_NAME) + +OPENSSL_EXPORT int X509_NAME_set(X509_NAME **xn, X509_NAME *name); + +DECLARE_ASN1_FUNCTIONS(X509_CINF) + +DECLARE_ASN1_FUNCTIONS(X509) +DECLARE_ASN1_FUNCTIONS(X509_CERT_AUX) + +DECLARE_ASN1_FUNCTIONS(X509_CERT_PAIR) + +/* X509_up_ref adds one to the reference count of |x| and returns + * |x|. */ +OPENSSL_EXPORT X509 *X509_up_ref(X509 *x); + +OPENSSL_EXPORT int X509_get_ex_new_index(long argl, void *argp, CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int X509_set_ex_data(X509 *r, int idx, void *arg); +OPENSSL_EXPORT void *X509_get_ex_data(X509 *r, int idx); +OPENSSL_EXPORT int i2d_X509_AUX(X509 *a,unsigned char **pp); +OPENSSL_EXPORT X509 * d2i_X509_AUX(X509 **a,const unsigned char **pp,long length); + +OPENSSL_EXPORT void X509_get0_signature(ASN1_BIT_STRING **psig, X509_ALGOR **palg, + const X509 *x); +OPENSSL_EXPORT int X509_get_signature_nid(const X509 *x); + +OPENSSL_EXPORT int X509_alias_set1(X509 *x, unsigned char *name, int len); +OPENSSL_EXPORT int X509_keyid_set1(X509 *x, unsigned char *id, int len); +OPENSSL_EXPORT unsigned char * X509_alias_get0(X509 *x, int *len); +OPENSSL_EXPORT unsigned char * X509_keyid_get0(X509 *x, int *len); +OPENSSL_EXPORT int (*X509_TRUST_set_default(int (*trust)(int , X509 *, int)))(int, X509 *, int); +OPENSSL_EXPORT int X509_TRUST_set(int *t, int trust); +OPENSSL_EXPORT int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj); +OPENSSL_EXPORT int X509_add1_reject_object(X509 *x, ASN1_OBJECT *obj); +OPENSSL_EXPORT void X509_trust_clear(X509 *x); +OPENSSL_EXPORT void X509_reject_clear(X509 *x); + +DECLARE_ASN1_FUNCTIONS(X509_REVOKED) +DECLARE_ASN1_FUNCTIONS(X509_CRL_INFO) +DECLARE_ASN1_FUNCTIONS(X509_CRL) + +OPENSSL_EXPORT int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev); +OPENSSL_EXPORT int X509_CRL_get0_by_serial(X509_CRL *crl, + X509_REVOKED **ret, ASN1_INTEGER *serial); +OPENSSL_EXPORT int X509_CRL_get0_by_cert(X509_CRL *crl, X509_REVOKED **ret, X509 *x); + +OPENSSL_EXPORT X509_PKEY * X509_PKEY_new(void ); +OPENSSL_EXPORT void X509_PKEY_free(X509_PKEY *a); + +DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKI) +DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKAC) +DECLARE_ASN1_FUNCTIONS(NETSCAPE_CERT_SEQUENCE) + +#ifndef OPENSSL_NO_EVP +OPENSSL_EXPORT X509_INFO * X509_INFO_new(void); +OPENSSL_EXPORT void X509_INFO_free(X509_INFO *a); +OPENSSL_EXPORT char * X509_NAME_oneline(X509_NAME *a,char *buf,int size); + +OPENSSL_EXPORT int ASN1_digest(i2d_of_void *i2d,const EVP_MD *type,char *data, + unsigned char *md,unsigned int *len); + +OPENSSL_EXPORT int ASN1_item_digest(const ASN1_ITEM *it,const EVP_MD *type,void *data, + unsigned char *md,unsigned int *len); + +OPENSSL_EXPORT int ASN1_item_verify(const ASN1_ITEM *it, X509_ALGOR *algor1, + ASN1_BIT_STRING *signature,void *data,EVP_PKEY *pkey); + +OPENSSL_EXPORT int ASN1_item_sign(const ASN1_ITEM *it, X509_ALGOR *algor1, X509_ALGOR *algor2, + ASN1_BIT_STRING *signature, + void *data, EVP_PKEY *pkey, const EVP_MD *type); +OPENSSL_EXPORT int ASN1_item_sign_ctx(const ASN1_ITEM *it, + X509_ALGOR *algor1, X509_ALGOR *algor2, + ASN1_BIT_STRING *signature, void *asn, EVP_MD_CTX *ctx); +#endif + +OPENSSL_EXPORT int X509_set_version(X509 *x,long version); +OPENSSL_EXPORT int X509_set_serialNumber(X509 *x, ASN1_INTEGER *serial); +OPENSSL_EXPORT ASN1_INTEGER * X509_get_serialNumber(X509 *x); +OPENSSL_EXPORT int X509_set_issuer_name(X509 *x, X509_NAME *name); +OPENSSL_EXPORT X509_NAME * X509_get_issuer_name(X509 *a); +OPENSSL_EXPORT int X509_set_subject_name(X509 *x, X509_NAME *name); +OPENSSL_EXPORT X509_NAME * X509_get_subject_name(X509 *a); +OPENSSL_EXPORT int X509_set_notBefore(X509 *x, const ASN1_TIME *tm); +OPENSSL_EXPORT int X509_set_notAfter(X509 *x, const ASN1_TIME *tm); +OPENSSL_EXPORT int X509_set_pubkey(X509 *x, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY * X509_get_pubkey(X509 *x); +OPENSSL_EXPORT ASN1_BIT_STRING * X509_get0_pubkey_bitstr(const X509 *x); +OPENSSL_EXPORT int X509_certificate_type(X509 *x,EVP_PKEY *pubkey /* optional */); + +OPENSSL_EXPORT int X509_REQ_set_version(X509_REQ *x,long version); +OPENSSL_EXPORT int X509_REQ_set_subject_name(X509_REQ *req,X509_NAME *name); +OPENSSL_EXPORT int X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey); +OPENSSL_EXPORT EVP_PKEY * X509_REQ_get_pubkey(X509_REQ *req); +OPENSSL_EXPORT int X509_REQ_extension_nid(int nid); +OPENSSL_EXPORT const int * X509_REQ_get_extension_nids(void); +OPENSSL_EXPORT void X509_REQ_set_extension_nids(const int *nids); +OPENSSL_EXPORT STACK_OF(X509_EXTENSION) *X509_REQ_get_extensions(X509_REQ *req); +OPENSSL_EXPORT int X509_REQ_add_extensions_nid(X509_REQ *req, STACK_OF(X509_EXTENSION) *exts, + int nid); +OPENSSL_EXPORT int X509_REQ_add_extensions(X509_REQ *req, STACK_OF(X509_EXTENSION) *exts); +OPENSSL_EXPORT int X509_REQ_get_attr_count(const X509_REQ *req); +OPENSSL_EXPORT int X509_REQ_get_attr_by_NID(const X509_REQ *req, int nid, + int lastpos); +OPENSSL_EXPORT int X509_REQ_get_attr_by_OBJ(const X509_REQ *req, ASN1_OBJECT *obj, + int lastpos); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_REQ_get_attr(const X509_REQ *req, int loc); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_REQ_delete_attr(X509_REQ *req, int loc); +OPENSSL_EXPORT int X509_REQ_add1_attr(X509_REQ *req, X509_ATTRIBUTE *attr); +OPENSSL_EXPORT int X509_REQ_add1_attr_by_OBJ(X509_REQ *req, + const ASN1_OBJECT *obj, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT int X509_REQ_add1_attr_by_NID(X509_REQ *req, + int nid, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT int X509_REQ_add1_attr_by_txt(X509_REQ *req, + const char *attrname, int type, + const unsigned char *bytes, int len); + +OPENSSL_EXPORT int X509_CRL_set_version(X509_CRL *x, long version); +OPENSSL_EXPORT int X509_CRL_set_issuer_name(X509_CRL *x, X509_NAME *name); +OPENSSL_EXPORT int X509_CRL_set_lastUpdate(X509_CRL *x, const ASN1_TIME *tm); +OPENSSL_EXPORT int X509_CRL_set_nextUpdate(X509_CRL *x, const ASN1_TIME *tm); +OPENSSL_EXPORT int X509_CRL_sort(X509_CRL *crl); +OPENSSL_EXPORT void X509_CRL_up_ref(X509_CRL *crl); + +OPENSSL_EXPORT int X509_REVOKED_set_serialNumber(X509_REVOKED *x, ASN1_INTEGER *serial); +OPENSSL_EXPORT int X509_REVOKED_set_revocationDate(X509_REVOKED *r, ASN1_TIME *tm); + +OPENSSL_EXPORT X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer, + EVP_PKEY *skey, const EVP_MD *md, unsigned int flags); + +OPENSSL_EXPORT int X509_REQ_check_private_key(X509_REQ *x509,EVP_PKEY *pkey); + +OPENSSL_EXPORT int X509_check_private_key(X509 *x509,EVP_PKEY *pkey); +OPENSSL_EXPORT int X509_chain_check_suiteb(int *perror_depth, + X509 *x, STACK_OF(X509) *chain, + unsigned long flags); +OPENSSL_EXPORT int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk, + unsigned long flags); +OPENSSL_EXPORT STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain); + +OPENSSL_EXPORT int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b); +OPENSSL_EXPORT unsigned long X509_issuer_and_serial_hash(X509 *a); + +OPENSSL_EXPORT int X509_issuer_name_cmp(const X509 *a, const X509 *b); +OPENSSL_EXPORT unsigned long X509_issuer_name_hash(X509 *a); + +OPENSSL_EXPORT int X509_subject_name_cmp(const X509 *a, const X509 *b); +OPENSSL_EXPORT unsigned long X509_subject_name_hash(X509 *x); + +OPENSSL_EXPORT unsigned long X509_issuer_name_hash_old(X509 *a); +OPENSSL_EXPORT unsigned long X509_subject_name_hash_old(X509 *x); + +OPENSSL_EXPORT int X509_cmp(const X509 *a, const X509 *b); +OPENSSL_EXPORT int X509_NAME_cmp(const X509_NAME *a, const X509_NAME *b); +OPENSSL_EXPORT unsigned long X509_NAME_hash(X509_NAME *x); +OPENSSL_EXPORT unsigned long X509_NAME_hash_old(X509_NAME *x); + +OPENSSL_EXPORT int X509_CRL_cmp(const X509_CRL *a, const X509_CRL *b); +OPENSSL_EXPORT int X509_CRL_match(const X509_CRL *a, const X509_CRL *b); +#ifndef OPENSSL_NO_FP_API +OPENSSL_EXPORT int X509_print_ex_fp(FILE *bp,X509 *x, unsigned long nmflag, unsigned long cflag); +OPENSSL_EXPORT int X509_print_fp(FILE *bp,X509 *x); +OPENSSL_EXPORT int X509_CRL_print_fp(FILE *bp,X509_CRL *x); +OPENSSL_EXPORT int X509_REQ_print_fp(FILE *bp,X509_REQ *req); +OPENSSL_EXPORT int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm, int indent, unsigned long flags); +#endif + +OPENSSL_EXPORT int X509_NAME_print(BIO *bp, X509_NAME *name, int obase); +OPENSSL_EXPORT int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent, unsigned long flags); +OPENSSL_EXPORT int X509_print_ex(BIO *bp,X509 *x, unsigned long nmflag, unsigned long cflag); +OPENSSL_EXPORT int X509_print(BIO *bp,X509 *x); +OPENSSL_EXPORT int X509_ocspid_print(BIO *bp,X509 *x); +OPENSSL_EXPORT int X509_CERT_AUX_print(BIO *bp,X509_CERT_AUX *x, int indent); +OPENSSL_EXPORT int X509_CRL_print(BIO *bp,X509_CRL *x); +OPENSSL_EXPORT int X509_REQ_print_ex(BIO *bp, X509_REQ *x, unsigned long nmflag, unsigned long cflag); +OPENSSL_EXPORT int X509_REQ_print(BIO *bp,X509_REQ *req); + +OPENSSL_EXPORT int X509_NAME_entry_count(X509_NAME *name); +OPENSSL_EXPORT int X509_NAME_get_text_by_NID(X509_NAME *name, int nid, + char *buf,int len); +OPENSSL_EXPORT int X509_NAME_get_text_by_OBJ(X509_NAME *name, const ASN1_OBJECT *obj, + char *buf,int len); + +/* NOTE: you should be passsing -1, not 0 as lastpos. The functions that use + * lastpos, search after that position on. */ +OPENSSL_EXPORT int X509_NAME_get_index_by_NID(X509_NAME *name,int nid,int lastpos); +OPENSSL_EXPORT int X509_NAME_get_index_by_OBJ(X509_NAME *name, const ASN1_OBJECT *obj, + int lastpos); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_get_entry(X509_NAME *name, int loc); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_delete_entry(X509_NAME *name, int loc); +OPENSSL_EXPORT int X509_NAME_add_entry(X509_NAME *name,X509_NAME_ENTRY *ne, + int loc, int set); +OPENSSL_EXPORT int X509_NAME_add_entry_by_OBJ(X509_NAME *name, ASN1_OBJECT *obj, int type, + unsigned char *bytes, int len, int loc, int set); +OPENSSL_EXPORT int X509_NAME_add_entry_by_NID(X509_NAME *name, int nid, int type, + unsigned char *bytes, int len, int loc, int set); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_txt(X509_NAME_ENTRY **ne, + const char *field, int type, const unsigned char *bytes, int len); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_NID(X509_NAME_ENTRY **ne, int nid, + int type,unsigned char *bytes, int len); +OPENSSL_EXPORT int X509_NAME_add_entry_by_txt(X509_NAME *name, const char *field, int type, + const unsigned char *bytes, int len, int loc, int set); +OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_OBJ(X509_NAME_ENTRY **ne, + const ASN1_OBJECT *obj, int type,const unsigned char *bytes, + int len); +OPENSSL_EXPORT int X509_NAME_ENTRY_set_object(X509_NAME_ENTRY *ne, + const ASN1_OBJECT *obj); +OPENSSL_EXPORT int X509_NAME_ENTRY_set_data(X509_NAME_ENTRY *ne, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT ASN1_OBJECT * X509_NAME_ENTRY_get_object(X509_NAME_ENTRY *ne); +OPENSSL_EXPORT ASN1_STRING * X509_NAME_ENTRY_get_data(X509_NAME_ENTRY *ne); + +OPENSSL_EXPORT int X509v3_get_ext_count(const STACK_OF(X509_EXTENSION) *x); +OPENSSL_EXPORT int X509v3_get_ext_by_NID(const STACK_OF(X509_EXTENSION) *x, + int nid, int lastpos); +OPENSSL_EXPORT int X509v3_get_ext_by_OBJ(const STACK_OF(X509_EXTENSION) *x, + const ASN1_OBJECT *obj,int lastpos); +OPENSSL_EXPORT int X509v3_get_ext_by_critical(const STACK_OF(X509_EXTENSION) *x, + int crit, int lastpos); +OPENSSL_EXPORT X509_EXTENSION *X509v3_get_ext(const STACK_OF(X509_EXTENSION) *x, int loc); +OPENSSL_EXPORT X509_EXTENSION *X509v3_delete_ext(STACK_OF(X509_EXTENSION) *x, int loc); +OPENSSL_EXPORT STACK_OF(X509_EXTENSION) *X509v3_add_ext(STACK_OF(X509_EXTENSION) **x, + X509_EXTENSION *ex, int loc); + +OPENSSL_EXPORT int X509_get_ext_count(X509 *x); +OPENSSL_EXPORT int X509_get_ext_by_NID(X509 *x, int nid, int lastpos); +OPENSSL_EXPORT int X509_get_ext_by_OBJ(X509 *x,ASN1_OBJECT *obj,int lastpos); +OPENSSL_EXPORT int X509_get_ext_by_critical(X509 *x, int crit, int lastpos); +OPENSSL_EXPORT X509_EXTENSION *X509_get_ext(X509 *x, int loc); +OPENSSL_EXPORT X509_EXTENSION *X509_delete_ext(X509 *x, int loc); +OPENSSL_EXPORT int X509_add_ext(X509 *x, X509_EXTENSION *ex, int loc); +OPENSSL_EXPORT void * X509_get_ext_d2i(X509 *x, int nid, int *crit, int *idx); +OPENSSL_EXPORT int X509_add1_ext_i2d(X509 *x, int nid, void *value, int crit, + unsigned long flags); + +OPENSSL_EXPORT int X509_CRL_get_ext_count(X509_CRL *x); +OPENSSL_EXPORT int X509_CRL_get_ext_by_NID(X509_CRL *x, int nid, int lastpos); +OPENSSL_EXPORT int X509_CRL_get_ext_by_OBJ(X509_CRL *x,ASN1_OBJECT *obj,int lastpos); +OPENSSL_EXPORT int X509_CRL_get_ext_by_critical(X509_CRL *x, int crit, int lastpos); +OPENSSL_EXPORT X509_EXTENSION *X509_CRL_get_ext(X509_CRL *x, int loc); +OPENSSL_EXPORT X509_EXTENSION *X509_CRL_delete_ext(X509_CRL *x, int loc); +OPENSSL_EXPORT int X509_CRL_add_ext(X509_CRL *x, X509_EXTENSION *ex, int loc); +OPENSSL_EXPORT void * X509_CRL_get_ext_d2i(X509_CRL *x, int nid, int *crit, int *idx); +OPENSSL_EXPORT int X509_CRL_add1_ext_i2d(X509_CRL *x, int nid, void *value, int crit, + unsigned long flags); + +OPENSSL_EXPORT int X509_REVOKED_get_ext_count(X509_REVOKED *x); +OPENSSL_EXPORT int X509_REVOKED_get_ext_by_NID(X509_REVOKED *x, int nid, int lastpos); +OPENSSL_EXPORT int X509_REVOKED_get_ext_by_OBJ(X509_REVOKED *x,ASN1_OBJECT *obj,int lastpos); +OPENSSL_EXPORT int X509_REVOKED_get_ext_by_critical(X509_REVOKED *x, int crit, int lastpos); +OPENSSL_EXPORT X509_EXTENSION *X509_REVOKED_get_ext(X509_REVOKED *x, int loc); +OPENSSL_EXPORT X509_EXTENSION *X509_REVOKED_delete_ext(X509_REVOKED *x, int loc); +OPENSSL_EXPORT int X509_REVOKED_add_ext(X509_REVOKED *x, X509_EXTENSION *ex, int loc); +OPENSSL_EXPORT void * X509_REVOKED_get_ext_d2i(X509_REVOKED *x, int nid, int *crit, int *idx); +OPENSSL_EXPORT int X509_REVOKED_add1_ext_i2d(X509_REVOKED *x, int nid, void *value, int crit, + unsigned long flags); + +OPENSSL_EXPORT X509_EXTENSION *X509_EXTENSION_create_by_NID(X509_EXTENSION **ex, + int nid, int crit, ASN1_OCTET_STRING *data); +OPENSSL_EXPORT X509_EXTENSION *X509_EXTENSION_create_by_OBJ(X509_EXTENSION **ex, + const ASN1_OBJECT *obj,int crit,ASN1_OCTET_STRING *data); +OPENSSL_EXPORT int X509_EXTENSION_set_object(X509_EXTENSION *ex,const ASN1_OBJECT *obj); +OPENSSL_EXPORT int X509_EXTENSION_set_critical(X509_EXTENSION *ex, int crit); +OPENSSL_EXPORT int X509_EXTENSION_set_data(X509_EXTENSION *ex, + ASN1_OCTET_STRING *data); +OPENSSL_EXPORT ASN1_OBJECT * X509_EXTENSION_get_object(X509_EXTENSION *ex); +OPENSSL_EXPORT ASN1_OCTET_STRING *X509_EXTENSION_get_data(X509_EXTENSION *ne); +OPENSSL_EXPORT int X509_EXTENSION_get_critical(X509_EXTENSION *ex); + +OPENSSL_EXPORT int X509at_get_attr_count(const STACK_OF(X509_ATTRIBUTE) *x); +OPENSSL_EXPORT int X509at_get_attr_by_NID(const STACK_OF(X509_ATTRIBUTE) *x, int nid, + int lastpos); +OPENSSL_EXPORT int X509at_get_attr_by_OBJ(const STACK_OF(X509_ATTRIBUTE) *sk, const ASN1_OBJECT *obj, + int lastpos); +OPENSSL_EXPORT X509_ATTRIBUTE *X509at_get_attr(const STACK_OF(X509_ATTRIBUTE) *x, int loc); +OPENSSL_EXPORT X509_ATTRIBUTE *X509at_delete_attr(STACK_OF(X509_ATTRIBUTE) *x, int loc); +OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr(STACK_OF(X509_ATTRIBUTE) **x, + X509_ATTRIBUTE *attr); +OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_OBJ(STACK_OF(X509_ATTRIBUTE) **x, + const ASN1_OBJECT *obj, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_NID(STACK_OF(X509_ATTRIBUTE) **x, + int nid, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_txt(STACK_OF(X509_ATTRIBUTE) **x, + const char *attrname, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT void *X509at_get0_data_by_OBJ(STACK_OF(X509_ATTRIBUTE) *x, + ASN1_OBJECT *obj, int lastpos, int type); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_NID(X509_ATTRIBUTE **attr, int nid, + int atrtype, const void *data, int len); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_OBJ(X509_ATTRIBUTE **attr, + const ASN1_OBJECT *obj, int atrtype, const void *data, int len); +OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_txt(X509_ATTRIBUTE **attr, + const char *atrname, int type, const unsigned char *bytes, int len); +OPENSSL_EXPORT int X509_ATTRIBUTE_set1_object(X509_ATTRIBUTE *attr, const ASN1_OBJECT *obj); +OPENSSL_EXPORT int X509_ATTRIBUTE_set1_data(X509_ATTRIBUTE *attr, int attrtype, const void *data, int len); +OPENSSL_EXPORT void *X509_ATTRIBUTE_get0_data(X509_ATTRIBUTE *attr, int idx, + int atrtype, void *data); +OPENSSL_EXPORT int X509_ATTRIBUTE_count(X509_ATTRIBUTE *attr); +OPENSSL_EXPORT ASN1_OBJECT *X509_ATTRIBUTE_get0_object(X509_ATTRIBUTE *attr); +OPENSSL_EXPORT ASN1_TYPE *X509_ATTRIBUTE_get0_type(X509_ATTRIBUTE *attr, int idx); + +OPENSSL_EXPORT int EVP_PKEY_get_attr_count(const EVP_PKEY *key); +OPENSSL_EXPORT int EVP_PKEY_get_attr_by_NID(const EVP_PKEY *key, int nid, + int lastpos); +OPENSSL_EXPORT int EVP_PKEY_get_attr_by_OBJ(const EVP_PKEY *key, ASN1_OBJECT *obj, + int lastpos); +OPENSSL_EXPORT X509_ATTRIBUTE *EVP_PKEY_get_attr(const EVP_PKEY *key, int loc); +OPENSSL_EXPORT X509_ATTRIBUTE *EVP_PKEY_delete_attr(EVP_PKEY *key, int loc); +OPENSSL_EXPORT int EVP_PKEY_add1_attr(EVP_PKEY *key, X509_ATTRIBUTE *attr); +OPENSSL_EXPORT int EVP_PKEY_add1_attr_by_OBJ(EVP_PKEY *key, + const ASN1_OBJECT *obj, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT int EVP_PKEY_add1_attr_by_NID(EVP_PKEY *key, + int nid, int type, + const unsigned char *bytes, int len); +OPENSSL_EXPORT int EVP_PKEY_add1_attr_by_txt(EVP_PKEY *key, + const char *attrname, int type, + const unsigned char *bytes, int len); + +OPENSSL_EXPORT int X509_verify_cert(X509_STORE_CTX *ctx); + +/* lookup a cert from a X509 STACK */ +OPENSSL_EXPORT X509 *X509_find_by_issuer_and_serial(STACK_OF(X509) *sk,X509_NAME *name, + ASN1_INTEGER *serial); +OPENSSL_EXPORT X509 *X509_find_by_subject(STACK_OF(X509) *sk,X509_NAME *name); + +DECLARE_ASN1_FUNCTIONS(PBEPARAM) +DECLARE_ASN1_FUNCTIONS(PBE2PARAM) +DECLARE_ASN1_FUNCTIONS(PBKDF2PARAM) + +OPENSSL_EXPORT int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, + const unsigned char *salt, int saltlen); + +OPENSSL_EXPORT X509_ALGOR *PKCS5_pbe_set(int alg, int iter, + const unsigned char *salt, int saltlen); +OPENSSL_EXPORT X509_ALGOR *PKCS5_pbe2_set(const EVP_CIPHER *cipher, int iter, + unsigned char *salt, int saltlen); +OPENSSL_EXPORT X509_ALGOR *PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, + unsigned char *salt, int saltlen, + unsigned char *aiv, int prf_nid); + +OPENSSL_EXPORT X509_ALGOR *PKCS5_pbkdf2_set(int iter, unsigned char *salt, int saltlen, + int prf_nid, int keylen); + +/* PKCS#8 utilities */ + +DECLARE_ASN1_FUNCTIONS(PKCS8_PRIV_KEY_INFO) + +OPENSSL_EXPORT EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *p8); +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8(EVP_PKEY *pkey); +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *EVP_PKEY2PKCS8_broken(EVP_PKEY *pkey, int broken); +OPENSSL_EXPORT PKCS8_PRIV_KEY_INFO *PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken); + +OPENSSL_EXPORT int PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj, + int version, int ptype, void *pval, + unsigned char *penc, int penclen); +OPENSSL_EXPORT int PKCS8_pkey_get0(ASN1_OBJECT **ppkalg, + const unsigned char **pk, int *ppklen, + X509_ALGOR **pa, + PKCS8_PRIV_KEY_INFO *p8); + +OPENSSL_EXPORT int X509_PUBKEY_set0_param(X509_PUBKEY *pub, const ASN1_OBJECT *aobj, + int ptype, void *pval, + unsigned char *penc, int penclen); +OPENSSL_EXPORT int X509_PUBKEY_get0_param(ASN1_OBJECT **ppkalg, + const unsigned char **pk, int *ppklen, + X509_ALGOR **pa, + X509_PUBKEY *pub); + +OPENSSL_EXPORT int X509_check_trust(X509 *x, int id, int flags); +OPENSSL_EXPORT int X509_TRUST_get_count(void); +OPENSSL_EXPORT X509_TRUST * X509_TRUST_get0(int idx); +OPENSSL_EXPORT int X509_TRUST_get_by_id(int id); +OPENSSL_EXPORT int X509_TRUST_add(int id, int flags, int (*ck)(X509_TRUST *, X509 *, int), + char *name, int arg1, void *arg2); +OPENSSL_EXPORT void X509_TRUST_cleanup(void); +OPENSSL_EXPORT int X509_TRUST_get_flags(X509_TRUST *xp); +OPENSSL_EXPORT char *X509_TRUST_get0_name(X509_TRUST *xp); +OPENSSL_EXPORT int X509_TRUST_get_trust(X509_TRUST *xp); + +/* PKCS7_get_certificates parses a PKCS#7, SignedData structure from |cbs| and + * appends the included certificates to |out_certs|. It returns one on success + * and zero on error. */ +OPENSSL_EXPORT int PKCS7_get_certificates(STACK_OF(X509) *out_certs, CBS *cbs); + +/* PKCS7_bundle_certificates appends a PKCS#7, SignedData structure containing + * |certs| to |out|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int PKCS7_bundle_certificates( + CBB *out, const STACK_OF(X509) *certs); + +/* PKCS7_get_CRLs parses a PKCS#7, SignedData structure from |cbs| and appends + * the included CRLs to |out_crls|. It returns one on success and zero on + * error. */ +OPENSSL_EXPORT int PKCS7_get_CRLs(STACK_OF(X509_CRL) *out_crls, CBS *cbs); + +/* PKCS7_bundle_CRLs appends a PKCS#7, SignedData structure containing + * |crls| to |out|. It returns one on success and zero on error. */ +OPENSSL_EXPORT int PKCS7_bundle_CRLs(CBB *out, const STACK_OF(X509_CRL) *crls); + +/* PKCS7_get_PEM_certificates reads a PEM-encoded, PKCS#7, SignedData structure + * from |pem_bio| and appends the included certificates to |out_certs|. It + * returns one on success and zero on error. */ +OPENSSL_EXPORT int PKCS7_get_PEM_certificates(STACK_OF(X509) *out_certs, + BIO *pem_bio); + +/* PKCS7_get_PEM_CRLs reads a PEM-encoded, PKCS#7, SignedData structure from + * |pem_bio| and appends the included CRLs to |out_crls|. It returns one on + * success and zero on error. */ +OPENSSL_EXPORT int PKCS7_get_PEM_CRLs(STACK_OF(X509_CRL) *out_crls, + BIO *pem_bio); + +/* EVP_PK values indicate the algorithm of the public key in a certificate. */ + +#define EVP_PK_RSA 0x0001 +#define EVP_PK_DSA 0x0002 +#define EVP_PK_DH 0x0004 +#define EVP_PK_EC 0x0008 + +/* EVP_PKS values indicate the algorithm used to sign a certificate. */ + +#define EVP_PKS_RSA 0x0100 +#define EVP_PKS_DSA 0x0200 +#define EVP_PKS_EC 0x0400 + +/* EVP_PKT values are flags that define what public-key operations can be + * performed with the public key from a certificate. */ + +/* EVP_PKT_SIGN indicates that the public key can be used for signing. */ +#define EVP_PKT_SIGN 0x0010 +/* EVP_PKT_ENC indicates that a session key can be encrypted to the public + * key. */ +#define EVP_PKT_ENC 0x0020 +/* EVP_PKT_EXCH indicates that key-agreement can be performed. */ +#define EVP_PKT_EXCH 0x0040 +/* EVP_PKT_EXP indicates that key is weak (i.e. "export"). */ +#define EVP_PKT_EXP 0x1000 + + +#ifdef __cplusplus +} +#endif + +#define X509_R_AKID_MISMATCH 100 +#define X509_R_BAD_PKCS7_VERSION 101 +#define X509_R_BAD_X509_FILETYPE 102 +#define X509_R_BASE64_DECODE_ERROR 103 +#define X509_R_CANT_CHECK_DH_KEY 104 +#define X509_R_CERT_ALREADY_IN_HASH_TABLE 105 +#define X509_R_CRL_ALREADY_DELTA 106 +#define X509_R_CRL_VERIFY_FAILURE 107 +#define X509_R_IDP_MISMATCH 108 +#define X509_R_INVALID_BIT_STRING_BITS_LEFT 109 +#define X509_R_INVALID_DIRECTORY 110 +#define X509_R_INVALID_FIELD_NAME 111 +#define X509_R_INVALID_TRUST 112 +#define X509_R_ISSUER_MISMATCH 113 +#define X509_R_KEY_TYPE_MISMATCH 114 +#define X509_R_KEY_VALUES_MISMATCH 115 +#define X509_R_LOADING_CERT_DIR 116 +#define X509_R_LOADING_DEFAULTS 117 +#define X509_R_METHOD_NOT_SUPPORTED 118 +#define X509_R_NEWER_CRL_NOT_NEWER 119 +#define X509_R_NOT_PKCS7_SIGNED_DATA 120 +#define X509_R_NO_CERTIFICATES_INCLUDED 121 +#define X509_R_NO_CERT_SET_FOR_US_TO_VERIFY 122 +#define X509_R_NO_CRL_NUMBER 123 +#define X509_R_PUBLIC_KEY_DECODE_ERROR 124 +#define X509_R_PUBLIC_KEY_ENCODE_ERROR 125 +#define X509_R_SHOULD_RETRY 126 +#define X509_R_UNABLE_TO_FIND_PARAMETERS_IN_CHAIN 127 +#define X509_R_UNABLE_TO_GET_CERTS_PUBLIC_KEY 128 +#define X509_R_UNKNOWN_KEY_TYPE 129 +#define X509_R_UNKNOWN_NID 130 +#define X509_R_UNKNOWN_PURPOSE_ID 131 +#define X509_R_UNKNOWN_TRUST_ID 132 +#define X509_R_UNSUPPORTED_ALGORITHM 133 +#define X509_R_WRONG_LOOKUP_TYPE 134 +#define X509_R_WRONG_TYPE 135 +#define X509_R_NO_CRLS_INCLUDED 136 + +#endif diff --git a/project/jni/boringssl/include/openssl/x509_vfy.h b/project/jni/boringssl/include/openssl/x509_vfy.h new file mode 100644 index 000000000..b39ef49c9 --- /dev/null +++ b/project/jni/boringssl/include/openssl/x509_vfy.h @@ -0,0 +1,611 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#ifndef HEADER_X509_H +#include +/* openssl/x509.h ends up #include-ing this file at about the only + * appropriate moment. */ +#endif + +#ifndef HEADER_X509_VFY_H +#define HEADER_X509_VFY_H + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#if 0 +/* Outer object */ +typedef struct x509_hash_dir_st + { + int num_dirs; + char **dirs; + int *dirs_type; + int num_dirs_alloced; + } X509_HASH_DIR_CTX; +#endif + +typedef struct x509_file_st + { + int num_paths; /* number of paths to files or directories */ + int num_alloced; + char **paths; /* the list of paths or directories */ + int *path_type; + } X509_CERT_FILE_CTX; + +/*******************************/ +/* +SSL_CTX -> X509_STORE + -> X509_LOOKUP + ->X509_LOOKUP_METHOD + -> X509_LOOKUP + ->X509_LOOKUP_METHOD + +SSL -> X509_STORE_CTX + ->X509_STORE + +The X509_STORE holds the tables etc for verification stuff. +A X509_STORE_CTX is used while validating a single certificate. +The X509_STORE has X509_LOOKUPs for looking up certs. +The X509_STORE then calls a function to actually verify the +certificate chain. +*/ + +#define X509_LU_RETRY -1 +#define X509_LU_FAIL 0 +#define X509_LU_X509 1 +#define X509_LU_CRL 2 +#define X509_LU_PKEY 3 + +typedef struct x509_object_st + { + /* one of the above types */ + int type; + union { + char *ptr; + X509 *x509; + X509_CRL *crl; + EVP_PKEY *pkey; + } data; + } X509_OBJECT; + +typedef struct x509_lookup_st X509_LOOKUP; + +DECLARE_STACK_OF(X509_LOOKUP) +DECLARE_STACK_OF(X509_OBJECT) + +/* This is a static that defines the function interface */ +typedef struct x509_lookup_method_st + { + const char *name; + int (*new_item)(X509_LOOKUP *ctx); + void (*free)(X509_LOOKUP *ctx); + int (*init)(X509_LOOKUP *ctx); + int (*shutdown)(X509_LOOKUP *ctx); + int (*ctrl)(X509_LOOKUP *ctx,int cmd,const char *argc,long argl, + char **ret); + int (*get_by_subject)(X509_LOOKUP *ctx,int type,X509_NAME *name, + X509_OBJECT *ret); + int (*get_by_issuer_serial)(X509_LOOKUP *ctx,int type,X509_NAME *name, + ASN1_INTEGER *serial,X509_OBJECT *ret); + int (*get_by_fingerprint)(X509_LOOKUP *ctx,int type, + unsigned char *bytes,int len, + X509_OBJECT *ret); + int (*get_by_alias)(X509_LOOKUP *ctx,int type,char *str,int len, + X509_OBJECT *ret); + } X509_LOOKUP_METHOD; + +typedef struct X509_VERIFY_PARAM_ID_st X509_VERIFY_PARAM_ID; + +/* This structure hold all parameters associated with a verify operation + * by including an X509_VERIFY_PARAM structure in related structures the + * parameters used can be customized + */ + +typedef struct X509_VERIFY_PARAM_st + { + char *name; + time_t check_time; /* Time to use */ + unsigned long inh_flags; /* Inheritance flags */ + unsigned long flags; /* Various verify flags */ + int purpose; /* purpose to check untrusted certificates */ + int trust; /* trust setting to check */ + int depth; /* Verify depth */ + STACK_OF(ASN1_OBJECT) *policies; /* Permissible policies */ + X509_VERIFY_PARAM_ID *id; /* opaque ID data */ + } X509_VERIFY_PARAM; + +DECLARE_STACK_OF(X509_VERIFY_PARAM) + +/* This is used to hold everything. It is used for all certificate + * validation. Once we have a certificate chain, the 'verify' + * function is then called to actually check the cert chain. */ +struct x509_store_st + { + /* The following is a cache of trusted certs */ + int cache; /* if true, stash any hits */ + STACK_OF(X509_OBJECT) *objs; /* Cache of all objects */ + CRYPTO_MUTEX objs_lock; + + /* These are external lookup methods */ + STACK_OF(X509_LOOKUP) *get_cert_methods; + + X509_VERIFY_PARAM *param; + + /* Callbacks for various operations */ + int (*verify)(X509_STORE_CTX *ctx); /* called to verify a certificate */ + int (*verify_cb)(int ok,X509_STORE_CTX *ctx); /* error callback */ + int (*get_issuer)(X509 **issuer, X509_STORE_CTX *ctx, X509 *x); /* get issuers cert from ctx */ + int (*check_issued)(X509_STORE_CTX *ctx, X509 *x, X509 *issuer); /* check issued */ + int (*check_revocation)(X509_STORE_CTX *ctx); /* Check revocation status of chain */ + int (*get_crl)(X509_STORE_CTX *ctx, X509_CRL **crl, X509 *x); /* retrieve CRL */ + int (*check_crl)(X509_STORE_CTX *ctx, X509_CRL *crl); /* Check CRL validity */ + int (*cert_crl)(X509_STORE_CTX *ctx, X509_CRL *crl, X509 *x); /* Check certificate against CRL */ + STACK_OF(X509) * (*lookup_certs)(X509_STORE_CTX *ctx, X509_NAME *nm); + STACK_OF(X509_CRL) * (*lookup_crls)(X509_STORE_CTX *ctx, X509_NAME *nm); + int (*cleanup)(X509_STORE_CTX *ctx); + + CRYPTO_refcount_t references; + } /* X509_STORE */; + +OPENSSL_EXPORT int X509_STORE_set_depth(X509_STORE *store, int depth); + +#define X509_STORE_set_verify_cb_func(ctx,func) ((ctx)->verify_cb=(func)) +#define X509_STORE_set_verify_func(ctx,func) ((ctx)->verify=(func)) + +/* This is the functions plus an instance of the local variables. */ +struct x509_lookup_st + { + int init; /* have we been started */ + int skip; /* don't use us. */ + X509_LOOKUP_METHOD *method; /* the functions */ + char *method_data; /* method data */ + + X509_STORE *store_ctx; /* who owns us */ + } /* X509_LOOKUP */; + +/* This is a used when verifying cert chains. Since the + * gathering of the cert chain can take some time (and have to be + * 'retried', this needs to be kept and passed around. */ +struct x509_store_ctx_st /* X509_STORE_CTX */ + { + X509_STORE *ctx; + int current_method; /* used when looking up certs */ + + /* The following are set by the caller */ + X509 *cert; /* The cert to check */ + STACK_OF(X509) *untrusted; /* chain of X509s - untrusted - passed in */ + STACK_OF(X509_CRL) *crls; /* set of CRLs passed in */ + + X509_VERIFY_PARAM *param; + void *other_ctx; /* Other info for use with get_issuer() */ + + /* Callbacks for various operations */ + int (*verify)(X509_STORE_CTX *ctx); /* called to verify a certificate */ + int (*verify_cb)(int ok,X509_STORE_CTX *ctx); /* error callback */ + int (*get_issuer)(X509 **issuer, X509_STORE_CTX *ctx, X509 *x); /* get issuers cert from ctx */ + int (*check_issued)(X509_STORE_CTX *ctx, X509 *x, X509 *issuer); /* check issued */ + int (*check_revocation)(X509_STORE_CTX *ctx); /* Check revocation status of chain */ + int (*get_crl)(X509_STORE_CTX *ctx, X509_CRL **crl, X509 *x); /* retrieve CRL */ + int (*check_crl)(X509_STORE_CTX *ctx, X509_CRL *crl); /* Check CRL validity */ + int (*cert_crl)(X509_STORE_CTX *ctx, X509_CRL *crl, X509 *x); /* Check certificate against CRL */ + int (*check_policy)(X509_STORE_CTX *ctx); + STACK_OF(X509) * (*lookup_certs)(X509_STORE_CTX *ctx, X509_NAME *nm); + STACK_OF(X509_CRL) * (*lookup_crls)(X509_STORE_CTX *ctx, X509_NAME *nm); + int (*cleanup)(X509_STORE_CTX *ctx); + + /* The following is built up */ + int valid; /* if 0, rebuild chain */ + int last_untrusted; /* index of last untrusted cert */ + STACK_OF(X509) *chain; /* chain of X509s - built up and trusted */ + X509_POLICY_TREE *tree; /* Valid policy tree */ + + int explicit_policy; /* Require explicit policy value */ + + /* When something goes wrong, this is why */ + int error_depth; + int error; + X509 *current_cert; + X509 *current_issuer; /* cert currently being tested as valid issuer */ + X509_CRL *current_crl; /* current CRL */ + + int current_crl_score; /* score of current CRL */ + unsigned int current_reasons; /* Reason mask */ + + X509_STORE_CTX *parent; /* For CRL path validation: parent context */ + + CRYPTO_EX_DATA ex_data; + } /* X509_STORE_CTX */; + +OPENSSL_EXPORT void X509_STORE_CTX_set_depth(X509_STORE_CTX *ctx, int depth); + +#define X509_STORE_CTX_set_app_data(ctx,data) \ + X509_STORE_CTX_set_ex_data(ctx,0,data) +#define X509_STORE_CTX_get_app_data(ctx) \ + X509_STORE_CTX_get_ex_data(ctx,0) + +#define X509_L_FILE_LOAD 1 +#define X509_L_ADD_DIR 2 + +#define X509_LOOKUP_load_file(x,name,type) \ + X509_LOOKUP_ctrl((x),X509_L_FILE_LOAD,(name),(long)(type),NULL) + +#define X509_LOOKUP_add_dir(x,name,type) \ + X509_LOOKUP_ctrl((x),X509_L_ADD_DIR,(name),(long)(type),NULL) + +#define X509_V_OK 0 +/* illegal error (for uninitialized values, to avoid X509_V_OK): 1 */ + +#define X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT 2 +#define X509_V_ERR_UNABLE_TO_GET_CRL 3 +#define X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE 4 +#define X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE 5 +#define X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY 6 +#define X509_V_ERR_CERT_SIGNATURE_FAILURE 7 +#define X509_V_ERR_CRL_SIGNATURE_FAILURE 8 +#define X509_V_ERR_CERT_NOT_YET_VALID 9 +#define X509_V_ERR_CERT_HAS_EXPIRED 10 +#define X509_V_ERR_CRL_NOT_YET_VALID 11 +#define X509_V_ERR_CRL_HAS_EXPIRED 12 +#define X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD 13 +#define X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD 14 +#define X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD 15 +#define X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD 16 +#define X509_V_ERR_OUT_OF_MEM 17 +#define X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT 18 +#define X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN 19 +#define X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 20 +#define X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE 21 +#define X509_V_ERR_CERT_CHAIN_TOO_LONG 22 +#define X509_V_ERR_CERT_REVOKED 23 +#define X509_V_ERR_INVALID_CA 24 +#define X509_V_ERR_PATH_LENGTH_EXCEEDED 25 +#define X509_V_ERR_INVALID_PURPOSE 26 +#define X509_V_ERR_CERT_UNTRUSTED 27 +#define X509_V_ERR_CERT_REJECTED 28 +/* These are 'informational' when looking for issuer cert */ +#define X509_V_ERR_SUBJECT_ISSUER_MISMATCH 29 +#define X509_V_ERR_AKID_SKID_MISMATCH 30 +#define X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH 31 +#define X509_V_ERR_KEYUSAGE_NO_CERTSIGN 32 + +#define X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER 33 +#define X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION 34 +#define X509_V_ERR_KEYUSAGE_NO_CRL_SIGN 35 +#define X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION 36 +#define X509_V_ERR_INVALID_NON_CA 37 +#define X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED 38 +#define X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE 39 +#define X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED 40 + +#define X509_V_ERR_INVALID_EXTENSION 41 +#define X509_V_ERR_INVALID_POLICY_EXTENSION 42 +#define X509_V_ERR_NO_EXPLICIT_POLICY 43 +#define X509_V_ERR_DIFFERENT_CRL_SCOPE 44 +#define X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE 45 + +#define X509_V_ERR_UNNESTED_RESOURCE 46 + +#define X509_V_ERR_PERMITTED_VIOLATION 47 +#define X509_V_ERR_EXCLUDED_VIOLATION 48 +#define X509_V_ERR_SUBTREE_MINMAX 49 +#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE 51 +#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX 52 +#define X509_V_ERR_UNSUPPORTED_NAME_SYNTAX 53 +#define X509_V_ERR_CRL_PATH_VALIDATION_ERROR 54 + +/* Suite B mode algorithm violation */ +#define X509_V_ERR_SUITE_B_INVALID_VERSION 56 +#define X509_V_ERR_SUITE_B_INVALID_ALGORITHM 57 +#define X509_V_ERR_SUITE_B_INVALID_CURVE 58 +#define X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM 59 +#define X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED 60 +#define X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 61 + +/* Host, email and IP check errors */ +#define X509_V_ERR_HOSTNAME_MISMATCH 62 +#define X509_V_ERR_EMAIL_MISMATCH 63 +#define X509_V_ERR_IP_ADDRESS_MISMATCH 64 + +/* The application is not happy */ +#define X509_V_ERR_APPLICATION_VERIFICATION 50 + +/* Certificate verify flags */ + +/* Send issuer+subject checks to verify_cb */ +#define X509_V_FLAG_CB_ISSUER_CHECK 0x1 +/* Use check time instead of current time */ +#define X509_V_FLAG_USE_CHECK_TIME 0x2 +/* Lookup CRLs */ +#define X509_V_FLAG_CRL_CHECK 0x4 +/* Lookup CRLs for whole chain */ +#define X509_V_FLAG_CRL_CHECK_ALL 0x8 +/* Ignore unhandled critical extensions */ +#define X509_V_FLAG_IGNORE_CRITICAL 0x10 +/* Disable workarounds for broken certificates */ +#define X509_V_FLAG_X509_STRICT 0x20 +/* Enable proxy certificate validation */ +#define X509_V_FLAG_ALLOW_PROXY_CERTS 0x40 +/* Enable policy checking */ +#define X509_V_FLAG_POLICY_CHECK 0x80 +/* Policy variable require-explicit-policy */ +#define X509_V_FLAG_EXPLICIT_POLICY 0x100 +/* Policy variable inhibit-any-policy */ +#define X509_V_FLAG_INHIBIT_ANY 0x200 +/* Policy variable inhibit-policy-mapping */ +#define X509_V_FLAG_INHIBIT_MAP 0x400 +/* Notify callback that policy is OK */ +#define X509_V_FLAG_NOTIFY_POLICY 0x800 +/* Extended CRL features such as indirect CRLs, alternate CRL signing keys */ +#define X509_V_FLAG_EXTENDED_CRL_SUPPORT 0x1000 +/* Delta CRL support */ +#define X509_V_FLAG_USE_DELTAS 0x2000 +/* Check selfsigned CA signature */ +#define X509_V_FLAG_CHECK_SS_SIGNATURE 0x4000 +/* Use trusted store first */ +#define X509_V_FLAG_TRUSTED_FIRST 0x8000 +/* Suite B 128 bit only mode: not normally used */ +#define X509_V_FLAG_SUITEB_128_LOS_ONLY 0x10000 +/* Suite B 192 bit only mode */ +#define X509_V_FLAG_SUITEB_192_LOS 0x20000 +/* Suite B 128 bit mode allowing 192 bit algorithms */ +#define X509_V_FLAG_SUITEB_128_LOS 0x30000 + +/* Allow partial chains if at least one certificate is in trusted store */ +#define X509_V_FLAG_PARTIAL_CHAIN 0x80000 + +#define X509_VP_FLAG_DEFAULT 0x1 +#define X509_VP_FLAG_OVERWRITE 0x2 +#define X509_VP_FLAG_RESET_FLAGS 0x4 +#define X509_VP_FLAG_LOCKED 0x8 +#define X509_VP_FLAG_ONCE 0x10 + +/* Internal use: mask of policy related options */ +#define X509_V_FLAG_POLICY_MASK (X509_V_FLAG_POLICY_CHECK \ + | X509_V_FLAG_EXPLICIT_POLICY \ + | X509_V_FLAG_INHIBIT_ANY \ + | X509_V_FLAG_INHIBIT_MAP) + +OPENSSL_EXPORT int X509_OBJECT_idx_by_subject(STACK_OF(X509_OBJECT) *h, int type, + X509_NAME *name); +OPENSSL_EXPORT X509_OBJECT *X509_OBJECT_retrieve_by_subject(STACK_OF(X509_OBJECT) *h,int type,X509_NAME *name); +OPENSSL_EXPORT X509_OBJECT *X509_OBJECT_retrieve_match(STACK_OF(X509_OBJECT) *h, X509_OBJECT *x); +OPENSSL_EXPORT void X509_OBJECT_up_ref_count(X509_OBJECT *a); +OPENSSL_EXPORT void X509_OBJECT_free_contents(X509_OBJECT *a); +OPENSSL_EXPORT X509_STORE *X509_STORE_new(void ); +OPENSSL_EXPORT void X509_STORE_free(X509_STORE *v); + +OPENSSL_EXPORT STACK_OF(X509)* X509_STORE_get1_certs(X509_STORE_CTX *st, X509_NAME *nm); +OPENSSL_EXPORT STACK_OF(X509_CRL)* X509_STORE_get1_crls(X509_STORE_CTX *st, X509_NAME *nm); +OPENSSL_EXPORT int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags); +OPENSSL_EXPORT int X509_STORE_set_purpose(X509_STORE *ctx, int purpose); +OPENSSL_EXPORT int X509_STORE_set_trust(X509_STORE *ctx, int trust); +OPENSSL_EXPORT int X509_STORE_set1_param(X509_STORE *ctx, X509_VERIFY_PARAM *pm); + +OPENSSL_EXPORT void X509_STORE_set_verify_cb(X509_STORE *ctx, + int (*verify_cb)(int, X509_STORE_CTX *)); + +OPENSSL_EXPORT void X509_STORE_set_lookup_crls_cb(X509_STORE *ctx, + STACK_OF(X509_CRL)* (*cb)(X509_STORE_CTX *ctx, X509_NAME *nm)); + +OPENSSL_EXPORT X509_STORE_CTX *X509_STORE_CTX_new(void); + +OPENSSL_EXPORT int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x); + +OPENSSL_EXPORT void X509_STORE_CTX_free(X509_STORE_CTX *ctx); +OPENSSL_EXPORT int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, + X509 *x509, STACK_OF(X509) *chain); +OPENSSL_EXPORT void X509_STORE_CTX_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk); +OPENSSL_EXPORT void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx); + +OPENSSL_EXPORT X509_STORE *X509_STORE_CTX_get0_store(X509_STORE_CTX *ctx); + +OPENSSL_EXPORT X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m); + +OPENSSL_EXPORT X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void); +OPENSSL_EXPORT X509_LOOKUP_METHOD *X509_LOOKUP_file(void); + +OPENSSL_EXPORT int X509_STORE_add_cert(X509_STORE *ctx, X509 *x); +OPENSSL_EXPORT int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x); + +OPENSSL_EXPORT int X509_STORE_get_by_subject(X509_STORE_CTX *vs,int type,X509_NAME *name, + X509_OBJECT *ret); + +OPENSSL_EXPORT int X509_LOOKUP_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc, + long argl, char **ret); + +#ifndef OPENSSL_NO_STDIO +OPENSSL_EXPORT int X509_load_cert_file(X509_LOOKUP *ctx, const char *file, int type); +OPENSSL_EXPORT int X509_load_crl_file(X509_LOOKUP *ctx, const char *file, int type); +OPENSSL_EXPORT int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type); +#endif + + +OPENSSL_EXPORT X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method); +OPENSSL_EXPORT void X509_LOOKUP_free(X509_LOOKUP *ctx); +OPENSSL_EXPORT int X509_LOOKUP_init(X509_LOOKUP *ctx); +OPENSSL_EXPORT int X509_LOOKUP_by_subject(X509_LOOKUP *ctx, int type, X509_NAME *name, + X509_OBJECT *ret); +OPENSSL_EXPORT int X509_LOOKUP_by_issuer_serial(X509_LOOKUP *ctx, int type, X509_NAME *name, + ASN1_INTEGER *serial, X509_OBJECT *ret); +OPENSSL_EXPORT int X509_LOOKUP_by_fingerprint(X509_LOOKUP *ctx, int type, + unsigned char *bytes, int len, X509_OBJECT *ret); +OPENSSL_EXPORT int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, int type, char *str, + int len, X509_OBJECT *ret); +OPENSSL_EXPORT int X509_LOOKUP_shutdown(X509_LOOKUP *ctx); + +#ifndef OPENSSL_NO_STDIO +OPENSSL_EXPORT int X509_STORE_load_locations (X509_STORE *ctx, + const char *file, const char *dir); +OPENSSL_EXPORT int X509_STORE_set_default_paths(X509_STORE *ctx); +#endif + +OPENSSL_EXPORT int X509_STORE_CTX_get_ex_new_index(long argl, void *argp, CRYPTO_EX_unused *unused, + CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); +OPENSSL_EXPORT int X509_STORE_CTX_set_ex_data(X509_STORE_CTX *ctx,int idx,void *data); +OPENSSL_EXPORT void * X509_STORE_CTX_get_ex_data(X509_STORE_CTX *ctx,int idx); +OPENSSL_EXPORT int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx); +OPENSSL_EXPORT void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx,int s); +OPENSSL_EXPORT int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx); +OPENSSL_EXPORT X509 * X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx); +OPENSSL_EXPORT X509 *X509_STORE_CTX_get0_current_issuer(X509_STORE_CTX *ctx); +OPENSSL_EXPORT X509_CRL *X509_STORE_CTX_get0_current_crl(X509_STORE_CTX *ctx); +OPENSSL_EXPORT X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(X509_STORE_CTX *ctx); +OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx); +OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx); +OPENSSL_EXPORT void X509_STORE_CTX_set_cert(X509_STORE_CTX *c,X509 *x); +OPENSSL_EXPORT void X509_STORE_CTX_set_chain(X509_STORE_CTX *c,STACK_OF(X509) *sk); +OPENSSL_EXPORT void X509_STORE_CTX_set0_crls(X509_STORE_CTX *c,STACK_OF(X509_CRL) *sk); +OPENSSL_EXPORT int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose); +OPENSSL_EXPORT int X509_STORE_CTX_set_trust(X509_STORE_CTX *ctx, int trust); +OPENSSL_EXPORT int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose, + int purpose, int trust); +OPENSSL_EXPORT void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, unsigned long flags); +OPENSSL_EXPORT void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, unsigned long flags, + time_t t); +OPENSSL_EXPORT void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx, + int (*verify_cb)(int, X509_STORE_CTX *)); + +OPENSSL_EXPORT X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(X509_STORE_CTX *ctx); +OPENSSL_EXPORT int X509_STORE_CTX_get_explicit_policy(X509_STORE_CTX *ctx); + +OPENSSL_EXPORT X509_VERIFY_PARAM *X509_STORE_CTX_get0_param(X509_STORE_CTX *ctx); +OPENSSL_EXPORT void X509_STORE_CTX_set0_param(X509_STORE_CTX *ctx, X509_VERIFY_PARAM *param); +OPENSSL_EXPORT int X509_STORE_CTX_set_default(X509_STORE_CTX *ctx, const char *name); + +/* X509_VERIFY_PARAM functions */ + +OPENSSL_EXPORT X509_VERIFY_PARAM *X509_VERIFY_PARAM_new(void); +OPENSSL_EXPORT void X509_VERIFY_PARAM_free(X509_VERIFY_PARAM *param); +OPENSSL_EXPORT int X509_VERIFY_PARAM_inherit(X509_VERIFY_PARAM *to, + const X509_VERIFY_PARAM *from); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1(X509_VERIFY_PARAM *to, + const X509_VERIFY_PARAM *from); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_name(X509_VERIFY_PARAM *param, const char *name); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set_flags(X509_VERIFY_PARAM *param, unsigned long flags); +OPENSSL_EXPORT int X509_VERIFY_PARAM_clear_flags(X509_VERIFY_PARAM *param, + unsigned long flags); +OPENSSL_EXPORT unsigned long X509_VERIFY_PARAM_get_flags(X509_VERIFY_PARAM *param); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set_purpose(X509_VERIFY_PARAM *param, int purpose); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set_trust(X509_VERIFY_PARAM *param, int trust); +OPENSSL_EXPORT void X509_VERIFY_PARAM_set_depth(X509_VERIFY_PARAM *param, int depth); +OPENSSL_EXPORT void X509_VERIFY_PARAM_set_time(X509_VERIFY_PARAM *param, time_t t); +OPENSSL_EXPORT int X509_VERIFY_PARAM_add0_policy(X509_VERIFY_PARAM *param, + ASN1_OBJECT *policy); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_policies(X509_VERIFY_PARAM *param, + STACK_OF(ASN1_OBJECT) *policies); + +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_host(X509_VERIFY_PARAM *param, + const char *name, size_t namelen); +OPENSSL_EXPORT int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param, + const char *name, + size_t namelen); +OPENSSL_EXPORT void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, + unsigned int flags); +OPENSSL_EXPORT char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, + const char *email, size_t emaillen); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_ip(X509_VERIFY_PARAM *param, + const unsigned char *ip, size_t iplen); +OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_ip_asc(X509_VERIFY_PARAM *param, const char *ipasc); + +OPENSSL_EXPORT int X509_VERIFY_PARAM_get_depth(const X509_VERIFY_PARAM *param); +OPENSSL_EXPORT const char *X509_VERIFY_PARAM_get0_name(const X509_VERIFY_PARAM *param); + +OPENSSL_EXPORT int X509_VERIFY_PARAM_add0_table(X509_VERIFY_PARAM *param); +OPENSSL_EXPORT int X509_VERIFY_PARAM_get_count(void); +OPENSSL_EXPORT const X509_VERIFY_PARAM *X509_VERIFY_PARAM_get0(int id); +OPENSSL_EXPORT const X509_VERIFY_PARAM *X509_VERIFY_PARAM_lookup(const char *name); +OPENSSL_EXPORT void X509_VERIFY_PARAM_table_cleanup(void); + +OPENSSL_EXPORT int X509_policy_check(X509_POLICY_TREE **ptree, int *pexplicit_policy, + STACK_OF(X509) *certs, + STACK_OF(ASN1_OBJECT) *policy_oids, + unsigned int flags); + +OPENSSL_EXPORT void X509_policy_tree_free(X509_POLICY_TREE *tree); + +OPENSSL_EXPORT int X509_policy_tree_level_count(const X509_POLICY_TREE *tree); +OPENSSL_EXPORT X509_POLICY_LEVEL * + X509_policy_tree_get0_level(const X509_POLICY_TREE *tree, int i); + +OPENSSL_EXPORT STACK_OF(X509_POLICY_NODE) * + X509_policy_tree_get0_policies(const X509_POLICY_TREE *tree); + +OPENSSL_EXPORT STACK_OF(X509_POLICY_NODE) * + X509_policy_tree_get0_user_policies(const X509_POLICY_TREE *tree); + +OPENSSL_EXPORT int X509_policy_level_node_count(X509_POLICY_LEVEL *level); + +OPENSSL_EXPORT X509_POLICY_NODE *X509_policy_level_get0_node(X509_POLICY_LEVEL *level, int i); + +OPENSSL_EXPORT const ASN1_OBJECT *X509_policy_node_get0_policy(const X509_POLICY_NODE *node); + +OPENSSL_EXPORT STACK_OF(POLICYQUALINFO) * + X509_policy_node_get0_qualifiers(const X509_POLICY_NODE *node); +OPENSSL_EXPORT const X509_POLICY_NODE * + X509_policy_node_get0_parent(const X509_POLICY_NODE *node); + +#ifdef __cplusplus +} +#endif +#endif + diff --git a/project/jni/boringssl/include/openssl/x509v3.h b/project/jni/boringssl/include/openssl/x509v3.h new file mode 100644 index 000000000..b7b8ba716 --- /dev/null +++ b/project/jni/boringssl/include/openssl/x509v3.h @@ -0,0 +1,798 @@ +/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + * project 1999. */ +/* ==================================================================== + * Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). */ + +#ifndef HEADER_X509V3_H +#define HEADER_X509V3_H + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward reference */ +struct v3_ext_method; +struct v3_ext_ctx; + +/* Useful typedefs */ + +typedef void * (*X509V3_EXT_NEW)(void); +typedef void (*X509V3_EXT_FREE)(void *); +typedef void * (*X509V3_EXT_D2I)(void *, const unsigned char ** , long); +typedef int (*X509V3_EXT_I2D)(void *, unsigned char **); +typedef STACK_OF(CONF_VALUE) * + (*X509V3_EXT_I2V)(const struct v3_ext_method *method, void *ext, + STACK_OF(CONF_VALUE) *extlist); +typedef void * (*X509V3_EXT_V2I)(const struct v3_ext_method *method, + struct v3_ext_ctx *ctx, + STACK_OF(CONF_VALUE) *values); +typedef char * (*X509V3_EXT_I2S)(const struct v3_ext_method *method, void *ext); +typedef void * (*X509V3_EXT_S2I)(const struct v3_ext_method *method, + struct v3_ext_ctx *ctx, const char *str); +typedef int (*X509V3_EXT_I2R)(const struct v3_ext_method *method, void *ext, + BIO *out, int indent); +typedef void * (*X509V3_EXT_R2I)(const struct v3_ext_method *method, + struct v3_ext_ctx *ctx, const char *str); + +/* V3 extension structure */ + +struct v3_ext_method { +int ext_nid; +int ext_flags; +/* If this is set the following four fields are ignored */ +ASN1_ITEM_EXP *it; +/* Old style ASN1 calls */ +X509V3_EXT_NEW ext_new; +X509V3_EXT_FREE ext_free; +X509V3_EXT_D2I d2i; +X509V3_EXT_I2D i2d; + +/* The following pair is used for string extensions */ +X509V3_EXT_I2S i2s; +X509V3_EXT_S2I s2i; + +/* The following pair is used for multi-valued extensions */ +X509V3_EXT_I2V i2v; +X509V3_EXT_V2I v2i; + +/* The following are used for raw extensions */ +X509V3_EXT_I2R i2r; +X509V3_EXT_R2I r2i; + +void *usr_data; /* Any extension specific data */ +}; + +typedef struct X509V3_CONF_METHOD_st { +char * (*get_string)(void *db, char *section, char *value); +STACK_OF(CONF_VALUE) * (*get_section)(void *db, char *section); +void (*free_string)(void *db, char * string); +void (*free_section)(void *db, STACK_OF(CONF_VALUE) *section); +} X509V3_CONF_METHOD; + +/* Context specific info */ +struct v3_ext_ctx { +#define CTX_TEST 0x1 +int flags; +X509 *issuer_cert; +X509 *subject_cert; +X509_REQ *subject_req; +X509_CRL *crl; +const X509V3_CONF_METHOD *db_meth; +void *db; +/* Maybe more here */ +}; + +typedef struct v3_ext_method X509V3_EXT_METHOD; + +DECLARE_STACK_OF(X509V3_EXT_METHOD) + +/* ext_flags values */ +#define X509V3_EXT_DYNAMIC 0x1 +#define X509V3_EXT_CTX_DEP 0x2 +#define X509V3_EXT_MULTILINE 0x4 + +typedef BIT_STRING_BITNAME ENUMERATED_NAMES; + +typedef struct BASIC_CONSTRAINTS_st { +int ca; +ASN1_INTEGER *pathlen; +} BASIC_CONSTRAINTS; + + +typedef struct PKEY_USAGE_PERIOD_st { +ASN1_GENERALIZEDTIME *notBefore; +ASN1_GENERALIZEDTIME *notAfter; +} PKEY_USAGE_PERIOD; + +typedef struct otherName_st { +ASN1_OBJECT *type_id; +ASN1_TYPE *value; +} OTHERNAME; + +typedef struct EDIPartyName_st { + ASN1_STRING *nameAssigner; + ASN1_STRING *partyName; +} EDIPARTYNAME; + +typedef struct GENERAL_NAME_st { + +#define GEN_OTHERNAME 0 +#define GEN_EMAIL 1 +#define GEN_DNS 2 +#define GEN_X400 3 +#define GEN_DIRNAME 4 +#define GEN_EDIPARTY 5 +#define GEN_URI 6 +#define GEN_IPADD 7 +#define GEN_RID 8 + +int type; +union { + char *ptr; + OTHERNAME *otherName; /* otherName */ + ASN1_IA5STRING *rfc822Name; + ASN1_IA5STRING *dNSName; + ASN1_TYPE *x400Address; + X509_NAME *directoryName; + EDIPARTYNAME *ediPartyName; + ASN1_IA5STRING *uniformResourceIdentifier; + ASN1_OCTET_STRING *iPAddress; + ASN1_OBJECT *registeredID; + + /* Old names */ + ASN1_OCTET_STRING *ip; /* iPAddress */ + X509_NAME *dirn; /* dirn */ + ASN1_IA5STRING *ia5;/* rfc822Name, dNSName, uniformResourceIdentifier */ + ASN1_OBJECT *rid; /* registeredID */ + ASN1_TYPE *other; /* x400Address */ +} d; +} GENERAL_NAME; + +typedef STACK_OF(GENERAL_NAME) GENERAL_NAMES; + +typedef struct ACCESS_DESCRIPTION_st { + ASN1_OBJECT *method; + GENERAL_NAME *location; +} ACCESS_DESCRIPTION; + +typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS; + +typedef STACK_OF(ASN1_OBJECT) EXTENDED_KEY_USAGE; + +DECLARE_STACK_OF(GENERAL_NAME) +DECLARE_ASN1_SET_OF(GENERAL_NAME) + +DECLARE_STACK_OF(ACCESS_DESCRIPTION) +DECLARE_ASN1_SET_OF(ACCESS_DESCRIPTION) + +typedef struct DIST_POINT_NAME_st { +int type; +union { + GENERAL_NAMES *fullname; + STACK_OF(X509_NAME_ENTRY) *relativename; +} name; +/* If relativename then this contains the full distribution point name */ +X509_NAME *dpname; +} DIST_POINT_NAME; +/* All existing reasons */ +#define CRLDP_ALL_REASONS 0x807f + +#define CRL_REASON_NONE -1 +#define CRL_REASON_UNSPECIFIED 0 +#define CRL_REASON_KEY_COMPROMISE 1 +#define CRL_REASON_CA_COMPROMISE 2 +#define CRL_REASON_AFFILIATION_CHANGED 3 +#define CRL_REASON_SUPERSEDED 4 +#define CRL_REASON_CESSATION_OF_OPERATION 5 +#define CRL_REASON_CERTIFICATE_HOLD 6 +#define CRL_REASON_REMOVE_FROM_CRL 8 +#define CRL_REASON_PRIVILEGE_WITHDRAWN 9 +#define CRL_REASON_AA_COMPROMISE 10 + +struct DIST_POINT_st { +DIST_POINT_NAME *distpoint; +ASN1_BIT_STRING *reasons; +GENERAL_NAMES *CRLissuer; +int dp_reasons; +}; + +typedef STACK_OF(DIST_POINT) CRL_DIST_POINTS; + +DECLARE_STACK_OF(DIST_POINT) +DECLARE_ASN1_SET_OF(DIST_POINT) + +struct AUTHORITY_KEYID_st { +ASN1_OCTET_STRING *keyid; +GENERAL_NAMES *issuer; +ASN1_INTEGER *serial; +}; + +/* Strong extranet structures */ + +typedef struct SXNET_ID_st { + ASN1_INTEGER *zone; + ASN1_OCTET_STRING *user; +} SXNETID; + +DECLARE_STACK_OF(SXNETID) +DECLARE_ASN1_SET_OF(SXNETID) + +typedef struct SXNET_st { + ASN1_INTEGER *version; + STACK_OF(SXNETID) *ids; +} SXNET; + +typedef struct NOTICEREF_st { + ASN1_STRING *organization; + STACK_OF(ASN1_INTEGER) *noticenos; +} NOTICEREF; + +typedef struct USERNOTICE_st { + NOTICEREF *noticeref; + ASN1_STRING *exptext; +} USERNOTICE; + +typedef struct POLICYQUALINFO_st { + ASN1_OBJECT *pqualid; + union { + ASN1_IA5STRING *cpsuri; + USERNOTICE *usernotice; + ASN1_TYPE *other; + } d; +} POLICYQUALINFO; + +DECLARE_STACK_OF(POLICYQUALINFO) +DECLARE_ASN1_SET_OF(POLICYQUALINFO) + +typedef struct POLICYINFO_st { + ASN1_OBJECT *policyid; + STACK_OF(POLICYQUALINFO) *qualifiers; +} POLICYINFO; + +typedef STACK_OF(POLICYINFO) CERTIFICATEPOLICIES; + +DECLARE_STACK_OF(POLICYINFO) +DECLARE_ASN1_SET_OF(POLICYINFO) + +typedef struct POLICY_MAPPING_st { + ASN1_OBJECT *issuerDomainPolicy; + ASN1_OBJECT *subjectDomainPolicy; +} POLICY_MAPPING; + +DECLARE_STACK_OF(POLICY_MAPPING) + +typedef STACK_OF(POLICY_MAPPING) POLICY_MAPPINGS; + +typedef struct GENERAL_SUBTREE_st { + GENERAL_NAME *base; + ASN1_INTEGER *minimum; + ASN1_INTEGER *maximum; +} GENERAL_SUBTREE; + +DECLARE_STACK_OF(GENERAL_SUBTREE) + +struct NAME_CONSTRAINTS_st { + STACK_OF(GENERAL_SUBTREE) *permittedSubtrees; + STACK_OF(GENERAL_SUBTREE) *excludedSubtrees; +}; + +typedef struct POLICY_CONSTRAINTS_st { + ASN1_INTEGER *requireExplicitPolicy; + ASN1_INTEGER *inhibitPolicyMapping; +} POLICY_CONSTRAINTS; + +/* Proxy certificate structures, see RFC 3820 */ +typedef struct PROXY_POLICY_st + { + ASN1_OBJECT *policyLanguage; + ASN1_OCTET_STRING *policy; + } PROXY_POLICY; + +typedef struct PROXY_CERT_INFO_EXTENSION_st + { + ASN1_INTEGER *pcPathLengthConstraint; + PROXY_POLICY *proxyPolicy; + } PROXY_CERT_INFO_EXTENSION; + +DECLARE_ASN1_FUNCTIONS(PROXY_POLICY) +DECLARE_ASN1_FUNCTIONS(PROXY_CERT_INFO_EXTENSION) + +struct ISSUING_DIST_POINT_st + { + DIST_POINT_NAME *distpoint; + int onlyuser; + int onlyCA; + ASN1_BIT_STRING *onlysomereasons; + int indirectCRL; + int onlyattr; + }; + +/* Values in idp_flags field */ +/* IDP present */ +#define IDP_PRESENT 0x1 +/* IDP values inconsistent */ +#define IDP_INVALID 0x2 +/* onlyuser true */ +#define IDP_ONLYUSER 0x4 +/* onlyCA true */ +#define IDP_ONLYCA 0x8 +/* onlyattr true */ +#define IDP_ONLYATTR 0x10 +/* indirectCRL true */ +#define IDP_INDIRECT 0x20 +/* onlysomereasons present */ +#define IDP_REASONS 0x40 + +#define X509V3_conf_err(val) ERR_add_error_data(6, "section:", val->section, \ +",name:", val->name, ",value:", val->value); + +#define X509V3_set_ctx_test(ctx) \ + X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST) +#define X509V3_set_ctx_nodb(ctx) (ctx)->db = NULL; + +#define EXT_BITSTRING(nid, table) { nid, 0, ASN1_ITEM_ref(ASN1_BIT_STRING), \ + 0,0,0,0, \ + 0,0, \ + (X509V3_EXT_I2V)i2v_ASN1_BIT_STRING, \ + (X509V3_EXT_V2I)v2i_ASN1_BIT_STRING, \ + NULL, NULL, \ + (void *)table} + +#define EXT_IA5STRING(nid) { nid, 0, ASN1_ITEM_ref(ASN1_IA5STRING), \ + 0,0,0,0, \ + (X509V3_EXT_I2S)i2s_ASN1_IA5STRING, \ + (X509V3_EXT_S2I)s2i_ASN1_IA5STRING, \ + 0,0,0,0, \ + NULL} + +#define EXT_END { -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} + + +/* X509_PURPOSE stuff */ + +#define EXFLAG_BCONS 0x1 +#define EXFLAG_KUSAGE 0x2 +#define EXFLAG_XKUSAGE 0x4 +#define EXFLAG_NSCERT 0x8 + +#define EXFLAG_CA 0x10 +/* Really self issued not necessarily self signed */ +#define EXFLAG_SI 0x20 +#define EXFLAG_V1 0x40 +#define EXFLAG_INVALID 0x80 +#define EXFLAG_SET 0x100 +#define EXFLAG_CRITICAL 0x200 +#define EXFLAG_PROXY 0x400 + +#define EXFLAG_INVALID_POLICY 0x800 +#define EXFLAG_FRESHEST 0x1000 +/* Self signed */ +#define EXFLAG_SS 0x2000 + +#define KU_DIGITAL_SIGNATURE 0x0080 +#define KU_NON_REPUDIATION 0x0040 +#define KU_KEY_ENCIPHERMENT 0x0020 +#define KU_DATA_ENCIPHERMENT 0x0010 +#define KU_KEY_AGREEMENT 0x0008 +#define KU_KEY_CERT_SIGN 0x0004 +#define KU_CRL_SIGN 0x0002 +#define KU_ENCIPHER_ONLY 0x0001 +#define KU_DECIPHER_ONLY 0x8000 + +#define NS_SSL_CLIENT 0x80 +#define NS_SSL_SERVER 0x40 +#define NS_SMIME 0x20 +#define NS_OBJSIGN 0x10 +#define NS_SSL_CA 0x04 +#define NS_SMIME_CA 0x02 +#define NS_OBJSIGN_CA 0x01 +#define NS_ANY_CA (NS_SSL_CA|NS_SMIME_CA|NS_OBJSIGN_CA) + +#define XKU_SSL_SERVER 0x1 +#define XKU_SSL_CLIENT 0x2 +#define XKU_SMIME 0x4 +#define XKU_CODE_SIGN 0x8 +#define XKU_SGC 0x10 +#define XKU_OCSP_SIGN 0x20 +#define XKU_TIMESTAMP 0x40 +#define XKU_DVCS 0x80 +#define XKU_ANYEKU 0x100 + +#define X509_PURPOSE_DYNAMIC 0x1 +#define X509_PURPOSE_DYNAMIC_NAME 0x2 + +typedef struct x509_purpose_st { + int purpose; + int trust; /* Default trust ID */ + int flags; + int (*check_purpose)(const struct x509_purpose_st *, + const X509 *, int); + char *name; + char *sname; + void *usr_data; +} X509_PURPOSE; + +#define X509_PURPOSE_SSL_CLIENT 1 +#define X509_PURPOSE_SSL_SERVER 2 +#define X509_PURPOSE_NS_SSL_SERVER 3 +#define X509_PURPOSE_SMIME_SIGN 4 +#define X509_PURPOSE_SMIME_ENCRYPT 5 +#define X509_PURPOSE_CRL_SIGN 6 +#define X509_PURPOSE_ANY 7 +#define X509_PURPOSE_OCSP_HELPER 8 +#define X509_PURPOSE_TIMESTAMP_SIGN 9 + +#define X509_PURPOSE_MIN 1 +#define X509_PURPOSE_MAX 9 + +/* Flags for X509V3_EXT_print() */ + +#define X509V3_EXT_UNKNOWN_MASK (0xfL << 16) +/* Return error for unknown extensions */ +#define X509V3_EXT_DEFAULT 0 +/* Print error for unknown extensions */ +#define X509V3_EXT_ERROR_UNKNOWN (1L << 16) +/* ASN1 parse unknown extensions */ +#define X509V3_EXT_PARSE_UNKNOWN (2L << 16) +/* BIO_dump unknown extensions */ +#define X509V3_EXT_DUMP_UNKNOWN (3L << 16) + +/* Flags for X509V3_add1_i2d */ + +#define X509V3_ADD_OP_MASK 0xfL +#define X509V3_ADD_DEFAULT 0L +#define X509V3_ADD_APPEND 1L +#define X509V3_ADD_REPLACE 2L +#define X509V3_ADD_REPLACE_EXISTING 3L +#define X509V3_ADD_KEEP_EXISTING 4L +#define X509V3_ADD_DELETE 5L +#define X509V3_ADD_SILENT 0x10 + +DECLARE_STACK_OF(X509_PURPOSE) + +DECLARE_ASN1_FUNCTIONS(BASIC_CONSTRAINTS) + +DECLARE_ASN1_FUNCTIONS(SXNET) +DECLARE_ASN1_FUNCTIONS(SXNETID) + +int SXNET_add_id_asc(SXNET **psx, char *zone, char *user, int userlen); +int SXNET_add_id_ulong(SXNET **psx, unsigned long lzone, char *user, int userlen); +int SXNET_add_id_INTEGER(SXNET **psx, ASN1_INTEGER *izone, char *user, int userlen); + +ASN1_OCTET_STRING *SXNET_get_id_asc(SXNET *sx, char *zone); +ASN1_OCTET_STRING *SXNET_get_id_ulong(SXNET *sx, unsigned long lzone); +ASN1_OCTET_STRING *SXNET_get_id_INTEGER(SXNET *sx, ASN1_INTEGER *zone); + +DECLARE_ASN1_FUNCTIONS(AUTHORITY_KEYID) + +DECLARE_ASN1_FUNCTIONS(PKEY_USAGE_PERIOD) + +DECLARE_ASN1_FUNCTIONS(GENERAL_NAME) +OPENSSL_EXPORT GENERAL_NAME *GENERAL_NAME_dup(GENERAL_NAME *a); +OPENSSL_EXPORT int GENERAL_NAME_cmp(GENERAL_NAME *a, GENERAL_NAME *b); + + + +OPENSSL_EXPORT ASN1_BIT_STRING *v2i_ASN1_BIT_STRING(X509V3_EXT_METHOD *method, + X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); +OPENSSL_EXPORT STACK_OF(CONF_VALUE) *i2v_ASN1_BIT_STRING(X509V3_EXT_METHOD *method, + ASN1_BIT_STRING *bits, + STACK_OF(CONF_VALUE) *extlist); + +OPENSSL_EXPORT STACK_OF(CONF_VALUE) *i2v_GENERAL_NAME(X509V3_EXT_METHOD *method, GENERAL_NAME *gen, STACK_OF(CONF_VALUE) *ret); +OPENSSL_EXPORT int GENERAL_NAME_print(BIO *out, GENERAL_NAME *gen); + +DECLARE_ASN1_FUNCTIONS(GENERAL_NAMES) + +OPENSSL_EXPORT STACK_OF(CONF_VALUE) *i2v_GENERAL_NAMES(X509V3_EXT_METHOD *method, + GENERAL_NAMES *gen, STACK_OF(CONF_VALUE) *extlist); +OPENSSL_EXPORT GENERAL_NAMES *v2i_GENERAL_NAMES(const X509V3_EXT_METHOD *method, + X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval); + +DECLARE_ASN1_FUNCTIONS(OTHERNAME) +DECLARE_ASN1_FUNCTIONS(EDIPARTYNAME) +OPENSSL_EXPORT int OTHERNAME_cmp(OTHERNAME *a, OTHERNAME *b); +OPENSSL_EXPORT void GENERAL_NAME_set0_value(GENERAL_NAME *a, int type, void *value); +OPENSSL_EXPORT void *GENERAL_NAME_get0_value(GENERAL_NAME *a, int *ptype); +OPENSSL_EXPORT int GENERAL_NAME_set0_othername(GENERAL_NAME *gen, + ASN1_OBJECT *oid, ASN1_TYPE *value); +OPENSSL_EXPORT int GENERAL_NAME_get0_otherName(GENERAL_NAME *gen, + ASN1_OBJECT **poid, ASN1_TYPE **pvalue); + +OPENSSL_EXPORT char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, ASN1_OCTET_STRING *ia5); +OPENSSL_EXPORT ASN1_OCTET_STRING *s2i_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str); + +DECLARE_ASN1_FUNCTIONS(EXTENDED_KEY_USAGE) +OPENSSL_EXPORT int i2a_ACCESS_DESCRIPTION(BIO *bp, ACCESS_DESCRIPTION* a); + +DECLARE_ASN1_FUNCTIONS(CERTIFICATEPOLICIES) +DECLARE_ASN1_FUNCTIONS(POLICYINFO) +DECLARE_ASN1_FUNCTIONS(POLICYQUALINFO) +DECLARE_ASN1_FUNCTIONS(USERNOTICE) +DECLARE_ASN1_FUNCTIONS(NOTICEREF) + +DECLARE_ASN1_FUNCTIONS(CRL_DIST_POINTS) +DECLARE_ASN1_FUNCTIONS(DIST_POINT) +DECLARE_ASN1_FUNCTIONS(DIST_POINT_NAME) +DECLARE_ASN1_FUNCTIONS(ISSUING_DIST_POINT) + +OPENSSL_EXPORT int DIST_POINT_set_dpname(DIST_POINT_NAME *dpn, X509_NAME *iname); + +OPENSSL_EXPORT int NAME_CONSTRAINTS_check(X509 *x, NAME_CONSTRAINTS *nc); + +DECLARE_ASN1_FUNCTIONS(ACCESS_DESCRIPTION) +DECLARE_ASN1_FUNCTIONS(AUTHORITY_INFO_ACCESS) + +DECLARE_ASN1_ITEM(POLICY_MAPPING) +DECLARE_ASN1_ALLOC_FUNCTIONS(POLICY_MAPPING) +DECLARE_ASN1_ITEM(POLICY_MAPPINGS) + +DECLARE_ASN1_ITEM(GENERAL_SUBTREE) +DECLARE_ASN1_ALLOC_FUNCTIONS(GENERAL_SUBTREE) + +DECLARE_ASN1_ITEM(NAME_CONSTRAINTS) +DECLARE_ASN1_ALLOC_FUNCTIONS(NAME_CONSTRAINTS) + +DECLARE_ASN1_ALLOC_FUNCTIONS(POLICY_CONSTRAINTS) +DECLARE_ASN1_ITEM(POLICY_CONSTRAINTS) + +OPENSSL_EXPORT GENERAL_NAME *a2i_GENERAL_NAME(GENERAL_NAME *out, + const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, + int gen_type, char *value, int is_nc); + +OPENSSL_EXPORT GENERAL_NAME *v2i_GENERAL_NAME(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, + CONF_VALUE *cnf); +OPENSSL_EXPORT GENERAL_NAME *v2i_GENERAL_NAME_ex(GENERAL_NAME *out, + const X509V3_EXT_METHOD *method, + X509V3_CTX *ctx, CONF_VALUE *cnf, int is_nc); +OPENSSL_EXPORT void X509V3_conf_free(CONF_VALUE *val); + +OPENSSL_EXPORT X509_EXTENSION *X509V3_EXT_nconf_nid(CONF *conf, X509V3_CTX *ctx, int ext_nid, char *value); +OPENSSL_EXPORT X509_EXTENSION *X509V3_EXT_nconf(CONF *conf, X509V3_CTX *ctx, char *name, char *value); +OPENSSL_EXPORT int X509V3_EXT_add_nconf_sk(CONF *conf, X509V3_CTX *ctx, char *section, STACK_OF(X509_EXTENSION) **sk); +OPENSSL_EXPORT int X509V3_EXT_add_nconf(CONF *conf, X509V3_CTX *ctx, char *section, X509 *cert); +OPENSSL_EXPORT int X509V3_EXT_REQ_add_nconf(CONF *conf, X509V3_CTX *ctx, char *section, X509_REQ *req); +OPENSSL_EXPORT int X509V3_EXT_CRL_add_nconf(CONF *conf, X509V3_CTX *ctx, char *section, X509_CRL *crl); + +OPENSSL_EXPORT int X509V3_EXT_CRL_add_conf(LHASH_OF(CONF_VALUE) *conf, X509V3_CTX *ctx, + char *section, X509_CRL *crl); + +OPENSSL_EXPORT int X509V3_add_value_bool_nf(char *name, int asn1_bool, + STACK_OF(CONF_VALUE) **extlist); +OPENSSL_EXPORT int X509V3_get_value_bool(CONF_VALUE *value, int *asn1_bool); +OPENSSL_EXPORT int X509V3_get_value_int(CONF_VALUE *value, ASN1_INTEGER **aint); +OPENSSL_EXPORT void X509V3_set_nconf(X509V3_CTX *ctx, CONF *conf); + +OPENSSL_EXPORT char * X509V3_get_string(X509V3_CTX *ctx, char *name, char *section); +OPENSSL_EXPORT STACK_OF(CONF_VALUE) * X509V3_get_section(X509V3_CTX *ctx, char *section); +OPENSSL_EXPORT void X509V3_string_free(X509V3_CTX *ctx, char *str); +OPENSSL_EXPORT void X509V3_section_free( X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *section); +OPENSSL_EXPORT void X509V3_set_ctx(X509V3_CTX *ctx, X509 *issuer, X509 *subject, + X509_REQ *req, X509_CRL *crl, int flags); + +OPENSSL_EXPORT int X509V3_add_value(const char *name, const char *value, + STACK_OF(CONF_VALUE) **extlist); +OPENSSL_EXPORT int X509V3_add_value_uchar(const char *name, const unsigned char *value, + STACK_OF(CONF_VALUE) **extlist); +OPENSSL_EXPORT int X509V3_add_value_bool(const char *name, int asn1_bool, + STACK_OF(CONF_VALUE) **extlist); +OPENSSL_EXPORT int X509V3_add_value_int(const char *name, ASN1_INTEGER *aint, + STACK_OF(CONF_VALUE) **extlist); +OPENSSL_EXPORT char * i2s_ASN1_INTEGER(X509V3_EXT_METHOD *meth, ASN1_INTEGER *aint); +OPENSSL_EXPORT ASN1_INTEGER * s2i_ASN1_INTEGER(X509V3_EXT_METHOD *meth, char *value); +OPENSSL_EXPORT char * i2s_ASN1_ENUMERATED(X509V3_EXT_METHOD *meth, ASN1_ENUMERATED *aint); +OPENSSL_EXPORT char * i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *meth, ASN1_ENUMERATED *aint); +OPENSSL_EXPORT int X509V3_EXT_add(X509V3_EXT_METHOD *ext); +OPENSSL_EXPORT int X509V3_EXT_add_list(X509V3_EXT_METHOD *extlist); +OPENSSL_EXPORT int X509V3_EXT_add_alias(int nid_to, int nid_from); +OPENSSL_EXPORT void X509V3_EXT_cleanup(void); + +OPENSSL_EXPORT const X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *ext); +OPENSSL_EXPORT const X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid); +OPENSSL_EXPORT int X509V3_add_standard_extensions(void); +OPENSSL_EXPORT STACK_OF(CONF_VALUE) *X509V3_parse_list(const char *line); +OPENSSL_EXPORT void *X509V3_EXT_d2i(X509_EXTENSION *ext); +OPENSSL_EXPORT void *X509V3_get_d2i(STACK_OF(X509_EXTENSION) *x, int nid, int *crit, int *idx); + + +OPENSSL_EXPORT X509_EXTENSION *X509V3_EXT_i2d(int ext_nid, int crit, void *ext_struc); +OPENSSL_EXPORT int X509V3_add1_i2d(STACK_OF(X509_EXTENSION) **x, int nid, void *value, int crit, unsigned long flags); + +char *hex_to_string(const unsigned char *buffer, long len); +unsigned char *string_to_hex(const char *str, long *len); +int name_cmp(const char *name, const char *cmp); + +OPENSSL_EXPORT void X509V3_EXT_val_prn(BIO *out, STACK_OF(CONF_VALUE) *val, int indent, + int ml); +OPENSSL_EXPORT int X509V3_EXT_print(BIO *out, X509_EXTENSION *ext, unsigned long flag, int indent); +OPENSSL_EXPORT int X509V3_EXT_print_fp(FILE *out, X509_EXTENSION *ext, int flag, int indent); + +OPENSSL_EXPORT int X509V3_extensions_print(BIO *out, const char *title, STACK_OF(X509_EXTENSION) *exts, unsigned long flag, int indent); + +OPENSSL_EXPORT int X509_check_ca(X509 *x); +OPENSSL_EXPORT int X509_check_purpose(X509 *x, int id, int ca); +OPENSSL_EXPORT int X509_supported_extension(X509_EXTENSION *ex); +OPENSSL_EXPORT int X509_PURPOSE_set(int *p, int purpose); +OPENSSL_EXPORT int X509_check_issued(X509 *issuer, X509 *subject); +OPENSSL_EXPORT int X509_check_akid(X509 *issuer, AUTHORITY_KEYID *akid); +OPENSSL_EXPORT int X509_PURPOSE_get_count(void); +OPENSSL_EXPORT X509_PURPOSE * X509_PURPOSE_get0(int idx); +OPENSSL_EXPORT int X509_PURPOSE_get_by_sname(char *sname); +OPENSSL_EXPORT int X509_PURPOSE_get_by_id(int id); +OPENSSL_EXPORT int X509_PURPOSE_add(int id, int trust, int flags, + int (*ck)(const X509_PURPOSE *, const X509 *, int), + char *name, char *sname, void *arg); +OPENSSL_EXPORT char *X509_PURPOSE_get0_name(X509_PURPOSE *xp); +OPENSSL_EXPORT char *X509_PURPOSE_get0_sname(X509_PURPOSE *xp); +OPENSSL_EXPORT int X509_PURPOSE_get_trust(X509_PURPOSE *xp); +OPENSSL_EXPORT void X509_PURPOSE_cleanup(void); +OPENSSL_EXPORT int X509_PURPOSE_get_id(X509_PURPOSE *); + +OPENSSL_EXPORT STACK_OF(OPENSSL_STRING) *X509_get1_email(X509 *x); +OPENSSL_EXPORT STACK_OF(OPENSSL_STRING) *X509_REQ_get1_email(X509_REQ *x); +OPENSSL_EXPORT void X509_email_free(STACK_OF(OPENSSL_STRING) *sk); +OPENSSL_EXPORT STACK_OF(OPENSSL_STRING) *X509_get1_ocsp(X509 *x); +/* Flags for X509_check_* functions */ + +/* Always check subject name for host match even if subject alt names present */ +#define X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT 0x1 +/* Disable wildcard matching for dnsName fields and common name. */ +#define X509_CHECK_FLAG_NO_WILDCARDS 0x2 +/* Wildcards must not match a partial label. */ +#define X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS 0x4 +/* Allow (non-partial) wildcards to match multiple labels. */ +#define X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS 0x8 +/* Constraint verifier subdomain patterns to match a single labels. */ +#define X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS 0x10 +/* + * Match reference identifiers starting with "." to any sub-domain. + * This is a non-public flag, turned on implicitly when the subject + * reference identity is a DNS name. + */ +#define _X509_CHECK_FLAG_DOT_SUBDOMAINS 0x8000 + +OPENSSL_EXPORT int X509_check_host(X509 *x, const char *chk, size_t chklen, + unsigned int flags, char **peername); +OPENSSL_EXPORT int X509_check_email(X509 *x, const char *chk, size_t chklen, + unsigned int flags); +OPENSSL_EXPORT int X509_check_ip(X509 *x, const unsigned char *chk, size_t chklen, + unsigned int flags); +OPENSSL_EXPORT int X509_check_ip_asc(X509 *x, const char *ipasc, unsigned int flags); + +OPENSSL_EXPORT ASN1_OCTET_STRING *a2i_IPADDRESS(const char *ipasc); +OPENSSL_EXPORT ASN1_OCTET_STRING *a2i_IPADDRESS_NC(const char *ipasc); +OPENSSL_EXPORT int a2i_ipadd(unsigned char *ipout, const char *ipasc); +OPENSSL_EXPORT int X509V3_NAME_from_section(X509_NAME *nm, STACK_OF(CONF_VALUE)*dn_sk, + unsigned long chtype); + +OPENSSL_EXPORT void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent); +DECLARE_STACK_OF(X509_POLICY_NODE) + +/* BEGIN ERROR CODES */ +/* The following lines are auto generated by the script mkerr.pl. Any changes + * made after this point may be overwritten when the script is next run. + */ +void ERR_load_X509V3_strings(void); + + +#ifdef __cplusplus +} +#endif +#define X509V3_R_BAD_IP_ADDRESS 100 +#define X509V3_R_BAD_OBJECT 101 +#define X509V3_R_BN_DEC2BN_ERROR 102 +#define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 103 +#define X509V3_R_CANNOT_FIND_FREE_FUNCTION 104 +#define X509V3_R_DIRNAME_ERROR 105 +#define X509V3_R_DISTPOINT_ALREADY_SET 106 +#define X509V3_R_DUPLICATE_ZONE_ID 107 +#define X509V3_R_ERROR_CONVERTING_ZONE 108 +#define X509V3_R_ERROR_CREATING_EXTENSION 109 +#define X509V3_R_ERROR_IN_EXTENSION 110 +#define X509V3_R_EXPECTED_A_SECTION_NAME 111 +#define X509V3_R_EXTENSION_EXISTS 112 +#define X509V3_R_EXTENSION_NAME_ERROR 113 +#define X509V3_R_EXTENSION_NOT_FOUND 114 +#define X509V3_R_EXTENSION_SETTING_NOT_SUPPORTED 115 +#define X509V3_R_EXTENSION_VALUE_ERROR 116 +#define X509V3_R_ILLEGAL_EMPTY_EXTENSION 117 +#define X509V3_R_ILLEGAL_HEX_DIGIT 118 +#define X509V3_R_INCORRECT_POLICY_SYNTAX_TAG 119 +#define X509V3_R_INVALID_BOOLEAN_STRING 120 +#define X509V3_R_INVALID_EXTENSION_STRING 121 +#define X509V3_R_INVALID_MULTIPLE_RDNS 122 +#define X509V3_R_INVALID_NAME 123 +#define X509V3_R_INVALID_NULL_ARGUMENT 124 +#define X509V3_R_INVALID_NULL_NAME 125 +#define X509V3_R_INVALID_NULL_VALUE 126 +#define X509V3_R_INVALID_NUMBER 127 +#define X509V3_R_INVALID_NUMBERS 128 +#define X509V3_R_INVALID_OBJECT_IDENTIFIER 129 +#define X509V3_R_INVALID_OPTION 130 +#define X509V3_R_INVALID_POLICY_IDENTIFIER 131 +#define X509V3_R_INVALID_PROXY_POLICY_SETTING 132 +#define X509V3_R_INVALID_PURPOSE 133 +#define X509V3_R_INVALID_SECTION 134 +#define X509V3_R_INVALID_SYNTAX 135 +#define X509V3_R_ISSUER_DECODE_ERROR 136 +#define X509V3_R_MISSING_VALUE 137 +#define X509V3_R_NEED_ORGANIZATION_AND_NUMBERS 138 +#define X509V3_R_NO_CONFIG_DATABASE 139 +#define X509V3_R_NO_ISSUER_CERTIFICATE 140 +#define X509V3_R_NO_ISSUER_DETAILS 141 +#define X509V3_R_NO_POLICY_IDENTIFIER 142 +#define X509V3_R_NO_PROXY_CERT_POLICY_LANGUAGE_DEFINED 143 +#define X509V3_R_NO_PUBLIC_KEY 144 +#define X509V3_R_NO_SUBJECT_DETAILS 145 +#define X509V3_R_ODD_NUMBER_OF_DIGITS 146 +#define X509V3_R_OPERATION_NOT_DEFINED 147 +#define X509V3_R_OTHERNAME_ERROR 148 +#define X509V3_R_POLICY_LANGUAGE_ALREADY_DEFINED 149 +#define X509V3_R_POLICY_PATH_LENGTH 150 +#define X509V3_R_POLICY_PATH_LENGTH_ALREADY_DEFINED 151 +#define X509V3_R_POLICY_WHEN_PROXY_LANGUAGE_REQUIRES_NO_POLICY 152 +#define X509V3_R_SECTION_NOT_FOUND 153 +#define X509V3_R_UNABLE_TO_GET_ISSUER_DETAILS 154 +#define X509V3_R_UNABLE_TO_GET_ISSUER_KEYID 155 +#define X509V3_R_UNKNOWN_BIT_STRING_ARGUMENT 156 +#define X509V3_R_UNKNOWN_EXTENSION 157 +#define X509V3_R_UNKNOWN_EXTENSION_NAME 158 +#define X509V3_R_UNKNOWN_OPTION 159 +#define X509V3_R_UNSUPPORTED_OPTION 160 +#define X509V3_R_UNSUPPORTED_TYPE 161 +#define X509V3_R_USER_TOO_LONG 162 + +#endif diff --git a/project/jni/boringssl/lib-arm64-v8a/libcrypto.a b/project/jni/boringssl/lib-arm64-v8a/libcrypto.a new file mode 100644 index 0000000000000000000000000000000000000000..e932627fdff84a86abf1ff8f0a7b4ed4682d0afe GIT binary patch literal 13037816 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 ``@{fq1`4YX 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¹vo(# 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

3{j6M4pM>bPHBjG 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

QAyRwj_nL*7(WB~>S1|BdUwCoYg zKp~hJz*|94#31T1#X;wNG9jr4r&*{@W(L#_AxIcv4yHIrjv2m78pMNOhw9y1Xy$=THfqzI+pz=ouDSd+Y zAZgIic%bqT#74%T@gQvCp!I0j#6f2tV-p9BSz!|gopp>&9CUXGHt~g^eX__7gt9@0 zLSR$B4TpNrQGVFegAOLcCjK0UIiRz8v8m@{WWbu*?@&}6} z@+nLlQkjAde@kXiseto9EmxHkhP2!gJyUZFQwC_2s%L6pY5}RDp&}@Cbb4uGQ3^yF zsoeu=+khKoY2el>QsW3x%|n`$AXU(s9K?jTi9sB26CA{VHId-WT8If44MDg(tjhow zKO*UAL0nOGFWpNE`Zdg#%Ps*jRDt-5Wj<&kSY>f&x4YjFe3v4=$t?h8-!sw zO%zRB10>17zyMN@oOfYu4v>0eaadXc9dHERQ3}-$Gaq#453+a*R32u20F)0q;~Hi@ zOdOQ2KuTchVfMl9a)POciNo%4f~g0!WkC92chtkw!^B~CB}p?fz^-=#DQEZsCK(t& z;;?&iKtdv*3K=PUz=vrd-4O;eA0`gFBMIFc(3!~~^FZRrXZ6GG6aa~XmaT)-fbbNk zz3AaQ2P%#p&NraqAag)<637fNhK}{X!UuL|73}UFnEPSkB2e`pb6{x$WR46}9Apmi z@vpyKG}{D6w1n*-Zn zgl^6RXj2g+j+~xXK*iC`-vSj!H~#=s9Apl%fA2uWVdlW{{}ZS<%p92b2dFs69OUo^ z?FI+MKS*2=#DHQR=otbq^TCJsfa*}FILv&QxCm4nWDc@BE1=>qb6|ItG(g2+=D@^Z zcd3BPL3Za1sCt+=po7OiPF(;MhnWKtUjY>dnS<<}Gf3j_t&t223|FAyF!N#Q?G98N zW#su2N&;>Zr$Un_ zXbK6O-e70$!`k(rDPmAN5Oi=6$P8Hf9VQODvlCW7!^9^*&4<;kFmc$Oov^YICJwu^ z6IQRn#9?=K!tO|biG%L$0J#Tx#Q@y>u=Y2s9|KblyPFf%KY)qD?%;&ol>!ro4duc1 zkHExXcM8DTtuS%eU7Mis3y`~D;;=h4k?+z4g(vJTF<5&9rXF@jCTtuSCJwtJ6V}dx ziNo$5gY~~);;=g}VeMj=IP7jq*d1*!ao8P}u>J>39ClYFtiJ{mhxH#|oNls;j1Ny6?xf~g11wS$zx%5|7HtX~0b4uJ3YMjmB@ zjWB}lTmtoxH$vOlu)aA=9CS<>$b8ty9Zb9g+RuS)PX&ofF)%PBK+`#_?f{8H#^6Av zFfhQ{W*~8py(v)jusRne9tly-06R|*ChiJ#C+wg^n7AL*J+OltVdDHy^IS1@9 z|3*^}U$qFeAEq9bPq@*>R2-xp)`kH|FP3?_-!cv1(b%F zvk|IZ59%41IOxDgkb5kk;vjb-w*w=f;vn@P|IPy`W?*1QLld`$hFdn0ILKeHa;X$a z9Bd9$eHD^8NIk5)Xh9MOss9V*cS329dqC=sLH#)yNgSkp1+)T(jl;my!@_3~n))zk z19mx*ILQ2bX!vhL5(k;j2yJJ>#%Dn0gT!I|irZ-FS)fxVFVV!iz{jC7Fi1n)3o-{} zFD%|oki+UJn%qxd&vg4m6(TqKUge#Wx{|gY1QkPaZ-N2blvoKAM5yGLkq*J!~8X zHl71=4=A0$`b*!S>OtZlclJTu`5Q?blwVAsN&L&ahK>Vdjn6HWXF zRNM|p9OO>ec%~ncILKcvAcBE`AqP$T0MvbrNa7%KVDOtb5@Sg<@ zPfIlM$53%Qs5s302_Q=t7#L#E#8*JY3z5V@?uUg>Ba%2+DKs4BqlrI(x_=9jILI8> zxX=+KagaHGpz5z8iG$R`#(5q<#Xoent`pg@Z0g6DXfU>lu)Gka!tXoDC`t z3kMab`&H1yZJ^?oNa7$PVBz42Bo1=_6sY=iH1Rc1@p?3I8>oM$Ac=#_hmAKbK@ta< z54+oRCz3cwJuEy=B8h|4pMaWw3rQTL9@fu!iX;wF554-4K^j`$!omkOj%tl2t^+O4 z$Dt|!r;5=x289>EB=0J-sP_!@vK*d4oLFLr}kR=QZ3~^}UKcV8eXyOsj zfwv+gage>R_J0kMILQ2oQ1y*aahQ8xPs-7xpS+-Zd-4%N=!gC;&7>i!xuaoBjxA~bQ(o!THLoj?;WhMMyOP23jR4(Ecl z`(W+_nE}EEXyR9)>b=p#w?gv;NDl~u;su)3L0tICJeWAlztCn4c>V&U9wrVOLx!n` z&FjGCpwY!)bLcQ}SU7{$Wr7@lE)Kes0$Ch3P7OPd1*RS*4qC5?tRA+G5H_v=QV%LO zKx#l3Htq-$hmF&21WAJ0HH?tUWnkiJRbayaF=q-pqQV$dViY5+Q&%_K(*D!lw;@oKBuyrkBIK<`9#Kl38&%nT-i9_5F zO}qfA-Uf#_Xgw&%3ov(RoysX3;+N3GR6QHCyn&ey6X!z{FM+Cutq+8$hl#`12g1Z*>sR#A%z=r+ z#;alKGoYE<6-_-%+!sx}0ID7~ZwWI8CZ2$%9yV^0heNy!O&qqKrV)pDCz|+jsC%a1 z5TAo4ZUF7?EXN@Zy89hD-C9G{??O`#69?VZj;tQGUg0d7dYCw@o`HqiacKJuHeZS^ z{sPS$*!qLdIK*M&@Gx_JL(PZXS&lBw2dzJ0;;?lIk~qW_(ZpfxN!WNZ%p6ddfUrB7 zdT8^IAqa3hYM&+!aYHn5*m_wT9O5o$;;{NR5QlgqnmDZfO~D}!ncRPF>S5xr+m~SKS)k=VY<(|G999p)?r(yLOF-41 zL^B^Iei2O^wyyLZ4)JGb;@VL2KjRSpjV2DOA3@iHfwB(FoiK3$Xn4cKVfC6c4sm5P z@d~JW3~-2}&!fTCr@Er4hl%^5iFZTIkHR6IgeG1Ct&j3?h?k>@!`79;=GS21027C; zXNHOQL(QLwW)4hzA)2@VwEkL$Lwp;WIBfmsVI1P8(ZrRZ=HI{}4qN98b3d$pfz2Pn z#6f8Tgju2C4HJizs{%O0Vd)yCeh0L?RYp?}6NjZ=n0i<_X^EyDChmwP4l93raEQa! zOT)~El|QidBf5AxnmMq1QG`Rh3QZiAUtsftF!N#Jy=dxT^&M0O=ST0yFpn67XHZdgUI5dAP!PL z5tg2maENQ6iNnfIa~$IKXyUN+=YvBWwk{nOFR=8Gh^8JUo{1(7i}w;7;;`}wW_k%!6Q77C4l5_;;SgVjCJrk<(dRv3;=9q*!`ug3_YQL>O#A|xdRRGm7l-&$G;vrt z`3Z;kFEnvj`N<9~=V0!EiSwh0!^%$?9OAI~9GE$<^3xDaJxtsZO&pegVe2Dc=791p z2*;tRhvnZ)9O8v&;;?eE28VbHnm8=~PQoER3r!rBf0yDAUyCLV%fGPo|1kf;#9{NL zFmYJEIE`iwOdNS085Gs9{BjRXJxu%=nm8={Ve3s`_JYD5ggK%8Etohg{2})yBg!S1 zIBfktO#L2c{iTj(4oqAhO&k{fwm8IH(Zpfl4_p5avlk`~n;(XW!@@Zk%^a9G=+;J% zzhUZO;arBM9wuIgCJqbdP8{Os^WCuUhpp>@*$dl8w*}3d4rqH6wl4st9@d^egQi{s z+Kz$k3xKJI?T>=Z8^gq5{(`M1f{DY9DTcWhCJvkL1KqEQ9BwdidFZ4IOg(I$st%es zEZ$Af#9{I1h$as6uP2%~tiB7wAs&Y&4y*67aflbAiNoqU(0!K3{)LHmps9z2=Tscx zbJ4_M>1PEF@eOF=uzGDT4)LRC;;{Pe5)ScOXyUMX?Kuwd_h{mVu3t0Y| zgr*)=uFl6Hz8p;)Ht)X)O&pfLcA<&CfR1k*#UXwcO&m79aRZ0=12l11{(X%m4$Hrv z(Zpf-} z4)HWJao9LjArA3MH1Q44^1Ky?crThbY#e3=4sp=EtH|XTZ2n>mntGV{7Bq3#xXpeX z;>Xd%Q=t8v%Q(buqlv@P!!sP>@6g0y0t(%IBdP# z0yOa)sCw9b0+@SX_4{Eo^|1ERc{FiYe!Pw*J^@;PJ;ova8ciHF{`d`t_&+ppSoz5b zU0?%qKTKQ@O&pd^WO0bAqKU)SQ5)b8w?GqzrxP6FK4{{wb=2WF#9`~cVE%%Y=hKLnmBB}=MtLu8>srbXyOdedjBb!xC~VMBM$MOXyPhR z^(@c@m$2|LfQs{=iNoey#L>iI<+ePUxDT}b4BHO`GauIeaY9r71nOTu9O7YU;xP9l zp^3xlsVp>cSbL@nO&sR_Iy7-uIS<=^19SfrX!tBbQ$GVLz7~i0Ry1)~JM93PIPAQY z6KLYF`USS{2j-qVP@Z=m8rXyP#U!}sMt*RN_o z^PMT0dL5{^0}gQyH1P#c^}*=k&~z1zCJqZX*nS|G`(gX^>d@5ZK+W&MAwCIByacL# zE}D1)RD3C#IL!U9_5L9DK!++p)f~eKB=sP1*x87eafshW6NjxghV2_bH=hx@P9G)? zTQALnLtF$+9OfPc9O4>i;;{2;OmK+XpozoW58K}Wb0;`(K<9{{sfW2I8;5u?nmEjS z*nS9f^Jk)|hXyah5**@d(8OWx*^WbeKbknqJ+S=~AooCrj=)}iiliPS4m1A)4)Gso z;xO~!`!E<$PnVX1?vsGo3ri20IK&On#9{8S#UbvBCJsvvfjGn?(ZpfyhwT@Exf2{X z3=9mlXzF3^>A)dA0ZklcK5Typy7}AC)Wg!lK^)>I(Zpfyxq?Id4w^X3J+S>N=H z9@YaB2kmtMg#|ATaZxmJn0pj(h-;vU!`uU{hQa6IK%ES-7Jeo($UV@mFIXJ5&kQ6E ztt!Ccu=odwgUUCsAOiyf^0`%@bPf}T(IE98b71@Hp~WkFT?%ZT0@~eyi^KXUuyBHz z16zNO?oL?08@4Y5rXF?<53>6~?y-UP3t;=IF+oujw4?A}cw*MO@4r`~u z_S3_}VeKyD^RhtZ!`fZ2{rxcYFnf{D%L1u~wYy;BoiO#Vb{A|vG)x>e4u*XG704V8 zXaa%lFNCRwwFhAP`C#I(b`)%%F-#oRo{@m|Q(@wBpytEY7sJG1^*iibWtcc@Uoh+( zN0>Nldfy9x`hm}Jhab)wshEYI( z_OpS409M|@jDnRTFg}b1sfDpYH0Zn}kQg*rKtfIa?I2C^TQ`(g16 zb`%2x(#;7F5zsz5&=3Z?dljGut-7906QNG zmX0B!nD&G2uK}5hZhr&Re%O^AAp1dnM7JO0K5YJnt=Ayrf6#tItoDN>7$EoJfZPtU zA7nQOgZME2m*Ma~>|6#y_Jb}>#b*BuEcS!)1G@d7bMis{hYq8GoCd}pK#D=^5j7 zS3q+ZOg~5uNFAs?gRwz;7*>Fevj;%OTVUeoYC-#ivAKT+^gzM}XyXgyevsc`_QT>I zH1CIQCdjS=kOl?@hPP-DgRb^IH2gt&kZ~-uW8emDAHw9&^@H}6VspPlDMZHxPyxZf zzyNX%Xs7|*{qJ$uzt|e0AC$i!EC`8i|0`&jf}Vd*KsVaL%5#wYpso_S{h)oT=w^a! zVzvR13=FVyRv|nF^yJ9!4~P8@%ON^o^PnL6K|zUbKWHB;Hv2c*LiB${OMmEU1wq%A zBDJR>x)>M?Rzp~@@B`ToI-?WaekIT~r=at#AM_@MJ1L1JjhoZ$piKdjvfQxEe$jPHgc z{3c)tKhP~fF#WLn2O3^Siz2Ym1@2&qAr#~|2op@Aalz>c-R&TSC!igMAE3;|z`y{y zvjh}}==Ot#!LZqXz!zi+14BHTg=k#R1vl{piOJb|`T7bVU;rYZ7{Z2-W+o>nr>PCbBiuHfm^fkB2rlHvbhhKrwr8CHI+W?cD& znQ7HmW`E}1VP@DenaSa2F%!d<1U84C3m6!-JQ8OB9nCrAk+{RpdNzii512() zB`PsYWME*JlEB2Ua{)7hNg|uW&j-xHs}fllwtNnDSoyWuapnKR3=|E_*Im|HeF*D;TklCOx5oTbR@Q<6} zrz4BQ&r~LdpN%~7Kb#mEc0OcgS+#`0;pY>mf4(p?tV&>H*iy^{^1H|?Q1~P=IsA-g zV0^uhks$;W4*$3ve!{{5<{ps0nxJkz!UJ*h`~UwzMbs1=*FZwjNiqWiXs;e5Swc=7 zLr+uih-ZS#Dlu_@Ti8r25Q-7hj$&Y91Se%CCUC2t39|2mnS~W}(I%QcsCI}37KoY5 zle%E7KCr10O!q-mA;ipwQ6MKk*pEPL76|(>=(Gb!Pm$>b=#+E;NS}at9_aWJPL8__ z3=CYL78NH4=v-lL7S<+4(1Lz&TYwQvGJ#2EFv$WYS-~V^ogh1y%>gDk!6X-$>zCns_*!En;IR?xO4E*^?SqzMhwV=>vU|`_SEMZ`D1WAAd`16xNTr+5C z1!~MNFgn8w1C^s7RSbWaK^Jy`nG6iPEDQ|wOrYBU0-2gQgc$>vT9K}e(q%#8z}s4u zEDQ|i!1_X%INXI9gE^tLf{Y4c;&2pZ3}iGAW(;7oLEK#j(gZs0RhTh^i6a-wW4Qf;{FnwYMWiwEONPJ>sV2}VEBOw8H zHRv!m2BuF;AP<2$y9}&mj36gUfHWWx*Fl{fbC8!ICVpfF8PvkUz#su8KnEI2fbuNF zSWXU*G^BUWD9EVFC(O;vC(RcsF32b#&cMK=!obaK$IZ;gz`zV;axgHk@H238Gcd4< zF);I4aa(hH3NtXU2{SPB*+?=lunRLX^Ko;7#2JMd7&v(0iY&Mp7&t*%LF&2G7(f&^ z3nN%9D@ZMm1_Lvn3@-x%FVtjKkP<#UMtez!Me35C!h(!K><$vsog_gz_*og4IY3r< z3WG*?1x(ANSAO|6C(qY#6%|v1_lwB1OtPp3BoW5 z1_m)Ct~djOII=Trz_v@Ug8d)~mth4t5F#g~#{hLTRFHu|8d)7gl?+6cx}=FDDC|Jd zhJqOxU;~?QVMYenS?X{h7KYD^0q~QKVZy}eB~BI0Oc>3`06PF4Cc*%6L?9MNU?^l_ zm^%?l_8LNPMH7V1Oz;NHe(#vm;2#ZU;>0c9{UfG(Yc zav&7eK*SPr#A(D(1+fG{Vzmy#&!E7sj0_A+3>QHm!uXqymw}NH+-?VTzOc0R z;1_{s<|XHprljiU7o_GD7v~VT!8|c9r6@l$MK>=cTery2Fj>DKC$S_gzbLm@A0}mF zsGnGroS~aolxt?9Us_zG54C~;(Gy7qbs|6)G3#Z3R(T~Q7Ns)SmtaSPgtvZb z!<-Nt>;qTi>gVnWb5LeUYA)EhaM=h`14~d88pb0oB8Qm*k_$72D-8;EWPo4xo}7_b z1efu54h~?*NzF?y$$*Qwc)Gg=hk&_$p}wG42?ldO(G%q8=fY5&nVy%Lq5w81EhjO( z7|AbiYe1d?hdqi2IC{W-NioWV1aFw5PpB&>wh(fqd7ut5fwUj&;-d>qz5T#3TmLP4y5uqqw99%qmH(C}Ge8Coa9DV%QDzAW=P# zf8)U^6`Wu6ic)hD_0VLXc}cG*A7li`d_z48==JlEYwR=g((++<)+Z(<6{VJ;Nay4y zqwo{4Tzij22o$d{Q;SQA81$0!b8}PkN*MI=@=H?n-2Fmz!Kn#qc4|gEIQf7=3O5Gz zgIO3p{>P?*8B~d3kzfW@X;{VKJyaA~W{ep#*m@pNZwy5#n8S=Q69!Wc9(4h$K_;-> zc@LSoKy8@7^f1E?l!pmGX=eC@4O9S1VY~AlB*hFFO#m@bFzI*9!@J^W=0GP-kVGN= z5(nSsh9nGT;=X$xG;07>0w+LSZR9)P!TAn4#{nMJfUATsKx5$8#6fd&*u+736q`7x zr7VOLzu-K~zyNO6V^a^Bg25&Zx{C^%IH>*x*XnxUyU$giSC=EQG`InQ$mXC53Cu$) z{19avSQe}wn(>kE3P-vf9jpXY2P4aa3s+DG!shBhcP)X(A3%Z(3=E)f0x?12urd(D zhpmwTiGv3dK!OYm44}D65EET|4oDDshc;+D9m-_@%?*OspgReX#kYV286bB~f`>Pt ze9&AVhzYve5LrF!tZH;~V0XTO+=Fb+6ObWT+yh(Nf^H6MZ40_NurLAL(G3|Xffx*` z2S6;)8Wd!4P^SbW4l+j;#DHSxR0IRMdRRE4`xmz62;H5qHAf)xk^Kw1(+?yLnqz@l z3s32wvxmV$m{18A8zc@IozjOEogg+y2}~S1g~|ZS!7y>y9pbRG0TPFl4IteN45||o+oq2jQ72NORGbq_4x!NfsB_8{}m zf(WE|0nHeIgka$TQx6`;WME)`uTnDLVhMET& zdIHb-fdoN!_Cm!$>S1XIBxQsq4!fht5l!3_YM&dDIH+7b0p-K)j)j>I3-?f{Jj^|y z_87?CBs6hYIo5zC4qIc^izW^$?`ENi!`8&Y(l5wf&(4pI-EOof^QyITvS9uzNPPvH%G^jYteArr@U1;L4_Ssb=ab)+uM-m6Q6W0Fy3l#^s2js77Q1|me%QKjG zH`G0PXyTx0E07lCyAwg?ghACMKxvpcpxHc-`ffCF*jc_HIS>Z<7ZfibHVDIdR4{Q^ zI}Efg3M7v%4xTOpt&f7PU4_-_p#B81dYCx+T?eo`YGLg({~VTt^pwfo9GdsQJiuBY?sm zCXReJ0!SPdKCp5cWIm{zgc`#j2QB|#;;@kuO&sEeXyUMbxD5_**qKBy^I_#PtbTxr z!`zdFW)3VKOL2(TqKVr>4T9a>4l^GnJ^@WV%ssGr38o%a4sJtJ53BbN;t+@3X$mt3 zmfo(QsfUT*K@*3~CO^j^{vJ&n)~@)4L!1d(55n9t85%ykIK*Lhy2I4N!Ur}|2&(Tu zTlgVHCAk6sVL(k-m74N{MsZeisOOdRG;*qz)Uab)v_ zkn$0-Ik2$~&>jwC^{{vbi6g6rxtClTRDXk<0t-)=Ik5H*j1QwhYGG^;4O;IB5`#t` zNC=FH)vwOL0KQ*|T>YSa1jv3|?uW%2*ioSVFpL4ELE|N$CK9@PGoVAWpz$P-QqWis zNF6L)z~b8*R9C}R`GFKdG3*W>SUP|TV~mu8mH>myMYn$ebPy3%e}e1>`4QcIP`d`? zfAqZpusgzF=^kc3Og~5uNDQ=+5XJ`aVfY7Ba01A2FhQtak+=-F_GTnN0|<7eFUb9% zb~4OoUS_EF-1y%_m(Dj4LE07n_!(RfF zuo)N_4uArkfq? zKt6%l54w8`-As^tHMCHK)rTN45Jp!E8n41;zXE8|4z#x&qzUSOP}zs>f6&THbTdI( zRzvOAN0UV3G8~8IN%U}PfZ7jpKgj=}ISq9CLF3aPGhymLc7yOOP-HPMFcg412NHl{ zkXjHEMn8teAG&@oQ0Iz)fdST!0qFr@m_8T{YUjY%AbA*uoe>1%!)SE1pn3r$2CXh( z${1k!GvFc+2F(8u9s>iYKMnFCdiZU?5`Lf}1*RXCen8$tFMB~|-vCK4FfhRGMgxg~ zFvzVS8iql9bhm@#UVtKtfq?_4XD@(vkkT<+=0QA!H9uD#^I*}0|O`viGbF`A7GBZ_P-gjUjVc& zUPQv-=NCqXEugjh4Qz0=QywsjtOBjkua{!jSue%#Q-Pr&s9uR-Cwv`zGh{yi14Ba) zXk9!={69<#)y^Q0ooMa=i-FecKVfEA1zM;7HJWkd_iCn}(|wC>-YgP~A?mm$PngrP8j zgCWFTf}xOsham(O2B2_z{{O#tk{r}dC5N9$3=AN%u-cs@23048UmeI?Y;I3tfa+&) z_?aZe@H0^gyB|^1$uay)RKl(h&=3T&YXL(; z5aWSHsYE7*o!y|lA<*;=ifaa*hD)Gy4@%qMG|$YirGcs85{RF`#_;n16T=oohK8WY zQVc&Er5JWLFf|0tS7O-N#Ly6wAjGiq0W+gky%;!8?5vk#*a^xLNoou`>(v;3)`v0d ztPf(?S z)5$|-1}$ASh7bp7hn)-zjNT5?3_BliF_<`sJM0Ac$&rDP+fkfh=h^@N#huh0c0Obl z(E^1jC~TP+M7-VDLHl>4S2?RY>;&!2aZz^I=_Jjt^AWR%)-!9!-lq_GhMfrv4M7gf z3_EXv%n5eb86yoz=WoCL4{;2Kq;scWhn=8w?i373=WBob4{->0*r~|C!0i~$u+v%H z;b-Cj#cq&4K=y;u9?1PZ|Ne)7;`^aF#6A!kB>&Ld;b$c)gUKIeNv$RS|BJhbJN#r} z1my*^@MEyQ_J^543$z!@A=qIj$Xtf&^QA!U?FYG69^`MaRUmukGcjd1U1|a~J;3?Q zmysdFQQl#vB{Ku}wL=QsQz~oDydz_q9guqMG!F5VCB;7t>W?c1NHu13qU?( zm1C9xxgDZKf!TtIfdT3?MdsZ?F~0O5EruyTM_i*thloRtH# zIf9i#iiv@N2fCdOMFSrw`1!yrkR%_7 zU|{6{#TG9}6ciy4)o_IjtQ_KgLc}pa)2)01uvpu*JZI}W?%q2C!Cpq0istO!~%1nmV)dPU}1Edzzo~O2ksRy zf=MPY$qXi0z$7b}WCJbzXJBCTi-qkH6krTE0NTg~N==MGASMHNI*lIA-JS)V+5~zu}DGZDyVAT*)Aj)8Dkn1GCww8h20$ypwSPnJ?Vp9d! zSO!)O(1AXnRsaLzF|gAwvNAA8CowP{1G!u}GmnAs7$_-AXXfQVmB@e%J^}I#c$FIC zNsvY)rVQ9GU{RR@2F6pM@RS255H&_rFRs96_~%z{Wk%(}=3Qi05dm~|O!79>=zfQ@2cXmeaS3pa-8Pgd-MIlHnD5WwmBJ_g}O#q2AfKE+D_X{N4qH$Q}#sLYpXoO{;v=|My zOA(wP5!&H)aS36D8zd`vf$d@hUG)aaoL*p~A(_()oJ}B!!y75l`7nYqCq&#A%x2Jn zT@efNSq7*y1`V^#0bLxW4Lem%TMRnCp{)dC=s_7eRxpMej1dH7=z=^AG8KjymocVu zGBD`1axgHk=~Z$tFtBRpf@@?32K_`11_s7t?Qkd`RB?j!X$mngIC6r*034~HNd&OC zGGj1v^9^v4YQDe#N>a@y7+^84yAm|e237|l7}qj#aWODx!_LFjz5rFAeFVnX1!aJT z=Z#;mFo1@Q7#K`IT1-I7O+ZRbK+3>MbU;c#ro$7Wl@J31aqeSaU@!$~1z}i1mOb!v_>h-@LAw+xrCkSObU+!#lUW%UjOT%fl^|jZh}h4{z+icT zm4U$uWY%Sn2{82t6JTaS;u2&GNU;vcC@=$L9GC$z62!0u8Ot=Wzy@S8NC1Q_FcRA1 zG9DVGGw2aM3=F9}pr8z9?t&!$E=cn4f+YWD1_qP_33eq$PQ3jCfgu(w83dLLWHbQT(v6hfK$d`R4g!fcBZ=P-VqoY6YXw^lw-1zYmx9Fu znc9%lgUkWl>;p9i?lX`%P%)&?eg(>HkZK?aTr`8i4}@X%FwP0*gH!`a;IbMdrwFcd zk{Cga5)dDzmf<}p4EVqS#XPZs4SZq`NC5*VpMZ+H{t7l_#sKEei~$S`b|4wXK5*v; z#AJZ&(qUj=oMR6XVZ4XpBv8KtEIh}8AL68Ya3?{ky?fwl1EdC>uM28Zfh1s<@d2Y2 zKLdja=rS9VAFK=vdT&@67^Z4Jf@V^17PAIj8O<~?10IN=!bzDim}z2$GGh=Z4g;Au zrow%MNW|b^h4|qyiXUL>B^l@N3PAku7|jol!EGdvGa-IJ@O42=HIM`hGd^Yf&(FZ1 z9RMrXU?-mHS+FrMOw-nbibMPo!^XhCG%-Ub11gHwQ`7K!>II6Y5D{|`>ZuoKo_c{6 zF$g|p#JplWEPxR))5(aK>G=Kd7R3*Uh*>5GiI}%&et3%(F$g|p#Jp#mA&4_#W>69_ zGjMqdJVVFW0P2n+PI>`vvtWGf zR{e%3^&NR5M!jF#(+ag2C5Uxk%j66bL6<77BDc#L+t{KD?m*I zI}GJ08AYhUtdOH*lscP02gXcwk^~(eql|Q7j0)5Uu%l3nP=y-74KYFu;X2T1H0p@c zXfz;(gG|Jc~EtPFD%A59 zNcMrF(vph-9U5F+FXaTM&_9XGfNsPUk(0S#k0 zwuI~xRzMmtk5j>N6bqUg7_b~|12PNSIX0kOuISoP_*guI>55_0~xeGJ=QGx*+tV6~_j0_>@uE*|2 zEU}9vsbE!wVZ+c?g)4ku8&=@qiPf7Js^H3@3@qgi$VQ@a!w66a4J9~5Ng2$@kOnsg z%AmwJQ0Nm?_R~)xG5*663edoSQ#j5b3&wI_8^&Q}SWd_z!8lL@AMOkg1B+fPHh@$j zV=PrE79l2v5{z1Icq+rX^2H8{)n~@ zLb#8i4C*&jpa#P!>Q}~aqoE8eHeg9;ScIVZ;S`p@z*4Vb5rUflWnhU8EJ9GlaEg%u zwk;W-5L^z*5MgLx5aLi!DPj;4;ZRV~)nH^06UIo)Vo+6GGE-Rase>8{rx+PB;cO@a zix5->PGL>T7~Lr*hKcC=92khx3AYH!U}7-B@G&+qsB$>P$N*Z#2IqnpScE{r$e6r% z!jb^62qD`8ViOl0WUB&MfsC;Q8a6RxJs>u*tpku+WK2}8Pfo7D60}%^kevczV+}`) zA|8t>vI|>mM>1n6hL{-oVOw%R?!=0z>nzyG0SK!=e#Gp+BIF?~EQK)>!$jD5To5(j z&0pA#iiS%=85DR4qpk)yAG1XQwFpjO341K9FOXT7L4idf+*~LFOXy&!mq5m2>w{vn zvY@8IDe9Vq(QN~{i%f5m9UT}N;hu#uC`cn%YNXL*4-HlZEUB4-_{SJJr*2Zk$QdA~ zl9`1DXR-(FIEAcag05~XTl5Iyqsyc7VaxPj>S61-V0_r}DHtDpYz4aE z7A6hexdP`fFu-p+go&Z&XV?TkOn#Ie4S~@R82TXqI)RLdVJhejJ7TVN(9g)vP1P?* z&8bY(FD^>fPt8loNi8mpFD^(-PSuAVUyr!Hp(H;)CpjZAGp|@b5p-*VnTc*rW?pFp z?4WyH6Fp1)f}+%<(#)I^eTY&ff=l z6KWOw77GUW#&+;k6U8MdDXD3Y+a!uhQZn;OAXiL4FP>mw0IAo@039z|ZPDA$a6UcDakbp}1= zY&~W}1?B(+c|{QI6v1q(!0ZCz*(xw^tB+tl#h}2vr#^!DFoOc~zIu=Zh~*K%Y_7oU z1>%}3Fb794>nJEPS4Nn+GJmR5VE)aZz}#A|5M-;*TxH|K{FOnEc~ZTeVw9ph^Ct!c z=AsDZmGugst2o#c*kYBL*wB1Ag^|%tPD!7cU%{5STtQKunOlLmT!EQSL7KTjftgc5 z5ek?K6qqZ$^wlte=@=v9E+eq{dTa)Y8q5`X8q5b76qq9wn9~%PPcrB!$}_L6*JFOb zpujAAO)*N5d2+oTvyxYaoRYGwB6D6ul%ku8yrPmKv%L-T#(D+j^9(T0$SE=BE7%$^ zZ>;xX{=xwBM5QwG=6WxcNJDugML8oyCFU#}c}3=P40_CwHrmRviVonLM38SMdBnu1 zrwDeU7n?qa*2PfL$H)kh5XOw}d(4c?c?!%z3JT0Q3W|!%LVC=3Hq0UlOdMz-`IwoJ zxlnHQ<6qscc6qu7h=E~?Xr`RydVVe7vnUOhN zfmu?4Io%6P>On}5x#AFWlhRX5iW!_d{o~WX2S+gEmFC8m7iE^DG8C5-<)r3;P8c_g z2W3A{J_4%*9}(^p>K5-D5&;$fn*q7V11uLD;uzu@9~|Ns6atn93%W+cyM_8W2g7gb z$WH=Yxe*V#V+C=!2~zP+N}n@F9b}W+~|>BsIQ- zp*W+oBqhH*j{)pMgmh|2X#vR6f}+&4%nAljNXD0dLmaFoJ+&krDm9|6`v9e8aCAY_ zXnYCe9vw(n#DkB-2dVLO4e{`IK|~@X*{4>-7vvW+fUkE+Doq1L9yl~XSpXEGsTB-K z5S7m0yL;k`Qqz+2OY=(NOAtmOBC4P`9&|AZ?8*^P#_(`;ba4%Wq@bkIG*Gl5bQYAB zAYX?A$`1v_rDh>O6^0q3%$%zR`OE}+YeK%r1vf-D^19~=VFnUbHE$^g!q@kObL#rb()hrt~S z34VmrKo_s1R)DiG)F1gJ8L36_;8f3$n_7~QpHd7dl!`O*i%JwgVFB_4*hElNK(&GM z6G##)QIeRBdEpC48zj=o!G&4@)G>L9xv319d6^~P%mcn|2y6)0o2ezB%mp?bCAWfu z8d4NMq7qzaf{Q7z2@q#Nq6@AOoSuq7IhG+l9$reo+B?Ze_ez2620216nIR<=bU{uf zs5KK02@p`}2~7_SMX712MX7nosl^QCMY)L;&@f|w1R$(f1V;jl11TeuO4C3|JhcKT zX@YKmfRxB6*E2yv9_|ZJC`0cY0y!~0IVZ8W7!jr5iU1n65dVW!fqVoGWRQ(Tsi_ca zQ!AiR4T>C430MRv*W)2I30x^l$!HR8ad z1&(|QPLo-tFwbN1MO?MxbkFhf6-Ut7V<0nPK#GxeZ-T^NW4bVNL1&SIwn~DOf=3k` z`3zh@clb0jdT(g5t>M z;53}F1Xlqr%&|#; z^Bpz`aG``v0$dSblK_><*u){FC-fF5=$%X8o1);Z16MLgT0z+w+NeYm1#1D-U(iw* zn>46=$0H5W4Jl`l-2$=_Y&b|aiZuA{s-n~!y`p@*oc!d(90sUYhVF${pkzLn?y>?M zCBX#hazly}lslV9x#J47ZG?#dy6X$+%ter~*zUf9lnTN?3~27* zf(Rm!5OXlaLED6w7!cyHavh`<+g(`@b08#04Ge?IEG7noIJho=N@BZP3!)NK(?AtL zsW{LvGDvrEfy-^E9Jaf-Am)H-Ca5AP1-e^?30%@b1i8T65O5GEvi3{dhjLR0?kK<}4!SlSoA?9J;YkSR z!C9|xh=0T(4!UyyoB1M)3`n^hZajku4sp;~&)CfI#GxM4E)+t_zmRm#zyP{iKnN+H z!qP41&K@D8{0MGeF)%QI&NvoA%6BmJ(-|2Ugpl$VOg*@F1giBRci@3o;L#J*egj+> z+=znnz%3^@58PaW^T2H+I1kh?f^#6PA(a$F*9YACf%MU!omNm|1l0{-t3kqGTR{x4 zg&+oI{|77z8qoqVAofAWl#p-SOD|0AgY5)4*L+q%IxE4A4*%^6(k5F=>gJ zIj{jgkXmTF4a5Zd8Pwc@w#MLMpf(n|7)Two-G!nKDh5t;u$o$mk%7SyECL}w?Qswb zboUVWR0$A=0dejOx;U~qpu^js%HcIW$b8s6Dj+$~o?H+OG6#Or0s{jB><$W$dhjNH zkRk>Kh9{r~7WB?Q@ZNZ+IIR8$nFHR%3>60-0s>W!EDpP)0;C?KlQWp!|m{4$B9iyZgWg4S^IfFfhRSprE_^ki}sOqd@i|`xn+1MK>RIHati@vVUP` zw}Zq%Z6T<&3^_>Q1K!~bl{kVVj%>~yBynW-Acr%ke+e~)0d_Y9$X;Y~V0T1-#F5Qe z0qv)ui*G;@M>c;4k~nxLHPm9{_yupShKhsw${;2vonUKSfZ_$Y)`OmP!vKmGWN}!z zh#v2-^p74dFndA%LQbDPAjd${8?yUJH6K=E;xZrIJ+Sc&ka|k&9V-5USU;(8; z;;^&|5`vXEAaR(RLE^A8^FiX!(?USP@E#WE&Jg5Q7A*aM#6f*1*xgw$H^9W}p@zX) z<}mS#VAC1kH9JTgbfm`vXnup;aR?HJ-NOme0t;J^ILKbmQBWXp*l|xVao89TEHA*s zVdrMS(j-j09b^dTZbK*y6BmJYF=5+&VB!f-e?_6GUk1(4iD=>qP;+w8#7m&&z{+8m z`Ji?ZNNFpG0QKb<85ltRh26OZyHgFO9@I_(DTUn)0~6q zGXDoO{5PSAFN2!1A5GjJDh|5S03-!7|35SwZh{1n%r}MF`wUHdCY1jfO2f=~3RMrg zb{i%RRmQ*ztuJ8W>!5s4`3q7569<(;Aig?O9wrVuW(xVvOi(x<1}SD>VDLp#ZvgdI z6q@*1XgH*!iQj^Xm!OI7ftuflCe8v?k9@Zz$URG;>SjY}nESn;=Bz*y4}`iCcDEHw z{T`_KuzD6IE)G@y63raYX=WfRzM+Z3@;U78DVRCN&~&a0O-C?s8)!W0p^0yVs@H?c z!_>z>`DsuZCJt-g9h8Qt*M$1B1x?%>8a`cU;tEi4 zB%eaUZDoB{Xp%DE}vvhM5C%4=Xgiz{FwcUl2_kRzAw1iK{~0?}{c4 zGd~bb9Afgm^;7!$%S-4pNWY4zz%Z!`uUFr@5nv!|r7E zfr`V-f%R`A(Zpfxwmhgf$b67{VDVH56$hDv+`gR&6$hyYh0kPYep!ho4r}kNLlOs> z4~v(bNa7%KB%tNVKBzd%URb!@hKhsi1(^do2KE_L9Hbt(-OdILM38!r`6*EIMbX6P zLd8|l#9uiK^I`6Bhl+#D2f1f6G#v8K#Pgu}stQdUc6?|Xns_fX-A;#!gY1RX z?VxnH2`Ub<7vwKk`)xOx_${b8N6^GMq3QB0nm8;STtgGrhw|@3X_&o9pi7THcO#*R z&wz@5go?x54{PuKgo=aA0rf9Hega`ps6LQ5$X`6rsT)-^aeb(`7E~N&KI|@gCp2*n zXgubiiNo&rE`f@J>;<_8WH-n?ElA=ZG0-8jAn{%_@lL3FrlEs+( z9_0S5PEaF_ynkUADZ}0sQ6?gab)x7Ac=#_=LbztGcYhLMH6?0imyWx zUknxBjwXH+Dt-bg4hm0DxLtvk+gH)VVg13oP;pRrg4_vPck>2G9OO<<=)lrfH1S5L z_&+r9?ND)cXu1HI4>IR1RGbG%9NAtmG;vrvUmu6K1(G<(d}U~5Vha_AhXbf^V_;xN zLlZv%4WDW>@jp=UW~eyG{UCQvfQnB-5(n8k32N_bH1ShV@g->DOwcLowP@n1Q1NYO z;?Yp?-B59uzd#3pg1q(wO?(Qp-1~_p4!g5j5SkBQ=0I+xVPKF$6NlZ|ZH*>g01byY zG;!FS)MaSmu=2SNO&nH#EkhGu19ksCH1RD^@hfQJuyq2DpyHtT0+pW~(DvtBs5r>K z$m5*6(EJKg4~oZ$&~TPT6aN4eSAvSe%z>3-)@b4&vq13@0TljdP;roYK-Hgwio@Ikbtc0_s5r|FwlFIgmUkohm6>eZm)F!w;6$)E=n2bm8F2iQEQ9g;Z691mzg>5e8o1u7nfCjI~_ z9*rc9Y<>=sILLfS=u)Xds5s1>Aisgaeg(lttEl;e`#Ggam8HFbP8XAvvXyTF3 z@^CVmIOuM1Q21;{69*mX4-&tLCJyU|zD5(j26Ydto`m@eeMK55JfT4bG9JDz0wxYM z2EGyxT^wc}OdMLQ!q;rT#KDF$FfhQv8zv5IrZT|hsnNw@C#S;1q0J`-&>ij|GttFi z$KAlhVeWyAlflG6dO^4sM1T&gWn^Fgg#*kzpmkp$DVTbgIIJHA6NkBH9Y`^fIWX~U zXyP#Uz{b@;=0Jxiz$#($WiWAA+vo{cmI1WM4;)7@anQ*IASsx7*!=EykRa4OAoF43 z|Ix%@;SQTegP8*p2dzs0X@QBu%1Kzi1YKMMnyz8u;5`xy3=FXGLYO$T*ktfSQx9_| zEPue%!`zdIral7XI0gpzIun?Bm^f_S4JHnA4{RI}Bo2#PkWsMtHJCUo{VzkZ7o;90 z4x4X;sfWccY&;Ss4l)~rVf{atILIuJ_Knn7w~+h_gWJ6PP(Ldtvib=;Bgn>S6AIjpKsUL#srPa~N!q)PuxfYoR=F zhzFpF!`6{R;}B0q6Njx!E5spQi6#!Zq!;8+*!(Qa{V?$!H1!)miWwLfrsEKwk0uUU zrwh`u3WxY6H1QiC#S9D#dvS=v=4oN>1g+l%X}N%=9wvSRO+C`CG7*RPOf+#={#}kkd_9^t=)Pu<`MYq4A3_s{ z<=+c9#BZR9!}1HP9|rR;O#C&PdRY2|%@e}ZgWL$huz7!&IIMn=f%e1D#Z}P6Vd>Ba zhd69~3d|f>Jp!ATMi=)*GY6JFBXEer)(gPQ*#hzu0|P@gntGUcF`76m9X8?+??e;7 z12umN4)Hl?;;?mft8j>KLKByPmWO+Bh#y50ho#TUIK*$GiNn^BKf@vZ4ow`EKL6kl zhg{MQ={JGOrTI|z!`4N>;squyjx@gyQV%Q7RdI;xqKU)GZP+>rnE5bq2Q>AteZ$^3 z#DmeqVfh6%e-1Mr8tn{aXzF44r4fgCCz?1czf8v=J|9gSmS0xk5Z{C*4$Cilafly9 z6Nkmi1svix(8OW!g}hD!IUe7ksfWeOPaNWmpw2T=y$0KFz=K0v1WgB}?SI(1By{!WIMh4g z5cfh8hq(u~{s?A1Y<+nyntIr}9oV`gboCQ)sE4hGL07*8hkDpLCUo`Jaj1u_OMVg9{>L;Mb!ILyDVafp9L6NkAUwvG(sPUw^;D0wo7A*~w$iNpM*h(lZxO&r!< zHNhcngC-6eH}JwC9)u6L&R5bOlbuzH^aWM5Dy&&9;rXF_Z$21(` z^U%Z_K!z|dFs#8Lz6DJj7GL{uh#yB2hq)iNjt|}a$m@JS@db1L4>WUN;;14>S6u6Y#idn zXyUN;7;GIV%zRk9tVUB03!iOh;xPB`LlcL&AGV$pX1)Nl-SQAkJ*-{*28Z|;G;vt} z=s%h`Y@U)G+5mvr3)?p+j3y3SHzhsaWFF?i1(Zpf?g{>Ecxf8bDcov#^ zSbKgMnm8=ou0s=_0Zq@ab;s!DUqVw4Gyfi%IL!QKXyP#QVe6OC&F6xy3xbIYL)`;g z*9;Sf`BxWBJ&0geDGJ8wYYHY+V+*`+uOR2bC!x z^~}(9zA*JLac(qm*giXP9OCk5;xPAX;Se`M6NkAUwyqiE9_01UVMyvh;xO|QafoN4 ziNn?x!PY^eo8OP79u&u*@R@}}d=Z*B%suOHh;Ks^hq(u~&Kli4chJoB4sm8s=M!2!gTfQ$9@u(qn0sLHu8F1|X1)myaT_#onE9~v*C6we*J&pqsRxO} z&gRI)Azq3m4x8tNt=C33e>R$WSbkiFLwp^YIIP{Z6NmUgG;!E|xAQo}ucL{>+z(qn zj_&?nXzF3Sv6&Wk1vyNgKzhqwZoIL!TeIK<7+#9{7-ty_n=2bQlR(bU7- zlY&D$2TdI2o+=#TO=#jU_rTW6qq}D*ntE9LZonbF15F&}o?|$~&!LIK+yh&ukM5q2 zXzF3<{|^pv7U(*6m^m=>Ve9%~;-Iz8pmIzLO+D;NHQ0K5kb2~G`@Tr(LE^Cd9)UwV z0Zkm1-(lT&_5yQk`=4;~+H%1eOnGf4H05S)8e?cUYdXP9Qy`|s~ z&p{K1r8n3<19bBzp{a+Jw{vlbFGUlF=SLjkJJ7`8`4NZsIW%#Y`(gVY(B1zLO+74q z{=p&60-bn;nFA}|_;HAfqlv@ZuZlxl7fl@Ie%O8sn7y#_HULdM%stUK#FNp)VeTo! zAzq0l4s#D|p9i{o=AfyE#qV+);_K1GVeZ+BL;NV3ILtk;{Uzw`d4Z-Lmi|BE5dV!P z4l^IN9|dMUth`l(?o)w@!^&IeauV>l8OW!?!uk^+_0XkEpkkW=Rt|y0p;N?QaacTq z#Gz9eU~$+wJCHbZNDM3vD-S^8(5@a>9JX#9Bo1w2fW=|q4HAbYd9XNaoCzcj%M&08 z*!VX{9C@E3Y@P%p4r*tD)PgWK==TNfVN9P^$wKFZ~@8ysRxx;P%fMT ziG%zFvkw+lFmc#^7UXaSsfUf%L8BME4+10(o3BI;XOK8-J{S2MJdpSj=r{m!_=Ch@ z^P8}7R+xKW_XMEF3vB)uw$A{j9ySk%94{dAVe^l$bKYR;Vdf*p7f3zKeAv05F!eC= zVc`c72c-vC`h$fZOdJ+2$ngkLZv%}H*m`G}dRVw1$1g}dY#lgk{062THcpEi?;!QC z@Pe&3fvJb(N7%X&kT@va!ovLr)Lk%fSh&E}5x~S@<6W@zBQSB;cqwchG)x?(9(jKX z$X?j^7;GFAroI81PC(~cf}8{shpn%GtrLNX!^YEK>!V@fu<<3>zIm89%ssI64lr?; zdtmFGVdAjyu?ncWVB#?IVe2?x;;``?m_C>|Y`g`QKVagp@fKJpUIQi$D=U%r#emF*&4+5BnGb6(!NL`04$PevXzF441-73R zq#jg$!rUK$q#h&=bAJMwI4nG2pozoOD1CltX+ykivVdQ;1AaU4yDDu7@SR8`XMJ#9{Ra?3_Z7I4D1Y)PgYVJPDXM ztbUn*WIiY#fz*QV3^Z|=`3sQ5LFp5u7KCBvG=j_riNnlagj5cL(iKQ82=7D^2c;j7 z7zp1+5=TxypOD0n(+MY1`b16-2a&{)R*D? zf!qp`fr*38f5v7%Y=1f|or3g$FvtuL4a0s64B%Uj(Cu%4+7CP3*7K^SBgh=yU%`O+XUbo(Db?T7V0K>i2SQRwz>$6>zmZsy=juQOKyeNi zgoYI|A5i`*#*KNyFfGyTY>JPXJBAJxBmpxe%QDM$bQg}8oK>)IP6~m zwV#mxLFYk$+=Onw1M~oXWdDQeI&}MMaoGO@YCj?WgZkar>|X%2AKCw)TfETi2el_a z@ej?euwZ2(Hv1)_AxdE5ETHfQwM$_7VdeLFsQ*D{_CRz%$OBM? zPzoZ5l%GLv1_>U9>Ibor@d>C#Mo^|hl7Q)h3GKs?em=n54~jGf1_qG(L1*nkjfL0C z=W*D75~>e&z7@h zcR#3|kM1Ur&TY^EO4xW9NDPG0)xO1H{|o4VAMCyeQ24>xS|D>^@z2HtDgQuX$aop_ zVCe&B2@~CZMkYv|f}Z~@Ko_AgFfd$zdKhFs=zJz97ao6-IP6b@Ue41GO58{eL$@Dv zt|CYYy8RrRA(~+0bRhddx5uH|uL`vvy`K3BJ&*{tpA}*nBCKHU0FCc}*y#EtC3D^!5+T{~)~}3_6DeTlhIZ z8<5E12l69KKP>%#`ch~~1Y|6OgEyFBfQ?&0c!=;r=A*kEBsaqsL^3caK+9p!ybLHw zqT3JJHigap9nc2&YP0}DKr{z%F-y*OLwmN(}N0|C<>uehy|>`L&vH7P7)WXy~VrI}v5Q4bJfstVgNFLqk zYeUc!CWoJo^c{XSGCBN=XJCANkbxlt90t*jEB^^Q{QTd{2n`#CDgT)vVIhnZ7N9Wx z#>}(|;tq$OAa^RWFl;GdfcT?{&EY2`oRIt?&G3_fnPE!<$S;Q(CN5wC`OV=cNG$^c z!;}UgkY0zM4;dM@EMjs1$C)An)9Hgu3_FWK?v;1=nFw_+BO{u7nPKj22>SZ}Kd7lT z<^N%5`iN#+35vsJCW!k$aR`db&&J$-v35g@LW%(nDp2pP(@L!VJC=6Lf9Gl&{PTs~#$Y;+kQ~4`zl{rmPHG zL|7TNFt9R!mgjzof#*>(xxsGL&y_#ho2zxT9_DqDhf9QJ<)gg$;8lbsfCN-=VNA( zRZol^eokj&_}L=F@N)(q#N7|{9Y9-jMM@bMwt)14{lW-hi-6t5z|e3B9H-`pICW$~ z#Oe2Br)o2xLCU%-7Jk z2NfP!d71jfMalZfMU@35`TC%{6!nub^W(wgRWbuZ4KJkbWnh5JcA=MTATz+2i32RZ7@fLE3Y({flUw0fjU~B z8FYb?4p%`*5d)h6Gw60ps1J;pK}TFcePF^2s`H^ffN(q*SUGB$7#O%g@y5yl>Ywni za5XW4q6EBmixEsRfk|dC$pR)>!6X})WCxQRV3HF|a)C*1Fv$ZZdBG%PzaKxCEdVAV zCt?eM*}`B_1Wby8Nyt7xaWGo~OiF@DDKIGwCS|~+ESQ9xqb(0+D}YHw23C$ZW(Ed6 zCJs3aC8~PWfz4L9xQh(ZtNazz<5Vpzsm^6QE=z07^~*U=~PH07Njba)44F zKS&guz`&~E3K>{AHh>HRNrRFc#4vDlgM=7ZInKkRL5UC|4bsiP%JB{)1F{2@2q7{c zJz#4EK+(#;$^r5R*ltkT1gl|S<C*stT-gn0B$kd^?v3ECbGVtn-*ax}d(D59UBl0%2VM)&lkVLa>Yk11pCk zE7XguiT>~zPx$;X(7+BXafszTdXxsqiKrPtB1okT=&{#J!ond8w9K>qC z7?#M!z#vkVn8Uyr3Gyg|NM;EGV-(0I9H8+h2F4hWsRAM(D;VQIY{-&g#srX=kY&V- zNub!)fFym!WL`D~2JrGn#yuckGJ?+j5l>=Z+ymAPDz_N-fHZ^q1dMw?Q2=FvLP!#< zU>`^m11kr}c@VSCfzA5I#=rnF>m0(Ya|pA}A5WVgy9$ z4$M~N#L@}|#=9WvKq|pAv$f*NBWQ!|4aV*sNy z;$rm-9tH*@u#!MV1H}E;9Xt%EYQiCEm?lOb6wL(%1uI832Ll850agYENT@7;xesJL ze3{T3&_N-fP+5Q)Dhp6UWdUlaEIX>5DMN9T?*|lpzDVT1x{t34-R6K;|)C ze9y_iAPq}rh?ECUi?GxQDkecX7+_j)q)7(2LeMxoNCz>l#L%P#ayDveXJ7!0j4&`} z!J-aiIBY=^;~Y?qkOvnRa0T+<0wxPwz%Vc{$b-t5EKnH((g}&M99UdJxVbR1A*nhK zHC5+BQ?*WNQ4s?p>}&%>3I!$CpIo504q)OyO2&(L7!Z*PI@$o9Iu3)HsxjrV*n9o-=oYRYP)S5K}t?D1T0j z0Oe0BgwIrX85o{G6}B*_F$OUjfYfo!M0c?VF9X9LutHRKfnrC52jtNJrWPb0f({z+ z1dE3-aTKdD1|xedh>2sB8e<^Ht^h_GL=b{=ye=p#I2A$p3(|rBuXE-23~oPyVnP5E z?*gEVEdY*l@Y;4xIZ$2(86W^^GeRa_z=NM0vMiuREm##>ASfMxB1Zru#sD^&O_mWP z3W^g*O%CEgq&W0gKpFoZ4+8^43d{l#46GbqSQwzH48W>DVTrB^Vrv&D8-PL(A`LPU zsf7el69p0lg&J5519(83%Zw4yDgwztSfI9x0H_<$vsog_gvNwYE-3Nwi_Fvyrd8M2*Cj0}Q| zhQbUCa>y2;Xp=|S2hyy7uo1*nMA!-9Dw)6?$0WhPpp3*7XJAl4QY^v1pxW8Q$SBAN za+_LL6C(qY#6%|v1_pJAupu}oHDsaQh~SO{dtZ~A5#&4u1}%^;7#Otm80{qyVFZ$c z`&fqy>KZ{t1_oVZg*M<2(Sr-Ig2ERfs1Fz9MhF_{F@S7Qmo$+C#i1dD3ra^2H4F?! zaBZyWU^Sqeje;2&Kpi*~Ar^+ui~+D~4&X9GD}?KSG8h>Gp)5GX$Ndg~mVx|+nZuAZf!LH~93sLTBk?mbU?c>PQ?W%UhC+~wkulL3 z2U!z{jV1Sjgpo0pAVro2v9Txtc?C1niB7wvXTuoS z)%9c1i)kLr3>b~2Y-VHtty_dC0Mj5ZVa6^Ng~S;LHWP_pVlco`=VOUVjJ5}synxLx zB)h;&Y-+G30gOTcOVYA}QR?#s2=Hq2xWCTy>gH{D$nSNu?&&bbB)h|fR zsZ0b<&86n0G!%;L>V^m8(k^wX1*vFpC4PZ&M8ev zCDly@If*4{`9-Vq7on^=@(8WsdlzJ7i|YF=@14g+G@L^5c_ zLvcw8XbD9IX!BKZNlIp3iCzY1@Hi>4I8`qLw7wZMcL@??0c(Ybm1Gp9CZ<5xAbAKY zH!&wCKN+GwwWtUp$iM*G_rSowyoZs|UfE7xNm))&iMiB^nOlL01+?!INy!aH#)x=j z4dyBvWo0=TRXJrjMMVd1TV*AAMISq5xeVqM1!h?VCT=us3m6$AVwII33hnHb$jqsrZxEuw#EPco6$9fuWmz=_CKg6E1vX=ED8tAO z%+O;~PR~)%R+dwWR%5PGP?J%SQIVBXQdCkhRMc10S6s~;rdP_W1+m&O*v~LN#ML*z z$1%i}At^nzq?iFL<{9GZ8(&<)0GbhwPb{qfv7J2qkd~R6 zlM~vm6}|l4@!PX`9+y|>BYr4`fwHl%v}Mlz6{Alsfi`2 zkl+Y&^a*tZIXo%9G%qEws1hO!3ptQXX=YxDu~B>p+ze-b-vEY`)S{f!JO)VGV<-T5 z101BqrDq@)%lm8QWJy97Hj6lYeY#+NWaBcuQ%4US;P&^`Wq?erWIr+E9jB#%uUrT$j{6xNi9;)O)D-b%1kcN zP0YzmEY8eJ2b))1o>`Kdp_`MRUjQ;NGcPAIFI6`uGdHuu*4V&6K{u@|vp6#;Gbgj8 z(l#SAB_%Zv9!x=welBp1t1~Fn!0`f(sHDt%aBB2*4e{`IVF0E6_~ayp9w{g-&Hy_P?5^U}l6XkMf}7*w>FydF0#=fjS|0D`;_3#n zFdpQsq=M3tVz3lA@xYS;*tKvIT>acV{aoQ(e>30vzKaog zz|Y^$6_Q?|?kY+xDXNSwN=+=z&jVWxcQ`abgM0-JeUPyQr6uvHMMe3LpazADlOF@f z5AngF0RjF&A#i5}M+U>$p!Cg9oRMEt0xnTN27$D?Izs{w6n63P;3OBHoRJ-$mYA8t zP?DMps=iW-84AGB4w@m$1jk`wK|y>`X|YL5dMjnG7yG!5ZL22{@(3$HR-K zlvGgesszVWZfZ$JehR1@C`wIBElSNxPA!JJH7MAT0ipmd1S+n>j2VhS#TYDDL90$+ zB{L+&f-(VIOQyf=W(;7zHk>;nul2yLf=TnwgiD56ZXD`4}9zoi1N- zyn4?Ow6_K{0SDVR3~s+V@+CM<=9$9nJda~4*EG&bkhW`A9YLxcxf#F{cCd4=!R=c| zJ_pCi98=hx=dny>o5q@irXIA0bq&AXDBVU2zWWFi9Zu2;%bIss%n#wbco5>BT{l;~;1NDk4b4wDF81#xu ziXe0bj8&3aQNo}H&M|sP#l;MIMX5Q7dLU6fj3kRL2Q4Jfg(0aN!z74mNa9D*0xCh^ zWu0D8KFBE`cN*$hK#fRAO)5=~2c-xGJqSB7DXA#63`II8KN*FeSd^HTo(l61L>m?% zP`v{)wYa2+K`%K!H#aq}gh4Maza&-9-7i!ZT=YQAPR)o1S8t#gz>PsG1Xvh8!md(9 zQOFExC!>f!ILx3nGlYpkGK1RBC?XIJGpIEUVZuq!G(Bu3AY71vfdO=MFB6h_1`x~Kx3RtNb13P11ir9S)T&sK`4khsQp8b3@CpwA*l!F8IS}60|PSy zXm=l!1EnD5V2XpbMld0%2j?ZI9%iU7pj|gYqkq`yUkd-zN4id=>-!XwC2sTFwRRGFkWgpvks8m22VvxcVQfh*vU@b;48zKo&h+Mp?q%eRRWytNO^wPwl6iA(mT75%1 zJIHFmZ7h_68N`8hCP7S4XAeYUHfW(v0!hN#iV&xP+mGO;D@YRTK2W0s(P(4OWcLSvEQR_Dv?>A0Wq{46fz-nn?l3Sg!1io{ z#9`;Yfb_ujVhS@dFd(1#04x7N;^3w0AjJ#}46yV7x~m*nJ!sE4NC`+BSv~BG2#~#? z1tTCeAPl>E1Y|xeOhDqWGt)rg$h8G%vja#TWInQb*t#Z=II?=!9&wPpS|E)u3~Eq7 z!wtMb3o0&xBo2#HkQ8VyF^C44gB*{rv#rq6Net8+ko%FhY34x1LGDBrhut{_G9SE1 z2xJ)p0|V?#ERZ;IdV{qjm>8k!N1^IrB{)bNRJ*{=U;;141#cZ-0M|Oj(8vL=TSXE- z1~mt~vJ@%~V}qn%E3iQ3BiD|wumXvL?0pYj-_5`PUZn&z2P6*K6ACiN4n!b{uY|hC z6-^v;1_DS3R4;;PnEBJ70RWrahKb*TngiV;3_eQ`WH0P4Uf6aqnEFLfb8l#W40!Nk>|?omTi{~PKaV>I!rP;uBUVcM1EVsgH-6AB8493FHU{ z28MJr@xM^@u>1%!A6BL`qNzUx<@Z5pn0nZqt+Ua@KSSLQJM#^uel65J2hr3ALc{YM znz#ZqJYi=X!OU@oio?!ugNcLMYalDWqM0)Z>K-QOMp2l0m^=8<#N$DRFfcH{&P0T% z2QB{xNtvOkhutv@J9`bL9<*Hoq&^l+J!rW-NIVNo9MmrXiBCckkAQ{`?94Qn`3Irm z^U&01FOGDi$hNj*FYQ7Abcofup zB{Xr^SyZqy-(cp$+@Xi2{wCBM6EyLOP`(wEhM98{%7>i=2NMVF?FYq+8&n=9o&`1E z2Tj}s>fazVaXTnK2};Av*$Oo$9ZejxH4S8M5t=yc?&l(?Juq`XYC*UTO&oMK2}ryf zO&nG}EJYK42~9tn(8M9DeHj?`qlu?N-49FGF!!8;ir++2uM9Q+9-6o})Sq9`#9N@^ zPSErMGyf3O{2VlKSh-n=Caw(S!|s%anF9-l$xwNi_-;_3F)%Q|>VKHHA=Eu<(bU7* z@dwewtI0!1_sz2 z=rHjlsDv4s`h!q$do*!af5rn%9M(Vag^Gh#Y=GPY>nlb>#Xk_d~-Ub_Y609ApkGJSU^6hn;mh14$gD9v04vkizWGgZxoq)m_*55V;aX@G2KzCxp`rDBG#R&D#qiYx<(A2}mond#8 z!{P;^O3|s{({BtN+fZR`q|KMScfDIQV)yY9Z2FJ z^}nF%_acdd)WhQUIFdL>eIzt}oS6Hp#f z-=OM2@dXMW*tie!-Qpl|*f@?9=x`Nie1XJa@oR)84jadJK@x}cML_Wq4;6>G2eii* zB%XmL4r_N6qKVH0Wo`xrhAK4iA5igT9O6AtagcvO?tzWHE{BT4+ygUb1DZI@-koUT zFn1n86NmZhI8+?nUf7-BFnhzH`RE~TuPJ)m?5+QSZt-%zMH$Q;<%4oJKV zDh^T)O3&UR{IUp19Av&GG<=sMiG$RCh33s4+SUZXxl-Z#94is*%RkI>! z;;?aHV>EHt_>KpXI5ew(f}bH2NgT=qi>E?4F!#g8$E%RULFo{zn1O+z9Z4J-C19!P zNa7&(!_ETTgC@=bt&g6fiNo$H{fj0JJF8a|I)DgsC+G}5ki`Z_;>hEcUP$5~_rT_j zV0UoC;t_TRcP3OlOuQMIzdF&xVQ2KuLlgf2EpHd2iNnTB*Q1HU#)XfdiSL1?&--ZN zuzn8YL=6V`_~B8gdR1OfXduLyq3-cS6Nl9!acJVRq3R)~K^$0iG$n#!dV~!n!iBq zhs`~d;t&VTM}nka=D_MrSo;NC95yci6NmX1bXG00IWTe9xED-4%>A%-F-#n!7lcoO z2rTZufn)!b~hA=QNyu%^> z4NV+2ugL=K2f)mSiSwX|!`u(+$H3G>t!2kG;vse1lDguH-9mjdeHhh zkj1e1F_?Oo_%<~4uz96}IK)9mJb}!EnFEWL>uBm>;`hi;xKo@=FMQ{!^G{-)Wh5l>(|26gWL?liD>HWL4phn z3^_Q&OVGq&=EK@AF!N#gYZjV%*g6SVKNzMSR*&yRQ|}IS53D~2Qjgs3eSoAMBn}&Q zdW}Q;GnzPTeFGz?@d2&JLFT~3Ve_0YdtvQ-5j6EMaTzpm*!&Bup9(Vv>MaJ?crr{J zeEtOk0|V$7ERY&>aoD^iOdQrvNkFp~CJvjAf~kl3s|-y&OuPxpO}b@#ARXFn7Y{bz$y-iQh$24|6|kTmhyYVCrG*mL@dyF!#X5 zC(zZy&i;pq!{Tc*nmI7>-Du)4^I_v0Fmqt;d5ESSX3iTN;$P6jVdlfeOVG`if{tgv z#9`s1ibEVWP7YHKGaoiC0ul%HTfu3Efq@|y$sCY4tbUBcA)baN4n3Ngp%907C7L*F z+^-dfcrThbtX~8h4~MxQCcXeoJ*>U78i)91G;!E`^gbNo$I!%K{SDZ7ILtk;dDWX} z>S61mp5PFFgC-6e2l$Rd{6CsFY`qk0d<*6tSp2Gj8fVaY0TjQmehTD-PDuL=SsZd$ zCqf)nKf0iq0~7Z_6F&~M7M%|4jZ3=jq{<0 z&l)uKu=KnghxmRpaoAmqr*Md0LKBC%{{as17ii+J^z#{q_-{0ESih7FI_?PbFHD>d zO&k_JuyIY8dRTiEbmAQ-N@3!#^2Zj<9GJK(nmBB|S^y652sCk6{z^s@hlN`5Z{I-4qBfM3a^7W#80A$!~A;%O&sQ5*f>AT zoiP7CM^g_I2b~lMvLB`%=3m%&GfW)jUtzTIWEW_EUJgwh<{mXPaaj6+R%_t#L)aQi zkUL=WBp`dCO&gFf&F?Y>TLLZjknM$L7tsD{(6O)ZV?L4H2~z_y1J+IfxgR7Bt6yOC zBuE_8uLP+DVOaYeCJrknVf_h^IH-LNQVYVc{uWFe)?R}3CqUw$@)M*Mgkj?!FmYJ; zBaaIq`}Zs~K0)e1?gyCx!pP$@$nMug8V5jjXCRU|vU_0b=RxCk$o9g@1CThfy|8fz zkT|lvu<-+sII_K<{SP4bg2a*S1&L9DLF34vpn;`Zm|3uJhw))FNG*&FqCx9IKw{AD zHb@AJiPaAprv!xyx%xrl+93OJxgS<;fgOeAt|`#^Wl&cV-Mt#9Hb89 zR*+e+`~X@fi_QKyAVmxe46u9xK;IkST7?AA;*$u)Vvta(O29+&X?#hGRp$p5$AUz-qvI|7R zFlfILNDSTo8=&^X$_tSHK}9aQ{h$-QvHAZ7G@ruC1(!4l)vq!6$JtfKK5CbKwL`KS&Qqa33`MKx|~(0CE&)9{_Y7 z2_^^A2jlOArfGEdE0{u59Dr6rAoqjzF2d}G#UJRdI&?F^I-y(aHbean7Q^D!yI90P zYBxh0*p8q`0|`Jex?P~Vv_M`(cmD$~h=vEy2{4fRK~6$<|63gPe*qt?%)kJ<8y;dB z=3P0Uauu8X2jU<)VDnBO`$1kpw;xoWp!*4=GesUmBKF-tc$oHs#^tfu9{|djp!Et+ zjUf9$XMCgE58Aha&Hf`$`F(B>~1j&JLG;|^pd2bU)99_Q&R6j@#88<@pBa4C9 zF#RAl2!rOkKw@aY#LxlN51Tg!sRdz}|3PdJ2DKBh#orDr;RiY)8m1oBP_w^nh7p)k9{{Rm~Zd7RfR$my2R{WE2nUR^1 zTd{^!Sg~e?w{nJba54uYcOnC$w>&dr_QK!)Lm>8xgQ^~|`3IR8LK1`+1h0YbxoHTx z2D%qX-{B`HEI{`-F{0g}^E2Cd?9{{9bPU}z9} z3pSHs%KyWVum;`n^iP`s9>$<>|6RuoD#i zU^5xyv(E}MggiT>(0%YjyoEYLLl7vu?KKz*Wf&TQ#6b64@iK(in=lkA@G*qg7cdq+ zW)@%dQ+&P@3qwOtB7=kFQ)cE>$t(;Ll`5o!6b~>2I|5uXEHE^ z#EUQ#a_};Qw6HJ;&SzlA_Wt)jH2FpI5v$jk`JnNuE{ zJN!H#z_6u)S&I7`Gs7y--A8Tp4wIvp8BBE;7(^Oa7z5=+7z$r-FoZPRVF*0J#Ma%I zkz}EmBNNQPz^KI_!w}q%p=6QD;$XS(07D?i4=WiMLKe0#2HJ}-6lyRrge;6<3{((c z&;qG*Vqut=%)u}*o|!4Tmx&=Hg~7qH;Q&LRyb431=HLGz4J{D+JpTL-X^3GAeDeRl z_(B$lStnQ+LKfa(2n6XzHV z?rmxjgXBR_nki!d-3=uMPUjDpg|+@^gYve+%CFImD?xWbfzxrZ%SzaNP!HK4@wxEh z|B%OA3=+1A`myG2qE-c z|NmcnHxt87V}^#HZEOrbFQe&E;(+K;5kcrV1<6wk2GBA#2HHjf9Xe%VYG!U>>FDGP zI<5#@)-hl`HwRkof`?i5alqR3kXd{5G8$?O0|WGGDR6mD_dBb=1GW+@_aDP7Z3TVAr!A2Hk`Ps=OFL_fT~*GCTkxzQ)YJ09m=oCI*(#fXIk5gXW73 zARGy1e$YKs5RN36;{f4EG3$Zvq2dOe2*i2>bio?bX|iA!Kvc;wn}8}~2uFcAfSG}T z1HyscLj~bL@1cTlp!ZNgIM92jAROpDR6NM{P(ft$nL(S8ba;^Op@PU5GuJUQFjzo1 zCXjomkU5}xs6Yc8yoh_K_*gib7RbF=l085J@UvU~~Y51xQXLk%7^{9+aLL7#Kt| z85o^lIz{u4IAR$LjLsn4Y@a~77{oxQ@G-hrure?(O)L-xUriDVYYQ`gHaR?IVPKGC z3}Q5rWDI0#Wsqb9U%`Q*1T@DFl5NK-tICQn0C7JD1ANoEHK>r`1qHD*D4Byc4$6Rf zd5ndAgCMDxfiV#l1|ndeC4yoWqyf~{XF!-GT9jJC zz?cj(8WdnDa84EjBZ8BS%*jRO@mjo3b zjOj3^KxA=o!Cgv5*bEkf0yy@Lfb0NacoaEsFfgoQ14jZ=GXwUBisxWpxC~Yk$lJwW zsM5or#Pk3E|Nl~;_-;cCyD@+a`wmtZgwwD}4#>VJNyZQ+jxCbN*Rn`51~GBW1Gxd@ z641RYaA$&cs<^U)oEgA`Y$M3DYOr_+6UPZm(^g_NZ371b!#uFA08|gbM-Ul6244Xy z31Q-xjA`%^WP?HDs-RE>>jHahA*K#TWE~7j!t(?%nh@YKL)a=n5e!QBkiq~|o`XvS z$T2YxH63(0VQOJ8n85n0;s?Nc>!GV2!Wd}svs9~nlXZc608=90A(;C@Gehq z7oI~A6hdIVkc)aaz<1j~%%S?NFW?(QV7IP;)6sF$aRA#o)b z7{pGX)&cGng1-(lK zbajdX%q|c|5oQ|$gOV8o_?8z`KS8chQGr~M0=qFq6|M$+Jqq~F7q}2N=*AR~kUFxE zr?3t3Nh6>%1;SVl<^~OSgCyaYI8~s7%rOtfCr&TiDkuZX0rZRvu;uSiHK6wRXGY8u z^|2^~>wq$_9V^br09!5sRRkJG#1MkZK^fRhf=x(46@g3wcOu|?@PI0YDrSaeCSne2 z$7U%uF=XpNY~tbqS3F`Q3y_h>7;B_~3Or;*3?SpNMH+@e6kXr|!?+y+tBtT#x^Vqi z?tQ>=ygtZX*v{dHEh<1V4#Nhx9F&38Ml7z!NE9GPV7s_t@GFG+98O_NkBpcX31LZ+ z*mN>67-D1$Z0g|FLm60%$5K2{Qx()=IEBrXjPMi02q?oyGRzD`j2HodX62G zAvR;tip6on2|-Lmkl1`qtQf)+2n(wVFv?FxhERxd1c|kTz!D5(nuV|k!ou!9Y-!gB zBN{2u3$YzRGBRW$I1m=uLJ;i;5^HY32tQ_q0&FQ2Lmk3g2n$;%V7bl%t0OROF~Xve zNb@0%L6BJO!|)6iRR|*>EG#t-*4hH2+JR_Ckk~zf(O_X@0Ns3o&<3tZvr+h9AuOse zgs@wQp^TA%81vDcfZcE`{=pC;QYWT`nE8^CAskZ~whMHKQijc8#MWe>HQ$gqN6=6T z!cnmCBA5tl@C3#umj<0l#l$cHG*dl#pA7N$$-t)w7#SFF-6jJ%R~B*|4B}pyq|AJX z5b|X*kdtlkT_JOTfpLPP66hipXLVT+B@+myEYy{(yuCpJ%;jDTOe{=n3T(_=3SfaU z1p^Sxrogr*62xFG(qooXV9wsfERv>=aYM{Q21aJiCgySlW==gh=1M(gP6cHH9RoQ7 zB?CLK#cVcUV->)p9+(6XOl&$J!@>62DBCMLE2=8`sLK0*?~yTJ=Jc{P(Pu8UQM9vV z<^-u{WX|_8Qna(xw>1UnW6rl>7S&T^-dOKt$E>c$90^v#rpIP$3z7ygm^r(iK@GAJ+y>&Y`$dNBv2F&ii-GV3ZR z$ur06F*~I(+bJl5{R}$F7j$g{%JnC%&J0PVX`nkz7|^aJ0N=a-(*wRe1I7W}=aH0| z4?gc5bOQiP9DEZ2?#Le!UI#~L|!WN_7G6aAYB*&QWRzkyL$(G!voAX z=v5|g7l5ya07=5HU@1xkU-5);e?%Ji3L^OJ7jWGmZ$a)F!ge7Cywrf*Yyr7*i24@| zfiBrVx_bkZ2qAaNWPgZ%ZUCh;lp9uH${@Ge zzqlub3pf)fG#j`n#nec)fIH3$#jkx?6XyEc>I^KaB!@xk^9VFNaVx-GMu$A+pcZi_3SxLD=1U$74nu|p@1boK? z8-^%EJ*GHFA+|d~AWMT$+u$IzAk54FUV#8&qF`o}Q{E9$*zWiM$zr?910oK~B_JLG zQ{!$9h`+>f+^GRNO$uQjjK$0VUFZxGfZi7&gcSbZe9OQ9p7g@zdNZgVBqP8~P~OL; zJ`j9&1|q(|d76O%d=oo1^?5kV2d#m}rXIA%9-DY44s#gbb+<|dgGvemwhWJ4u0pP{ zKvY=Ba^Pz#uoVd)<>2-ntjU2|=z{N}fVL!IDHC+p1aho_)=`537Ibz#vN))G1c`&r z&IhGlnBPHrB#^~n=EBNS(3$$k>JvbULCX>t8Nj&!rXF@i1L!PrSXmBM3SBUTE)HA! zi|$U?UPqWa!DcWpFu?Y3!rTKBhwT|dHy^gg6(o*40|x3}gY<&LLHlz+Y!HU+B>{=U z_8Wo3-ypdkS$znklgod9p#o(c6otfYd8Pl1ZV z(f~*tyj%&SnSp@;Jk1V0;~$nMKvJN+OCTDg9%L8nY;8l3AXGg_9JU7n`R)afcpucC zu4w9Ei$h>%gu%?WhPo3r{s$A6fQlpEy#O*FHs*> zhn-o3eD?xKeH}F2!_MY|sqcY`Bj3FMRu45FRt~__|AM+7`R)afdf43xo1yw(>f@p2 z!{lM&yik9E?luBxfr;ls#jk?|k>bT2YA@^_I+%Lc8Dg+A!(ifzq4xelGe-+*K08z% zrXJ=V&>j(x7MM6}&!Zxmde|9AdT8RXGoWB+hQZ8%oe>Bt4`JeOpzaApGiNnaJPA$w zFO&~E%N1r0>@55ms60#@cE;3HH1X$9KJ3gen0nB@2ax~QL*-%O?$C{zd(gz&q3%41 zCjK89UodyU%mLMJAoF2ohQY*P@e4Zx7bb22HJ=M=9!wl|CY1`B_&umQ4AI25fh=WU zV6a0ISAwcfLlZv^wKoS%{6AE@2u)lEYEA{3_&q4U4obt^zW{1Z3!3;9sCXBexDZr) z0-E>(sQ5HAab0M9%|R1)goeW+G;vt`tw0kOg_^StO&n?r!xl7gHfT8PLKBCyQyCaw z^&l)9)S67bZ)oBhpzisDChiIqXM)j;4B(slK=mrfd{})Avlq7Ko)1ku?6PrK zJq}a<9b^at1A`Qr`bem_0-E?IC?9sm49pxgsJqRe@-Xqg(E8dMO*{=6Zm_e~VCq48 zenD2dLG{7J&w&I%?LeqFXm21isexq*pyD9)u(Sh`s6`Wpon6|6CJqaS>1g7PPmNUqfMVF)R3P=B@PVcCMyPt2IIKM|0Zn`jG=8TdiG%Eg zo#{6pNgQN;I5fW3p@~O9!x47(0L)(48D%HX)F(mtu(PaS>SLe{#z#;w8}Z(~c$%>i>hhyc$g$c4pEQG;vsc{{u}N zX1*{q-azgF1r4nKrH3RAVm3hC;|Ah@X2Ka67(h(eoj!>m4pbc3oEju?5EE9u&j)d! z>OoA{+045@9H=<5IaiUyK}^`)G{|Q)A*+X-y#$M|z0mw+15IBraTaJiI--fg?!tnd zjRaF~3=M}WH1(EHa~7b9D?!CKqKTJ-A`uCL!XK&>EDBW)KNAHun-AU^0SzCJdYCw@ zuMIN?*3Jg42nHF5F0Ka>L^209z5v=N3X+1Uhl#`5H861lXgLh)m!XTp)(*kMVeNAC zGn--Jutlpd_2E$S(a&s#iKCy{3@hhh^%cw%qifchza3sfURhp^3xBpJDAIm^mP~gD~ZO&k_J%W#MzpG6I_7d9Tf6HPr#9QiD2ka}3Z z`aGI?m^kuT)FAb+e(WPO^)T^QXyUND3xD7chfQU{!czsR4%UuF7Z--MuVLb_ad1T( z;+kmUuyJtkwqSuhkOP$D12bz$Y)@K#6f2rfzn|onmM2|j6mWO(Zpfx z?YTI_m!gTo&Y0YQLwpCCIP7e)qiEuwm98N7!0vd2g#+vkiyLU_Vd4+a#IHcxGjGwv zeW2;&E1Ebg-WkyPtuS#8G;!EGBJx?}^nZ!o&}wsfW!s!|q0fnGZVy^%|Ob*nAE0S=}J>Vd5{*)Wgyt@>$&=^`P@D zK-k_ueOAp9rc!R`Y=>axw z4YLa`hY;;`^vfF=$LXV`c=%wDK-7!ISUhpnSJk3;-AnmBAc z>Jbj{S7_p}^5-iK@xN%|u<{3TY7(L!4HJi)?Sv4Al|RzZ`2m=JVd0~UCJqZ9Jsjd@ zXyUN+>4YW@OP^k7;;{Au@*SR_bOjTSMNB zV9rM~2PO`?+Y_c97M`2X)WgDa7n(RMJYjcx!pwn*pG8v-3s2-bKSALG3(tpW>S6wc z&Hup6hxwNUGzp57uVLfk0yxAa(8OW+P8o-|HkvrBpJk3i+#XFF)~@!#As&P#4h#P{ zG;vt?r=f|%!np{CIPx8&pm2tTe;b;5Sors$iNnGl+6)Arc@I?rjsn9Q<3uA+5(3wFXG3c-mNC=FH z)el+^0t#z#^@G+Og6zlTeptML9R)qN8pa0Ep!JNPAq{l*J^-Jy#=rnthYM0C1=S03 zD~Jz^Z_u7+Z1%4K34+#Tpm_{r7f3%0gYG;5iJ{vs0X<812Gkso{UAT0+Yg#g11Uj2 z3!DL(cwp<8VfMlFgYOf@`h=GPdN0fnt4#6~lI9SwHLc;~!{To05%fP^J0yJ3; zT1Ufxx-J?PeqC711X;xey@&v|ZV)5}!Z3G(*dPo#P7PfQB+duTsH>0*2P}4h<`J=l ze}xsu6b6O>=mJ?#_=DEm!h!?le$f0eHv4ygG8X*oV2D{D5?w9mtb1(spMWlSg~cDp zeo&C0+Yh>17TrvcJwKrK!{#MGVjzsJ7Bt_6&3*xB#RV&OK=y-z6y1JMeT8l&$Q})7 zK?ZBrg2X@=UF~@s>8Ai{Kg|6g`>~zH4r-5r%!H|f0SV}$?l5RRfQf_Dg4i(nH8f42 z>(7HuNWtdSL3%(KrVmDcf$9gzA>%1f{m5beaGe-`+M zFoX*r*5 z8R!|}4bU^hL1%iy&Jh1W#u?%oc+L=ii{%XQ1n?Q+65h8^&JdT(?uDKqUdGR`C5ahw zhPYzA!(^u#2hjEe_&MU0!{8io2@=l{KZt%#INCYljOg-6=ZJTL(-w=?Y_#*XVdsdm zh$GJ1CifiiMx=AZLH6M~N4$m1bHrJM5pKNxpSW|xm!O>^t_v*=DLYFXRBl7gar-e+ z&Jv$JdX_l+%=6K+#2FYEM$Zzb@>$~c$j4?b0X0rRZN@oqtk8qB?coP$Co(YF!_LtL z9gXb>(+N6D9L@oqCGG^$jdGT_b29Q-;z_W+AVVMr0|SAx#6e1MpCt~G)y8_3xFp({ z0P@Wo3=BzNH6ctK zJ221b#(n_#O%4WzDzGk88$qUR0E>q(ah$<44f_G)uRtfNgLUCNfE;8nCkN=n^AIME z8JGqyK|W3#G?)kqUj~pa@B!pYF?Eo3068cN2!WEZ5NKutd{#L4ECvSf3FBxDSdDb#71B}JQg$njiMOjE^G%{V<<$? z1=^y{fbC>S*aRJ9 zim)Xe@=^e-Muj^9WIVPMfT0ks1Ioa9{4(go8>l>lBKF8wjAO|`?ixMP91@5K5=*KA z1r+A7>j*6n7LiF5OOnKX^sdU2CR7sIyrz)hV?*k3{?pA5Ek}$ z#4N?Jse_n+AhEgtG`osW0_w_*9%&8@4=mLn*+Nhw;S|<9g%KCbqeq&V zovWmSolg8==bP{!c5bf6yrDjg`2zA`=X>j+hn+uSP+*=@pT_)zL4i30<*;)d=wav1 zY0S3NI_w;DAaJ~=Ux=%_YY_aHZ>pSp4m#Nqbm}zt0B2H;JO>|d4%0n)oOwwq1Nb;| z{{UCN;9#G4=*gk+$vLTsd59?UbaxF7VSt~sjd{pb(4z;M=cOy4gbysK5_zCG5oeggkDi6a2h55QeW*G1^Y$TC8ph$fun+^4 zZ!|ve9O*n^MjU6JgBwD4&OG-a;>>e!;|brH=d)>d<~b}KVmt60A(s!j3qY^9q{vXu zf&rp5B{iuu9ejfZgC2yPn3PnMT81K>lb?*jPb^BzOHVCE5yK*slbM$aGqt#+h(Rwo zKQ}iuuY^G_FTW&J&)qLnx40xRIU8zDYDRooQDQFMp*zqtD+|L%*wHm8?Neq3kSvN2 zn8VC~ZPg$H11V>ngVqj$ZoLE>h(<8OHWVX?L)3#-Q6mXLnb^)c2d(#IU;xdbLKPuV zL;0+8h`%U5>l}1mF!EXF;QY$KzyR870a`1J6kK2?XpK5HanRY**u+6+9tt7FBRDTJ zFfha+l^tM%p#*5a7n?btGo-MIcjGVzwB{6>dIrd1(_{v;qt0P@8M!zm{+x4|ZulYR zxSK49dnS;NJcp-H(3!BHHNMc`fS+X#+QWb>4jah7v#eoegZLcKq5xf71}YA-7nb8xpyDv|VdAheV$scko!y1* zU)UZHnE4>LfN%+#`5-Y6hMoP3ZvFzOdXPADTL4Ho11SB17$9-bI%g0Ygkfh&fyAN9 z;X%R-u)V(^ab)!o&>|7$PS~1s*qKPMaDa)!_GW?10WZP;o6f)hJHrno4qoN}6+eQ* z{3}p#bn{_n{(;OvHXpX8A0!T5C;>Gec1A0@`+1-%OVG`SodpOo2ibfBsCsmB9H8Rp z=D^MfL^lUk(u2}+CK z8UU#Wm4#4cki`K|^{_kvl7nuE0qkR$u^gL+30xeDkIRWNQQ27kv!}dVH#9?O;qo19A6r`AefdO`=A51;$Y&-O`(?3Gp z30vj^Qx7{E8U5^ZbEtaQSvWBDurm|U&rWZJ`V0N+bl4fh=x3+H+ymP?4m1B5)ExA) z)2BfFs|S^bsfV4Bf_`>-6jUATEIOF_!_fGJo#_V??}v(`pPhamY7Y9@={um}u<{dT zP8KxW(9ceXos~`O+3DWUy*%h=r)NXm2{R97?_;RF=x3)(Lfwgeb~-G6VdXQ-9N1oI z^t02?LCr@$JN*FEeDt%^L3^!0QHFkYI_wN&^t01vgA_9`Frc5E{v7IG^t03Xp!UMb zCz$&WLEVXdc6tlc9Q3o(VQ1!}pPddnn;Uip1I+yGP;=1FPB(vd!1q8bD;4^?AhsNQ1!6*ftfP}>P}d_3=@Z)*$49g;q_Ig5UFI%wT3DCp47PG18OWME)GKRX?EHxK&R>9Dhg(9ceXx1XW; z66RmnnL@~Cqk-D_P-__i(bU8Gc_mPBSiHMI;|u)^G?+Q_kko^=1;g%kS%W4%3u+Gf zS?E8Z;s=n_gW5Saq2i~I#6jjSfyVDmH1Xxo_l5(ZpeA z(ES$z;x9F`6jLgTj(O`HRo zp3Bh0VeRs%XyUJ-;kgA(+!kuiEi`f1-4CzP#6fr0L8B5(f&2wE0?dahho9*Ii+A+1 z)?wnXzB$Ys*c~OXthu zdRV&!{j7DEIBdl&Og-!jJ@m8IVdAiUCrmx8oClqe0CEyc9K;4;SicM=4l9?4J!>7- zA4ETE9VU)`);cWQVC56cUYI!gS?e(O!`d}4^{{?2Y`_{O4m+z2{j7DEIA}ZqO+Bn1v=xW=UNmvonR4i7 zt;598&sv9t|6Me5VB$~F#9`x!u>K&-{jl`*15JGgln*8@36b< z(8U$d)WgyPtlb1s4=vh3$%nxiNj*p$cE+_I4sqDdD4030eqAD(dYCxuE<{p^% zZ#4C=@pm?8e+8xb zXzF3(;0`#%VP}ZJ%z@Q^=y$Qf#G}#7ft^*Dh9(Z1C(A<;-}HXVeQLnXyUMW(0gd&CeZfAD;(mV z(8OWwxxYBXS<(8%u=b1)nmDY#02|+cg#+yDcU3g?Fmc$OZZP#XpzgOqQxCf%zzIzp z7Vo||#9?>3!OVxvn9rH5)X@z2ous|`&YHs0EYCJw9b(Z?lV z_3uVB^|1KeizW_p&rvjSSowSrO&pfrZ=#9A(lczl3KniKd;g-TcY($iXg52k9D=Eb zi3@-lok-;jtiLRcCJyW0DWi$Q`XT6d(!s>d(A2}yp(C0&tX=JiCJsBpJOqb$44OD> zJ}VuEcs`o=3269$HrOMF4@|rXP5lF?df2!iEIeW1zZ6Y9?2LW%@gJD@PBitf{C*UN z_*pb@Sa{yVA^s3e92P!rafp9K6Ni-pjL?A?n15m7pmPF{!wnWbuyIhBdRTd@i)Ie& z>~sq>aaeicfF=&BFTByjVdXjmyH^59^P2qN#`VyFup> zAcq5Nym1bidRV`4IS%plXyPW&@@fy7ILu#1(8OWmsIc*4nEOF)17Y;D)?w|0&uHer z#DAlS!}{ImXRX7;(a&0k)q|3tK}n=?1}3hECJyWO>7a?j;@1RC92O4tIK1Y`mflO+CzCooM2)@!pAO;;?#W4w^Wu{9l454!aW^Hm(nI z&lynUGB7Y4M^g{$Z(hP7ehW<;Rqlv@9lN~yb1hW?wZbCT3rO?D-;i-lu4hv5`G;x@JVe?lodtv?! zL{|@$h{YkEiY5-rj|DiyE6~JY{j3%o;yq~Mu=e(J9OCoQ#9`sT8ciG){+rRnVd1|Y zhxl*gOfy9FRE7olBwZL6A7I`BKn&8zc@=4|51?O)2P1cx3gk z@((1AtRAM1TpBbV267@SJYnX*+A}adj0UNNu|YKGcqfn;beIby1jfYbr}bI!uy_MI z3UszIi~*%V>o-9|FX-+)0XmJAfq?PzDAD3uxkjtqX_A z!SsXlfW$!aJTNwh55pZ${eNH@pc3e6LF-Ggx&Hz5K+zwd$$mU%#e?Q|(ai)|)dD&g z9TZ>Cd;$^!VRW^i)4kBeK&G@eq=Ea8>SD$ z24Q9#XT>)_^~2`lL25x57XBbM2>-(oeh09GA85Y_Og}9Bg4W!iMG?qY1_h|cdC?q< z#s%*LL(8II{RW_d9mIkf4ytEJIV;`(TK+mMz=pLzPO|)GcO%>T)YAJ9C!!; zVM9nW6BDqYk+G=(ghl*W@fTp5XyD}pd1u92u`_IOWOmqT&mfW@|6Pbd@EZ7h_J$zzbKn`77($3W2cCg}VTwEpL*awJkTc-l zg3V-@^1qq!;`d~xmEW0}Ry|^7*7_RFxbiDAwPnnrlC9^PGRH~2?Qar#A=)}Sps3^k_Y_Gyl=p@4soXNlt5--9~ z$ic%9(!#<}nE3C1$WvyvRr?tjEJ1!@0H5hD>1_o))4hgSihDk@M7Ay?Lr54O!R2SZ51 z9frUoOl;ka8A%q3IWoZv42)U~G7P~D8A=wZEDn|n4=@CR+_{p0A!K0-W1zhVL!kx} zL&(Ay#y|xD1}%^}Cl-c@$s7z5z$gFzi!Wq>n6-k1A!OklhCq;hWb;5~o%#DeM3RHS1axNrD4rfM3xoX!x*s8z zl_BKWA%*UPAL1>3Gs|d!&fY)x`F{ul3qv4Vjl<;sS!xyzNawVJ;)oGlo|(bq850}W zjET^5+!y0G$K6E?aYj1P=eRdBPCURI4_Z<@p@Fd>h>@WoNJ+FID4Bs_;t>gid7yg= z62NiD0QTR6|Nq5d_XzA^V%TZS&=9nZjp64bG`BU0K+IARLYQ?EO^p%EH17*C`1@x8$6-su^$2nf-pRaK({IHWCKM}5K}V)C>k*%DvyJK;SpF(Aa56g zp-MM{63_qt|Nl#Y;=7H30mU#jcKn8Qa4;~~fYpRBacq)e3`QKoFU1(d#4!)#29Qev z7;O+HgDy=5O+usF2r{h;X4)}K(^g_NZ9fMC!&^xECYjNXA>i%Afur$qc8)5R96!t1Czu=CkX}y z>CPrb29N{;gA601Csx&Hsgua3)*E3nOy{pvOp~cot}d>4G0@oL8u^)^^^&8ocbit z{oA9*sgrV?I(#yLDkrKZ=H%ojL(Wf!AF7UWkoo}z&`Ii`L(gG{s0WgCh&o6obCDji zqylsHE@qK5eT-AnA2KjHGgm5@GFK{inJP1L=`ok-fk_2sE(IkcIgkl`v^n&>kZ+bG)EGIN5JG3R?3DcafU+nRz* zVa~T<7S&T^-dOJivQ1u(IT5UiO^?mi7Nh{gVCM8M;kUG3zNPGV>}hyQDGO5P4cU{2c7ykRVS#cZS^5l8pQm z_!-;&&cOk2j)$+KGn_MeV0sBdQbB1+F+)y%Ub+I90396;W`GHl6SF}Fg!;OMc=)@( zLohhl2hMi&bNBRfg>xfJ4J;W_Qj1H9@+%qgQY%X0lQQ!ek}~t-i%U=xg&8v>7o{ea zKo3lZ9Rck^@Mv`Ck?IV1jz~vwKeiLmk&jGGOU%q+(9g)vP1P?*&8bY(FD^>fPt8lo zNi8mpFD^(-PSp=~@zG7pODW3FOwlhW%FjwoF3|_gSSICz)^!vY=jg*(a6bkGJ2Did zrll68<|U^VGZbf5r80o@fJ{#=sw^nU*H0|YGt`H#4oPMJpZ1=amstXd7*L#)R2HPd zjdTiiL$E#l!J!IC^`O8lN-Zg>1RXeEoR2tZ-qjhD+F^kk;O!i24mSeCvtR%n1IuC^@P`EoC{Ad5K00Xq z9H?D_>uhxJd>Njz(VdAn8y(yd0+}(LV+OnPRIX{9Zj*VYaL;6$#X6g14)Z)Fre55K zqw5t{=9VNTF@R1khtL_tB}HIXNoqw2gC00N>m?P#P9z73>Y)dyUQudJq8?ZZy&BOg z8u}-rGcbS}p966=Iu9uEV5}ep3o>9k8y%t^v}zcl2ARZmHad7p9DedNvTD#7?$C`r zsKN})3}_2%q4LZO5Zj?#IK|8WTEzWM!c9jY1B_DN4IDQ18*IzS~cj^oh5 z5en-A5_={(>?|(O9(+*hg@p-hO*Kp$W^N4F76t~`S=2D~ur<&yahQ78+FZ~X)v)!n zU?V^U1Oo#Dx;Si4Ao^M6urn@U?g5*@z`zgyH3w!dOdP%kn~{M5+1?DOdXT;F8E*y# z22eT#=>>_y*DWwGFu=}K1&KqKYlDD zuIT2&&g=u3gKYjAsC&@Of$h~qHwSk1D!Mtak{NXN9&%|3V}ry&>$BNG8!Q+Y7(i^0 zS773oq3!@L4grl{LC-SJg^I({07yNg3UO#B3hgXJu9 z*jWqcXPL7?{e^y(c{)@a{Va1>{)C<30<*Ussvi9;bJ$rR=x3QLLDi$5We#%>>;<-@(d5nE8*P?tz_|2NPcp6-PhI{1MbW=x3Sl zhKj?^o`9L-2aPZEv&_#x)x*xZgQ+(Fd5VF7VLenHCJsB>68$XmZm2ua&ociGwHN&? zbJ$*a^s~%i@e4b<4rVWG&o25|=7*u?qn~Ad80v2Hv&>=X5B)52SUNyI%X}U*9MI1) z{|5Ch`dQ|nWgs9eusx+P_iu-~6a6f6*qLCkGgV>gPeaW|Kg%4p*9dlI6HNVesCx9X z%$1>ggV4`14+J?9>Fhd~IqRU|2CH9S;@nVkh&{{vHPn1!&oZA3wHN&?b1|sD(9bgW zhKi$~WgZC?ht+p5_g{vZ4?7zVCawwpzeg7(E}5QohgcbmN{%15VmI?rv4?= zJ?Lkdb3@ZD`dQ{*p!GHSS?1nQ_n@C;9t#aO^s~%=L(QSqS>{bp^I-mhmFGQ3;-KxC zu(MTXqKP*_-H&|6IY>RMoZO0}9@HxYt#Ji;?E+LBwAUGwRX|JsK;oa##9?QJBA;Of zQXc`e7j~93$Q)369%KdxBcEXgQV;8wMSwU+?IPG7@Fb`>$Q1r>U_!?-qpr3ti1XXt(O2gc_11`UCxCJPY zGcYjhLKA-j6@QE-4$F`1(D;Pe3o~B{NgNbpu>P7Yk~oM7J1Zg-!~yMdg`SlTt1k0SAT;zP;-#g>p;^HDBeNge-N6# zU}r(W#ABfD2|!a1+6xT|(tI>=*qKbQvz=h(=tI*3>`W$@xCB)E0Gc`NAj6R`C|;mS z!J<&*@G~bs<2xV;@J0fte?jVD;;_Cs%p6#|9J+NEZVpTw{Va3Xc!VX$5+w6s;;=iA zVCKW_pn&z`(8XcfWMSg4c0Br7<}h*Ck}#P1aA~{_qS4PX zhl!(~We)Qf>P!XyTx8Qczg0L=%VI>9i3|92TCi@)hPDSbq?9<{eBN<{sGDQt09@(9DOq=Q9rR z-)Q16cd|jtGnn}>aXvKhKOoOCFfd5s5LZMKhuw9kheO;9O&k_JjyS|U(ZpftEfh^0 zmVRQ<#9?Pl!rEmZ|3a$*u+JKi)Puxf{SnysAxu3?9Cnr*OdNK{+I%!~VB*Ws#9{R~ z`kCc0@x5s3VdMF*_9M(*u;UpR7#^UhhmFa;#vu+ns}yDq>}=G3XzF3&Y|#1;rXJ=_ zSpNuJ9Cp_TOdRHZSUVRc4s*Xfn)$Htb1xj?L1^NzyF_Dgh^L~7!|qBdz#(3NCJq~? zXvQH98>fN!3l=^z(bU7lVRxm#)WgCD)~<(%!@}nXnmMp^cpis1Y}^874s6`)5t@3K z_$xGVm^)#2VZzLTiNmH6VdAjybZ%(77+qW#O?&|~ohjlF*F+PCoegG!L)->U95!C> zg+n|DO&m5(5sO1S6-^vAj$e#Jyc$g$Htx`dL%a`79F`tn{W(~8!qUSQH1)9d`2if_ zC(y)U<J?xGVR~+KLXyUMX7d8$6Gan|NfTmspnx3=K#9`yE#c1NN_(H!M4VEw3 z(9~~$nm-Xu92Raf(Zpfl1MA_Jlxo98%=L;O6NIP4C(J2=E);|VZ(H$W5a zdo=YwpyJ=r#9`$#Y&-#G4osXIt=|f37mDE!mqQbWwFk7(#9{45V>IzK(DsuZ4sqCc z0?eHopz2|Ftii-#MJxXvJ#KvNHkcl0yJ3!w3+ji$Z_Dvo{zIZWIRO+D<+A5R?OfoS5eyM55lAcu*k zps9zQy$u_OLl6IUH1)7E#V6wspN%FC%U{cJh_6QzhlS^E9O8%3#9`rc9*6jKG;vsd z1npu6#XroyF!9%D>S5sn8+U}Mhn0u?&;b;fIIMpqg(eQmze;H0u<{)J402fhGDTAl z%U=#?;;{VXfhG>iU$Ajdm^)$Pd)a8}VS7JeckaQ|!}_0fXzJfU(=%+G3Z@<=J`qhl z2edw#hb9j5*D^G5*xf#`@miSqptu9!lW6K;_4rjB;&;)+KY$DYtxLfn{sB!KR_~yn zK@JmV1`Q4(l_#)%5c(P9uy&CcntE6`pr1hw6W2sj4+|et9OAZU;;{4p8|Q|FCv03d z0Zl#3U)gBlu<_MmG;x?a(a#`&(O~xhlvNFsfU$^=x30_#8c7K!@?8&404!w1)6$T zc%q*{4hzq2H1)9XoQ6Yu9-25Tzo4H%4in#mrXChA=x30_#E+t>hs76cJ_kL%UZAOm zjccQyK@JoDgRUN0exjd24l7UiL6e|JL=%Vkw-HSo=C58H;#1MYVg6l+CJyuON;Gkpf1%Ax z@cJ~U5^$D;jX#0H0opYIi^JxDLE_LR23Q2Z@8!!`uNI{{x-*jjSHF9u*{xtRAM1TpBc=1ZqOS!V_i=Y`h)D zhtVLlFgAz=9Wn$GgAPN1gus|s{h%XbL19goUo(f_+WFHHR4WhSz!WfG?1)vkVuyO}vKd9_Ow;y!J47#5{<_bXzvX=zn z?>G+o3!wJH+z+xJv=;;2{u@yL!_ix8-zjgd)U&? z0xaQ2%30t7(6h*4cW8s`0%4F_K{O15_~>p2$-&MNXMh&$pyUYJr2}(6EdPL-=TIde zZE&mrEq}Y} zc7aGpIpM${#~{t{|1iTv&^gqgbE!WwGpz!hO$|DynvsEF0y6`{1VsjhiJ)_XzcDkc z`d-bn5_C4TI0M6k1U84CCJYTh-g`2XKz%fJ7optF@h>OpEh{{JryvJ=Dy*$EO;U}y+}pTAx0 zwDSL92JpGY|C^z1u4Y{MnVE6bS7wG)CM*s=MWF5go!bo7&&Xf`azhE5!_N{%hAjzP z4nH44-2kEw{QGa3z~rzKY)7@@%Kyy}^BEW#gwVync2+a2{LIX->H#z8{BGt|kN6pW zg6w(7%%J7S_``fNBg2+Q{Gc!p2Ky6qUi9Z`hm{Z5=S#uN2Jsmf8iJ7dAb-O6s#>6% zDL}CV!O*5VgATOuSI-7I6bmE=>BXX_C6EjlGeK%UaJpo=0=gA~3368=6AQTQ#l#41 zZZJVEz+-~Ui7+vNaMhloNAV}ndM zu}s~_z`y`DP=fV7=)wVT#$kO3KIIF-egtB(K-iB#r*U#X*e^g?M*x!XSPp|i8I;Kw z0@(POI~f@u9bYy9W{_?uN01qG)FPzo%O=DOT5}A!ql-_o$E*Y^Kht7nXrf~kU;bOA*thy~kR#qgVzfgy>7fk6!UKv*%xAm-1E z!D7f~1B)>RFtsr-z%`1qF)&ntHKK|evN14Bf{M4Isoww=2c1a_H4Ri>gPg+vG7Xz` z46GcWz=Z@<9L#SZEhQiV)U=rcx}+K6`8ZG_0f|F`CJxo}2{10)4?b)R40fy_&j&EI zFfhPf0}>YlpR5esp2ir6Y&C2J6yqFF=z$|85EdyAhXleL0_DPVL);Yva|k3-LSV9R zcimuNU;tgAEXEiJiH88@&y0Zx_ocCc+#JL*v0@4fC?r8!UBS%_HU~zKVW7~2q+w73 zlw<%kEg9HqKvJOSK}bP1TC%c%3k{I3`9b~wr+kPe4s(zukbRJh3^I=a)Y4&KWd&N526)D zJ(pGl_25`h*zvF+o5YY#pB0BmFfd5KEn@|_3342)Bq%zi;4<6@8ELp6R5>WUqhYK^ zwxyvdVgQ{iiFr6Dx++Re;>0uy)bc|SWn{p5;w9#Rnkc$J`5xQhoEXM~{D^saCZ<^! zjzCv}?QAbB2cBXPLN^I(wRFO4- z*jO}TiA5|zAkD}aYe-jl_HE!EgG~;mx%$ish4H+@H*lTuY-*m zB!kX%DK1G#NlnwsU|?ckC@x9K%qxK$Lzk3ToT`@rS}+MZR|>*P%FKr_N-~O46H_2; z=s|cHkk&sZBz=H-00$WuqeBfrN4P122=D=N24I$4gdkl;=AXx)D5UC5&2GYw2(q=2KsO+i8#Db>f5(A^2l8%zTqN1OS3P=}o zm5rLUA`=q>BO~a@qj)FJ5a>}<@x`g&z<{0h20BSCEr%ov4PX8s${AoYcJZk_?8V%o0$45`J_S_@FV&^V7g*zkvz3N>FH)X6BU` z8^xC}pon5SR;{?CC^@%)iifEo9iRqwGwR`Jpil#!V+W4pVo(GzB;_UMLQ?{&b2Ibf zah#Qw1J;P`Y&LLGD=yJX#!L*Qx$%j`$qbo!DXDoS3^)%+OD-wOVTg~12VoNUG#Pil zPz7fN6Fo}>BLhQI&!Lstu(JZGcQHA zBrz!`6~r$tNlebxEhx$_Nlh-vFVY1a(wCR6pqrMTn^~fpR+N~Vs#}nsnOBlpq@bGy zDkhRkbQ5zj6N@v!%1ZN!%QH)oGjwzE^9w)*X6EH&=B4W9Waeg;*cuxcDCnk@Wfo^9 zW#(j-RN7`_rlh3iF{I>|CgoscCx*1lqT&*U@>+G-l7~O!F9HuUvM#cGdCT zbw|*A1!(L9HirSO6dm~#oF=nOVV=q~k1+^zxY@m{j(iM`+)kITI9|O6)&n}brUqmI z0|NuN;&kLwaGcCCkJ*>&-eo6{Vn?pa_aF=~4OPoP-dSeoMGh$SLdzwjW6dyBK@%(< zC9ohL9w(qd=8gv93^ZwlmNm>cNAjU^U1DGi0<1 zSqOTX8F+XRMI6MzeKr~|NE!nV#Mx*dM=(PMH$Y4{2IW`Ky-DDK7q}>d!Hl?s2qFL_ znGxeIP!Y(W5b~L6;Btb2fdN!@z{(W3Vg?2V(4H7<;-I+}Y~rA`D#&N1fy)&J1_scY zP;BZ!qp?Cr4R&yu!oa}LkLwIHL^TCD0u3YYBU&!tDihKY0y9CUz@jUMwPDc3L9HH8 zkqoWn(WPO<2R8Af%o4;oV4yRpAZZv9s?e!d@R?m8aahWRPJ@8YIs=JAR5L(saAJU* zfd&$XsRxzaAT^*ftf152ATIoDF_^uu`T!JPAO)baut4U(#6j@|5(k+h1!6!kD84{U zkT`hM48&nzU;y0@4q}4Dk=4V_XoA@bi|Z*M#YpaliNp2?qniVrS_PlghJ3~s%>5ws z$l@@6fW%>83$hY9eB?m_Pz)=1KzqX>c?u!{T0a0{fy6;WpI4zh1@QPSXm*H^0epd6 zCR7|Y;t5l~1v+5`iwlrAOfSe>=#(vZO%!OZ93%$9pnM0SLFz&F3Pa5Yt(`#@HwAGR z7#QrJG)z5cz5yhJe8v~Z9N3z9P^TCq4^tlnbtiNQ1K2$v^*&H>J4Ec;NkouF*DThrUO-S(w8>52lC5M?~2X*HuH1(=b|6W5A4~Oy}L1~ydX;5>J z&-enl=NVKT?Cczvdf1*p*x61nahScZy}U4S*cm>^XMBOohmD;epYa6}p9ysjY|l8% zoJ&ym!1nmU#Lq+hi+six$ejI9apW_;K;p2oHIUEv0*S-?gM7vpNF28I4*85PkT`4) zGV&Q;U~#BBk4LN%pYa6}{|60c*q#Phc=AKVkJOMXhoJt2 z?KOmn!`6i7qp63Lefdy*F!dinhBGiQ)S!vGLfzSkCJvg81!R^#9{TyUnFxt;R)MA z4m-OMrXF@S9}lz%3layZH-P#}3`rd19@v>1(n#VU^*5pRsUnGk)CWVuK?^Dl^Dn3$ z1@ai|eo>G(s9uKE@4-mwLE<2_Ae@XO4hlC|`l&_}hqb#VqltHb3}Ikk*oY=R2P%FD zNgQM^tiHYp6^DgSJ2ZSAL&ZVv2QP_$ngiRT3R4d&uUJ5ihL*#i@RHqYf2^xd(QZjy;+Q|$QpMr{SKoSR;1Ixd= zkiMKU5s%FIb!DKAJczeg1)p!~6wnXGlOBQZR8DX!skUiNh}Q@^#fyFQS89Oj>^fPu~?tzulFneL?8MbB|CJtU%!@$4*E2m-NAUA_>G&G&U z#9`r+jzb*Q{(-57^{=YX)Wgbc^s{te?O<5B2r>t`TwRJ}4oDmpZm_-4F!eBT*xn`LJ#6f0&ur8WOt6vyQx6kAgr*+WpE`>}9M%tp znFAXyevGCbCJtK02JRY#fk!Sh|9pEeBH%6GuK92c#aBkL02C zAxu3?Tpdju7M`$r7^WWNW)Sv8Qx6+&i@+hCfF=&BZ?bWS7o&;8+ykrU(cOc5)(yzN zF!N#UZJ2tP_!=DM!`cfl^&r23@Fg_$FmvwW5Pym$4s$=OeE~Bcmj02?t^v6pHogOE zSHsl9#O0vv6qq=yoJT&p24oH_y&0mZhq(vZtN@R1Adl|C@&U+vP<;&w0}zI}7bFfU zS3zPR3>!xRiG%C~i6LW$M|RIGv~m^Zc3!mn3loR6Q$Ty!kj;VRSCBZ!oiO#Vv*$tLAosw;DWyT_5ae`N zJi^R_jRV5?FdC#5#s<-YeeWAAU4YyQ!q8+4VuCSfTo5FN?%xB@L04Ei1{7Z)b+B{? zOHZJ2DNvZ8hu;^l=?o08bOz;uR#L#2U>daQ2V^d~{Xakv!@$4*%NHQ~L3W_q4{En! zvmbUR1}xozEraeeg0Vp~=*&rM_G^GFM6(}cHwc6D!Tb+uAA{^S0tq7F3m`!T1_oIE zf=R*jL!}u&XYs(;Ff||=HV)Jb@-#>QiqX}A#v!q}KLYCh70}EA;)43wF#BQd-vR0i zK+Q&`ilGWi&@4pbGJx(VKoLr2a6}e%PHCATba|SNj)-{RYtePO$n9 zWIw2lf^I(_BV?^P!1NxFb1_sc0G{}qS@mGN* z{6KRy=-~&NyMZ=!U{-+X3sCzVL5>59KnOH0I6TnZ4pJ!rTdEH=95j~&%Jb;`i`ebteNetkRub! z$iV1r&mf)c`1gOvLuRQ}Aag+#5aQOL@S!~raW)^t3g3Rjp z|6d#y{tKXcCqaCeeo(x??CyR4A9N(y1elx>bbltuuOPEZ|Nj>kXJHWh!7RFJ_W%Fl zy2u#@)CSP-OHEHK$t+6+@9knxEmi<;GE*&9P%T!?DOJ!=EjFl7&8g6YtS3<|Rt0Zj zgzy*`R1J(OKqAoX=nSCq&p>4k0|RyTFoN?xvr060xEx$S5VxIC8?-ADqS*>G9|&PO zfR1)t-4Z$TW_U`~n76M`qB1 z0S-{9#lY$W=J0UjrKU5mI)ga^5E&ORM+CAMm*uc2^ZP(?3=CjZYyx0aP>vuo zXsQ8XGMf-HCo=;B#4t8tW({Tr1__8BQD!G*1_lKPM+_{Z0pW-?|;tING{GDhh>RAP19hi1n4`i0TCd8c2j)N>td%4 zU~?E)Iru@_5ka~^kp__l>1JT%&;!YUECNLuLx2a**?DotZxbeIIP4!E5u zZU_V=RB*sz7za}N46HO1?37?I83cAZ0d1gZFcIVpsMx{<+GKxTL=a+>16V02vLHr*lAr|SzE;*BppL@>HUpl+KKMBO$iWP-Y>61F=Mv~5xZY1<@xKP3Z$7^-EE zZIj|~LFnd4kO2~)o`ED>2JAK)P;Uj2ju9l4_oESK9NDTs`@pEXFOE2;Ai@j6!n&;t zeP9Z_*%Wi193y1)JH#Le3Gx;;g%}&vNYG29Yak9lkc>mw@(ZTI(A)Gjn>$D}rR$ z^ca{}SoGM+qd-zdMj#$!H)n+nh-Oh?vjK_ed4Wg;kRmqb3LArU-qs-fjLdO1%-Raf z(Iw2PCCo`+^Us4+G7H+YG8Z*5F*7hSLU!;mIQhkcHX|femZTOlAa4N$?Xxp80d4)v z$S*2U0PS8RycZN{dmhMC&_-F~vm6}|l5At$Seon*#66FR~>I$cf57e@!oClMogwaF3?uYYmV1%INrSFcpJ1Q z(~;W)n;^&n3ie#W6XGz~Ajt@xOZy00S_ldmIA#XV)WErL1~cfy0XPrAV1|rcA_Sl; zW{eqh=)qc8#6eoH?Tv)2QvnULfK;GjW>8-nRS3*uh76N}*~kR8y^$b!W(L?!ClC*T zX}Q-C;xAFi!CnX}!7OIPxm;jAj9>=uwu12>G-&D)dG8`P|1dBx$bp92AWBe3(0D&c z4~ifI0|V%O2W;ZbILrZ!p<`1I8e7FC4(fYg6VJn8J_B^JE|~#oOCvl3qE*YFk{VjM zL1Z9R9&#fAqy&6+LmH@7gx0)ZLC_9J5Cc-w!`8%t_Rb;3s6dARLP89*mk%@s4r}GY z)&PO_5F(3%!Uv=SWDa<^3B*C#D+n_OD$D@eg8(xJCJtNsif#^Qs2ZdOBn}?A0&y4^ z7+`C6LE^A76(j}Q3j?zk=6=|HRWN&D;wM0w7#P5NGC}@wfbzk^&CtDz$l|a)Yan}( zM`K|3Wq`z?)3jidAhSUT^I>!MuzMC@?u3OS?4C!MIBe}B?0z4Z`(ft5?h}QH!^}|u z6?{nUhnWN0>jiQrvim1M)q}*L%Y4A@Ux6f!9KW#pHDT_At*L?C=LK^QO#BIwImq@3 zKsrOqGWf|xM%&QSGzAVDO5 z)kFC+p)^c=HPk(@attO8%P*i~WS6bb!_pT_9CRQo$S9aTn0Pugd|>w$!^A;r zoj~eWqnQuevjW?L0aHI6s_r6`hKYmnH^>~=o(h;aNDPEuqp2^0y5|R)xF1xU6-vX* zVS@67pfpSzw7>>rzC4;ZEFNL^`@q!0?iqGNQ(p<5PiA0%m3uJtusu4tXzF2W_^Qyv zVfV5xLKDvfIg){a0k#(cWisV37JaG;!Dnaub?3Y|Y~`G;!G8(S2y*usv+o z(8OW)u75-lM{Zv+f*c3xH$(Tr!PYFxqlv@LEO15>2c2CF@>e37IPBh!Ry1+geM<|F z#6j+XmBX+-mauR$fu^(TXzF3@ljlg{ASP_DHf%2?$Q+RQuyz6`w95w*hqWstk;Fmf zG(hduM-m5_18XOEL&ZVq0hB&L6S1IhNI(;Z?M-b!6NjA{Fbz!{WCzHc)o9|N{t`(1 zIGQ-@?1blN;_$s(Py=D^gtdo2W`Qs$966or~Pq=gVy4Mq+sTFL(3n~{V>?Xvp|AK z=EK_Gpf&LzDVRAh@mi1|l6qJ@1nXzP)WgJK`4}b+JG*2ynmI6W&{7$Y6ihv=K3fM8 zM6wqq4y#vT>S6r^SpN%M9M(R8iNp2?UPm(@CVn4HoClgO-r^AdiY5+g_rr#MVD`eq zVf{6jIIP_dYOjNgLKlbC+c0t1xCE>ofQf_jf-vli5tumWj3tn`Cp2B4iwB~K!}@Ws z`$J*sVdAj%AWR&VZi~>&fr+ES~PK3{C40FpMWL~i^thG#22H9!{QOVv=6ELfr;-#Qx6Ll*x5udf5F5-mok9j z4kiwZUs$^gCJs^q!k^I0hsEz-9O9sB8$kMC=D^|+cK;Ym92Sof&~_h899B+&ZiYZM z2PUqKrXChAW;nz_S3)401B)+DH1#m?Ks0e!e90*hZ*`x+k3pg>_@U^t9s4lI7p;Sj%uCJt+F!1@a?^I_t!vut4E zuz3HDW)4jJKbkl!ez}m^&!F}aOk4;}92SqVIK*N73z&Og^{fG!dYHHcnm8AP=3iJp4`x2BA0ZA(97yROR{p@w z(1EFkjlXN5sfUe6o1%%s(v>ZmIIMi|Kof_hhX6EjSiD4|iNoS08BH7(p3v?ExE~E( z91jX~q&XItzo5c!3SAt%e*rVU4XxgX82}rD1?_o;It?a85e@3MfUJc13uYK>J_5#v z(IB-jHi#bVd!Aw83UVt5Lz6Lx3C5uDV~`lSe_wzChJk_M0JIzg&GmrP!Qu_X2N?hw zHwJ|X`kvn#(0UnG{({tkFiby44~QQL$|E2K8V23A1QL>g_FF-05Qgaku|XI#ZUS-_ zy8Bl^4`I6iwGiZ9kWo-Be9tUsTpHa>u({B|eLplwG%f?EzCafP>0bmIG-6<2fSp|h z5(8m$wV=&S*xX+M9oR5{PAq`j4{{Q^`$7FpbTdKrC_pD3KugL&d>BSo3mQ+yX8#K4 zL?ui=$bOJh(Cr6}L!p}qvMT^;KWsb)BnHChYC%^YVYB}R7W+Z-9_aS3$B}*tp!SPH z(;>)i5JtBjv=I)Q{T$GJmLPwF^nqy592UC$yP@{O!U?1ngxjG5B~zjK2P6iQHL2M8P%}0U6(1MA<1F9c( z)&xi`2*dmjVuLVfTmW16DPRdd(3}@cKPWsw`a#iz7DOOnh7(ZxLHDPD1)v1TtxzVI z0`bw^4wBdbwE%XXHfUZAG&YTHKd27FW`6;+`~&50ka;i+vJb`v(Itt+dGRT!$*^6& zklQuEn|h)9e<339`!!Gv5&qwwSKa<56b}BN6oqk;GurpbRVW%=fLr?-6!_Fi&hM$R23_FvV7%ZRZJN$fV z?C|rsxx>#!28IyF1B%`E85mz{b1{S{uv(b2v;Q!ESnRO#KLca-16GER2gy#B3cL)a z!3+#r>X{fUL3>gg7#o5Z85)9=#2bP@`%+z&Gz5u4_n=N;0^OG>s`c63;b$Y0!_Rsq z#@C753?bO}$})lXFDFVh>`Y+;x!+;uK_-af!M!f5yF0u8}I-BFaEIHVdtaC4m;x+7_%S#{2u~yKO+N!&}V0d zpA8HQX4ja6Pak7q>wad>@H2{mVT&U(gJm@X!xjbxX`uvW2Fr2=hAj{59ezGwV)$7J zVwXGYRA6SXtN^i#9dGwj^V!0^+Qp&{rHbpI~gZK4pjwJdA^?G~50LGXJs)5LGdOcTE1W?A*58gzFoXurGks$>QRp)3FYPyfTrpml(g z!Q`R0!%qcf#?wEU8COLyGjxOOILpcq63@=?F@b?0M1k4CGJ%@`ys!Nsv)HOf%%ZCv zGmETx!YsAwXD}pR$S_C>HLzNkKVV@ne;DlW^NGL1Pi7g0;D_D}KM()bH)r|#e@ieE z!2;x%&xJ4T%55 z+~KDp14}o^Ty!`0{Q4jApx$BU0}ck$XWkA!LE#4rI}rv35sEyIFtc>u{QqBE zn1KPDu8Wx%CW7)7C~ZGx7G4EP+cMC+1xs5^!VN(nxs)l8w8a1_d%_)lN-}`*o{W|v zGbGMvIx==u?^85Cn7UZM6KbNEo7~Wh%t%%V_eCgdp-N(-CHzf~IHCeY^||4VUaI z7z#TW!23o(L-`XKZY2IVz#M-Kbne130f(Q@nORrC?mh;m^=jso57ildeqm-<^_7`P z>oYU6)^}!>Rc?$7TaJl1{A6Qf*m8iu{u)ZzRPBs7SAoUhr@R2e#sm(A5HW^^OA-tX zm+HkB3LAJBLVVa5Lh88~3J-8Ggw*pf6dqt^2&rddC~V+h2&u1PC_Es*5K>>nQ0TzJ z5Hgd=;b)}~!xm$9hMf$zA8LHWC0i=~k9+y4;IozKYrO8EJI3#dL(U~$;Vz#t)%z{H@Xz{0Q-WJf6r zgQ)^T!=(l$hMyb%{}%^^Cj*0nWdjq#PLR7nVhh+9gbsZEZ-Sg|lVIt#0pgBLpn5|c zl!qii<%$+43>SQcq;*i9RD$LYm6nDekY7OZ511uE&DSaOnHYX9LQB(5A`pMJR6xw1 z_5Z*4*7xivbr=&gEL!RzY9>O{JOe{RP!yC6x~n_k|Nku@|AFjyz$^@Q+fQbORS66X zVDT(8yJ2p1X@r3J$ufb-;pZ1-=2hR5 zSyukcW?lKam~G{EX2w;&!Do~>{QSzyqV*u1;pb0gR;^ny48cE`*;k24GHgj;aIlmY zVJJMn$q91J0UnwcilanE20Uv|u17|181U3fK-@y()ANf1{Okif}eh|#?^C`2) zDoFa2UiHMAX`%?MEM;IYc@PY_^Bh#aKlFC8e84QCwGbp8@9;B$2hlYxi96ci31GZ`7APeb%Gbt^GI!fyk#ZDGa2fRc9> zLH(1Gg7D8av@{5+r;-^MCbpy_)T~8QqXf-^F1ZLbOaA{Cm-zi3RCZZj1LbFC5v}>4 z^vle!6O^X@D>GPv>H|<3dKkMq(9Cv%hF41>!fa5U{p0WO^J}of&j_efrit^}89svg1{MqrLBAF=P5kN4H1Po=L&yS9KY@|KbOD=#Wdb9E=~ga= zi4yD#g&@5N%nTuOxEU^j%v#IJ5CSseYqZ19#DD)op1OnlA+_p1Gs8|$9t4FWC=dSU zX88G-SrU|vEG|6lxT zFvHJ9Owy-8{#8TsFB3FgS+WrR)dQ8Ups);g_^H6a(ET8q;pZEWIny0>g3|r>fB(T} z;DE|jP4!WhM%DR+h=H*2r3UjHYlho3tb#Dqds8Mb^= zVc2qu3tVP^(rS>s1ViCTMurej|LAi%qHombO}H!pweJ`h7$!1ABvvFcFbF8DQ0Qi0 zkiT|P2o#^9s~&|r{CvnPxeC-Ke8McP^^93Y>p8RdDg{RSYft|F7nf0FFi`-t3E3G8 zA0#vUe9kPbbwGt7M3JE(=vg?Z+y(Uy8ZJFlX0QaM2Tl&2v1i5aw1Zi<2u zv@Et~2&rdhFg#$v5Ms{k@bf{k!_Qw#4wejZ3|p8O94tX@NoIq%&51!;$ccej>k$)! zDBmQ0|GyPhR>I=yh$JhW>Dv+BUnC-76h%%TgU~>4mz=C1RLuTPs512*4^>l*v z5A#Gmho1~J4wK~>7+;^30rx3>+B3+%289i%omb7}@Uzzj)UIKk_`sjx=R;;`u>Nn| zpm1WC^3dPm=VNARaJZ{5Gz2|`p0Ne0rxMf|LO|y*Yo>`$-ZM=E#rq3)Nd54_-QlN$1SCEa3>iYo z7#Ox3;BwgcKtRC!!D}bW2g@0DK6vkBxj+LFjtQa+TR?7Zz~W{GE(Q~jU(FaAF4b^3 zfWz_(14D=_BZJ6&CdSuu7Bft|#>O!5lo&%u1GB?Vd6tS#4*&m$D1ptA0f#LpOnx&n ztb&C#h!0|eXpq_O{{I(G=5qMyti!Mcl=c$Y8A4*%8B9Ux2^6=WGzY2&VQ~Q}k3i`g zRMvsgHK@J-g~`LuOcOzA{?T)$iJHs~C}|v2?!8QgginG1gUN&EPL>K%3??-i45aXI{S;$i3px&ImyQ#Yu;4+=LJ z%?PT;q4^#p4oW8=J3#6|c^)K|@Cwp?ht(-Cf3+Av?0kV1{xEqK1Bmak4p6$+6@>H?r5PARQkWfnwlFXVfy#;p%$%!0Gl9?H=Rr0GK~Nrg*v+t0oWV+F}w!#0YQ1`BDn3v3C@$Cu)O#Gzc?#HLy$C6Ll7ujK;eA=>aGXf3_C$(UG-vy zi9Of;haCF%UmPUA^51{)2m3*NHijvQptceN+kM{oglxI zu`^7RXOMnJ`AU}clAR6RWP+0{EV=pe$a0SVO!t}x4 z|660w(!(QI8aITvJLKPgaZo)6Dvw}g6R5re)pf4_{)_+bX4nZTUmbq^Hvzd>o`vCK zE+az-DBc+v94r|b8B7^j94rqqFqkrMFiZs1NykC)@Y=~z;U{YU71lmVv4PlaitaYP z2JrYSivvV{#_j*6*Fo{Y3`#SQa_Ye+9Qi{7qDKKuJp)67(D}dr#bJH}`4hd}0Sd2U zfB%bv#-TuA{U{k!Uka~sVqo+J$u->gZ(?=g|5mqu2y>q7ci0It3zWv#7#e~=Z5WXH z&3_@`ritEFNBYa%S93ubrFR098fL+Z8nmSo zX0RYO0yMz_62~^t0TKsIOc6uFCgX6ahb@i(nT0g31hW?A4A>kB%oqj-s0Qd{5zHDi zVbBpV5QQ*}Xa<4C(&QQBU%zl>oXEn^AOwpG(74(^Zib(rcCtLL?2qS*87BT;%wXBc zaQ|LLT3jC0=+JTcHWHXb)&tJ|=6NMQWw$5N+ z5CQoelujRbGyH4>x5=fzWiCvd;s5`w3z-~#Dhe@d0nO8Z^u{yDzvf|P2+3n$5NU?$ z0iCIe9Oj_(|KA%Do(FgtOhA23P@A@xiRmB!}86Na7ex}Wnd6V z292*WNtm^8IqZC>3~Eb4&XRq=0u2`)hLDHuh<58WCWoJ&{T;w@1)2kD1kVAXj+y*3 zcKG?f88Qz2ltD}gWG=}6Ab*3x)8Q}nvgt@H#9jOh3?k1N(KlFsyh}iG5jn*GY_WzNhriTsQVD} zK+H@RpD{D7YLQ_G2IUpdxF0C5fbtb6-=stH(a&numEXYU5wos(&fxI#IVe4GGi*_3 zaQK-4;#)KPJi(@5md@hv^T%Pvi5#p_LQj+#ET3{S{Cu#OapDW;cmg=z%x0YUWIiZA zLCy{SY3=Z{fgO@Y4zMtUJecoj`GA$d%3Sb_SD&)($@( zm^=KmWM(}5XttxJB{M_!PjiN!O>7J%_UsHF&w}QHKx4cN45kV!4wi}>3=c=Bqknll|b0%=RfME)Fe9s=-R|k*pF@on!kkV?k>&pMkkaUV1Ux%Re>kF9_%LJg=-4pRH*|9|nFj0{^3GC{`pLG3GK^I>{hJP~@YqM5%4>IN1ch#F8^ z0ThP+nHevF!!(&;;^%4x@R;xaWClx+U(=Wzem;|jlo^lY5&j0v2Y;@1SoxnBRwgq{ z0iD_cI^QL^sIs6WUq7)p&rlye-=56C;Fg)1lVZ!jpra5{S&(YW03jI|UYIjLPk?~z zDqw`vI+!FA2Y4wNc>bU13g`r1*vY&sptV8_OpM@VVN8tRii)^{fE_?PTA>EROydBX z#>z1lyzvuk80?(i37`c?UD;FALPDfRu(4E&RGty z8LX^Krko560uT-xSVjWEVP}$JWnfT%a5%s+8W0W_6CVrcDhY_4lRz%C0Q64I3Vm7Aa4sm&7B4^ z2V&%O1ak(0ITOL0g<#G`Fy|nca}msW2;lXne?j7qU62_RzK}R%7h-1EdgbD)ma zXKrF;V9?NkK3v1SW;SqzIT41(RZ6 zQXEW5fJsR(DFr5_!K4hBlm(M=U{W4TLYDX`LIQ^~7Igb3D+lNzLm^OF6Jcdw5QY;B ztQ?>Mft5o6bmlHN3^h0tvsf7zxIi(*nG6amNEYNw0SQC09cMa79FpZZvp{S}Hs{O% zg`WZgD+eeV!8wsLSCN&00r|XZt`zv`=j=~G$%>U@9xDTb5GW^uB3u|ufZQq!icDcJ z3nVEFA{baXK-mZE7f=p?sD>+KVC6UiG7O{%lxHB)px6hS!@$b%8YT_OMG$F_ZU$Bk zE;gtuK)DDa12P6|tuV+#46Ga~AT=OSQ04-w0Ud%35(GI8l&`>oV9SKT7ml)W#Ik|T zyKZ7*VBiOB+hOGZm0zqJlR*NYgvZJODkwp#;27A%7(pikgG&kx)(*y>Y|!g8SUVX( z^$-JJNn$z!YZoKPHV$w;W9PLt##)WY9Gsfj`_H)LyaP|wv&2aWh#+`8XE5`kB_G`wYaP}L<({T1% z#*1+FJI3p9_It*=aP|kr#~^0F!oL60}{Hl>@XniFQ!FO~gH#451A{O~6sj(Ysf3e(K?o$$3z7m8GuRjy z!1;-Rl>;OLF(I01K1eCZ(#;^HAQ|CyQ0)Vek7e2qlm7^kM>R?qEC$jH$#tL-UHChw zEMw&WB|KIRP%eU)l)%Kv#lQeAJao7i7=*zlfowuE1nP%GCJUHyAGmUmbx`>vrU)*O z*Rjc^FqOdcP6x?@OEs{4V5fqzsW3=_ft6z}7Xt%7sFekAWCqhZn9egGonTF%GDBDs z>w<4{I)%4M{(&c}(RX2~dJ&V9jT$<%Ts^SPPh%xj|W$l>>Ag0xL%#Cnz0( z5(q2DWKLK@Dr5rL54OdEwV3H2$S_cy%UZ$&E^HwNmqH{UoH8aB9=I*#U=FmXt6<{d zfi;R)E13j%7#JY!3)U(oF&PpwR=ctGc% zv2uVSo0Ve`7bvhm(FsWnZA=7^tyJtKM43Nk|#2q-;zyYejI)}-W7v}o8 z$gZCUF07%hpAY8nKwPo_tOe?ogeK5u;7~>k0q4WsK zP=3S9z`!&yLHP%mPElsz1MxGI1;BKHk`!o12Ll5G>~IMQiOia*V3}l*^p}`oyG_imIt^s7p7pMjz1sER+ zGBC)3v(N!Z7Ajz1JOIu?klb+qlH$Ro#UZd31_e+~1slh}z;FSczSBe*7!>oNX-csg z#%O~vCczlnpbX_h;DnfL$pPk{Tl3=E3djP#)Z8 zF{TU*f+8TF1#(Q>QO`EfflUdNr@^jnGOrYIUo(NK!ke(r2aKb{Y;R0#3eeQ zh~n6UQ=6hF$oC=4Tx+msn~UTL6w4xDx^`mGH67V9)JzN-4Pao*1vQbtF$cQb4a#7g zGhLK{!4O>0<$~G`U~wZ5$v7K4CIn)FFzBi(5Y0HpLz003d`KbVY-UhP2P6vTgSrR| z3=AgVLI7a`M1Bt3L>M2`>Hz6C$t+=DoWl%i?}E6XqKAQT9^7~ce?Bv)p9+#UE2%7C zU|hhg4C+%bFff>bI?9X-;l`U4q%klqVg|Vsq#UAsF>^3zZy5svgL!IE5d)(h3%oW1 z?Uw{8Tq?%E08xC2ITETEd>}4JlHsNpDAq!mKQo4EForO-gEJ*0pMf(a^Jm6DP&#g5 zV1P%!WK*O>y~LD(K|ma2NDxOW1BZeNhk_a?+9p;&wZWtN6sX<;s|;XjLo(rxDFZ_g zSe%dvOlAxWr4W^%IxY~LmQf7@CE(RyB_YgQXPGgxQx>+AC}+mNa22eJkP|@Wb4!4{ z8^X-Rh$YQ##%8{q83ThRSXU4eC|CoSI*|eZWM({AHiVf=5sR6~MF2cFTvbe-W1T?h-bz?y-9@h`Yz0`m=MBooADoD(PyD=7Xl!3qi! zP_z3V6R2AOQUoan{(%RzKzwjH@Sh1*4w!%oCI)!EhA2nyO~Abl24+yN1FRj~^I%{G z^*lg)NV&ia*KY+9WQ6dUCb~elEX<&E!Zgvt8r)WA1)Ih+(ZL$rGlFp)A&OyKC+h+R zMmAQ<0};6}J^Jgm?Kdz*oQF@iZ+mVrUB9V)I^4Pz8Q8IU%{WGGL0z9gvQ5}~{rOeZL9 zg-T#He1ce($S^P{5^VUugA)`m-(^6N01FsUkc6^;nlKuSkf34e1U0)r{( zegSZpAVLOiB&a0OlLZ+W!pxP0C6|M1bx^wx6g-#(Lp&BOpa5lpX+bJELC)U+wksT5 zuA;;%(?kbQ3v;5Q24fJC>nD03MJ&WG3@F7hsP*s|Y$&K&315Cr)I+f(-7P!gO$aQM&ewU z(GY{+Ttje4JQr3F8-fesxv+BBzNCbKaXx4Y9ArIswHbnIpPa_PxB%ohkfeQT8Uy3P zL)suV1A~2HX$1r0qO(vgMCW4AI2uUav4DYbNiQ2H#~0WaLfIe*`|<(?#-*U)Ef5c) zYZ<6e1#z7~1S6QsG%*vxTMlwK)5I)@QZNss$`M>6fVoT)v(Y3W+!e6Uvd?5-TnP&u zh^ebUT&9UR_Tc8}Y7h@(Dn#QNSR6pPpdogI>{^&&NL?Wa?K(3sfR7br8YB2RPfSS2j%5Y{z z%yuHE$N?D$Dx}~eGz{Rh$iTo5uLNsUFJOcv0Z0wGkP#LJaMw;UV_?ux0=YJb(GXOS zfXZ0Zf?<;x1A`Y>Ng%jt0?We7#D25{IkE5oc`jb{BCxb>K|!&b&aN+i_| z;)VDL1qCBxFxYK@%-|uK0B|LN=-q;RDWnW?C|+M0fR%v!f?gbfd>Mc&3$Xwm z3ZQ}qJnppoj;eiE@D^NsSMs@_K{DwOLL8DEt6=juTp!%&3{03QtsJSmWN<+q%m5va1j;^)4;dLdRj@@Jd<+q$R0%P< z0XyuOVK>-u;ov9?1J_C+;D`(c_n!j6^*cDh!F5~(>p+r$hY!dnY^os7hA?yKVTp)2 zpth3@B3V2!V_?t%Ye2eK7o^4r(Fyef%R}2>pw4F?xHb=9G(nj2-Hd@D2doa(?L)50 zK+)C(m4#H($g-exyag-^Nyj0eY>1SY5w-}KGceo+s|b$}}+(q;p~pD6T-wU(}M6 z(E#C7P@0fa2l+IFiQ_hA0-uGHz~K%sGG}100c*k*pP*Ee3ziK=9)LniLP#D5xnVI_ zLkKgM0G3>qip>!qT{j@Qm^cn%y1WgSCO!?YcbT~&ux9~COPLWVAAtO;1J;GjzaWPs zfn`IOx#Wp86QpYfOjjBfT??_fACyEl>c2Fmv@`aqMy=UGUP@8LR_WX$YBFF6O?>kgLPpu6EqH^s15Qr5w#55%oKA5279nB zNKJ&Am_TM0gJq#+g8Uf@A|R@9h1W{3o)BiPmstF^3@QBK@eb}~uyX9xW?62(A+*~Q%WPONee2JTR;Rzbj~~-SU02**8Br^Lz+;#Ax$v9gS#P3 zux^NBG6Q1^X!!`!#0W?$yA@;&)5HLndIr$A(*zwz2v3aAUj% z24fKOXT~56#z5GxZ8OraE!dluASW{xqKs~NKnHCY=kORZFqo7j<}ff8qKFSFu{6FkVbMD+E)N=#s$hcj zhcY1jh99W?1S11jJFgk83t}pQ4;h1M0lSK6Vmi1P$fL)=02vHi#3X148>d>r1PS>9 zc*u8}GcerO1%*6#Boi(U$`Rk8;#~}gUd2*#xLQbK-A5m0_%@i~W`zul+rhp9g&Af` zeJ4|n9=7HlWMBx<#DhBqlsp#bfhk2=t3?_Fk8bHu;@S@2SC(5pyo;&*rHIdPoN`H6Vq`t zo)9`gPTT|58N$pp1B->oPDJt8Cz!5lSacy5yzqkLfjLq-09g#~uB^wR9lI|J^{&=Aj!gFc47uX4am|}U^OAkT<@@0jMKLdV7eX>s|(ap_y^V%2pO9L zb(P>@0WNL8b5N`tpkf75@F>8uC@A5BRvLn6#yR>Xu!2Vcwct^N7d()0az)gFM+vRq zQ37XikeMdnf=3yx;8BI!4=ExLd`Q8g2A8)6j~l6jtz(*)0V;9}x_WW>`^z z+-L+PJ4IuV#UadGVOSCna(00`7o;m3rppzJt}>+B8bwzxOqU%NT{x5YVVEu-0=h6u zsst=LN|9WL2su!$5HSG-1-4uP3Rl!D0v=If?1K$)ff5w#b|1z$cTHf;iawNPML%k@ zq8}DGhM>y0A2uKbYF12yHY;E%7(hM5^I-RdGJzTrkdhQ@>w)<*V*p~-7o4HpKojn7 zO&A#5LFdrPGeBA^iA<&p42XUjKgii&PjH(tf|h(hRuF=`2w{O&rGmA3g8a)?2A<3U zSs)DZm@sH|g!z&D09suzQDEt^8W`AY^O}2vN7{GVnvE63^IS``z8xu$qXjlqtF~m;RT4qqX z0CoN#3wS|1Wch0F$^=mIMaV;}W6fa(^~ceLxosFhgEGRPi1deAQUQ)hP+t+E8r;GK zyNb0EECp&cL8L(5fvgw?`-wG!8Psoq$RTM<2Wta$6)>b)!BU|18AJ-yN(B1|Vl3EN zP7X#;xX(9dU=Rio46GaltPBj`gv5Cflyr81q(B4%E5`wI1_pkRJVY-GBS-Kt$SPr0usRXYDbS)&zp#RIiisoX6h|1&z#sv24p^C_CN@^cW3=1sR3d9VDhZNrDVkWMwcEW)f#$ zP%?osl)(%M1_l*wMvzjFDpd%Rfk6!<$-toA*~G{w$Y=;!k=E73$iO5q(Mf`VK@%nn z(xcVc#K-_qqYbh|hMR#w2h8AQV9=FiG!zbE3>A;yjs(Y@9yepCI0J(|viLS9utyE_ z80{s&zUKz{9^@vt^9`Z?=Jo`8!U(Pu98f4qjS=Am@~;V0Co4p!DI%CavSx@N1aZx| zpdre@U;*(X$cL85k%D5E6_RNZ3=Gytrb#d`*uYE^WMp8l1$i7~njO@AP_NiS^+34} zP!pkCMx(};{y={#U4l%$UG6X|eaEg%uc2^%<2;{C{EbbykFL5@&t%5Qb!6yMjIS`7GAsfO#kRW%3 zU~w1d(h7tsP^SY^FL5@Ym;yEkc2P21hKXS!Mv?|OEEJ2wFf?OVh|New1`N&Elwmgz z?pP>;ks%Dqf>TTk6Tz(%xBvralmBPNFf87{&02Tusw}>H(BEZBj5xkKIS&)eV)b2(WVPL?f z4pjwM4eT@^xD*pZKZY11Lo!?*%3xxcNUk!d32+K)sgIFsh*QPH&U1p4ER2=}6T?LC$}c3dK;mV($=au+p)Kvp1Q zETuR#g^;ZRvDp|tfhY`2YjJc7X>A`a^9QRtuvTaojU;r}V<{4u7~0WQFb$df5no^F?C_IRETIBF)@Jd9Yi&YnPK7%EbSC5f~fjH z$BJU4LM-hdqI9K@s|t%o3?XKQHV%yXf{_739i|&F27Z_rCZgX=$H2tUk0FL79EjD5 zU0or%<3Ozo3~RADg%b0K_6BjzBhol@uVQWbf+kT=6oT55L=KV>t(Sa-#JQO`RVdyB z4>n=6;IZU=P!=6tq@{VVI7kr)-((YaF~Xnj%*7U88FPk3^0tQ71qW8nX0hWrqnc_0<$pM zGFZ$a()pNyiZOAFW#|Z$qA}-^v9txS=%uDA+Pee04Va;ZF?Wrn)eAC2R1R{LIa~Mg3Tx_!=u=g zVG|=#>tIoa9%xuwu~?eU7(!SFd9j#=RUM`)uq3mI;G-;%l`=7OB6GoP>|(^}1si}w zFfxFy{6G=_jYyLzgklN<0|PU|M9eN7g@WjIVCyDhDPNfxI_fdH-B{FNPwp6{ACb1A zI~GgZh&UlkgUE~`;-VYVI*hc6HH{N5h-m{xtC5+ZwGJc7unJ-thT&W+!3?UwFq0=1 zg_y=;84ti{*@2A5HsXMx5bKZthAK=)U=&YG3=<>Jl`%2&V~AlXv9M{SgR%m2=Yr;A z2C;iF!ysA28(VoVEw5+t^6I+lJlhF;=q7*z#}8SG&VlZDY(``B2<5-{3x zST&NV3glF5lP&ai2XTI)#I?Bek{NJV987`@SS-a5!etzBQA4D0u*3+Xu?!(%5dt}l zsHrd}EX%Zs)=acQY_?G1YN9QsP~l+IP7^o5QWuQIGL{6gm&lU45Mbnk|VL2g+(LA{5Dpzuyi;vN;j-FVyI$f z=!wASRb#aiLo0C>5T^SX_b4I3kt7TnVGGtQsL(2xcaX#$pgm3Pxj5 zGAaZM9CRA%L>4hye#q8{=>m))4Qv}-7#YY_#>_C$1A55_!fs}U3e4d%EOua3hcE`h z!j^ZiiD4;vu_+@~3}QKgBvv1ms3TS@HgyOGKv+x+6EV7A*hYl0tHY+3x?&JlB1kMf zRfHsjg*9PdS-npD2rpKZ6j=jtDS{+&9t}&;h%J(_C}U=5!!~JvrOL(_ZzkRbMl7{4 zmg*jhr5Hjuf*iwfSiFiwh)6FGsSFWq5EeFV*u;pAWDH*p1Jkg0o;V>2{Ekg4v0{*@ zMUccf7NH)(!m0~PmcWQ{h;{^tWqyx?;WJ|>7Xu6C#!xJZ5hg)cSo%Cn48<6y2|yGh zNMiki(K|pG0byY=2qJ+Xu{3D0=)$TB!+PRWA?${*7#SiV3k*bwCi5=;I7X~bM)j?e;OVVN%kX~dkQgeXUl zSi=ot0ReHUKsI7q27o0Ul4%3N-4GU*fX1>66yz?Zxl zo`$fnBq*%gny^fHV=N5>g+FFWB-=RRoCfg*g2d8u1G$UH`C5!Q5xVFl+7j#v5uS&z zuuS7&8D#*Og>60(%cwGzRpl6}AXXzt>@7cpJd}l18SIpQs2cFrQ;eZ_CI%vv6(fwn z!NL+?91O(_Q&>0-U~Bba2@VV)HimKrY`QrZT8K9nwM3A%MydQHR$VH!lf?=a26 zk}}Awyg>yEw&nqu#$h@YOUD*tUPb|(eWYEvZ&rQ`Y zNX@BC1k0u7rR1a*7snSDBqpcoC+4LTzCx`=Okw&X66;^Cngpp zXPBAj=49rTR_MZ1n&?^T7Zjx?m1gFY=tHC`EX?A~O!RXyll0S*ld!SE40;C4YI@AY5zM>_%%Td+;(89udJ*r{6_^DSl&7{ZXXt^HYUnvC$}_)b z&|}W>V(zamVgAUVz}#1_z$~4{%=HB1IA(z+=Kb}0%!e5inD^G}DW%IZ3+plSHl@oO zW4Q4x$jwYFjEZauZ2Gns(sS4u)tM_5BA7WNKqi9}G50enFn_K~V=lLm1BK%Oh6%Ujm|rt0F!Sm$7b}3Gm`8#67lQ(GTfG8vi2^g2r>6vV9mrw7>lBz<85Nj+*C{A5 zS1K^KG3qh5)!Ur2Rd!~6TdTlaW>d;Mg-MV3d~F)@HYPph>$PdjE149Sr`73|GT&p= zV}4Yd#ypQnfq6$AX0n{i$asLcN+FAxTR{Aj91BEW5qCAMN z$OevE1vWds3`1s48)jZTZ;&|i97crV=mWY-dNjI$~=ux zfq55Wi6Zm-S}$$pR}6Y4rOYoF6yz1)GL%SmnkqGV$iddSJVd=4$PMs z(tJvpvlU92FV;bm;59}Cm@k+WY>diOnK{7@VfF##2qrcV$*91llCI>#yo61U`Cg?0 z^CC6{CFb{)dfv=}dbZ5->lMJE!5j$k3tR{Dw0f^-B}h8|%&x$EzfzBRF`EMO-AX-G zMR{gzke?YL-UpR#Iffv=aVmfdDCROf-$>?}paeL*UV*upu>_P*zq0Dtf~DC&X{fyl zl+|Pun1xE1H`M9*lrqaH*fKw^(_`MpG@*?7L9HJ1BZhg*3mElEnf(`^rU6Qz~Va zSCCcqQDqj?Qzl(|TuRIQZRSAkj3 ztCZPPfmsYQ=`UtsToa%wtE{ZfT%yO!qp(0x)xe}w%~oEYxs_D`k_PqIz^;*F{#T{I zEM8*ET%iXl62jJ$GFRx8GUwnll2H%iJZ0avl{C8@cf`aLy1FF&=S0AYBjpJ$kBP_Uy$`Y{w|rst)mC?sbj7C|IH;h3M4m6}|_kd&Vf_6FFJ)Qb3mqRhM!hzr0% zo{px_P$|trHYYwlGq1$Z$U*@o3^5s;GKxzW(o^$NixP97-b6%(t6!+EYmj4zs|!Ox zNn$!glfQF_Ye+oQ8d#771v^55y%`qRT2X3hJUAVt7FfhAkGsR6FO5Y?d6X_U#3R8U${43`BZ#xP@uf|UID#FQk68$u!j zT;svs$jmLs0Oz)%)Wnih25^3Xr2}xrfw?O*7?uyf`oO`IoSy^Ax)3v6BSKt*{2-wS z%A+uiF2Rlr$wry+;LvvRgr^Qza27M9=9T8A7A1m`0ZdbHun$8{C!^WR_%>rN(C(B|{A@E&*!+cb=eOl$RV|oLH91kW`u$pPQNsi;sfRlK9l3 zqI_uK0m%oDgiw&2lUQ5~HxUwD-~yK+3G5iGsUpbH&jsR4SagCbrKHUKcu0Z;*$hc5 z;MxIRvZ7@>kTP(2m6(*13N31iv%v*%L2^bx3Dm)<6=26g!UGn(pm1RTMQmv<)c25T zw>Y)1G&L_d6)u=*l){jomR6iv0xIgkhJ*CR2RMgBFo2w#nU|IiDu5ulE-x`R6`qs) zor41yO7k+yQj3b=g(1uZ0p8BR=5VDTo&`fvdTL2A1Ef5NFG@{I&M(a?i7#PD$}NEU z4{Wz%XavabU^X~cf~xA&yySSOLlHGKSQg}Vn61H)!HA3ntEpgJdZbYeeWc!eQEEw1 zB`9$f=jTDf1ycNg+)$L7mRbY~uwsY|$R%KRA?Iv{;_O67N&!nDmyd{~364ofvPi9n z2L*d(US?hzxMhQsaZplJ3Mkt1D;c1sgFNXM>I-Tu1w)(zjeCZi)V%bP42bElRusd#tt zV<^rB)q^0HgW7nmVF3(@r4^|~MGW~Mad3F07-d2dZ*qQaQf6K%133G~2ZuO1doyI_ zWkOq8kbDO-3DjVKH~`i*07V!6v8rGfAJ{0AenC+_sDYplN*hV}pjKgVagIKmg-AsH zPF}9gAq-`i#hHj~2y+FfS(p@`Sd`9yk}+KU+&%qVLHVyBzks0xxiED0_j6+?2CD|; zuHq7g;*9*F5|nDi)tMnF6W)j_&IV^aaEl34RDj|a5^n{`B^4lFgF_Li7IF6rRd7}? z(X&)AGB7kXFf=k&&?qQMElSNvO)O5;RM5>$%FNHpOjgj%&B-h&$w}2s%}dEl%u~?K zO-#zP%_%T5QP53S(DgS`&`m4IOjgiM16AH7nfZCT#i_|4x>!Lstu(JZGcQHA1YA5R z=%#^7bKQcX{1R}}RkygL2-MQlP0P>CEYVFXO3Y2wEyxEo6pO&Bi!zf-bQ5zj6N@wR z(!u5xmuHqFXXxhS=NEu1$jr;h%uChH$;{0xu{Aa@P|!^SM?+>#W=W-OMrKM%Y96Rz zl$pYio0^+kPzebZa6&JJ)>n|U4G$$y;DNdzpem37Ub7XYroqaV;_Uc>(&7w=NuZ7j zD1AekjSw+V&IJcJG+}^E0toR zGEPiMfmDBxOb)gmRE>g7gqR)=Dq%AdO`#qu12q~l^FVbpgS)e{m4b%5U#KST^adT2 zhTZDNSQW&;QX$7E%_GkMy1)u_hbu@4c)HP%Zvvy^WT7d7&eQp3@Vd?9nZ-SuYaZuR zfoc3q4qR6*J6^l$c;mX`t(%VbZaeZZIC3*ExG*p<#DEN7fKE|5@@-&roGdm))P1_p z48fTKv-n-6icAxp%{Pa49uHGFiYa$)JKlqu19BheN^6i&u&GVZT>TD^00RR9czV;3 zFTiaw*A&jF9MjmRv&~?g$uf`G3t{5Dn_$CIxGrCDyn4;?`VGgM5aYcuM8NJA0S&w} zFff3pN*(zwK-}#-j|b#nxbs0SXYxSUa_goelDonFhnfSPV#R6>$P7?WgyAxVL4|>V zVF}b6@YJj$Uw}Kvuk$#9L7E^QVPLRfU|=`{RR^B3b>v&X=romY8n5#_j+tDuINc@- zOyQr-GlQEc8>9~rW8ko1uwYvpM&#cj(P0fT=y1jRNoqw2 zgC02T>m?NzGw2ni<|OKYMD@Vg1gX1@Aq8pI>m}#s6_*qg(ClXmdiZC?Dc(gp(0!KqUf_X0Tu2jZeh52u>w%JK(_qHXCjP#C)&= zK%r`=X94wlN@`MRdOWC&$e;&dCnhBorIw*c=j11&@Dqy?^U_mcp%2l9MF>>*!%QtM zDPqt|&d<$F%`0Kh%gZlG)pPd?)dg2MP_t7r;=y$cG`r%YKuMQ{;p2a73YbAtJ6I%` z8K8*{O^z8f<%1>$;xdCKfIti+%mZd)Tq4TA4_%peS+P%uP2rZ{MoArq2%aG43!$&BP4s1P({5blJDgJ@<3aS(-qA@*X5*MaAB z1rQ+wO88Kn%nXuH7J`C=8>To&1v7&bh{C|k3^EvEAOU6uSrCPRnHfN-6hoMSnL!a# z5F9VcIK)+Ph^u3WL;R(|Ac7$S%3m5-L_y+e7~*XV42ZBqlAVD=d<72iZ8*e_;}E}v zL;N8F1A`D!z6RBeAZNV;i8CScDY)Ijz`*behdH2v5Hq(hFbFeZ_pcHTaU&e!4miXE zafm145HG?Z-he}VDkB4f5EG)@0Jn`87#Nn}P`?w0_$3_TPjQI!vzsd9avKgd89JEG_eResty`QhK%xnheHr! zfXM2>Bb!*}M4+8bND~QpDhk@p19#uB4ex?=fVzp`5j%`A281-I!v!}0HjD+9M(U9v z^TAev1;EDR9Qy$)L2g!J=>md-6cj+{b5U>!@PGt(1RgAeZ3+V{fjqnpk0XRrVeY^b z0l6P+0%+6^JZOt>IH)ZO>ZRuwfCgCdN^?OJxX%t6?@TR+3}l1V!|ep=fwgqZ85tP# zKFhI&jlv)c~zlt(4pwwnOP;rns22i~qN&qU3 zZf^lp98~@yn-41IK>El^0lDHwrgHQ~suhHWRR?ne_+aIVtkom~&v_T3VBd8h>m4GB}3=)9iEl_cE zf9-*aqxj_$7?P;qpB=|IB=-90u?adh{%K*iDBL#_DgfSQl) zo*7VaboVTPile({1ymf}oE=bcbaReC#nH_|>WoKLNwVjv1O<^pmj za(;)ULy$X>#bN0XWG`}hdw^uGHOOEnrdIliKniEj7!cHWh6JcMy8CmW;^^+LfQqBL zAGv(6g&EGkz|aF#k8b`Ps5rX$OQ7QD=5K(CqnmR8DvoZ>38*-_Ik0{;NE|ud?;xqS zLvsHYByoEraSmn(2i-jqP;qqkC_u$Q_9DkSsrA|hh_wtLb6BBl5QUu1O+f-sY=D%m zkn;tooB}BU(a7~Fsr6R}lKIH~dVwSk^CQSUQ2Q4|qlX);oOqh>j$oHS2;}ya6GRA18X)B(ppHR2?_ile*p1XLW|ofn|u z=;l0tildwJ0xFJf&IcrMuzfNstns5rVg zgvPKmlIk0j7 z-5l6jGIVopK+Q)t2R1H*ZVqf*9o-z*xH?Fjm~;YLkBA=5p!IQ}s0W#Y+)hKTN07~j zHq#iG7#YB8>p*%z7*=0^#5EZh7;?Emq6`eMnOm56EwtSLTL}UaPlrzJ!_o#w9JK18 z0oo6Nt&9MP!}?wz8+1SfXpImf0|UrjSUC=JGe|v195!YR8^eT&!}?3GHXBU*I@F`E zItV5n11&FLr_jK}7eU3N(A*;p4TnTD@z2lz%S9943C*mqc{-T+Q=#fx(bPYKs_#J) zmxs0|CZmbN>ZAo|;y%!FXE~alMugeJy<@5sjr2` z*LgJcY|wlGYmdRy--W7s38i7;TcPHBLlZZH#yc}K{9x+cq5gukuVCUL(Dbi~rala6 zz8RXh9n>6WH1S)|@CiT@w}gtvqKQw3#$y(mI4ob3qlwRfhR;Ma@f}d{)o9{TQ2q`m z4fC%fG+vIPi64Q6+hsKISZFxhLlf_Tn)3=x99BMjLlcLU1Da6tVD2%4^7WxKOgsVV zFHH1TK9cv*`keimx}W;AhrD1RrEhWXbMYR-N%aoD)$ zQ8aPT`chEVJB=pJ2~E!z(Zr=eiWwLfuA_;=+8KAz#C4(N(PK36b5QVE+ zpoxn?-J=AJH<;I5hFYQ2!R9i5o$~xeiTS6>3g1 znm7+M|MsDYZ-d6~e5gK{zpS9)wi-=53~KKVG;vrtc?nH?F4X+{XyS*U;&0Hzy`lN# z7n-;hG#uEV`e5!n0TmZU6OV$nmvqs@b)oLJLKFW4^{+dc_%^6JLeRuLpy8N=CT<5c zKMzej6k5&{qlv@jHD{uU!^UftqKVIdrq7LN;;{01FPiv6sJ$oA#0{bDzltVq01f|# zXyPxS=DbA{w}A40LTOmMyo827D>U7~#1BE+MS^JJu=a;6nz$U4uL-4L=G=nXXNo4? z1I=HKXyV3DdwtQw4?^QB5>31rnyw1b#5CkZaizW_hpL0Ru z6K0Mh)cq1@;`gEEIHHL&L(^>#nmBCUD-%sz9O~aGXyRVbbiM^m{5jO!|IoxapnO<< zg1J8r8Vz=H1VrYdtvo3%>2(#cf!&yOgsS^@3zo% z4HG{MRqur+ej8fuhogyagob|#n)p$uco&+uG&EkOp^1Njn!gxLJP;c18_>j)q2hbd z#9{G$3QhbnG@o8a6Nk;8JwX$n2#uGIXyQ@Oc$9_u4;F4`py8&8CawTA#|%vz<}YV7 zaaes3fF|At&3CbA;+oKS%t90Qhq|*IO&qkJ0%TMRn)phnITO*ucR~5Ec!v3RB`o}* z@-T5zsQ7aTSMJ{9Zei&?|U?H z*!(CPbdnNucqueWz#**&6$iN=HWmt!&_WZB2MIDTFc_nWe}{_OpozoAn_SVv)uH8* zADZ}nsCYPDzo1o&b z@Py67ora3T!t)SR{S`Fvr%>^`XyP2ubn*;MTpKF>9!=a2D*gjaybvnR2%X@8xo0X= zoC{5SCsbS*P5eGoTn0^?8Jgc!(ZtoE;#yE~^zey96W4&odm)lI^89`;k~k~pByo^A zu>H!5pyHr-0nH<9hvxT_XyUMZ{R}D&awjy1!6CsY1g60ACZPQ51(oDN6Wo(vUFgNnoa3!AsdgNlQ~ z4K$Af@jU}W9g;XG9Ckp>X~!Wx0f+cZG;tkhJ-7%>d?{3XHJZ2xw4T_4Cf*Dc--{;B z4K1&ap^3xXe;$YU4K(q|P;>4gi6e*4GbC|P_((&`3x4PpY*2WD!~>z?B2aNy_`|mP zyP%1~<{it>#9`yobx?7T`5^beE`;bq5(n7}D<7w$i5o!k?HnX=WOJ4xiG$3kgsR^F z6^FSWHcz|*Dh_iGY<!IdcLKFW56~B!pZUD`n50Jz`?u42D5=k6nei~H$ zJE%C!ouK`{pfoK6U1SUshs{rGqlv@D+ntfbk;|WWByms?09!ZHiY5-558jF<4lCa- zB8elL{{~4MWIk*^2?ul{7UX_p^-4(MAoZ|)BX&sQ$m%1J#6jv|`$^KF;-Gj0m7lP+ zS%pw>kiF0%02G`Ilc3@t^`P+I0uBEeNa7%KVB@Weq2eHOpjj7e&Mv4p$Q+P*SbzQ~ zk~qlxS5Wg$A&G<3TSD8Zd^S=TkIs8EE*vLJ|j=1DoIciX;v)M+eIP1*Ku` ztbw+lS;fHKfY%o`P`(J12B`;`;{)BIEQurzvbPi(7%E8OAoUE;g#emJ;vn_YL6sf@ z1A_^YI7t00sCpMP@o!M^5H#@#&O!}ehYqlv@XGi7Mv2cYR~5|TJ_{#t`14vN|*Q1#c)#9`&kCnRxXb9kWf26I1b zJ%bjSIBZ{#8tmfoI0^XU{canN}Spd_>aO&r!f zJcuS<4e|u&>?x=?$UV@i9b^o{W2iXHURXKy4oMu8&Zk1t`Cl~gFHmtN7!6$~a}jDU zFOoROoPW@X6B#t|+t8y=VEGv29+3Jn=+P&JNa{iP5!NrZK@tb4Uk+VB>Vqc!2O8Kh zXyQiDqf&Cv#2-T!E)^n)gY1Qsw+(3Gu<&1tCJrlaZ=i|8%Kyhm;vn~b1Q84j44=`& z)j*911_p-zP;pp1%0Tle2Q*wk;RaF)D`y0e#6j+djfW^e#bM^a)-~B6i9>@7oKC`! z#6jr?mamJD#F5qaAc=$2!`4CGLlZZErt@z|;>hNRLKls}+zHz+BnuUX`4`qM)kP8q z1?3u0U@$N+n4yUqLl=43qlx!J#a)oZ!A3yC*%wJ1Wd3KU`ZP501)#uYU|`6Hio@K$ z0qWm!s5s31u>GIyNa7&#Uqa29fF>RRors!>Bo1;X%$#{h;vjQ&LDesXio@Jv03CPw zfhG>y&m#iOmmu}X@uH6;4vJsc{v3BCab)!=Na7&%u=eLpG;vrx_ykQHwhsFvnmBAf zn}{4ZnSyR50iO*98_zdD5=VBA7m_&0J+Ss_8j?7&`UWI%kb2m9wnb>-uz8<-NaD!m z+&~fsnNtG||1U`5$m;o^V;Y)aZtKq*9I$R=tdJygNn~W6MqdAUx6n6T^C}`b~N$z&_gNq zAc=$A4=ewVA&G!680hl(2_iG%E&2Q7cBk;FmviagsHP){gUpAmws=f?K9HbsrkF=nPJ3~8LlhDKkq3xwPNa7&#)1jOD z*CUC8%zprFZ|_7B2dNi_Hmvs{iG$SZK*v!}Ac=$2TS3)dMH7Dq6~Bcf4l)NekMIde z9AwUF=w{jPNa7&%{?KtzMrbC4rH2X71QiG$RuLi;cB zNa7&%{Llr(+E8&={)O$kHi3$R+ygR)8)}XNa7&%#?W-assy$M-v7N1RnG+#huI4&&vntn=RoUmZ#3~GQ1Jw)ILMu# z@Pv)4WFm=!+yire36eO-{Y=o!4V6gZAoVc!w;+jw)VDy@_d>;C?*9Vy?^LKb%ssI4 zAeJJDgUoS;ZkAeyCVm_$z8OgzxdyvFI=BPtA?Hz`S!`xE?b)CkUOQJ18SLQ;`UJSJg7L#UYI$}P;r$|OJ;;{8pchJOP>5u_>geEL}VB-maXyUMa zT%~B@H=yOuJT!3$XuIVVnz##8oE4Oaq2UG!A852N$Rmk^!Y2Z%-WE+9){YHA5(k+B z?H)12qlrVSQHDGuagg~7pyqcWiG$36xn~KII7mJ0ypsJ$;>hZ6B8h|4!|KPcNaD!q z`JoPmg+FZlr7oJd2DJY2L=s0fCmBf`WN!{seLa#mvig}w;vn@~pz61yiSL1mpGOlv z0~Lq$M`7-VwW9<?pMfNf ztbP-cI7odCv^?LBCO!iyehWz)*_{J*NU zPe8?C{)OFp@c>O6wm$p^n)n4s@H6m24}*h+&jhG@#E`^6?y-jUul10`LH<1j^{+Wp z9OfPmX#2+=Dh@OM0n~hdByo^AHbD>vMWBfnLB(T{#6jT(Gbas69AwUJsQO%}ILtk; zeKZTv#6kOpK{l^L6Nk-bok9{vF0Y;-iG%Xv3uwCwcK9sFUS#!B(D5XYI7mJ0JV7HQ zab)$rNa7&%Q$UVnU|?uR7l+!r7)c!2oV`fmAah{z-8YfMk=1`j5(lY=c;ok~qkGSbjf_B#x~9A(A*q zeE~Gw{-cS*&fVjMZnOraTTuGn3vE|Opo#B;hJ!Lx927p#A#HGsxkAN3=77>CJ9L9} z2%7jNsCXojILKbud{zpQILMq>=)ot&XyU)2;>~E{%R<4aRf6A4U^b4~MwtEt+^URQwZ?ILQ1Z(DIW5I?f6U zXV|(sL8v$=oI&M-0<=A^3l)c{zX7q9!4oPDQV(+H8K}KMXyWgo;^9znbaQf`;xKcB zK$j3PFfbHD#bN4U_4{5laag(i22C91FAnGibC5a6=~)R$9F*Q*^DlNt;>hYFki`1XyQ#! z@d`BY-B9s1H1RJ`@##=;n0uhzD25AY;;{DNJE%C!oypMf`~?*UnFCsy16>ZrzyUo3 z7N&kWG#vEM#517fUId!>d1yZ_7EK&<{{krB%F)CVpz9B(po!mtiZ4YI7lxXD8clp2 zG@sr@6W<6OH)e(&Vhi(E5VYMTk0zc26}Lwd-vn(h#iNNYg@#WdnmFuSvsyIqa%lT- zGMe}#sQWjgi918Z&!LIK_A@_46Q2fk=MOY-1!%krL+6WN;UEgFcZ|`*o1x+Fg(jW` zb$=?FcpWqxy3oYGLc@OArJtN=?#9{kpVB)awgzXc8i9>^p0d&s~hz%1@0dW`@ z7-0Lw(Z!vh^({;scE5!$4sqDID=_u2@C4oe1F{NT9Cq#sOxy?Rf7rPz=;EOJe~`_A zg=Z(4dtl-d(Zpf%4zTn5VdlfcVe467;;`_9?XQA~gWLeZ$I;BM1_?4SFkHeRehW<; zHjeQOhxj`*aaef5)`h{`0~3dxj|UTnwX6A|^)0%%IGQ*tJ*nal*F_VDg|j6NaoB!n zn7zSJ|G?G(p^Jy0nFBlD5H`*PQx6l*KvNHkFIfK%rXCtC41H+oVevH+hxkG?aaeq< z#UZ{GO&k_4hjECXMiYm{*EJmCuybQz{({BV8#MJWaoD*gF!iwbf?XMjF3tgM_rb(r z@gQwOdJ+pp=jp7;tO_uI7~fE9Cm&QAAmhov9berR;{ zZ*i!H?UP1VF97Wy!^C0c!}d?Z#9{6?#-SdzuNqxF>>Lr8ILv(berrYsa8U#^zY>S} zuzlDtb71OW=M}-kVdlg3XT!u{>JQ>DAGU8BUHx+$>S6o2(baQ92MA!|F!#XrdBenE z?$O7g9=0zTq#mjST;#&WlVIYo@w8Z|B6RUoG;!EEp8_1>6=>qH`@Pz5i1(q1!}bl$ z#38;AO&qpA5w_nN=6chlg?uYFQhl#`7uL&K;f{DZ2Z-PVI22C7xpQ1aOILtl%XyP#U!1klV?1j0f z2u(e7I-Q{whj=TRIL!U9^N3*P!_IM@gRUN0FRVZlhwVp$o&OIr2bO+d>n~v9F!x_U zGY96L`#8j(qlrsE>z7YB#DAfQ!@`*ZI=%>V4@_JDO&k{fu>Jio^)PoDqp63@cf-yh zgQ6Nl~J+=?b{5B2W>9O5U?#9`x5SJ1>^{=I`H4qJct0! zb{+$I_y|MS9l*q4_u(m{iNpM>jV2CT2M$}m05b>X9@xGCm^keILfAPFFmYIXWuuu7 zb59kTILtjwXyP#UOhglhxo0MtILtk;^BBuK=1jEWg0cy@08Qg}(`!dYFG5(Zpf?^+Xeg z`8Nzr9OmCRG;x@Jv(dz1{w+omhxxYwO&sRm4m5F?e_`i&p!;_%ntIqhB0JE;Vg5aU zCJwuY_%xb0%)gh>#9{uuhb9j5?=v)Un14T_iNpN+6HOfEU)VV%=>C;~&V#|kVezYu zCJytjKAJczeyz~NVg7YO6NmZN7fl@I-%vDhn15mCgTdSh^KS;4dYFG<=dZxj!_sp% zntGUjVe^5Y`99FnduPz1NCpOm*=Xuv;jkD@92O4ipyKG}z|JLuxd#?LyP@h~;;`^J z1{Fs)=QLCtrXChfzeIk59=VCKNWSr~dg z4NM#s&T>$3m^nVsa8`zj!_>pVSsP6p7S3i+addO6q2e%eVBzeHCJqZ{Kd3mmIl)kI zm^rX;jz$xQg>xEI9NnC3s5s0VSU4A>iNnIV4l0gr4(z-im^rX;o()wG6NiQKGN?Gr z94lxz!_J+9sfUI0W~h3YI4qp^LB-L{ISdttsfUI0X*6+IIA4Q`qnmRZDh@LT7S4~+ z#9`t54l0gr&S$7N%p6!a|3(vsg){7YJaltl=On?*f$cX}25qv1jyHn3T(ETldT8RX za4jI?eK0iahUrjqlv@f zaUPmDEWVbZiNoS+BbqoYUUs61!{P;YE);tB+(A{I5is>I|MH@V!~83XCJu8y?EEU2Ik5P(KvNIPU(RUaF!y+)iNo9zh9(YkPaK*! z%ssI4v0(0jtq*8KQx7W#deFpS@i+xd92SqTbF*OP!_M8>j;0>g4?2WH{1lovtRHj@ zO&sRmduZY?cf!u=LU#`n^n50mI4t~m(Zpfqi=v6c%!i%(1v3ZcUkfz#F!PxCrH#9`}RlyQh_qlv!&yOMzcb}k~!URe2Tho&ADkDh4au=NSBa}i9J(x;VK)x(!)W5Lc!8aN z2y+ii{5qQY9H>Jd;Shg?CjJAe{u>VQe`w;cc;tdEjDxucCN6{~4!hq@4u`lJnmFu! zDI*->R%qg|bwO@8#Qo63Vd*Lghj$ZD``Kd^ZJ$_#8BG*tp+v9OCQI#9{emFAnjeXyUN+d;y2}4K#6B zdVY*U{56_5EWLfhA^s0d9G2cVq31xt(hp2r5KSDG-eBiP!qh{fg~0?(JuJQ1;}Ca8 z6NlBmK{&*t(8OWsEdz&m0h%~0y;b87Z$=Y`)z^JE#HXQ&!_wOl9O7%x#9{UOb{yjS z(Zpft?JN#)*mhOq>r*9G0$N=Y_)D z2@_XDQx8jTu=7V@>S5^(b}lGP9G2ev(aeE~hogzZ<^hv%h-aaR!_r#?4srDJLSgBx z8%;e-d@`E&2dKy9;SfhZM--OcwxFqpiSI!ZH-Oe($8m_CM-zvox4SsRpQ4Gw($xnX z;y=*DVd;$-x;Y#ck1%m=G;vtE62l=bhb9h7SLo-X!o&^H)Wgyn>|9%zd!W(65Q3&2 zmagJ)h^M28!_rSF4)IzvaacO(z#%>XT^t&}^KghSLlcLE^F|!vJJG~p;eQ;5_<1yO zSUBIpA^r$W92WktbAr*sp9AeYRp>EY3?gXauyB?^6NiPT2D&&j+zimfVf`i>9O5o$ z;;{adKMwJ5H1Ro5dy~+_Ve{!(XyUN*X3NmTVewLjCjJ51o`jvF3=2=#eO`;u)Wg^P zqKU)$^;^-zVe_5`(8OWuwojmm!}cj(#vy(iO&pdUVCOx<+z-o-=;!Og(gPQ0^Dt67 z8I~S|(8OWsK@MFU8ZT;S;;{T;ghSj4O&k`#u4v-0`1M5-hsAFsnm8ltbTcbL;MAr zIBXr!7aZb$(8N`s`Go`N99>X93nngrCJsxVuycuF;RzepGC@;s0Zq8D^TlE6uRzmV zIGTC}sC!`Nh{M#w&LOWtQx9_|>^x?Wdg#zK*yg!N>OtbL@w62<#5bUchd|xA8;AH| zG;vsbUBn@N6HOd;9x3eHXmt1gK~rA>_7wvIJ9NV#Og&7TA59!KULl1;TnSAa=6(Yl z;udJ)u=x>Z9OB++;;{YQ=;tTH#N*J^!_H^O#35dYCT;;uKQ%bSThPQ|<$OO5@#$#d z2cYIJ!Xds2P5cH_{Z<^}d(p%TpyQ1vaEM<(6NjAxc^ilLV>EGCdV`%i4og4KWW~S+ z+T0GUM?m=nmaYVGh)bf0!}^aZIK*|(#9`^p3WvB8nmBBJ3U=-^%>6L&P&D0cR_GYWzf_&K=X?_4srBzxncLw zTcN3ki94Z*!}cQu;1G{M6NjB2n~Xy|8%=x$bl*-T4)I1b@g-38JvhXtpoyP=s$Yad zd=;8FY=6;K9O8S?#9`$L?7jk6euR}LkI~e_%9D3E#J{15!|oGjgdUawGan|-i6#!4 zFF-&4940P0Ek{dtmv3ABVU&nm8=KDB%#-LKBDOBMThj z4rt=Ae1v@O0LYy%@nAIdu>2K=Lp%*l9F|`Safrk2BY=e)EWg0+BS07LK{E%IU#8;_ zpN}RE%P*^Nh;Kp@hvlOKIK)q&iNnTAFXIrujV2DuU(axeze5v;<*%PO#2G=G3XsMh z4nXr44-Rn=G;vsa26m4bEc{{V*$PcPEIqs85cfqBho$ET9O4OR;;{6bheNy!O&peP z8*zwtqKU)O^AsH7bI`3KO0@%3opu=KnOhxj2haaejji$nY>nm8;yKfodW0!@uO(su>20YpAZ%fuyr-B(bU88`*$>P*!^q&(Zpf*26BN8-$X8#paqH$nmFvd zP&pjpYG~rH^@@gQ;;?eV5=|V|Zg<5Y?u#Z4I|m~IO&qo^JpoM|mLGF)h?k&=!}4Q2 z4)Jz0ao9ZRWE|qN(ZpfrUM)it7lG!Zb!g%;Q1P8;;;?g}52A^~(*IdBaacOPiY6`q zJy!*GFC}_<`-!F=HXhCjJqQw}9wyFwQ#Gjyv!^+S1IK;oBiNnfIX3$~NNaYnwoEuFXmY!kv zslw7HY~86IntIqcswJ8@?EDi)G;vsZ^Fb50f#%Z?G;wdJIP(2Cpn4W2o{pv-mVQdm z#9{aH)S!vO(nC9%I4qp|(Zpfl2D>*E7CsB0?%aZ=9(JE8^8Gs?_rt`Gqp64WA1~t& zzl|mibN_QRaag*2k0uUFpTE(>Vd;<=df+q6U$AgMzV`>@epon&qp63bAK3k|Fmqt{ z(psabhq>PkO&sQaKQwWe`y>gu~d!Sps zz&##*=si|2ap-U~gA@*N^!vGbz@{)T=%T5IiJPK{!_FOY#v$&FCJwuw3wGZ!%$-nc z8S>E7!_G;r#39~@CJx)D+=D}W3Ys{~{flsjW85zW&0ky5)WgpA+>0j80_~5Sz#)DC zO&k_JuzRP`!{;-a`T}Uc{lg*72ECsPW)AFrG1&cO=;Bgn>S5udhC^HrO&qr0-x7zo zBbqpDzqT(9@lZ5z*nLb1IK(s1#9`+^mf#StK@*4FSJI9{ydO;*c5d}-9O8@7#9`}W z*WnP~h9>?UIzDy?hxjQp@iox$=Nb<2duZaY_U%g?;vdn(VddLj9OA4<_l1GVC0IQr zfJ0mYO&nJ5tKbmVK@;Bs&5!0d#O=|hj=iWI1e=c#^Df8Lld6>RbPZdyb4Vm zcD^m_o;X;3go*c}sW*V0gEspk_u=4674)LF8;w;eegazq7J5V}@iSwX| z!^#tJ9OCk5;;`~W3x_!Jy?!8jVdaS}ntGVHE1Ed0+z7xS9)TtfD^HSfh-agT!^)E~ z9O89o;vb;pNhc2RiD=@m@?kxiI5b-`Y)2D^l>>*+#9{gR6q-2fT%D^p#P6bs!}9M7 z9O56)#9`;C{Kg^9jC5}xD1Kr0gY%(@!}7Hln)r3-dKE<+;+kmUuya;TaERNWiPu2e z8(wJQuyP;>O&m7<9E(Fd6-^v=pF{zgIIJ9~Koh?JZO=605bs74hvoNaIK=0niNo$) zScyY?BbqpDd|(fnIIP`r1WkMov^+VFL;O0L_z|f3M>xb^p^3xFpC35H8KCze!s<;} z`NNGvTo_Fpb{~Ko4skU!aoBwTCOE`x(8OWom^%(}e>8De`4)vkJPA$Q1$qv9E}A&3 z+$%*Bhm~&)IK(^9#ABfCt7$mI=b?$ufvR7LCJwtlZX=pF?0oP&XyRX>8@i65iK{@% z+w(ZYucL{>?(cqzCJt){!tU9Gr5_)t`9ILq!^9bo?xO^iZ!u8y+-TwrP;p^2aoG9P zayZ1*(8OWqR=c2y!|DqkG;vscfqX9~$epnIA|6fseW*cMIK+$4#9{SC0}k;HG;!E` z;$$4+v(d!0q2>Q_9OCQI#9{Rd^8KM8|HA5*qiE`3^~(hu;y2L5VfDo`G;vsc@eWNK zcCPqO9O8^f_j`ie3G4szqKU)m3sE%jE71Bv0f)E-nmDY!FvB5^d@m}N72M#Lr%IK;Kl#5th-L<=0^4rt=AaYAo2 zaag}H7)>13uZ%+zhm8}ap^3x#n}ulNuy#cynmDYV*n%bw8^`NG6NmL5r{fTxk0uVw zzq`=HVf#l8p^3xVC+E<_VeOD>=;F}vv`1*-uzLIznmBBI-8VFGSUvI&O&pf*xU5mr z6--Kq6Ayr@e~%^( zOK-o>#9`@;$p)ekR!_mghZjv8mfl3s#95&Ag#wy5tR1Li zeukon!_rj(nmDXH$v_i_wTFw*#9`%3HJUiAe4BHG>vpSR*u2M zMbO0eK-DYa5Z6Q#KLAy4f+l_e+RnE@6MqdAk3O7{ z4)IPjaoD+bQ_#d=>3db1i$+ymO*X+{%=)pz}9;;{N_I+{2Ov>aHBCJw9DR-=i- z^80o)aaexek0uUl7oA2Eht*S;(Zpf()O|E@SiSQcO&nJ5d`1(8wex?YiNnHQ9C|P^ zEd3-v!$BTR99G_1p^0ySwu_w5#9{NrzBt4~(Zpf#n}j9~OFvm?;;{HFM-zv|Z#|kg zY+kYlO&k`#Q_#d=_0B>xaag>sL=%U#XSSe;!`df%(8OWs;Ut~fhO(&ZTA|WiNn^L+29a& zK@-n`n&Xcq4%^2XjwTLEKPhP9uy%3|nmDXIQ;sGM>(|tyiLZc`GhJxnu=FztO&pef z=HU=uh9G;vtJKpjmSR^IBPiNo46R%qg|aULf$aS>?#@)FQ`Eihn3qMXyUN;*aS3jSb4r0O&r$V*o-C)Yj5mF z6Nj}oj-!dg?mxPWL;NO8BnmDW+%f}&J zjwXHvYJL-%IIP_3LKBCz-=?97!^Q{Zp@~;O%fppu;;?z=jcDSqdU-FJIIP`u6iu85 zTE1OC6NlB~H_*g&pz0r^iPu2IU!#dnfr@`a6NmNt{-KGhK+7vm=zu4zy#y;K1<}M| z<)kbQaaA;N7pVCLXyUMP&jL+61*+Z!O&r#4^g$Dcjc-JtiNnS>641n9?aUlBaaeg( zf+h|tuO^_0n?Up33^Z|XsQ6+u@h#AFwHi%)H&px>nmDXqa}G_s1zP^x#3B9=O?*C7 z{Tnp#9B8@y1x*}QFYvpfmP@dED#g*nCqR@jDB%#-LKBCT!!|g?UC_i~^JVd9;;?%+ z($U0W>sO1=#HT>Rxe84j)-IZcCO!e$PMe1&4m;OkB@Xe8XyUV>=Ip^CegsV%Ru11s z6NjCf`W#JsG1Pn}H%LUl@-M8N#)T#hYcGkSiQj;h8?tEP51`^2IK&Om#9`%zHJUiA zJ>!ff4r|Z&p^3xV8)0bTu=YkGnmDZekclP^Yd^H0iNnID2TdH-ADoUud_J1^7HIga zK@)!i72kp;&H^pp_TvygjwTK(w=dxkzlA0a3;*Y6;;`_4k0uTa|6ge0u<&PcM@?62 zpydWH4slU5aaepQpozocO9M?DHvZ;}CJu`)Z!~dOe1)Nj!^S`3(8OWknTaM23!g$X z@g30ks=*=Nf+h|N&k1PaF#pa#6Mq05Z(NK+d^MUlEPRfmiNnI@JeoKxzu!g^hlS5$ zG;vt^d50C7}87 z5Sq9SRQwd0IBeYJDw;TKp7$=A_#3D>KhVS(pyCXksO1AYR9qTOyap<+j3y2%XYA3$ zVd~w{#9``_(ZqY8=4YdcFMx`d;SjGw6JG*V-;G0jGMYHdJsXh3p;!EY17-)BICQxY z!(klar_sb=_qAQaA$|`{9Cp6t4;y_1u_SA-Y*{xaWORU)zJ38A`Wp)H1P*e^(HvP zZP3KOK-GKU5D!8VXNUHWVsVJ4qKVIesxQDHUV$dQ0II$jhj=%dIBZ;Z8JajG)EOAo zp@~C}hh^A_L;N6`_zP(GoWUV}1x*|lo{w;dzd{p-xt|q!u`eiJgVG7i{k&-6u=FW` zLtFt(d@|G^9US5&XyUN+>3~Dr15F&3K7(eL^OK( z;Xo7bfGA@S#vv|^CJsvvYB{cSIAv1I=GPIK)HH#9`?n35R$Vnm8Ur1c&$= zG;vt`{=y;7!aaj0wp^3x7e-fIw1GIfI z7l-&#G;vt?A4e01os)SUO?(41U)(|yhuur^2u*wkG(EpX6X$@s^DCM->^yviK!`=K z^Z;`w2bwtSepO*K@d~K<(rDrhP;oUhaUSS6ydIi3KUCZjO&oUqxg(mm15|wsnm8=o zrl5(#+UNCX;xP5?XyUN>nn^gsXQ7G1%wL8k4og4l(8OWkd*L*3(#CJys&IGQ+YzOM*P9Ajn)nf@ zxG$P`1+?4p0zef{?odfnAO&q3P2s+>Zi^m60^QF+lVeNKR9OAlY z;;{QhJ(0wrSJs1V2t*TyUh~8dgF`$8O&pfao6y9;hBGiQbfJmE%%6%wd@h3PG z;xO|Mqlv@JKZis78k#uF{4Z$YF!TSQiNnlikA$cI#TO_%VdDH~;xO}}%efes7#SF# zSB!!U5CD@5;Q3kT5<{>E>|PX*`OqZ=U~%X%x?uI(U=aub-R1%o=YJ26AjQ!8r$FMcdo$6)4OYKEudxD$14upW9u4I1 z1c}4WpNFlpfVl@&4j_joSUuDo&}0HPALdTva0aP|t=ot7BVp!;K*xoU!ylwR0xAv* zCzyKJI)CKw2dRhE3$St>roIGPE+NMYNIh&EW(CwAF!eBZ!tO5xiG$J)tUnGbcVXf^ zQ1fB;55UB2pzep2e=zYFs5q>ggNeiLg@oO22@^Mfj%zVM?SYBI*3)vJiHAVf`NPUr zn0nYgO$jvhu=~(q_Zz^}!}cA(&cTI=!_Lh%Kr`n6)Lz)VtT6Skd%fSKMosrfr)cK3yBCcdtvuL!Nxye>S6a0!0Kn1_!ek*!s=(3IPAWa4m9&&=VDDj z6NlZ`2Ag+iG#`|SUNa?WG_e@7QV223{wx= zmjTPKFmc#AZP@%jOdPiE5jKtv6Nl|PgU#>3#9`|pVdKXzaoD;?*gis-IBcCE?0hDe zIBXrD0yH1M#9`|IHPFOi>mFg_>oE0SpcM;j+!QAM11b(1pN5IU)@{Pd6__||og}PW zfr-Q1pMmC{CD3(-1!&?cpyIIcZ&Oj6Y0W}A<9tUO)?EIn?XzF46 z*EXPu!`3&#?g4e1-x#2Y!_ub(nmDZ9bwCq`^~+%AD8S5z^~+%Q3c|!;?KjwcyfATC{QM@S%< z0}_Yzv-UyLJ4iiL3D}AxX#9Z0LGc9^WME)mL&{&s@ui9+jvOziki?P0|0j}vk;56b zKN4gwa(Mbe>kW`Na=3j#5=Rc77^tH`>Oua6xgVy6m5~7!v|uS%zXK!=)e07emAfEu zWdFj>8v}_W`xn+u28kp4Hvt;XAaP{>!ty0Z9NE9Hb{a?=*}t&%5=b287m!0?{SS~h zvVTExlwfI4pAi)AXokT0&uGH1?gm^~5vm`W4B+C#>IaPzfZ~H({h(`2KtT^}-eK4e zE4N@0&}0eYGJvi{1c{-$cLww#kqscj85kHq*L8x_f!qqx4C`-$mVbhjpxb{1n!jM> zAV?1ggUkTYFbrA`4-!MS-{T=f1+0AwvL9pzy8WR3F*f^`Kr=h6T!om%0ILpRT!w50 zh#0#49giVOVB-NG`$2YtFh~aGf6%xDHv5l2?T3}qAUz-q@+*jjVbFLkNDSTn9Z>sW z?NpHcTnr5GZ89+X=R?yUC~RP6f@oO#6jtto#6TEi7l?-8SvdS(@C>2?c3(HhejY6L zgT@1}`JaIgq90a|KzNX_hOt5PZXEV|yaLHGFu>0D1lbQV5VEY2n*y~TUQa@d!$`lN^TDy%{{d=0tbGi!Ul@!1pz#fC{=Wk)d|~x2)Orm2r5Pb{ zithi0?+_iZek;g+Q7ra@#y_yxe*;>`!|HK}X%M?$Y!GdY!~PXNL9&Q(O_2Sd`UgGz zfW}Qg_Cv4tfoNi2U{H{UFk$0<5FR4`f%JgHK;vI9Hi!?y5m5bapy!Xn#L?BJ<8VL6 zFNlr==>BYw`=zjiA7~s0-As^97wEhKti25q17UQv-HZ$vbs9)rOEidNV9v7m$xD{kN1A_sy9Eb2Q{l5x_{WF*#_9uV}O=$fIYAc}Ie+Y;D3wJ?mgq@!Q z;bGdp7l-{n_#pPf`nMqegXS5~?LP;#A6C!7>=8W-VO>XV{6WhqkPIvyZsO4Y20HMo z22zZKVftY7BdC5PC19q|MKFay!1Tc+zC-mxd@ju}RzZd)v z6OqFYG-m+Q53ODpKxI05+YMxP!(|Z3zyM8#5DrrK!3045f!G8SfzTaSA#?+@{SRuV zfv$c0vQAoYX;gBF82!~bT6i~qP8etr&SSZTuH zuv3`BVW%R4!_Rsqk!%JAho4E8rbrbtiFiBJIDnRoPLXGj&rV=!kow2%@bh!9!^;27 z3=`M@k>_D3Jix>dBG1B5=)lGh(jemS^ALl>Pk9D~ zj|(^$LL6BfeugkO?0hWl@bfV{!xjdHhM=Z8hshz%b$&rC!%frPC6G3W^{{Js7ufb5Lz{C*J!^jXKFTqfl z_~$>^FN{16KSe|wz29Cm`tx%~gXILOZJAblJxg$WD{A@Uk5g$IBA55Z>sT1YtT zlxJZubol-s9tH~-7(yCF9DXJ+GMLyi$iL3{_CEyVrw8{LEEO0Uf*ybVzeS0m;nKtV z3=_XFGijat|6iQ(|9^1U&iMad9OTDo|No0Sa5(%-_^xjDK-}Ty0tSXH4lE2m6&Mh1gkI1_RWw3-tvCGPT+73VeGc$qnauO)ra5(&Yz{0Sli3=2_qN^S< zi?4E$VA%4QSyJl>vluwMUPAl?no^y};E`yN$iN_=(4o-Hz#xC^07FC2LuS!ckC;VP zF*7t=Vqmtvc7Tz=QOXtf|#dnFheE?F})1UU4kr@sFW0mTR7i|WgYJPh3+H#jjcc0V!)q1L&y&XhAmj*=gWVS20n+MHVh4yW^sYaSozmJ>V6KAAyjP!i%tW`2zc4+CIH;YX4QT^`%1UtE zRLrvSGc&`g2Tb6)|K~Smrd2x}GlVp-NeMkj zX4o0c;jnXRiG+|9LqpIOh6uA322r6XhK8W|4D#7g;`60uu*nxGut3Vq%gPK}wy<-U zH89Buf&A+La+}C}sd{z>!w2OII~hb6LLMeN>}+6?DY9W|2zpS>uv3v?z7$Ap0`nZH zhxH6QA7nG^v|wNmX<(5O0=b1jV7?T{9WXac`4f-f22j`>5_0%?g-OBe0kiNbQ20aA zu_!qIePL$MTEN3#`W;-~Noalc2h|6lb|K?yM|nKudo!ebf07K!&%&!7GE1&{%q*?d z!T>S%2Q!1#Yf$=SXE1c&LHJDukKaJ$iU>nPkPJh^r60^p6M4b;TxJ!>-JtvnirWXy z3_n5s0i_9azf56b;0CD$shiKt@LKub|By%7AoodWJ!BRE`}aXH!_EiQ4m%w<8B8n1 z8MZtI%S*0$Qtzjab4->;{=YRi0;<*_Le-u0HZ2ST$Cm>}I$UO{S zK=~KKp9^jmK-~O@SsLtaPU161}Za5HRqVD9i!jG^Ju18;_(f0UUfeld3V`NNrMq7XRz#lUG|N)p4w zYe;eM)Z5|bLuQFp513_8;-R%k4qRR|Fv;(D;O_9Vp-KJ+EMD$2F}!a63vt^wV~3xh zcm}!aAv41&W(I}{pg3h>Zn%`pz%cPEvl!Sv3ZQnRH^WbE1_lvO+i+_V!^A~Q^LK#K z!vk*zaJ%)Px5Li`O!IdrFfeq3`~b6WJ`=<1AVmU=Ufv1@b2%4T9_ksYkZs@xT8eZy@@EIRF0_2gM^hh-PNc zVg<==c1L`+JyPc>M69;(22HYoRx&pf8h6%Ek zg$Z(09up&YsFjHk+>>Tv0;^_X0(Y}nSXeXjN*KU;nKeKs>_V6hpk2FAgJGsY3}xk* z%fP?@HH?h|tej;+Dgy(=5SB@xc{H%u7OYH6s*KP9L{?@dkUq$0J}V28CTL^~>>yTF zCQS|o1_20%4J-p$v%<>G#K*$Gpa7BK0Ly4VI9yDZm>C!hpmt6MtwG}ig^C8-k!D5) z2Cm{f2DW1$B@A3SFeV3AUS_C~%ozygOayZlf;k((oP%J_MKI?fnDY_Lg$U*%1amQhxdg#H4BDd$j>7=2T-SJf;ln}Jz8K6B(1S)gE=aEd8N4w?0R4h z)Y1CPWh@K~I(!8sMGWi)%%H_RP#+jG?_z=bz=Rnzya@FHgyX@$$^n{N;s@meRu0fI z6L92n#J*!@U|{6{tqT+Yg)eBKiXfa|VC4X10#*(Y76t|(aI(|jNQ`4)VBi9|jw2al z5hU4hq=1AWNsS{NBo0aD99bYXBx!TxJZ5HKP+(x?0687vfLu`)1_maOjnGWYnNkkR z&+Jb@LCMN72^77c)C=;YAeaETRS=X01i>tjq#%f3VC4WM8L(eKsRE)Ju8@J11GIz# zEDcI05NS{xfz4rH<+u;B3uGoJ(x?l$OAPV9Nv>K{H9L9D%H$7${?9VBjxh0x>~(mX)I&Bmjyi zRt`|%0Gdr=U=w4U#|lk?8mt|RZ&_g_Tqh%_>}B99Nla&8?P3Jk21$af-C!AL3D?UA z@(d&ivi377bAX})VzfBpPngjPtiDX4Y%rt!AcZGiQECYTt3MOS&n)0%%NhVK6`}S7 zf@Prg1c5n_)9YD-!5j$&h&_^wiEPj!4I)s>Sj5J_z`v1!fkA|W?H*$-I|G9#D2cP( zX9UHJ7$}diJz!kMz`y`uKLo3Rupcotv%|z6Gj_t+PZ;~*?5B)V;p}IOv*GOLj0@rH z7mUl{?3avd;p|t8o8j!&j631%H;nt??6-_Z;p}&er{V1Pj2GeT4~*AA{whu_VPN}= zK?NTx2k075Rt`}8#mXTBP7}{S3rsjBgGpJihz6Ln1CyX*B3L;^rENvzQpT zpng*3Vqkz2S70kZ217K0-33lR3amLysa(+X!S1o2ZV(>!hl1`ANd#R&?gX1Z^yT#4G0EsL_ z+<}7)9H0uUbC@)FV6LBw?D~1&!W!!O`CtwY#3c*BTA*H82$liG;Rd+%inlO#hyLV2^_qH-H2g zEtx>s6U3CxEMZ`@VgltS5EtSu8zzuZ2)->7s2)V{?U+FI9D;8TcMwFs0~07?gX9&H z85kXzKrIKRiRCgmsd)^HPH@FC1!)Y7&P>Ii#XSrR3`!skAPnweFfcIi@i8#SlvEZl zFh(+ogX5h6X~&!e9|MC5V=(h)#$Xl3Am-1EK`M-a%%2$pRTu-9KQjg}fWi)B97CrZ z1A?;*nR5`Ca|fh>l>=0@vvO4OF);8i;fAGxKk%3WnF!lK#W;so02btb7-2y!onKnQ z!1#v|R91sjgM;`lBP@ueLCqq@ziDvSY4oeT^p3ac>`qN;f)$G|WXtR{%5 zodIM*H z3do}j;P?S8nq**X096-YK?Vi}8Bo&|l0u(;3!CHF>H zRA_>uq7h~oL@S)DRZ_yh*bM5DgKW|&U|?*4LNMDtz>J63_7P?|ifzX*Y=cXKZ2Jh7#$_YiVW5>%DvUvlhANDK zOr79F(+YFYLb!wOp*rY3RtJR(f&7Tf1ErXk22$sQO zf;qy3$?^;g(GYcD6M~pPmcZOIv4jC`T02-3%>N))!<+@l?X5_;x{i;5VLOU?aFPMr z05iK4sh~a$Rtu6rxD4dCmr!w#_fh@ED+2O07QZ2d4yZ)Z2CEB#CJp2g2~_fgf@P8Y z6bLPO+R=PdiJ=nYdqn8;faL=j4GcOcOKELK{+T1j0N3@)N8wn;;Ajd&9BYYa|Yf#Bfx5!%^%F$7L_L^uW^aVK4$Yj&U2f3Bhx~1Gi30!0NVx)xp>x%OLC>Na7H-X(j{XE=JH8ni*Kki z2NK9>;L7uj3-Pywq$ zPzF5Ho(1K9Nl>N@WNN7g<>_XmG8mNqIi*0dA>bMc+6V!c*074d4N3hcc?JeWu=)Td zWOG2`mN>)%5#sO`C8$(_I}yaGfhgi=ffZ43S&#>2fn@`k+OT@y6j&CU2RcACJ5vvu z2OfddV|w5h7IAh31_l*rPyhvUf`_U>5dvx%d4Phl6{&jz>g&KA4GIrWur^d{92FQC zk|5&D6CKzPwHipG8Yba^BoU;*z%Uamfi3<(_G|>pg6)Bq>mcJmy)lp-NWKS!^^66IY;jcky8DvTj46CJ>I zfz<^ufz$tZVGITv56e2p%0XU;0V@Yv zh~k9?usF;M*n?~nSPi;2Kx&b^0XG%oxH}LXNEsW+UGS_3ZWBRU5|uhJb2JXyJmb-n0Q($fXIYtwH%n5Hzv_AwYE= zgDprJG;jqPLjcdRKqNt{^%(3xl59-iDKgNof*@#^A2KowkrD(;f&3{5ni+sd*@JXJ zNaB2f1QGVThl zDZ$pV)-r=Qp!PUI3Ty~eYX#U^P)`CP4{9GkrCPvJpmGy3+6!v6ASnWeCbt|Yz(6@( z5FCbJL5`as!RPV}41!<+EW^t2R-S=@KZS*X0ix(4NElS|ffX@;Z%yV&R99eNfP_6r z8f>T_NQ{A%LstPh;0P*rAW;K~L5NOnMNky(+}u{&)~t-e3=AB+5N)iU!WP^N44iOTZjdY&F9S0N#88kdH&ihbj3J%vGr3bKMlgh07c80u#MsPr|f)oid3b8v#Om~t5DU)V}IFr>= zm`R+0LB<4yD{BG|36QK@XA>iXAS0+-E3e0BFNwoU1y&SYib!TkFfb@_GlE95bk!z#MZ~MnmBs#!&GH?nrPdwP0m11jm^r$bk$D zRwhusHJBm6z+i(KRyN=Ww}l9T0?$MeB4h^<0wsTtFhtN^j{y|H>XIN;3=9s)Y9J~c z;X>T%P?JE#9SUY-0F5i72(d7HW()xBi$xJd=P-iSk)sNNGzJpXD8kUpAjF}d(!wAn z!l9s|tHH=1CXAs=666SFjwvjJm7+QVv_%KQOGGFEIUdv3Sb~R<0eW;K!cbyWVQ9o< zDTYFg^UcK?F}F;a7?sb>MO+J z8Z4e8P8D|7!F>s3FfkZl1QR7qv&B`D1+;OF|g=_Nx^6=MG8y` zMq^PzVLX^N--3oYs8WQ7#T3CCXn%%%?vCGF^$KloERCh&{ctq$5vlqC`8wYwbV<; zRD~ggsRV2J9ztI9Bx4#6y^{qY!N`C`6&4|4G$Kreu-F({7&!h*VK^R_I7AnM#8wnD zg3p~nr~wUfV+s+e6Pq#=qrs+Q6zq%)puq(cg`lK^E#YG*#9B_1sS3pfV5eeHTpQDE=w(^8nF)Z~FmIT1e&>2BYLcwAhGeZ|Ptr(RX zHV0#I3Auj9+G@jW)uS7awcNx~GLtEU&C}S#m>GKNv4lTpmlKMMDO88y3lzh_MLmWR zEK!a{2;CrTEoNfHu++uaw34q3-LY7DPfQFg80~achR=*a${51fl#*!!5!#4!>o8D; zBe;q588NYfEhl1W^;4h>n^sE1FcSzye#KOR(Imn)WQVB@!(^->k2&~b)14UQIF=?BmM%HEK}-x2i8Bdf%pR+K zSf*Pr&BtaZHZd$VU{i+fB`m(iBE-Z{gsu_W#1j^sScK3`!qPLwI;aRbY8^!{R*l4{ zLNNvVI06&HMDW@;WTn`|kmW&aEQ1YX3xUi-#@M=Ij0_l~E?DX$Vh3WdnucKkvYS9` zEDZ>yTX!Lu?RuUgj3kV4_g!wB?dPa%D^(uM4S**Kb#^yjbKYl z#EHQzgEGi2qOfR$8VRScL=AC5a1)>mENx=4g`h^lDY6R!EE?g4LK#?ni_tG&W@y1S zSdEeRvF8ztHZs=IwGEpM7+SI0fZ-5g9gNlc7^Y!$FL5CP4Q4on&HdQKuonnK6_!M5 zg*yq#z~%~UV%Uu*s-h>R^2eqIODr)nv}9nJKEa4O?8afVlbIP>u^ES&Cz;#y8YPs#8nQc~0OGC&vX7MG-C=9TDWfR2VtN-R#*%V1z( zU;qUkND#_|2qtCbLm0&+iOJazW=Td-YGMk6U0hO>nU@YRDmO7FCqEg&E-p#Q$xMQ< z85lU>S8y<|WM;J2msgZmku_9gVr5`tM3&se!dSx0slZ&Wz|3XCz{JAHrog7p{E_H?xldv!npw8?w52Tt)0j`4i0)v-~N(Qrt!e!>|^-YG%-18KbWkJEgtfK_-6;mPD zFg-TYC?gH#qYP#$+7Q?g|iR8W>xXRcIG*8v-8psyIN z2zCQFjkD>of%2B3ELevgn-7SVQ?duCl>@t24&q{WkOZ3^o2ib0nm+T=IveIIjCu~% zAd?v7m@m~uFl*@PGCyF@V-B{#2>o^@Mqwsq21Z85U_Zn75Le#-AIA_^hNSe=l41t1 zm}iKqZ+vkHLrF?%5kq`Dxb%rn&d82WOU%q+$TUih2P<>(42cg83G(!FXUHqfjV~|C zEJ+0yWS~2D;)_y?OY)0S8PYOSb5i2-5_3}-N|N(S^GXVjZ)&%O7oH#U=;;YU8#>$N2H_{|}3M_q)QQp25ua(40`W|kqfe+SC|!UmtN8TPl6Xkmf=&;G3ngddXC|k{7pLZ= zCYR(FF+dVeaS6nT0Oybhs8Dil0VHU^T0yZD4~}+(eXyhnva&QYuf*6W9%@WlQEDnw zb8=2%F*L{!u~bk5N(0~&5)kC+>lxx1<_e9^5;H?+a!St6Ent9Dn-Ir&I+{YGw6r9- zBr`Xa0c2u)a!zVu5kpRXUb+I9KuKp1$HPO&GuYF~#}#Ty0g~H7L)>G;5Y@lHpIu7p)4_{G!^0^*N70;AU}x9L7|Y6A77kbRKif2msyrtRGgRt z^$IBc$Cofb^Ap%4$Iu9n4oC)pn3iIc2?;cJzfc8d1rt3>1tSAPQv*XIV+Dyv$?;-Q1kal9HTM-PF94%)~qe-Q2{aOxv6SGZO{fbOl|1BL&^G zg3M$E-84|jEy>K!(=AR-2GPX|x@o0(<(YXYx+RH8IjJB%I4S5B6y=wIlZI|_Nf9Ve zb<^^5GfQ;SiV|~Ebqn%Axx7e0Hx1;q~b@YQ21S$FP zi781CiBLb!FxQ}9M;~Y+aPstz_jL{N@W)c-fUE|`AyNSgc5reMLvlu95yV7rA?+Fw zz>t@cng+43IJG3cIJGbybO25vB%zd47C@6Rs7y*pEJ%+PzFv0d88~cClgw-LJ~9FNlv~2 z(9kT&El5c$VMxv>fff*{;4&DJ+QE(ll^6_31*Ij$44}-yke6Cf5}%Zr5AkVgMLbwR zadsjk&n9K&!>xf9fk~Mq@z7ucn+OU|a4aEbQiyR-WnfuYB7?XECIrgA2s4WGcBmTfH0>w4R)x{b4MJ3=` z5FV1nsf8dTa#HisOEMUWQwvK<7+__5F(@hLf@`+i)ZFCU0)|YGNyuISnVMKo5D!j2 zFh77o4C1TelA@B_0tS!(1Gu6GyBDm^F*E{VJXjJe1hW@h&}ZglLQ@;q=gHvM0b37t zJ4#tw0*RaA?086$1DodW9O4RZhJb@1wIUuAykOaa(vtYp{A5Uu@ptlabq-<3Of-cC z9jMg;ZUz(-rxt?JGuUFVMrd+}rZ2cNz}YW89$p)zq=E{uN(NAR$xSWE$WH+URZ(hM zY7r=^pcPYIYB?mJAW9fYKv4#^1{~+`3O2;Y8KfOn*E8gULKUnIl-U_TiXlFMI;)@* z;b4$tJg6uD2P;?;$n%ga!;q0u1d4xX0}1R4NGgH*43yvCEjv%Y5Lb8CAO=u+D5!+k z84?-b3P}^7Mhzrc=Yq2_1E{D;O<_pMFHOoxWpHr~ig)#MW+(^NyJn{?*44{LP8NdKMLhQ(= z;53hEGRqWZpL>p1E<1t_Xk~z&<^fU*>S;UjIk-&bn8NNfkIkR!%4NrUj(iM`+~5;A zV1uaOu{%e;0>`O5)41Ix^G)HM&NYK`CdVxH*=+Mzi$S`sU3I*1-SO5<$9uOS`dt_p z7{F(Dz|I48m=a3_k`xHXE!4(Wb>}1U$!Ll?9ayND^RE;l(H1cDN_O zE`!S>G^eB{m8QpoG6aJjgq@g_RFql<4Iqe6PJS{9Kd~q=FFh3&h!8bcgg`AYn5o4j zMGSh$`MJ5Nc_j>bdHE%&dhULqy5Ob()a=xZcyL1x5|>y=P?WPUeEg3^ih&t4mWD-w z88ohjRUCel7>X=2Xv7Ug1bRgR7IA*?_&oFgUIx^0d1eOibvq~~LDDLwI7ksQJm-LT z5DZa|K043906Jfe2}wP;%z$WNU!%t-!)i9ytZPjQC{!D(g&(CzJTE|>vPk0}n4WCq6$h=q!o z8K4*2qY5)HLrz*p69t7o^dfpR8D_-Uo+vWR;2H@<2+UzdoGcFJ!w6;u6&MpvL*iGJ z0aU)i1)&UP2Jj(^P#%I}MjR9i7mS3K|8M~)BY}Z|L5K;F{$cZ0poKc1Is~c=PSxQs z2XyQ(HuW=cs0UpXhE4r$9O}>D5Wk5-{3Y05i2MbcZv$OrkIi0TMnsze?pe@08xC=E z9OBM6#Jw097=)1W5v&A>1&br{1x!2}hdH2f1)KY;aj0*^A>M{VycgsiCPY4hEAln0V}_+gF=3=Ah+EAc+&>Usw%;?oQaoDs=G^ zAV)#{i(H$*{EJ?$U4g0>Ma%z?n+zf8#~7*xM8W(EGY1w=us#FK9GG|ol7B&c7myhs zdi9zfFzC_k57=qk>iU8+SCNui)_9E zk~p&Y4oKqQ)1#s8NkI}vHm3qf9NC;DNaD!mTtE^>4xbN5;>hVx0@}m{xu2MHB>{CW zdip`mN8nSsq3U4AhoP&V0hI^Yi>w~BE(Rn85;q4ipcs}8LE^~jUqIzS;>hlYdW%5{ zR1ZPbfGAwzuyluBZopbn=l*AE-FUUht{2VATu^1xVt^^=}7~II_KK zki@~q1Vhc)f7}H3}-;}XhGtjyDWY};|bPMhKc7u^A)Vc3KKsH6^Gdc5?5qkUsQ(9Y63qNhP=A%9sh#K6GNf+n5^Er0vb#HFG3PC*l&12um>nz%ePoL8fX z!`um4X$W!x%$<;Xa2Xg5qpOFSe;!R7=6+cF5N6J9s5_sdsb_}rKS61jdJU-hzi8s( z&~yc>XJP8Oq3Kx|8cs0rHfTJ`p@|=WhJz-W_%mqvXo4ob6>6_NnmDL^0SYfKH1Tw3 z_=KW~&w%i%prabKu-8Jc(v)ci&?ac`(Q`_RN;@i-ezJQNxZE6~JYLr7cE z#Q%ak%fP^J2u=JWG``NGiSt3#-$4`ag!=0xnm9j{{|!pR;?WuEFJ`DdnD`oKc*>xO zOGERWCYpE=)EqN3@flEYXEgDpQ1b)O#9N@@7KnO4>X*2poud=)gMI@_XZixz`*bXO&r#~6oaOBm^)LU;jV`!4lA#$(8N8V z`O6JW{4>0BU|Ynm8vk9GcL?Z$Z^hhMEWS7t}cn^U=g% z`C$#3I4r)7p^0CFhT~;4aoC2Q2Wa9Opz-n!O}r0k&M!3a9;kYDsQ+N@Uk2qXLTQ+I z6f_;`p@|=ZrhjWR@dT*79%$mPq4tKMiO+0VJ4!Zmki7P_g>4+v?0gW$TH1Y3H z^{Hs$>!JKYC=GL`6V#ti(8Nze`5&P)Og*fA`G+Px9qN9_wYm%pF!h>HcbY=O4 zYR+^t@nWbs2hqeq*PesY!&fx%)6n#$0u3jad)lG#Xox0m3ANV_P5e33UT-vUSUnVh zChh_a&pI@5P=6QX&Mq|Zxlr}f(Zuzj;j;uyJO~;u8_~pJ`DY)R_!=nxG?a#g!zHNs zH_*h-LHSRiG)(<(Xgwjw4e|vd9Xdh7O%_d@6B^E1XyPz`nWKrr>I)Y%@t06@0@1`l z_rZf)5{D+P1P#w@G;vO-e=E?$Ux5r^U|?uP6R(H*YblyIY+Jyy;TChu(K*d4+l?RJJh)rnX;G6Ck7#I$s zi9=K~FkCfy|A-5-l2(KhFb6$Dh_i$Y^;z6x`Y7aevtW{ z&~O%qii6Zcg}^51LB(O}ZK36iC6YMEJ>S5p85r!4#6jjSgsS&M5(lZj3r#0}Na7&% zuyQjJNgSl!A6iakpozoA>vNIBLFO1jBdr2S9Apk`9IX~f9Hib8>gf(7agcgzs5!kz z;vn@4q2>4tByo`X8Bq0ek;FmjVdEPski>up*MY`wFq(J| zR6GGq9JYR;9x4uU4=5arq4~56Dh_fFR0y2n7DB~g>S5ut21y*`FIYLY2Ti;e8t5b9|u zByo`WNl`36Rx%&_xrlaOi@jPYI|vNIf)ZgOoGqL&ah0Vd=pV zNgNao>d^Yk15NxAR6Gn#ycSxXrlN^ULoLrj5(kApEIpJUiG%Dt0#)CHCLRn8mwq&H ze<*(rlm__=WX?J$e<73xiG%Eg9lW_7P5d=9+;$>~gUs0r9hl#TBn~nMmVQnkiG$R$ z34w!|;ToFwW~lfRG;vYrQn1fx;yzIEA4uXLdtvPaCaAkW{sP&%8aklN4i$&Ry8|@e z$w0+H>Otl_hB%W!4M`kiPA+u9K^sXNr2Znb{4_-p2dSR`Rc{3qhuI4o*Na3GFM+zJ z5h@OH4`}`Z>KukHByo_vKcVq51xXxa?{TQTGm*qW>baoh#$qIKka}}5hz%>C;xKm# zK-+c4(Zp4t;-ApOVf_LjXnexl4=ewrk;Fmnfw^B5NgU*!D5!h1ki_HQUjd$Hb6Njz)VTbw~W)7^rhUI&h zIBfl|D^xwmogn|7fR-EnP;roYs8wJW6+p#7>OtX92z7rwn)oWHcrTjxW2pEfs5s1g zXfujoFH{_4KFB?FQ1={%ii6ZcqYCVv7f^AKdXRf$q`<-q-_gWFq2jDi%`o+SP;oA( zILv&QdyJvtAoU>koPoBNqS3??q4h#KnmBB{w-`-)6Et7cqlxc=w!5aHiQj>Ei(w&} z_$jEp+tI|kq2m!GHUb);4M^f3^_9?c+l?d+Qr`?!KLJS`q<#Z5!Ocbz z2dQU;E?!uGBo0y!Yj>?i5(lXdfU4h#CcXwLz7I(pt4=D2_?VPIgm zh9nLWf~^C1h$IeDzW^l3z`*bfNgO0J8JeCyB8h|4TR|6aeM1rlsTYE_a~PqC3>3d0 z^=(k~Y)IlD^{{*=h$IeD{|u^L3`rcM9@bA$L=p$7cZMz)Q9}|3sfXn|OQ<+3{ln&i z9iieNcY?z60Vwe>FfarniG$2v1T{YjP5d=fJQ+9AT;qgQ1N&)@ikEKS~PLkeA8?+aSmv^k{x_O<090H6TK<9j3$0qf5vhtK4hpIgsCpwb@gAtS7n=A6sCY7(_ztLe z4Vw51sQ4^2@efe(O=#jWP{*D`6F&p3cb=n(zkrGhK+AQIe?k8G0u|Rl6X$`(yC0f3 zEZ;Sui7$YvpM@q4o2TE0CSC%K_qS-`GEn!3$%3N+bSMsZ7ZGfn!4*w>1JvGFG;vtF zx)DtrwqAKNn)n~6Id{>-Vf({gL&ZVm45(Zxg4P$`pyHtLga$d-;k?j#5~dzjFH0ba zgYvs4bg`iZns^gb+#F4OH&omPDh{(3I_$xa4HbvkD+G0C7n-;dv|d<_CJtNEc?eBh z5UTzznmDvLWO#%oz7HG<3=B*lPa>^zy9afT1e*A5Xnk#mCT82$F)WKZJ?fg9I5E7&xKj4Z64>nmBA+MIKEYwufCEO}qwbz7Y;_D>QM~ zc%Ul|abGlX*!s~39OAI?TA06J8;D`+9%16J`GsOMb712tbvVR9``bWXgqb4(RR>%5 zh%P<{Di0IahVqv~X_&YHl)oNI!^C0zDcHOvOnd@V-61Fq6Nl}Cg3VvS#6fNb;iqWo zVd(+3j{v3~CjJ9WJ!oGi$Q%}Ec>_}q6NlBGFmYHqfz6+wiz}d+1G|*~wyp=J9wu&# zrXFT4Z2k?V9^^(44o6cD^H&lM@hmiPnEPSt)L`br#9{j&VB)axkZv?{VB(X}#9`@k z9uDzkXyUMRy9I~%9yD=SdOMCo9JWpp=6+Z@yo;tDCjJyn9F{&m;1GxH*MON1OSf#$ z`UhQ{4^14_u9L(eu81an1DalSaEP0riNp5Q*y9j)M-zwTuOJ-aQE1|@^a+~>hWQti zHbEHHpMZ(O(q}iCIWY0bXyUMRxDbca|#bjSwnAHdYZ#QD&~Vd+y6hqxk|I4phY;}ADT6W;?(Z%#PG zz0kyA=`$3Ecr2PYEPZC+5QpvGfrY~xsC%l>)WgJ^(Zpftxetfk9@bxkiNn(24>WUN@yh~g zM1rnWVT7E44HM@<6NiPrI1X`nG;vsX!q#QL+yg8Bozc|8_LIQ&ufWuYK;tnCO+BpL zlZZn+6HOe}9x6o>hoy&FG;x^wVe3R-?t$&sU4W(@=1$l;5t#ZF(0DnFrXIF$^BkHu zY`*>)nz#Zq93G;H!}2?9T^r0^m^;6qsfUHzA2jh4sQIvU&MP9Kof_pPl!MhhlPJKn)m^zJ7MdcVfJ2tidUei zhlw|!iNngPZZvUNzJTrPf|(CXSFrUyFmYHq--c!mEdL%v6Nl}mgRP^6nFI6h6*ToQ z|K33phq?a+nmEk;AJD{M?uV^Qg4qiz--Kb~#L#jB*8h^jA+Cld4y(tF(8OWop%t1q ztiE=`A?}AJ4og2#XyUN)FbPc@R?p_4iNo?&8Jak(K5ar1hoyhm`WINZ!Rp6pXzF3& z^U%a$@wEzv_$D-QSUm2-Ar9Mr0CNv4elMY^hl$@p6NiPP!`2DH%z@>v5H$5L@fb957HIj9 zg+m-R{s%K3Ha-bkrv?*;I+Fpmj}s;i%P$Mi%!i4?*2%-ve}Njb8BIM*d^egn%>5^E zh+jk#hq)iNo(^U&)LMowXzF2Sk^ILY&JG>VgP8*hXV|_3ba5#(^)UBq;1D-J6NkAU zw(bvRKFs~WXzF3(S8+JR)6m3W;arF&4s$1Lz7b|G%ssGmg)niLd*+~-153}#afq)+ z6Ni}(Tb~FsA9gj_RW$Xmaft^w#9yF^!`3H!MiYnm_cxk2KQzCvfifqwJqcpM#Q8uR zBym`KMiNaNc20yMnmBAdj}8uT6EtzyK2Uoc;_hhTu<(Sf(}aa5tR0?(rXChPRcPX{ z@M%I5hnWvs*9kKpHmWODyO9~XP7~%%m^e3@IP4q{*m_Tpdgu~Na7gGQsRxO}#=Wg@h&!Q)!^TT} zafpYaiNnqoO~xS(+YbVB=K-)Q85qjY)WgK<(8Nze)pz0$pNJ-Y1ls?fgF}1?n)qd? z`t>-(x1))}=1*bkYGM9@I+NiRntIsT8BcMDzeN*=t#kN+L!1FRfd#V{7XExV#Kq9W zVd1QZLtGP092Wj2IK*wx#9`s@jzioZO&k{fQ8>ht(8OWk4_m(s3kO*Ex1yD?3G;vt?@5CVv+b;ui=O1YKe+ErGO#BL(IBdN85f1TJXyUMQVZP!J z|BEIL3s2a(Z+K~|XI5Vu1UhxIExafk<^iLZdBlNcQ0DQMywpz8B+ zh?k>@!_E_F!Xb{l4+s?Gu>R>(H1#m?xoG15q3&6MLwp08xBxW$@5Uj17)=~j{#?W% zeiKa`HV^j%hxi*baaeuv9f$aTG;!GZbX?H=C9re|6Bj}ghwTHE#UZYWCVn4U4jAAN zw?GqzmAA0{E-?3i&NBz4+h{cPu>6~jCJxKL`Do&>@~s+89F~uo(ZpfrDfQzJpN=Me z0-7Ecp^3xF$yI3Lu=5JH;t=19CJx(|aSDg{B{XqZIeZs~_)|1-*tv%vaESjv6Nl}y zV1@3}fyEb0oEJ?TR?egE&w`07ps9zI=Q=pVP0+*zpz{r|eNiy?z|v1RntE9JNk$Wg zrJrmxaag;e9EW&4nm8=Kci|A9geDG4|FHdAF!#gOMQlS;59`k!L=%VYH#vzW4%=UO z1x*~bujCGzIL!Ue(ZpfZO&k{fu>G2_aE7hp-HoOmHg10m zhxj=(aaj3z3y1h4G;vsa>?4{utR3o=M>tlz;5 zT{sGh$1BkEfWBW6CN74i{ytQ_5}G)yf1!mY4$Cj5IK*wy#9{fx6Nh*pnm8=KB%q1I z>hTOTaajMN7)=~j&Qzm`!^W4|(Zpf-u^&wwmLFmJvti*3%P*VJ)WhZr_TvygjwTMv zUzgCtVfpJ8nm8<9Ji{UW4ow_ZU;IQ9hoyf;=q5>+zhLVbc+tdR=}i<(d`}FP6)GI^nh3%(@xd&!W5}JD0 zxqrDh#7oh{Vds%H;1KUX6Nj}+r=W?$_TA4x6W;)JKWu+L%>A%^{rl0>S3}jq_IZQU zLz@7g;Q@w6Na{i2&}}{pZ*ho!MH7d$GZ~Tgy@JeviF2Zf!{$##afr*JiNoggG;xR< zqKU)ymD}PFcSRG2tg`Lv?vlrG5 ze~zXeHsALNhxjivao9RTR?wzL=sXUnJb{VxqKU)S=}F)aS3nboS6bJ_~8%_LlcLY4?FJxWInV?1jl40l6sIhbomxT3l4GEzGIj<&}BRfuyZ3|;$XuW z7#KF;FlR3g@uO(sF!N#OPoSIs8cjXS{oini|3edpnGZXE0%Sh42myOR1!?~;NE~Lq zJ`QnnG;x^uuyZWX&5uP>4>Lalhj;;+ILv(5c^K&CPeW4=Gk+lt@s()eF!N#OK!D7L z1|c|n&LgP@iNp5g-NGUM2u&PT4!p%7{uNCe*8XRPZd`=92PV#qCJtMFB8Ed;4ow_( zUz83GaT7Fg*f^~{4smxhaoE12P#og1XyP2u_EH88@d7k)*#3b!9O7+g;zyw4?Gtf` z&qNc4?Q4de{{ahsaAII!VAzkQ9#&qR!XbVMO&k`FcX5b6MH7du7yW=k{0EviY#lf= zv|$NzKTMn(O&pdUByor`DcQkR>{cS-w#G}x}Vd*Cohj=cU zxD7PDRp1bBKof_hw{9HblhMRs>1`ek@nvY@f1v4eBM$MMXyUMaDMxUKpFtCcrDxc= zHL&ymOV97o)Wg=r{lX#6gtV_8R35_0A6^{dqG;l<^rnnMTpLXsmVV4|h})rw!`6*^ z;t&r+6Nl}KkHI0Hf+h|t-->XESD}f+(q}6U@m@4>So)lSLwo_6IBfmNY8>L|=Q+UA z^Feg=&~$hbO&pexKof_}ch5!>hn0Ja(Zpf*#;rpWhsFCgG;vrw9z+v|#n(wRaaewb zor?wwf7rT$H)!f%{{4<74s-v1G;!E`Jr{K0G|YUMxDc8+EWg0cV}q%O?RzyvQxChZ z$PrB(Hh=AjCJwuQC0OzogN`Ve>3%IK=hP#9`&R6`D9K-ks3IVdb+gnm8<8Lea!w@sfZh z4vUuzG;vtGz|ISVrGMD|nr<}pu<~sh4)J+t;;{4BSK<)gh$arp?|ab1Vc~xSO&m7g zbRJC{Rz6%u6NjD4@CZ#D7Cx`g#9`?Tc0M9{`0zr{JA{eD&MlF^A+CTX4jYfvK@*3C zvk96wY#a}E{vym?m^l$>>S5+2qlv@fB^yl~7XD>u;;`_qLlcLk!%j4DSUQ}DCJxJw zuyZ0|?uVUAyai1?EWaGUA$|f)9Cn}XWgOzS(Zo+f=R=?25Pydz4x3N^jYFInbZ8n< zIRmSI`Ow5+`C1H395zp?h$arprS5!|TX2Z)K@*4VJ2;L*{5+aC zEPQUGiNnI@F`76m-M&W?hlS5~G;!E^KW6B;p)mi##JSPLHK6si7!GkcG;vtEf}MK` zGau$oCp7i2^y!Bt4l^eVO&m6VnuI0}OP^V2;;`})cCISAd-~AS!_wO{;qxDdI6L%UNtih>_Y0$m!`v^8CJsyg>S*Gy^skR54om;mXyP#cI-`lh z{0loL80Jn`_@|?(hvnZQG;x^wtI)(@?r%jChq=EOO&sR_8EE1#_b)&bhq)hio-w-n z52LAv<;Qbq;xPALLlcMP$A@U*F!#Jf6NkA6c8)T-dw8JdBE!UC;VF(L4s(w@nm8;x zwa~<2;c0{>4hv6PG;x^wUD3p0?uVWC409(eJ!GJ%hq=EPO&sR_YBX_}``ggOVeaok z6NkBfCYm_R{R`2=VeW^WKMiw#05qQ-K~oS5_2 z5r=ptn)n@P_>|xfuR#+Rf#$DH9O4tv#0{Y8=b(wh%C{wG;;`~<0}k;WXyPeQ^AFFQF*w9i(8Qs~H88-=xkop@3r#)D{HZv^ z=c0+j%!i$qk8b{9H1#m^&*2cih9(X(A9`#a_#SQO)Gj!DpxZ9t=eL6e85kI#!|-5n z*qSVm9PC^@kUODA>41b8VCRN{#6j!N!Ga7746t>bAaT$-MwmEkUJfJ1Dg+mt#^jG2e#fGIov?z!{&)#_jJM3!_Ff{ z4o{H!7O1_j@obp-9;i5SID^!~*5Sj(p<(J__nsh!GbsFF@qv6!K1duk{)T)`K1duk z{suc|6l6X~9M->pjq}08Vc`$EhX*DOE3aVdYGLBA@(Om|2231Qzre=bVdAj+L161u zVd6H>{=x@n0)mOd+CQ-K;b7vh@d4O)JWL$c4~3mO2os0Z@33`bFmYJ@4m?3`MV zI4ndMg@}lLE^CefUt90LFz&26J$0B!`7q0#9`;>!1n)v z#F5LH8A#@X#9`~VVfz9>>XFMI*m)!{ahTs=^MoLAsam^iFFKZ0a0a(q2R5{J13Wbb@vx(1m83TKcQ2>(P9 zM-FExXgdO=9u#gMwIJ+`B#s3g=5=ZtIEWd!nk^Kcr zZy<4Ge}O$g0Rb`#6t%E=9A*@(UV-spG)OIs4WdEQq98G7@edLLV`BA#hA}|lPOg4K z(3~0r0|PGi!^#z~qZk+%pveZtWdP0hgTyf0TMJPFtEWNrFGwB8tsohgIA}i>$p7f} z!}dSH$|;Z@5C)k6qG1?x4lqaz-F^wE{jl@~vL9pzy8Y2O{0}>~0#@$9>;u^aV}s~0 zXqceee*kJfEM0@_2iXn6Abl|ZgYJ33=6_g!2Ud=P^nftB{pC39-%tlq&A<==Ek{81 zgYqG|{h<4ZK=wnGK{PQiFc?4;!rEUj33U5G?Fo>6P}suMfM^G(eptB<5(8m${h)nK zATjjt<7fn_W?+D|CqV88l^0NB8DQbJA4mM@K+hM2sfU<`nSOWS2)`3h`(gHg><1m0 z12YdMeiw)RCPdnQ1Bd+&u-FeeVgucN(0xVN!rumJKdc_Z<^PX3?Ee9^A2$8~@;_+n zJ-Yp3j11r=7JB?AK+mUw)r+|72i=o|E&dm@LUh2w8Du}G{71Ln7-~O6HG<56+Ft?d z5J06sVFhJ^DLqC=nm|u~JD~P2fR59E><85|==R&=u>Xl3*mwrmeTEPoB&=X;5FLa= ze~A%DmVx05wBHEfVd@9n>x3=*BGyB69EgR`Aoqi|(4f0N35Wd|aS(m5_CJJ&X@4w^ z@RQ($gfw#b2Wms0+h2ymeu;R9jj;QaAUsU_3vt-b!3VJ)HjWGOKWIrTy8WFv?B_^? z*mxVcu>;NP5E%&Bg2Vn7LJ<2w`5UAXWIre=qT4?eYCo+14pIxkkJCUT1H&^=p$%bz zNrOvv61n6sD5NI5F4fs#0KGgQ2prj z#|Nl>Si2ph7KCB`2eCnTCywwtAPlhyIs8CVy)gZ-asgB(qPKlO=FTVvkqiv5c0GiL z2sdOty4yi=38f$s(J%rP1E4rWw;xo@VzWP?8lrzb#2XL}QuxCJN)n6n;?s&!_44%< zK)?V*Krw_3A z;9%H!|NnpS+s~dod&cnW*|P`l8RXq`H5kO*7-}Nky<@0hV3_uwo8j62`TxuR_x%Tr z;eo>B5i{eeC(I11{xLKBRAgk>qAcL>^DzU%mSi4>pNkn7wj?mvU;D@G@Dt`Y5c>f$ z%c_UWOsha*3=9k+|Ct#tehy|>`8Aqx<@aQ!l|QSQSAxtrz{IfSGc)5VMFt1UugpwZ zUzizIJ!E1qb!KJQQqJMbNi!cD*)TIfW`WE^HV@>lL@tM)U^V~#Zvn}J)M2P$aroKz`~Q{( zCWoI24EEP<{{JuTz|au%kXdBaBWB@M%nS{e9x&NoljmS4boli@1mp*hnV@)I!0^L7 zkts9}k$B!RCST#{XtW830lPN<;sh883qJgg67kgn!ZuKS6oqD>LIN zP?&=9%tI!JpNp6rekwA6%AopB57ildGO#d&h%h+(6lQ3+^o^NuA{PUL2*`~fw-&Q8 zOa%GsfilC-g+ie8iHIkVJV>sdiQ#qgKS;cT`0~sQKfg0M{CueH@bdwa!%uq#hS!OV z3?ayA`kyo?k3;ei$Xq7|G0@P&lu!TvgPMX<7)2m$M+OGSXd+rs4=QdUn27`2iU8LW zOjoQy*V%G_H()cdKqy9V^O=beT)QwafmJgxf#q0OSTplV7{Gd&HJm_4Re%g-cE|x6 z15pY!4MMSU%mqn73}b@~q_a#&h3RCOw1aBp@7iCeTH33J?wlSVjZF;bOYP%)np(aX8Cl(6}e4u4K?) zJJQU^z`#|U$G~ff;o1In-&2%+nd*PE!H<0O~YNFh>TWM+?k>x>Fm>QQ^xg&1GQM z19PB`)@LqbVPMeVD<~;qU^id}Eo_DiX0RJG?_z=bz=RppWQO_x!tr2W&9JU&;hxg7PdYM>|LW z6j7`kpuzz(Lczc$#yF1^nglgiI~d=xLarucVC`fCmAwpnC5h<_tX+&C+aO7hwHqu0 zE#Z0@L7ssmLDqgoWe(7^E5vAV#-A{w6J0tjEQW}A`N13En^WI0|Wm?Q2oilc8{@^oq<6V zl*HNYGlF6UeEb#L1IA?x3=9zVL$DeM`w?R^J52mBV<(*bgs~sae#$r%&VI%?8_s^t zxDd{M!MGgGe#y8N&VI$X8P0yqxD(EP!?+*Le#>|i&VI*u8qR*tcoEM2z<3?xuj14a z2DZ;g?*D?s{>pe4RPeEKfUYoRMlgX29&wOIz&cqYnF2W& z7$iWqhzWv3q3WWTGC&nCNTiX2fk6;V^sq88fb$arD+fphVnQ_2WROyjrOQD|K{A5X zpb{4%AIk)~`U{-xo`U32jS>Wlfiy#M9jF8pd<{yOtQ??($I1c9MG%t`nEt|SQs9I+ z3S<+SAy7XgGJ(co!4^Bfm4mE<$|o`TaDu#!O)iBggA-cjc7x=>r5f1fV5fqzsUS## zft6z-Cj$dNsAU0hWCqhBn9c(ronTF%GDA=n$S_cC%UZ$& zE^HxYl|m#SoH8cRT}#j+s2t3J7IhU&|F~cc0oF<;Q0oX%r?OTtadCqhbF3Vo7-!`G zMIFdB+%QT4_=J7gYC)G27iehM~*Z_7P)JcuVPHF;k zAay=#GuSYwlUkT&fSd&JQ!CRvZUzPmP{qXw3an{h5)_?~)X>Hx!wqxaOr|~D(6|F# zN(6~4MBIUc4IH2ftaF$^*Zx4Pn2YTCdEmkt>iYR$4i7}x0fP(lQanSp2q=((#5pbKv_ zD|i?f7=sv~YtVqQE7Zi~o9#j$(nINt~NeKg^Kd4Iu;(=yhk+=q_X$*`3AR|GN2FYm*jDZrMQBKgL zTw-Yj17naflnc=r3`(P5wV4czAuv1O0RWny1<8u>GcZ6jEQUD}I>o@ipeD?~@R*N* zL7g!O6m@}2Z496YY++!4D{&KMU|{42DG6lifXTw+{iz^KhJnEtWEP2mce2il7prTGcbTInows%G68Nr$hn~FBe2VYZ2ttd z14%DDyg??T=wo2z5Ef)$;0N_*SUKcC%vvr`Q4G4sfnT48fx!$E@QltN5`+ni@Y3=9ynx5CW^W$dl6jBSv~z_=aMuLJ3W zc^AI$^0W{GgF$gN1LLmOpg|=DXvUc*#K2$<(!jVE6c|hs3*hm!PMCoKbS(fl-0Ptk z6kFH?FoCiGT;F9-Di8uCUvPqi>v$my7ek~#P&mL#;{Tw+7hGnta)7)GzFd||5mZ1! z`f`>am$H3k0+rH&pe_jmMC3UWs7Mh6bvhWVKx$ZPnL)t<%KDH-EQklLdZF^w%%DI7 zB}s%lRH_2py9cF5h!i;PAf`5er9g=hNeb)))@Eic}fq_|!ftk;W+nU=`n1O)>Dh_He@iTCP#n?a$1_pLvMrJ;4 zZYyqURz_h41`b|`Hdaqz3vLDmPPi;LNS2G2ftdqhC`gtYs+b$1m`9j_na@U&fq_>H zu8e_!52^=hBEK2~$VCF8jOvn}!XQHhS-~PgpyVM8bu}wUjfglS!eOEaV;C63pcaFb ziHkCTjACGr0GSCgQBsf5UJ~Mabx8%V%cWQ${sMblnia`?GA2kevfPXy1LRDQ6v%Tk zGB7CUF&YXBG77OfNKAK<1gTMEWiS+G5@%pgGJ!IbWua;!xFf-qs&F%cv@kHJf|M{Y zsC70mG72&pf|7q%6C(qY#6%|v1_lj?GLWH~Acag43=CSGO^gf>rP>f(3=BFD##ARs zkO{haj4&^PEOC&S262}j!lxkD=_C9K;u;`)2I3kbJP+a;L2NJt$BQvHW2iXDQ6>;k z5YrUG1Umu5H$x6-h%=zUV~%991OtNwvO*hh09wL@Sk)yVLRQE^p2848Yq%gcD4rpL zHhK)8C{~v=kp!hUP)?B^FJ|8W@ad?!B7V=0zon{7!Xv0C0Y;$ zKv*P16KFIKq6tbuWf8#RN*oX!(K}CqWb|$tYAq%Ag5slHWr0gj3Zj_04l@` z6^wk$$N=li!4-oX9E6b{aimr1D#YR%EcOl|Rq#NCGO(3&#ELO8K$mMl%>vE8VktPW zBwuVc5N#TUr3mXGEG+pJOMYQwfUVYt=)yu`Db>(bk*5TUF0zG~7@9H4S+Whoq7l=_ z>F7e(qZ30JBLjvIkvg#{Lw5w$SjSSWVhCX~oSC7s9!rUnNuH(HY#_oUB9vh9G!eR( z7+@Rj5Q>=?Kw}CBK8VG{&=1>z2jXJISaKGqyvD4>&~;;RI!GgCMUSbG$aW~EMvS<} zQV3vo1Qyp~(Tiy#hEuWB6(Aci!wZW-bmOt5D=eigmMCIoXvUVlF*+&eHezX=f%bAh z){=rp=HWVEL-8;H_&^m@05*~gil73hrZF(U#-O0mBZjhNW?*1q0IjHHVf@X< z%fQG8Ui=DLft;0>sb5@_te;#|Sx}O%pIDq{$e^E*pPQ;*keXAO2$oCDOUX$sE{-oQ zNK8)EPs~dx%Fj&E%}dGFEiyDr)-TD=&q>Zm%*-p+PfRRI&M-64&B@FwtpH7qYN=bfz5!~RDp>DO~qLT#u#M-AFw?N zY{np(S+7Z-SLb7^loj-uGi)La zZ9zOX1vX}LuSg|*=43s;NJA%(n5{gRWL{gZzAXmRoU)LbV5LXun-`U?cz%eA=E!59B z7$O4FpIMSwmKvXIlnD_EF*6Jf3G(!Fhj24XQgh=|D?qF3Qz0SgZR?z4d6y;~7CYR`ga&%HYC?t!EbM)aXhUB8u z#1g2N!W?}QkbI=^z{t!40DCXT8Wt< zG+89)=N3S$_H;Cb##m`da!F=xDg(%<_~e|_#3F{A{JeApFoBYOz`n{fN`aUV<{9ki zZazUWG3b*=;kIS zW!mNxn3*W(rYq?B8!70f6=WtW=%#^^UP)$to^Ek!GKel#&`m4NE6>bJ(Je_#%1H(B z!4a%mP?TQ+j&R-Lk|I!G>ZaxAW|rut6(#1T>K5dKvS*QkZW_pI$tAjpIhl#YnR)48 z^NPzeOOi8mbMo^GKn7;!gHtTW|r6*8yG0)rj=zDXC`IlWR_IgW@M(Mq~<}q z9uVZ|7vhMB5^&h3R>b2@8KA&RPt8j$O3cZuN=*SLgZSVOM`v$PYRH3l3R0ke!`sQ< z-^bO_50W!e^5YXzk|0)x`gw-A1_e9%K%?Es(?8zVHN?XoOCbWXG&w&vDKifm@lKv0 z@lbtWCnqN{BxfWRK}-ghkFF5`5FSJsq#!6QsVsn|T2R@Ml30?+P+F2^0SeQ+bcQ5I z;prR{84%(hUzC~#E;{2&AdW9cE~x-H1nez$S3lPvM<359R~K-3QUEF?!A^lBPjH;Z z7nj6?RfF?ALsEWzPHG}FMqtQGttg34%FKs&2UgZ5W#+?8Os$9q z<<+E2xLd#mfx-&x59Is?F$L;muq-UyK%4**0_9|oXQ64TD7B=hGQKD^u{b}Ep*Xd$ zG&L_dl>wTfpr#domVAP32E`Z1b;TL^MJ3=02_7yvsd?!o86YD{N*GE~b3v`I)MALM zz?BI!!9Zdj>;h2TlL;~sq6%Ug$oRy9f_QLZfH@izbP#WVSPbBbv>*qTYaBx(K#4sU zVl-Hfzmu1%a|n_E%ta8P%)HDJa3p|j2m1k~m@LkYhol>bVa_40sOdYkA|4cu5LvKQ z44H|h5DzevmE;zHD`rHE3=ROW(+i4I3qffUY%y3rH0eT<4%`{w{1YD!uR2mvLFG^- z11Npurj}&nr+`ALC^ap$2oz<|avPrFAW9%9F~r9iq!w1WLIgp%5)$t4jFpm_9G{q% z5?_*9ToPZET9nTKayJ90CPnKW=p!|Y!JdG+J|m?F6f4jM3)l;gqyqOAC<}pgghU3o zG8E?*ff^7g`K3uYsSL&7cm>NQmR7_kCozDF$sCZ+K`kP%jHh3StGjCu#1oK=3{IM< z70{Xw#)IUX{P@hgw0w|R4DQa(Rtg&KexaJU>l6kC*q(jHsvriI3OPn;9(iz|61HdZ z1*pg9$S2@9nQ0zlIM=<)j(iM`+@4&Q?|~WMGp0c2GJuqU`>Kw70?zZ8+_@m~j`y7T z7(nM8!A1?i{Z~gm2baklQ`o1nO=F$TGJ|<0(>%rqt}B-vuU&P#aozFWO|aSiT-UBT zUb&1U;)0QY%Ur^uRe-FR8eg zL9Zw^Cs7Y1st1lkQ0|8mwxB$rSCCj#qG!OMSCkLYf>$-NVc@6+rO|kl!Uf$runLe( z$a=vJ0n5NjUUY4!MFvDRB{iuu9h{^X^dRiSq@<$MGN{QAp`83=6nf_ zf~=>(6bH#NLv~_;m~afS7rX`)E(T*TL-sYnxL_Kh9=zWP%!d)61&d5b>cROGD#;Al zkOJjFD2O@S5Dps2%m6xl162^B9#b5oikSfvN+1>jL)2r6gH$jx2!bdK%nVs^jYS-` zpcGY#8M6BURS+}|0WMWAgc+C_z{_tjB$ye%D{!%hgH91Z6^6vGJbZ~OvMe)$JTe!~ zW@bP>?GGXhDsw^Q8-#}-Jwdyp5L`Gb3Ws<$0|SE)WcMIgEw~J4U|^^RizC7xTvjqL zFigT>&T1Uur*Vki#3B9^hdAiWHX)>R2pjigX9T$)k*;9nyd)!{ZUcJ^N@(K{H^Cup zjYHfShdA;Gno0$v+Qwe~t3aF8;6fRtKnIuI-~t=c&VV%HzycTzJyf$H_Mw*K;93LJ z*+=i$gC+2^hQRWmfg7-Uz&vOV3d{x>i5NcsyAJFXuxbPsR^1>E7p0db7Ns!2Tb3KC>sU;yPa5K{`YB^)T@(AVCHO29Ukb>r22QpnL#gfW+Yo>_H2eK@}eZ0|UsvptCPPYCsrvmLEtQ zdBPKRmLo_Uw2Tj=7KCAEaDc?sK>|>G2g!U`-UCU&&RhYh2knsqiGlDBB=yMdRDh25 zg483s6L$7HNF3Q5*qKxyab$Bcpyt5B6IKG}K*eF<2@{_I6$hDvY(DJlE|55~`LMgI zK;p>Za|Fp8uQ)#NbopU{8-o!*g2X}gib0!7;0*^*b3o$GQ1{q@EJYH(1y%2gCJvk7^+6NY zhBmEW3%g+Ura}D$s)s>ZVB$Pb^PxuwfzS2@xyKx8PA*6>l6y*^=D_TSnPUx2m(ZiA z;O2m~pn{Bm-Q@&RzYeM%bfz0f9wrXjUkT#F$}5<-K4^C!0|UcykR+0O4nh<7CN%L= zPOp6cfwaKH-9a1%28Mr78Yb=qO+TQO z!5}G^xDPbJ!p>}ki6=qBUk$1cCN2#1mm!)sFVviPG;w*TJG0Tmlc4@8M-zvg0Sr1T z3fY~4(D>>{Q{N3WX9}9QI8+=o1Bz@;4AecV(bU7-xgAa159;5;XyP#UpGOmixgS3qi8Dg^Sx_2g4lG}kqlsUGx^p6$_*AHSR-=grLe=j;6W4>PKZ+&} z+u8F3OOZ21 z!|IoRXyOu3e?hjqGr-%WUQl8t;K<;`5;46Ne_g7#jZBXyUN^T!AJI>({lSiJyl0YblyI zY}{lcx;Ql4Zlj3@LgV)Znm8;RzM_f4!hs3e;fIBD5wv{fM-x|vhK~%IxF0ByfQ~Uh z69=6;1d_5r6aNhoWME+MKoegJH9r*>hmA#EMiYmH^9QIn$Q;nPiWxNDeS?aF%z*|i*!{fF z4hu{@Ed7WhiG$LE7BpX|qKSjfbpsisg(MELmmiwAOpwIE=0L@r(8OW&h&z%v$Q(7O z`vZ~0LFP0-#pBV$PeR3W(Zt_C#cR;S`Jv@%Ba%4CURXZuMiK|vdk?C92AX&ov^<#$ z6^Dg0?2eR8P;po|!|MAzNa7&#O+kr*fq~&5R2*i`189DEf+qe2D$WF*x`L?(9pwdz z7jdXK$X?L+AxI2_6_CV1{)LUBX(5S&+ykpG^`YW0^FarLfz0tm6NlYhnu;bq2b!Ln z(ZrWP#b=<2!`i)@(8OV9UY|x2{{wOi0|UboG;tMZ_;5fc4`J>Hjr)SMsG*6&?g;Wi z6VHK~6OJYhyYr_MO&oTo%1ktI*q!Lx(Zp4t;cyjAdS6BTMG^&&gn5VDN^D zgX{&Fe;cYk07)E_PhoQmkx1g8a0ZIK;Ei#9?=9z^)pA zxf3Q1JGLJt4mvy^WJEWJKyoKc95(L*Qx9901Z&U2#G%?5wm}&%aajB6AP(`9XyUMN zhRyH5%z=sDM^g{WkFRiue?k+7%z>?|_>HC>mM_?#{VOtbL@B!^31u1~3hl#tQsfV@CVe>>V^)T@WH1)9c7HK%d^U%a$<2;o(#2eAXVfhz! zS1imuF!3p9>S5*bd>rD-(Zpf>j;%Pv_o9iz=I>A75Qp6f4s$1LJm)r=dYCxq+;il3 zf%SJjqN#_8|3njqt#5_(*J1X8%miWBU3xHa*xDdS6WQ zd>rD-(Zpf#vK5E;UNmu7KlB6+aoFAEFn_`BV!Vf@9wz<_O&oSN@JAftKheZtiNn&*4jkeK(8OWueoo^Mht220 z+z-3k`5u~jnD{d^aT#cP%%!ie4uw}FYn!k-sS99F);)PzoFp?o3DeZht1O^psA0Bx(9T{3UWNc=IM&j)Wg%$J)qpO00fj5fe3Q&6mR51M}}=9O|Ln1@Jmd*d8m8f1uOp@c9vt7zo40Q$glK ziv*A`18hDPBo4I-EDjqd28n~p0k9wg1N>}vkT`NV02}83iG$J=Og)SSiG$3yfR@j& zdhlS*-tJFs>eY=2`e99=D^ZD zj1QwhYGG^;4Vu3Pi9v%4Bm~C9>IcowfYJuJ`a%0SLH6TvKP=yX9mN2H9&$45c9zTPy%EIlnJKdL3IrS z1ICFUAyECWbOlz7#r>dtr64n*&V?ysuz)U9fVmUoeo$Ko-Tieq?4JX*A672F3JgKqy>MnR7zm@QHO6882B`hW`4^OC z(e3xf5&j>b_B)~#?CAEp;jsSz=%8!{1_oIB1>}EFQbM;s9BMzTT?g_b2pd8dc7ZN- z1@U1RWU$Dl2xV{i-07xx}38O*#yJ2jQI1G!!8k8^rD2=Wbv~Ct8 z1}!F`su&m~p!#9;2uuRze;B_SNB9Lm7lt8+ALx`Jn0`=Pg3JKrNwg>e2{SlA7r?>R z4S@x*UhOi-|nTZKl)WpEp0>Vn*s(1BqV*(XGP}3M0wquwNl4^hr zo-!~nK=P>rgDQg(!+&Rni%bj*6Py?rCLT#>xb%;i;ioc#gJr!0L!k#FLx{6SvPCKb zgTUerHq&N4h;6!kmZ#*9DW{VVAzt#;PBI)f#ntBzyBeL0uDbP|Nk!zGTZ6z|E)?a4nN~r z7z!2t{tr3@i*h@7}$8$MNnRXkV&`o1VHngB!z2L9TV{ zrV295zsay^RrgJX|IG{+KL<0c{Kw7k^B_CJ78L=9pP!i-R()Y+T;;;Zu%(5=;U^0t z!ewSMHmVjSQ$bZ*c^T`3NQ%TYcLe9 zgxu6LMV>+a^+WdgQV$szOq!S+EaOEO3L6<1LYO!lemXH!ZDQhJ_?f`O@bl&W|KcnR z3=>)y7$!D)Bw8dfFbFtyD0V9_$X{b%XaF_8rhwEbGBgC;`~P2Dk)h#IA``>U+yDQI zH;6g>1c@gwG3>nl|Gzi`Qv;~FoT9+Uu!WJKK}ep30USP1H9yaR)G#y%-T41soROg+ z2;?V_-;n+F|1czMzD6^y{9etp@-s8zs;|rps}uzsetuzQ(rV;m*kaD%@UxtsVM`K| zgQWsPLr}Z~L*YpVh7gcBU!xsYey?^~`TsB^oS;SALC)_Jz%oGc7Tz=M4p48u;I`DkS#n6CLnV`;SW*+atlZ= zx*mn!|G|DAAe{}2&229pFnho5E)4VOx|9Dah*SuZ0)$U|n4 zRUmso_JP~l54N?`_u2`NktKkIqqe>`AjUe(Ot@bfW0!%vXA z%|~#JO&2HYGhEI3945xFcSy3)eWu>nXZ8D8D-)Cb=nx1SRfQ5xSPbp2(Cq$ zn82!;AgB1Tu&{y-odxS<)^GwJX9yx3KqC-PgJGsY3}xk*3qH^XY#18{SSQN_(0yVM z<|NRXL9o3RtV~R*jIcY}nVCTPAS?4(S(rc#UFa?6tW2QkMd-!mY+xDawejpspaogb zJK8zGGSEBPxtK07gRYH-*g4sNkpXfVr3TxPW<~}EuHrlfwqqbA3|u)dCI?quW(ot_ zagbX{B3d1<>Uc3=Aw&`WT_Nl0$5pIuB->1l#@F zj0})T4z`CNJy7-|5F2#MJp%*V`#38#N zGbnr^amX&jypolH0TPGo!ptXF85kgO$S%tKh?Ri>5{K+!U>QgpvWqjbu`w_hfD;nC z1hX_71A_&GBMIg>KsZv&R&1b?@_3y*{TWz}NHa4)4mJ&7mxZ_h>@+!M2T&@9Xi;E} zVP#-|I!%#zI_Q*0h>Qx@2T-SJf;ln}87(je>P~GiM}-e`^#r>fm;-gRKC>Gu1A`7< zK}itdEea;Zz@#{sgxm@*31&-yNog=C114p`B^>II z_1s5T7#M^=`QQc%1A{P}U|{6{WolNACoBvMBA|vmg9b;U9xDR_7bvtjl0g9n$wnM0 zAYn+>;YbIGL$WPL7KjbWsvJ3>@Ka!5DdnI-4V+M( zf|3R+2k3+vAy94vMVc^}0J&8dl%|EjERduyh+tsl0A&HNUqGoGq8hG{ft6zdE7Yr? zbPtgRr8%%U46GdMVbY+S0FegiW?7QEya1^IiGnf+SPcU! z2WY_`*!iHm0Tu*XCL9PV+*vt5=f1FVfKFNBFJ%Hn2B-{T*SfEX>#2s&T|Y_tNaFOw=etTOO}R0e!SsU-}o{!Ad>u|O;h0GIMmdji2S zPcE1LX8xwufLf5b;NhpmW0@?8l6e956Lc7~|pWr;Mp^_A|z8IQuzcA)Nh! zu^i5R$yf_#zhZ2LvtKiI!r5;a`{C@jjG(nd5I4MIoDCO$&$tlI{=m2#nLr1xNa=7gFbIQ0 zA<2L>ipheLfk6l)5(tt46ESQI46tkrl7W~I&6EsM3bM2uq!c70>&Ee2T!l}}=l;bLHr(!nN|!eqe(Er_B)^59YpYyjA)plm7(l3-xvNaSK*;0Lvo zAdbvnDuU^p0MZH81S&Ix-*PZ8fL#i;Ka*(=Oyv={N>E_}2??-8pd5y*CyVIhNK_XJSJ<91Sml>u;w#?R(U`RhXN*dZcsL5 z-#xtQ??-WaR**Ggc1Ji9W0x zpy-2yd^J-fH?%?Hz*@_c!~^qq9kP?^nLtG`v{Y;WyASH|Mr0>7fjN*i3~MvkFsPGS zm@;@^Z7tSTraT@71`ANd#RUqiG%yK@PKcY@nBH*1f@~&J4-Yg=t>R%|fJ7EJd4S^% z9BkkKRbZXN^b_v-xyY`c2QI9kuAdL)Kn{3fT>#bs^~yr9j06KKM*|Pc`bA72Tfw90 zjMa>cp1cf@)6*HN89|Pa%`9PHtY!o`MGh2^jJ4q6MqZ&Hje)TNtQ_P)&~YXFB|Hoa z5QEGZ87tuinL!LHDPdqVV+3_X7(kPg42&*dlNdoKg@7jo7+oL=K{mR8ZB!_!EMQ=C zV|)&(@j!PHFuH>aUWiLP!1^IB@rSwuG#t&q7!1lJj6ZoH!Q6322E}l3#R4I4v-cVsIZmD8AV+}ogE1?IH9rFb z{{wCY218IBg9RBF7+@PN80T0CFfeF!L7l5L4a(462xF{;F?K>3urm?im!ItAXJF7h z29-62*_+Fl9O*cj$oJpaZhs6r>e| z`$QQ)W;22`n1KX9c%3K%16;)ss0s%L2Jj>VV+1Iffs}zTe8Iw;N?}+cia<$35wJuA z-t*2F3Dd0s${Eq%i~&kv$!QFXF(5NQrfPuFTP!TSX(X0bFfhioKo=T-ry>~RL1h9+ zErgo@vr{9JfiV$g2YA+i@iIsm2t&BHK}-;a&IvFufFe{~5EKxBOwFL+U}|MxfXm(# zWngfI$TAw3Fa|K%AmsjwGB6}U0LN;NLmoY6=28&~{5ERy+vn)&)@%tnmYyj9`c*X(w z1f&m?c|pElVCAS6W?1TRz{yx5e5dh^>7ElJ&ERy08m1lSirylFH7ctrityrW^saR zE)Wxh*MJDHSDQtl6IqO$;HnTL;Rq@nI3e{W0|SE-s5;^X*Nz}rC$Ot|;O2o>7clBE zx?t2y{ERZ9c&jG3LqYW>1NeOPQc(s5H;^@q3XC1#mJ5=97K$O2ji92zgfWDfONG&d zF_;rPCIHe1igpf16UIPL{D2A!2H1vkaKtfyR{^kcfIJRfQNvZeSd@VQgu(3~23C%h zq6`fDpiUL&CKU#@Z%m+`CMXF*6o7Sc%Yj-+AU6nuif;xlkkve9jG#gZtPF_&x6whv zun<+O8O)%hjnoSO+rwH39+Cp(dWaOLAceHJA@bGCpmG+JvLW)|;@cZ!FUTpN>?sUl zKr9B$IzX+fX9i_Xh#qj#1G|;Ai5ZkUkc7eK*!zOa<2biQ43tm6C%G~TGOF?kb2IZv z^M#5FG75+@FfgewaC6&nGxISpFpDuT^I36Qb9)LiFt9+yK|Mfz25ztz8;HTcz%IXD9pgX!3)vG>M3l&&A`A3m*ob@a`7@Sb3hCQ$#O##b3+vK2s1GA*+?=l z@QT5eF);8!^*~MJS7QLVNPvYAVX2@712dltF9U;+D5JWhr!dGWVOFp@5l{sw3iS&s zNT--Ml1_1i;S3BCQ0IV^Ns2OnjACGr0+|UiQCg1?93rghk_uqo$gslw%D^DY3UM=7 zvz!T%j67)nlY$A7w4xrPy(G*mPhp5@N^n7Lki`%|WvCV45Lba(0p_SeUBj&|Daa_q z?jSMENfP8rHG~c(aRvr;gdPxA1L_QJPhk*OQ?JK$21BrnHaBCa zI0J)@34@_91A{Jz0%_0#X#m*=(!ju=4^}S0z+k}52ohyrFw|o-6b3OJB&I_gWCW1{ zxy`tAvqHks z5gO7^t`pQCDAyV4OjZU47f={N109@aTtQ(Ca;6*9YfwGzkl=v2+5_$saQd(T$F?V2 z5bQpPpck?rM93Q=1oDH4Bt*zZj{%ej)g?g!3=F;yE+}(?RDrS~sKh|QjPRx2aA6jP z&x`@EgX7_%SQNtLpbSQaKqw1Nfy@fTFbggXWiT>;76d>!5Q>SR5Y}~p2w))@8DQ6T zV3C9fk>_fNUIa;$DHvWr=!dYd1P??4K@y>ai2*deiO_MBHbEQpPz?8T8sgD}eRp`j3?V8-I?!4(RictOTY3xd%%rLP4Bj}kK`mqUOQ3-J) zg2ZA2j>;1=FsQ5-6noUR1fzCG_#DE*5nIHhB8>7Ai&?}8L7ajhnHUT)q8M8?MCgF9 zKp}|fa_piI9S9O@WMWC&7$FKW9y8hy218g_jAvp1%^E?ZVI(uCBMjrfXe@d`dtM+L zK~S6du#sDsR@fXEj1QX=g7HyxGcdr$qha#s=E1~A>7f+@TbLObm>4#Kwg55y=Hq2x zWCZVK0d0xGvL=~9KO;XkRlguLr!rB$xF}gaH7_M6wYWIGxF9h(RX;H=r6@l$MK>=c zTery2Fj>DOKR+iqBQZ0tSU)kbC^^H-L^mfhue3rJrqV>uQoo=mHK{Z+r$iqjRbgQk zZ)T#OlbNKSo}7$bpFT)mW?phmX-X=oZYs!0EJ@2R$}NUF*T_&Gj?5POD_LEC+bOHxu&)ATYJm>3v}OHwlPO7t=qm>C$75{pyy zG8kAG7(mxvg9M>Wh+tA?K7>(Rl9-$gVU}bRr6#68*!f9W5JqldPELL@#LU#9B8VUZ z1MEO!1_tJ*jEu_67Z~)I*VZd2Gcd6*GEZeJF=TG4*HdOrw^0O%uqm)HPhr$!ZmCyb z&bMJc!k}jl5@tTcpvTOkr>M`w%)rQqY~~RrMn`2|eP#_k=I97}MP>;bka|TnFr~nz zZ>z|hqL7)OFRduAsIIRpuc#!i$ef|TT&BmYr@+LDX4*{#MlT~74UiEamvHGZKV?v0 zo?WlN{GCCMxwAfkSs{)21cO(Qt%DNt{Q3w3=Cceo%t8tv4a|KY{yhdSFlS}Gp1wZw zRR#rSC%s4|W==hIu&|03vrrmya0FNgEW)Y4rUzmuuo>8bXiEkr7A7{Zi3)5^>ddq2 zL5`RQc7$=0I%Epxn=w~`%5FhI{+iHQZxKbIL8g_)Sp1Wz(BGIJ|1 zmnkrFDKM8RDCk3IW^O&^as_>*MtvqmG##BxjC#s)O3XS6w#;D)%qj}Z2{z1JdWMQ> ziXf9Jz0{d26`1)Im_xvl1vaIMU^5(p{S4znTzvz4979|glG0O4iXk_+dxp6B#ut|` zemltK0q%uHmTF*<&O=T!a&M(a?0jI`z_*L)8IjM<744~WE^V8Bm>j%?v64Q$r zl5z`*ONuh{(iu|n^HLcy^GZ_FQ;Qf}gM#9HJe}erObsjKE$k8sr$_>H=|BacW6C`hD|Y z-#YvI1~`VqyM_8W2Sc=i49+acEK7|~Hp+wug_s#aZoY?bVa@^HET5WJnwwgbSdy9o zu_?789^^c*;h9D$@oA-b$qXO@8kC_S&LN(@t_;aZ@rgz049ST(IZ27h+40FGML7&b zscG@h@WNjx2D|vciaY&+qWrAXQxssF*3f$u29DO(o9=HLnz6{Alsfi`25O0Jz z`h>cIVig?5>8U00kVplsVg(l-AUUu<0-Qr47$8E)xdjj}fhAyR1*EbxGq1$hD82-4 zA1G)cHh}^PNf#o73yMH-3^ppoC=*FZK#-@eXNYH*D>P=nPDJQ~q%N>NaAbf&yu{29 znzWMha|;-fGV|jz^V0I;lanBh@N_hVMq+76a!F=xDkKR(jLON+OIH9BSW=%+3dDpk z&tOj{A6KX;1<5&y#l=Xz^>c$L3k`9zfU1F|>)>D?Na{#2%48_cC@o3JFVABDM>*IN zAwJFwWr;bZsc_?5f*m2IxkiMz2KhmP0UXSEnPsU(#fdpk&lYD^rN);qKvNCaG{?{g zkjnfdP_lrV=l1`o>@lbtW*Cr=1BxfW- zicr5$Ur;d$Ey%!ywrfNHLupB60W`IPGD=EfNg_jONty*Hl=IRVk{~6zb5LYJh<|)h zY8tpakB64%1<559AV+|`;qL0^8szBX8RhB%F2oAT5_2F48o zcMT4K81Lj801X?k10ZEFq*wt57N{U%$W6@!RY*w%r6ow&7wmh8DG(##L7@gN%V9RT z`nh}hxx&+tzmpdODEBesrB;;0CuQbCLL#*y9&8OvS7@+n5V$ldE`b=IS`nXVl)_M) z4GO%ZOn3l*T?mRGu-lRIJ;Y$NaPsr_bA=lSPOuP#Dj_&P;f&Nb5UwZQDuBl zYGQFdG%nzEHONkoYYR$C;!}%?@*#-{R3AI}F%+j3mZs(gR)#MxVFv&nFui(;tEhgNh~Oc2d8eo_|1MgGnquBiDP8nd84jQ4l) za&-=2$V@ba_!it2LNtOvu@7mq>AM&P^@J$WH-?Isf?!oyUTQfcXd$M+0|wOU z3p0jzIK;;pWI8OWKs)llR)AWP;Lw9Lm>|kQWgOg`P)`O>Yk&dLvw5*gsiP@G=`YU-urmnP+;G8BU&9xR(!S^;lr zfLsv|DSQ~fl~N8U2tlo0uu@OI5Lb8CAczAYg(Sp}74eWjgt^w$*~J5rnxSO|Tp}!h zfx+F`*-Amf-7i!VcXbXPH-Mi-R~5v-QX$7E%_GkMIxi8nz!^O3;>ai9GLOlZ>z*SY zgCn;alxEO@pDh7h;_S$$;53WdwUva#8&G9})pJ z@DXUXT^BBEgYCO3vL+o_qx_8+L zsL=*9wYa2+K`%K!H#aq} zgh4Maza&-9-7i!ZT+BnwPR)o1w+&%2f|UmCTW4YT_#c}jGiWFUiv%-hSOu#%eC;NR zEHh}p1w{n99T1B+=sYVXByn*1gX(2w0Br$-a-ftvn8p+b2{S{sB7>N4%mZeD_r!o% z$OJQFmpZZ#WRWQranNQFCM0oieue5}hHQ|9@*ot%UTz2njbvtkE=)!ehp5LC2Pt7@ z0EH5Wg}@N?nBpK6%#a<-ASN6`!VSDL7%m25Ff%|eHiQX4X=d>Plo`I81*RH8Gc$lU z1wlAa60`|G2yzMoSOhja54y`5RwsZZpaf{L0h>7JY<_IwWuRT}P`$_$=#D#V>ZdU< zFbKge!ewB9?>hpWC5BBs=q^8O;-Io0n>c7c2R8AKINS*;Foc*8=^0kPfX3{q8w6Rs6e|qU?H>`09@>&RvcgS^#0az5?f&*Iw zvl>)GAp}4?|4-^leyAxq?2;#%oqOc=EK!OYm46rkPL3b*G z&i{f6!_RbsnFG@gJ7x=J4onC<7#pe9mP6sG^0M1KO((RmK3jdl}t5u)7z~-E#oR9O!X;V54An3!vKz z+9D2805TsG_Tb%;AOXmnBm>BNWO3M?05J8ixB+cG2Wf+;hl%?@%>mhq?5_+YapZWc zK@taVP6Qdsz`)RfBo1mfLxmY&cg}#!*M$i(FfhRG)&_|qn-9BF8YGTvKI~3ukT|kC z?;zQWY|aNHab$DA$5t>fFi62poq@UumhQ|ML3@j#g0S-o7#J8pXF7uSmq4XpegwG( zQg=fnV0)9$)x*|ag4Bb~$Azc{oxB2JfyCk48W|WEVCf&-ov^z@LFz%LQ9yJvFu=~5 z2E{va`iI@23W|4RanKpBAiW@Skn;tsB?h_+7}iGuse}0uBo3<0pFo?6uoehR9CkMe z%r2OC4>aAwS`Hv_P;0>fDh`V~kT^VzBc0U?5(nAa3rg$^3=FU^go$r~y2lRWSnv@_ z4B%ErKIq&41_sEUCM5ATs5(%e4a9_*^9y=VG;DzkO#Cm@9MIXm$m%Pg?nwj*BAL$y zty*)@#JQp7!^$z3`L@vX3cKqbCf)^&5ZIlQF!5hd^{~5xVd7~}cf#TqCcYh-SeB!? zClo5a2~B)0)SY|L#9{g56q@)!XgGk*&IL)q?7a>(A9jW|One)Vl2P6eE#|YXLkbug=#0{b0uZAYR8X7)^XyWsr;T(@9J`L(l(3zsh_QLL* zD@RigyX&U~OSm*< zmx7i{WoY8%(D-dc6PJU!vky%i7LT*h#4VxW0J}>8=ALg*^S7d@huuX2yCWE;{w*}V z&ZDUZjcb9z0ank#)aOI}^%70}BWQeoLlYN+`imK=4`xm=RJ{zEcoZ~WYodu~K+Q2j z6JG)qcSaM3wa;L80mJM~goaxzntIqBz*%VGuzXRDCVmI%&WUK^&QSNPMiV!Os^5Vo zeh})OqiEvb<1!c+7~Z0ZFNK=(8BIJ0T0X$;*oFC*6Ds~6O}!t~ovhG&15+Ocbq_b1 z_(EuY6hsq$4mC#{O4m#-vUE*^N}!2@j-&#qhm}Jx z_4&~7hqWJJ;xD1)60DqtiJyeV2kg#Mn0P4EeVJ(X&V=$yp)^eWIjB1u(ZmZuj$~k9 z=tUEU-E{~v4`xm=R2{4yfQc7C-LnxY4-<#oQN0&Ud@nSe!0tkYsfXQhcoj{(J+yp# zh$fx{b^lv5@g-3I{zMah4z-sRY97p9(3zAVqXf~!L!j{`izfaW8ZWTBP+{gkPBLU* za70sY1`VGrXyTwV20`}1`Y|wbVC}ARXzFXB{iq7^2X``=RP#cNfCka}63kC1~pHq2)#+nz#eh{e5WSusaTCqlwRl#?uNk z@u^V$RwxZ~4fzwUTE|&_(8=% z_JYPOL1u$+ERs0LUeNjMAn`OD;`wOe_d$vo7#J#{;xKz*W6h0FahSa@@d-%cAbUab zAfslYiGxm00*TK<5(l{-X3h#UaoGIOMkH~N`5w@8z85MEb0=(E@(NTOp;a}>OmWCKK8%9VeYvGRlgi6 z4pR@CZ`g+>4w^p(nR6W~4l{=r+Ru4_CT;)~e+m_cnGZ9E6*`#<6NlX;DTO8uo6k^3 z6NlYxWepVvxd$|E4;!a;g^GjBhvhAh`(vQuF!iu}orWY1N>{M{b_tqz0JM;(L=p$t zI~^+Cj3f>+2Xboz1H(i#aaenLKAN}=w4PdvChiXv--9OJ1{FVuBo1;9tX?>cBo1=V zd1!fi0ZAOB{w`Gf7LqtfJ?K)EED ziNpFwJJ7^I7sG)3dk0NC1DfAqOJv~ggo>*`m(IY%k3hwp(8SL`#iP)~1EA$b9h!I! zRD2qmIOr}2kUKY{iT6O&Uqln10Tq9bCJr0_Wrv;*3UmJ+sCpGNaoBi*2b%Z;sQLsn z@h?#EDM;ebA_U}ohV@W!Q2GI-Pgr|>2bwtOAZd_>y-;zGJ3;0^vkSw0s5rG685l5h@NdA6B2Hp^3xR&y+yLLH2_D^%B}XuZN0*%z=6l?5}B1ahQ5odAJZs z9OTYksCzb`i$mL0`_aTvlmug$wI|J=78)4ty==QQw>QR4l^ItK6FMC2Oa1LGCvwg9LfXS5xbv;mTbiNn@az}AqUi^J9xz{FwwP*}QviG$1pVc7a5m^d`qGl1?82Fas~ z!%lF4iNnl?^*>ZTbBhBhpoSX^*>C(K^x6~GLFIK(B<#KC9mGB7Z})|J7` zfr-QB8DQcpPS5xy(8OWk3G1iA%z@R* zpi>k;PJoHS+ym>s!o*?yJ7s8p6ebR9FTwh?FmYHoxS^?smBX-kRG500Igx1UVdY^8 z4)Gi`@%13jFfcGwpozoEy9PAzGf?&2IK(HTiNo&do{vL(Ihr_Z{p%(i;=9nqVdX5W z-wz8P*!aLbH1)7`n=f&Qe?$|9a!y%rBCJxJwl{my3(ZpfvjA8TCF!#X3r=zKdrME>m#8;t- z?|`}=b{9O%e3XdFA-?@B88?NCJvhihpCr=s@FwR4-<#YkHgf%$|>0R4NM#w%nT9e=0GKq zafoN5i9_y&W?(48Azp_j4ofFJIK-!*iNo>*Y`q@L{V?(6XzF3WfM=^)T^9G;vt? z_u~+sjwbE`&5w(4h_6Bu2i;8%a^DUd;s?;gmq5*j&G*9m1rxuFrXE(FJj5aX5=~qJ zn%}?R5dVWF9syO)4(+GH+yfKmM-zvwvy{Riu7oC@0ySS3hqx)4_#CKuXB^_*XyOZ? z>cen|$DxT|fvV5JAzp$e4qFFXk3$?buL}z|SpJ2LTf@XbX#|AVqL~BBFFVo1Vfo@9 znm8<-pG6agrE}Q&5SYENaaY*-5STbD-NMGbVB#B~>GLa^`7rUnXyUN+3AyhKG5!n_ zhun6C5Ql{iZ2TT(FRcA+0v%9*iSt9<0~^Kof_BKWrTe%p3)1yf8z@$zb9dP;ovS;;{8L zF!jbz^-5^!Vd+x~O}qoD-V}$pEt)v!!cS0;dZLNL(kJNV7?3>7J+Q6VF=*;x;wfn2 zuy$7g4sqDJAei|!(DDa#;U==ZF!63QbNr#|r=y9(%4gX66qxz2@)@?T0wxYCS2v@X zvm9zZY`zPo9yY&u9Zfx~|NaO~9M(>N?I(bl1IsU8(bU7z4{RR~Og*f;;s6c4Ahm~K z=>c@RByzYdfTjm&H1)9fRYntsg^xa(I4pe3(Zpf(1#JB|%$+cCZ#4C=@(ng02vZN6 zx5`6Pe;Vq3*gPRjJ!~EgwvG!X4r`x)?j=PI2iSfU*t&a|dRX|ZN3$2!-hiz~hN<5H zbTlo>e}E?b0IL2qnm8;xVe3O-?t$%dfX!cl#6j~@AismK7<66; zCJwEh7!+}cYodumi#rC`JQ&Ozkl7&YkER}GK5Ts&Og&5-wm$|Y4l^G%4+auPo-c!~ zAv!dc{SgNYZQsfYO&HctrhFKn&^q<<=sdXPA*9A1D!dmsxdGy+`%FK1Wg=SyMX0~6;( z6Nk00K-a8-!Vjh%Ca!>{9ySlCheO;9O}rdrC<6n7BMx!U9lanWFneM9-eGtCp^L|$ znFHG=oP|TY2u&O|KGusS4srtsPel`l&3`SxA-)1l9A-XjUK-|pm^tUr)Wg!}O*C;> zx_XEv4og38(8OW!`vpxL7LWhY#9{Hs4xKlKxf2#&u=#VCIBfn-3r#)DUNbat*u0V* znm8jq)sF!NWUnFBK) zwr&un9u_`((A2}kkD!Ue((`#7;@8o{VeW^`=fmuU&DZ`#Qx7X|IiQs~Og&6o08JcL zp2*-3S3whp#jhcnILw`vXyUMW5a=)o185!<`P3cgvMl&~Hz?16Fs!};xgXlJ0SPm} z%43i?w5S7%!^Yb{;!r1m#bNDekT|Hm0}CRZ69N(kr8k&3j0TB=h8SUXz}g)!ahSVd zG)x>e{s2o~Fmc%YEVBDS=EL}~{0&nN^AC)MiNof*Ve^wPaag>-)Bz8)kF3s2biG0YrTIKtLr!o*?e z0M@^UiNo?K?EE;GIIR4Ht+RuP!@?OhPY4nR#XBsXUO*!rCJt*CeLxe3l>@N#dNB2{ z@Pe(=fr-Q73ATS9CJxJwuznj%9F~t@{eGA@tek|MCjk-%r5~vC7|_=bz|M0g`&;d{==c4oeTPekaHrP@Qa&ab)+y_DzG#L3Sr>+=~^uz6E492*c+6K;p>mfu%2yII??S>sUbI$nJs7zk$S& z-2z_dO<8nVN9f2K%bp8~K4=P_kWgfbF4WJD%SUCeadkUluE?$4=Z0_`53Ak>7+u4h(FX%=^}%i zkg#({Af{p34{9f23;zV@1|H<}531|X?FXIH1PW7VaKo%&sDvKuv=&roz(o=EgY&>RsvlVl#D?huu|c>Asvo`n34rPco$Cft z2g5M`!}zs0;_m~N@B?KUhOi-| znTZKl)ZEzA+ziZ0;Hr1^abp5C5Fti0Ffwe%$R8l76|h5_;Q7>nL7zc~0c;E!0aB0d zMvxdb{GXZeqJ02E;pbq6m0zP7SAI`sTKTh@d8HTw!-UVwj9Ooq8CG3oVwm`YnQ7H` zX698tnORo#FffD&GBAkL2Qd`BWn>6>z$~)rA+zYJCZ>j<;vn#y=~Ltb7z!Ew{|{kc zXbAco?6C4{wByR}$xbVORy(i!&&)XS0CW5`kiLUV3==nJJEt|NS2{VrT$ep*uyMgQ4(&_A2Y*GkXsTM8MeqXF#LST z%&2g6T!9)_Rt0t`PNFf*?D$L#R)zcT~a@5~Gg6Brp9f*Kebf|NKKf|3~+ zCZ=#h+{MVyaOunc|Dd8)gn_}~Cn&5K85qDc0}GVT0_Af+`5aI_50uXX3>4>OY%DBeNwpTz9&^D8sMDsUReW?uPEo8jkYX2w<*m@G4N;fx_{DF~iTp zLJmJ4FoV=du6o2Qp~b?`aEX!F-(N%t7l?(&HVR&$YlK2SI?gsA@hzeRynz-%E4hdB!a!-N(FhKZnb1BwrjeUP*x zqm|6S0BRP3(^t<=NII@&cKG?(+~H>;v%}ANCdStX*%(4l(ss7<%HPEHf@@ z{~@>VsD-I}aDBeiMJ(!?xETbI{h9Oaf53_l-LGwgis%D80`D+iD#a2CJmehL0 zEVb$}GwZ4+&@$w}pZ_M|0t{Q8$~pXG6#%7AkUG&-kC;VPJ!Y2F0;yZTV1Er1<`3BC zOWpqeUwoM`gGsp%!7 z%}4GlSM5h9BmQd=5VyY8)oZGcdm97QwB5+yDRKX#xx;Rcs7f zUD+76S~D_iVPI?s0+q{Pe;j6kAq{*EKdl%VE=}ih_-VtW^j6aYz`^gKxNuvb5NcXTLntHAisg)=)tG|CLlL{U&Jsmo|*A= z6g$JjR|23q0hD*eS1Ccu+Q-Zcs}lbH-`f5Ezj!m3!_UQ^LFFqfoFQQhG7lUc?DM6X zK@b*7w+8-QO$mW6aNb3Lp;tfm=mb;i7e#(n56f$rygiL31`1xOmVdDWFh7geX z4`e0G|BEqvTp+^`@|}-i;{QB`j~NUMA^-Cj3N!f_LYRahVFWARzA!UrU3rP!PTrUQ zLqK(n`~UyqNB{qa)?bkH|A?6toDM*K1-Z@c|9^38etHUxp9RnUn@ksS`1#b_;b+wU z|KgzZjjSFNUof>GH3#1PH`Rca2_SXIVWIQxe~2Qeo?~~|`MpY9=zE>RE>|*%$-|WY~|KeYnrB*RAJN%4dclf!W&0&Xljl*Qd&+6tNH6ZtZ;>v-a zA!NZPNO}W_gY3|~3u_ZV%!Y~QeEc8s=pVT51vUF8GI*3@DMKK27btE!;qihHYx)0Q zd=aSJG6&WBOyGC~nGdR4ADKJ+Y~W?s@{|3e(vA?eYn#$mED zHv_1tJ;mYbe-lu;Tlo)^rleMZ+8Z$UC0zNx1;hrm`#^CFVqdxZe+#Hw0=Wys2e}92 zW{{ged=E%I+$qn(V5q>%5W>I;?$S*Fr72`RZ=U}T>HY_)+d$$Vd60gPd225qxs|zL zC#c+IftDR$`SXyxQuFV>c!QY3Pf%Ea^n>ht@aKQXV`zFoH}~yXh`v0qU&Xbmpz1(+ zZ~p%;?!*l-3#QMB!(kH4O=rIT4~hTxUtE-dVZv4>hKZ9w>6d|FN|J@f3t+|(K4fQLnDCr|VdC=yhKZj*ZBh-@V$l9gD^LfDfq?<% zZB?LtNHPOMuq$X(5JU%ty81aodqNBhs#?XW#R~pz3aZ5l)kuTPU~wxh2AGhlRIX63&Cw?qWOztWD2QUPfyhC1F);Xr`uKqKSwTA= zs>KRmpD1Xk=AEup2E{nV14$mmsh*GlBF$dcCYHOrTT*SxL;w%5D$3RLLxN=}j4z9e+ z6b82AAh!yD2SeCSfY>4s_DOkm1_lWT`xHoA0kUI{Wy&tN>FiFRU7cVx>@J`%gxpud z?h0aaK*ZfZY>4^n?jSbAOm+_t8)oKIJ|?J(CD`tJGciESVS5O&7s`GFVzYqFWP7}n zg@FNLKHCdW&5Eg485H*rlR1T$3)x`li&L0+ z0viJZBz zgMk-xV;swo#|Wp%LR2ew{Utoayz?eA*;R6$9&=4Qg2M~@2 z11rY@76t}BP#$IF0F@{FEWAyO)vVCFXBfe=;7nkW8BDT(Nywo^Y+yD!nB)MHoM4g* zOmc%s9x%xZCi%c5KbRB%lY(GU2uuotNf9t93MR$Cq&S$A0F#nn5^^+>G?*;|CS}2- z9GH{`lL}x`5t4eiV%u057+5(#d&~quiEjZb1A`EpU|{6{6*#OMYgic=gh2yx3>sXC zpaZ?RK%vc*3<@|%_T)+d2}80ZS2{=>lI6LwKx{~s=gI+vp8^9b2Pi7Qxs)q+Eh_^9 z69;%K5G=x-0$QK|W^z6SB@I>%Ej9)QK~OFSMVb(p0J&8Nl%|EiERduSh+tsl0A&HN zUqGoGq8hG{ft3Ta4GSy{O7{?HP?`gq!@$Z>4zdemCMYLBq(QnFSUEuF)Ph|B$_Wq| zkUFrnLLd(@uyTOTrUe@g${=7h46GbiKt_Tb2g(~@L9k^)lAwtcRu0fUCRPqUb_NDM zP^rMmv6ulAC7=?Hl|vOI3`%~i9H8PDycUg3jM0W2n&&lGI~cp!p?RLQlMz&=GVp-z z{ABH71lbA6SghS(8At)b+RF&?5+q}>_A`PG{Dxk0#U{=;9cHuwt1r`MxY2%)>WZf* zwSwzXjs)a7EjCHU|LhEq%f29fs$~Re z;=9Yhz#zuKc8^h-lYv1TlyTYaGlJp=JSxrhfbkM+=8x?mSPew{5u+j}0|SKpm{A?h ze!>Vk%@iX3l+hS2{)`cHT0KPkIio#X`~{;coc)r~8_s^k2-+oSl%4w_|ip4fwHmCZji^3 z?9XKS3sb4e4f75te?vk7Y!N8Y3nA&rVgg+x0uD^j3B-_c1Z)LJ5kw={UEnCSU@d0a z%MFS-P+?NS1TLQ-`Lz@x0pXM}9p;8rxUA)14zygTU^>YSZ);XEo#$p?fK;ojRZLg8 zL2XS|4p3aMa)5%EmE#5{DDsuKKx8i$12m+onLv&OJIR5ymMNA8=A=3%Bq!A~fyymt z5z+v5A1DPdFt9cvJE;lGfmHjf&0xczPHJIF=7Cl2tgTF$JPZsL46GcWXkg_49ZUCLz5%fP^sUs}Szx{L{w?jV_vbvalk z)PfaEpjZ}whVM!yHeOJO`|>g{@b!XjlLED{7>|PUFyj|=}|(_}$+fHIx{R|^bMU=!{`On419;Xc>|X|T%s;35`c!UKp2NqG#6j~GG9Ws4aY zAA`$mSx{xc_ylYc11rZtaJe?qI`#s zfr0H8h@7wTg^z(j^#vaT11Gpi1=0+kxP}f|F#O?XU{D8{r-WgaI>;2brLd)z@Y^r3 z84qf8fUIHor@+9V#TdkBq{SGBuw9EWfC+RpB?Ig{5U@H>+Z3eMMT;?zsg(h$2t|pP z0N6ODW(I8L!IjD?GB9L-l?F0(U>Ibs$iOfeEE~ksj@2Nz^FaoITmw=DaWZH{83SV| z>|jZdClf#fXravM)aC{$Vdw+f z5WxJIF#x(^jWHWk)`BIGCfyn5%!Qhf4KsrQVjUncyG_ZA-1sNC&3m6y+KuQ?{ z!0R~}3qZy)211s_F_waOU~MRtFbP2%S_;w$mWEhT1!kitwGe_>QUy{9v!n`SEZmZM z5D!ylI@FSSkWR2P#1e3-1Mv|)nG3a~1*8;aNejqWxFww+9!M7mBXpjDTG9#936g>a z7j$tBw3-747n3l=Cw(BLFiZMC#=tY& zSHkZQWnh3POouD91gU1s05_1CCKf=XGZ}w@mR~V2AW9Ta*3A(C<*h)bE^rypiX=N< zk%6HLDhn!1z?mDKSFejPFdPQUhJ#CpFh)Zy#!ygB3;_{A;6f#ksT0H4BZ>?Rx4{}w z4FnZA!lEF@pk?tM%<>1>nIL`MWa?`sULU+L0@;UA4D~Q!6t=sm|7VaV8hG|H$iLfz_G>30ZMj|wuTs_nm!{2t7OF>)igK_iZOxGpmb&l z1EV;T7#FO@76$UMi%aBLlAaA*~ZxusIMl$ZR>VnX(0G z42<$jAeUM16=Q(h?#!sev=!7tvw`Re0Gj|Rqc4duF!1H`Fff3RxM$o4FFF|*7-YbW zJO&2FIiR@$eQUI&RoBoBc4Avn1QVKze) z9|X1WK#Fxix%MzD)9R+CF)$thIR_+X4Ks4> z;|WlEm3iWXdfiM0#*;8R9bpH4g4BR8Fa~IO z3dj)9SUrPt3RKv+0LG|+F*;z3DKN$YCmH22ylj zYG-f-^+3R`VnAFl%NWVDQ;LB>eJ?KqgVIK5;43YKGT?1Y*nS-6lTaCF*o_X(_n;zh z=LIS;FvLiKLKD(vV(LN)>T)Fph7zzOxG;iinxVwN(1S%B6d;(_3>4`6CTD#Ac5 zDp2ndbOW2Y0$DM*q6z~01JCs z!0KT&C9*8YMY|!g$gNY<06D3IWFAPz1F#OTB6wJX#93uPp1@2ca7Fi(7#NfxilEgt zvSV1485kUK%7QFNgUDhy6>fpHG6O>=SP{4`4+aMg*r8~VfayqRlpD&zS|#T2#t+>1 zP-O;&r(oj)!C4;^naDLdsEsBl3kn2iOhQ#b>Pu926exq#1wqONNEZa9;ss^7FtAye zZiT0WPOt)~Wyrx21ok<$1OW=ibzp6n=E6NXL79Q!3`7w)WufLPkkdXwWRdLz`w#9k zaXFCxf4B#RYE+0-`#0om3Z6@%1ZOWiXg_}$VwidPA^jj zTCzR@)`-V+kiTCNQUr2>vOLJ|P$$6C0BUx|bOT6dELl21aoPmdiO2Pz#JdQh2srvtcq1sYpGNO?na@yLNjE2qfmDK88baW~Zx9cx2cibz zX0Yo8CADaOpe+E3s4XVbF zoXmCFjiCdfo7Jw|Xqu!5{m0DD8472-0m zLK#-Lj~N(bO^{^dOps*c85toiR8VB_6xQcvU{KU!G!zzO6k>OfnC>JAvPy}S!BCh< zoPj|Z%#dJUP%&WujTfncC?*L81~qO*kPeVyb&whc1`UV^1A}H~6Cjvk}EB-l6HAm4zDf?KW&bvm~v*a>>bN>LQ*LwyfbXaKQbs*@zh zYC|MR2?houXyAa+EXDjvZd2~HPIAZIWzID=zLoPogwNdY)_xPk;gzK-CI1Pi!<1fWK+GBCJ9!V=_A z4^SK$3WMX&6CP|}7u$dnix*rF9F`D4Z%}vG2U!Lp?h6;ZS#49B7jZUmHp#WPSDI0XvcU?Loj z5if8PpbV_Bi4nn2#c&FXE|7~bBOI;+${5uM4G3%$mcU_TNJUqPJ)p5DMAwKVXE8Fs z?oNO!1{oiSk+P_-5N;uqfi+XZZia%Y0WB&1%ov2lbr=faI-m?j1}u3PKH&yc#6X-X zP!M5eKH~HerwZmC7|qB4S^W*;gNrwe;)Xa?AlHXr2}0`GK%6^}`~qfTO`hDV07#Nrsz~iL|0dVkO(MqH;;%q>%4(u|_ngmO>!6Jli5+g$xxk8~tXhc_n zy_Ui-iAZJWrejGAm`X6JDWVz*7}XRb14fPprFP6}35!BZM`0u&EM+XncxszCn7Rvu$0#9F*#s6sa$YiWs*SU`>-vOLDnOPmdZRTVCu z)6|}T!&2<7LyuEN28{X* zq%jmryJ%D)IPjPmCU(?=Sx5wyV8p5pd)Oiw1ZHAs_kc8pVTlxs2GXcPa1eqCqQeoa z8i`GD5QjQqtVQw-m`QA=By%7ZYzGp7rD_2cJeV~!<)TQof|*zwZCHW~BebzJ z?Le->Y&?=83U(3_!N`EoZ6aF;$yhKGOSc<~5Xkk|`de6f9T-AH>m5La;GjSvu=M-M z76N&TsO~&*HXykY%)~OVLADUsKqLZ7@yyK7UW=s|!ZI?6Aw;ZJtm=?l1!iK&c*F`} zjH56!d}hR`y|9=Dwit1MIx}( zZCHGXWvC3v5HJ%<>LgAGtQ(2I64hApA~Qp41x9ounF3~F8T7*1fWs;XHUWtsE*~Rl z05h=$CPtdaq6(}Vi6E|yLDB$bVhv1;dK0V^i6GajHTPDO(vLHDJ%*0|c79l1E(27*B1~`F58C(v^AW8|w2t8CYoWhdVxftME9Er$t z7!7FR`%xHL;jV%*uy_$vqhp(4Ai^w+YKDmcw4@Mf7nEXRD1@>Q6n1s}u!GCt3bBMG zTn@^>QbvJ%gl$kCqX`T(0#0EGXpmXh+KL#nv2a7646KcCEJF+!Be+oga0*LD0(3w> zWRn~RTp5S~+mQ=mgD`9lD2NThuzi^zHVC8YM(hj($${`d%fog8g4_bau&qiUHV6|; zq98@1cr*ltc?igXPAXzJ0XkNl@i!kY10y5&gmBO??O4wJW6;mY&rQ`YNX@BC)Gsbd z)=$k#$w@6PjxR1qOitBL%u6ZC&rH$HOUc$PGBixqFUil(NzO>j%q!MUOe{*yFf-B3 z$;>OQ(1ocq(X-SqC`wH#&CDs$he%aen8ll!=;vf6>8B?rW7nq-(wCW+oKu>TN~)U* zauQ3@@{4kd;m$QO)CW0EH?b(!%tXJmxJVynG%N_9eEs}_)V$*290msXIqb=xBh-sa zQc_aW^fExV3Ky58WagFVWq|7Kq{QM>y$l8x28P7qJVTHml!*|G&&f~D(aQjtl9UG# zPRh)OFp5hOld~brl8mC%#1sfSH!&wCKN(^}YEcnHFh3~^!eC(Fgp}_L3=GVZnHiaR z6qrjCBAEH~n2Qvcd2D>_11q5XJA!&orzI{xk6!{zqE>?qN$7u0}~4)vy_4?h*p+U zW3JLu0x{VX*rL4|m{^#YtLB0EHf+pXdP>I3VS0+{N=nN5lbB@`m;+8Q>nSiN&U0oK zUIS7!iCRiUdmnVbG;UI#!*al2#u3_e$$K1$N!u+Pz%T`{|n_0WbL@AQF(uVmp;{;`SIYSL&Qzf4Y zX3?~e1m@}WU^lSYu<08_&Tz^A8Np`5#(cOgjd?Pop0~2TzKXA`GV@&qJw@gpb$aT| zoO;YN7$Y*6AJjH6|7X-={#B=-&HRnQhIvX|8uL>|J?1&}ddy}v%q0_;uhrRL1oTEm zMjIt1MR{dKALdFMCKd)pM#o@3!+6gSS6|SBS6S zB_Te}44I&FKpBcNt5V}jz!aDdmJapv408<%cJv7j3G(!FXDBU6vnVbp%FIh=C@9Lz zjn7LhXDH4nElJ5Q&x05UvNPT_A^>i$tFwy-Lvns@0YpB;$2q>Z1i}stakGFLoRpcK zSDFiw0Tnv&nI);Y@dZVhc_s15B^7Y9oIL|PT!R?E?gJOz#c(NqCoeeLDbx*Ic0o-@ zE6z*IO@)Z0r+E>Pyw9^wGiZFaPUDr7aw1mnO9;FU&7$z=?_tp1~DeY%n+(3CqFM; z0dyiNI9!vBG9m6wPJ$@(^b2uycMXCFrdGr!=cFbUG34b!otl|flA4}c#E_p{l3EfE zjUm^dAaKk_m>O6zIC;AJh5AAa3vu-g@No=rWk@P7$}CBR2!al-b#?TEaKNDfj@-=j zywnth3s5cOS9uVZ|7ZUFn`r-Hi(d`U#PEZ zkYk9e3qt|u=smEp{>~w;A@NXaGeH~tVIdO~?8s1@UsRHs0@0pWS`nX|!~pRWST8sr ziXmYN4Qp^%Bo-9JrzDmnGC29gC*>KXq$V@urB;;0CuQbCj4DVhDo%}0Da|c_#2F+p zLjww&sKE(6wE~=nz;;3X!vM*ir6tKFnYqx&0sGw1$;TDy3$XftAWvV<5YI5zc(+hL z=U`-e@{=He2ezm<8fK%a zT!S2aJfmD)Kta!tpOlrFTmm=R&)?4#;tY_PX_=`xDe<6_19MYLGV)X4$^u-W2@!04 zT2X2$Ls9`KLBZk$lw!k-86f$_%p|^qA-O0uu_ToNoJ-&-2b5i4T0(%m1CqIT#a3Kda43b75*$FJ* z7#hKlnU|892Psf|T|+$lU7(?5Y!qJti2_I}j*ka7$l{YTvg6YdGjkw82o6W&;B$2b zg$2xe9=?vw3~As}6RJD60Ahb$YHCVO8beBcX;Mxq16Yy)RB(eDdJu1b%CF3l%(B$@ zOrvCo3Q#P76oH$73?;b*usm2$S`wdHRFq%DP>`IHSX>M)EizIoz}W_Dczkh5JlN0R z0+%5PY!B815aj6R!jP1i9}h`vAUnYtL1`bkh(OCVAa&qKNKDE}g=89rK`;yb zor41yO7k+yQj3b=WhYEBz}q?49FhOLor5hHlG0O4ior#9Sz-27 zFJVZ^Er5mx$S?7Zp%I|4O3h1-hdQ?e#s1*PV1}a9lA_A^qSVCV{5(h^gcJ}UjYX+x zsYM{4Lo*t3Hih^S8bV;(5UB_pIS>V)V2B6hD%8vd4Mea$v;qnm@t}as%S$g9Cnq&8y(9x3=AdJk z!RY`wOrfrY7V4lZf>c#PL?J$iPpx1m0Y?nPLPYR@S_;Lfg(ZkW*vSuWscTpOBpOok z;}cVo7$BW6h5}Gw6dxSo= zaS20lMt)HVxIqSL_JHdkmrR#qaopazvPke~(y2q=KS$$%FNHpOjgj%&B-h&$w}2s z%}dEl%u~?KO-#zP%_%T5QP53S(DgS`&`m4IOjgiM169~1nfZCT#i_|4x>!Lstu(JZ zGcQHA1YEW$=%#^-RNaE2{1Wgb0lLK{MWAM zKrsi&9*_w4ck*&|4q*V5#Sj6|4G9b-W`@u#2Z>UY91o79FwbC5MAIq{+OYte4mJzg z9L=msO+mECoO}Zy8I+*_oE$+#45;ibsVHG603}jz>kw=Rs2&7c1Wu8l@(Zb$$V@ba zI*-BK+1W}#!`&}b6L-pB0G}BS+AmWT#K2M^$0*Gs&tL*OiJ5_c0X!t`$mifXnPUq3 zRJLiX(^+OP&t#g%7{Ybsvg5U@jyJA5-n;3@$Kc2fK5-K^qzoQ9cjOarn#bhDbq^vB zvJ15JA2gZ>8%hU>!H(~P4VQz&U(1^L^?(fqz-oXII_AcSk%41A_lvk8Cfsv z?r>x=73e{o$YQWN8ew8C3=9lDP<7y8cSpVgr`c?CSY4;`Oyi!+H-*<_I@b)&nH;m& z=dmz(A_DK$O~*U89ibt_zyLC53e+6%aJ?hn14hTmGE=0T=Lt=fnkMN!Q*4&#bcq?_ zvqk0z$KW&vbY|Kes5#&`apY5Qn#bY|iwg$5;>z5T#3Tm2;*uf=odIK&q*jzL=z$ZQ zUQ%%}gI-Z;PNE)2R1ciTAejo%4c5ynE=trhK~{rEo1h*al4gViI3GYvLHRtl8VSr|V4$0o@P8d%06!3-Lz#wrecQnGRGOKA4a!1L5OXlaK`NLbr$vL9a12ooD}CU?U~ zQ3z(pMGq)q5cS+BVlWOf)YmXRh=!<#kRU!XW@dmMh=wExQHd!IQo_stJ;@Hlfntby zOmUDjGXp5JK`aD@sK*ossbGfJdLSMIL)3$66bK)gWCma3g)9P#chL1-sNx_VGXv<> zYY+>8A?9O>gH$jx2!kjT3{j6M4pPJnIU*dygky+$@X_aRF%UxoyfYPgk{!}%l^{80 z^z$4UVE#g=2dRT$X2?AZFfN$30h6EuC%_C8f|)@Qg%9FD+=(d;F$X?r15ygcpu?CL zk@6|{h*1Ux2GCXYAaR(@Ab)~2fM$FcK(|K2cn}(5KBhQGmKoe~0kKdqGvriIR6(%$ z@)%+u0cHk85QTx6K?ee1h%zuRGpJ$_1&OQU5C@$HgenE`mll>30Wt@4%`d8Y5RaJw zIkZ3`3=9#V+j$^N6fy~iIB1D103R@3j(p3!^4E#JrX#?b#aJW;SdkSA)bLlyab1M zJr4119OBb)h_AvSz6FQ)9vtFlm_X?YQBH!}@Syla8ZA_*fOLSdwa2kF1yxcQAe~V? zGh69_R- zn-|i8M~H!%=jdV}b?_!Ts!}Y%Ak|2XbX4_NB|th5Ept>2*u+8V5v_4l^$2lrU}I^T zBM+9RmnIgafJSg35>RQa=QgykYgZFe9k`0*OGd3WQ=1MH7cD|C459U;rN?4^`IyrP0-QK*iD3 zgDw{VNrA-S=TR~+Fq{DiGB7ZJ+ylNP0?LPtF@VfR7QX|P2blvtKM=}?jX%K5ftBMQ zpz<(tVB$ZZ;vjR7{RJC~0Er{J6IPRf#KDJ@L-j-22MG7W%4qPpkqivr@C3OZCXO7Q z;6pQ^=D;W^M(B~3Pyv{|=8OysFf&0?pz#L~4H_pw7Kg2MhJ^!cw;1dIA6PiR#Ct%7 zfKFs)L^`RNfq`KGk~sKGM=1XUlm>-^GL#LXZh#1=Ip8BKp?n@t#}O%h!8a6u+9XhM zn0sL2B2aOd`(bBUOQ4B^+EXAa6rkcTb71N<(8OWtb)e!P_amntSpN|{JYi!+Aoa-p zodY!o=1v2UV?f~s6^FS8CcXkH4pR?nx2-`Fhq)7Uc{a#Mm^m=@d!XuJ;xP3`pyD8R zBKzwKR2*h6EZ^Qh6Ni}tYJVWx3se6Bsvh0mH&AhOd;dViVfMntC1G6+m^jQ{4rtc| zWVy$Dns-Ch+WaqyX(AkQF;X%d@{N}&2+?u4bM8mKtToiK4&IH9`-Rvx0K zD_D65G9S5@0vm4ynU5?EE8jrogYV^qy2Ai1oMGYP02K$B11f)D;t^1Bki8&rSUHdY z6^E&ZiKjrtLG~h-hc!sz@U{~J1H%lcILv(5(9i;?ILv&Q_!6i%$b95<3u@Pbya*CU zUdE3czo0%UNDT=4AjLcKI(krh6eJHa2U&d&R6Wd{uySMyR2=3`m^kRVK$tnm;cx}2 z9%Mdpyxf6`!^{Wut3djnK*eF^!^B@e#X;sEo9_Z0Dg%ilujvnfio?u@#a9GW9A-XD zJO(NbG6&iG5~w)L99TN5fr`V-fr+<3#X;sE$JZJpapZ6S-6;z4H%L9Q_zS3dn7uG} zet?R@?1hPcfr^97L3Y0ZwBrgAM@}amNaD!x-U1be*$d0J9cbdP{4xP54s#Do{R}j5 znEE+TagckE!{-2!IIIl-3YQy5;>iAb0u_h36IL#~fr`W20~7xM6$jaiYz_l7&_U*a z$`e@ohXpDQG6z{)0V)nM2l-?c6C`ou!$EwI#F2N81R#mS!Up8u0wnQBkN^~yK*d4s z1eHs$c18nK9OO=9@eZgs$eqaHyaXx^GY6J_K=<&1tb&;X6W;(;4>AWi+-@L=M}ag# z@dqSv(CxBNVFu87-XJ!}oEQ)TiaDS|&LHtvs2GTnKoUo`R|82LeDpa;F#`jG15_O5 zFWCH@3sfBDFPOLwR2*b4viUJkahN%Mg#6j2B!P<+UG6ZB5NZc62fMQUd1u;S5AbU4L>w80xAZYBIkpVm(4l)ZQ z1nU#Q)L(~|Ypx(kB=vWp9)7df0ALn7AV}d|>@1 zn79aZ=n}RS5GMW^S}ruBx$`L0{jl5ZVCqAl_JYP?L0Vwq7oZWf1SE*$UvH>;Hlm43 zLBj!-KVas_f$rI2U|`sfrXJSUh4s5(>Z75F=rWpm(0Cz8=pKkbau1Zt@Dj>^nX>`v zuWxALuyg<#=LJc@)E|U~8*E(wOk4{pE(?t}nD}L=zqHWA9iib2YTqN9F9}uef~H;` z8lFLD;_sp1AB!g546Qi3(Zrje=1)f#ho+OoXySXI;k*G&{3JBr?M4$Xg}U=NnmEjy z%V^@yp#1w#8WwK0Q1f4-iCaSR^>;LJSUzWg#wX02Ca8P((ZrWP!%Z4Z92P$6XyTyj z%0cmDj3(X$4L5r z!^}Ai4X-{ladv3@&O{SG1r=X{Cf*1&XFZzuBB=N-G;#2CBMb}-N72OBL(RW{CJw9b zZlj5-L&NPEnz$g8{}D>V{JQ}ZS)eQCq4vPUcR`!xdkfIS)u8UKMH9acHNOi@d;>H+Oh*$}hUWJrXyT`#=5It3zW_C7ADXx+ zG+muW69>&xfr9i2nz$7-e|8mxH?JESmUfX!u-46aNP_=O&u?S5TlaFfiOl6NlA{PtnAuLiw+uG|c^= zEwUh^KB9@k%HQv3;+4?y{4big5H$TTL-QHTd|{|MPBiflsCs@h@o*?#6iUO)>4b)Z zG@3X&H2f9O#6_Xv>S*HIpzhH{6MqFw55{QXkD&2li6;IE8V>eo;_guMUD3pyq2_p_ ziNpF`foS4Qph#h0V1R`OEF8?B?ug`48BP2g)SOH-@k!9|&qot~33Y!dnz%nS z{A7dC+>$98G*GG<`awiKj!;vp<^n zd#Jt9XyUMOrF1m$cxd<+qlv@Xuk~o+x={ajqlt4t+dtFM#8*Pa7o&;qh5C0rnmEj# zyV1nIL+w3|CVmJSkC)NJeW3QLJaoAnI0che+p!@N5%ns^U1d9fZxWUGdK@#?8 z;_)Cs&{g7S;;{B@Ae#6msQO%}ILKaT5&_GUA&G_s;J43apqd#)mhgVe+J9=%2q2aQ2OlQY9#Byo^>*!a8xbfFH+UfB8= zYb0@Gd%cmwLFT~b<1*32AAm!RfuRLS9ONFTFvAoiagaH%bp`98;-K&Zjh}62NgIKl9z>owL2blwM4{V$<14$g@o(a%$CJ!nOG6#8=!UU)|$Q+P*n0w}-iNn@c zt$>Py%z>>r1bOT@R2*au$UU%i4`-3YLFU8en=eDfLFPz-41nUVP;rnsAoVc!FhjR= zz{HiH35yph4l)O}b`E5e4pbbZ9^@WHXy!IT5(k;@3>CM4ii6CN0~r9tQBZM^IUw~g z_hg`nXF~I1F;pC6jsnyS5H%Gl4l)Pio+zljOVPx4Ld91hiG%Eg)l*xM#6jkSL&M<+ znmBA6<|L9h$Q)Qbbp=TrWDabe{w9(*NIlHIPmshx>LZ}_<0mw6*gWWWByo^AuzC}= z^d1%tNznExJ2Y{F#6jv|^{)_;ILO|MQ1#+S;;=bJP&g|fiG$2Zf#yeTByo^A`cQEL zByo^>9%y*lqlu?M{p*D!4l*YQYK}it92V~rK#pNxV8}%iht2IkT`7pqzIBYD1CzVF@T(^i6jnE4>QLGO&qpf(FaK! zWX=a@`cFg>M>eMfO&qq~rUgkHWDacnXDX67vN{%z>>}dx0hn+wbuW zDh^9;hoSMy2rV38;;PVolqs4xEI&G;iNn&ZFPb>Tg5a4V7r(;n4E29Zeio zzV{%BgUp`|O`p?{#6jl2hMKb!P23$?F04Wl2blxww{Afa2blvaUv?sigVfhT)71qe zagcgdX#Tkg6^Er0*!up5P;pQ`0+r9O^)4Tf#6jl#fSU6YO*|c%{y_J(gHjyG9FTfg zy5xp7K49VvQ2iok;&-6pvS{L;pnNqb4Krshbb?$PNgUbzCP?BS_xyyaw?z}50&Uc| zp@~aCw^I6}iNA%4N1%!OLK`)SXyVhM;%QKESop7i)?f8dahSgzK-G6b#bN4QpzY_0 zP;roYkbhzQon=VkApdI1f?|V#VLh671ypd_5a9or3%e^4CnLJNePX_dvx(pyDw1!_3iyio?vg4^?l3CawwH0&I;Y z-UbzSfQrM+{{r=IESflMt86KnI1jX(>_roofr_t26W4)??}Cbh+z(2(u=U}`k;Fma zvlr^l3s7;GJ8hum+<=P1%z>@He~BaxGDiy3NMT@L_=F~I3l;y4Bo1;9%pBMjZIJmO za}uEHS)t_z%sl~6_sF1$gZAlyaabg(MDAp8@R`%tsOjsfUI0dL(g>`Ua@_vuNV5eO8Z<#6jl3_M3b{5(k+B zn}3mjmP4>`fUN^_LKB|@4WDo%agh12av&W^9Be*R{Q@-cH&F4dNa7%KVEaLiB8h{{ z>44_1TS(#{^{{c*S4iR@^&6n-RiNb%%wKn);&Eu=KcM2pNa7&#Vd3A5Bn~p)1e)&_ zqlx=K#m}ROS3t$TqKPknigQ8JFUXxBdtvEB7EK)1AJjz>2e}7)mJ}|%#nnKPdAb{NWCZYNQwza;vn^~{>v;R zagh4+Q1vU&#HE!$xr>2eEs{9M99Vy0JCZoaoOG!AJxJmp^|1cSF(h%2`VCO^r=jAo zZ~*B6+58GB4)bp!v_JI?Dh^T)3Ib?zi{U?19Hzb#nx5sL{)36fK*cT4#9`}YL(s&< zp!Q~>i7$edpZ#d!u=%qEXyU0*dyk@tw?WgxEi`dXsQLHN#J57#e?b%HgON>|XT7c2yI7U+zB z@YW?8uqXrkgbtW`m^ifBhpUH`S87mwF!eBTJv4FHeomNqF!eBT(0OqnEiiG|K4I8= z8cZCd283bv@WI4k=ECOLVB#RPAlwBa7#QI0hpC^6LwqipIBc8^R&T(}hq)iNZWksF zQ@0z<91duGdKgU{*4~4yUxS$g6TgP09&}y{NC-B62vZLd1L0pF0*ilHq4vYn!@_|V zO&sQ5*nV)BdYFG<^)O6)4%9wvG;?6$#%SWO@Uce|hlP(jnmEkAuz60Hy|8*Y3r#)D z9N7FPx_a0?6__|oJ#1bSCJr-yGY<1%^L`-ppgaW~j$*imq#h&=s%t?(^bk!P7XB~M z#9`yZuz5U?`OvHmGKK-RZx<#GEyftcq2&s?xICITv^Zga&EtX8Lxhol}P4l@TBy`LKB~kT|sK z05YCI6G=Tt9A>@=4sjbaahUnAc`cCn(53{~{3ImxAaPjvn~Oud6ipnqzr6v6IIJBF zv$p`6zNew7hl$Ta6NmMiVDoP!V@+>33Cs~ zjUXJ4rXG|gK;l_A#Ea0xVdodr;t+2|6NmYCG7j9(JyZ9h!QWxEq={Y#$wL-9F45n0O?bdRTnH#)Dz%L1_wvVe9H) z;;{H?M>7W|-j5~@i~S<9wz<~O&k_4u>J2ab70~u(0&h095${6TmO$PE{>)iHlCw|LtG0@9Ci+lDGqU4 zG;vsZfX$b}+yg7O6VTMd;yoKp92W1zXyUMTY8?*oHZ*ZqKAnU^d={FxJ~TZnLlcL^ z`#Lo74ygK_IK&U4iNpHoXVJuA@p~0b9Cn@&Y~MXBJYnK5(A2~7DQw?8Og&5-w(lM$ z4%-I{TR#F5hwal=fcB4J;;``|9US5&XyUMVv_}(%)obo(;;{2*VCz$0_QJ-mve4AS z(oZRxILzK!G;vt`cA$yF;&%d?_ylPD&c-3W7)=}&zp#BUF!#gacN>~|Sop)%*TB@n z`em^FDKK%Ef1je616!Z@7EK)H-ydk=F#p2#t-#DLf%=yR+OUL)!`v@|CJu8yY+Vmb zJ*+#M{xtVfkwk4)IxN;;`^pfkS))nm8OsIBZ`#EF56xbv{H>4-*HYd!o>N} z#9`+)O5qS!LKEKsHD4EpxG9=AY(B*ShqwotcmlNi3C1BFjV2CD&uKWs^U%a$`-v)X zh&Q5%`#{UL9vtFR(8OWo+aes|tI))!K+WHZLwqlqIP83f6F9^#pot%VntvOI_+vEj zBT)74aEO0H6W4(CuRw#F&~b85y$=)TL=)G6su#y0E{`T|168kuL)-{W+yScI0f)E; zns^FSeJ~F3Xf$!yda6tu;)Q79u>NEX4)GQ=aRX@m1)E2O4)MKc;;{2fPv8*0fF=$r&u`-pe~cy$JJ0kT z4)Jej;-DMoLFt?kx|s?VUode_G;vsYE{;Q79!(rpo@?O{H$oF%0WEKBafrL3iNnhC z036~GXyUN(`eYp9*=XV{(Drs24)HoPaS^Ec9vtFR(8MF4>gVGSUyddYE3aVd+2Qd8 zibMtmhO=nuVdd2g9O4hq#9`&kI~?NQ(8OOu?PWyTj|r;pVB(x;;;`~Z9EZ3(nmDZd z(ZV5ageDFvXB=>dd!UKK%Aa5y;?Zd0u<|Dphj<~HIIR4s!6Dv)CJrl4CgBjDg(hAO zZ67YhA-)z(99Ev}#vy(fP5e64{BtQxD5u?{J8JLlcLs7h;6&M~0aX6Gz_P4GK3{eiTPj4-=P16NlwTEga%TXyUN^ zXp2MK6-^wL9|LfRN1%zr@?$a%@oY44Sbi+SAzp_j4$F_7IK(HSiNo^a930|H(8OW+ zaXk+4?P%h#e0KA%@v=>c1EWeyU6NmMKE})6S;up4G6J|c_zLU>r z>SdtqtA9Ae*+7fTklH!0b9e>O#4VuVCW$8Q02NokA+Cca?hREB+gA#6KWyC~^8R;F zc?cWdh(a?5RvspyiNnGfdA~f!99TG)qN#_as|GZ2Si0&!6X$`p_a>u>!{TK&n)nW= z`ekV1uza)*O&qrFYA2dFtlxJKO&pd!Vf$`j;R%~>eS)SQw%+$Wnm8;xzoUu6$}1-5 z{#uy%uyee*(8OW+7q+h#rXIH6M;A>!Y(JU>ns^Iz+}i<79JW5e8;5u>n)q_4IdN#> zuzfvgXyQ+x>I-p*SE7l-?kj4=A>NB7t^>`Fvv7znLKC-vs$YvH?f@0viY5+Aw};Tg zVd>`-nmDXHyox3c+mCY>O&oSUFKoXxEPi40IIt^iVdAj%2{&{fHoCYlnmDX|B8Mja z1L|KjH1P~*{xU=phmEUPqKU)8!39kmR&M*CiNnTwVf)Bo?uYp|A5A^Xzg0NIo6y8z z{+)m(4)gB}G;x@Jm!XNn{JRcK9OmCWXyP#c9zhd_`4_f79^JpM(A2}mhri+w|BEIL z3m*>XetMYsFmVAiaaj0Bqlv@9M;T2VHm<0LL);8a92TA~XyUN&^g$Dcg=Z9+I4nGq z(8OWk2|HH+=3iL)=|EEt^Y3IdahQK+qlv@ZzYI+r=KghP;xPBa&S!wR2j>2RXzF3^ zhn;@_Qx9|h6EyWO_rFIIhq?bdnmBB}4|YBS%zT(Q7if_>Qu_qvUkNmEn12<}#9{u0 zox=b#ALd_UH1)7~G&>yPuyYt-=D_CHLeSL1#ADFJVe@P0IK=bO#9{MmwK&9E(Zpf% zYZGvY&p;E0&9A}EXMp(&CcX|$J#2n$Cl2w0XyUMWwDUN`ucL{>(i{5u46yX}3r#&N zy|JR5O8`r6ylCREbR~f%4o^R5;_&o?CJs+OXyUN-Gj=${-O$AMK-Zo0OVQNB!hZvrI4t~kpozos?_o4? zSooht6NiQWH8gQp_}@blhov9bc`7jX!`khP(DM*r;u_HQ0}l>y^m8g;?pH)p58D?3 zJHG;EKFs|lXzF3^w?PvJZ)#*n)nW=`Ug0~U!aM@ z^5a(=;(yV^Vc`Qij|b*{SbkA}Za{^J!}5y`nm8=Kn4pQn$}0yP;vQ(?uzMea(Zpfl zAB`ps3;%R9aaj20qlv@n$7&qn&1mAVdaw_N_%t+eSpB#NhxjTqaajGh6^Hm>g0q`B*Ubz|Pk)MpN$(P0w~X#NE)uVd*>=O&nJ5N27_u(huxh zE_C-aps9zM-;E{?Gk-FgILv(5IbJaHVeOo4XzCN7{ym68{3Mz<%sp4o#9{8agC-7h z5A0knn0sL6{6|v{JGY7p?R*v3J{BP~ahScZ^S#i`H$_tqGv5JS9J+4J15F%eKJ1(@ zbn~;()Wgg#Ll=jdUxy|RGaq)o7tDN^ISbL$!`hj9(8OWtkD!Ue)WgpGLO1_8ntE9K z_A?Ig-)Q3hq3MSW?VK5yI3Jog%ssI4#?akkh^8LaKeELk?usT3yZphSA&Ve)VtzP4?ABC zrrrbU&I~m5{!sB^G;vtFy&6p%R?f5`iG$8;fZgi{JNFA_FKoPeIg)zN{0Ikhe038J z@m*-*u=^d4;t)TJCJq~~zJ(?ZyXW)~nmBA68+P6j$o+kuJ0?vxe4AufR? z4m(Fw4TrcMnmFtZd)RqSFneL^1On02Lx(9CVsMD3powch4JyDPUV$bK^KT0d@g6jB z*m)f@aEQasM}qka7Cvjx)WgKLpozo62X=lH%p9n<7_OtKhq?a|4)IrL;xK!E;1Fkk zo?isB7v>(=xmhrAn0u7b)Wh7PheO;9O&sPP7aZa~XyP#Uz|Q4DcTYZ=dgwG9LlqA3 zCNy!F`+L#EVeXuYCJu8C?A$MydsLtSv;$2&%zS9^1U|PJc2*Kd3v_uD{G1|?7zjhN zHCP~`H zy8>Ww*!ig-acGkSEDpQ(10)U$E06^2yjYMpsC)*AfiZM`5+sgX9)jfDZ%z^Ez zg@rjtJxCn3{}dKhFmc%VhcG|F#9`-If%JmxfQiHQ&%(+rm^f^|Dsnu6+z;#D!RGlv z>OtbL{vC4sg2Z9{JJ>#Hn0naw5^}tQ)WiCBuyed%>S6t5{ka}3V{RWzQVCJKzH<&rF^a3*<7Cx}_0uzU|Lty7o!Ng(q z!r~bw4r@2U&Ig5w$3Vjeb}s=;92TCib7)}Vu=bb(QoaEB7uH_#Kof_#6SnREW)7@f z3Oi>MCJu8CY=1dS9M&#{ol^o6hq(uK{wPcw<{sGk1(-O@J+N~xVB)ZKDX{Y`VB%k( z{(+r;027C`>tO5MVB)a#1_z+}VB)a$80_8#m^iH6^#DmdG)sU}&I>egSor{RFUTBN znFG@B14%td9F}ik?ggnwF8^WeP?$J$xQGFEPAy0rxn6+X^8gbE*#WXw0otAgi6hq+ zu=6}%;xP3FNa|r_Bgh;JG;x@ESond=L9Smskko_3Vd|03A49Hpkk20jiNn;x_GN<1 zN3M@Dkjw{(!_*fbiNnfpko#fh)Pl?biNn-4AgM>LzdF#wVd^I!i6hr*Gtk6g>K7o1 zBiDDZ^+X`|fW%?yVe5%N;;^~~Gt|Fyd0si;>hV4*1rLXBd6O;Bzuw5XFZZQ zayp!XBo0bfAUi>L6_Pk8{eZ+kct4UjD4l@BK=>+>I4C`U#6b8Jk~ngDfX(xO+>adZ zqR??-kT@tFL1uukHj+3fzCdCiJQqnE6fYn#5N3l0F322E_=Chi7-kpf+()PqkT63C zm}Fo8i6e(U?A!>DICA*I>T8fVa`?l}cLa$ehd-=c2NFjP|078DB8NY$J_V^q4u9DB z=pb?A@Q2l#AaUgIhn+715=RbySp5hRhlL5qDX?-EB#s>Z0nl^{5=Rby*gZBNapdra zmGdBR_!PQHz+3ep5M1Ih$bpmGdkF1r0UpdNtf2iXsbBXs-o zaM%wk|3GGgErJs0{7k5u(CxQqglK^I6J$TgZV(2^z{ElOEI?ibxeX)^!?1cCrXD7a zZa?T8Tx|Mb^#>vS+j00G)=nU#AJpH$W(Q zKjLt|MK44ZY#agPe$WyiboYbK83wr@bXNvM2ZYpsHUeP%MTjT^?AS1Hngxl0${CP; z5E~h1K=-$=K(0igc@*nh)P&{24ue?10w!l={FgN{i=~5+ZY&N=O9CP zm~M^3VSfZC#Qp&2`EwxqK}iAK|Df}uAu3@uKxokz2(5(NsKt_g3US!K0#vXwFfhQz z7eMx_V)1_y)c??A2CF>(fe1AXM5sAHgc=40h6xPNG{DHfFhLQ@ z#+3$!x_VsxLd&w?JcNw^)w|flaf$th0$lRA#G%^$vPAd(`a z50^YHahSE}{)bh`Y??3?*lAcB111a87XX_KgGr##xb%tJ;&&;!KA5rSV;(SZLi8V~ z#|f!Jmq+i*q08gq!@>ubJT7tMaV=bGu!)1()7Zobi6M`>5mJjRk1KwV)nH>ow?bi) z!Yc+ETf?gWha{+3kGWrg-Cm_hv zFT~Nw#}#URuq(tpF!P~q1$hOm-rvc~)fq{@U#Ji441KV?lWzdjI*30){XD~5gMuA> zV4_fa!aRdLoqSvoqEK;nS3lPvM<359SCYXQ{;F?T`~0|R7364OKka}wxmaIhT~%uGz63%DR=Gc$n3u&Ana2haRsR9Q_C2k zBM1^K_dz#iLDW11sbPSyAA#5`5cXrxASMTd{Q~4o0jN3CK;}S#ZaRWF1Hqh$V9r7? zXCs(%5X`v<<~#&*K7zRr!CZu3E=DkyfS4>C!AuMc+@Ppo;Q(a|7LF7q1_mA`$j%2A z4v=S9I6(8n+z@F{D1k=@Si~6nnV?f38q6Jx_m~)!8MWZ-7mNmQ_De=HIQtc&4V?X&(Fx9e!{`BLzh(4;v)?g>z}fE^qu}fhj0qrr z6{nUkuzW^x{}&|oSH?6@4Z*^}4I0DX0A(;1j#r@ZP>y|I5|sW~IKG0}pmh{19AaRV z_rW5dn*>-mK&hC8LlG&IC#u&i-nK6KYfrSHP6Vy_$cR)HB7#I+iE{0hOQVEh3$uBKoVD!m> z+6uSkwE_bJy7^F(VOl}j!KD*uByY|QRt5&RZf-@8?f^y;1_p3@j}cbufv5dI8X4zE zurV-*R4^cd2d-NYq8s8Vh^4-u)D6-H!U*rQgUm=|VDtqsKvLi^^hFIrU(&)5WE0d< z>|yvEW+_M|*ivv9`jQZaDBeMYA!vRB9tyB9G=hbpFUT$s24xfw%{V899TJ9c^WeI% zgrOg(Q~>D%VMG|72APq_z~~2JfTX}-=!Y7Hex!vV$R-fV40K*#rs00PJD78D=R+ zCD>AMUJf833{kv;2*Vd#Si;Z-7KZSdKtvd7a6|Gk+&p|?7znDpLGA@%L>Nv7nUToA z7zkp3q`+Yqh#H20q=g~KCP)|tVh_XbFiSxy!IpxO)WIi-Su5pEv7FboE@7D4(! z7!ih`1Is~0Q!t1Dk^+ZeFlrbElNN>`n;>Brj6DqN`5<8kcM~KGgGmTOxK@yx5n;H6 z4@(%j!NM>Yq!@$|VfY2)lnMq$xOw=(Fa*@f2I&W3L>MOXL%b6LVt}N;VHkoMh9RVd zA;>037=~aEL(oappooLJ2@-}OB!nScE6B}=F#N%fB@De`VF(!`L0S^QILAT&l9%D; z;S0l1P%i{zAqXSFa5>0~L037=~dFLvJBS7{c8I3BxcF!Vs<%06C?Cfe~&VzAy|2^?E`2K^Tz^^@Snc2?sGiQs6KQM-9Vp(!vmA6C@17v4>$l z%u0xF0%1fLvWP(PGTc0TVHg1#T>$9^VMG`f zgUm=|V2l7UKvLi^j6e;;2-3n3WD_I|Bd~|zWtgQPm0(N3VHiO|7@~Lw5r!P1Si;Z; z7KYFTL$D!H1_s7C9-@#igqw#i3?o6KH6ZtbFd_`MgUm=|V2lJYKvLi^j6@B?NYcU( zWD_I|Be92}xELhy!`%eQ%aJ66AzUlS&4@4rom&YH1z3OC4;F^tX#qUj@lv3|dwV1h?C*2f#lg-62c9x71bjy(%4g7E=U;&Bf_l(-4Xc0tpIzt zeTJG*fDsNq&Xdbkx}4>!=+U7%tX?ixtA6_5~aaIL6;0Xm%vTY7`-mPQ&b-y;Kw zJh(~t!mSl{d=;v7AW@Jm48bNCicK&Kn_wk2 z!D4KJCD;T@u?Z%l3W8TDv3z6(%>ja@&}2YI2+Dx+f($4J$eaT;haieRF@q8~sMRV1 zQY`~Yz{v97m_X$)s9h=pQpf- z8P5Y+O3w?mgB2vg2h|2OlwX*Ena@U&fk8l=5n;0+LJev0M{dF0tohpNii8b;O_M1)5AJC$r3$<{a;s<2dnL64?Y zj37Y>P!KqyX%!KSXspptMGFvQE(KKp*-4IUjico%a@3))DM;j_p^6fc$ehtoMGg%# zHU)t*S^}VjC4xH|s)(?_V2##R7(s#%pdjUtT?LSxk;&Fbwo^xYtcaw7#-bowjfN^( zSR%Nip^69#4AwvtR-J8_VFO}~rXNr!ATWA*8Ra9w2E?Luc!2B}#iL*}1V%$(Gz1VK06K(- zi6IBH!-MfRA1?zVBlwh2&{5G@d71jfMalZfMU@35`TB{)d4>!yvCO>WoYIt3{rrN| zyyD^<1_t=yrpcglNs|(bQ}r@H4N;J;5(E>%VqoBep6J2Az8_f=t*{ zGNK8d!Dc3IL3A_0D$&h6i_J{jg6L*~Ric}D4x5>{1<}m}t3)^RJT^0N3!<9|R*7!r z1#D*G7DP7_tPEr@O=SS7ldm#~?MTM*q$uu60@FJm(kw;;NiV3p`*UcqK2 zZb5W2!79olMc@3MHxCPP81gk_h^Ex&&aSNiG308@2<_&CS;ub_V z6RZ;5%-h(^q)_k)HZv&{e2L9W3I*R_Gm}EW_t?y&P_Ts&OWlE0upOI9xFFJTit(8x zkW&ERrwhiX6{V&!q?P6+7c+pWv-td^tkmR^_~H@<2n(VfaXMj&QD!{&;6doYhVTOr zODYRe88VGhAhL+#4bw7Hb5i2-5_3}_M!~IyoMITCms-vMH`EVwN+Z~K`1yMv!Vo7QWL@)FZNwDQm|01~>EDSr>5+1afC8@b!Pl2W3;Q+B5 z9zO6;fLMfb$|T4ru;;)8$YW4HCTAoTLDZu-1|o!fup{^&PLMHZM{9zF;D(~PFS7&@ z81TS{7!5r`66`Cu50DO?go}kl2Dl<36U>9l!4B*MA0P@&YLHk0B{i^9kPHO#ks=P3 zY{6lhX#|ZOn6to17_0?)_$Jt)U;%hAgM~5^O(Awdk~)-~o|>0hl$ZnMl_lnsLQ^Uz zNr3g0Wfo_mr7F}21EpcGeaMl(fRZ-B(&&eGLVW-UWw3QHpQ0T{3U&tA2t+7>A~Q3u zBsD#?2$CT%?E}RCLMtLbAr^vU!Lfx@LLkxrQkG9FNn|L_tbzs$^kmq0aAcH}fK329 z4IbDKNSq37+av z5(G#TEk{D^ho)O72lXUckPRiNxdl0iC8@;>r6tJ-cOe@NwiXmg;Bpwv7D(X(4mzk+ zNFtzMK;ps!4W1MsC)$GC0WYT!sSx63M1;U}LC^OE=|W0gDE5F47zQZ-I}9~PffGwo zZUHn`f>l712Xb792@ndmQ~D;Z`8R4k@+~2?iV>U`?P( z7!njH2^nlE+}CKK1W^wvxgdta)xnc3=pbmgC|WU!2sxD01~C-frc7{vl$aSJr$I!< z2Rjq&4|Gew)ilTnXt@w!J3PBUY=-6)ggi7o!AB&JMk(}>1|yR4^K()Y^BD9q@^e%5 z3sQ3`6TyQTsd*_msl~VK4_>TDIb(Qii>mf z;VeY-qx%W$QMC9+sD`;0tO_+~^V8Bmr_X|A5UCTK2tc_4ERL!JQb40rW^fKTXyN+M z-IJ4=mtK;Ae116C9tspa5K{pN5C@;y(&(keVO$O1$3c6{fdF7dTDY}qG zu7Yk_aYBWe|gq{z<$3NDOxJ0&F@8BnG-S6r>GV405*;^n`NI`Pd8$@OyA!Q=cHc z86b^Fhs%J(K<9pggptjI-Bk~pMh2+^o#_rzhiu*skN}!_XRwGpfQliT_XR43Y#!t^ zd&F`8ki9a{!|jpX2fO zycR6x!S3!x*1HC(4p|I#*EX_wSD@;U-S+}2hOGAw7BK+QiJ20GUS-Ht6-)PW9gKv#DMi@Fb3 z#8|-BBB17d2`pkdSi~H#h=pJg%fKR5gGFot7O^E*#CBj2JA*~+0T!_@Sj0HMhwY<= zfeaQg12i$v{W~sbVxV|n&?~OYElEsb&?_z}g3uW-R!M3_34>k=Xrw?dskoRyuP8Mq zQ4b`lhrJ?2QUGtyAyeg+!D=~n zX|Ux8DXf+wN#nE}y%mWRZ}70kqXz5@G&RgVlP3EKZ9N z;|AC)#wrW87%qd=VuUPCi&0v}Sd#!w6<`OT$YON_stTMAfi>x|`5%iM*m9^iR%>B$ zI4y*_3pP-K&+pjOfE|El23CiltHJ3Y)E+jraKNbo>=+bTtWH5yfzu&q{Wz>4gGUY6 zF=+BworA6hr-KkfG1x){t1Q?Na2c%DBV=(}4DK*vvlCqcY#m4tt4&}DoR)xlzSt~5 zmjGJ=62xi=SOTXd@FEavY+{uKTL+iHY9~S#o5jeZsc8PgA%!H2ZXdD~cFRyNsKc-j zr!=+^3MAd=(%38q2NlWy3X%cvstlI`c)JHSo{L>GcqkqkeV|4hNR?huKBkCXPJVJ? z4uf7%K3G|CNs*zR1x#6LQfYd8W?ou8gI)@lotTtVlv;)&os*x8!cQzp%u7#&H5eh< zun2)hrC_EOmlQGRCFkenrskC}=;h^?r0Ti*h3bOGe4u8hX2gRBzrf8_Tm+~K&BE{z z>wUD$pp{-&G%|zMePI=ccEr%+m|>kUBymXp2-;~u5(hDv8K4bs5C@7O>M_MZ(##C7 zUKxl7!4UPB;viXO$o+C4CLBZ5gYTDvi@_Mo@FO{4BC!4hL>EF7!eVCNgD{Xth)PUx zkP>Ea&k@8zV2FCqXbnOP#$twC%m(9vX^498MQdO_GQrFM>dhdFz}$~14pPO;fOPUS zNB}+_g((h_W=5Rd4B~<@#67UlHn0$!U}gZHWC`bk7!dWC;vhL@2F%-KA?h*3A?m@0 z5Q3O+3{j6M4pP9(pa7y!Fho73I7ksQgA#~B!4UPB;vhxL3@RWB1w+(hih~p}Gk}gK z1hEhpq8?Kmq=K0N^Aco;dQ5SMdMyxzf+6ZL#X*Xg8DJx%ARYum)MJW+WSJTCKokmw zsK*osDPm>--)snC!ZAcWrZ`9eGlLO`LctLAnBpKs%nT+V3I#*dV~T?mF*BHfC=?7) zk0}mP#LQp;qEIkIJ*GHF5i^4oh(f^-^_b!yMa&E~APNOT)MJW+6frZ{fhZIVQI9DO zQpC&v8|?=1AQ++^Qye7A%-{r~P%uP2rZ`9uGlL6=LctLAnBpKs%nWWI3I#*dV~T?m zF*A68C=?7)k0}mP#LVCYqEIkIJ*GHF5ic)uX<&xWT!45G3~>+q-W!M@lw@Xr-$Mcwfz=n7 z;vfag4DkCRKwL0}n2#wAl4NE8pC}7r!ZAcWrZ`9eGXwk{01y|9A?h*3L6Xc2aUco> zL)2r6gA_3{B!DOs3{j6M4pPL-kOZPoFho73I7ksQLkfsO!4UPB;vhxL3~3+=1w+(h zih~p}Gr(q{Ks*SBsK*os$ucv*&$b6~!5E?*Qye784BkEfVj(a@J!o42LJY=YX2^pv z;WR`&rZ`9eGXwnWa}XDdA?h*3L6Xc2MIZ_VL)2r6gA_3{lz=D{3{j6M4pPL-0J{7Z z#6n<*dQ5SU3TB215QTyv>M_MZikKOyKokmwsK*osDPm@T%_xF+5DZa|DGrilW~c*E zC>Ww1Qyip-nV|thpF6?6bgo@#}o%CVrFOqQ79Oq z9#b5oh?$`SM4@1adQ5SUB4&mz5QTyv>M_MZikKOCKokmwsK*osDPm>-U8n+LAuvQe zrZ`9iGXrdP7{r5MhWw1Qyip-nPCoyLctLAnBpKs%nb8D6bgo@#}o%C zVrEzXqEIkIJ*GHF5i`Rg5QTyv>M_MZikKN-GyNbQ1cUEz#v%^t!7(Cm_pj(a^ zmcU#3FmaG+%nZvw6bgozk0}mP#LTb)M4@1adQ5SUB4&n_APNIBGpxoC0|_uQtN~FN zn3-W6h8ReInPCHn!obW7n=r&c0?Z6sKokaMX4r-y2JzQ+EInWb24;rs80tX+%nVyW z6bg0(Ux$tuuYkli0|V%`F+ql93>%OH~Yh};jeHx?|8=)XgaV<-ZPBl_tubGo7S&VVX} z*}E959??&Ssow(@NA$;G_Fe^xBl_J?;}}5K(hDK=yJ6-qF+= zn0j@vI7}5{J(d+%9MNBf+3N=uNA!zf<|IPxg{}91nOF=~kLVY})VG1f5&d77e`kWl z5&c}4y=%eZi2f|h9MBpTP`dg69U6t%dkd@{(VvB>{|FXG^jl%}a!;)wni%-%;} zaZqgnDL-N6e1+P31G?4=W-mJ%$iIkw7EHYqSRB!xg4wGJ7Dx1(VD>tK#S#4@m^uDz zkZ@jrW^W8wJ)(aEQ=bJENA!bW;uUNRSVp}W7}~(`e!&NAx>j>dV36pjHQJIJbkv z5&a05`WawxM1KJ$z6NS<0Ghq~!RitH1(^EFU~xph04Dw%ERJaZ!^Ho9#S!g%n79xJ z#J{j~52MvNK;aB(HKF>;7A%fv&%?~|gPH?Tjfk%}uzEy$9;QAYsvee;VD@%G#bGUI znD{KHIH>&vvI8c*8Y(V<7H+$t;;?nBF!g7k;u&b^8TniWl?nzG=(a%UOecK97sdoC zTn0Wlin8zwtR7hewEh|_2;T(+pLRu723Z>pRs-Lnh%67Dbq1RQT`LaWMgUsL1{Oq7 z3Z4iC3q#d{1>o+5E=Yse2<3oW33nG%3{?T#DyS@E5k1^c#CkG_HUuBVXoN6^GPnf@ zHE4DqmW@F)BlswGAcQfL!RZ4qx*HF$K;=u@Ekbt_W@kTm_o(@ReNDvTj1OZbp=ci z#S%0*h-GMk82*8qgz6)d)m9LbP=rt{Mv=j$817RPm1zD&TTulu2Tc&gS~NNA8sJu= zsYbILzMcwV3Y?2#AzTz)5!@2E3N+*W;KvStSSW^q1R&;tScv!mm-BFg!E)dz0w)8o zB$x{?T|rBzAm%{#O2W%(gbavF7wuMA>7iW-C+;GjlX_=F*X5-=!A;SmFEEx8R7=fm9t+cS-{-3!!Sf?;z;28Nw54(Ko|DBA)} z9M-RqVq{?01yzGgkz>vtBm-dmBar#~ki=n3koW-@2Z;vRdkBdSGY8~;WN~8LkF1^; zbExJ1<2c-pEKZF3k<}x+A6XpP9BR2AwvP_v4P<+f#gXmBm41-b6Jrjw+5TgSv@i4P|N+W zJ}Afw$o3+O6XSkl^~9J%E%!eKIUI_S?L`(R#{J0Zi7|&-?tcY!JBUKI7g?Mb_amz( z#vE$7|2@dzP>gIZvN$pBM^;aaIn;7LY=1P!3&{2&ixcC1Wc9?DLoN6J1UVdvk?lnm zC&vBA>WMLjTJHY`bvuYcwij8P822NqC&nCVxt|$2R)_9>WN~8LkE|Zq{mA0T<{-Nt zWH$(d+LOrYi7|%_$^9TRK$skJU}p+|^usX794;jDk==tVj_fa7?JH#U#F&FCd`LA1 zSNM=>4zBRw#}Pir;>3gxvU=q3K^8|g2UqwYt0%@BT;W5iIk>_{1V{KFizE9BSNcI# zkL)jGab$CFg%7fNV$8u6KBSt1D|{qzgb%VfvcGVJ53+h>e<6z_n}aKSkku1o4zBPa z)f`;mBZnh=kj0Vxg)4lJ)g${0Ssd9MT;ZdL!#&92$mZa353+h>_aKWSn}h5g*vc5t zq2I`>wO}h(K;p>d8*Ie`NF1adwxS2NA^{|htR5y05?>0d3>X;TJ32t(Aah_+$mW35 z!&b7uX2fCYVdlbS>|o+B^*5jf!o*?j7J!C1OdPhN!2?YkHuDcVrv|1THm|n>O+9R8 z_yd|aYz9>WIxhz^2j=bsG;!EUH`qBaF!iu8qYG&2FF^gt0bSPsQxEHdIiQJufU2)R z6Nlv)*f}dOa}=Qdd4Z-LG%f`)3beiiM8nj>!Z8Ax5Mkm8P;(}ri5Eb{Vdt2@)WgD^ z0lMA_CO!kI-U3Y=c1}Z5M^m2&jVRcP0hszJ z(1H+Dwt%$2#C>@|JO=oRQkb{})cpMrX?Q$>))9b&U}JqS^@pMEzX_5=3O75bz0c6Z zm7)C4P#R{A8#JH5w%EeN-$DJw2Mt%4xEYiWt1DsRnox7yq4F^CSJ3zhMiU3E{{m@= zM-yKNwHJ1l7t9>cdO(o+ay0c*py{(2O&n%#Kbm+t$PfkwhS_N1F!wA+6NkBH3z~Qk z)Sdg$#95%>c?wP36&em#(ZtU~`46Bp%)fHb_LEUMACJtJ+2-5G2CY}uq2iW=%nE3@z z_rT67gNYvn8N$H8FagaR4rn@`izW_>ukC2!bx?bcpozos|3x%$NvOZ>qlv$Q#_wx1 zaY?9qKA?%i`Xpk|_<{NB7BoDS(8NLOPeESRLlcLszX7c`1clAP23LZ{w6eWE-1ebO2gcv0Oiku(lGH|Po*im7h$@E4gVclE z18bu{^;xKdO zK_%`(#X;skqa19`Kd3lJJ;?pC(0s=XP1i8>&|qhfgo=aIgWS0a>L_KXI7mG-3c=<( zLB&DpLFR`+%@05mht+fOXyUN;X9`ptW+<^Fi*3f|iprpyD9)ki9El=P+!C zii6aH+ykp`j-iQLLCe9@P;r#X;tP?6rle{{$5WsTYJ;2_`wAi3TPPjTQ!3 zs5s0V*x8iIP;roYVXz4h!U-x4QV()}G1Ojns5neLEWTo);vn@Pcdmx=LF-vTCW6$% z+TI|38&n>o9%Mf3OwB21;!mOWE=CiVgO)ohpyDv|Vc~WODh@Iqm*F!2dcaek;c%p91#I#6+tdXT-X&~#!36$hz@^)*0N`=W_M zxeSR=2F#paAjJ#}4CzpDkU7#&F%Z=T6$hyYx&I{8o!wAzn0i=zErg1L)PvmV4NXs= zb*>=uK~uy7ND=5LsL{Gjo!02K$R zmxsCqMA<{dLFz&7ftCAyXyVVH_69@6VdlW>Er5!H%mIZ%1Jr$0P;roYMUaJ1JP}PC zs+?gdR2*gwBed{a4HXBO1M6FWj5-As2dM|SAGGfQBz_($4pR?xKEqR}I7mInoea?Q z`W`9{QV;8^g3RHAraO>&koghN@>d2;d?Hj_8%_KaRNMe64l^GXZm{wXWIo6}+EDkT zAgKrKfdsh)gqxw_AoU>kz{>qeXyP`|bT}O<4zd?y4$R&yP;rnsAbZQ9mB2ozI7mIL zj|H;#Dw;SfzFtDbVdi8*CEi2DLFQq5;2Q9)2~kb02$>!9W*pou?+isz$=D?r1)1S$?Q9~N%&pyD9&LGD=& zl~@542dUQwIRuK2L&ZVrLGFo!ntu&Vd=garHdGvD4%B#tA5d|SIUsvsJ0zH(3P9=& zp>~2ONi=b2urcUD#bM?YLj&3vDh@ISHueHC2iETdsRz0LG}N8pXzHQHFyunTLFz&7 z6o#g&a;P}Sd{dCYP&^GP4pI*?p9SjBC1~QHeGDKio6*F}pz3!(#bM?{xeSk>43POC z_vk?#`UWZvQg0427>c=}?ggm_xo17pd?_^X7f^9|s5s0VsId$-P;rnsAbYc+5^hj& zka}2~7i4uTnmE*WhC-+~%p4DBIR(qFAakri20-yNB=sQoD?-)JhKj?~LxX`~BUBt_ zK4||6$f(^=agcgjkN_0lf{KIGgUpYDn*Rb#d@@x0JDT_zsQ4eKILv%#@Gz)Bx7dQr z2ZbAK2bcj=9HbsLW&m=MKU5r~9^@WYXt@)ICT<56Plk%a%z@e402K$B1F|;}T5fki z#X;&}V~iks7ov&7;%h5Z9A-`hwEesrDh@Ko8Dszy--3#R)Pvk#4t3{!s5neLEWW-% z#X;&p?z{sn$NodbLF!$hW`ig>Xk!|r9%MdjJW~fv99E87qlqg)%N+-(ILv%lxMe}b zLFR+pBLXcSN}%E(_3j{tK=EX#I7mInJ<(9}7omwyfr>AOio?u-*?R;k4l)O1uM;$! z&q2jO>OG-$f~cox;;{Jo2^EK#a|9NiP;rns-XH^@SPnWt15yui|5>Ozm7(G=^|1J| zgo=aIgWTy04IgKyI7q!O)NBxy1QiFV2bs?X^>6{2xII+79!^Om z2bm9Yj~X-|?tqGe)WgQcLGHN@6$hyYxo0EPpl4{}ub|?uq2e%epu!9s(9RXe9FV=w zpzTs2s5nS{Ajm=})|EI7mIn{gqI6u7--k z)I*)aa1bgEQV((`543(c4HXBek3};76;vFg9%TL|sQEw8#9u?j*`b|zn0ggxxxfPz zhnWuxH#4X>NIl3sGokV202K$Rk4JJ(JX9Q{9^{@_sQGzl;?tnw#ZYmWIWT)CK*d4k zfb0!`_FHE`#X;&5k?h@wCJv1jhNDn%m^q7}`Rg=P9Ar*1k~y!S;vn@P_n(Kl^F34? zrXChwtk9z`Kskps5s0Vn7vn^;vjQC z_QK|;??J^u>N7zWLh)BLacHnHa6$)zVCEcvTEGt#2blw#qXZeH2NegY2f1GrT82dM|SvkRKPf}!Fd^|>H}p|}Vt4pI*?KMrbs1Dg1BsCYk`_ywr=6sS1N ze5kh=_Cdu#=7Zd$1+7O;K*d4o^Pz45QO}{`AoU>ka6H#Bi4sQ7QFILsWFy%NwP zSU~20>^%n!ASI|cNPQv5LMXOG6Nkl@FH{_64s4D*7%C1jrxXQ;S1 zns^OVTm~u*Gau$2H>fzs9FTjGp!q8RDh^T)o5KXTCm$*fQV(*^R;c-PXyWgn;>}QT zm^mX3lx2ILw@L(2RE#Dh@KI8EOWI`T`XP zsRy}V9h(1tLd9X~VdnEg2c1FcLGFZ|=OYOf2dQrb84Sf1P;roYkogHv^WD(IXF|n8 z(Znx7#iO9&F!N#VX@QD^%m=xr2igzngNlRHw?o|mqSiviLFz&7;fChhJ!s-CQ1OFM zahN$Ud+$NTLFRz${SHkhFQDQe^_?IKq4+Otni%EuNo@%K=B zC!>jLK=bDes5s1gn0xj>#X;tS+|vy04<3VxgVe*;{D7SF6eR2*c^WT+V+ zDhnzOQV(+fWvDyzq2e(0F!NiX;vn@Pca}lh8~spmkou`0gQ0jGR2-xpWIhix-|j&Z zcZG_dMiYmXQx~A(F!N#V`2rOOnGbSL7j#_cA5B&hjc z(8Om$#hIa#XE60wpyC`*ahUlq_gFy1LFz&7se_hFPEc`>`uR||fT%>MI7mInJ+Shq z08QKtny*Ts;xKby_RfWhgUkWh3!67x4iyKfUkI`gijP6XLFz&F)O@oSq%mLZ^6zS*e;xP5zQ1$IlahQ6L8$oyiR2-&W4B8%> z0~H6UM_#YK6ekOpy7zpyDv~@z8KP1{DXXM_vbh9x4t~zYRK` za~moSQm=tz{u8J;Og(IV`2$oOq#m~R66BtrP;r?0IB0#r3Z29SsYl)y&j%HUsoxAu z|58wKkb30(=E_iUn0na!fj(3mq#pVF0Sl-&O#OVQ-&~;LAoa-m1bw06F!igUR2-%rwti&>R2-xp zd7s@vs5nf$E!6#Mq2eI*ur+s}_}T^)hpGPq4WC0$agci0T2_$y(@=4kdXN|hUx$i= z)Fbbsc>ooMshY)9Hbt$1`uSvCsZ7!z86|PghItZ z>XG-=#zDnl>K{SFKMN`jQV%+_6=XID7emEi>IlR_^p~@KEKp8M`nEBsvh{G<%f~kj@4;#M$iNnkQ839Z4FmY%x%mBMz8(kc>&juzA z&DIRC^@bpEXi)+(o*@pJ?qK3DyEAc!7ov&7+z(r~2r~z4IB0wfO+C!~ML5Jk=P85q z!pwo04_p5T69=gQVc0$1Fmagqw{e*N7)=~zK5YFX$Q)Q-8Du^uG=IayVdjhA5SKv{ zhnWvsM+q|rWHtypp{a+N?~6k`6ipmvK5YFX$b4Ad2bo`uq#h&=OFwNm#QV_1Vd)39 z{t;w8bm#oH;C zV8=5sFsPxahna7PL);Qg9A-XjJtoL}XjdF;MLd#vkT}eI*!p~!dYE_-ntGV|uyvg< z^ZYp=o7!^BsksfU>lYcGS;!|Di-9T$<*gT$d+2H1WDn0lBvY(E)H z9F~4y>oGy%(5@B8cm^)00+=|=ouW9zWzoc8?uV`GgqZ_2oPmMC8BIORd_NrGVQAto z^I_{l(aol zTW5-H{yQAz{KO&72yJ}8%z>E?TOSG%M_xy&j-(zW4ofFSIK-{c#G%e$fUOS&nUB1V zGyzFHNE{YE**L^u`xId2z}yd8X9^Ps2R;J>!%Q6J!1gJ?)WhsugQgy4K5V@zOg+r} zOK9q0=G?_0{uE6dWkU$aE*_4L0-881{lM0%g3L!=*SZZ!JxCnp z{)0HgPojy#!UwkQ72W*zXzF3+|H2{81Z}*+%z>E?TR#gE2Zb#NYoMuznQx3k+!{?B zWOtZ#^K)>Bm!OHm%!jSRMK^yIntGV|OL2&=MH7da4_iMAG9P)J zE$Do3P&mQFVd>`{k~tvtF!5(-;;{4sTR#gj2YH<>4|E(0CJuAII1X`nG;x^wVe4>V z=78J`!mxEcFmagq0chsH#3RteVdlfu^TNylnGM2qXzF3+fX*KW$-~sc#3!PuhnWvs z&kItIyzX~9l6sIh%$!3w#9{k5VCKNghph{SiG$n*!XI#$^BadaGj!eqW)94J*m_=& zIP$t*O(gXoaacMr!69ygCJswKu=Ttk^O4v6CLyT@iNnGt7l(K$nmEk;uyw)c=Fdh` z4>Nxm4)Jwp;xO}J>x_!_1e!A+CTX z4l^INP8ntnDD8l-8=88U`GGjZBhkcR=EK$(gUm->hg^@O9wZJ+KV3M)Vf#&B=D^Yq zY<)3E9C;n`4kU9x;xP9g#vy(hO&sQa*g9o&^I`LuFmagqf6&Zmti@S0aFjhcwuOg`jiNn&*103Qn z(8OWs2e#fBWIpn`Xg;U|VB%2i49NRjKX_z^numNFrr~;Tc%pBPM z7j*F`H1$v}18n^@Og+eK5N?1ffQiG*@5UiM8BH9@Wq_@}2APArPJ1U*0Zbfb{t+DF zXVAo2JN#95((cQEx(Wel+O*C27^b=ulU>OtbL^karY z+zw3~mVRLCuR-P`uhULJQV$Y`xj!F=IP(4)kb0Q=Ve7cj&7X_IoE134H=v2b%!jQ9 zM>qc(ntGV~AL0;yi6#y+AGRJGWIpn`aenA}XP7w5d?_5_N@(IR^I_}CVdj9+4hVao zsfU>#j6*ycO&n%EY&|&0eB^cGjY#T2;;{77gF}1@nm8=|z}AC<%tu}~z6(h`NF3(= zqd3IRqKU)Y4_jA`ZvJO9^)U1Q;Sgto4*tT-fte3mpAHiTg*^zv_WQuZVdk5onFABI zM-zvc4_luOG6#7bdn%H8kT}eo0vzHMXyP#QVe8z{&7X&+9%lYZ9O4_%#9`*c)~AEa zM_$K%9Z5Y%9F~3_;Shg?CJswKu=VL6^O4uF3qaR{!^C0km&PHEyq^eU4$S?qb?z{8 zKyeGgo;b`2!66=lCJr+nwq73H{3bN@F!%T35TA-B4l^INULIsV^1AxnNa{i2F!PV$ z5I=_|4l^IN?jGIzFKFsv=Kseb&JJCN4l@U4K5V@_NE~@xy)Ke^kT@*;Sl|$MKof_h zAJ}?%kom~#>eG!GQKnPZ7V+!0M2 zWOtZ#^NVnZSD}f+%!lnuKsSE@ntGV|t8s{LMiYmb58F=wG9P*0 z!A&IfAaR)aPjHC8K@*3W58F=wG9P*0fe>{4K1>{DzAO%LRWxy!`LKNnFmph03&OB{ zTQG5$`C(}0z{KOw#9`*c_BX)H0htZL$osiK{(_m)k7f=`d^(yq%zW7X29Wv4`ylor zsRxO}%sGKW`~sRd%zW5B33T(np{a+N&j^~#hUOz=dtv*+VCKNghwX0wi6ifW&_^-{ zBn~s*3WvB8nmEjS*!~8P`LMMypzzN?QV$Y`nO}@Uyc$g$Wqbn|basfU^W6o>d*G;x^uu>BSw^O5&u2t)T1z{FwZ%i$1LLlcLY58Jl^ zGY1s*Anb#t9%gNxv4)K|2;xO}J`%ysVBkx<;kE9+X z4m1B04)IH9;xO}J`&!V=|AD3+WEr7(KO-ryi?7jt%IJ8Oxi^J|)0Et7hGFTjT-vUS+8iZhR*nJBiapZN6 zu)Q82anL$Fuwn)V2H1TIAaUqc0EiUQx@FKhI*1?x1M>Y8p!IJsao9Z!Aajt{gCVaQ zM?Qzp0m*#OIxCnt0Z8JY^-(Z!*!>J3^Fix^VB)a*89?I5=jOrgX8?(V*4x0;Pe3vs zd0ou{ByrHX5t#Z7NaCP*X}vLM9v>{mz`!7YBo3N?hlwj7iG${yVd4fz;>hP{IUtFH=6PZ21CYc)^RO^+ z|5EAc-TNQ*;1H95hb^ zGY9$p5zzb&O#A_odeFQEOdNLZI>jupuz|;#s2lPPdLF4%_ao9QKAaT&R zH%#0BNj>s8Fv$0wfX10&>S5>ofXo4n55vS0kjz0IFD*b4M?SZt0ZAM*4hb^{d0jVX zybdP507*S)+zciTJI@B>9^`X24j`!qjZ?wYUqBKEjnBZuA0UZ?#y4Q%ACSb6&xK%s z4upd21&w3C)C(YqgT^0V;>h>BAos@&kklieW8i=!4(jK^%n3je2lW$S;;{1}K<)wc z%V6RKNa~UI-8UeKgZeu#^~m?jAopt)AgKqn+hOWAAc-UI6GvW;4QeOD)L%eS4{G1S z#2+AuBe(ZHAc=$86)^S4_u7Ek32<>J0~8L>rNLkk=<+vkJqr?t)#J$ZHFCWS?M8sr zgT!I#k?V2f`Wm*+7-TO<9A+PK{f=CZ!|pu*sRxNey~%)F?<3dmu=`~|>OtZ#_aL_i zkn8;ju&*KQ3XnKVJ#sq%xjleY%19Cf|0?B-kIL!UX?F!`fLkE(2kT}de z$n6c}cEt=N^&oMWdgOKpa(iP1l6sIh%>Bsi6XbTt4kYy;ahUs&+bziLlM_hlLEXF+y$nBXINalmYVeUt6{~)(>ejup_iNo9vyYB{+PLSI_u=}ZC z;xP9hx0jIHMG{Eu2aq^SJ#sq=xxED2dk!)mBo1>wa{CIo9fiCv4Y%8*)1hcHSz;Js@$I`;psq z$nCcdB=bSyF!vz0_mJCluzR{d=7Ypx>XF-l$n8DY{aqmSAaR)ck=uvJ?LgSQULf@# zahUs&+l|QWL*)I2AaR&`klT~U?MB!=U?B5B;xP5d?M&qMKx$us#9{71Zm%M@OJV!bLGA~M!_*_UW0Bjd$oJEM#9{77Zr>ue zV`29Sfy@Vq!`zSD?nQ3jdLX$UBo1>Aa(fuL-5Y_V9wZJ^kK9g1ZV$umEdsd*Bo1>w za{C#%om_!rK1dwqe&lvFa{IXhNj*p$<{sqsHgdZf`TjnTI7~fqI~=*ay#mR6kT}f! z$nA6FcK8k?^&oMW`;pu2$nEnJNa{i2F!vz0=aJj(H;~kW#9``@+xf`t`4>p)LEXU2XgXG|p$o(%4Xas@EH;_0?J#v2yxnCxMq#h&=Q;*z_L+-C>AgKq5 z!_*`9?~wa(7D(zr;xP5d{XXRWod=S7kT^^|a(@uH--mpEC`cTp9=V^0+#k$9G9M%k zQ;*z#MD8b6AgKq5!_*`9E0Oz;9Z2dy;xP5d{Y~V4OpxQ)HML5b5K7Q#0KF$5CI*Z2lZ#6Tn3O{5F4Z()Nci`K^VDz z1nQrH#6b8gh=7^{>W4zP43D4;kU60KCX~y7eC`LRUkMZEL2AE&`j0Si*cn+Mb3pw> zm^kcyPLMdLKL``|MluJ~?}LdWxAQ^$JD7MWl6p`-4kq4(Bo6AY!Ng(bPJ!$N^~+%5 zuzNE>;-LN)O#CF0ImrF5dr0D-{uE68XC!e@zX>Le++GFsk6_}mNbLkrKL{pngd`5? z@4&>}k;Fm$8kl$tk~paU0uwJp5(o8DVB*NOuVum^gB~3)H`Wi62E$ z59&w2#BU*qgZc|F@%KpLpnd^NoCT@;2etoU;*v<>pmsh?9Ckk;D84}Ld6>8}l6p|P z9VU+4egL)4VdA++>Ot*rm^kddNRauU_BKp>I+A)&yBa3G21y*$eujx3L=p$JlVRep zdmcgNgWAI|@z+S|LG50cIC4D*YTv@dk|WsC@zw17Tk1#3v|xK`WJRj5l9@l{)LUZg2a*Q-ziAuBiFyM@lud_qLt>qn3{a{UV%4+M!L*S|4H>XGYT z*f<_YJ#ziqf}|d~{)LUdfz%_{ziW`xBiFyMaWjy5h(cYLe_`W7Aoa-gZwZomk zT>s8NQjc8!!rB8M^~m)v?A~gSICA|98$SVwBiFxgkjzJ}e_`VuAoa-gFYMlFkT`Pv z3mdNhi6hs)HqiPMB#vDF!p0du;>h)H3X*!{`WH4n08)=!|MnoMN3MTi{d$mk#F6XYB}nc;u76?uJCJ(h`u7Zy zdgS^S)-MC8N3MUrAgM>Le>tG_BS<}R{VRhcj$Hp5Ac-T_zb;7P$n`Jmd?%3k$n|dy zl6vI&w*g5Ux&EDkB#vDFu0Rq;u7CF+i6hs)7m&n}>)$6x;>h(cto;CTKXU!c1Fbhf z;>h){0+Kj#{cD0Gj$HqGAc-T_ztHN7YzkCYfr@OX@o;ls^RjROCo`R_dxfz5( zc7bRZ&V%|3-ToC&`(geB`5$B!2!r&(#6j&XZ1%(E-O=qs=Y#StNDSTn16b?_9XWz- z|27=qp8|3u0|Nu0@CV%!gw6gNQ2UYNA7mD~{g-gq4_ik7(gSr0m;%`aWYrM z2GKAK8aD)qp@+W)wDN()GbsK+Y;^lU{RwR059@D%%!b(oqS5*FIQ;K`#eUGzZFKvW z;PC$%kYz;Vf6#a*$W7?}kAT{b9RHxcF1r1Pao7(VPbL)q`*8Sw0T%l~R~De#4?2e( zTlgP=`X8nq%Eie4cX8PN0%|`f&Ov%X@ef)H1~U&P4mvj(oBgo67C>PO(htMvd{F-n zB!(XT42vK-VD^CQS7Km*r)QYBA`|xf2kXBR3V+af&DiXhfZC57|0-DQ2d!Vg=Knho z=M$`dteLQvKM7duSHog|JP!ZE)>pye3+fz<_>aP2{|c!6uy6*2KWNP#%siMl=pGns z{)esO0);KiZV-*muf$>h0W9`wVe$Vw9R7#hl|d-}XX3E`2GoA!_y@HW(fxl2hyCD6 zfr#>FFAn<^ppATF`}MH+A9UX@w(y6IJHgxw3VRSn5C4Za?9YJO4~u6|{Da2yVCKQZ zxtOu%KiJ(G==P!WS(&k?{{}4f8)5OkJ`Vd~>-h-9zZMSrXF%;o4u2CY_WRJ~4 z2NUnaVLxoWBf5R){1zPcJ7BTj3XA_i>p-xje;be>5%~{vPCCd<=;0p$wI4bDZLrvX z42S<=g?6<>WKj^%5kXO;$pCKSYB=wNkgyc0C8${p75&kcr_QT>C z6#t+wLXUsYx$YpV(CvqfON0CdvImCI`G0ZP&j7m2ih+Rv*?uP^|G>l*S+JKspmr_D zPD0@?!vYBtkl#S+VORocKXUwo<}T3v4?15SoBwk_f<&Z0I~?{WV6oo~i~mz`_#d`j z7v^4=ztF=Uv_1wThVK6rQ2Sxw42pkHSisDKiG$9$2YD4e{$cBaL1x432GQvJCLI1h zfW>|;;mKZe78*g9uI_8-LI ze}!crTNxOT?f1jt|3^6Np96{%B=r!}AZZ=O2GMtM*q;Hl9~RFb|AY2kp!@$H4*Nm< zGLZS8um#aDjLrw$GXN4p5B~-%_JhXS(CwFI#h(9R>%$3!zZfedOwjG00kt1F{6Tjc zq1$hd!+zL$8AA4h?mNKd{|8v?4?~JiSiB_Tupc%*2Xim3@Q=gce~sl39WZ-9@edkP zgqa5uZ^vOjZ2dgQZxE9pBs#wdhy4y%?2p3Yf6#pkprnpo{+s~`5>fsx$6PLiUH?us;Ed{b^YI54s-%6x8VH54N5T=3bCn zKo}I(AR2}%aM-^BYCkNTLGcgTGY2ydCcY4d|6%j@==P!W=ispa02ceRu=xKN4*OyE za}f%E&^;d@H=)P>4XFLd@ef*yg6{t(IP8b*n;~RBXuSTW7SEvg2hC}~%!7%8?j^xyzX{ZSkl#S|z%V*r znjPXM^zd)MVn65(L3H~;_cCI$AGRKZQ21Nnuzv>Be&p~k!IJ(W*s+&?E>QmyvOgGy z{SUC%Uxvm0LLBzP_DK=4A9RlkC{EDBUt<*{#*qCF+5?Lo{#`iihpo3IWPd9T{}*7f zA9PnFy8TOV*bm#^Macg7IPBkn#eUG78oK>^ao7)AM?}c}9XRY~fL>^c9R77!;{O^B z`(gXi2-$xThy5N{><6v6L-+rC9QOARnf_nluzvy;`I`KJJ#z(S7yHZ1-J-4BGV{DZAOBjkSv9QJ2mu^%+2 zithhp9RA-!r2pe^*uMdb{asl6--N?{*#1RA{;$Ph{|_wo_h7MqE)M&z5b6IJIP7YHb?teZ`?Bx$^zXl=uIXSWC{{$@dPs8GWT^#nq_PG+W zUjv8zE3nuPI->&J|2{bEmw_(mB4oci4*Ne~v40j8|L5SaAGY3=kp1a6?6+8t8UJ&z z*x!r8eiI`7-+{ya1}yf^!(u<^zAkL#KWtwyA^)$$VgCs%_Jh`xpvV6y9RBwq(*H+s z*e?J*$OO6k15L@I+y4w|Kh!!%q%kls!1gnN#w_82NZ|()dx*pS2&ny_F%OVhQ2z%s zC4z4M4;=P`=A}UTUO?B2g4iGo(+^^U@Mj$M?||A5+qVz0A2cKg(+}%^adSb+AJE(= z$UGRH0Nq>x8wY`j!}NpF3`k5KsvpEg#tqO-7_p!Qo=6ffeJ~*@F6`x30rcYa1kj{0 z0|Nud{h%%l%zl{rwQ<;g7c|+|>W zuGSKV`!76(XlQ_%19Cs8Nr3KtKOFAY1Wi^jFfb^f#Xq|Jo;d6e5Q3b+J(QLqZdhR$*)q zU4YAe=m9$oQ2ikLHzDO;So&#%+7C@;AS1yz9=ZwPDDtKu=vqmT0;um8dT{7hfo=`} zt+@fIhhdmL7(ErLA0`i@y`cJGd>9SW2jj1T>W4NLVZsanQ2h~T1ADOWhbdf&Bm6R; z3jmPAZ#$Oo1MQJQFFQeIuYhi9*aBK~3le~0boYb!=xzroO#pS)85kIDK=a>j1_lPu znmCyIVetnlrm)#>0cz|pFfiPPX#g3D6n{`ILrG$BUVLduj$XdL0tgs@2q=cIA*7j! z30Ty~(!{_5%u3*@clB{&0&VPr8pg=59ky%-DgvPtpm71>LB>fO7}Ob57?>Cwek!my z{B+1j*l~b4{u(ob!%rs`ho1=PnsKE96T=o^28W-Y85y=H2sr#)z{s$Lk;7qU zA|r>Hh(yEAQYMkr42%pR30WmS92h`$GEAw@G69>ppN-+?0wIQ-pMxD%eyw&~`M;TA zBG~-HQ1hc1SAMT%TKRyPVT%ZZ!_O_u3|o=~9DXJ4nOS~ z7*;P}VF*#kNciE(>;T%9H>Fj`;b$YC!_WN;@~_V_GK7HaiDzJVy?}`!WGM^7MP`Nu z&{ky;6$Xc&^BEXkKVW1Csb^q)t$2W8VloTEM92UCLz=}LekwCDYU_^JHw|JGs#22+rI@BaT6XJ%lS(7@Ob zl+3^|k&&Sx=#W@L&=Z9Q&=m3%kea9e|BGkkW$G6fCF>^_RTh-w>n9fH8S2B!lVk=4 zULHu>hJgWcnjEOC1C;?7m))BWa0qVTTCnviV<9jGcke-GbSc*oy-Ip zx@TZuVPVb8D}ik1W7YsIaRD2{>;Rf=fEo-l4QeRF7*@y;M=X;-BUNDYEm)bDKxEgFniWnIfIE(Wb*p7jeFmUF;m>isWnJElx$3gq@1i^LPriTn-ffO zfk|#K$pa>N!6YA;gk1C}0A>qOD7{JsWS+cB&IX4b}@pDg2;4(WuPgnml2dMped}Mv5T33L4g5cv?L?w94gSh z4yZsaViJJrDDsB$YITT<$tkW6iz?@^ix`gpC+&N3ZE?^KWDPdq; z#u&u{N}&)fGZ@dqv{76t~03FQT>3=E7Q0%Afr z+=Oz32^CNiK#3H*tDeyZvL#zx8plu)wj6NW9K$6lR*Z6?UVhofi zPR(Ip^aU*{1xYbL%nCv_3$%#`B*!>MmknlC5X>y_4t++jdd5IGkio$qgF))$!A6IG zjAkolC}L2WFJF{e!oU~;GMq60a^O89Xo?)9ngO&{5X4}dvk`7h2Fx0;$r&({!98ro zOi&;z{RPcMfb>BzW2UkMC~z4V7!V9zs0e630)wg&l*hmT^=>}MMNs{S^L6KVvBSKZ zkK&GeRCg4B+@XfyjshEYWGBEKh086VeVt%8gn$MTKs!em7~%VdK?`X?l8ke%!X4F& z;;3erqa;8@7Gn!2{b+#JT7k5IFxW&;l4wF~h(Kx}al*jBpqc`e0d>eh zGK}!8#IW%l#yN!?u<+?caY`?$Q~E$o(ZcGKe$ZqHY0iNkwU7l0CP;Ffg&cpd^C=kT z1aQLKHw)puJO;*DplTH4DM-G6>jo#X*{F`619H3?vg1J-8RrUcGB98|9Fo2eVTa;a z==cl+Lp3)8gDEEigDztLQ!@htbi9OtVFEWuEQqO@L64uo}L8Rvv?!6FB)K)R%af$`4J*}1!k~JCIjPDm_Y`qMMVsZEbt~S-0y3-85rQ4bKFP~{0;jE2HN zjG^KY+>zW249ctwhQc7bRJa*K#Tgh>O`v==WOX2yt9LdrG6*tGb&@m`W?;|&NrP;G z7^BI}2;wj>Xd#P(v}r@Mf%NEfHZd{^G8%$IS+}c+k%38KqLTyzgC0zRfk7YPR*aFcdJb6>_jCVW?zhC}O}WfubK&5|V2-BLk?5k769i z(LoqaK~X}PjmYQhfQ<#&7>HpbBLk5N!Db*4L~A5kA(G)>CfQMq#YR?!&y0b}u=W|) zcx(jGRuZic-4-lv8@>@k%}}Ct43Zr&L}(nuZpA1)sqI#3#yKMc@+n#1fG0Y$5Um$% zEE0jGux4aHKHUqf7UT}h@|zO9U}KR8Mh4^~(ZCWQOM@|raIh2-fkh*dESQNUk{B64 zI|;zDFal&9X2nXGUJOfMmceK&1tgB(C#o{Tq8DZpjK&gaAfIE#E=&WA#uCsVjbz0T zC>sV-v4VoR5k_N)HIQ2|qZg(DMq`Z+tSJ*)d{A2<%vCTNOWa|Jaga|jqmu-M7|k~< zdSOn2(O5DRaY8TyU^Lbkz-YC>RKsX25spO&rW!`GF%&WsFkovV7c#V9Z#?6Wz-1E5 zCK%1cV1QAgF*6i1VhDl;ogjlQ;MoJ1e#jU-oX5Zb8%u==!3I5He8^-ujK{zL8~1~W zzy{x7e2~2`Hi(9e4uRMp3>$9&u|XI%ZUSPDV(Nv!d}am)CWb?xqk$NI^YJn;GJ;o0 zfQ~xCGH1%5pOK%Ns$Yj%q!MUOe{*yFf-B3$;>OQ(1ocq(X-SqC`wH#&CDs$he%aen8ll!=;vf6 z>8B?rW7nq-(wCW+oKu>TN~)U*auQ3@@{4kd;m$QO)CW0EH?b(!%tXJmxJVynG%N_9 zeEs}_)V$*290r&;@^rGE9s^>DN-}75NpVR^N@|*32I%6Z;*yliyb`?((9~s8VsWZo z2Izbq&^$CqkcEK(#DoZzWE7<)ra;)4c_pbud5JlC8K5JVa}#rN@{=KknJ9!5sy92*SP z%mNDf`buCOEND)i#mLAU=Y_6=SxEsT#2lxf%q*v1YBiQsYa&X(m1;KOQtP>>3ml@8jtd@8|F5%8*u? zmt4#M6LJj;U?{09NM%UNOwCD&&r8frWhhR|Nr4y{;_4gV;~3(~kdvR6t^g)V^NKUm z^HNh3K+6?irZ@*h288%S^mvB2`o_CP1Tf_0r(~vOrl!E{^6++XV@NAXO@)iNI=cir z!g;~LK5%xBqn`_$E}9oK%M5)ST4hlKdh_=p`pH6qF_A zl;jqGtpJ6fv%jAkM6x)wBtAJKKQlQs9)dSYosd~y<8hpRI~e0*tUUWu_0ELMtA z(~|Q`^Gf1VQj_Bo^HSnVQj1ICt5S>d;ktr?9T|#C5|gvzi%a6c#yYw<#fLaL`M5IV zmFDEcmy|G+CFYc-GGyj~W=lXNM0{#qa(q#0aY=p=B7_6HorBHc#)5bj3@A|uHXIrv zaCIKOj?R!kLs6TOSds`=6Y2?0Y6yO?YY?2{;_2=h90Ca`kh6*t%TgJNGxCc{!09Hl zBsCYV)+y8t&UW!&C`ru)6~n2;VB^7Q6Yjgryv!141jB+Oz8IR;)3HQ|zmr#deo~eZ zXaNe`5Y!at=kDp}%1{cn2OJiTE=~-P^c)Y5s1mpX{hhoJ4k#`GC9>3_)V$=>Vu)w+ zld@8iOF)i_kI&32F*LGJfCV8#Nm33t-VqT1PQGAUUHzQ>T|E8VA%=%J`h>cI3`r~~ zh(`(a2vY+~h7yP|*lHT2g-am4pnxuB0L1__CxAl%6jUIwf)Z$U0p(d}^uSyTjwe|D z204)do`^HSfdw`R9zvk(ke`>zkdvC1UXsB8_83?N$gZN)G*}>kOp1qj7UV;i75>h_ z0R*b+U>6@)<3PWlC?6Ei`k*jK$}h^yOD`_Y(TB6Z8J7X-XP6bBvIg!ZNO=be0hn}v zt1mp7LBSkm%#a9L_u=jrs^F|(qGzdKWMF7&U}$8lpixkiT9lfTnpm8wsi2#il$oEG znXI6jo0C~ml9Q^NnwOH9n5Uqdo0ybon^RzBqM)0upzCj>pqo~ZnXI6j1}cL~GV}9v zi&K+9bg_bNT4`Q+W?qVJNn%n?Du@rx{<;N4`6b{YNw>J92vi8`rsd~mmguGxCFZ8; z7UY8)0SdZl#U(|V$tAjpIhl#YnR)48^NPzeOOi8mbMo^GKn7;!gHtTW|r6* z8yG0)rj=zDXC`IlWR_IgW@M(Mq~^f`z{wL@oI8d_fT9T;Z-_Do7G|!_E*=OyesHF< zXMl%m5JOr{VmhR*@eB0@RYAcFDXD3Rr8y;_0<0KZ+rW$pjtqumA&^({(&3hZ(k6%l zD)vCLlVF#CGYCdD#Vk+3iea@F$P@;5XJ;z~4R^m#P25omX+p!7n^XlcuvEw~O7qBr zyFRe)2TUGB!=}MuT_KPdtlIu*D*FQa^zER zn#?kVc`DO9#-J;g9q(Or1g-x9?TG>HMFFV;cbOdd44fykO<|qNGL3mU(>%s#t}B-v zuU&P#cioYX!I9gE>+%)HtJfT_--B?GcnqL9RoGdL;O-W(opB&@z?Q-cftUcg_nv`) z0lGvVenuC_EZDhg;I5e?pMo>U{qvX-x$Ze$xeT`6mFu3<YX?byD;#VR;93!z1gsWEvH?_%BFZduP0)s(UQs?Mj6eZssAs_dQI(RK zRGJ>2nU|K&pa)?mCM6Z6mZ3=J6N?h_(o>63#IOi~N)(u>#U(`yddc~@xv6<2 z40?I_C8>JuexbVHatvxtYDPS`-~z=qP7GRnz{2qHKQ;x-puQ6p31(0~3adDLJpzg> zGpL7!A_6-j9Bt(lR1Gtziv?xFD9D~V#F8SIIEZG3EYJfn;TWPGyhIl+24gTo79Ya6 zU>c$xyl4;1M<$pVKszRoMPTm76bGqd1}%F5F_19CeDI=ABvA;H8RNuSnE4Q05LF10 znE_NHA^0E`L?xy;NRAm?l7d(W3{ej%5fNfA7Bd5AhYE}bp&{xq#X+*n49K_pfJ7Le zTbMA#L9)ykgIFL@1_ovZ@Nz{62Z>~6K)wwKA;An;AA}HqvX~j58(^S(7{$y0UTX;B z!f9p(c{m%H!OQ?&Lxd~@^_LP>A22h3PD@5n4(2e!7sY|OU;?yWRS0yDBbdhkk0H>q zA0fzMb+8Pqjsw+eLQIJC4B~?nfX?Rap7wZL0f^a#V%++tq>C;-NNcY&;|}6 zCPexK*M-piL)gsO%fP@O!~{tdAdA6uA_D`%X=ptK5<|wIGyAcba}#V1BHe=PLk0$h zS73334p=+jFIXIr4#9OE0|NsmBO(lu?UlkIu7*P#dE`i?fE#f|+9q9pQw|Kl|4zm}w#~tP` zC#XBGqNxY1=LEUqHk$Zhs5>8`iMK+;Lj3_V2X^-tH=4LAv?(o!CjJs?jyRe)YymUuZeW=C8Blj9qp648Z>EVR zJ`1W|A5HuyD3BQ#7+~cJ%=|!Tc!KV104afqOG5QKLTQ+|I+PE)lNcrryDQZfDi0IC z2r`s`fgu=8+!7iNk!a$Fpy?cR2Lwnf%$#DVx>P6)6Tb&i#K6FijV2D-7Y>qw-GvNO z4>}tXBwmiD-XF@Zh0-wf6QKNNC=C~fhFd3^_)?JJ3=9nYXyP#aQ_;kiLd{u25@T}R)6rJi9_~=F)&D@iNo@{ zDVn$(H2piFi9?T&VDLv1-wt(OESmUdX!yYLA1wSYLDl6!X_z?ZJSmWWC!&dGLd}_r zCjJF#?6w1E~rD5W*@OgzM4hx^}XyTx=+d=LZgvKY# zoV8GOa%ke4p#IWE6aNA&2Q1OV??A<2^*PM^KB)LKH1)Ai^B1FuKY+St1DZI@zpy)= zVdl#~%|C^vJ_0I!9Zg&f%6|=|Vdj9^kD%}Yov{s~VdAr)?g5?MjVwMFs-F*<9%1Sw zp?n7@4HGwns)vZ!v> z;-L0qDKy;9Ld8M$!rBxdi(z*~ItCXQ_WDl~Io zcl^TgE65y>`(f>*Jy7)^_j7{`gyPFkahQ5oxZOn(2e~H>T8_O&69?^?1{w7MNgQM^ zEZqJ>#bNfs!i^o8m_YV|`~~Y1iXn-E>{Wt>zdR0c$Tng~KMSP31*%>bNj{WmUL<5?5 zBvgC~R2<#>)lhMe`5<#(>bIbY!_40a6-PJc98?@;&LpV4ptDgy{sW1F{HqNOpF2?X zAakI{8-bKDe1?j{)WiJy7fBrCPS~Bg+|bo=AoU<|R%p2(4;6=*59@DRLB-M4JEMui z%=dtbqni^86^EH)2emf^Dh^W*i}xa^I7mGx9OgsQe+^U|q#oAy2L;4rs5neLEF3^* zU4rC6;voN4KaNa7&%Nzis zILJMqd;uFL{EQ?HG9PBnA2e~8`x&8yFSdG=agci0m=!4844~pL^{{ZTLJ|kL|3B1TZzOS$`LMf$ z!qLRRdvO^U7!sl4AbXK#2P&ZA==L@tiG%F5fck#|ns^~p9CXGQ$R99sVD;8~H1)7> zS%)SLI%5o^e>0Le$Y1f$aNCO{4sy?DDE|6t;f$GiG$Q@LM!2mNa7&#VfV@3 zMiK|9kB6#%fhK+tD*gp34hv7%U6Oy%#9`$d7gQfiJ#21V98DZ{C!ju(IBX0P6h5I) zahQMqLCc?PG;z>5bRhLLXyPC-5T1x8?g$OHb!g(yBib0wqlwEy>#6r>;-I^7LFU6S z$iL7i1PeivFK8_zc-9iehm|2P^)PYR%oI!&Cb~H#mw5S4`3_4#M#DIyz>P^rc(b&X6$NM0Q!{(=8?QWPkAT=NinkNF$ zFmagsPk;nLTR<5hC#t~2VRwka)Wgh&wYx#$&@2iz;TxD_0Q(mt4jcCesRK!YXk>BF zJQ1=uY#t5Peut?CsR3bqXgY$4!`x$qL)-~X95!zifI}SCzl50&n=?p8Qx6l*MiYm* zAJ#vBnFDQ(fezvVc>^9kF!#gms)DJ9iNo%Yf{DZ2zX{D=m^f&sKF9)?dYC)G=N&=g z7Zm<5@v~^=z}ye(ufWWKxgRzz3KNIL?>{tiVB&1h_6|%v%zRk?1||-35A4nkm^f^{ z#2n2Wn7BQfILv%l{|00Zv=APgIyhKa-637eNd7r%{WKFpmjafp9J6Nk-R z{lOs)JL4N>FUvzKJg}EO#-vSedxqmvE`7m+NHWFm>VeW^G&%w-riEl+S2bN9_;1EB7 zCJu8ytRDLDZJ#zp03X*z|I4s`p;}Cz2CJt-=!}{6i=EKgSf{DZ22|KI`T^x2cGfW(2KCC|t z6NkCe4cgd(iG%LL1%*o>4)I7daaj6+_d6LGP*yiJAgKrS$6?{wjYE7gnmBA;c_9w* zm1yFy`T8w5#P^_y!`9Wn`uCu40J#$s1|a+hO+EAoYKFHs#J{46!{*Up3m0JK!^AnD z?Qxhm%)eqd#O2V$Vf_M49O8y(;#)wTVqjpf!6EK~CJqZ9*mwraols*Kve4AS!lx96 zIOuLSkY1QMuyE)=Qx6lLfF=$LpLsaMm!XNn!UuF>9kRVJ@ttVuVe1Tz;1EB9CJqZ9 z*mw-gUm&|c_!F9XSh)?lqYNYuQx6kog?1ib;xO}J<1{dFn0jqA^|0`VjiZ3n!}>}f z`}~m9gT!I^F%pM(BAPg?KLfgB3uGS5e3*C%ntE7%Y{DT9x@!yB9MF9vApTS|^)T_d zXyTyzJ3#7J;1J({CJu}DeK^FAp^3xN18n>W=3kJVAp8P1G;x^u zuyHkX^QWMxho$rRIK-EuiNnl?kGC;0fLG7L%sGpu9@f9OfkXTOns_`Y5EvL3VB=~a z_al$Xv4c8e(0&<69M*0T!XYk&CJqZv*!UU9eB|*r2PE|%aajKK#vvYzCJtNA2^)t) zH@^~1y$003EjYw`(8OWwf$2EJ=c9?k)(fu1A-)w&d@d7MPjR&IJy?5H35U2AnmDY!GsPipizW^WPuO@b%snviU^Mlx z`XvsBcp92GEIdnah}WQr!^Sz=aftV$iNnGZHogmUKP>-lLQ@Y5AJ}*=Og+rMN72;7 z{CfdS9OkbZXyP#Uz{ZbZ=7aVtfs)p5H1#m|uz?06pydE4pTf!|J~VNdy|D3SnE9}N zpCOuhnE5tn;?S#I8C=lBLHARD+zA_>hM5m5H`3A6!`lDlIK=DG#9{dzbfP859+>&C z@SlOE9+rPsqKU)8VI!J2Ed9X7(P8Gp!v7|kdf2+tr)c7!drm>_dy6Ixt7oCjH1N7p z*cdWMJ*@l&*$ZvjgM{Hb4nX42Djh5i>wkm9p+yB)92TD-ai|l(;;?x(kT`O`7}jqC ziG%u;V8sj!450gJL2QsXaz6#;50E&hT?bMF!m#!NNE}ojfy6)<7C#_yQ2GRkA!Cp@ z$oT!^T69!v`b|tG{40%p6#_z-W*-C>&ts!_pm09A-XxxWW3Zu=t0m zhmETshZ`t-VD5vZ3y^w{IILbn4^LRWfb~CM>S5+1hbMA+fVD$G>OtZ#dy&H#Ii0}r zD@Z*^9OhrpeMF#m0EvUb6T}8#SU!e{!`dweK$6gS0fi@&%K)p#KOtbLdJ48K8YGUK4qqUt2Z_VN9ky;Cq#hK`P-P51pbVHetQ>}Ifdh#nr(4MF z6p(obkT|UT6hIo6Mo!NXXyUN+2U}kaG9Nje!}fW?#9`(9c_ec{@d$M`!&4-2P<+9} z|00Pa$Cnz~_$o|2><(j)y`XT0iNn^9gTz7M2@{9ic?uFo2~Q;RLE!^aZ;dqWha5gZ zNaD!h0LxFHc{pVM!tyCd9NE9HbO#bg_Ajj80}=jFUH$o_?uS0Hg@|HASG zNF3R}uz609II@3rpy3Y^NA|A+k~p$|VeTTA2GtE9qha+0%p6$$g7INANG*&FqCs=W zATelkfP}!9SpA?g=s{f)a`l7CH<10f+z%_az>Z>o-4z4lF)(<8${NreXb2%N3s#T8 z$}zAY7X6_6?y=bqJJ=7FzHsU9#$i7!-JpjftbT!+2fA+&z{VJe9VPIf@m7^fFAdIdbw2mJnhVK3kSlkb4nu5{_ z$Q+paL015RtU{0f7LXtV0|UHV25G_)f1vgD*zD(kZqkC)%b@TB&2^*O4=QItR-xPP z04>j89I=e*n~em_I@GgLXZl+YeeljLm-7-M%pWxa>Cs9Tma21<|0e0?{xGDz89d=d0Z0sl(bbmWa6dn^Qs5%s{z4q?-vQld*8trj4RSxI-avPM8xH#= zL5uYm7#LvfF_7Cq7~TDiIPAB89uW&`_kipNt>ZzrAGE&*-As@@H=*{!>OGJc2&1c= zio<>fSOE;JSU~oJ>N<4$*W&U&sA6MaU|0;*53(DC(d}P>%YNuly|DHp$bQheDs=mI zLhXmOPe68n@E+*Im?3gw1zOgE{$;hUtURp!F3nHb@?Z zg+Uc7jDtj@t9=BuA1#?PNI>-$plN{lA7%i;-F{G;5u5!BpdBm|Gz-zV3>EQ7ndy0@ zxy0U$X=q_?2DvSh_`5MrAQjFKrUQc#gFM53=)I1hI|Uz#GyDYK8wtMS4{|>v0|$f9 zLve?n4U7yXA`A^di436o{~&U(I~*ApM7Tls{DJQLgWb_+!q5=J`2YVFdjIQT{&_0S@bi%{!_S9MwIF*E z7#X%aW@cFRRNUd`BVmW15BVK_zWV=P{2?>zDp=SsGBgCe{r_JaM85|6AC$5{$96(! zTqJrLfvLlmPGNGipq)J3{X%^i7(ip$km?vxn&WaG1N16HaDHIIea9kLo>>L7^pK?M z7PUcF*+Dd0f!gN~rUU3oJqXje3A7U$a?vB|eT=LeCqYt>TN&A4w=&*^Hi{WQw=%kc zE-M5DBP%l#NHJuHh!uJ(BRJo)vND18)eAs4&|4WH9Cjud(4Bb@4)j(=2#1S_n;CH{ zC$LPE%w) z3_2zRBBKKK0n}-lV2%t#MhnbQfN-?I92Ks-(p(01JunCAXnkhTA}<{-(D8EY2F#!l zB&ZLJnL*nxp*}ES2Gz+>A3!)B46Gc2pt}!2>4TL6lz>?|Kr6|3nUF4dC43=DjrTaQ5I^MeUcobrQ$pC8NuN%DgT238JGZ1I6aK@kE`4Ohs(%25I` z3?vPTB8W67c);c`uyRa>NrNH{A`Q~bz{;@+Bm=So6lo9{kTGCu`9Z23C#_AVH8uP&9%C!ItrZ7sau1u(E(|BGm$2p9o68tQ??0aaIn{(kUKL7=fF@ zoMMciGaA525_Co7Z1CNW3=9mc&?_prkguo&#~~~9ib@Elml5O*NW8Q5GoECDUs1^^ z$+(<_0dnXP#I9P#9U#|$4v}Hy0NKRK0rC?o#~QFxuYx2Uz)aA-PF4<(YOqe$M5a$H z3=H7VXJchx;J?Mfz`*|ilrACiNlZel3=D#x3;mGfSUEuL1RhWk0#TO1WXTFOCLC^z z7&8L{|6w!(GntZMDnV7^&romhY>NSA1 zMRGDA4y4KgH9X~_kcJ&#GXRWpuCOyO$io&g$-`DI!Of`#X@!Jo9n7a73t&@mjB^ff zz{0c+<|as()`1cxNUb>NTw6xCc8F{}%rqz$lx)F@K~Y%`^A9-08(|@?fb0d>q$p#{ zbPfgvxXa;wLG=Qh*T%_!IKj&W936qo6EoPLu?0Q{fPvBXDhC4t;s!h(KQ;!)`CE+9 zpzM#30d+GN7{gHol|de1I}f^JPLh*>fgeOLuyV+AGBEIf;uj+S15{<$!Q}ZtECyB% z&_$LI`O6^vpm>Dn2lw&VHiP1l9~>YMf%Tvmf(U@RjSOrnK#~v>K7*J`K{kL1kbMx9 ztQ@OBZUNav$sKs0E9lrjSJyExu*0vr17C*60lnW2dNCa*>|#1D)C=pl#UK}=fv=#0 z-F*k@Iq@Mbu;YhZV266|9Y`8BSB|!qp@Vno*L07^-?ub)C7K8|?>M%w*w2or-L#!VpT`mjVI7TZ7pgDn9-$L-J!Mewo21IR3F z*WF;G3G50HWZAA3`Pdno>-^=XwvXA zV<;9IFce}d%s|e=)Qn9f+&(A+OCUjI;1qGjfCfw8T0jgeI)F(+^j0i+R( z(TjB#uqc9nwM1beu!bd!Pb(U9))*7R1ki}`=#@A`Ux|Ylf+qd$o1{F*4K_)c`49&3 z6*!>NK_Q|j7u>vKV6;&-j508=bp>6g0=`p)xylQCV+!&`IL{au^=&~a*!0*86s<7t z#JSJFsHdnXugrvg!_0pMMm;677#U;cpb~v%%`{u)Dm}3A;4?}KiZXLEOESw+;|q#F zw~pkdmSp5ZuT%+e4vAoJ@{7+a&5cj0EJ-b9NXpCypUw@sH3a!u6VQDNW+w3^(2E&B z20`z30b2q)7az=l9dXZ)R9=)>lFE>j7oTaA45E^aG8vFAAOTqmxkhBNNETBka0NuO-I)@)|gH1|qVg*P)IMYDfKccP`0f#bLnulGw z1kT`~><)=ENMQvkW-{|KOBjf|ume2e2kImu-PHja>444Qg4+|0d*aldn!Ca70%#f)y z5EG7hz%0}@G)PDeG$o0o9-MYT5}I}Mt_X-Y=!OFj3l)=o_XDg{K{p3> z5)`^PY{f7_9O5ro9CtRrhn*1`!0`ni{D+H!&gg-aeQ-er1_sa>)Y!y9dtI@KgZg3E z#6fFMv56OfCQFemgt9Afh&MBU_P8U`18naC= zCnSF(>@|iu7Ws|?kiBsrM=&rjAm4ES5{I3c0?NlAB_Q)b;t5dqK$l*E_g;a-?Lmqd z7#Lu~p)mDMP z+y>=uWO2}P7!ZFZh(HSGaHzjvd#_>UfY#1~l!DffgJ_tzJ=FcMJw7mTU#R$gkYXhB z`9Ra_3=9mgy>T%0Z=v=g-*Es6PuN`uptai|qhRV`;RUCdj=%sizdDisy_-% z92O3+vz1`x%!9^PBbxf%Aj26L82Zq}VRxd;K@*<>wRZ)YIP6Xb*qKW(du^cVVP_@5 z#6Lm9ksTUNFmc$~f_iA;Sx|E#(8Nze{ndje4)qqpaWrw*-5XcX#6j!0KzbgciNnGZ z`K)zN`h=Y&_Zv+;Y|S<7EFhS_o`MW#U|R){{@ySs2{%GRj zPqlv@z2sNUKw?p084HXBqbD&0pWfnojVeW^Svj#~VxfcREs|TiD z3F`jcXzG)|rZX@cKoSRqa~m`qP9ced%zpt@e*;Y%w&wg9ns@`$-mhrluyX7dR2=4C zSi4gQymSn*cNG*4usvZ~XyUMWAXlh3%)hWZs$gfEgUm;6PbQ(MhlMBXOdgOqApgSZ zi7F)ZAaU3oE%i`wnE9~wcMqC4%>DC_#F5**urthI_O6HK(?d}8F!A3|@#9c&ki8&t zV12TyP;roYP&~rgTlb;jAoa-Y=WkGPn0i<^z=jAw;voN;K+^*&G!Q}JAoF4A3U`Yf=1)@?NPmC$_m94ZcS56n(bIDCML!_0@BjR-pn z9i$$#`WB=Xgjqog_>kJq-q3WYiYA@{wbvC*9M5VQILIuJ1a!+AhB&P61~Ug1&af~+7l-xZVB)Z| zGGO^0T^v?!!Ng(xC|G$669>5wghAsjAQ~nv58^N|FqA@Rbn#j=ap=|{hE5#f6Vb#$ z>vBOtu)B|7=EM5=uznd#9Jc2c`RoNyIK#wY{W6$(Sbq|<7Z+p?y7*a;AZYxakpX;W zH7tB!^$$!vR2c)TJqQzrh0kxO0(5a^XgY$4!{S#Ehqxq~ILtk;dJkp})H(*(eb+E? zn0sLTFLZI(8R{@`n0sQ;?1hP^qKU)Y1FLUg=77pXkefQt)Wh}|!`d}4^|1Jzjiw%E zFRb2%sfUeg>_bxzOK+#p#9`)NLKBCX536rM=0l4pkn=VHuE`ufxbH5f2aU(QwSbm1J3t;X6JD!1o0oIR$iNnVJVB!`xGbLmc_+ z3sAVh@-M7^2QwcgJ`v3vnEPSv4v>0Ky8`BZ*xh0S5xrejiLdtX+2% zO+8E;cBdswJuJRp?H!mn%ssI2379y{Uf7*$=;E-2`7m*q`LK2kNF2Fc1nWP+#9?EX z?$CM$T^x278%!KF{u_m+9wrW}-(c!t;a`BJ9wuIaCJsAWzZr*kH<~zXeg@VqgV_rU z&vj_(VgB8TL;N6`ILw{rafrjlrC|2L-2VtoJxm<5T?phhn0i?G02_Zo7ypN54s7m~ z2ihKlsfUS+pozo62i87?sRy|Mge}n2!@|cIhqyPII4pdS&u|8%H<&o`8O|VaSU4b` z;fyQ}8)tyI6Xt$cdl@DUaytkkpWzHL2i9LeKEoMV95$W+GY4iqtbGj=2bm4Rm(lzS z3!i&9#6f$6K>A?jz{24RntGV{A2e}T_`t?7VCKNY`9X~jX!`-=FPQsb{Q#JHkQ+eQ z6iq$M{jj_3VCrGw9%$-e?hL~r9)~6lb7v+F@j^6lSo*KUA>N864om0AXF-F)0VX~h zO+74pVErL<|L#Xq51U(p^@m{UVc~#$<}=7%SbGE3PeNDEhBOWUQV$CsK^)?eXyUN& zQ9%=j`Bw)`9OhrBFnHbsG{+7~3m^>3A0T%^y$%vaIkOH_&w>RRKznT=ERcFoJqY0; z=KDb6Ab-KcVKhh_*?gFpFmYJB4%t00H6SzK?I7q*Vp#aY>Q#_A$nJsFdoXbrA9-F6 z*`2WZ3Zxz+4hy%rXze$UTR<53P7P#tK0{KE>>k)1!7%edW`HoPe+HT-K@K07|3Ko% z=ELS0LE^~f!{!q~;vn~f%%%ng^$$T_f~6mrnaJxGU}7K|q!vWOFleqABnGXvV8R$@ z!oVazYGG^;4a$EY|C6g9)L#XeiOc=4bO*8vgrUVRhzZ7^c0WiA-M<3RhAk|=gVG^L z9muU9jj;6U3@V$koB;&uC&JaSzfD<-#dgziA_MdU(F94lLRU{C9pK#dE0nL!G@B`ToN;By8gT|jg_QT34kli3`2wkiKyE_CV2Erh< z$TVoa9VCXXzX@7#!p2)cdO#SY7MT`@o}mO1L&hth`jN#zY?yu!8-zjY4nSgP!NdU5 z4?9Z`q!xr>{s*x^7&PCAE&XO-2|v*4H<*4jPeulYp9%~OK?j)Qufg~r zwh{waZh|5M187KC1bmiJFvCjNc}*e=4nGq_9DdGcVtCEK#t<_3-;`6Zvxk_VXE!-9 zGng{SFbJwJGz2l!FbgX(F>C>y$JF$%elkc*>4Url8w*2W3L`_v6s8~B57jtKc4lF? zsKmh3o$R1?T9JXdJNS#dMe#q6%kd11uNVIRAHu-Ef^p^($PN~$9gTngZ~gxNzc|P& zSEyM_!Dg{`KV~-8az-+*@&EsjH{i388iYV+B!SL`idSGL{Kw4jvxk)-gqfk?k`oJq zi3-C3%M`XB=J5>j*=LyK0SNyABSVOafP-bc2!x*i;)^&~#!Eo>4;UCiR3scML2dw zd;us7pngOa2ZsgJugKyGpfG{@8Ce`07Er$#Lc=l_3k zY<^A=MfiCKIBp^79z>#-Q6Mp5Fd=>a|NpNi#vEeRsOF@AnraN#w+n&G3sAFm#$g{G@Js`^gG^qnF6q%ht2V_C5Lq8R3Gk6-2 z1LPw3saVHB=R|=-K&N7X?mq=fvobS*6hj(+=%-?7v%*e}VnsU@s}6p06f4@PSaX>` zJ$0}XS*BQ{o{DwY8+IyI02@E^ZD@a*flYuJyv7ggAT~i}kP(mrYuJRC-@{L@ViRTt zEh&T?6~rdW47&3Ta$pUc7+3~!U=5o%Gw4Jj$bmI%63n1sKgiinY?5FOSh2}5w}I+Vh|?697r{@jVpC)WHBcdE>9DDQeE@Zu zCYS>`y^2i>%z?U78_ZGR2Ay8TrU&Lg9j(s{y5diVyP%|qfz5z<7ihc#VyQ7RXn`Ws z2ap4+pgw?bK&MxMmW=U$;*pgD)T-lU;c8+8MG?5A%Lpc!z$7!6WC4?`V3G|?vV%zu zFv$rfxxgehnB)PIykL?KO!9+C0Wc{DCWXMHFqjkplcHc!3`~lHNeM6sX@5(B+0tNA z229F=NjWen4<;4Bq#^?=2k2fze&o}**i%4Qj2ayIvH`p8oR*tVQX;31B zNP~1UuyTM#y#+vafD$1@24oD_T0u~>GO%*!u`n=z?FOYyuo?zdjv$aANFyj&f(5~r z34*V9WaUT)pZL@RKH>^AVaqWc#014QsPDnRA;t(=w+2qZpmVssqo2dYP4FBpkOv?s zn6;l#l@)Xj7sO~uMrKy%Ib0BdT1F981_mC`ALj=JQi=-!u=`+l9 z(EWChxBzPeDS~JOxsZXC1GLtgl>_7zaL9ws;hMn)J(Q2NjtLy!;B3r_b`BTFU`W}) z+Q=lshI9@Whyy7uSeuzZhCxaQ))pqvWpa>WjkT3&3G^H;kpEdZI>F~~fqV!Fpf)DZ zsylE;k8vW%lZ-a(43L%fj1xg#0r$ZeCxSvk41DMlSQSKc5=aA-2?`rA&_Pd=KzZ7<&zK0(1S(QN7(UcGry6vw z6G(_L5#%foOB!TdBFH)rj{)3UVuYT%i`ZSjIA;qx^x!PUbdXlY0Iff)c&4Cjvl0+`K;;KR@m+)M^W1P2srMc`OtfF7d-G68fukv#O= zGv#ea!zQpL;f!-qxfmE!jzOhVF2WdhV2tN52JEIm71-5+s_fvb!@!^lTac(K4HHp= zF<|E*$wS-GBDf*M{o!e$7*@TVB}~HV&dqMXAERCkY@~F1T9Iz)H0KR z7A;U%Gx}F?p&V$oij9E*eCjh}B&Zxk*a;DgMHK`M8Z)ptFoI$m6m5{g3ski0GJxec zeVLsYApQ^pjSw>Efo$b6V}z7zAbk)PNRJ>$DFdAk9z#B9j2rb7GT6amER5XTR@~O$ z1I+j|7?}BFco`V@L5V{^lo52U7U;k)LCA4rLShWed?3Z3Gth)V(jZ9@#IawV!V26V zAyMSx$Ux_eaaeI%gU>q?H$gi540OgA$ULx&B(gCmM}$csOamQ7CXG1W48+BG>KKwP z2?ho^$T?+Gog@u~85rb|PB2qI94rPh4|MDp)VUz85=0+JlQPEPWh$`4%T!Gm4240; z)wmf!ZU+T|I#^PIfk6Wz#=xKnQpLcag=C=w1A{h#3pv<=tI|7N=1LUyj#S;DqheKGDoR0-D0YPFpe29}ebun0jF!znCL$jnesiRF|mjC??WR=D+02DbC?u$`L+ zRSu_^84BvLI2AM#30DJRFfw2WfrODU7TzHKx`~Y7vvPoQjYoxLDnN< zO0o#Z&6uSY(Iz501H{IXaX>Z@mBX+r1euDAi9TzNXobk8gV>ZDN(b@-<^gm>n+UQV z8Dq;{*s>wA9uS*YeM}5S7&()P!5E8}2^KL^EMjI@#LTgX8DJ5^JZ^KK+y@FnWQ-+Q zV-aFuC}vQ=@D~<^$VP+M*rE%IHdcmW1`8EpEEq8=M?(&jeh`?VRD(VJA`FMHs9&`b zZ6d@02$BMgWH;Y2&LPEKf$`}@ zM>2!%(wRPb-e+=#ZXzk?eL|-%85tOgOHxu&)ATYJn857Jyb`?(&J096+>;3Ye=1Vl!9jF)*>Ps)N{y&0uj^6Gi4yFIix|6hLa&Af%x^h$E{^Ez;CMQIR>*rj%I>Y(8^= z4aj6W5FrO5z)sbHvk+odbQ5FdOk?6?U}OXz3J5!TkpXg&B3KN324ryw(&3_MnW;G` z@!(@5OOo?T^GYDch(Zp^1f{k3f;0x#prCjkPp9|@Qv*xzNssZML!(emdxW15iF9-( zNDOj@B-WCgem*Sjd5tf=*^NHi|EShk>)dZvaFY!h4W2P$5R49zP0RTL3!Wsubi! zkPgTZS>RAq0J%c}B^Y5&clP&lV@L+g*}z1CgMAQ(z=A^!@A3wiHkV*W@L`$pB@ECr zT46HIo&g@NK@216v`m=agB<-_;4$jz3<@O3>6qYyP_acMC@mlziVKQ4@KLqklUhN> z`i1&}@<=cwZGbbHYeWDzp226TLC)X=rvT7llF;LXor59+Lj2>4Qq#bhFTR8URA$2u zc?B5^%6P6}0g%IY!A=7i0?AjPYzR~1;p^xOwhof4K<9qKq+C4RU4ugyKu4%T&cOv6 zgM73s$ZOzKoCZBF7^W5CKtx#ixqJG#!nyuVUf|S)IPe#yFErRS2vq5S!VM-(Vr6uvHMMe2Va0{IL;LPC2U^pA(ex%czL3+W#1PuU?-@!2i@-YM2 zfyJP*2$ZYAQ4KkM8GfuR%%A{o=U{WVZ6KZnBwkTYR)(qecMc9<02iU4n1P&r2a|L0 zU;v-C3OeT&d}J@kU8s2;ybK9cMr7utq~<{iXYl#MVD<3g0i4nxsT5ow!OmI+opOyh z>KEw{VVDzwf*lzk3gA8h735*Ya4u+Z46Hwq7HwQFv2s?iQ+H0L2@$jfQ<&nQ z{7cGNxDa#rz^0)SL-{ORh`%U53m3Ep3OQ}S!U(jt6q`6`)(V?A=qxzUnY1wdusxC0 z&@*gdd>G9DUEH6{pi%*D*?@~ca9Id0{J<`YCV`7rS-AjJ#}3?Oqr%ORj#2H2i6baM`X3PRA?ZBTc@ z%sBxSM>hvlE`ZDg?Ii`RE`#j}hV797iG#uc<{#KuBp`8Q^`O0ZFmpiaVftZbM}pKN zmu|2c8$tRffC$ihC?j;y9h48-8v;@f+Q$MFW`Lb_2ogum)v&!ZAaQP(Vx+y3 zpfjAnOR%7Fuy_QC%QG-A=s*VG7+`k6#6hcyL0Z78=|E*XBLf3S{Z^1519VjwR2;gk z1}p|79Wzd9n}4XXyV#XKJ1JonE894;ou0Bhl#_^9`->Ke+zYgB$_zv?8-DW@e-)| zVl?r^P2by?4)SP{2;%A}aN6^F% zLB(NbAi>-NJLBR4n)+s_d#<60pM<8XJ80r5(C~+yr3*73v|u0P{ugNKVQ2TgLlb9) z^1nc7m^rY;Gr!QpZ$kYA8mtG|15*z>tCFrF5}-6p9C8ml149~`IOuLVko$Ac z#KWQH7omw)L*oT@))dTq*qKxvXzG_k&4HaI4O71gs%{39hKZkns-FwB2PO`3BM7fV z6Ssnf+cq?DSov@PONw!_HK+MH7de$>t6f2es#+K?CwGLmX5bW) z=YjI8p)|~2urrxk(8ML60}P!|aZtE{!Ur~vvj{2r4pI*~-wUJ`gjYeu zVd{;b>FpSrcsVpZ+(8rH0#y$(3xq-DL#+gH;p2fYacHzKpr4Hm69=VLkVcq#Sa}Gm ze_-MuH6ZK=BB0}7AbVlXfsNTR}pgGm1box;U&q2NQ>x533Jh;vl^stO`w!FmYHofVM1yoA`QV$Y`&9{Pf;lu1j7Khy(0y765uh4oDCJxdI!mw3lFmYIa1oMl0|P@2 znm8KXaEPOyQ4I?pSo;(fKCt;h zNoau#6NlwTRWxy!`*qR8Vfhi(&P6vT5KTSkZckA7$Keo9LlcM1e-xsL!|bg@6F&kn zoPmJ>)-DFQ2h{F@3Nyg^_b_poIk53vbn*2_=7Y?E%{%VJA$}B19OfR_coEEenD`Ae z^)H|fh0Pbi)WgKzp{d^itv`O^5N8B6dZ6tMko#fl17Q6FnE6m^8Pw6#!{!T(aEM!> ziNnGN`HX6iy)f|rH1)9gp=cc9u<ZIIJG=Kr;s>9)Kne3!gX~;%R8& zu(LK{<9;xEVd9l&>S6AO^=o13L2d`(`Dp6FhpaF#Fn|u50LjDD!^AhCsfW2AcBdIk zJxu%rntIr}gv&U@Z=;Jt(=)994Kp9)HV|fn_OoH)u=L4;LtF$+9Oh0X9OB4#pn>uo z?5uAwl5=6Nj9^gczrSty3{UGY2LPyE6@DKCC_I zfu~cfrBT0jWcKEZ;3f z6NlB~Yth7E<=##l;s?>hA*Z@BFr2|5eg#b&R(?LlA^sXo95#RV4TtzYG;vtD$_pJN zg{3Q)xG0)9Y&=l`hqwlsIIMg&$02TyCLRDSue@-G2ce0>%JW1V;+bgT8Bp^}aERBS ziNnhOZXDv1(Zpfv#^&J=Uxp?Qt1q_V5Z{X?4x5)hfkXTPnmDXpxQ|2pIhr`EzW9Vg z{1=)ytiFKFBf-)Sto&Di4#>mAVeMya9OA}k;;?+@h(p{HO&m535Q0NI22C8+&dI_d zUW6tN8y~2}A>N864r@Qd=FQ;Y08NLh(bU7t--bhcADTGKeAxUOy7^Dg)WiCx?{SEK zM-zvc51YqBH(wSyzXubC^&>QJh#R1Z!_0?v%fNRxfzQ)~mfNuLevtXlE;v{Q*8c#B z!_pc^0@l6&i9?erNSFcEE&z#x#^J$&NOx0!#6j&$m^h3Ei6h$!vkN8;b03TbiNn-@ z%z({5z{H`!i*olAvO8gOiy-wNahSQt{z7&?Y}^r~9wZJMA4c{svcF*S3?TI&aai~- zfu={0II@3X>j6RH$o@i}X92krdr+8u&|zng5Ev7yA2g>73Kw$qgU0hg_TzFtEZu<}1-%~y#s<-#GheakhqaGk=^UgM zgrUQ!ASM`t)M3*P8_yWhbo&dS_QUJ}*$=WCghA%O#6k1i*zAY3e_;6%qz8mSc7bRZ#&u^? z2h@I8I~im@sL6+JKWJYA$bR(nqX89w)zdKhVESQv(B0D@H=+Aq0=hv2c84>_eo$I~ z>4*6rcIOlHiX)h@3^$%>lp+N22*aib3@XbiNQKg>FA+oDy9Oq&5y( zNclnQNst%_qpLlSBmG-I3&;!5O+=vZ2YChE{h;)XZYIc{HPB5!uzn&)4203u;<~em zBOauhfdM)FfySoM?f-!z{A56jbQl;IVEtf-X$%;5?tI4K{~1vGk<%Y&uPVCzp#2u; zegfH51GOJEj|vh4VRW@@pi_ew5O+d?)PQgY)ZwssHcrnkLK8!|J>j1SM zEtxaifa-_M!@~5#{14-UF6_XT{}@08E83l7p#5qv{h+V}nE}cs(4qpwh2skF+13mU zUT6+Rtd zcSf05SXi2ocxP0@7MSg@bn3vM#h}i>$kq@f&%m&gk%eKWd<4Tz&|OhX91L6785%CJ zGB8Yt=V17_jDcaICo@Bc27`kog8;)sWfliZCmx26pu3Tt3ouMfj*$pfN7Lrs;|tk zv(_VKMy(bGhVJBcK&2y z*!elwVdd9o$CclcomT#=c3%0PnQ|H=%^-UpZ%xn{uCtVP~PgJm%r!$go;u-(7@hlKq3 zzvX}u!$gR=BC9}V-TnVx9ATFT*e;Ox0Vao?A`BwjAh+Uj=l^B~NH|wBuKWrPTgFvP z3=TU#Gc&AWWM~LVVq`E$RAQL;h?z<20W-utCKd)kXU2x0W-kSchs;b`^SzWT>X{gJ zE`)_gwd2bF%?#jhP-1bI^q84p6$3*<&>{wgt%`q~E-NrJ1SzsGb|*40`~-#7e`m&v zU#l5ciZU=vcp}g66BO@Xpz*tu$>HZiW|mbCm>DNNl4kh%Se)VKQU-^gPt_TIg8cYc z+~MaVX@{Rr0|&~QnUkzrys zL&GHn1_luYN5+XvClW0ZSsX0gYS@DnSuD&!Vyq_;Esn{!YH=;? z!^cKuhLB_qhKX*h45sc34VOTE0)>&2312Ws-pPPf%aMUmOF@D`i?K!^xRHs$QjwJ* zWC|O^oJ2-78rcLJ}DqEE)gUn}O_BV`vC^B;OFE_{ZK1#C|H@5cKf>fAItk z2g_t0hKUU<7UqhMj1v`3Bv`PsF>D3tO=e-3$jE46uH(o!vGHW0#WDs4Q??rR;4}sX zQ#BC%`@adueOs9vem+un__>hD;V0gzCiX&%8T4k)^2ySF!uxw{$*xJCw zU7U}3(%fpH?ki9`#Kyu$zgA@Mv6AD=KYt?FcA2ytOyxR{uc zV!_A(F)xj&AqZq969a?D6J~~0AieD@4B#~5#K5K%e}=ixk)0uAJ`cmk1_p+Z2C)7F zi-rH}&AuK6Gg@Q!%t9}RbXW>0j1jq)ef8D85mx#U||RWle3vu{w`)&35p+3IsH$Y;pcB=hE=Ewu-1Mi@z)PPVkejjAMi1R#Q$L^%wS{) z`OhT!T8g0|=p_q72*^z*SQ$c!*%$;t?n?M$Z}w2WA?W%4|Kj#1m}(!} zkVJNeolFd3-V)4A-0}>J*RbD2#!@l=(w&*e0L#B8mxy04OD0=`3Drv>;L~3hngw029(~L8NhWDD2;>KAEpcqL7=wA zVFm`%2h5^c@Uj$I-+}7QFU(A!`fAl9W@ar=-3iLi42(a_L3LyU6T?ny`a~HTgg|Ah zJqN=^P<^S$0csaC1Tir(ggpApxXB5WuWJs0%K)V>4wFE6*nxo|1XO=IeW|>Qk2+&sK|`~reP!Xlz#;u4Y&1ya&7vU2hYib~2Vs%q*Q znp)aAx_bH`CxPWzsC-8wxF5l+5)D4S0o>7GVgiqaGBJTyp|G&9f=-izDANG#@Psg} zK!a!yrUTA98le|JvT}eGvfKa-T!8zQ39QSxK({1`6nV?QBPi7tis3>D-6X%ggk!pOiN1QGym znqh=(Rbc>)V}RW{2ejH>B)O!5fw2h0WDH;saQmnWrnSpU5$d@24XyXzCLc2r`1LG#J`(OvSFm8q!Em4$O!hqmH z_V+NtMjaSn)0~WRb}%zAh=HA20dgwH8ZmI#SHK(rv9$uE5G)G{_)1hKRl=>!WMHfU zr2~*ki7X@zc+!Tk8YTxFeqvydVq#!$Vg?-)6v))dAPu?P3od()lYt=`BFp@lF_-}^ z0n%0pkzi`$z@}|3ST=~Mg+ZDTW^@||p(_JGa}>}7z8;$$qy2#OF>FN7&>0V zz&HoA6$=tlOHo5=DQZY9g@qI(4wk{Z44cXTdl}@WX0W?KD;Xf^;v&d;kewh58dLz$ zjB`LoTR`IAA}9}l1R*!&U4(@?gDfaBfh52fI&Q%@N0^O)LCyu5z~ua4j3^i*6~@Si zGUTfm85rc7K|~LTn99h&pfC?4sjw16DuR~tFik9w-w%=n?Xdw5M}Zd0DuYZ_1{ov= zGgcX7Biw$lhY%L1f-C?zR~2Llm;ttkfq_94Y!_$|6UaJMkX>MTkbNMA8mL48F<_YS zNh2!*gPaz~i6Ajd1y2_dQ1I?BiUM_HD?sDZAY&OnBdlORBt=lVU}XcRVCIP#Y@oC_ zu>gLM76TJ#cpW_I#Rxkjhk*e$OvO0IfsKJd3!MKr89~X4F#vkW+B!z$43|Lb&RlFsS6ThT*nAYAmFRj7}taOOcM+Ak$neNx{2{HD6POl z&;UclPDaLOC`#a25$u00Y<_dmeX^l1(T1|4vC34p^3QuEUokoiSrC|pz?=+I;&#TbUAFfa*ujCE4NQ}7%CNh6!420Qz4z3ntH>gDe zq8aCOaWXJK%s$5mD;9OY_4zq?#4>P#+DxD&fZ+Cr1A{48ufuvyZO09|{g@eg9U%DnJ{G7r2Ll5uKLa;60|T2dBQqcPazXH&fb7uw z2f00kEw~vNICvp<2|~G?jEtVbpj-2}6d62)^|=`sxb+ypmkn}*?!bdwE69Vm`Hz8t z7k(EWk_tY=rGE?z{K$6=3LtLTV_*;jxe#=Tp^zE_h!RFN3v_>2g9Dm;?iZEXMVN za^M>V#TgjnAr}iOfG8Pm1_nhC1LR&MZpKh?keSLLr3?%zAU*>F;<`dvMnmBs#!&GH z?nrPfse=SS-U10QFlcl(F)|1;f^I+5gnOM;T@s`M9!6TwFk6xL2*}~w7S@AVidg)PanB4E zSHpb-WnfXl%us|aWHC%j0_=| zLa-J5a2eum;RM+jf+cfe7>8XU+%_nKjiHdCm_Y`^K#+I=7I6-SLWVYmDJ+;eI2ej> z$Z#>Vu}opXt_$i6IE5vL;J9;>U`dQELozaC!mWZbC{PA90Zw6YJeF()iWto74L1bJ zz?y5ZMlzZC5o=n;%#Tp#z$xs(g%KH8iU7C~PzKh}3WiGJq_BhwC_sq`1T2ok8laew zgC%Q%EX7oa?rbcs#gQT~J%B|artw&6&55v~Ex2kXhJGw!nCjpfpbRWUDig!R2&gQa zVq)mWB8I6Bt^vxxQY4OIlXs;wW37^XV71}FoI>zNsfv9%mA5*;%`F}7wR zahkE%OPmnY-Eay^s$*to!E_jQb(kJyW@y3I@WRLg#F~di9o+3u2GOMjM&5)P0H?5< zgi&+D)k7KBwP9(zVO}1KrHx0N5YcvGUJ?s+HJrk36zouRxH3itVuZ*y3~mvWf!!pG zLV%f}0$XdEICT_h#^yk*24WS2`VvlIt*J0lEEZL86QB$%)d3R&>ZugG#|EEY2WK2yOzDfhDxC2r)4f*F!bHDJ;t1a!>{q zCqZT46c$sklxNs$c`ORy=0X`*TtHkUz|2sLdBZ%^P&kF9b%j+3OSc1~=)+nI6V>y^ zQX0Zt2xVXiWo!wanE^a94AlgsummAg22Np7LYxrX1SkWGI~f_Wp^|V4S8BjeNStwS zbD<2ZPRF>T7h4OAkpV*)Rw0b)5{oJ#&4;=fPGL!ZObip@6VottObq>4#4y#t)Wc}3 znFpgU$IQ@)nR&4E`LGIMv;v7!1#=;c#*&|K41Qqi#$ybA5N8|~RWSF!Xl4e^{}|nT zEc%EOqQEq)T4An)(by_*Mh1+20G81+;)IwP+OVY*j3GAc?!cl9vn_|kA+$FQ7Je`q zYhYt3p0KKe83LoR7EoBq6pW@3GXuvbENKsmRtzDmTCs;ChF&c0#jX>>!B}*{0s%&| zF%&Rx{FlP;7A|p^J{Zl&kOgDHXzY$7R~h*hFf(++&O3xTje&uc;WJ}^GHjnFT%3Gc z$kz$C9Liv3DB!?|2WEzDOhGoVCosjaDkk1os5{^kwuoeAXvS9JB*Qg98N{l?GCV}A zR&36L+773%)aT3$Mc4)(una*F)qKR}3M{q~sSNILC<99yoopdyhHlt-<51HXVEF-~ zFN?(zY(BsyMx<6O$`G!Cu&|qsrS`-SB2p(dWe}?oB$ir+{z3@nKv+Z+>{uL$tKpBO z-oVJuxb$Kugg6jEVsR?SENlbCSZY2Dr(xHNunxk)k^w;)G3N!aD8!O5ap}bvbA;HA zAhARO69Z^TB|-^^1?o6rls{PXg47~oEK0ESFpzbC*jQqOnW3-_qw2w;4pi|3Dr1hx zVo{1!2#Y5%A{}(bDP%nzc(FFf#b69uzYOMp?wf|Kr-TZ?77atW7<;h6D?DM6AR1x` zhy}*5MUP+(XyXBz`LIQPFnQQQGZ-Huslp^i>Cq4v#32AWQ<;e&3v?m?<8MA*21Z8E zDL0@k=8Rc+nfk>=$@Hyp(L+B16Mu{gV9roaBte%)Da##KfZH3^NnmoXot^3SF2=6Fp1)f}+%< z(#)I^eTYp^6f7p`Nm= zG6NF}qmn#`RFqSMQp|;Va!gEUw*6pWjFE{|t7PU;U`|tDmQqlav6nN{mz7s#t_0bl ztf&bZ*N5jaw}T|m~>$7saF88n7=S6F!$8kFn?o+U~aG1Q)d3o zVB^eOp~ozwV5O>TsiY6~DRa64vw|L2LxO@Lb4R@b^G^l^=Jt98MR|SZMn*m6e|37w z%*~8?ip)PjtPV!7YBmKn=1ebUbp__~2?pT6Vop+EmeT`;DI;@&0<)5WBJ=Y)uv+GC z3}D*O)|vTVodWYe1_fqWJ?3l$WoAx2jKJ++g2XXqB(G&=OjD6z-dC%q%zT*12IOcq z8wEBc<{h;PAQ1&;h!7j|=320Y%x9VOn77qJ!s8Swo6QTPSP!h0`63fo4ci1Z-+<5Z zCd>d7e?D9ST)D=_ounK5(gF$;iP%*+OM85{G?dOc=iu&vC#3QA7Qhw2oV_cJOm zA7ao`lvizuVdl|et^muM`GGBCo?frO{FVVM#5}oPkNE>QRGFE>^_X+?m}5W|FkfK+ zC3+?1MfFWea>}L#AU`rkDKMKuQU}P-ObTqK%CgF`Mj$z3b!HI-=0GoI0|jPpJy1L{ zF?;JVU#L?6*~!GbmeIzW*}{uiOF^EQ*G7>!-9` zYI1%`s#|7WVh#g{@0y3;gVcc*iWg_(7nLZ0cFq-NR;9+5Fo39%%7Rpe{L+$mkc#;D z(#*UPW25*IhLmE6P;P2&azQ0SW*%4p$Y_XFPKm{-W+n_E^%n6ZU>dA1zqBNWp%}EG z0CelS0+;|>S(FSn0pd8%yvz~?h>aiQoZPb^N(%rr{M%mbSXaSqH}{B=>V ziw~@p(Jv^<&q_@$(FYahN%=*YdFjQ)Ir?xG10=jrY)`EyNKGyQISTA6u#-V9MT9Fj zR0yv$?;-Q1kal9HTM-PF94%)~qe-Q2{aOxv6SGZO{fbOl|1 zBL&^Gg3M$E-L$mQyyTM1{5;*_R4`qvpqo~jSDu-dqFa)fl#>eL7ndX^XX_Re<(H%; zm*f}e7MB#|=cOy?rsd~mmguGxCFZ8;7UXB*P-L$gI;>@JXoXnC++lvWbG%rlwhF{W`{x$JoDs^g98j`wal@-aAar(V9|c=ej&^&5^i?>T}tmV){; z9Uy~YXHGftDL74LnZi7kX&z(HmCKIzu7cHp+yFW=45SpK2SkI;YJ{CP3Tn16IPwKJ zPUV=#?mU@m3MW$p$ab)HM{cmcU}sXn{0Gv{!U!^nfdRbl$C1y$3FHUosciFDnSzn^ zgU%^~-SGwPM>+CMV053(H-mR3&n)iQTyr=l3r!K6DlmlLNuB%;eevLjY0XyU^v2dN7X zhCz}mtdv930+EE4>F9c}ISr}-TykJF3%k=G+R&W_2?2!D@*%+l4vdu4q|)^G%)GRG z20aKnF)67iwTuB`D?}(KKN*FeSd^HTo?46|hD8We9KcL1E-7NrOU}>DP0cG|(96p& zN!4@r3)KbZd#E|78S&s!2a-Uskf5Z*!tfDxg&m3tW>A|RMFhfO24@rq8<}JVwe^t& zploJP%OA>yQJ@W%3|PcL^2`k2o%0|j97EJ&ih~p|Gk~|)gP3p(QI9DOQozgrI{6F4 zLSTq`OmUD3X2_m+5EG6e>bc>3WCk+>Y&R-G6rvte9HfF7vOONegky+$Q0WF2f-{)G zry0VzUD469#eNm>IDV9WDl9Ff+)3C=ARDKM@#JikSht0~=M4fq{XU0agnk zq#)s-3NEh^q7W7{gDQl9Mlv%fqlqvufOZoLA>}VvJq)^=SO_V9!RlgP1_lNpqbJr;yGq`Cp|A=MA8qCtp2D?a3AUV3R_ zQ3}3>AGlUTG6Gx`BKT0pAOsMuK&|c=7$C=tFfcF(GcquM&QXR%94yX6(ZpeQ0HTXu zfNDe+hfQWlGeS2RL)F3NvO(hDt;JAr*qyB)aq#AJsJI5Gf@1(}e1~pDhKhsEz63Er z>XFTX?ZyX*Bbx&og*RtpU;u9)2We(tfR_-UI~9<{EuiusbC3_efz7$2ha2q7V)Sr` zfw~{v{1;GhkoiVXyFe5yhoQR@mQT>lfwjre-2)2;bobPNEWr}*u<0Ch^|1H_xf3}Y zKxfB-i~@;my&cTJ$Xvjc~JVfho?{jl_d?jG1(93Xo^ZE295AY1`0kI>Djfr_J> z1M0hg^r4#rK9&cx>=$$@2S@=F!{P;WXEdl3&w!c>E16*8J>VmL7~nN3OdNLCFRTUw ziGxc02heZ2`!j7td9k%Pe4jw;`cxt1_t=%KA1QxO~CR6Ond>o1yAK=@p~|CjJO2 zZVIJg;;@D6u(Qlz;$9%l3=9m>XzHQD3 zQ2uNv4e~E?Z)Oiv9HbuP9xiA(a~e&&9x8qTNgQN8EZ%P+iG$4f2vz?AO&oS-?OP;q zkU6mQ@Eu7UWDe|3R@hz4Fn7*@MzSE(9+Ot;*33dNhG;!D+lfRI}LFU8aiv@H*H?+J0nbQc(1j1drbe@h?#EW+ZWtdtmifACfr8oFJ&9CL@W1)W?Dx$-uy{ z3@Q$D53Igk2Nego2b3OQLx=m2#6jl&hMJFj=P$@#u=d;qB=sP3VB_Tvk;FmfL*z|e#w4l*BB9`+)MgUopfRX+z!+yy#-vk*xfWDczUT7x7GGUpvs z{YE5lkosBBaDd&_3-T{WeH+wsXOPr`#7&?>b+^&PYoJ4HFVVzLLdAcgiC=?Oc>j>Z zLGDq6<`+(AISq4<7__4Us~=$EiO?hMRMFIbf{GiXiEo7tPB@{7mqJf93qlhw0$o%A z8ux;VgVGNuXkd4yXQPS3`k%#6agaMf>2?CtU(HD3pz!<-HNO`s4l}<5n%`GJ#X;tP z)b~J#8aF`2Vd`P!-WjMkNIfV#pQV%kJJ=Au`K$oX5Ffiyq)x+EayW0tNM=eM_$b49P zDHusTG%0{>&Vq`=)Wh;oDUvwIJ(HpKwxWrjgo@8b5(n7}I=~cU!E&fL$eqxn0}^I9 z3KfUh3+pdkgo?w|!_vcjs5neLXuK3;5Hqx0029xGmNOtZ5C)k8%_1N!e4Gs?4s||! zgdSZS=4O~UtX_td(=c&ZxdH2E!^C0rGU#qFkOR=gok4=2v3Jn1!wd`zE1-OszhUZO z;;=RKF!41|^|0`OiSK}l=R#?iIA|R#NC;Lxpo_!C{bAy;wf&$=GC=y!#V3OVk=zd( zhl1U815*zZhxr304y#9C{ZVxBy=dmc>Os)>G)M}j9wvSXB#7i5*myjw-w9U_RreK2 z!^EM@J^1A`Fmagqu)Atu;xO}J{ZyDZ)K~`4okAcsOdMvu8MHh@7q>$bhuI4o$AhVd ziHD%6hs~YG;}B0r6NkAU)}Mx%4@>90XzF3<5_ab*Og&5-Hl73%hb?A5hGq_I9O)dI zIP7lXn`q*&bo&rZ9CT+FD12f4dzif-F%V{f)&nqcSia@QAuf(44$IdnXyUMOTOBlU zSpG3b6NlZ|YL6xkYgc=tiNoSI7)=}&zp!x*n7?4+X=v(U@e3R0fT;(C4G8z3s|N`( zFfh!(A-(`j99G_~#v#5LO&k`U2XKg=Kof_B&t)`mSbDgPCJqa?XE?;)p^3x72R42K z3Lj`y0}crxXng_`hxJorafqXjhrq@$4barX#4XUoVg7Z)A?}AJ9s$h{kvPN?(Zpf% zkg#znn7_cDWnf@vM^g`*cbSAkd={EGEd4J<6NiltuSFAw)nBk3uxl7{Bj$I_+vD2Sa`z5Q_;hd6KNa+RBpiLu|#l) z%bM>~I zu=!fp_&v-$AislfJ(_yh_+&SlIBb0iY+MUw4$M9C(A2}?7kRu36mGEkcN3a=nD{O< zahUs$qKU)Cwa%i6!_pgUydUIF=nyc-y9^(Z)Puxf?U_F~#95%7NtijXQ-t_&h>N3% z!@>=*_H23s`su>PqB4)FjqahQ9eafm0QiNo9jo5w(RPbZps=&%#R6ddBP zaWR_DH1#m?^=RTS_rT^)VCKNW=PH_dSpD@7hd69J4Q39kJ@W-kJxu%$nmBAe z9yV?UG6y=u4|b9~bo>V<4(s1(;Se`M6NjxWfX&aq%mEwDz`ziSrXD&B$&i3UJOfP} zW2!^ZJo=F~vl(}<=XCfA{12Kq%>A(WNp$xsK*t+l;xPAX;}ADS z6NkCq9*4L)nmEk;!8pXD(Zpfyhs~G5+zBgh>(SK1@^2Ro@kwanuy*NuG;vtJU^$xj z7ih$9!Xds3O&m79b{vQJc{FiYJK+wRIBY!s37R;p{r?_K92U;s(Zpfp4-=?yfK+bW zf#xGFG;!EELQynv*gU2znm8=JVDs4M@#TP~9yTB6jYB*bO&m5pmViS%15F$jKE-I_ zu<)ry6NkI-6fF=%`_nC`Bd?}hZEIc=$iNnHk2b%Z~XuKT8A$}T795!xv1Bdtn zG;vsb!PXJL;tQ7knV}5;m^iH6%a0}wTi+s%CJqaKB{XrEf3?uWVg7}!Ux3*QbB`~Y zdYF46(Zpf%M2TqPF!#XLLBPz1l_xD|>S5){1RUZs(8OWxT#Q3}HJUig{oB#RVf~%` zXyPi+^l%DI95zmU2~B(nRQ+8v@eNS%r)c7^_RI$y;y=*DVdV)6v=IplPnb9lnmFv5 zCvhC&@@V3)`~q8_0y7^LU(RUiVe#dULp&T!9F`uE(8OWoLl&AiEIdom#9`rCizW^W z&kh{o6VSwA;Wh_{_!2a6Soo|*6Nlxm?P%h#{0>{!gC3r@(A2}i^BE5DcWB~sp!MTV z9O8`7bwenm8;y#G#49 z(nA`WI4nIB;}EY#6NjaTb{yjUXyUN+Fb7Q>mL8U%iNn$ZY&{n&USRd|Ni_Aa_RkeG zaaefXK@*3C&vP_!SULY5O&sPP*t#&7dtm8M2-L|zYPZ1V-DGiytD=d+%4b6y;+AOQ zu=3dzO&m7=>x(81o3Dw$A)bIH4r|xt;1DlC6Ni=m4QS%9^wxnU4oh!S(8OWsY7Uw> ztR1)lhxi6GaaekTt-piC7c5?`ps9z2=Y2GBSUdSSnmEkApU}i%?*D}*4%_blTgL}; z4=kKzq3hjX;;?p$2AVi5JPpvqLARNLia2W=;?8K|u<-Xs6NiO!IGQ*tJYnk!VeW*j zKdeGi4{PVZ*7t$bLzjqwoXId3Nj*p$HvYB(hxi6G@f2uzyBml2VKi~r`u>YJ#BZXB z!}j69)*+(1{|}ma=&~#ZcIY}mn0lBvKbkmf{z3{(9Janl2~8X}KBkL9+!Re5woU-H zE)wP*aNvXX1>jJhibFgXO&r!gt-vAPfF=%GAKQ&44%$Zva?@lqaoGBmc{s$Ep^3xh z{WqeC!{U7>ns@~?{T#(1eils}R*&336NmN79-xWC(hqFiC@lP8<9^K0b(b)4*nBr1 z4skIwaaj6MLKBCjA1yR-Sb8wWA#RT*4qHzGTdxXpC#=3pLQ@Y5|6DY2SU8uWiNnIP z0Zkkho*ii7u<(SfR|UBTw7wCPc0hPFl6sIhEPS@%5Z{L;egv8xPT~;1h$emks{TF> z@#kpb1<>^npKyr(LKBDW>th8Kj?i`m$X_sVUNmvo{$SX;UG(rVKvNG3A8Q=q&S>KD zQ2+Yj5D!BWhqZ5$(8OW$L|JI!uS6m@!_mZH?fG~#@fRRN7#J9`aEKS7iNp5w z)T4>#K*OOOO&m5pJPA!4woh*snmBBI+fp=fSUOybCO!w69(JIK!_vtCH1Q`;^`~)& zUq%y$g+FY)JbL(lLsJh6e@0Ltf>fTs#5vK#_dvr<1c$f`nm8=|XyFhyLKBCDn=KA; zS2S^0cn07Qk3bWLg=aDj@oY44Sa`zr6QGA@ADVhtxXs2Pz8Fm$R(`HS6NjbGZD``K z^6(&S65@4;kO>aRRBaaeqnp^3xds}W5c7GIrc z;;`|?DLBOEpozo!Wh-%rZ$uMUfR-nFaEKp46Ssh>zkoyh2Aa4BRQ+Qd;;+%fVf&50 z;}HLkCJsx_T+mG*u=D^E7eW($vWqiNnU_o}h`t#-rY&iNnT2zN3l5@+0UPdr+9b+ykq}xu6SXVB#&%`b!*59M->( zM-zwjFSO9aVc}+kCJxJAwm8IH(Zpf-B?yOj6q-0Jzog+1&qEW3<%>!*aag`+L=%Ul z{~jFTQ_#d=>3;#5I4u3IKof`U!{3Z14y!MAqlv@v3v9m~EFNL?>^(H~u=4yJnmDZ8 z_zg`Q);@&o&x4r{>vzjRH*3MfVdJryIK&On#9{4NTO8u9XyUMZ5r9KH0!lbk}aacZ;M-zwTQ!O0gMrh)& z{Ah$hj<;DI4r)pafnYw6NkmuVjSYD(Zpfl zwgZRw0W@*gILTQY;#bkcVc`SYj|&SQSUCJbQx97|$p+oH2vZLe=R*^Rl~>Ye;;?c< z8BH9vo3(>@3`Ku0199I6f zp^3xF|A{!nXQGM2;tRG<8W#Sr^t=~MJ#4)C1P<{FXyUMO>AN_@pQ4Gw`gb4D#9{53 zA86vRcwvD~5Ww6I6X!t_hqWKXafr*KiNnezZ5-mpXyUN;fE^BTH#BirJO<$qk3tiN z#TRVS5!_9cbdP{4xPe99EysMiYmH=VCN*So&XwCJw9DwxNl`=GPA5 z5I>0~4l56@;Sj%vCJrkP-{KJeiY5-5H)nwE%ZG(0Oq>HvTm)JliJ*zY(uoY3IIO(Y zz#(pcCJw8=tkJ|_>BJdL9G2hxafpYbiNn$l?3@Fbe?ff#5UxT~4=ab;aESMziNpF+ zGttCh@v;z292P!naENa~6NiP*0UY8d(8OWka~X&DZ8ULM_`uF-fQ1jN{rn$IJ*>aR z1wBUrrXJRQ7D5w;wLfLi#9{eG6-^x0pE5ubhlQsFnz#lueLACw!_ucWnm8={!_dTG z;T(r14lCa>(Zpftvk*=E0n|OPb1Y!t1Di*ff~I}~R6Xom3Xpne7Z#K}8MY&-2Z=+o zGs7Vq;-}EWVf$rn;1GX+CJyV@yv8B^8BH9v|L7kMaW?2V88Cmr(v=7faTzpm*g3VZ z^EqJVfCGntfx#Y4JuG~@aEJ$?iNnGt0f%@7nmDXoSByiv8cp0C>d-bE;(ci1F#p2N z7eV*$7BuxR|L(^jejH64=HIJ0#P6bs!}is_z#;wtO&pdUe&Y~lhA!BE`3sgF1aXK< zqKU)82X@X1%pBPKwGEnj*t$x09OC|H;xP9|;}B0q6NkCK0Ec)5nmEk;u=83#?uT|6 z!6{`nl6sIhbh!w_G92RT(8OW$^{{ha(9OSyrXITdmEjH!@h52F(CHzDk2u7CqKQMf z3@o5SYM}E+Ab-KcdCh^wH9!_u=pnmDXIZ;mDoYd1RK5cfh8hvoNB9OAKP z;;`_CZck(YoqGe#3gGyK#V06Upj%hL;;`@li9@%zfyH6|1BpYo!hpqL`4S`!T>=jl zhuIGjhb~zKi^JMAAaUptGq5-;J%YrcOHsh$uyX=H;?SvMusCcz4oDn2r2`g+?JEU| zgX$@;AOiyfY&;Ak4vKe}IE)5~gWLnlr_k+UpsT9Dr~bpnqmaW5q#m{o1Ug&?R}Win zh8&(C^|1CWY#j~EUReJWIXpq?VdVgFg(Gq}gVe+J3&Z>YQx6MAm_C>|Y`rC{ z{D6tW&f7tb7m)d|b`)$K4NN_3ogs3(fYihGt;71GF!eA#a(sc*!_0xLpMt4}txtxn zbA*Y*`lqn{+%R$2`a{@$YnV7}{UL0>J4_t5o)ETw9VQN&w}Q1RVdAj$kg)IoiG$K7 zEM8&$fQiHMy8v`tA0`fqKbZeu;;{IG?N^40!@?c5ZV@I9i(lCJ>M(KGe1`{`y|D2F z*g3;6^|1JZrFWP(EWQ%Z%z>RB1zQ&bQxEI^!q%_B#9@5cx+<7BEFZznZv%;g@--}c zkk1hUiNp3U!`79<)Wg#83M6-e)Wh-xEdF8YVd)zd|1fdbxjnFPUzj*79h^WjA2xmk zOBW#Z$mJ@mJb;PA>Mz)M6-XSpyoIgfhKa-WuffU*kT`NV%mHn`!^C0nA%G-~Ts}*n ziNneT*t`(P9OQBv*1v&?!|F!^By&Ld7gnCa=3_zX!QxPL4p15-j$F>e#)n|yu<|qj zNj)fk!OV|96NmNJ5|G3}@eWfDJNF%AK1dwa--PwUK;p>t1#J8kCJsv{u=Aop;>h(# z2a>%Yaag)7M@lEi=>a*NBggwcB=yMgi+t`Aay(`t*^3-stw`eF@P`Hj?7TgY`;o)H z6zO~$h6u zE5|_M$l(AhXF%e};ehZtc`VQ{EXXOab{)(VSi1qnhtVLlFgAz=H4{N%(C7vUfibcA z)uDHgkgFebF9OJZT<(XJi(p4FVBS>a25P&5&i{oefYPw~0A5Z)#i7UaKzR%dpnC&A zV(9)o0L`$lau8IHgOWI`9SAFr5^>lMs~2JAF3duZT`)F?2DRrvV(9iOKre29)$btt zLHPmQ{#qRN!_Gs4xgTT~2!reb(J%}$A0&ou{|u=8Fn@yV2jx3-`$6Y8Vv9cwXo7&% z3o!dYcEQ*n8q^NQrr!suA6CDC)PgX&{?*Vlf$shdQ1`>yjUe}f`jqJIKaL~(d_a-S zz`y|WKgeznMz{YV4*e-m{jhonq!)zI^@Gm20*Rr!KLUD@25jFR$o-)53f=vnb~(22 z`vJ{RuzC$-Hwc650?{!19Y^?i1VdDS(g%nIvL93~qT3H@r(&}ocAf&Po&=cz!szyc z?s)-;q5J;;)P7j_gX{;Dzv%YsF+z^qgnAcb1sF#__v1seF<1;lfb0U%Fzg1^53L?y z!VDXr`eFSAm;|i92jd4r^~3lux&c}laX`(1iG#ul#s<-TpqtK-?%xE7f$$Be|1F>v zg8UDvPtg4jIkoqL2emoS?VpCj{tr<5 zVdqvty$|c&!MF?)ao8^aJ#Z}nnlM53gNCBf?O%z*{t2K9;ushh(xK%D%tCbkgZ6!b z(lmPhDcA(j0c*d2><5iKpxY0+_XT7otlb6C#lZ003Bpeo_}HbLGFX81<^47gV-PpIxiMm z_*HBM$uck?hac#CYM6dlxdbW`(Siu9u>(3l1MBC31)+5Xj18he{y}#;NW1`gptb`v z{xumG7_^{mEs#9Seo&o^&HfGkAXN+uydVo8OfZSYWk|}**UQ&efCB?KOF;p`hLC0^ zCSVzJ3nODAFe`zp-qpvA3DmF$n+z(4x5Lv1R0vE-fGPP8}H17?K(OGc#WN z9L%utYc%7^@5xLn|4B3a{LIX->I*aDs;|sUTHlyiw7xU5u6n@Eu!WJq;pakjhAkEu z$v-OC8Md&oIQ&#&WZ3eMnMLanv&gE)%%WN>3=Nl585%AfV6eX?&mf=umXRSOLCRt0 z0Tu?65(b7X`jP$1Es%a>^I&E%GcZh0U}^|rWM~L-;%f*>W?-1eBH93|`KKr_Gzi`Q z|6d$gO%ha1i!egXwg3Oc|2H#$!|@96mGU)= zE9GmLRyN5w{8VIU2$HX1UMXM0vQmVB;U}XE!%jvWhMh?a3|kx+?5`bQU@!ss6XfQ9 z+zvngH#5Nf4lM=9pst3$W zs~$45ta`-E49X@V;4p#O^?;di)kA(rm^@-;SoM(K;V0bQX0SU%{vU>fAt){W6NaQi z1y+VFUzr)TKxywAGxMr1%uK5sSsAt{N;v#vWQC-`W6TU&9x*eoI>^uv1WJQXm_=40 zrNP&_Obj6jOb$O;Bp`M^WEO>{SFu$M4EEQaGBd0KrJH9A(6lJf5cG&y44j@pW+A7= zf5Hww{~v~g(-UUKRd4?P7YBtcNE{Rwp!5opM~)A8x{-#&hXO;xq}R~+NMvjXVq$2x z#0-j4W=I(QV|Mrniw{sZK5k~12#Pmh28IdsJn}zMm>hn#FgW~t0u57n2Km>%j0_w%b|$OSV4#8+f&2tqa&B<6@F2C|ERhd~Hr7o&p1PI(oE zor*a!LNId}7#w~wFhJ}8`2`f#;5@>>FeO0_B*!r2Av1#(D9wWM3|LIXVP}FG!%lG6 zLh}xCc?wIzkK`GCeqmDfmSh!&pNE+lwurJg{4`}{*z)Z$!$eT} zg`_(XcsaU&30#i8KFi1ulFa1r^C7c{)+2dHItH1M08PIK1sZ}tZbQ}&(hEzIp!A8Y z%!8%NBO2iFo&r(_N*^$NFg+l9U}7LOFmYrtkUp3=DEwh*0Tizwybvj!gZQ9uR;qEB z3`+N)IQ)kt?K844`~=4t2ZUzeZ~*fe6ri*Ugnq!lu;no`!zv~Q29d|iOskS)9DW}9 z|9@+u3`E}o28Jz+G7dlGWf*>f$|8`NAoqf3P#yr)fuJ%Q6z2_03|o~L7(_s2LK_3a z7Et~N)n&OX3?ZN}2E{+9oCoDE5WkUuVT+=I!%s&BhAj#V_Tc*IGqVV&^*cp`iD65^ zCUE&S6&vGoFDlJAr{A1f<^K|NpI^ zFhQ2LXJE=o{QnE zg`u#RjUiAGR7Nq2t^(EH!TQ|2=aji~96)w5{P@2G6c!7a94Z+Z7%J;I7(Rl+ z{tGknDuuuQLqZuEE(tR*h%_*Xo|gY3|FMIaA!G`h!$gq(nAsUZ=Kr(*c#@3)><&;I z!^{Smsqp*%7LXkv^X4;&zFzPPWWV?-MF!FCCMHpDWVH@#3?}j{42BIq|A&Cg-g-!( zJLAv)kb_JPKR^EeFK)%oa50{r;bX@qh#3pH7$$J6t5x- z4MB^T7`qu+7zFK^8DE3S0VfUz%Mb+-Esy{IL+1ZuEad#~KP0MHHh7lWEva4a|C?BH zGfaHIETYx_|GzjW3{L(3FYdt5bO~k;$Uh)^9NzukvWUr{667}~28PNIhNeqf|Nj>k zWoGyZikoa`eVdh+sb5@_te;#|Sx}O%pOgv4ddbkHIsDf2L>bsPE2Q^>-e-WRXJFz0 z_fEk552h=iBQ2RYK!cPFOpxP_nHa&nU$8v0N;LTTLvRO*i3zNci3zNlg@rXUuY>`j zOas*MgfOi@gEtVSLpew@#5$NA5UW@@Ks_}kMzFbT9AM=vhe5-7V6y{Q`I*BRq4#97 z3NVAmqrhre1(_w87#KJp93kd@W(EcU2uGNC9Ww)i1cW2Xe1e&QK>@-M1IuVYIO5E2 zm>C!hARGy1MivGJ3kXLN%yEElq?i?07#KVlIGsHG8CZ@aL2v9~2w;_kxBwKMta8k1 zpnfPsivqI~Gu&y4%%Dr+piWZ(`vB@RO)y6WqDKqNfx1&0%u(UWE6rtK)dO>&j@D<^ zVP;^^;VLL8Vqi63-o*g-fiZIdGu#Iz%%C1U)CUlb2LmgIJQD*0Hz>ft;mr10pNWBi zmBW;Yfq@4UvVKeq47{LFU;>lOV3Gw)vVuuA zFv$)kIlv?*n1q~C#SLcjfJt63$pM35TY6!iXepytQ=(^!$53MvV=&3k_0bE zh=G-3Doh%bP$AMF-3+W8TR<`(i$Dn#A_LL`wiXgQtQ_Y+YCxi(^b1zQz{>FnBnZ+7 zO1fY{uw}gFpm=BHU}phEyABHj12<@5pGg3m*Fa+-42%=NX02jjU=T{m%m?wALCn%L z2F3}X1R<1@ng!jPqC-7$m?RxXTDKNg}_r1SAO(2T$NJ-em+i5yHO5xQdm50mcS7 z3c|k62x5ZCv4XTn5EV2pYwL!k@Cm`cFVvR1ri4P4(Yl# z#yR;M3=H7Z%NPY#3>qf{r|D>zdTmh5!!*LyA2KHLaxgH+w}3M)1A}}elmVKL1*?U6 znn4%L1KrRo&AK;@DG55e-JGE&mj98>=4kn`y5?v zn9t9k`1}ma1@M&qTAG1DfE%2mnI~4TF`!u;$lPDS2C*}MfkAEqv`hp!8n%jraZU*j z1B3hlsFeI^7~>j@@es;Tcmri%6scdikxWnmnZTGTkD*@~WGx88vWyDIKzJ5`mz{So zGa-($Q~JUT&f0vH3Wi7MsR6>RGfr>&N;~gi@FQ2sDt|u6#Sr+XrRUz#ApC2SFGW211VWP!15O; zm_X|-Ks4i=7+#Q}42&OOM(Tmv3LjujfE219z!d1h;sOT7k06tnCKkX`3dnLlUQl=i zGfgajq)PNs!5Cy67=!9}h?9Q7Oa+NUXNnjY=lp{@=@+V#exW)Et{H3yBV5)flY#L! zNGa3A5)>DHfVr@Q7#D(T2u22!tc!?>P(B6*NY-QkH;X_Xz!MjS@VGDqsbqv*H^{(% zD4i$qF))~cb2|&zNX7tjs9KO`KuiXRn>bM11X|4jl4P878SW+yMi3h$3SM8!2+_e9 z$iT{RlaGOc8`RE*n8kx)7PtomE+w@2VgBQRn+4DRAeVwt7{XT&!vt^`RslCm0JmXA z@F0R1CW6DTqj1ASa2sZUW|#yH!-NE2-ju*?m;adw@L~q!X?TtVWmi}cYYEcMXv+vLHb899bTZUd#yMYv zU{14z+hqtY5pCg~F-$99V6?^WjP`J8(0CBo8m3l;N+FO# zA(aZKlnw@020`FT152GU8LS+sZH;W!L9isWT@Pw~LybYyCUEaVt3PHgH%0>WA0%DG zz?&Z+ha-}#w=gVlV&L%xFBL$Q0BQ|ng_dy=P>h9E_zaA5Cc}+Qz%&*VA!z2LpqPVj z-Yd8{DVXM9I?oo(*bI0CgM5uB>mx;AzRrLr2}se5&;bu>WNSD-GX`=fsBkE#fl5nD zxOI?hodZpC&_OwHu{%WsmXmV8Rxt)Z3h*3oYGMq8WF z7(ul)V<0q3mVmh+4}vhFz-JPLd9nl^c2F%9D8Y@;VhYz%fv%+nhn5VumKt;|4PaM; z90kIlH98=gan5#8Sdc(ez=8zI3j`MvjExB0kR&_-A;7@E0BUkTjQa(50YU{N15ZTg z053XX%!JpwpbHT}+QD%&PYl#x0`*WcVeJz;kR)RkjB5|#f=;T_%4A?Hf|~*_vOr$S z5CfG2;35m&{jNcX!HY3aw-TPXSY@D^bf7Cp7-9Q}7!bMX0o;8ZFbBc&D9HElWC&h^ z!U$VAj%0$8ILwDV_)UNW^=w4Ifu@8&o(Bh1s5mT1A*q09S%jhmwn&+A&NjFfgbGLw zSOm_TjL_&_4CaAsf#w8p@|06R*EaZZ*r%+mr)un08-kK+k2fyVI=o)%yNjpZTpVI4=%xDo@SAQQ+e zrilgMuwoQu0uALcS(PNFGcZapfd=6~dLeNl3FljZ`?Ly7FtZ@?2tK^e2iyH|Qi_2A zqDT#F1Hw=XCeRQwh;Nn2z-Y+?b_W9kgEMHr6C@17j9N@9q!<|FEkR?A3=9nNt}uo! zjG+i)h{71K+h|=trYOWig%x0zwz>v_L5IkhO!MlR*jU40tvI6=`q|xM+3*joemAGcdR>1C8b~fMby(+}u{&)~t-e z3=AB+5N)iU!k~-MIK>#4Ibf!6@j^IIIc_xukl8$OfnC>JA zaa^6jIV};mlgk-k_1A}pA6C(q}UnX!5fa3wh5L0A1 z6d5xl<0Tjv%%MJo+Gc^om0)17L^j3~8ZXlz@nQva7*wY<#CwySBtU^{gNRsA)Y-z# z;RYoch=ZW!*g=&-gUOzoF;pC6gafi3hz@9qaD?gr*(|}p;Dq4Ha5FGCgJLI$F;qN) zI})7HTtFr=Ft~ye1}Fu(F)~6jk-H*;r?5UZ1A_oI`xhq|PRq>Us4gAZHoE3K|s5$N*YCfF=ZA>i`pHVff4#FdxQ) z(Toh_Dm=0RERJL!U8YLf-qqu)~HH@$--z* z5QSiI2l)!IIt9ZxnEf!Cks%bugwc!)=`bdY2DvsAi)+bONSwVe`(ZSe%)`WBfZ;G~ zVpuGMnF^z^YlC%?V5%4x8Hf>rD~B?$I2}td0#yvBXq@ih_COi5OhZsB;1t#X!CF#b zD}c#Y2zLOKfz=%tg(cU3G-6gsa2-&_s8gWWl#2E*-9m>Fx8E_QYm}!SNy-%#;V$0cBu`1&~H!{78SNVsz1%7>c3(Ku{p(Vl6;9aYY^!LMHN{^4UU=?GupAFkAc#Q8HX4nX-o`7 z=&Bf)7}~IiVYd9RHS@4k3)mWswAYI61FUHfBSR9^ioh6B#L~he!g^wpB8DReuSSdt z8cT8jxgImu4C(N~XeE&C8!V|56kcSNSVTAiO9_s}1vFQM(FVt2BT>E~qFIiSo3MD8 z2)l@l6%6aBtPzXr$+m%Pv#?bn%nSt#;H|dEfl0JNWKAG88$%%j$A2k|QFkom3ofM~ zV~{Zx-(o4piBp9=$gvoQT_LiwKx`~c2xf-ndMv)j$T`HS16hNNu>>T@tz>oQus9!N z7BPhw^|A|&86`|dU{Q!1Fd#M-4`CU%0QnKKV#A^kWF#`i682c;dqBoxMhEp3BD)O4 z#xjz@#4r(KItt`G%ueu7Q3>)WGR7L?SXwt2LQD*;$mW3ASPTP;BN14O8H~)p#4xcC zNfVe!tQc4^5`oo5jQSIcDkL+&OeO{+ECo|0SPl=t$bg}QnW3|e9HUqnS{N);u;|3_ z4!V1=c#nw4!scUaVwkpJG!(Jr4p1sK7CRS-*6g;gDO_wVHU{v5 zSBwzCC62BiYZk&Nxv;1r!XO!D2IyhSu$>MNO|TOLAUp;J*on$8K5V}Tj1O9w3uA+5 zLVVb^V31l62Cqd0F`yW>rxwa(K(`OJqZ1|%Ug`?tFfd@KM|Tfw_ZLhHs_zjyO~{o; zw-2_L4Q3uXAKg8K4FKN+Yei2k4qjse5oBCupKTi`(ayDV0_q3elR|| zd(rvm;RD-L0n?9OW)cby*!BUK{!w}~1V%$(Gz8E?z?&UZUv2`O|IPTDkC%aw5quOf z=sar7gVq@IGxBp&^$SvSDigtHu%+guG!%;L>V^m8(k z^wX1*vFpC4PZ&M8evCDly@If*4{`9-Vq7on^=@(8WsXj zzJ7i|YF=@14g*Xa=?FSKJqGY8)XAW;ql-&YQc~0OGC(bn;*yliyb`?((7{?siN&dU z8KA9tpaZMHjMSnch)79BQEFlegq@q1larqe(UX~1l3J9Pn4_1$z{tjIXA78xmb^hlYx;D zS>sIxMq7DBeda<1Cs|noMMWj3AgYi44dEyW=2MR4E?7;c7fgG#ikFUb(t8^?7hs$=%s7~l4J8?GuBV{&(P0e&MILR zQ((@E!0_;SMn*+zMMWlNG*jL)GAha|D9YPADApNa*zpr0t0Zf$$i#uB^FIy~o0%Ae zZ81!0XJQmq#0b)ECPrZl!G3Illd%a-$0j(NiIEY*%(++{wUCKX*c-#COR9hrRKW6jY{p88rN-r1%sCOvA|=eZ z3e3U^%#~j1%o$D05(*gpyA28n^ptrYB#54D9)kqYRX%6Jo;qHGyocer_gFf|1&X)`Wq=>Sk}+XD5|Wes3@(9A@zcR(FPP+%EtPN#&(MGAU3EVPzEuW z^K29y6PZO6!WEgg(UNXEC?lc=OgA>cSMknSfJvHVk1(Q@&MK=|UtbT@>kr6XrUSMVv#xSg(g|R|L!9mM``2>TP z3iFQoU5ZLhN{Y-H3Lqb|Dd@53$0~U%>&q*~F;^)lF?)l9$AEcvy`H_Hx4MiGbDjQ%mBL6LWHs5|gvzLEHL4 zf@Nt%si_RbnN_LrB@C`XLGeDGPVs*Jey*T;BtA2rAwIq|Gq1!VzJwv$IioZ$J2MBVX>kTzhig~>LrG;pDnm+sUMfRoUSiqei7K1WN}FmXrnjGn;yQ7&R`=7iZb({VPA|$#Sq7p!<>?rn41bs zHsGizhRA~wJ|uo%#)f)=y#R?oG^t?MAh3;~uyOHpcMT2!s|5uSm;o{kmW>#SQqxk4 zQuC5iiy5*#^D;{^6LUOL6H`))d{XlmV5-0Y3Fk3Db0*9!PN8mK$3l}k)XnLs(4+#5 zJy0S-h!v$K7Ux5vp(quUI|_@&Pd`_N>>yCqaRcWZkcsK3CB+Pxpi~axK{Go+yfvR||(O1(gS|h>tKeumn338uM@i^HR&fUIL{+$6!B0hT@FUl9c@NJcjuA z;u28lot%*!pO%;jiDFQ2$Ah8>lp8^w1N#zGYJ)R-PGWHhIO@>DFf%V1ZcTuzFGF5x zc|7PON6a!C90Fkff$}RT<-z>m;sH0p-#Ivd0a|Jh=ne(D_`o_}`UOS#S*gh-`k>xS zQa-3(QCys(4`(qzQg%G3P$&RJ6g<`-*%st^a3F$;2QVikwYa1xzY^{)P%wuXGk{7q zP_i!us|J;|U`9bn5hSy?`-LhvE12k6Di|3Uni?1y87pWM6r~oW=AVnF@#5@Jv+{C0z+nfS369wIL1zmq51>LlQ%wz@KG*J0jl9`{U zTb!B`=%#@>Udbi8i8+~x#hGAbrFq5WnI*{?x;gpz1t0@6^KvrtQgw4Ob2Ce9 zjSUPGbkoW*i!+llb23XRZ8I`cQd096K&crNqOfQLou&;cjX^~TOw85U#RD8fX_lXCK703|O_qW~u4>>1$U8pMzUPJ5830ZI9V`hr>%!QkKr%YhPTX#prFgJTFe z+kyo^i9R?om>~&V8h}(oN`U;*5^y3YN(FaI8Ng)|xNv010GGI6S%`6|;%Z}HsI^MYMc+ZiK!I9gK>z?D~D~?yM zIbOd3766?c&cMKs038|u&kQ*7DL77MnZoQmk0}Ub07R<`L@US?$e~12pnAZg&5nEm zj+2?@F}mKn?8pakFYNwS*k~a-I)mUA83RbcJLs0b^+qX zdCVRV`#=Zns4#+bGcbT>8yxuzoF}tQVV%k{jd>nZ3dkGRu0jI=>XWP2ARz#<19sOZ z%r7qUn4Cb~290#rK+OfuQaJJ{I8A1m$L!Aqw%C!I0et2@?9OWN%mqx14?+#djw4WW z(Cq+)0ql-x5F6wR5d8(J9yXf*5`*0d4I9x1iOE0*LXgE^cQ_-9xnNNTyK@;?T@F+o z$ZVKfV0R?LM(ROwQ=saQ#a2MYklnloDu%4?0#pp94ivvnpkmBtRD{r8;sz{gicK+OdC2jOk>11uBLuJ~u$+ki+!|7O@*x#6SnVgX}=o3mP^<7ZZUx5R^ti zav-;9K*d1e2@(V43md2ycvc3IHm5MpV@l+@=XeE_Ssl5ZAOQvrEpX8Bf%JmRtAOf- zQs6M_fpVY}SZo25gB-_OpklDu98kVJ0Tlz!=)m0KJe6r4qYo$w?_C9FNpS3e;tOo{ zAE+LXdtmMofF4l(o*qyiNK&;B^_6*x}jo5Jflk8LW?H16qKGdP`Qa?D~623Z3s z5pUgumIok1^@=NVOA?b9^omQ0Aan+dRgzj!!l0LuSdz$~msDKLpjVWdlc)z01szBY z>Z~G(fNBmx;F>w8ZCI+dBkOUF+4U!CQPBk9 zjS@6*cpC>z9MT7XgapWPP`eva2P4FgdV*-Wp$%Sun2)#?l4n}ONtoulJj$OL8EwjdHE%&dhULqy5Rl-)a=xZ zcyI>+RBYnHpr#88!^i*FFpgLN=7z-neN7fe9ZV~T?$nHfN~gIEX*QI9DOQo#&A%^1Xk zV2FBHYY8F-Bbgb%)isO@rXlJv#X*wH;93>LLSTq`SPhF12VHN$grpwS?t#fNGYG+$ za2jF`rZ`9eGx#bu5DS4J>S3)0ggA)B%mBU>2E>G8hGB`BDg0d&9~iV!sX zF~vcum?1X?fS7O$aS!-}eYhBm!3?=11;z!_5cSB%VS|Oi1T*-yWiS&?K-7b-y@LzE z8O#jYa5jtqQI9DOl4oXsUyT6bf-yurrZ`BF8F4x$hzrIL_3+bm!D29inL!W6gwqi9 znBpJ>%!peqKwL0}sE42A3KoMA%nXJwCY*+-#}o%CU}iv^d7#B=K)MJW+B$*k&$DxCma12q8DGpM=%m6=v9K;1R{>%nFho7Lhl&t{vX~jbXD>r}5DKCmQye7A%m6-n8N`HRb}$Q593;%l06wA> z#DrsrdQ5SU0%qt<-5@p$L)3#$PlgG>X=VoSLAh`~hyhWLDGrijhMaW@V!|;*J@`~p zxEPGV3?8w9@gOurJ!m8g!bc{V889!9hp5LC2kB#G0FSL$XqZRq8?KmB*_dO z6#=mj7@{6yIWbrPGv>K~4ANj3j9t!PQD)4O`Jmz$$I(H>!@x8;!OReWE(GQ?Gem)D zbb^@yJko|P%)rbLham4G?JMi9!-P+T!Uk_iWtBp zzYtQp5j<|nzyLnM8=HDi34=`>loN%J+LN%F6?A?tHuWGE3L&*8VQN6*DMCo?MwmEg z`->1#`w%8x&A`AQgw%cmjm>~O4?5u)rUt}^;cl>cL^};U#tOPj7A%fvkHOqO4=j#o zcfn$GH3MX97-lYv-it&09M~L0dkmJ7Z-d1V?Jk(TPr>4d_7%)8pTXjYb`-27&BO=_ z2Sj@b)`AxTizC`aFmYwDILtQ0%5oF1IHH{cQ||>9N3>^P;_+Z{M7ss%&U~;qqJ07j z@g}f1q8$Pgp9U63v^QY>S_KwIv@2lh4}irH?FX3p3t(|XI{{Y1Jpqd&+5_ORR|W=# zZ(wmmy$^Fg6B8&r5%oK)CngLQN7Umm^$K8dM12hlSv{~gDAzzz2rS&}!QwF2A;Lcd zERLvWVd^u%;)wbbCSC~^N7S1z@gA@^C|5%4g{6$CU~xn}2upc$!QzPe4m`%nz`(GK z341y}0alNw?_l9`2`rAN*I?rJ!Q!w~kGQzz1y~$WPr=4mzk$UO^%1CC0QrOwbb%*Q zeFO`CA<#XjAO&bx4Xhqf@4(yxx;I7$sonvPwK6a;xZ*I!2ZuOl>49D{gGvR60UAPu z42>jZ<};|IfG6Zo*Svs+RH18%KqEHb2}0kmL{ zV4!P0Kr-O*GY|tZE(&772Sbr3ztc+-i&C&phr_O_AK?XxHE_-1uLUeOr^*+cPWP4#X zB}g3Ee3<(|;>hY@^%N+aLHChBodX~FrBoc|FOa-rvsS-!yxhHFb-&^CX|hyzhLe}Pv^+#xeBTmM8U!nUHuJ^B(!`(ED|G@4c0;$gfi9<20+y;q*>}`drhxLeH;xIm}rvVeUgWBr~H4i2}3+jK^ zNDxfi6KX!}oD7&aOdV_l1SSr<847lk0Ze=fG#p^{EKK|b)O^@+!!U7CsC!^>0TWM# zW|TfO_p?C#H5*Ob8fyL`G;!D=A1l$s&7m1|8=80k)O^sm07wev9vP_luytfG@r}?a z!mA*~(D((#7c9*^LKFW1_3wK$adoKqf6&CMpy9v?m513I4Rya5n)nf@deC?Q$S9cl z*HC}Kt|Enr>vDorF)-Mone!K_9yE>sQUO!{6YAe&H1)7GQm|VVVe0=v{acHsek#_Za|h5G9Tns^q}J)h9T4WaJ;k0w4D zYCaEC9_C*wC|?yy!^F=+`LK0wFmcd2DUjFVpz<*B9Z>UA(8MF4;#p|oF#8J7#FL=@ zEkhHBm2ov_;!C07(1a%b1e)GD(8RT%=J%nA=R*0gwR$jr!LH7Ol|wM`!_atK0M!Q* zzYPs{(6|ODoM7Ux_V*ez^}nI&H=&9D1!-nrVAz2st_cm#eQ4r!Q2r4p4YLSsX1^A4JLE;KwJp@~aE;{`PS0N zLDg?W6R(EyuS02=JFh|A{|HU|I@Fw>XyVJE@udXyAIzL9(D2kl6aNGaFDo?hGf?y0 z(8Lv?<^-XM!)97?(8NLG`k1m(8OWovjntUgxPxp6!;7b3>IkOu=bTdk~p%xSx|9MIDpz$ zrqJ}+iY5+gZ%jlJ-wkps0|Ucss5rSSR2*bJ$ebRi`X6ZGH=yEwq2e%eU^A%pCFIfp^3x# zz@bRu$l+W76$iN!6wY&?d{{daWH0jSvDr|0kb0266rt{302PO+hxPNfLd8MqLFWI4 zhUb2$I7mIL&joV-1E@GiJ;;1mI(UyJz8GrnKQ!?>P;q8xI~Qg?Y@E&tDh@IqUSUTSY6$hCQa?c`Yd36LT4pI;6 zgM-57DO4P!9^@XFyFa6euY>Y`KxvpcFna~LL8dW)Hu5uo%!iFn86k;_LzI9?U#K|D zULGhv3`)bqcR~5_P#Pv~56uJ_XyO~8;)Q79X1ri)8OosIAoqjZ0~_bH+T+Vz$5(l{xHjk(V^&iZ9*m!{tnmDX} zDTRuI`~^x6EYR|#9x4tp2R8Nsa?%2*I7mGxJt#sm_fn`hOg${#PeH{&>OtnKL(7vZ zP;roY$eIt3=?n~?q2eI*AoHW3<}*RV4<iOtmnL(Pwcii6a{uV!apU}%Dh z!_>pZC3=y>LH3$K3tU*bfT?GLwoB(h)q~7ehC~UNJOC93sRx;p4>ji~k~qknFnjN# ziSt48%PXij$b8tCB*+3DXn4TPUja2=5GoE+53Lp$bfDrO^&oo>LgUvQDh^Vw4l)>u zBcb9T^&s~@gqj}*6^E&ZnO_MN2dM{{p9OV)3sfAW9Lqbe1?jH)Pu|qhMNBaDh^W*GhZ0$KahHm`In*T zM-D0uQjb_Y!@%GG6$hyYnco97-wjC|WR42d9ABt7$Q;C~8U}_Us5ri!o{ zagch%Y90m#E~vXe>Ot=O2jvSuX^=R`ov?99ai}=R9K`A$1_oQGI86O&X!`Mhii6Z6 zRs}IIWI@G2>OuCJLmN8~%KsZsagg~S_as8Y|1ne?WIke*5(5J()P9h9kiYgo`Jzx7CcaV_6uS%z zDrn*j&<4E;ns^PUam2vD;EX1I6e{ik6^FS8R_|A#iNod^r=W?$<~R?bi64MCli?PU zIC6XAD^wihFL3xk%T)%b|3L0Rtjc0wP=bns)Put3H`M*=P;r=gSbX_F#X;&p=D&ib zt8l0|NIhZ|7Xw2jR2-xpWWEV>DPtW}9Ht%`jSN$u;vn@P^It>VKOZU%Qtu260}yo( zDh^T)GCvn;{xPUHOg+r~uc6`~^&s;dpca3Fii6a{#>_zGOF-ivq#k7cGN}2oNa7%K zoBhbT0SH~#X;)bK@Nf9HmEpEeLGbBR5WpD zGGLek6$hE)2{i*mU4V+i%#nk}<87!oNIhtcEJ!T~|AmT!)Pww`4Qk9XFfcGf(+fx( z6VWB?Q!K*d4oLFS}D%`rm~2btpsjdw?=ILI7-s2LzC87dAlXD-y7 zOeArTIk1(;B~WpYIk34ukU2A<;vjQC>iwYUVL6&OFSI?m2}vB}{%cTscOZ#_%qfPN za~LWPvKRTV^`}sAki8&tenQRpiY6WnO(?K@2~rO-Uk=(nXN9IOkom}~#?_$WAoU>g z>!9XnBZ-5|fzA7vB8h|4`#?JrR!HLD`CL$-F)%QABZ-65H$l}0Ld9Y3F@dVjL=%UN z^VFh=!`ky*XyUMSmh++FAb)|}4{KvBg^Gjh4TstZqK-kuLFz&7+yQmxX{b0%Jv6!) z9zw-I>Otm%&MpO+^BgJ;QXdHtfMO14yn)n%%>M{ApBE|)Qx7v=87dA^4>CUhnt%16 z;vn_WP_sc)08|{L9%Q~2bg6b2k~qj5FKGFb2o(pJ6ALl`ikqS0FmrmK=5!#5gUo@= z=T1WtkAs#E3z5V@?zsUqXBm<>$Q;nRW02Jwk;Fmjt)QLA?MUJv^&qt%dVu*FVu9ulkT^*FY^Zup zs5s0$uzs01R2-xpWR4m%g5{v%AoZ}a2jqSSs5nSH$owl%^If6hF!iu{Di%o`R+fXz z$$*N3%mLZE92)QWP;rns$anBego=aIgX~p+c7mrt#bN59&SzKy6$hyYnGak0vK=Z8 zQV&}T0dmhxs5nSH$oxpC`7hDLcRsL=p#?BM#kS@DE8Gq#ib3!wJo2 zFnhN`)$<{VgVeJ?$KPbp#7m*+#1u&!WbZ0yr`ZZg9Au6ZG=N-@#6jw%pab8bXyQFk z@hBv5kU6mN+*BlSkU3YO>a(EYuy9s@)~EGQagcvO=7>Pc|1KnPkU2ciPI*6)I7mHg z{lqLJagh3OsQMLX;uE3b8=>Mb_rTUw?1YMg+ykl?U@Q7hB8h{{KMpnL5}NpbsQ7I( z@mT1VkSA#3m!RTr(Zo5Rg9P8u#OGX<(%A5HuURNMqf9Apk`+|m(A9Au6xba28ADh><(HPG}BjV2CT=TV6! z9spH82~E5O+P+$eCJsC6=oFebY~1NBnmFuiDOPBC40GoXP~pJ9z@UjH4%^=nfF=%` z7mGy`hpm&ThKhsY3zVLhL-S(?ns_MGzw6M%p~J8Yhtb4eLEU);O4z8e~D zjL`BM=AN6-dV~#4oEuvH$e@XTfV$rZP5chDJoiBpUk&va)VbjCd8n0OA*eREIIIl; z?bcw3L%jtThs~G4c36Sp5oA709JZqgCJtLi3)?A#E)H9V2@{8%HwJ6Nql?4ZY%p=y z5f-qz23;JKcR(J8iNofdVdLoN;;?m9FmWAdc!KubA)5mep9~UYfXst{!U1-k1#BK3 zW)4&t18jXAOdK|EauBKjUHl}PI4qoD<8UzbFmYHugNeh!AC`X6#Xq5$4-0?T`XHEk zm^dpmJYeFm@CU8y1sR1d4q9)DEDj4F*m?xGdXORp1_nDc^I_{PVe2tr>S5x6XzF3> zxnppMr=W?$!lwv_comvBY`rgR{VB{nF!5eA^|0`njYE7fnm8NTL|!ukQ| z;u>h?z}yd8p8``4b3bf6045F_Pm4q|2PU3~CJrkPVQ25b%z=rQps9zYw|X4n?P%h# z^ak3;2y!#be3&?BA0x6jEM39Q^Mk2}iNn@!!^C0f4Yqy{UHllDdtmW$5r_CqG;!Ge zBG?&$F!N#JZ_w1k;tRHJ2&Nw7M-b+Rwy$C0u=V#+IK-9E#9?~_VC&*w=D@^F(bU7j z*%^npH<~!CeG-O4JPu797XGla3t{eoiI5~FmqtzCwtM5e2TdFn&QH+9Ve7>|;1K_TCjJDJNI?7O zpzR=-`=QNb25B^L*!p309OC+D;;?yhD>QMK`<>9lVd=paO&k`#p=jc;_=T-&gS#IZ zkFawcVdAiMMKhW?F!63QaajDq*2lrjf!VtbO+Bo>*oi|NHa`h72WCEOogGXZW;p1(&kA13}CO&n%EY`q@L9GLmCphgu^`wCXhXy6bxKof_V4_o(#Za!>W2PO{7 zN3d}$bn!GC=EK&(fz-p=*r24_iKHGR4jZ?D?F)gahl$TYQxD6h%W;UWM-zvQf9}O0 zeiTg{mVaUU24L=iiQhm|58D^|42SqTG;vrt3|kKfGauS*VGxA&pJ3v!cE1b`aTPRi zSor9piNnId98Db7A9unb?u8}}^KTdqaoD<3nEQJ`k@KS5;3!Xds0O&n%EY+WkIe3%$0fKDK( z2Z_VXzl=ltHkvp{56B$Y`c`!F8KL7$FmagqJUGNf(8OWp!`8{d%mLX6!m#zjFmagq zu4v}K#C_4kVdlfu$%4#5p4TWwQV$Xb*C&JA2@}7BrXJ>=yEw$3qKU)Y16vo2?jCMXAqCA}AbX+H@eE=(#O2V$ zVeZkyA#R8!4s#D|9Wlr~(5Y!qv@nDtsRxO}!XXKVcov#CY#yx?hj=ZTIBbnq2M+NG zXyUN(H`sb-boXyVQx6NDgE+)bqKU)yEnmeUeiuy~=KdEr#6O^k!`u&BPYrTE%#EN3 z5P=S8!^B~03*>Q#tD}j-#ud@mb;HE1(9~}LS<1k`;DJLt08Jcroo~;kqlv@P&nq0_pU}i%;llu3Hx6?@Oq>Hv95xRjj6+-+O&k_Ju>Bb@ z^I_w$c4+Eh_u+V=iNpE@foS3#(1aC(Lp%jd9CmI3Z2t$$J+O4%j;0<~K1{+P4qN{Z zGY95h*gg`NIL!RLXy(Au+X)=v7tq9E=EL@*pqu|0O+75W{^1a312xK_?FUdj0y7`B zF9c*hbgCR2(wa!>LE<1iAPEy3;x=gFu>KTmUkJ#2*qkHCoFpXmAaUsQJ3}rG@lrH# z*!Tc!9|5}gv(ePU%wL8>d>xuN%zW5>6m;{ips9zM58HPDQx6k=j;0=FK5X9!NIi6k z3@CUQc%cnxm^f^mn*_##lq#h=I z7)>1JU)a7GkU6k81X=JBNj*p$X3iHJ;(yS@Vdlg3&4A2D-e04Hw7&o(4l`dDhqx)4 zILv(5z8R4D$op%ek<^34Vdkgd5YIyshnWxCHv=*sd4J6mB=sP1Sp3e%A-)_<9A-Xj z-weonSf2(I{%4WYgT!I#Vf!^;>S5v!(9}btg8{bR1*9H%Ukn?l(+jP?K;kg>3*r!$ zL=%UlPuRW|kom~_U+j_8gT!Ixd*KidLKBCX58LkoG9P(gOa+p9kT|q>VQ9u7-i;;> zTSq+&hxj}+aoD;X*nSs~dyx0V96?eK5{I=v&*KokjwTK}FY*x%@mFZ#u=eT?9OB6P zQ$X&4or%T`UBCo$KTKR0O&oSEupAC?H8gQpd(Q-ixDA>(=savtI(Nq*?vEx8Ywtzj z5KlrAhpodYz#(3NCJvjIY{ntpjV2CTcL&?&1Pf1)pFnscntE7&Z4VCdBWU8V^l%=B z_;oaKSbBJhL;Nk8IIN%Y1BW>5AbOa;VCjJyI#7l#E{rA)OAm@T#5K{xVd=pHhqw)z zI4nK5;}G{p6NjaTSRCT1XyUN=h3!{^`4<$oAl!kb9=1MjG7j%L6oV*!mOL zzABLU$onFhk@ow5#9{R{9}aObG;vsa2DaZ3WIpn~NE;;eAaUsO7zTG7;{Isju=WXT zzaz+eQ_Y9O4Jj#9{p%*#1a# z^O5&kfy{@w=M$PaF!5h#;xPBHLK!ggp$64vg$hol}P4x4|6?Y9D{ht(k<_b@^`>@aayJo4ZW7eNz;7S{|) zIK;Kk#GzaUQz!#wFOVeW_Rzl4dy!XX(=J2g$onzdkko_3L49UW zIKcL2!PLXVXQHWx)z?dKh{N`6!OQ{0G01%6eOn-VVdDGI%z>@nIE6#}5}G({-Rxa7 zaoD)lQ#5hd`0WQA;y=*DVe4v`L4%Lb`WNJWm^e3@IIR6Ch9(YM2PlUo4(mr~qKU)W z35ICmu=y$2zF1f|!`3B+ps9zopW|_er=y9(#=~LzXkq5V$|cx7FPJ!N{&6arIWYIn zMH7d$hhh6)LFT~rT!7Na0VMSxaaetH8i)90G;vsY0^9!zG9P)L>`x^1AaR)auzgrC z^)PWBqtOqLVeWys{{fnM zX!c}ygG2lanmEk;jG)1NX#NHH3pTIKi6#!qN1`~yWzoc8E;Mo2xP^_bb9DbMMpF;- z?>Zdf+t9>e;R)M!4l*BkfBGFH^&oLretC{V{5_gDtbg$fhd2{-atmfJtek=EM+b=` z?_1YEQV$Y`)eFWr#I4c9VdVg9KRU>K*j_?V`bk7m4-$u+v66#ByaY`g*3YfSA>NKA z4r~8R#UVZyO&qrG6}E34-Tep9)Wg!}X&mC0(Zpfr4&B2c{tQhV=Ke1@#Q&g)!`u(s z$B*uQdFXz9m^iHb*TNxggeDHlN47Y`UD3p0?hnQx9*rgr8y`r+A)bdO4%??+gG0Op zO&qqrs~?B>bTn~Tc*4#(fQ1_l+z%7yLlcLErwk5p6*O_!Ju3z{#4XUo|3LTYxZx1@Llc*P?thEIA)bUL zUIA5KfJ3|jO&oTQOA8M19yD=SdVrl*0Six9|7a7MdRRE`MH7dG^HDT$e`xqzKof_B z+YK~v0jPf;;}Cz1CN2$C{~b*n7HEkF~8`4@JM2+UuwaqlT;>S61S=Hn1w zjwTLU|Fa2A9JW7p7n(Tiz75zpCFt(Ci>4kH{x5Nee?$`(fu=Xu`6V#(Vf)KOK#Lxr z{RmKfodHb`@;JoR(ZpfyH^CupgC-6upJC^tz}#a3wKpD3y$@784~KXenmEiouya<> z&7X;;9(Mo25;Sp`y=&0KVdlfmUxAqqJHO>TntE8ey^SUgGv_gyI4pc%=eVGo&kjAW z1tt#5FG4uPrO?D{py@#kO&peA^w7j%`Na~4xFeeQ5@>wE&YOX`6Ba(HXzDAV?kT__ zUV$bK3(r-gQgy~U$qN|_#`xOSo)ufLwqTkIP5%&jX1=2qKTJ4)8`Q!;%CsrVc~NfO&k_J z_tC^*=OesA6NjbSPiW$>^a;Cg8Wx@~aSmt)7A6i0f7p3TFmYHoXrrlzl@I1P#O=|< zVgB_(6NmXX2u&R3uUItkInZ(=6-^xGuR)<2Hl7L+hc4X(2{XXPt3cu~H-IEy`;S55&?QbFVFuW|H%J^h1q~L5 zwOc{r(5W-9IBXpRNE|w34i<;4e*uX@ht|O2u=9XH;?OQQSRB?K1c^hN(qM7eIuwvN zv`Pny!`2Ic#GzRkEDl>|1QLfv5m+2{-!VuWHkJvJfVHnd;-GbsATbbzmD3<`(E3J@ z7zo4e;Q@(*)+K_(Kp1vz8Au$oo)9Dk!U@oH0TM?(mm78;A4nYe{B2me28n~#4T8)7 z;R#6QAfKDP07)FQ4iKakgf}3GgVyhX#6b7}k~nC62uKWsFCdA7)(?QhK==WYIB4D< zBnHB;{0(v^XucjK2FB3x1|$xerv{5LFfhRSTOe^*UmqlgeBKW7dA|lo<{-~&J0OXJ z=AA)ifN%hkIBd=kB%XjI4w~l$iGeVz90j=td7c;6uLX&N=I=miL3jd^IiUF_kQfNV z?!^PC2hIC{#6TEUo`J+c^DiJV5I%rp4rqP>BnHB;`{_XHLF4TpF%W)$q#iWR2@(V0 z4@lym@kWps7()jhLFRz^9bhpe0wfOd7p&ZYl{qkR*gPGqtbmEb*3ZD^Rbb+OtbLdJwsM1Bt`p4>k`BQx6Mw*8@`zb3bx92~rPpKdj#gQxB`h zk;_kzdRRRL3qP28n17MWPmuZ!sDEMWiD2qs^%Qcs3Q`Yq59~g1n0lCdkjqu%`U|!W z3#1+-4m;-rxx9s?F;Fsu-8&3Y4-$v@AGsVxuJ2&|X^?u5IJEj^fTb6ZIC4D*x-S`I z4@?}Ej*-i46Bu z{v+43uznjzJxCnZ4nVFKkn3MqJcHDO#9`wk$n^zsy*vZSJs@#dcp}#$$n`bs-e-{c zAaU5d4|4s2T#xTSG9M%k%g@O54s!i|0!ckc9OfS6`Utt+hqdoO?g5Fz!XLSwLT(Sh z?l%Uh2Z_Vd3Ud90+)ns`9NF1gfxqd`$hgcxF2P6(tk6dpew@*Bf)Puxf;fY+IBDY&$_vC`y4-$v1 z6F{zKk=rw{aW9a1kT^^|th@nM9JWsZR_=oAMQ%sI?y-f5!^%hGdLOxcbppvfAaPjuBew^T z+g&%1)Puxf^M=Un1myM@>|R=sdqCna^O4&R$n7-PJ=h@iAaPiJgxx<25=U;oaUiuf zK;p3UCV(W4+^&P&GYc{YBo0%rfTSL|y$8F07Ni~|4pVP{q#n5)2)ln4q#h&=Q}2MJ z9=Uz!fhG=94?E``WDat>F#<_FNF3JgNk9@uZck>Qi9@HG848fZLG3Yc8N_8KTrH2Vf;>hjN8EE1#^$U>1k=v^)(8OW+YXg!vayxbhnmBBp?f{ZF za{Ctfd_RylY~COFd_UxN?+qk#K;p3U`~XQDxjhWKXABgNAaR&~kr5Ppf|9#DG#BnHBaNZ|>p z_d#MHERQ4(s^39kAZ(2!4ywmNVjvuhBo3;tL1G}Bi6joHmqB76jC}qisQv|sf$$V0 z^~m+_N+fYmeF{m`41{6#dV#_XR6l~mKo~ilfa*bz7zqDEG6z)Ofy6*q z1e%aQ=78!okQfMSA&Dc`Yp{EJKJgAy5Wb5f4yrFeVj%npNgPx!fW$zU9h$g7?gW+pATbb@M-m5>^B^%0HboK# zmFFNa5Jo=d5L9l1#6UO!Nj<2128n@iDUvvH`P_vh4k~X!YC(7rk~ngCi+tW7a=H2q zNj-A;$qgN_1Nj%ZoK!#(M=lR7k;IY9y+kB&P&o#2BM3JmiG#{3kQfNhL=p#;OCT{2 zUWX(ODt|y?APlQFK<8dVy#f+ufSr>H5=Sn7VEs^#ICA*|>pz0Tk;@-gJp&R)E`MPC zM36Xg`2*``fW(o@A6R<_B#vDE!1{3@apdv`*3SlsBbPt0{tieSx%^oIEpI{M$mI{L z9|00aE`MO>OM}Fb%O6-fA0&=k{_sG{Ly$Of`2%a8gT#@`AK3gVNF2HRfwika;>hJs z43hcChI>to;cRM=pP^Ah`#*{DHL_ zLF$pqA6R=2B#vDE#6ZhQkT`Pr18e7i#F5LN79{n^9n;>hKX4w5)>`2#EGLFOQrKQ&0|k;|V6 zNaD!l&k`hY(78W4)AeTQPNaD!l59~Z!kb30u2VB@tK!EZv zDCLFzzm1Tg<87C==Oug zhq2k8LZtoG&@e%_pQ97vLYO~6{s+~|==Ov53t_V#HqTAS|DgS;*!-`6#ePuzk8b}; z9PtmUpJ48X_y&^JU~CW#S_g*BehV!2gZzSS|2`b{!{)bPvIKn>w zYClXrDEvX~8Fc$E;jsSRVX& z;j*8P5t1g+^It?4L2cWR;A51Mzu zX8#K!?f;A;{$Tft5lX+DOxW`utbGeAGhuNLqM^%O9QtAHWkUHU z42OObXgi#c{Y5zRdqDLQvcDIH{t&2s*t`Zfu(0HR&^!w$OwrS?0W|%<%3o0W1@&Li z(+{X$iY@(2fZ7imH^628awhEMcLf&vL2Y$(`%mKV{|sn>PAL5y!D0UasQt+K7t|j| zw;wb=gU$adp!S2p7Up*ljn2P~!~Pps><9Jx(e3|(!~bib_7n2|cO3SAz+yjWd;#5l z5oYZ9cMsHlP?-nvHw>fuA9OzxNDMvwaX>eaAcsF_90T2c&^!{h@Q2+a0aK65etR75 ze*twrA^lM}^nV~yKj{8fZ0`R-r2cLk_A@{a?jz*>B{=kRK=p&_Y*^TVXi!{%Xc*p% zL%#-8Kd8+EQwyTe^&i8b-vz24Hhu}x3&QC74>DsfKNO(p2f6%mLaI+;>FO2^`vsr@ zhi)G_|0)jqGobdv>;aXZpuNygV;NxL?{U~K0#%4^A3FaP4*MIh*zbnL|4b~{^REQd zenRz^AP)UHQ2nrZLQvd+FuMCe^D5ZVe*;uMY~B#07lhIEtFmB^{~1vKBgelN7XO3# z8QAQ90kxk{`Du;A{s&m>2kmW#8VisA7#!jE1F8_+zv%pM9QJGUf)ekWZ zQdYs(Ao?B-`)@EqTOHltPnrJ#;G8tGBEf;2QEyY_p`vnA*Mp~fW&xl=x>B>QULY&K>p${2k3Hc1_lP$JT^!Sgwfp(;-kAAq|O0)Fo6ZM0szgK zfP~QP2SpDy`zxRes6)^sLH2>nhvB5m{P^6|T)ljK1u!rGlMn*JhLC0^CSXAmLjw~F zFe`zp-qpvA2{geCHH?vAJ9sP$%7s%mCc&A|eI^bJW(>v*|D72wey(O%`I(tv6$1mq zlmklh)^Ihn4@G873ZJj=#pl z&=7Oe=0FDY*A2f*y+IFVHVHA z@bfb>AZik=$4@3NHe}=ITq~D%{sqo?7{~=5o z3?Tnq`u6|7cmtEe&*p#sw=}Xj{7htE`1$ewe{pA4hAkxw3_n5kzJ;oJ{r|tXJqttO z!{7fyn%NwFDzh+bVNh_`*~I1WlY!a8tdYq9tiFkf;in=4)9FM8#_mQohM#w#`sEqq zUq29^KkMfI|Kg9u8Gb$zX7~w;zemCleUHT*ekRE=>`azo_<7;~e{m)mh#SxT|1bW4 znRyi>LqiZq{d^{fyN>_=FAj3w(f|L&LE#Dt)34EtE5BDWt^CT&u$-X`UuK3?5BVKHX<^l8P&w1gFp+@)e4;XF8WmjTz`_8O=f5yB ztTL`~n4HM;!`zX9!Q=`P1892+Xi9Ags0=#5%&>)7!r`Zqg2T=d7KWcr4B|$`3=BVu zIT(H_DKPA`*I>ZN-w(whZh0u~@Do%nzWV=P9NABgcp-jL;e_NNP}u+~OF-cOOS2$8 zNZ%7?hE*WFpfCW%VJm~f&;1O{uN@c|LO|tbvjjN52Bok#{8V9J_?gJy@Y9ij;U`G$ zF*D;TCWeMfiIBW10xDPGVtfrj|Ck}}{KxF@6ILF>)Hu~ROm@VhMybYOGBZQNB}W15 z<}gCrEQnfzGFDbzrhaizvVL+=WkE^4eo`hFgR4F85{2B<-29?Sg{0E7wA3O71_pON zNSlCx0Wx}sUT4Bx!^8m|Wdv8TOjkh5S(qT>7ECPQ;R7Z{@F)sco>>L7+=7V_T!Axz znq3SGOiW;9EG(> zmcz#x7$74s0j&JY;f&CE3|0YV@ct#R8(0OILzx&DI3OG$=7r1*43JR=R$*q)^dF=P z&ML|b8lzBvC=&zAKrXXn6=w#mVuaja$tuAt%)-E60Z}Fi<~Tq&Qp`py3=AF&oKBwp z3@k^I7~xKnWtIfF02H3Aa?BQ>XoqM~U=Cr1J57;!Eoh@3L`DVd1E|w9!5kTgj24&! zb*DC%qr#O}n#;hd2j)N>tH}luCT6$~Oqf9}VyF)w z91lngu^d-nVqgF_>m}ISK|u%}BWLpfX<&e`JwYz!;LS~}U|{nCi3>2WazryRFz|sQ zi=Ty~i4nBW9Ne~J1d~i)k{L|0fJw+rDr{gjJDB7Elbm3Z3ruo@NggoC3nux%BtMvh z+_@qMW($EyVK6BICPl%d7?>0XlaRYuB*APcFewctWx%8?n3MyP@?cT{Oe!+4a+onQ zFbFbnfFckQNbD(~{x>-7vOWdHB`XJLq*4g9lnoTh!e9cF7==M0C=6zSB!xi)11kq8 z%?g1;LCF%L8m^Fml>@Xq9V`t>s1RvTkb})(VC7iO%)kJa1|?mHG)OlCD+g%259|t1 z(uK%?Yyn#<3`z_PtQ?><-(cOK6b)9xz{&wy$OYC2O3YwEuw}xYAWyP#NU|_6uyWY3 zFfj0euKWWJTQL@cjAqPWVPFtV%FJhAEC%^nEQx`!1SH15$^lCL5T)&4rCZ=i+d)c2 z^Giz@7~4TU1Fvml1gjD&N-bev>;P#1nbiq43u4M5kRT&BE6l=0U{f;l7#J6U{4biB zm&3paRs=C*F-SeQE5o=1!~~hQ6l9)cYEcmb<4y+9lr;lmB1jIDOFU zOR~VKphFl4X$%=9kb00>xK$<~s~Di}egaNRAbAD`2KWxUIXP@FcRzu-TRJ&6g@N%2 z%%9Sra)S}BT^dwaFg^h%4+aJX8E^zVg&7WB=E?XBWGcuiP!PPp2m+Aj;d2qLybKJg zjDd^>pfm%DUAa7H0DugDEsbTIlg!S*AYTWSlJA5ura&1=^I?otPzJoW4bGVi3=Hxh z6EHNw&4dRiOg-F41(1<&2Pc6Y9Kh5HavyX=ih-e+mw~~Y9pn|T3|zd0mw_P^EFQ$v z#-Pd=z|_vb0FR-CpcsOrtAnuc1{n*=HXxdD4ybg8q^pDQ_(>{FV_-Z83M-HraLQnW zYnRDnU_1mfOC}4MQ^3G@7^VvpGe=-C19vUR7k|O74Pa_!fSuF9zyOL8RmMQ3R4Dv^yF(3~b&;m)x--L=NJ%KUa!x+Dy3{7Tm`vIh! zfdL+Ouux}3HdhN|E@K+pRCvt6RBMB*saF8mp#U-;#cY@&h6CV;3}NC}rOFu02`ak4 zma8%bF>#cDlcXwR03&EYElT*vae`x+`7>hx16<-6F9U-sSR#pdD2ucmAj6obN3^4gXrZxsx7TpVrHjq0&H6@50CqY9cx5!B79+T+0WyYx z0a9awBT^3}!sraM5yXQXkIgt|Hy6l7pj7A#D+i==Qu7!XonbzJ6bmje?V!}=3QKK} zGQtgH2*_A?W&rsU&JpE9$|fLxVMd!LX0+uaM;jj~2to7Y42(LAFo%I`gw4Y<&XMJ2 zU@!oe+B%FNHb@pUvklUr0dCeXFn~wH8Fd*gxfvK3gN&0H81)$KLF`}#Rt{xu1_nM* z{mjat#|? zDLgv0_&`Z8nE5kfpekb!qXEd*#_))RSY(UhWmxDj&XMJTdD#|jkpZ}FwPgg!ft&?X z&49%sCXQmbO{^TCIEC2fh{L|caQhq)_9ZbeI)d8*Alo3`MCiw1JLhM{AVjX=D1y5J zV!ta6`$3nLLZa9eZa>6Egbs8YK_ME%`I#{g$-XAIec)qN8Pym;4ID(V0a_5iz~%=E z5Hpak*aAT{n=pva02&Ek0Ob@=-2rY{LE1~pKnlUCSG$_Wq_sQeHHb+H)0hOk9} zb?`ATfL$#N=7D86O+jo>mISv@A<9_;LFp8fLWIFZh!w~)tX-hw4R$uf4lozwI0gnr zK}J_1_mY-25xRUZe~6P24*n^W_r1_lP#S7s;<+$NGxj{O4 zpgOrBI(earp{V8tSOj1Vt? z#1+7nh_XVQ0QP~H2@*$~728X<8d7#NJ9K?stSU|=wTh5?jo3U?gX2{w`p3}$efxz#0Yz_DTu5dt~V1S(_! z5dx)2kT67@C0vjdrqv2A1h)W`p-?a*185WkO$a<}gDl3v@R>1SKC%di&B#EcLXcu) zjKxwWhGtNKfUJsv6=bV2hA6(z!os2ii;WPq z2$GQjG;@2<=$a3t7#TA$7+@*8v6KR^ zX#==stR)#S8sR2D8CVU%uuhVpg<%RyQGF3;7!t(fP*BmC2;Z;BAX6kW623v!UyCI%u0d;g;;7L&=O6M3*Z>L zC2(mdgPDQzKSmP9DhSm8r-&+_Fv=J#hX=7i7=1JrydVoC0mZNxT_~3UHZcn0 z!=@);eE2*WRDcj4s%*qjpP3mLm>Bv&#{n?@=Hq2xWCZUF0Bz65Tz|=+pOK%Ns$YM6lbKgqp$k)KqGzdJP?VZfnwe9g50R>{FpD=c(a*_D(oauL#;#8vq%SisIj1xw zl~gwsf4ISdT2?H9?Q zjT6NsDJiLGdKsWIp^HmWGV@CGG8mW{7?Ki;Q}r@H$1Ejf=0h2!AayJZ3?&&wsfj5N z!PKH62&1^9C^Ih|qM3mKbi@H9IWj+BVANAqR8y8!l~FWeF7;yOR$yWQ-4TMM<`V;> zy^5kd0}~4)n*sw93zHt3vA%)60dtWJGoJzzGn(?pjEri`RSJ44O3cPh%)ScDx(dv} zddzAi%pwZRZeGlSUd&kv%;E}4ib~9!HcHHq3e2W@ip>5B1_p}qip*sS%-jm{%$#1f z%se)V%<&4$N(%Cdip<;!%s~pw`U=c(3bxEen67MNWb`tSQ&Gy&k5rV`S7he4VXjP5 zR8%x#E>C0Tv|(aHbLIg?MjJy}Rb@FPI~PTeuRI|hWMk&i^VU~pF7^VsMPG?oSb;g$ zi-`$M`$9%WFH<=sRYgVL$^Oh4Y0MG|%=u|doM_7SFf!_aOlM^CV$%m%pv%OFreq}( zBS?agO##D_Lkx^IAg3v_DX=LSgH*98u<5I)%BaXHDyb@iq?pqqe3`{cn6nj_MHQF} zY%t7N!^Fs_q%ZFxqb#RyfMNL#CPqd@j40g0#Hg>Uh$(&mhxidDMn!9=`lR&Kl46Fu z(%ks+qRf(1hTPQL__U(bREFY`BGB@fw4B8BVus}Wypq(sl41teprCjkPp9|@Qv*we z(!Ao#^t{v*1<>l}Bv3kLNGeT>2N_XZ!r&C@7Vqoo8=qd3Uml;FlbV>vkY8F74>Hur z(?32hwVWX}KP|p2F{d<@Avq~Nu_&D(IWZ?EDKR-aKDneQhXJIlIJE?9AV_IZYDsBP z9)Wxw?BW9}RrCvr^0QKtOY}k6Hz^;Kr;3Yn^x-VHZvtF>8Ip@q6H8LTc7i+r_i<@v zUWu_$dUOL#k;_}Rre*S*0 z3~=${d`OTLl$OM&78T_~LIq^6lOM>P;EW5iAviJ^?heObKSPG%jQpY!aCrbz;_A$h z1j_U9(8x*6OE1X)`!XGxxxpa}(-7e89Bd9Z6~wau6&yJX@$u+k?e82Mz>t@in+jL% z;=usQ>^OIeWaed-fJ3XKvLF=_O(>ZVlpZKUQj1dal2Z}oW>Byr14IGb$)KV%%oxrEZL)wBgK)u6PjJvf z(jY9LJiJ{HWrI_w8w0d720IQC5pV}XlVNf}B|}PnX;KcPpa-WiQ0jy_3FP~{)N)Xg zj0Y7bAU>$%E{caF4@hMIEz7_z0w-9QgIt|mJm5}t4GUmkaCdgLQqXYs3)RG3+AuJ{ zn(T~KK@2Pva*WbE^5A8>5|CC8XtN~)gCn1S<7B3Jj6PiVE<5ruIC48*zURmXRtMYr z3+{?I@(DPB)CI!SIl*@n$Sg;0&^8wa_?esFt_w`v zRF-MX)0yTm#(-2`yXtuFI@lHNT$isnUcKgc9b$kh5|072=^&9ajK5 zGXdO{a^zERoXj$h*#jJG;IM|>F$3#bfz*M{Q3E*@+`WRia~?|&*p*;M`a&!M+X9I* z*qtu0E*K~t&pj=yD8t#g(}w ziAfB4#U(`$Is?WkNv$Yh&;u7JdP&8_40=VWIf;58Q9V#X2i3o5Lg4xtO$?kd(8R#S z0Gb%Men1n0WKuLia6Um21LZ78(T^sGoc++GK<Xr)6LT2!it@pN#U(|CdKS74vz6nbdHE%&dhULq zy5P13)a=xZcyQwalpgV6P|{^#_y|3D0#zk5sDp5o&qo%LV(U&WkOPqJoLiM0N$DiQ3xd==3t70&h2DEQV%N!LE4xxPDq6A zjl&`?4;~Ui3C3~P(cO; z2GIFTOi1cMtgC+|Yk<^3uATvOinE`aFCy0f>5OXlaK`NLTz*|8; zOccz_fOgOhRF;_mwC)U#RRLLu0kjbsGxalo7Ybn$2c3I@O&oOgH8ye3 zrhRPUGeFyjQCtGyti~Y@+N+DroMSlDU%?@Mn}LBr2r2){;Zd=7M@CAW2Zm1k&k%*$f_UftiIgs08YLAUdni zVJol^pneRvpNZV40?B|~<>?QSkB7IYKoYQ~5~w)?)(Q4MvJ9vZ1>%F;2l6|p<%G;f zYA(TRCTT`Un;sT}u>J~29CRinOdNJMCP*An%Q7&)?x+NbgX$`ndRR#Z5(gb#027C` z6F}myGzOA`-8BjlN4}%u2uPBFfdM3L2W5jOSV{tkBbyI8a~~uR5=X90Vd)Aaj;tPZ zZXHa$J%|Ct$mSrs6Lcm#ND1f&C*(U)K!TCKAbXL;k;5OnB?)9W17hnW$X-yJ04fY$FA5Szb`Pk0 z1gQbpi|jAx5l{>udy&PVM+1W63)#OgcY@48b|)+?fy_Y`hm~WXa6rC01v%U(5r^3e znn(h<9~NG)@(m;ovkT;ZSjz(>j-0Mw`at5~ee@v33=HrZ6eJEh#|tV9ulYdYkTwKF z2D~o}w2qXK0d_nzSOOM?AoVaegCt-rX(mPnlv)-RZXj{cnZ92^9R~&m2ACUQ;+LQi z0=w@BCJw5XK<2~lH3Eqv*S@fp1V|jblM|$vfdSqE0EvU_&4ii{(+d;71$7TBFT=$D zLe<0W&w+`<@*XUo!o<%&cQ?aUR=~tpL(PeUx(g<*3snzWas(6ihpLC=cbNDMsCw8c z8JM^=R2;Nt8)OAc+!4Cp8G5uL158{I>fhNQ#h^Y4BLf2{e8QmW7omw4L)C-st^i5F z%=rR!C-mq;xcQJnSr{1hf)pc}{}+1j8?3(oGsh3={;O!}VP}FrLK8m(wf8-mIOuF* zkPv7p9z?^;_XKem7#KLA{(y=1Lj5a-CJt53po}KI6Uv9(nG7=rX09z%9wzPv^_Lf# zI4nMr(ZnA@-2)qMf|*kcHK!I${Zy!U7n(TqDjbICXyTx~@*uy#?*4+A54(eSBbs_x zIkFE;9CGdn0|V$RdysiBb7G+G`GltaG}K@J(ZpeQ;lb_-gP8*>N2H+X1tx9`l~6?! zhut$}h$dbHO((W!;>u9>WTA=whKj@P5QEuk1~sP)O}#Qyyar7?9U2a>yCq@f9EYk0 zodJ&=Zh=sL^`V(_0BX(@H1SNDviwBrFE1~Xz-FX2M zPl2lEfy%?g^`PRQvsXdx2en(EN4ILsWFzoL=E zk=sROP;r>~*P!M!K*d4kfYihK1F&)(ral@Pp0jYMUk??BshT{ssFM}p-2-UBRCjJ;I zZh#~Xa_2*+y;ex#AonbW^4*~{%-)+&z7Ld!`3p8z6p1G80yV!JNgTOdJqaofGoK%P znjHhfY&7w;Q1K;b;@+T0W?*1gizYrDD!vU(To-iMEdv9?Zm2lO{UG;%4qOB!p({{v zn0v~g>hGe7uZN01Llb`n6@LvCM>ijGq8K<2>W4Q5UnG!yJXQV%kJK2-cTnz$0QqjLpKoE3Be6axdpLo{()sQ5FeILu$L zcGo{Nao9FmS!j9zsYmV)LJlKD#8(^Cd`GByn7>{?#l6tP3qXmBfq@|yO2Q%z^dy{vnBj)H?}-T*JV?3@x8P=77}aLWCK- z(ZnmE^>P?g9ONEY*#pv20TlDm{dXgVck}hYd!4L=(4!7K-1X;xKby`9cL+PJ_$=*$eC6 z>O;jr>S1XF6b^wy8?@d}MiYMl z6)!;(mxa2g6;1p#G+ix16E}z2dk{@r6q+xdqlrg>JOvsLh1QcWf5FBj#n8lI{RM3_ z@ySs4LyZG1m_`|2g;qy!acDKj0L@Mq;-EXBL1ux%ALLcoxGgMgpo_z1Kw;vr@m$!r zCb~GR-vASbjeEkzUC_m0_j1F;Ve>1n@PLWK$^lqB0c(w}I5d;s~Vl9*BUd2Z_V-%S#;M zAJN1?cT$6dVB?lB^I_sF&~yqDhlM}%$`f$-fb4~di=(NBwYODqi0h(>gYHcMxyJ&B zIBb3m<{nu62x zssQ9I2GAX#AO=hvmhO)unFCS}6F-k84oeTPc>|a^F!4ud>S5vY7Kb=&J_KeCY}_BV zR0>_313I1r6Nk+Qh~W^ILlcMPA59$MuyItF`LO;b=b9mF9Hx?>Y04|C@a5Ql+*;R>31m^f_w6Q&+kjyy+G4-9ca3T-E9R^4-<#Y+rY$4pz4j$%z=qp zqlv@T@4Dd-_d^p8ftnwQLp%{p9JX!`)=z@D6BGs@+=8Yamf!nvh)+iohvna;IKI_Iv6HPr#9CoK1%$>0G02|kYiG$1p z;Sw}+VCkVAhj=@hI4nKD#=~Le!^G#JslNfTl!1X^1rG5IXyUN=+J{5@7@9aNUM}Jg zhn@Tlb0;jmo}#ITiN8e?hqW_);1Gv3j$!7*;)M^?*oC&cK=n0D9C@4{Bo2!&*myI{ z9B8mHSfZH&i!a#tKTJJL+y_lPEMB5;h$o?m!|qtk#UWmbCJu|QW*p+(XyUN=nubFh zHh%^47c5>@p{a+7Z$cA?#n)aO;z!ZMVc`!O*N52)3x8Pu3?>c>=kI9dz{LNfiNnI5 z3)=sKnFA9SLKBCzPvmfjtD%X*%1J{U;+AOQu=ay14sl;Jaaj8y0*814nmDXK06Q}r z=3kh237UFX{a%klyd6y(7GJP=6`1+3{?%$U^|0`P&0oOO!`651LsJiHcfsaoVCrH0 zriW_1b!MhG#BI^U zVeM^i9OA)f;v2xOWMGKHA)baN4ohz(IK*qv#9{5vb{yic`4m{V!Rme3{0K}O>P&{M zXy(Ae^8gO<6KLYFe*R?~;Cw6Q1iK<^B}PBfr$&DiNnGZHh&9K51S(~MN{7ZHQxbE92PzvXyP#U2cwC@+#ii5 z4s$1Lei-H+SUA_AsfXp4P8{N}`6-w=FneM1%rJ47`Pt%sh3LwpvRIIMnOibH%Y znm8=|z;1tm`3oj~7)?Da{9*I+F!i7?0O4n7>S5vV5r_CsG;vsc%>wESK+Abhc*4Ya z(8OWkBZWg;2~8Xpzq&ZYP0_?*;oyuz95zn}3kO*Ez}6$c#6e*L!g*-sz`~~zhj=5J zILv(5x(1l}u=0F4ntIrL0O&p&ko_?AF!9}J>Y-O_GaSPqehy6>dX+T8O*C=Xd^&6% z5N2-;$Po+-3~$iX!{YG^nmDXn{f|SO9clgxlulsf3~YS|%wE`Bmlm3O*gSd+b3ZJ6)}X0}h0k^z;``CWVd3)#hxjWraaekT zt&4%V2bSJ=q4RDqahUrh(ZpfyN1lH~jxX5y8kjk-{srjL9#E2jiNngz037B=pozoE zL)g3|%p6$0&PG!Y^Dk^Y4oE$8su<)9hCU?qAaU4TUo&xtgRTeyX@r>ro8MZGrXD7~ z9ZeioULC?AehN(-wk`{{ZU|;C$PFO;0Zl!uo%0)qIOr-MkUp3>u<+*tRqD|4859mM zaoD^nOg*f>pn|3zCa!}f4(qp?;}Ew;6NiPHFAnigG;vt?z}8Q}+zIj{2v?w~hsAF* z4)Ja@aag%G4TtzVG;vrstid6^1x*~5kM`pbKaM623!kev#P6bs!}7%o9O56)#9`wh zzj25&Lnp*x;S39Z*g7?sI4BK)!e0|jJuE!U(8OWkW``yYGat6z4Q4)U{xKO%Ja;F-SdXPA*9yi1xZiyxiTYut$L)-^V9M&F-!Xci7CJwvDBNvBwDVjJe z|2E(d??4lW<&p-I}4PhppFj#3Am9CJys&2%0!7USiP1VeP|o z9OC(C;xPBa*0;jk59>!vLQ@ZOKWu#~Og$_fx1yGLw0ILyDd z(Zpfyhpkryxd(Y&>pvv*AaQ81z`zMz&<0Zv6Bk4ihsC1|4sjJUaacbBwjLH{KBz1K zVJ|fGuy78=As&k+4l^IN9u{OitZoOH-;AUlBo3`E8TxRDPeT)jg#&E;EV}u7(9}b_ zR}9B-h@VFjhq>n#4)I55;xPBX*4u*IgS;-615~L)%X5%8s7wcigD?(pX*6-zI5TYB zF1q=SXzF3^@xdV;f+h}gPdpCsbTo08dtmE)LGFQxf&A5rq#h&=Gk*pS@daq&AUz;+ zVC#j^%|C{w9_HVRIK*$FiNoCU1c&$=G;x@FVC#|5-6I5D7Yq}JnJiNo9j zot6aep90^+4e~6~SvMeeLZ`C9GN7^o!~lsyryxLFoaZyZ*0F-rL%T{~^|1N@Bo3`w z!Q!xb3?vRs0$_1iy$TYC`4uDq>z9DUk@thZ#)m-Sp!OI@EeONbC4t025P&xsLA!Cp@a(KeR5GD?*2VwCK z5{Ib)nFFgoVdAj$2FURO9Wn$dM>$UeBo3Q*hP7uw<{-xlY~Bne4)YIkJR-*zY&|JR zJxCljj)WY)$ngkU=L=E~5{LC`kmDUWeqsItsRxO}+>M+bkmDUTj|Wl@5{K10$ms+* zJ;3^}AoU<|SUUkZ{UE0k*nA5}JxCl@&myNQSX_W20M^a|sRxO};uSf)A*U<9S~-F{HLfz5u{dU0622D1-j7mN*}LD%4d#L(@Z0JR@h zuYmjyvKxd!`e6PCB_QUEwko};kVRZXJ z^%pk#O`r)1R`0^>1K9;*gJ{sXj36;|`xT%SII{mibtby~pm@e+{|Bi3uzCn&7YKvw z0?{zs5557HfdSqA0I2=2`WEDWP&tQgKj>U1Z1(SfS_E@H%s!|vjLQHT7XXQ&+y4M+ zKTJQ!eo!5aZa?UpC~Wq>02#`_06!NHW+7A<#$^E2>mV_7`vsr}KOx%>8j3)-{}QzP z0p$(2p$rTRu=A~8?G~6E$SxQgM4!bG{ti(4k;5NUZ=l=%7Ki-{pp6AsI|yVK2&3Eo z0*Cz3!(#-&q47IVx!v+ z+LwmS{x?wjk?Sy!i6FZ`Gz=?%E@5K8O#c#C><87u==Ov53t+Qf0Gc2O*>8=*egiD_ zgX(*9`$7BWu-R`yr2Szy?DxQ8Kd4=SZa?T;F_8Vx;szG146yacu>J;20;V6vufSn{ z0@Qw3`x+Ggp!N$)KPWAL%$NYWG>d_O0r~7ckoXFy|6%DDBnHAT{UA4k_@MKoU~CW{ zhHpUidxHu+m>@K-A#oYz<8Z%%H$;^Iw0{qBKWNP*%zl{rLFcDovtJpi&j>AG(bXP? z`X6E&f((UPZ~|%$Oa@&)X#YAWPoU?&0BFVc0D33^$o-&pAG-T5AzEK!vGlWLB zA9TJLHv0{r6U!M;4IukLb7AQAKgVT1bRy{k#9BBBH4e@P?YG2c|BPOU64-fYAp1e5 zMWfsQ3y1x@(1Zuu*90+*0pnzQ(Ed$q_FF&;e%QVgko};sY;^nCm>_0Ct%F&^zyi|1 zz`zg-O~)_^nEzq4AP)VB(8F&*aSqc9qG9@AH0Yc?7#k!H!|hQ0Fg}b%SE~=TAKF}l zDP!n>>Nh}>fcYP$P>YEHd}=>>`t1N6Y|X&HfE<3HwmM8dG<$&05k<>lV54_HD^5!^ z`_bJG;-e`6>;C~g5R?PDZrl`fW;6o>{G@-F{h;Ni*z9L;0~^B-53&Hl1e0i7&?R7L zsYQDE`U((W0HMGngbg9hOiaLHCT13fW?)tVSG}u`8xyFb4K^8+j<#c@Pmt7uRUi_A zA>r)6V8Ecuz#!xB(}95jG$k*>z|e5%0CW7c|IG{+KL<0c{Kw7k(}9U$i-?57PZ1`D zEuWbgRyD9W{A6HYn9{%pp%bJabiEYA&w43_oeB&MLG?-uJ3j|Ito+CA@biB&!$gpo z3=9oHAU;SOCI+(SYc=D_ugnaq7+4!Ff$RjC4YKC}6Ua?Xm+FNWe%9A9tgNqN1T|Bq zB(O33{KCwz>Ht(8q&|U<;U@zV!xoU;o23|jE|6l_$;i+Yl*q)eGm(v9=hte-mB{vj z+ydf*#9?lEz$^j^p(ziTg~2p7HUF6zFWPG`6n>3nTnTdP_hhD(|D+jyg53XwnNjN- zGt;W?%*?BVB^-V(5Ml`NWo8JmH(@ADU||Tczrt9!fQuo-UWcJjft4X-ftX@{R+cSk#}{GRNz@;@^pIBe}%7z!2G z7((oM7z!Q#{trn|Y5<4-SExFWKA2jNoWlSATS4|Yurh2xHV>wb0d&kWC|$5HY)Mpd z*lEuopY6lQ5R$^cAd;ZuurpE3VJ8EFh1Z4nIL*wuYS{ z1Z1W>gUD-;xeW~9>yf6E@G<->WrNtGz|e3BWEUm9jbPEQgw@%ghjx$mFmy zo`Es@024!qLyf~^kl(&BGpu^R!mwpOn?oTlBST06o5N0d2GQ&V3=AO)>L6-Baq7U# zu;o6J`0E8Mpzwmkbr~DO&jdb)pA}3DJ3(OqGQ;QBf3Vv@?!NZ_zj%UB!%l}!|F?Ah z|1S;-Q;?ez85@E?VFgP!J^%lUe`gk3_3;0HagZGe3?Mti!0CyZfnkCIQ$r9VLqm`f zM?+9D1H(iW;|9oFUzr)f>06PF zVM{!NeD+&bhL8{z2GEhmQ&NN+c8W1H1kGoV&(39M2uT)m*a?c`BsPbii8T(BbvYP9 z95NCuma;KST)@O&>CC{`4dTmdFcdbhGlYQLrO3h{2r_3r6Jz#UW`>aY42;=pnHfS- zSR5>uh%i{B$T(Qc*I+0-`0sxRNNs|U!_I3=jND0Lpft(oogl=p(~*IZJ5h{b=Y9qT z%LmM2TDamBp2xA|6Oh}#GPAB~VPN!5W?INmL1{pUVdoQO1}#t;-1YyzILME$|Nj?PWM~Mw z2+|A9>-(7?Zk_S_zsY?j`RoISW=P$H#set)VQ~S9hab!gtG+QauKL2vqy;K#CbKha zVU%(B>BtT$Ga06cGc*Jx3OVfLVqg#fxr;#_QbvQ^^_7`H>mf6P)>>%30EL%5gGlxR zX0cVK7p6!lGBKDWiZ$$9ROc``na$znH72I+?@XfHu>6|{j#JTWP`FQF67^PO5Cw-d z1A{0y>={@fc>@%GkC+*?c>nwlVP#+tna{+K{hf({dkPbS_X8$|5RjW5GK;Nx#4G}8 zl7YkQGc$wMwL=QsYySNYdB7|IPO}e~#kDpwFqr&jlFxo{Xfmj&0;;EiaK$M|J*XT* zmWP#n$YzTE`wun~r1rs~sZ!X~gYp2ruosnZ`1zFs67~x@5MjTV&0*(4HHV#xlpJ;{ zFfef!Gcb71XA;itSeS7C`wtEyP`Lt% zH(1!@poL8_ENp}(qxb>jFPOjUndGzAGBJcK=5zR&ROc`mWJkgQg>F#XPGJ%T^>U_s zXAAMM?}iIT#p3KzxumBLgG%LN$h+P7Dm*AUP%`1{08Zi3b$BL2-%f zPLLa~gUWMIosXl=0{M3zB>iiF+=?yyLFR+p+EnK-8RTA&9SfBlc0OPd;Re+^Ta*}f z9tPzRPT|WjN>E)7uG=72)`9EJ|IQ2- zm1-O&Gcz;`;Xb-=YMBN+XbdZ8IKyog~E_F7NsP%TNz8!K+VKtu+d3i z4g-S-AEfQfzyR6hi{7>bD+Uov9N^Iua66Uh3h25CCP=%Mi3QxeWnu*PGME^_t!pMG zuxchIupA2uE9gQ*uwG^j(A5nPrUPi?7HTleG>D~9gB%FYa(E*H1LRE6 z09JlxM@DE%npJ=qd;&gLEvq0iGZO;?2ZSTU?9a@=AOPVAGv_fgFi1c+qRbu43=9eo zju==*1Hut!Uc=15U;yDrFdt-QV1OKq$tnrvI6!2im>)2Mt}o;ST_DMF#D@{?G+BrX zK!L_8$NUWBRfrY^X3$9}P^T#}PX|rqLu6FIK7cw+6U>o;$Y_B%P3vzxC%;&7+4LMK_jYA9~d(mAbeoL4C*67eE{KjFtBof5+64xz=FbgCp03sMzIY8-- zA0!G+T42?1g$%45X3Pu>U};cdgBS*mXpjyDR*q1ZG${E&q(QnFSUE~SG9WuZ$qym} z(gU_u02HANtQ>tHH6T$?ssyWHVC4W!i-MgGN|0bdh@-!Q`lPHJ$C()zSUKJ>Gca&3 zgI$`T!RQjl0=m2iG@9iHG7xgz5~Dwe%>o+aW?&2ixf`;Ek}(J*4p}$J7z|>IK-7eS z)JQB#37C!o$FT zo5R4$0SZxYm!2^S*)sTQf;q};3=9yfy6As;tEN>2&j-^lw$;^X$A%cd2oQsGr|Hv z9vrm_aQoy73>g>|89^xxWTkw85em16fl&!=mwaXchzoKQSZ!ufF$1GALOLIn4;oEo zV4MN3^xz>3DrD5yA>q=B6!O}<3=Cdi@nEKQP*P)RV-RNy1ce=3uRkvXLlRg`08=Xi zgCfWwAPmwAR|K*EbbbOTkXw-wRw6HwZ6K4@AWT9@eQ=XNiQzg#5l06Dhk^=+f*NYf ze}&4nV#tD`nU@3N&2}V`W#TkP+!38SFYvPPSOdO8l zjDd^>;*0@|j-V0;6#bB-vj!giAhod73ygD2I3byS4I=4)uJ>YG1CML)ssu)aen?VT zi%2Tqq_qxizI-MFBZ3DSYe(kG7celchno!#Ku}bGw%~(2+l~|!%XpD|4vGq>0%(cS z3-TbyLm*rOO+t)wK%2KAnYdely#S2P6tV^fCmF;53*zu1LGxlAY|q-FkS-Jbqov)l9_oq42*ES zpfI=$GYAp}2rf7bu3!y=lL#lmy$#Ai&%xrjJoX8cfC)jNo=A$SR}>Z^k*`p?k(x zC~g9$KTyR#$Daq}rp$Z>##eAxL9!e|2i)7=!FfLzl*5BKKQjhGN*a*oIZENKf!OyB zhkc-pzarq;_8ppi2pt&q8HzLFwhy#)hk@}CBdB?UD2_mrL=3F2K}`)%Nrv7g0*N!Q zD}oA6NW%)Oo?Q-9A%O}50dTB=Rk7XzmD*qfAj>sbyFlWgYycL7w6s7%5R*V-5e%#* zjGzPqRshvi0ZQDU(i1Ew0BT}`wL)$m}3;<$xUmu>m}P1oj-KDacQtC z)nH)e12y^iK*@|>lu=#MQy65f04rFrAlx=?kf;#UHg1S*!g`EgH?x9t2{HFnCK+Iz#suNksHHA zNvMh3p28p#rJyE4xze3Yj0}Q|Ame1XAR)pn$jHDT3$e)%>?b)Ghk-#Js+|>LngUc0 zD@czb#4M=mlvp9gK~*Z7pm0^7vQTHJ>M__$VhIuk1~olKtTLd$Qb#gVf`LH;t`r;! zHsAo&L>7byX~Bh9)g>W9+7Ka7;F&;$bRa^YGyxK}ft`#EE!V&lBLn(+0tOa_&x`@{ z!LoP=M(`*ziUN?vKn#so6r$(?m7NTrQEwDckXb=k%)(HJq6=&mhKCp#Afq%$NO6quVab#L8Euzd`5>LfJGmS#**V1;n&B)6oHEwqDl);o}jM6!Q~q2`wzQ`@Q{Zx z7%@v-Mus$~B%A`7MN~mdiC#)9!Qu^~jU!qiC7#2gmuNS`qXEibWB@JihH@YjBlzZe z2pdX*ycLY4@}#O>N-V+R4Wf;szCtV^NVEf?Ar7ao)N(Wyf?Ew`FfkZniFz!RBSw=2 zOC^QPFl=J9*9!F=oWh!`Kzk41DnJY@?jlwrMo9=V4;f=Mo0vewQvFb17BMl4>}(L5 zY!`quBV(fT2_*`N){E>i5Sx(!Ha7v{fiYGgj7|mFs=#(25m*X(EUkX5LKu!hG8W9l znr1L^0I0Yms;7gc6vU+$!xFH2kO-_TK#Z0sBSR>X9x#)cp|l=L>4l+=YzwdkH5TJB z91C_H5`i^lvE+Utq7kE?MO=-66O_nHV}SM$&N(uw&@PVh5%( zus9wgOtF+DpuB?FWxzBZBl9ycOoW|E16PeDt1~h5V<>~Ghcc+?EG$iRkQXtF1E}3_ zYCs$Tx{nI9){p_dvkl@N*z!IIj{&3lfUS&!$-@?v!T7M1LNGpTkqwLwTWtd4qbE+# zSqU&X5Di=S0AhnMIv*r99B>m00|OHS=(bZ9#@~Fr42+E64St|qs+h~d8T2#qb5r#T zQgbR3^^1#=^;7dwa#D+n0 zeFH^hIc4TzFJ@i^CKfc6HyIf1WtH_+pHgC28!1aqE(5i_Tk zyrM31g@Oiig@U4fnZ7>r>UupHMMXtL=C=$Aip-np)0jCGs;CI{m#wV|n5D;NYpbEJug_ep$IP#%$Q-7p$b6K+ zMoC_g*~^BRTTh?aQm+)l8>^WaBa9Ut6q(EQn0XZR8JJj@mE=IAfuc796AP0E*lY!m zhyt6pevq89yuN`Vv!DWVcp9^&0&{kgqP&v4tcsJjyrPC8bBc`tvyh&?z6=vHTKM)b zGDbKkK}=&amS@(pv6a_XS7Z*>(^7Gfmep65Q)RAF&^G`Dn5Z6ewgNM^p1i6IbGd@I zJSZkg6%=h{nUidoZ4{Vu(wIdQn9I{_WkIS-6_~jdm{`&5y9lxm7Dh(Q6(I9`Oqt~r zl$m)HWR;mq^b~a!_2ofPRsl9zSdZB!P2XElPFazeFG5jXU!S>D!CPLDIaQDO2!jH1 zWs^FyYg(kDygm~nnq7C98TBAmd9i_lkWm*y$#Z5#klz{E6fn~0OJ+tzYehwj5PORx z4%uN6pPZPJla!d89iLoMl*5peo?24OkXM=;UtW}1lFCqAQk0XL$B>qjm|o1_$xxbCoSB}NnxX*OMv?@|aM0`uH6}BuG%Y?qEe&i0SQ=zj za(+Q&d|qlrNqkXiNl_(3a#DO^Q91*vi|`kJ!7e_qf=$1mC_gJTxkMjSf+XdGGIeor zjy{~l0CRDGt1m-xQEFmID$J3^nN_I_rI~pp#zyfaaCOf9z5xu7B7-3(KQCPYOrUrb zW~8&fpBqCyXmKovhzA83Oe#3o2P^~jesM-=NlJcs9s?w>GxOuq;$iVnQW0NVQdF8; z0&^8ODqzOA1UoW-oQdo{&j1hCAO?58Pz7fN6Fo}>BLhQI14AQY1&xBD)S}d!)WqUc zO$FWDq|E%h%wz@K+?>pklAKiC)V!3;#5@Jv+{C0z+nfS369wIL1zmq51>LlQ%wz@K zw6xN^lPH{m!u|_qY@y;O;a9u8*?ykWh3`qs0C6Md~PB*YL0dW&tv8$iEr=KgF>+j?R zPB9GN90pp|2~BBvspW7*p~0>}3`v>!@x>(!sYOMGAi@YP>*w$1$^g!r@kObL#rcr% zFDNa6h7HUiPJVDL!I8mmwqvlLAwzLSeo+ayT!5)|g$4vD3_w1I1TZMqf|@tUMU@35 z`T9wj`T7v|>Lr7VAGoOj-p;}1C_D>>{L+#fxRAedZ~#MIVs0v2#KnUlGcU7*0bC4$ zLmWhuR2HN{q68&RgA~Ei3OKkyr6D-cfHiVz`rof*qlW87>4WX~T@+T+qHYkXyl}4Xn(BIUJlB zKu(28pcdMpo^WG4yj|Sj9H&q>253nR_5~#J;64MzSZ-==azQ0SN`7flPAWLzC+DOl z7D0;ect}Noh-nuOuvatl((>bzlNcD>ot>=|G~E3{HF1|%;N}YwV$drt zDT2@$Fjh%wMG1pmN@7VOgI-c`F@s)FYEGgaNK_A+w^4H$raU-1VhV#wVoXtRp@S(5 zZVq4ygUTT+E`k)Qn99MW5Rx#cjDXjWXyRClIV@_xcA=Do5JjL61F`gq^7V4^lM{0o z^osJqg2g38hI$rIXQ!klm8QpoiUL%A=UT#cf+I_THqtU7sYf2uVP*ht`9@X_H3w51 zw5@~*Nja zhF##KDe(b_k#&MId2#djiD4+K2#2 zz(7#SFhky0vnXE*}`gES)pg9(y2csCsuaaj3?t{zq*g2X}R z|G|txR*x(WYKMc=psNRO<-=kx?9Ky_dSrKk&g6!fV+LYCG3dk<5EG={9K?WP*z^`i z9CptHND6c|Fo*_)53+ggUkWdu^=`GgU&|*(I9bT^G_g|gY16T zS@R(E$l>DvZC|5{!`j^-ab$D$AgM^PfN&Aa^3G zhn>X^5=XWdb~YxuI4<|V?z{%6M~+`upA{sIY(6agfW(pAse=>_$mW2~@&$PTT|II> zvIQxCVp!iCls=K~PJl`?fZ`W?4ggdDbj~V>35s82ab)u$=UakQfetc+&>;69i^E!` zp!xumPGIE)tZo2_BfAIIasi3M>;jn#(+3hqv`QG@H91IJ5Tp=_VetYIM{Y&J!W<-y zd`AV$%^-1@n?Xjw(iKP?d{h%ikbwc-LT6%RK&kCv^%+PU)CPy;TbSEm;{DJ7h8;N! z6JHKBAGV_tBo2!^kd!Kj0JS+889=9sLU|03jml7Qki9if^Fimhf)s(w0f}#drYAd) zAd-4EsOLcKbdVHGy$^`Pz`y{bVd4_dt_y4xBuqR2YEBeXA51(Q>YhY2aTTaJxoF~X zP;+4AEzBGNsQX*d)E7g$aIpLiQ?CnE4>~v!qy;Aa7wR6^oi{LX&>2S{b+CAViT{O` zYnwolNa0osb?1IGaU-ZWXwDxb1vBR!)Lu~g3t3zp>i%aSK_v4dq5RKK8fMOFsCrme z7bXr%PrOin!^A;nkAsW=<$n+j6aNe1FfcHvqp2^2y59s%d?r-AFPb zq@#(Sg^I)OZh^UH64d-gH1+SG=J%nA!}QNa6Nlv)SicTtz6R8sLul%|q3*eZCjJr{ z&M(o#HKFRip^3we!jOQb7nr@$PY;-L0F$Q^!Y;>)1^hut9pGv6Mhn1O*I3Qc_! z)SU@v;x15gV0SOU%-IEXPY#;;LZ~@KXyULlpexYCcR<6f4o!Rm)SMPH@qJM7E;R9# zP;(}riEoASVRuBq+}csJCYS!m)QGeEc$DvsVhnF>n z1H)1@aafyj3z|5remw>ihnWv+-@wWnkoll?#WiTSy+u-w+>YXd%7fH{+;b7?9$7ST zH)uF0LB&D#g3N*S@Ac8dVdcCHnmDWv18a|f>;<_KmTsbu)FZb8tD)i`^&od5~w&#J**wG7EK)1K0b;j z4)gClG;vt_^*fq4%su?j`~z6Ayug zPd=LXZ>am~(Ztt-4@PBR=tmO|09^*az`!scP5cs6d>xuN=#XYm`0qs%w+2NH0|Ucp zH1Tgx@mpx(_RtLQ3QhbjRQwm3csyugfPsPGKaw~o-ld@VnhokdQ22ww6IL$sqlv@j zO4ZTCVRuM+qlwpmJj=kqkc=k&1}a{FCJyUocA$yF>gB0u;;{bkS~T%9(EPFsOP=6EZU50q5I4FIB!haUj zomo(EQ24|8XdpdZP;roYPpz*s3NgQO3CG=A0U1;J> zQ1Me};-{hFH_*iWp&jVENa7%SS3~pH3nX!nz0aWPzoCh{K|TE&Dh>+=Sa~80%}+3K z8)&#Gpotei#Z95&pl}1Z=OZ*;?4jZybCCP>2~cs6dXPI$LEV#&Cf)~~Vktoq2bq5c z>fbsfagaFz;3E|o7`oBKCqcz$p@}Cz9kmio9Cr8eI;c3z{jl&kh9(Z{CtpSrhmA{q zL=%UN`|v|1Za}LKA*18a@Ki?=huwi`0~H5_8z>y&L5Y@ufx!(b4ss{*xJoKi9Hbr; zK55X7VlkSyEp!OJ2~FGtYFIy-_(`bvJT&pW(28m;ns^9wU}FTeW2o?@BxKqCbT{Zhl+#DM;>=7hl+#L zgTnJR)L-pr;#N>iJy3C&Indx?Sc)bN8@D7esg^GjBfggm(z`*bT zDh^X`4t4))s5nSH@@yL~w7vqV2f2R+)SW^|;vjoLcg}(Al|>Qy;! zKFmD_pyD9&LFT~j>^%z=2dPIM=e!0LhpB%A4bQJ=;;?aW$SL0p;5*1c=Bq)|73BPF zgt#lT9iRiPPhjS6goaN5ns^;3@EI5wlF-Ckq2*p9nz$)cd^wsp?5yNtXyWEj_dG@u zhmAA-Kodv5I}Q|X(4Yak6k3gd%Q28R)H#r2t)cZevN$x_;Oe2pFaxY#f^NPe*cJx3 zdT8>7k59tX!^B~C%EH8<(Z`U4W)4goG@lQWf~kkO2i6~giG$RDF!bs(4EMn1n_%i; z?tztCFmaf@>p+Gfg%3=88=5%GJ+S^0$Q)RhgOtL?6=CAAadX&w2f8?{yo8Cv`wJk$ zpzZ;g4-aah=c>?=f44-$tqix^<*NMPz=;w@BIs^FkpE!rhlyW9GY58;`$HV!uyIb9Ik0s@u>LMg9JbPfAKJcy ziNpHopbKP>-2)R>LQ@axzv$u+H$@YNg(s}v0J9e+?t`Wt)(;BDAs&w=4!WZlY@u_Iyu=ed@9OAHfBv|;v&iLPkrXD7~4^4ax)cvq=ZkRbR z@r!8ce?ZmW$07b4O&qpl6E1_lOLKOSZd zO#BL(dRYDiU4#PC3R4dge}$(02S^bE1H)Gw;;?yOm^rZi1>_bdMEZe=3xFE0&~_0h zUBU9Z91d|cG;vt|HN+uqi6#!qzwS81{n5l>?FQuWZIC-*;z?-gVfnEDhj;~=xBxVN zHRBM6&7;D?6PE90qN#_8FGLgXfttSthxisWaag`PghTukn)n8&`B!m>gRX@EB^j9e zVfhy}J`EEGsR3bTX#WW&4$G&Y%VI$C=;C5%>S6V`A`Wp)G;vryh4tHD=EKD8(bU88 zuNMySAT)7UJr27I8D>6AJQYnnEMFJn5U)lPe+>#01_p*U9O8Xw;;?)@2Z#6)G;vry zU5`V2JDNBw{~p32ehN(-mVd9}5WkBi4$HrlX^=L=x@R|IYR940P< zCN2+6|LF4wFmZh}^{{mbRyf3+(8OW$^Z_`;BhbWQ`5k?p0w$h~rXH5x%W#O-p^3xt zdnXR@iD=@m{0^IUf~9|GvSrwgrXH5x58)6$g(eOg2fm6!{4Sa}EMLFIA^sUn9G2hz z;Sgs7b>@-kuN_d23E~i!L=%VQcXb@%`e@>?{BDIq+zCw_mfr(#h{JBIg2f9gzbB)q zhlyvSiNo@H84mF}G;vsd@5CWK5ltMH-{<2HUyddY%kP_Th{NWIVE%>W>l0||Vd59i z#9{gRHV*N}XyUN^`w@ruPc(5@K4n3g*8sIQVB$Pz;;{THjze4?O&pegwQz_Vp^3xt zFKm7o7H+V00ugBHVe<>gXyUMZmyIS48xJW%6Nlvs*gO=>-W$;T)rqDamd+=li8ny| zM|04`Vd-iKn)nl_`t@kyu=KDUO&k_Juz7NrJE6{GxP_)3*1vd$L;M|@IBXo|Ck}B& zqV_qp639`=g0p z0BHuTb3+q{#cvXtcm*`R^3cR#@mq!_4(p%7=Hp=Qgo$^dsfXpesW`;vqKU)O18jW+ z%zW5B;)7`FVdd2sG;tPayW$F(IIR6}ABQ;T1~O0(!t8~uYy5sfVSXAROXRXyUMPJ_Cn%0h&0hJy4B9ycta#7QYj5h|fe5hsEy_G;vt` zu0a!r)$iMJh=Z=eLoOd+@e5mT1q)BuI`5}w=DdN%;|DbHKTz=>XyQE3atv~hGh+M) zCJwo;86ge}PslCInBtJzmJ#Bx@YICPtHRt56E{Q?hlQsNnm8;xUC_i~;R9QD1~VTv z9-EG)9+uvU(8OWmt5s;?uyVK+O&sR_UNmu-`)8nu!`#0BO&pdUVC$_w?uRZ30wn{6 z!$|5u;;_Al=WvK$LlcL!#~$Jke~Bgzn>Phr2?%lk%snvi|7hxA>v_09jSpyj1ac=# zTnJ743&>E=oy9oBRnf#@`#p?th+CtH!}i(3)~UhV54Dyd4oy8QJTq~K7ov$LKn<$F zA>M)}4r{;l;}D;YCJvjgT!KS<4VpNtUAG-g92Q^u(Zpf#atep|B{Xr^e9&Dqaag=O zMH2_@cLoK~2OQ!*(8OW&1v7NrA1uCL;@oKB8PIY}42QTJnm8;yz}6wc%m=vGtTer}KrXJSbo{A<8Gk-3cIIJDM z0!S`uv0@4s-u6G;vt?ut66jz}*9l zcRn<6*m#8`4sk^^aoG9>9US5&XyUN&fvrD%L|JOUbSb8v_+K@*4NuMIfFcc6*G_AMXAA$}T792TCi^||Qb z`3_AztUUaML!1dz*&x+Bu=K`lcq*ZZ!@^AqO&k_Juyw@f?)O7i4~^eA z9O7wc;;{5nh$aqmPbHc->`bjr9O4tv#9`&?avb98(Zpf?g{@Nt`4_e(3*@y+Na{i2 zu=?~a4)LdG;;^&DKHw1lfhG>?zc54BN5k9$6X!+~SAnK~F&yG@XyUMSvpP7$P0++) z`OY4PxI3CStUncsLp&Bu9Jb#x1BZA4nmDXHgsmTkg%2pMKzJIOde}JOLLA~N(Zpfn zV_R^D??Dsq2U*I%z;GN*9JVg-JeoLco!l)naag=OLKBCbEAbXh92U-B(Zpfv_F?Pg z(Zfdqx?Ub84olCTO0 zqlv@DE$`tFe}*Ow>mPkY6Nj~Xf1-)Q&dXo{6?V{i2gHPl^ME)=;;{4}jwTKZe|a=< z*ghjI9O6c3;=$1LV2eZC6-^wL{$cw+VDSq|dmx;FrXCjWB{;-u(8OWm+wExLuzA3K zG;vt?%)%kQ2u&Q8FV>-n!_xmYG;vt@d=Q8DNi=a-yj;N{eg{n)R{uW7A^sjs99EzH z!XeHC-KPSJ7g+fZ+m{0qhpjJFMNpP6el3;il!dceh9!J9)Ttf8$U@#6NjyP&qfo6txqn)Azp_j-VSmk0|P@R4)KX- z;;?1qj@IIQ2g9*6jLG;!E^fJ12Fuzva}G;!Ft{Z%w^Sh~H7CJw7FUf>Y_ zfF=%0Z~xH5Ve4|)K$#X=e}R~=@<$NFK@x|hD@inQSo(qOpF>YSHfZW$<%2s8aep*% zSoAs&V%4m+pz;}Gvh6Nk0mW}%70($69^aaewY?N5cp7qpmUIEtnoHokWehxko2aajI( zf+h}&uQzDou=x6pCJqa?|7hZ{aN~yVH-)($R$d9CiNoqaIUM3@XyUMNGsGcoi6#yU zPuRX*n0sLDu^2SVeO4R9OBc^#9`sN6o>d)G;vt@ zzXMGi7H$X7#9`qB+aC-HAL!OuaFTnBq#h&=9oA!bheP}unmFv7O-7JrXnh1?!o)d2 z93*jlu&oRXA~?il(8OWm|FC_`=2Ga$orrdAgKq5!`#0bhxleRaacNs?T1D;|0bGxSo}W0A^rwU9Oj ziNo9j+dmC*5Ar^1Rp^FWm^jRQ103QOXyP#QVf(FN=0KAbLmZlVn13^Ih!>)X!`xGY zL%an|9OfSAa%u4XYgpO`xd~=J$eqw7{~%%b3DY2P=#oaTI4r$@#Gy+?z~ZoeKS&%p zWd|0A?b`#1Lx*O;;;?oHNF3U=1&hPl7a(z%UqKSEc0EWO8l@m%23R`+B#yk_A2wbH z5(lMQuwvL<8qoZX9PcoBkb2~BfcYIJ4s$DVxWUwb%z#!$;Qh`ZaacbEHeUxa2RYne zaRC#Dt)D~=XXNliKA#gL4qMNF9RA4R4BPJuG9M%kn@>TG7nq+w?uYF^2B`;$!^Ve^ z;|n=nVEzNC2Z_VVbL4nLjxX4J1xP(e9Oh5t_(hIK*!U1gJxCn790eubk>eNEz5uBQ ziNn%Aa(Y0Hci4OpNIgg#rhXo@9SsskP7hm=#6j^33NsMCk0g#9zsUQ4LGcAr3&Pi+ z>u5mcgW?4w2Ez78`}IKK4-y06^+@8Na0ZEiF!H`UPtGIKak}K;p>Z z0GoFLi6e&tY+WHp9620d>yJR<$l;&^4QG%zayY=we+G#ohXd?fC6G9BIDo=}5)3Mq zK}iHw4#UiXs(J?Lx@kUChJf|aMBdo8fp51UVbl|vBIFmE6M^?yO;qT4S4 zwI5bag6s$R5#4@}`Pl4-jX%Q5ZCv()ZXd>Ge*)BgSh)zYA7nQOgUo{YA9T(MHv3`Y ztFU?iqz8mSc7bRZ2HjTy5<~a@4XFLFekI6$&=O*F`=^5HOr&$2Vdh4F3}s+ofYmE7 zai}ni3ofrgV(9iefFhQGfdM)EL1jF;{h)Q~*!=$hS}4KlDVT*IyI^b(4LYwFB!+H( z2h@I8I|Af?Q2B&z|6v^dkAdzZg4KH_fNz8V>tcK<$U=2l*c~1&VI}Cmi;hK=(0#;tXath(@>nEe`u{V6h)m zmZ00u1-f+@OZszw+7GL@L3V>My8WQ?93+Mw{v6N)x?%YY_2e}2^e$c!f$bR(ly8~)JtUU+vI|#${gV-PpItK=u|1F^Q!{#+X{s+~c zF#RC6fb^$9!yo;8qZ?5BVeMFuS`dcm2e}! z@DqSl0ML04ko!UPJj{NW``d8XF9B5mJI5GiAG-ZBap+$J3M>W&hDD$X9;O+ZSCF_2 zp!Mw7!e1a0qG|$kAPwYxP+tMv{VQ?U?*hH#0k-ZBVj2T%`4WuFumnf=Em#Us0vqQ9 z*$=u!2;Kg@IP4dJUgiN?mj*En(|*u8YHa>L0J^XTbVm-fod&WWl$X)%zktL3D^UB} zK!(FC#}fXharplNv;zQJhYGSEbS@^k{h)KtL1_Y3PQt8;g2r13sL=ouM6w^G2PFI) z>V9!1xDLe*u~V z%>Q6TAc6^d`E_F@NRoj8Is8DkKEd=uvlj!XZI51dfplg-FI0f_lR#o1jP8CAAI*s% zWegSWV2Z&28vda1FVGwjy8WPH3Y+~ad?ETnK^8!mU=oeXker{FmzrFnm#?n?1_odf zLO|FM(#*sJENE(BYH9>#C2-Zd`nWNHI#ytlLGiF1BY%RVeq0BU5DclO92krl3>fS! z7z!CA9DX)3FoZCLF#J?tXt;EMIsO_0l>YC`aFLOrLFjWe!^+Rh467K#8ZOmKG3-p# zV%S-)#ITcrfniDmBf}Q?8itkfHH<6eYnWEb*D$Y?uVGm!U&FdmzJ_h3d=2|b`5KOu z@->_*-lxL8C{eXSG)aPo4mH(X?CW7qz@62@Zb1=h7VFrc?UzizIeNSdu z`7@h&Wdf7KPm2boiC?1`SN<+$S@}+!=m8G-vo(!|bqgK08C<12%?``P>YJ4)P2kF&qr0HS7*Q_Xsg;N#S<* z`IuQ|RSO5hmIus|s~$3ot$M^Pu?pm`1wsra3DOQb7celGG-x^ORAguXwJ4?}NHLh$ zFf;^##2%YF{CvnPqou^y5Y)oZ5cH=V5+=Wx8MJl@{V;#PECMzQq!wg$(qad2n1SRI zgnyWqGc)X*%FD3TilHH>n91Si17<0$NA3;(Ah)YA?40`N|CU5%hnvC z|No1_!po7NAqW;`2j2WQo$&v^II_Q*p#FLy266WiBzcg3L4H@_YY2KG36Y2S8)O&A zoCb!5Advq-YC-Ot^8dfM7&Kh2F)>U8>3_^Dwu*_NAxK3AVg`s03s)!Jh9DQ2hM<@K z|AU4zrZli3(gVmmXyLlSR85J-H9LPOATuo*I|K<0t$0NDxhCrB;Gk05g%@iYV-k!lFq zgU7E=WFdBd%mwKM={v;J5X2(a5VQ{JS5SWP`2S!0e=`HPO!->PxbibI<0??O!YJYJ z^D8rxmNJ9G&Uy|=x&gUIo4Q_=g(@#mH(R|<=AIt1}$vjATf~Mgnyts3Mm&p3^6zU<7W8jz{0Qv6c!9J z4m%GpGMJV~Is6o1X4ule2FX7STo4)-RtgLaLI1cNeuBaY7DfqL4m&~m$N&w0kQ@U;gHVDN!_JVu|F>c@g8_@V;PBOQ*!dn5u7?>e+S@P`g6b5I zyFqRik#P9Qz{L=9hLIt}UV))7fs-NREi*%iy$VC&115$LdmV;CMTUk;jVzFI7v$~- z%#5r4ABM!O{S?N+18fW-zAOwO_A?j@7l6!J!dS@2%n-sL;jmMIlffjJfnf{Ce+dkr zda_~XyZ`^inPeD1^~a^x|No0ONkP~z{{I)ZXJIH*WMl}L&&05kLBnAuC_F&r7|0(m z|AXpTMuvtKhnZwX9X(cFrpm`INCqaIK zK*blwp+ugTqdF4u--744}LQ$uk3$PZ=1%Lrvg17t}6#%*+TXdoMNeGz9%) zhJ^1wW>CEhNh{#8rCmAyGi%URv;=%4EEY45PPAyS@s$pPolYsOAV6A=hHZt6e zOpw#z!0m0OE1>HGnK;1XWK1j&iV@seXJQ1m(wUgR{$yeT%dxPqX6BVJfb}wKfO;no zrUU3?Sum4D5;WKWVM@m_fbN+E4KB%n)Ix2BSqHHdtdvy(bm=UF=?hwA!O8(TLl5c( zusEA6=(J)8Qyw&t#0I(TjJ>uTW(#{g=%O*O680|8m>`(Raaf*_fdTCN08W19^^6RV zo25Agm{UQ40`?}SAafxT0|N(yBgDLynSnt7!VzY^!_2@S0pW-;e`97~P=Ij6z%m*T zjySUv3j>1zgd@SM&%(f90pUo3ISvqx6f@}3EDr`wCr^I{jw8DePLqYW0OTZ2IcD&Y zix4de%mvJFrztX@19iwDGAdvnK%J%u=Ey)~w7?vwJGH?a6|TI}Tn0`(FbC>redZ`; z1_m9jf|4QzP6KApJy}p67&FgfhWo&T8Pqd|`T)Z5U|{7aXJTOB2E`K(3ttl>=#X^q zequ&2$pj`LJJDIdY*sJ{IcuC9%;o@-oM4g*OhR_3^MKjBV3H3^@`FhMFewNog}|gR zm=pn%qF@rTmt7ppmH?BIU{VT9LQXW70kdVnBxH}fJeaKjCKVZ2If9rO82FeV=Wv2k z5myR4nQ=Y^#Rn@#88ZU|KPcUTLP`KkfD)7dC?N@eSs+OP5W&F80ZMoLAW?AA0;`5A zWMJi30x}FF4N7bf!@v;@5@KNGI1G~pB|nHXNH+s3$0Lvo$PQ5QgUEpNfUOk(MJNL+ z#~+XykSHisg4HmvawxDsoexToU_pqZQ$hY^N+5d~7?=dWg@!l_V{i#80|Pj1 zKuBl`hiKiv82J#Ul`#qw$`GG0#(*M_0~{)hu^_epgdGP`BLQJ2fC5AY!cGERlcfM* zC;ww$U|0ZQXS1>~FsxtzC!Sxd3=9Hb0%Qm{!WdXNKo@#)gAy1k2goVlxMIu!IT}2| z!r;PQ)hHzWDH|tV31DA%x7S9V+18knPdh=cd#e}D+f0l1LOvD z#>tGJWX5URFObh=asom~pQ!7XyRo4`|SuzJ)O!K^c&sX9ic33=Hb9E1J|{ zX9a>S23_Ezt_f8GpFLR$j-Eg!j##MsK=B%OsAZNL-wOVKP`z08@Of*4b~9C#PLv*F&G>LL7=FH#5YP@g2DrC7bp<6g0&(7 z0WJv&cF=7$(7=I8U=o~sP&9z9r_p2#Vd8iXSC7MiPM~2u za8<&Xj8de-Zbo37W6uYxUXtNOx?+B52?Jv?BdkyY-}i!K0;G;fftv`aV^SeC2m?~W z@Z?}%IKm5x!2qTfq)Y(XKm+%ZpEv`kO(hEt0; z1A`Jj$V)_olNDGYIMm^`fWj#VDvlgZE0MwpJfqBL!pK<9&%hv^%)n>@@iHV4g@VHZ z_KEk1=qoAX9S;43K;17#JATK^A~afLme*vBVZRyufWOPzz@s<0_C%7~uvt7p77j z7KV<mQWl32tP9{5&UE7?eB<7#RP+Q>S8aNfC$-%JZPm zb3)G2AOXg|jEtc34@_a%7m=Z1Ssaqq@aO77LSX-)cmt*M1Lf);U`0gaYS2Lt(EI=o zMNqER5Qf--D_3K-znU2s7@WcW6k&oje?eT>QYywdE+8(W7!$0m3*v$cdT@~51_vpq zPbJ0#Ybisj2{9&En8Kq9G`j?9lze6k1T{(wKm|KT3MleEGX^j)Kx|@wn**{5G|C2| z8Rw*kFhDLGV`PAv45@$^;X2@%78KKPj~3T`pP%TjQM;qtN}Rxiupu*p^wW|JJ;CdK?b21bMibc?_>C+BCz zKt$Eakp>T8@Hz*6gGf;Z2GIIGP{6`5H)yN?qQDTF0!BBGQbs-|&{zqgT?=0NARq_o z{en6K0^kl0SWr+O)NTMZ^btcv3=kPpkSb6k9V`P86iNdr2Q}ltf=C7lgJnRO9xMY{ zrYWEZYBNDbemp@g<1=FfHS@q@1xN%a5ek4tWf>r8m<6)K_n8S3Dn$1*u~%tatDtzxby)vQV>!Q7HH^D z0AvKj3!Jw=t!?m-6jZAaSnGF?-5}!yz$~x^R*t`73=G_>SQwy=P6R0c<$18tP{CA? zAgBQf5%d7LhjTWl^#`^EA_`iC%m7|-A`%C2u_7ZUBLf4dnFLk=4peaXgSk-0o&%Lo zU}K<;RRHS(H5$Om1i-!nMJ$*L)pZF}nL>1d!%egStM1T$9>;jF@fU-5%WUz9ifk23wKu~c6%FY7da?KAM7T|F!uqFluMnOhZ zK4ETVK54#CaY04_aRvq^6$Wl@J8ot^1_ov^24+4hZfkDPAvY{gaSjFsR(=L z)nH)e0}b2qfhrY#QATx1PhpU`0<2)gf^gfoL83xX+qfaN2{ST6REsDwcna%tGcbsX zLktJ27DK3JU=W8|3zm`4V}y7XWSs(7NRk!e5wKsSpz^Hhk`P&GR=8If7-US4II;+( zp285tawZU?SV7*E=VoMJP(W5B$SB0_ATixZ667OAgu$RLrxFrZf`LI9VG~GJ1z|9V zt18QAC>+EXDjvZd$;!Z>#?2Ti&cL8yU^Dfg4uW#^k+>2J3=!1CtX{R07wZa_(0~_fkKXf!JeBDBnlF7fG`;t9Ff&BFgSs@u#n&81a`Tz z9)rCkI90Ktgdzijiyk9Z8ITRGi13i%VqkECazS2_U|?{E>jcM)4LHeoAPYi-JmEsD z>XHy4FHptqjV$gd43Y7HI80UIqp~xF)Ejpppa)Gcv#$DsTxF zhR=)v^Wj_^3?>Fc3^iB`BT^ZmBfVx z7FRGaG-EgxhaZsb1F^A~#>fCWivy$pjF}laBQT->yK}MV1{;AyFfu^*av;PQ8L|-^ z2n%FZQX2?UAVB#Z)tNM(!+phXD?(-{~Th}4N)8HQ;GoDOW zFfu^*mcR{Xz+w`XFeFYDGeb{3MykLnh{XzolOQZM2G9m42pgFsRUBC_h)t?~T(^cTS6gLjFADfMjK=b95XRsON+#b!3}{jusH)uW1hE7vGec1whUsh|#~Wd~5N;im zfyGuPhKZnkuuugM3QI1>rVOGOL1Hl-OBD~QtT7vMlqf{F0K&o&FF2Y|*cuI3+gg|k zAyy$sEK!A}?gDu}2qXF^QHXE>goQl^U@0Il{E0RCFjPToL6BGi8zBi{VKo?|;Rp(v z(R2X`F(^sRbb&PzFk+WDRZ!=_DRR>QhV{780MQCD(mBy4!aW0JU@4HW2tgIYDJa8T8CaTrAa4X?X|rJT1c_G2#4r(dHVV{Q z&<0wXn+LZG%D_Gfh%w-VO&Ru97ExNU6cX5MAW|9BD{u-+y+NE1+yp3tnSmn{BhsOA za0*NAfXhJ{SP~Re22NqAR^W0_2A0r(%D^dd%XW;0DBMIS1B<~>88}6hC$Utg74afhDPcf(%<#jJ3^(sSs)~oWhb@KsL}iQm`Zr3=d#Qh*-h{ z?h`13ysU%W&rl=b6c)3wWCf5}!~{G>7+|X>m>Bvo>JDt`;BJI6hzmTjRY7fmQ&g6n`XXdI*zI09??1~Xnkr=&wp^?j&7dt~W?*1p z{LRP9z{m(bHV1U}5$5J)2K|iu+*JL7)SSvh@V@5Myp){O;^O$?g2d!h{lvVKqWsJh z-Mo}+-6BK7Wc`x-{G8;B#LT>6{lvtgYWCVsWl+dTL&3QD!m?eExRX6BXX=H!@}=w&dlFfbJ47iU() zmsA#{7DEJJOjZU47?X{GAt|vqRWAdy$2=)BAHpcfC`wICfv_Q4_4P79XY|6^Yzz#U zd1es7)S@DY%FH~y4AAcM+{B!m{A7rWic5+z^U@*gq*9QR*%=seQ*&WDN>YpR5_9x2 zK)x!?%PcMd*$Uo`#R;jsLEGbBF*8cYDJd~mDlqdY$fz(eg3iE3lHbe3s3fProUOnt zrl6?EoS~qk%q+4-QIUxSP2n;|MrPF#=4b^QW>p2|cm)~eCkzVA3+fe^6&09;6qr2~ zn9UWKgA{U%nFVbU^n(<`6%Ew&Bbk*Hn0XXH){7}HhhDQ)v^A7fRAg4rQ)Iqdm!>bz z%&VZ!z{JAHroh(XV#}puk+9z$~DkZ>XZrtgff8 zD6goCCh1)4*am z3d|x3%w~Gbk|oW|W@*e>3QSB4jEoFO0rH56(Z)zd)mG71F^(bs2I)l+27@bYI~RAdci2 zda6pbs?6sZ6qq;GM=-0G7$_PrbLug>DKJ|rFy|>Shbu5^DKJMX7&5P^S72TaHe7-E zEQ6jb^I51S0X;>1HIP|~wzl$$%z1jsvii&#UW&}33e219L5dX=nY|RilI42LN_rTf z@tc{^R$f7oxv5@(`5%J` zKEBk@3|tV!rxm59GJr~hoYXv!i%N6j%ZoBgQW=U1axzQeLC1Z>C+4NZ7vvX}Fn|@q z%yM;h33gO7u z{RE0@S7%ThWagC^8^xC}l$ynZjIjX61K6i&De=V_`K3825brU7LO;H^qzF`2$CrY+ zaI-+M0E#BKK!CS%usI6Pf&s-zpuj6mEdeJka14V(COIiSu_&DZCJ9cPpyU^y3=NO? zKppb(kI#AWhkOn$m z031$`lm^PBpgNfWk-$Jg@z4MO2Rb-if_9o`=7G`|ECCprfqf1RW|&Q2lR?oBmO|JK z$x5&Un3z`y_8TaNq?W{k;|`M721@cNr3GNGgGx_Opn&2Xlnh+m{DWM!Dvzl%JKFT%r$Zye8#?T4Tk}LpX>ta3837ovZ2@Xtv$`Npi zgt<1r)t4b9wYa1xzY-qSpj-)x4Nz=C%3w%ZKq{KS6$LZ`^FT2OPkPXN0E#nE?kz|x zO3X!+K`?7w{oFnMToK6+WC17?Ll=%;LMT&~GC+!7P(b^I`hprB!QhDXbq(?Ght%3W zo=)+>k--c}>8T~fph5#&R{ICI`UMC3z_KLBJWyc~AD@&8Ew}Pg%i*OPBwoSg7Pz};i=;qDizi932hM^8Zq2pFq^7+5Og z7^QjS!F%RF+Xz5Xu+c%#-6Y_nL|_M`IPwWNO=g*9gJe$G{8d8ENgOd<**x`H_19XxT6Owx5 zSr}#p&l@J}shQ}Z$xj}gl3StiU ztUHJRlms2v#)PCETqZ;1m>GnjECdBH2U8rRf|&t&F$RbO#SrzF;vi{e2FRHkAT|s` z)MJW+3f`XWXDGpM>3^~sN#6-c&44~UFP=vr7W(H+2jZQE#sGgsSRczv*J8iLvU&dkYOB~{$0}!y811hqy ziGvQC#3ru9h~;bs2GDsG*u@QSsJFo(?ubL&ABT7n4)H=9;!QZjL3h_+^DpR*Lu}$3 zahS6WhxjQR;-EWQu$g}ohx#XspyM$S2h=AcRnW)}-O_#7V(ZuNjiK+;PSiy$L(1jc1Roqb3r4l=rg z)DHzUHzDHykdY5a4-@1R&^Q-NBXo2C#6=(71Q`HoT0%5JM-ZWdQOJV`V9$bju83h_ z5D#sX8Lgv=>|5}756A@&=R*Ah9-)Q|@WNaI@d!A?i$UXbsN&G@2M^W52brJ_1r2t9 zRl|C=;NCUJcc1`4jC6q1fTIk=KyGqF`Cx5e4}%2Y`oRrvm z)W(AfGr;Zy1&PBC%K{x@i=^HWrkH_&VGj=RGf3j#<7uFJZXk(+4`zajzd#ZPpHBo8 ze*+a4W`rJj3KjnY6&FPlXMy%zLGA~i_5)Q9ySo%-4lKS!pz2}fz{Dk>;vjRtCj&vv zQ9%+%4hPtsrXcmm{whII4?egBYEBE1II@4I;1E9o6^FSWY7D~_s5s31F!4K3agckE z!{G^39Niq)-InO){DG=RH-`m0HO;^PGY1xKJZR#u1Dr&l;xO}J>Lt*`Vd`a|;vjob z!XGLQvlr%H9jG|We3-ZcR2*auayY~wi6f`~93*k%^xuIbjvT+B1HVCbp}S`VR6V+T zHbBKe?m^DiCy>OE-T4Md966nQfr_Ks3pyhlN^ zBysThOCZY_5T{Xs)I<6v5DCz@7l;KC_XIJZ7^W8_4(c01g&9EoI}jTrjvPL)yE{SR z$niA?q!?PRf)87Q@?q%+q@Gmwz{WE{Mp5D(@F7$nL(swpIUYe{i6A8)cOr|!>J)Tw z*th~n9DL>zNHYWIU~vcoBo4i97Ayd}I~OF5tX=?GeuBi2?Ug|ihqdWI2Du=KBZp@J zk~p$Cu)AVG<|CT}9(#nw7jnIToKBF zA-G;fjxUg(K^T-@kb9BP@KB5$05wXZ?q$lFn1ZFZ1&D99oxhLwvT zapVQQ$oVAM)qN7S#MiG;vsa zD;G^%7-}zUO+U<>rBHJ~;}Re(F!9q+^?e{g&=?;h3J%mH2401|=?Y{SH1Ted)VD}&@=;;^z3RE{8v&x6_vyDJu^9@hTQ zg@zMMJOZSdfq}saP5dJ?oZZpH*`WLoC=D~G25N62nmFjLPmmRPXyRL;>Z{Sj7en(A z?5=W{`O46t=&5Mx_d?Y#LKEKwjo;m9;(ww3I)Nts4Jv*WO}rRt&LcGOB~bP6(Zpjx zo@HQQfb}n6?k|O=6WH29n0Pld9K@jJ!NlJ})f=FRuZ5;hFEsHis5`^a#M7bXq@amI zuY_f2LlXzh-+{c)gC@Qb>dr}M;z>~P8EE3`p!Uu~6Q2fkCoKG6{)LrOtI*WfK-F(R z6Q2MLhiz!$8=>i851M!glz#|H!|eSHjlUCU;`vZ>&Y_9dLHz~mH^Izl00kNY1H&ye z^&C+C11Jqse+#Pq8Jf5qG(2JbDVX|HsJc&38YW&0<^O=vF!9yUaQlZQ4!ZRQWHqe+ z1yip9t?#&?`e5SB&~Oky69-+;2{K0vO`I1Rp0NHG%pBMpyAqoEP^f=3(8Mo5-K~cv z9u4K2KxvryxlnVg(8O;+(+R8}2U8DohZ~yuiBNOG(8P~J{ROihW=;vz{4_N6=}`3v zPoXEmBQ=&~SCd~HV)huz727)^XP zG#p-_iOWIl{fs6q59R-Z(lGy~Leq~G)E_YMIZ(bEl!l3WLd_3F6MqghHwjJL9m>yu z(lB#i@tubz4m$Z16b`WR7^WUH-w6_LL{kr|pL)^6C86Ow6HWXhG~8hA9hmvBw(LeU z_5M)*?nM(Xfbvg5X_z^n@qLgxucC>sfTk-RXn4ca^FrMzjwb#G>P~euadoJBjM2nT zK*K*4O?)PlzZFWu>=lCMheK%Mx1r*9(8PB@?R^dvM{l=tLj3_UA9;4n1Wg<^W@?Ef z4r(95+~a~I4l-vtC@>iq7`%|gLF$h}-I0MN4pq)j3>62t6B?9Ysi{zLm^*)iMHv|8 zLB(O}VeR>4P;roYP=5icoM9af@$E?BAos)CXM3RHF!N#a9hafvAoD@~+6=YeF`9T2 z)D!Q}#Lq#~)lW2WSo@F#st;y<0yG}^(ZpftTnbGbcIAT>nmBBR)f`Ry2sGV$p@~0$ zrmGOBI4B&D#{o*A;vjc|!VT7rg!vmL4r`ym>H(N|2Gn1x(ad=awRZ!OI4GPspzYP| zP;r=hVB;Of(ZoUXprEL^02K$>3rY_l3=+SIBn~nk7S4~6#6kYjh33;2Na7&%u<-wc zBo0z93=PlUP;r<$d!X^o4D|=hJp~}gFfcF(A&G;`ft7>OXyUHWe58UV4!e#+6G*)EF3hT@m>HG zhlK-d{Hqp89Ar)el-~rUVdgA>hUWq_ao9S%{b=H#d0CKCub_#;*5sPQr2e3ft z4HTXrH-fMNk~ml^G=6o_#1)|8PDtV)b714({%GQ`_=-ak2bu2zHKzwnJOL^`6HOd+ zhbqXO+t9?fK-Hf^6F&nL|Boha04?`)p-aR-;Q(@v4^-S5Dh|rOpz?4IRNM_J4pNUi zKA8a(2dM|;>uu2dR)HoCx<(J={#qn)kolLOaO&r$m{*5LM8y6CW1`5plDIm`>FfeGN zi7$YPJ3z%j;RbTQ0JPlBKof_}8#SPb!~8oDDh{$2HU@;)cl2L;(bv5Dku$8-vz!*n1Nw4ns^m- zN!LL%@ib^+IfW)}1)Tsn4;2Ub3*=7Nxc>{NILzK=sQQm+;wzxyztF@_L&ce)nIC4( zJE%AZR29gMIk0uSK~Qm+IVMo`(Ky5tpyKG}ltRT} z=43(5se_8c)Whakr$NPG>U*K;XG6td>S68J)lhMedQiHBwI_EViG$MN2BFP9^IBfpl37WVEG=Kd;6Nl|h;e@6ynE4G*_3}`0kUK%;)k0`_r3DoSsYjj% z^oELq)PvlA8S4IMH1TLqqGMoSNP&vO%z=$#=Rn0l=77TI1JpgWNa7&#FF?&{Llc*T zPGI(wcaZq@I;*k~Fj*5qhgUm->^<4xNhpF#_w&!c1 z;vn_NtGnkz#X;&p;g$~#pCw4*AbVls59^V{LF!jP)o+1{!_0>UKf@iUILLgEIS--j zwC7N9ka|T>hJfOKP;r?0MriusgqDjSage=Vp!Q0li3dXywH#C&WJ@ zQ1^SFiC=~GJN(ha4?*oMK@*3qpKC=E7lwwzDl~BysQ7L)aoD&etUiJH7dGGU8cn?k z)cp+51PoKJ2{m5@P23);-V#mx4b;ETXa4&y_MHw#xwoA^T+@<60ndVD(W6*ms!X zpnWkQDVRAh_ru2fVdAiGfUUEDiNoBv3S*&z}y2H*9WPG4h?{eWtfYk9wZJ6f7rYkOg&6| z1G;)BAGV$Zt{y6W7)ry$Ve715NjlZIc!`7w4#C4$d=|jt7ba8VuahN+@afth(iNo9vn^%FE59`+# zpsNRY2GlRcA>N86egUd}0uFK5_%Y00SUy~grXD5^YrnwMe}I|~TYrKsz7NeD*m|#% zIK(faiNn$lY#lz#e3&?F9X?DP7XI(i%z=r2M-zvQ+b}`OATV**dMr^i z^)PW+G;!Gc5o}!t%p91w0h)T)dL3&V;?8K|u>A~vIK*M=H(>U{_8}yqsaJvWGodt0 zJ#2k{2@Y}Cx+IwTc&NH|D2*=Ok0uUV$3F{A{0Wr52uj1ufvuZgi$i=Xnz%Q#{cr$> zIIO(`Gd}>T9yXr|7l)>E*m_BrIBfm&cQo^1;{VaaVdDv0PnmDX{fX!#Z z)Wgz`DVq8R(DKR=hqx!2IA|Xu$ZIfrVCE}8^GOVvdf5883>@MGXyUMaJJmSEVe5Hd z_O5{1+lQvU0UD0e(8MP|#TVfa2i=4X@*m9n8Bq0G(bU7l_o9g}fT}-*nBn2U$FEb4QdoZ+i9Ts9X9W&jze4@O}qvg z{;+jQF!N#JPH5^Ipz8h5#i9NRLlcLECv5!^%zRjQW}&Hn0W}BKZ-A+Xg-miC=-Lzl0_Z%U`$9#9`}>p5hRPt%rsA z%K{qyKhV^}#9<5lVd_1g>Up94B$#*rR9qBI9G2ge(8OW+Q438RmLFm39bo3e!rvE7 zJuJURK*d4*KG59Ab7-R;w$2J>4$NNIdODamEL|1gFsBqM4pR?HZ?$ORu=LXb6-Rdu zY`q4|9GJhBLe;~>Vg3T05)CSUVCLL_`U|#B45l9DFW5S6m^jQ|C!pq|n{yT_4pR^F z7p&h86NmZh0aQJ@Ik0gTn0nZ{@V`*?FmYJ@!U0`x0uzU&Hvu$pSbCF26NjZYWi)Zv z{!cv|;$~>#@z8YZh(p{HO&peG z;;`_Uk0uTapXF%cu<+T8Lwq-yI4pdQ;SfKECJsxtx6s64;qwSh9F{&|>*ZkK151bB z(A2}yA#7a|Og$_-Ve8^x;;`~l4VrJz#r4p{Z$rylOEhs<_&cJB+d$KgFAj0ox@?%e zu=q+qQxA);3^Z|A_!r|4uSOGxrO!Szaaj0ILlcMXXIX|rd>xv2H?%(8i9`G#nm8=| z!`6kt!T~lu`3gCfCJqZv*g8R&`LOU5fDSCf#9{jvVC(D9#bNtnVB)aw zH$XE7CT@Wy4(o5j)~~_LfvsChKvTa1n%=T;h!>-Y!^+iqG;vt`wxfx|;%gEP@mXl% zu>1&Hrvq|7bgCXy4KeIPQV$Y`oz!y@hxkP_aoG6d9US6M(8OWmlAmyh|3VXo?H^%< zt`CB_A12O=CJsL*0*AOVnmFv-E!cV`nEBwqVPIfzLsJhM&kV#N9*HIn8@EZpA)bRK z4hx?u9O6xA;;?lEy*R|DqKU)&3tMl6?%&;L>S5{O7!L7sXyUN(#+x|AAEJrF{QDk< z_;)n%7HGsUfjTqLehnzy!o<1I#9`?{0*AN)nm8g!_ot6eHlnS zbjbrK7#OZ0sRxO})IY=_{t`_b=HD+k#Q&g)!_p5Ibp0C4Juq=0G;vtDA&Wy?6-^u# zp2j%DthjXDsfVS9dpN|Op^3xFlaDyWf1-)Q{L2nqp9pggOq?H0 z99C{f;Sg6s6NjY-103QOXyUN&fvuy2xd&EmM5C#Pl@DoX;;?wnLlcMPmr5MsjcDR9 z_xIospMoY1b3bgoC(Qk@^tl~PJuH4<>m@=AE@xfA})p|4htVe9O9a2;;{9o<~YRd(Zpwf0s*wI3WsNFVdlfuSsg@E4=Zoa zpozo$bp=fv=6=|EQgrjbqp64GYbNM=Pndd``CMq?F!N#SPhsj|<%}+x`g~}7!Pb+4 z)I*mlfMo)Z)Puxf=Wayf5Kl%Ehpk)7!y#UVCJviNXu%=ggC-6OpXoTn=c9?k;&&Ae z@l9yru<+cAL;NV3IPCnj3pm7Ypou>LhcW}hGaTaY(8OW$i9d0OGeQ@b!Qv5g4kpM7 z9vtE#XyUMWeR&+>>S*GyeJ(~g#F5uagVIk7wEyUerXD8lizW_Rj~#(SJONF72Gsm) z9OA`j;;?goVe6)0;RXsb5T1sn9=0wWw(c6H9wxpLO+73l;;{9lGC0Il z(8OW&uMrM$D>U)_(C~4^A?}MN4$EJ#_1my;fQcugsfV5IpNB)d3{4!CzglpJ_n?Wx z<~^t55TB1G4$EI_afok46NjD8asY?;2{iEtXnwhdL;N0^IBfmEOB~`K(Zn;L=Kseb z&W^Nh8I-PI>js5zh)bb~!^#H@9O4FO;!~jRvBn|pj3y2%PXcj>N1}hZ8BIM*{5P67tUbd9>MSAEUode# zG;vsZkij9Yf+h}25BfO7&C$eR>A@L?xHpV z@feCG4(pF3pozo6IRi}`<{sF-J(zo7<7VAx>S66q*nU2A^&4=ghwaZpSAQ9Ydf5Iy zboJkGsE6(IgQ^{30Cc zVf+7J>S6l?r=qEcmCvw!elYd0^tJ;{J*+(j+gArt58cuOs$LjwBdG_8L%RbE&v1yp zLlcMf$A97wX9N}E&~g}LK5YDiABVU&nm8=JlyHb^p^3x#DHb@y9ni#K@ebQxh#o%4 zXzF46CGv2Hm!XNrfJ2#qp%I68Cz?1ce5T_NpN}RE8}EhfTYA%^qA+*D+~16*9+qGFaEMPs6NkBf2@df!XyUN^ zvK@!`el&4dyqv`$eicm|=3m%8SD1fc`&fUVsfV>sn4$Y7Vd`P=$c-ir3m-8Y;&N!> zF!yWX5H~~xZNdt?6&Mp8kK;qD)2Ous3ES-YHp;J;|aaeu=i9?6q%nTmOa}FCg`>^{B9UOPG4tdQ{|i0jY<%2iCrWsfVraMUF3! zdf56>SicIU9=1OMIUYgkVeW_3&oK2c_anzINIlH`uz60HdYJo>;}@hJHm(c17YU{w zHhzm7?;!Os_rvS60MVfQG()Wg`VPz&L>BI5?OdRHZ*twM;aZvsO zsRd#5eZjDOda!lMAoa-g5p2H~OdK|!2rGv`;>h(B>|9BhI7~hAeqm5L0l5W)k@pLO z#9`@Y0aEyb;vJ+Ggkj}3$b67EEM3CRu?LBR;vJ+Ggkk49!o*?We*npRmgT!I^?gNrIa(xOre;#BGNE~K9 z?22WOIC4G90bP#|6Njnaj3kbn-Yz4FBd06aeN`ZHkkb$HenaGR0z2;nq#ijv!0tH# ziG$)76el2@26Y5T92AcrF%bTQB#s=9y3ht0NIfWCKx#qQ14$ed{va_BPCya|g)>MD zgxitCLE#A!1L65d;>h6%D_2+<8BlJWhP5|9;>h6!i%*a^a=5|D1CTg!xWVd8kT`O< zaX`y4kT`OXE|@c7Gp8968)z zDN(lxv%Rx?rMho01Si21_0A+yGLYZI+4)_LVC6hmF$3le>Y#gzKxU%**C7p}1J;fP z-G>Cqav;BgWMJZ;d$_UL4;ycX)f*r^APlk#M8j|-)J^F2M?me@09newzyPuzw51E( ze$coSHv1Kz`e5}6%szDcLF?{7V(9iafG)~rV1W07K=y;SjG)`!32K`%Anvt-*#kQ# zosj*Yb^$i~1)vcJYrli+2bB}(_JhvN!RG%AXo7;(lQ4II?1HgD^ei0VzW{1KtRDih zAG8z}-F}ey*zA`9MHbS%qaeFL7~TH$IP8~zUTlTzf6$l~y8WPYeX!ZT2dWTOkAv(6 zVRZXJ_e_Dr(Bppv)P7j|736kdF+f*$@ep!UPcF_8VBdJNruV@3w>(f!cm4zq>+5(EThR`$1>@!OR5F9Z>tx!xg3M*Lg`kZW8<61;BfuoO z{p)b(_X9Ny7#JANfFcd76GEWtUx_39PfUWS{{TJk4di~1lhED24~P9y&`WM%;~@~! zAbADG2GKil*uMi>frHXFNFB(2P`eG?{!2LQ=YlSffSqd(G6RIs{eKpR{T$~&su>s> zp!EpIeo&C2+y4}Y{aVn=nzx`84CwZQ+OeQ0Mo*_5S0VPp#%VzIgU%L2xBny5epopT z(Z#@U4|*A?7PK6MiNoxN(V%`$2qkw}aG8hz5}i3=vQZLFE%@&JfCl*WaM%!Dj!9WQhJiG{Zsm zL1Z9gT8du2z5)UmAeageHiR@YF#*dMTbLR^SP5M9u0C!|ppGiUCpSV7#JBEgcvm#b}BG51RY?GzxLmm;o|3NhLsFV3|p9F9Cj))Gz1-D zU@-a2%&>|u+UqbBg3Je*=fKDivWAf%#GZ$t@BlkQNG~fxh`j1f4I9De?r{N$j|`xs}hpCL2>er8RA|>28W%XFnj>=`x?f= z1t400p%4^*4;UCi>}41W6;Ch*J`$fVWzWEn{h)omlmi2U)<0&4pRjlWsYT|4;>D@P zVe;o-hL!)g8GeG|hCu`5eugPum>E_*U={`)p*dwf8-w8i28NIa%pzL1#CO%J0ccD}PoquLSuol7->ocV@;_Uzr(J znK4Lq`-0LOgV^iO%#5p;85u%!85l%Lm>ewUYcUiaU}gv@W@DIG&m{I5#9pA~u=63a z@G2#ShD#v-Lc&HA5;jco**^dNhk(N98?*2#1xALD15D!H_n89&x@DVek)e4a(oJv<|gr6)5j3;;@GWI(7gpaw(?L zGILTDQc{bPi!uvJ@{1TWcp-Hr0|R9A4!ur+Tgb!#b_uwCV!C1tx(*p~{t*)kxLL%+ z2yWdlF@kF~CMK|ICMK{P3kz#zUI}FQmstaJRXf-iW(QEm9%?WX)HDbMmS>RwwQ?X# zU(jK_5N0HZ$;z=0*LT)>P1q&tOHYU5gkPAQrM62F=fb-4Vdf&kP!L1Ur#k zfH@W9I|xUR*@}sQfdj%3Vg?=MDFERJGhbz5V32@tM43T{YAQfDVqh5!2uGY*n3;jW z0K$=A2Ay?j0pUo3ISvqx6tg=s1A_+xr<12Y1KW{iMg|6`(_|qo06B?Wj@cLF4Tu&6 z=1hds6q$E0Ffc%!rULc>)M=VvjtoSP7MKHdr#6_Q!j)H=%fPM&=0F{-&m7Fez@Wob zP*TLeZoqt$0qz51=IKlf3{W4KFoT+eP#-`z9t^A;p!pzfP&BY|cr!6D@Gx2CIf`W02;DkU~C1+ zfD#!9!&fZKkzrwA5CJ=`732hvB!ejIAX5+zwiu6bPAm%pgIGQ&eKIgGfW|=(JXlMb zfeAd;Bnt8}NHYk-THlOw99bC{#9)W|h)sc-BsL$$SOsNB!VWT(0-an6@4UjM7C=QK z9^G&oVACNCFpW|mb0tA$g51Tx02)gGv&4BA7(j>-d5jPpT< z5Q>4k0ph|(m_Q++3KC`F{LjDu?>PGKFfeqpfdi29Gh+~kf(nO%njB*w^Jm6DgsN;F z1_sdG?{bU*Ow9}oa6@arK@S##2K#c5rx-u6fie~Y<8p8qWacq2E(c|Hfy}%d21c+F zND!<5sb&xbc^2eY5Jm(6=+HPZ*a?GT7r~Vo1B2LYC`0lYlz|xpt3mg|5*-A+JPZtd z?8F2C=sH;RAXtMG1d#mv5$q|DUqCm_Lutl2&p1H&xqyN3BPdWn!XinfX$*`XL5Tyz z1r1;@Fv4|ffJ>K8Fjg%*8pk%J00nZP*bCnq$h-ok^bxTJ`I z@hvD3fwU_krx=g`<2%O3oJffSkz8O22oeH#(hO)!n&=P!rJ1dqAWsG|Ppn`=%_(QW z65w0`&nd{s1d)ICLJ|+y2-LC(5g6fINHGKU1*nP3P>-#Q^59}%Pym%tjDd*45?n$t zfR99BWMc$3V?aTMH2uIh2Q<;hz{tUf93L>ZGtT+O#lWBou8KGqVKJhcmV&GSGYmm^d=z7z3C;GX^j)=!2ZZSOYU1#Dk6zGBD0*;$~nF0ohjr za~~wHz_}XW>bDlA8(!&w!Vb>)#)Fg^OSwRi7sN8LVhW2KV<5}K0uT+3GX_Xt@ZboH zH{7tm;DHAQ#P>YlMgz#{aNl$Df~TFQ3L9KF)(m8f^L=pMJQO155xnr7(gRf4BR@7JPZu19PT^}48|bs5R+O! zecEgu1_rQFaFdD;Y%_RSH~TG6DGqKvF+c>)fl@a_0AfHZ$N*3Zh8O_4MF81=OQ2+o zq@K$ZWI8C~!7WLM)7dA38b_cw0IP(U1QG(XplSj^F$fAXK5#MxU;ED91y%);0V_pn z7cwvkGOF?kb2IZv^M#5FG75+@FfgewaC6&nGxISpFpDuT^I36QbAz_~vOvW-7#LXj z8Mwh>Y#;^$1G_LIGaom%6}L4jqc8&l2QNe$tEaF9HvR!oqULlm1L3wa8I z6obkZ6wJtgK844?!tj|f05tKBq7a>fMI$2vbW|Im7Q0zk6k;(ByIzFZ5Ed4VSdGVU z8bmvSB+el0jv6LGqU0Yf2W#$id$7&d^MgN(718jK9-$SOc=kO#0;?HCHN7zfgijIm^E zW`<5ijPeX*C*iz~#X>A46;>gPVhP!mAT}cdbO|zu1Ho(z?F^j^N*Io1XZXw*h)qI( z0Y2jTnK4kwPzFOQE+a{>9jnqptPbU1C}b#Nz~&AT41t6Ng2Y}+W7fV19S|0lXklh( zuEz)>Eb6cbVbuz;2ti`abVTG5jM{_fN(MtG!Z8pQ){=(^U0AX^Mh^;J*Y8~0M?)&Mis=(2oh_G z!;+lHGaJJo>>-124uplpcf@MMD9N!jy+LMSR$&mU5hRw%38ayjdWdXqV{tu3`UW|I z7}sMs0!u>063~bMfUvMA0l5IPB!MVLkXQ-`qT}KXXaXN>6nHfSm<1wW)8!yG2*c*Y zL2M9)O>u+RAPk%G1+hUGHrohdgD^V(4@eLRqxWdh`Jl;QB;|;i9;hH}P6NutkcWwn z(xV|T8UlzAIKslfzyw;8%fQ0;n~#@)krBKy8nnDVD=$;OxF}gaxu~+BBwrsiO{t%e zpPQ;*keXAO2$o9COUX$sE{-oQNK8)EPs~dx%Fj&E%}dGFEiyDr)-TD=&q>Zm%*-p+ zPfRRI&M-64&B@FwtGp|~U^Gp|H11GKcQ zAip@XBEF=uAhlR8gMo#C0mfuyU`R?VPSwj`U}IoN%FKr_N-~O46H_4U(!9*#5)hji zWMolhUOL3c)S{w1kaF;pEbJ0@1_tI9Mn(|>CME_(Mg}C&E=ERu6*cB61${$9S94}A z1tu0W6`L3tRb&)Ym{lh*M<_6xD=_=m#L6owGVAFv2PrV?DS*f-1!h4nMJ0K8=4?G? zF$G0t1qJ3j8)hMpVkJ3d69wi{1!isq=43r}=1K)6MFZv(J!T#~<_ZN3MP_w9=12u* zbp_@~1tvx`%Re(P8Zd|JF>`w{^D8hHDyV^+s>Up812LY78BP5RMn+{>J!MRUN2G~ zAMHNes6)+Do^C&QjDllim$SMV9X&dG|1!f@y49i-X7#WyY7#Z0V zFrvAgiBVryQ4vGSZw5v$eUK(L1vY(UJB-NhM$(s@lV6<5kXM=;4@!g#9X-N*mq|}mlxO-94Qqz+2 zOY=(NOBj+0N=u4Cj)RyUAD@|5VrXQcP?}eqnVy%L!T@$7n1Bg^{R%4z5JkE^xDWt2 z-`6$7!`}sLe_m=i!~~EpL2|{ZB_PkGq!yPHgdqZq6$ zGp_^^WALzsn*efM64->~#GIU@#N=#Rv&7}CmqI5{CpqK*={`^vK{J??%oPI&c zBR#dGm>~&F!VQGPj=Nu|g0q5&o~443fuX5^p^>qIMnO?(QEE_S@E6pp<%uCTNNleN~1@VhZ5|gua3yShfQj<&ai*!NhDKA|?H!VLmvqU$o zC^0uxw;(?=uOzidK{u_qq$o4FL^m-fGqE@mtgJMzxID8YIYT!mKfeHEU}j!UW?rgp zPG)XqiLJ4Lfr4&YS!Qu&Qf5wONu_N@W=cwG9w;Qh873vaG$|()TppyQ#207em*%8E z(g?Ju0A=9 zRS*M9g&dNImR+9%9sk{G$ThgaPgjI`TQVO=X+LI-O+(^Gv3BjFUO0u*Y#-x$JoDs^g98 zj`wbY1H+f=@)gIc*Br0kaJ&g}rX%Ql29VvbGq%88M@K#b$H{C{Se@sw_+oJ^=-f)! z*+fwF0?zZ8oS^>q<^lzlD%}IodfQvU&A#hoNBm^oF(K3QwL1Iyfo)H6*sx(j@ zNlZZ#f|OXO%D@E;st`EeAqioz64_u-2?)xB7-Eph1IZweN@!V$CJL=+Aflk40cM3rR1Y%)=yVq-2TDQA!4wA_Ex?4N z9@QN1P6?<95DH=rrnnE-UkGt<*$dIaz{~*J84l$@DTq0k;-I>S2}wP;9EIv(hO9$} z@*ot%9Pmjy!zK%pea^f`TFD zV2XnjF@tMz5DOJEGk|x+pbCO_sew+jzz}9&W&oWsflVB|ARI%2nE|wR7(7efrSIg-QxaiyhpFhW0*T&2(_b5Y$RY z#^?%yL=k;2utJD6s1gt{XcrEPYr*|faBBsoFD(Tu2Jf?i#G#E8C=)CXZJ~gKz)dnp zC_6wX25CkH2GE%qP%Z=Pj8`c}1_s!9$sjq{8C@Xt$dfm)JHXJ@!_lKVNA?$ZuLlDI zI3AJh1=W`@^~mt67bFgHvjMbE z2&;)f;^1vUAjdE;z-vB`IA~W=Ak=)A8kjgN55UqAO#C_2d{~^q#9u?r0ksQ3R>8y% zL&af>l40VYv$H_zqCf`7+iqQByh$h|( z^%v~Sb(lG@v*a(MsfV2v4?4RLBn4A%2X+5TkRX!#m7wN>>Ti$~Og*gJ2i4!m;xnP< zz|K~OsRy+;LF#0o@-T7OS=?G^;_pC;85kJM(Zr>p;Q%}17G};*s5@cl5hgwfsy_}& z!^Bge{A?%<6aNS0w?Ju_cs-Oq5lX|vVLgL+XyU9;cdkYghn@Mn15JDq)cr@%#9=Gq zKxeIif&^yod8oSkP#Pu^|?@WurqpL;;?c@7ft@0qmId`Dy} z_Zw6_sJulkhsB}#KOg*fQbcCu0iG#{jsJ9rrkio?Tm>~agaHn^Z>%3 z@LGr@4vNQrQ2uf#4Kp8B-*1JAgUkWB2YOT=!%Z}C*qHejs5rjmXYKxvrxekflNO2fo|K>1ow8YXTC9SSpsio@)M;;7MoFa zkURfE`O;7tCSC+BBvjDES3|{h(ZruX#m%7NFneL{w}Xm<%m;-Vtp4>y5(l}*0XkF| z1Qmyw0}HoIG;vtC^`nWy>|Kr~4hy$EP;roZK;Z^D-3Jse$DraMdy(72&!FNU^&oeG z&SLV?t7WkH1m0|SE+ns_BtTpKD5b0_SM z9%HCD$b3*Z!_L69M-m6Qe-Si8dZ3Blf{F*CiTgr_Qp1qMkCsZ7!9yTr$0TlOuZ`4)xb2G;sxJ<+&Y69ONF* z!Kol~4k3wy%*lbOKMoa#*$W$A_zo2Z*$Xn~D72l%2rZvL>XApu6`|rF^&sOu=Eg!CJq}1i9-{IjW;zz#X;@_xd+xS z>Vt}d%!iFFfWmD9R2-xpGDj0nhMMn-CcYi2J_k*l2kNg{G;z?~ z1|WO;(8Qs|48vM9@r_V(_MwS`4psq~a~VziD%3sS(ZoHW;yloL0~QWtP;ro1APfpO zXwwqJMHy!Ui9?Nr&%nXd!^B}D_%Ly3wqtj#Z}SN!^T5l^*KyEOdQrfgNei3xL3bB`0t)7S*tp?TH1#m?xoG0Bb{F#9dZ6%!iNo%6f|(C%$Aaz* zK(-eqehkfgSpV@N4)L34;;`{Y*j<${dtu^l(A2~3wEBfZoC#WKKRowMk77{bI^pzS!Ae_`c@5DsxEG;vtH1sfNKnFABoMNvSIKEmS0#vjatx}DMkkHDmqxc5WpcWfhG>kA(o;vs0_u<(J6)5F3CHlAOBrXE(l!N%{=)z8JD z9yT72uKoZH^|0}NboHLE@kx9#}tu4Qc!qBo6DJ3gQr#L=%V2zo?^$ z!`kQiXyUN?4mOSrau2l24Nh`FNa{i2uy%Va4sp;i&mfI3b71MS08KqiyaG)e=KeMu z;(ci1F!#^IA-)hz95zk}n;(F=6Xa$PK8~gy*5A8?L;Mz+ILv(5JOjGQx9|J798TR@qd^(F!vuvQx6kAk0uUt|1BKikI=+n z?uX5{fb2z{mtlnt7Qn<|`3rJ$0|RJ-BY2G`OdN8F1410;Uu86NVB*O01t5E2{<1_< z4-0VCnZFN* z_%SqbnE9}IEtvVReDnrQJuIBR;}HLkCJqZ{E~N2lNAb-Kc*`VX? zuyA+)%0vtd41zesVe=g@^|1b+I+}WzxIUUVtQ}>AL)-~X9Jc=fHvb8;7wSxgR5bOl z_$t65UV$b)2Wn6=4)Ja@aaerK#38;AO&k_qYjB8fK@*4h7dC&3?%(TZ>S6wUghTul znmBA?!Vz~)(C>S5xbv&BI{4iks1 zGjT>U2NurWXyUN&48tLgJpTf656u0r`E8iJuyNf+G;=`v2|(`a!67~cO&pefmf#Ry zgC-6O=e;<@k>_hb?uUiLeKhqj@#kpbu>RwB9OD1c#9{p@F6aaVEPP<%LTKX9D^MAf zaENQ6iNnehQyk*9XyTwdvOwVvn3J2Jdf58cZD``K_=3$t!OVfBXW04(m^jS*M`-52`dM#rh<`;Bhs}>OLFcVt z=EKCf(8OWx7ey0?xnCAd9F`t5aEKeAiNpL0TlWET56r)zXzF3^Nk9{axhDfn9A-Xj zod~-5-Dv7z?Tu+@;;`_Uhb9i&x3CI__$D-QnEUsliNoA~6ipnKe_`uWVD5*NOE1vW z!_5DTCJrS9GLkwXzF3% zXmW4_Y$>syF|ksfW3r6Pl4>>S5x7XyP#U%is`KK@*3$Umu6K zIhr`k{jl|1F!#XLWksQ>hq*Hqhj=cUIL!SOIK&&!#9{95#vwi#O&sQa*g7we`$6lt zKw%HU+mO_Q#G%zO!$BP4C(*=V=EK%ofy_rA)Tj=I%ps9x%%V3N{+!{?B<{md3;(lo2F!#XLg`vBr1Wi56{CXVX?P%gK^I_}4 zK;|Q_A6tv09wZJc|99XJKY%6OJ$%F={u50c<{lR4dM=pxFmWC< zahQ8x>(^lFVc}qerrsEoco-NMY;lOYqKU)CZ31wJN1%zr+yh&`267MbI=5;h^&oLr z{I=l`??V%Z`3tt*4c+`LXzF3Aw94-tXv0)L%VKZaaem9Bo1u?fW=|;El3=il)&P!aWarNXgm-s z$iTn=EB`>^Fu#K2VDoYyaZo!DBnHCB>$O1T8%PX3`yI|vyAoU<|m^+Z;1tbo$7gj&O)WhsU zju%k;!pw(_M}pLY#9`(m#}`N(W*n4f~{i$sRxO}`Xk8k2oi^x z3mbQYsfU>h>&L^yVe9!}*zr0Vd)%s9UVv< z<{sGoO_(__{~kcI7nbf%poxQSVh8yLw*DPv4lF&tKvNHM{|7X2nEPS-Xkq5S+z&f) z2__D6KL^sfDUiQl?iWB4hq+$@O&sQa*uG4V`N-uwY=1dS99GVN?l1@W8zc@YuRv@N z_CPWpBo13&5r8C)TrWhRiNn%s0+KkW90QpR!Wn4duyU#ZNgP!EfYgF;1)4Z492$_s zLFEZZEeLm@iNn-SKoSS#Q;=E^o`EI~8-H7XBo0dFAhjTjyiN}!4l5s#*Xe=c5u_G` zcOaPq5{IcjfFzDwf1N-Rhqd2e`_w`41!`A=%m(2bNa{i2u=W6Ke=|rua((v#Nj*p$ zRt|qa5=X8Ff1ruO%&$WdM^0~3ki4qCxIKPCv#->%oxINivc+a(ZY- z5=V~r)kxyV@%tG`928$5H-NA_()uD$ynw_&H~~oh6!s~!PX&z%s~z}Sa}E%M-DgG{&$c#a=1ag zOEv}Szkr+wYbV1Dg4K60K8yybg|R_2$n798XmSDxfibcAL3>+3@k*|KP&*T3KQ8yf z%5|`#7#J{4>;s+uflWWGeu99h439F|dqL}dqI{yTl{Q}TK zd|>Ve*$*lw(Cwd#!~Qiy+7D{iW3#^ii~XP}0Cf8|;;>%?njv8IE-wFr(g`;EFJQ4B zG$e^`KWKgtTl@=v3}s+ofYr;m?B5T~Q|R$;0Ifh_`a$6jDtFQCzmCKI9Yop>x*Hs% z6y5$6Q2UY7ALx`gbo)W)#$fY5tP+B?GjRF;BM$!`fZ7l1=YjkWI*SF}e$f6TZ1(ej z3JciTw=m10b|G=W^&B?;e}LML?0--_hHk$C=n@Mo`Og4qKhzkwl_0y|9O(I7ATjjt z=YSrdgk1iB&T>Mx-wcQSB~bfe?JAg^AiH2}5N*f^DHG7`4}jW_?0-;Qhi<H)AI0|R^?A&l>i!~P7Y{jh#DDE>k10(AT1q4tCJe!|QI(J!F(qt{p0;Ufpl!wFp8g3936QJX2Aoqj%t}y#y;R-r;2;EGO zP8CpQV_;zT2rWlJVjzsJ7Igj*x)?~Es2GT3VE6&GAHoA&jS6Ey=w2M|-vMnP3aCNU zf!q&jPocYi5svWVg&y4r8xMh)f@wc!-y0}RqNl$Tbr2l^P|tzv2esSK?cavO{=ZQB zVf%p~reWH@5r_XJpaV1tph};CfdOPctgQty3l@JTaoEobJnnw?_dU! zWnh3tKZFCVYd{>39uWN!hyT-{`ax=tF-#v!40IkBNDM8RGh{&Z!^Rn4>S6we@j>Tc zfxL*GehQ!)b&;4r2`Yg7A6^oor(+%L5CO^Og=L+tYVOG*!h5g!L(kA0WAK2nNjO= zwZqE)&I}VldK07^ek%O`4>}feO1%`r&u{<#i!(Ab1fi?@@6347UWcLZb1=h7VFrc? z|AZNSevM{a`IVV@)fZ-lRmn^aKUpLkekL;uw%PIy2hA9j+4wHo#7)0zhFcv0&)Uq;!*sowLWB{pM z!&vx`l_6v+H^Y`CObkC27#c3IgVZW86g~i%ufkCHkcA$b67l@(l9X55(usx`t-H0|SFlgB-)oMNAUr4lMPP zD6t5bKVso9`^L-&IvQ`n17@*RiVO@Bn;05EO~)w@m_=7TWEKO5;{sNO zEe#Mi1~o`Q!eh_>|KcFMj~F;WO%)9NAHea=fFb_s|9^2%c&>r!XJo)s^YH(Fab^aF z2?|UNL7+6##M2Oz%)l`5i99qM85%Cl!K44;|Nr753=9(-7#f16FfmL7nE{G}$IK$D zmMB2X0ND$&gO!0{!UBedAduf5F^jGO+ruojYAFN5L{PZG+~CB}5Cqcy1gakt{?*`k zV3_j1nc*TR{r=--_$dO(Bc>0SMYR5LJNyKtk^jw*Jn@;Can(a+CM_ljho29ag~4H~ zz{s!##{R<0poL9eJrjfFoB#jCk?moYaM*d6fx+|vGc$%g%n}YiL3z}v#$oaUX2w;D z&^QI&@NA>=W$=qe_@h9DO~ zh^fy;h|m5=xtem>wv^=ktI z!NxX5s+%hQRFVlbMd0fOK>hE-py~*0V*oopa}p!8tI00F488*#>@s#i<^#+O z3>*-S5VI{S0|R6O8M`oZ3@ZZzWY-wGD03Mr1A_uYnHX3`1Hut!p2f<*U;yDrFt2B2 zV6cF2B*7d92uF(f94iBZ2Lq>*r#}PR5zry5P^ZZ`a21pkF|Zpj z?_z-az?fMM;R6$9P$vND0|>_hbVDNp1BVT0n>T3qk3oRL4Ri!7cvy$S9mHgSusuMU zIT%Tb;|mx#a=|KjyDP@<8+#g4hBOb`gjz z!W*BI#=udo&&0q0Ih~240wk^hQBw`}283M$n$@v@uxp!`85kTO?7D@_3=AF+cKvB) z28I9#y9s1w1aEw40Ru-1$YmM4@ufu!9IYVp3m|GbE;2JPlt9>>51APl%6a2+k{CF8 zKzb`6;{71?9T4^eP`plH-~$PPoWl=t9|J1~CfkBjs16(G9O9##rP{9divOfi7E>@0jEDQ{Mpn?UI?D@e2 zC?xseVagAZ1QQIb9H2r39Ce^_0-_qOkb#v0wACLh4JtVx(#SFE%*p^s4WP0FA`Q|F zG8ZHRvIta`KxDwK011KPn1Pj}2BZcg3Myj2Y8Y5K7Jvjnsz9X+SP+~}_@9D2&B_5f zJC>E>7N}4IUH1VV0b*PRGKBFrD+7Z#=rTpdWguTOK;)v7*cccXK?Jxv%oqi7AQF>- zl>?M|Ad0VnEM^3qzbc-@z<3R0jCgWx3IpRckPYIXVuul|MjTYmFkSS-`+}YZ9pPVC4Ww34+q{A~psFaDruK0M8IIsxyLY zV0_KSz#yGez`&@^2(nx{sWc7528B6z_7kd37Hp>mSdUz4Q4s^92_w|MJHY0sv4g^b zfpG`O6!HAh5(dT{AVVM?2dja&doQR+gK9ki)(YCy4f6d7u-42x2F4ShAQR8b%VA&y zD}m@d2~rKYWruMIm<_H+p#?u^7-h~xb_NCoaEvSg83vYDybr1mz)S`P(99Bu$v6kp z;Z%ALl>!aIF~E87;oV;Fc%h;OC@ev`7#J9iK*uE*=X~H|U{JDvN+~(Q7(OsYIFzB9 z1Y_jF80AogS`!-s1JlF;bx=xzS^z2eLB3&TtmR-}P!fYGR^o;-V5?mi76~&jXfg&e zwJ~Ti1~7ppo#2->z`Ow3(MyaYp^YL2`0eX(SL=XWtpjqg4#>4|%lCjS4`Jf?ugMt9 z2`&&oKG0+gV&X{AWDI09&}0l?1P!>r+`{lkm;rH_(05@51~X2O2Z9(4;MOvLA`7ko zREEJh+9C+oft5iA0~r_`L>L&RK#eldWDG=hO#o9HlBFP(`-oQgf@qaOTo8{Cw%vv( zm7u`Q0;>#R=3-^kWDI6%VbEj@0tG5GWQ`C(885=X0NN_5$ry_4^$>8vK#QAJP>MlT z6~JhUFbQNYXtSs$V+b=BJCeOdNHGeJks?qvp$IBjKrs)(u!&K|IkUJK7?d_cQ>@ZH z7~>R_p?3|$(0|0nzyQg6FbRZGm}aoNDp)-O0|QtKJm$+q7#Ki@XKFGAGJj?a0%e0{ z1_pQqy_gax>Q04Xp6-G#_#!3Zj)L40FS z;SXYfFwDh_mW+&`{ccL0(C|~ThcRHsb;H94rbjOXqy#Puu7E(1LWB`8wW?qv7?2Xd z6L2C3Vl>ob4CH8GfCWbY^F-+JFEHB~pveUyp@{4$SOhZ8DduBfP=a{?;U$<0(R=`! zoB{<3F@XS6OTY)sNIn3?C1|@9$O=XWMsUXm#AaYX)FN|CK_ZOKDA5bc!i;l%^MRr_ zGoOLc86LmjSpr69aI*xY86H3!qM+0o3`#?=!ib3@8}QKak(ijf!r zP(VY{EGRib3pSLZqXn!cgo&dCR3d=Nb#V0%z=&2eoCB*vs~JEpLaP}-6%1>VdCh5ThGK%04ipn6+en&bz!PIkW}X(N@`F`3lxjsJPC=#nXqU8 zB@9FcJP(h>nV^UPNkU?ACag&aiN#qk?eI{>2y%Gp0tLAyV-U;4iYY9hs$^mT8#KhB zY1$h{nzj^zrD<=pH0=#99pSd1n*z{m3Lt2cDOQ_8 zaoEHw4D(YcnoXeuZL-8_Qxp!H%HcLeq1hBg&?a*7t?FarY%RGfo>ft8Gca)QLbS1Z3WLrb z;S^(F=75>P#S7s;<+$NGxj{O4pgOrBI(earp+PLd!$DL~EQ z_7r9kXJAm&V>A>-QJ}=iUzi|(dcYqWQ3^J>}q0UV3L^VB*DO-#mxw^1mpm12$O+92V@8XgDy-5NKy|ZCd19Z zpwGnsve5wS7zqXjL#T(qp#m}r?ja+nhgcyVGDddMHYae%o9HpvOM;^VRXYQNsU9O% z8IW7d5CIJeDRa0|%s{n(Duo8BB{Wu`Tq_f#xVA=eAJ}m=P+5@sB^VfNQLV87N17d6 zkX2n0B4iI5opFG8OkL7M(ngYj!4bj*C%Qi$Leay&*+W}=@sZl|N z0A_=RXoXON;S?p629~A?$aUCiCL$Uv7==;(Mk9uYK&~az z=NQEu$Slk_hB_KfVTp6N9F&1Y33juwD8v!FnC>E4A=FWD3Pi@%q*Eq_iLjHfpg{?)1u?|nl28Vg00+4rGr2(3!ztq8 z7mF&m2~Y+WB_J1Ih9FcuoWkOCEJFq$v&ixdNaLs@K%q_hkN{n72w6-BTTcM87qOZV z!b2=sgz;f35Mg}uF)!H4CYU^IDG!Vfn@WfA!7Hs{94wpr;q&KEHLwL0P%ZP4hif&#?wr-K3VX}Tnetu4JMq*}Ov3_D=QF4Zv ziEd72UTK9cOr?pQrG7zCYEo%tPKiE5s=~r7-poWlCo@SuJvkY>K7EkB%)I2B(v(zE z-Bgg1Sdx}slv@mUu92ZW$Z@)fMY(1s`lZE1`m{G%Ke0GhH$62kwJ0;0hCa|Qt}KS{ zaf13vAGD>ZxHyM_0leWk8MIHixFjVdHBB#rfr){kxFjVruS73{fti7!Aip@XBEF=u zAhlR819V^!jLFKtkd#=Qs+YmQ#=wx2nGa!rw1SwR?H(CLsfj5N;iOWK(QFJ1sYOK) zk>Zk~%)E4n9jQe{c~DIZ44ja%5wsO)F(V@*6BFn*DkQKF;^*g*~ytqw`HzSU^XdHVs=$9X14WW-dC@{e2zhZxp1B$ zv%7*)Br~U;qLMswwgR(=f|8svbDjb-x0gP%rGln6bFiMGt(u*ZBJ1EY-=Gp8Oij~>WKHU&0)V|_*DT(7eE z`tpkM%FMi8%%ytF+zQNvdVa?G81~IzWVF$T>NHTX!*J>;u)Rtc?m3S`{0a{7n@HkG z>8T~f40)xw@#RICC8^+a9}h~N48ecx&oL$@i(ZvV2F<|25o*sGQ!Ud&Iu0oVTjL9ODj$-VJOZhElJ5Q&tm|4 z6Be2-!Hx{cIr+t@U?(wvf-$~?A-}XF9&9>HnX_krhiednyI-h+vx149rGk-xp{aqP zk+FhCK~ZW^YEEimajK?*Zf;U$eqLs>f^Ke3W=Tm-s%~mtN@il7f^KeNQl@QAftiVd zZn}c5zmbA&T0v&Af^J$`XJw%`CAsHZV}oO)JYR&P>Y8$tu)_G%iV}vj)S{yNB8V(FmXg56F*pZB288&>7p0~p=a=S{ASD>rumFa5aQuPt zPHJK2~2=<52)gRC`~I$1*Of*oK%Li z;?&e^h9t0NkZ-}xfu{zrd*Ft;`nh}hxx%^rPF~=2#E_R-Q4$Z@2L#g>8tfXxkXDkK zlLM-w;)_cd;^VVZi}F%)K#3H|TYmn2t_*NP_R&Zo6ob4FwX9$k2#Dap;O!i24z~)#vw+w6h_;(P zDC+f+!RiuIQXuY*Pf09E1m(UQu<>6A`6dNB8FPc(PLAk9G9AS`vM~OF3GD3ac7#S8*vp`x1(oDs#&9lZLveh3F=+1_tVo8-g?hr79^Ni) z3~7*z0rR(0s2c;cLIArzKP@dDRN{dm6Yeu`3})t}#)DH-JUEb2@=KF)QW@g&K(>O* zQBYzB1q&j$08Vyp^cV5yK}l;)8Ki-DGgF@Scqf(U505Ol63hzlP6apV(loXj+j z(VOeuWk)^+M{bYH_Z;~cKx$y~<>0QWBVT~iWUeWk&hyx&a!g~-;<|F#@!C~KkXlD> z$XTkOmGK~R!ChHLJ_V=AEK`{0F}ZNvbG!mE+nej2e zm8QpoiW3Gs2s<$;sVKD!MLH)x8HJx%l$e*ET8tuwMF`aFftd>0Kc<(QpPQSSSHhr| zmtT^q=k6D(3$EOt=A>rCgIib7T#iYBk~j;)$N!izpe^|zSxgybP_GtKn1LD8!^J8N z+5?U%0U4~r6bGHozy#_TLzP3+K{(8?gF7KyFbR=|?mq^LKnT!|JSHUd;IbAX#lQ@^ zz#Ga3Q4n)L`{qDA1eRj}4d)=l!DTU2nwbG~LK>6s87rZ{M$2NRNda9Iwuo0$Q0nk3xOf(F~vbDm>EE)kb+nU3{j6M4pPC)06H}k#6n<* zdQ5SU3TDWzeGn6lA?oGfd}IbQ1Ly>AWD(e~IHovA6*FWLF^CDrkojHk=3%%PhyiMw zFe0f(o>gLI0G);jQiZ?}b1=n0Dwr`&as-Kj${$d!fv}NDW(LsS7i19#o0$Q==M^FV zC7BUBv!NmoikU$l!ayUL!6#~>34%t@7+^O!A><(bGJzabf)EC?m>EE=6EG8nU}ga2 zViX~UB&0SZvP>op@oF66prb)yZBb-%+Hj}`-Q9vsJ?H>4Y~rAGhS1A`D!xdd+0F)%RjF(TUh z$l)vwR*xuuVCt2?;)rqv+*So`#K&QdISz4qusMkG2UgyCfyEK!49wmbusEVTfr;mX z#S!HOOuQK^jwl~s;^6TGy<`TJ3NQ=Y@C3I&!L3a&3*5v6v%u|2FbmW=gJ=M^Ai-kb zMj3-j3bZ!~X)qSRI^oEj^Yqfhq7>+W3%Cyl8G3+@C!!3LfVy(v9wzD#0$Rr$*>FhD zAM8}na7$_)17vgnHiiRnCa8%CaUr;02yMrLM8Vz#F`%tj5EI^Xg>v8np-?_-91|2Q zh-N8B5^Ni)5PI_zqzt)D3Ql&gGrXl485lryI#>{C<2ooEfj2cmB^01E=b%hZDMb*j>>e_4ZJ;APSU^Kr~1kQa6Ek3=FXT9!MOPW<%TEIWX}OsQDmsklh2jD+y)}>`eL^sCt+M;3=lGl1L)8WV%@VLeBXJCVgf z{XUQykU4%J1{4z`j$95Py9aa+3)C3+Q41jRA#Fd1408DULxjL2sGSUAfZPviZNkD6 zcJ~a({mA05cmbJ@9L})SSTJ*7VG6sO872-(pRhH|FmYJ=gx&cEvlnI#EPi3)FmphM z^?}?E6Ni~I1tbVfpUCMPbY}`k3gmv|rIesU8e!td{(1lsgqnja4m+D4WDYEBK}wP1 z5jkFv(;ITUz|scD9OQUGHiy)7LX3J?xei+V0gB%QkmHfsq#$ubYmk8f=6;Yka_<;c zzk$SIZUz|zOGhAac0ubcn44kZpP?BP))Iz^gYM)3nGb8hg2X`w-oU~K)m8|ofd8wRExcIOBzt-{1%c^;OQVB%rW0DvuKhKWys z23{1%G065p-2*!x7p6V~YECYi`bAK4VEGiLo)hYR&@pr%Eimy0=+SVX{u;74=#CT+ zAJkt1(J=MdQ1fB=5hi{ZD!v$`7|H$IQ1@>`6Mqe@xAvlm!%pLa-Mt1g|14DfWi<7m z^B+M%u>1~F-w$=qTaYA@dwikdztF_Bpy9v{4JVj6kx+FaXyU7&>J`z%p~@Nb(8NJ^ zo`B@6(ZoN41Q{3@V0Vqe>|G0WXDFKbeyDoT9V{RwOg#%UoU75)|Ad;;fhG<w)2~*z+RUeI}-WO^Iu1lCWEWN_UiDBaYP;+2+TEfI@L6$NwFx)|N z=X$97VRu);)cZl>Q`4aGFmZmUe{;~puS5AoP#UHld`vIsPB=7i&~ikO`E_XG%c1G71x@?} z)csv(;ttUGnt&#*4Rz-(In6L*26lO?)-f z-d$+oW>E7FpoxRdAO?lcF*I@5-Lluv#Ji#9+(r{Ogu3$?n)oHC`Ug<=!s2TRRQ(?` z@e@$>JWv{@o*SxO98DZ@rY8e~CYrbcRQ+N!@oFglG?a#!{}`(N4VpM?96$g%g$7fv z0Cl%Inz$M?{1ef{nV{xpL&ZVuRj3i5;AiN8ii6BY9;KfK6$hzDZr^T%io?`{?)n57 zv<*od)Gh^yf$)ALagg~3L4u%zjG^K%^I`p|>qz3r?eI@fahScJI|4yQ{YDeN3e8_E zP)Ebm>q659FPeBTG%&=_#5Y03<xR^ z4s*{YsQNfG@fT3>WT-gI9N1mDb!g(S@u}%hahUmXQ2qia4HI{S@>fD>n0OkLzX?ji z#JiyU?NA!#9+nwGzQS3Y4Er%tUoM_Bo0y!x)A}S zQWr@aWIn8%u|*OGsfUdZW}}J2?mBNk5(k+B8{e3WCJt-wEkhHB<@c>f;vjor?ZU@s z;;?q%S0r)d{<{E3GqfKB%8wVJ0VjzjZVU}aB{cEfP;nz9aZou18yB!f5(k-Y0Ck58 zns_Eu+!sw8=FcD`ab)wOk;Fmfzk`~S3Ka+C3y^&Hp;;`_Xk0cHoTL8uTE~q#x zp9(_xhoLk~d_9zZ21>)kRiFbHSJA}VpyIcn;vjc|?1hcTeTIs|%y|S=54j-(l5UaJ zD?#O9=D_;x{%GQ`JI$-m#9`wyOVPw(>qa(1#X;@?^;1B1b%4TWA5VdlWf2T`az%pB0!)F6B1(8RAo`RY&_rk)oR`JnL}s5rX$ z&S>JW@w*79ILsV3s5yyf;+atKEHv?6sCYh99A+=f{1&J<%=`^d^_@_0n0i>eY(^6Y zttSM9!&xM8~m!al=L=)$MF0uKACLRG5XNBqmxd&uEtlX1=io?ub0#&b! zCVmSlu7f771~teKDvoYGEWBan$3xY7qp640gC$ULka|%1RE4%f>Y?Hw^T9W0fC7zy zfngF<9Hu@CDn1t~4pI*bW02H-s5nSHC_Ohp-E#y<9AqzSeB?ZmI7t0&sQN2VahUnA zdgl*R9ArMooI}uhiX9q$AoZZNVIa4FuqIR-q#k5GJE$;VU|`Tg5(k+BtFJAQ#6jvE zpz7_A#6jvOKQhIByo_vN1^tvLlOs>59>$lKoSS3_l4f^dmK&tHB|fzk~qj5SoqwAio@IqE6ct? z#X;@_nePr=8ulMe{3%qN1scyVb70{kk0uUFw>oIzu=2qYO&nGZ#G;AA=4o2d#9`yG zvyjA*+Z$`q#9{4?18Cx~`tdxHI4BU zI#e8_9%TN0sQEca;>hkPM-m6A{{dBB0~Lpv4|C5Fs5r=ckU8zpe&~9rI7mG#4}sis z5h@N+4>I2cd{Gkv!!;yvkU6mMd59zqQeO*I{|qV)Gau$2K4|_1nGZ4tcBj20R2-xp ze$@yA1A{eG9Hbs({z<6$4oKo4b71cAMiK|92OT>M@>c*<9A-YuJrz)Kkoh2U9H8OT z3Ka*bhm|EDbNZm-F!dLp>KCJlt3$>2qKSt>#UG=I|AnTLA86uBp!pGUlNqGH4|3-} zsJIR^Kf&AsDw{y=bVL)6g{n_L6X%82@5N~1`=RcvKof_JV@yXAhqVdTpo#B0F!eBT*n9;{99B=k=A+QXVe1EA;;{bpY&3ge;;?y1n0nay71($i zOdOW)PNJCu3!f`E#P6Vq!@>tP-VZY$=HK^d>S6wcjoX3LL%W7xm9TMZm^jQ|ve0%M zy0|KuILyDW^>Q%vFmcd2Jdi~&aah078OYjTz#Gj#wgN~~KY59ml{3n_?EFG{w%XL_I!o*>F&0ylN^Z}c1MHiPxGsgyMpB4^r zBQ$XbsCru*;;v}ou=Sm=b$~GUz{Fwe0Ab=GQ1g?~%z=q#qlrgD)tBKAuR|060#)CM zLwq8d_z$Rh*t$NLJ7MBW(A393`Rk!HOg&6|JDNCbJPS5xr`FEH&ES-m;nFAA#LlcLk z|4cM-Sb8o*6Nj}YYS6@C=@vFW4s#DI9rmNChlx)|6NjbG#W=)Qqlv@P=QbST`_RN; z=@4}H5GcH1?u3b7K~oP)hxc)aKSvXXrNgf{#Q&m+!_p_@R(Hs_I;edG6BhtAvZ3u& zkT@)T%HR+OU4)G6FIYO%M^g_IH%AkPtN?xW_Iu^{{oA$8d;)Zg&Pb8DG;vsaQXPl5 zKAJdeU9vR}aag|-<{nr%;D@FjCJtL?3R4f8=Y_4WL>JFOGY6JWOL2(TqKOAU%jZrU z;uF!tVfl9s4)G;u;;?zo4LHPipozos*AX1zXVAnCL)$U1^$W1@fu-m7XzF40!Y?#& zSo&mwu2X=S151azXyUN+CW>uKRO-Ug-~W579=1Lewmt=2y(bR!uyrfw>ho}@hplHpS3e1ddf0jvn0nYcmaRC{!`2;u)I+Dj zz$yJEl6sIhbl8pI2@df$XyULj;$Jw#nV{;Kd;>iY5-5ABU}vfSCh! zJZKykO+C#0ZaBpK(8OWxkHI0Hf+h|tm-2Clm!pZp#*3P8hG~ewaAu3VDzc zm^jS8uyrmlaag=q;4sG-hqyPIILv(5dKsAcuyMsgH1)9ft-&GQf+h}&-$^*cXQ7G1 z+yh&u19J~7UiPA?hvlymIK(fYiNnl?t?PlA51W_#hNd3oe%Lx4kb3CU87P_EyE#R zhb9i2FYd%4J`qhEcHRqYeG|<6;J{>HVAzhP9u{tgaEPBm6NiQ84IJVR(8OWmmA-4Q6>Vg7}!+k%+`^REt?dYFIBafsWaiNpNsi$gpVO&sRV z1RUZSXyP#U!`7F<+z;F9*oUSbmXBuQ5MPKU4ojbF(8OWsa0{9^tlhgGhxl)l}Phpmfyg{B^sp1)MZiXffnchS_t-18ELIBb0y%p90|VC(o`;xPA!f*OU;avKznF!w0n5Z6ExhnWvs zZw50TR-gKzsfXnk*t$P-^@TXp!`1_$tDlNPJ#0N7Og(J<&kh{wVe9)q>Ot%DKxqer zZzHJ(iNn^VJi{UW4ow_pFKnG4y7?l|bx<&ISiH#N5LZVNR|h$gfq}sYhqx7*ILtk; z^@%Whp~f&Ips9zAgJt6oFGdrGwbNkh*v4lsfW2|I}Y*v zXyPz?Ve2T-&3}ZZ9v1#@afp9K6NiOA_>fF!J_4l^m^cU2BQSem?t!h}go#6yG3Y@V zFmYIVLtf7YG9M=Hh^8K9K5V@w%p6#~nT|s}Y&|AOJo?KOKa8dx%4IkQWx&)!xeV8!4462~Jr8k+zeE#xGnXyP#Uq~Q?HLlcL&2e$qc-91y#)Wgh2 zUXO&!UOL!V|V08D=jm96qC| zhqeFz;SgtouDgSo18e6CqKU)YiM(DBl&)a&3o2;pVd6Sy;xPBa)l_Y zpozo6(+h`q5SlnFd|>OiLGDLh2VRP#9wZJ6hXx$t9cbdP@q{Tj#OI)i!`geWb>ism zIe?}f=AP3y#4n?X!_0@RH;0)I%B!IK^%G4!Y~3sibR8*7JxrVjO&m7vB#uK|9!(tP z9@u(wkomAW6XYJ)`c;@X%)h=!=77}0#6!`+wPEL0-3i5lKBr9A^F<9O6&V#9`*c*6*X6&jmFQCJytj zC=PL1G;t`GK?BNwnFHlA7(f{?ahQ9c)6w94_pmdpK=BK+AEX|-6apm704r}m;?Sux zusE!K28lz5RKen~asng{9YO$$!`3f@#Gy@HusCeI5F`#Q(!k=d@jQ??)GJ_d&^f~( z21p#XW*@|d&G&-DLH#?B7zo482?U9Q+W#Oi5Z(YHp#3A5A3;K}eM=zqpn3!(2Ewp; zc#t?OEJ5P1b%h{tP&oh+17TRZ2_z26FCZ~6hOUDEiG$J=SPY2(iG#u!<_8cPBn=aX zjYlEJ7f21P{(`MfhpC5!J92!1;swTs)dL{)AaU5Z8G1az;tAG{fT@Sg%fRG8;>hU- zCJz$_xfSFe$X_6{K^V3l4rD$^ z9Ogdcbb_2dVe2wL>OtbLabx84gPd+*_nLszgT!Iuipc2-IX%PLO(69kaagz`r#Iwu z4qG<_QV$Y`4r?34^ z=@ujg!qG_UT0!X(BnHAYNaCP$2oeL~#Yp0y^ac_G;Uh@mpmYTi1K~SJ;-K^c5(DAy zNaCP$0ulpZZuyaH~;>h6- z%SRw_JCHbX_`}j6NF3%Dkh@c$=^rGH9R3YR;>h6-+iwC=j~xE6 z^Hf0M$l(uLZv_%Z4u9Br&LDB*@YjK+XOK8@_=DU^2?otufxHB3pTNw5l@BmJj0UNN zu|YIwzZ^&mnv6k0U`(uj&^R|JeUPgkR4;?<$K`&I*p`e5}m#5PR(QyCy)=>BJb9?%JE?||$FE$uUWMF_T_k~%*a06;TEF54GAiu)cAi4^N{RU9`VeJu+{h;y&-G0!y#@PH1TgMM8 zuRwNzFuMJqb3Z|1=>9(dwIA94pea{$`&Z)d{~eH_43P8*vKNM-!Z0oa=sX#a7`pu* zp!UPk8OZ;jsV8*%_v5f1w!R+L&VgA7vJ1ur(YtVjKL_-{Tx9=)%5QZ0ui~&@1C&{y z_veA^fnjv}LG3k=7`p#0p!OsCA2gJQZa-)}FShviA=3V5IQ$=g#eUFG1iJm8dKsJj z1yK88?K)ik2gzgee+Jb44IslAAZIs&>O*w6mp=(m`;p@xRM(-~?}Nks z3q;xvT7M046T1H^u-Ff}l?C1YEFAWKA=3U-9R8nx#eUH3FX;An;;>%=R9O&_|3K%X zV)OqBEcS!i3h4HO&Ibe~QD|`wi&h2)sQsY&4K4`3-wYu#ABX=BK<$V1|3K*vbgLD* z{oA4bM?Ui$WcmcC{jmNrNDPEw`ay06@j?5BVQdf|j-d)8K$#vc$N=lk!9|YYaDPKA zM2P?>(LnPrsGSHk7Jh#Gb*TFxsu5%aR9`b%z@oeL6%PHkp^aNVP@#b^7Q_8dakzg1 zsA6VdULZr1T3bmlSc>ztak${|P8_L6~3?-F_Jy z_FJq2D`$Z9S3v#;%}Jp9Ul(dWte%GGVqlmHo%nnWEr(#@F#BP&1rGfk(92CgX%?mz zM8ovKXh*1ikQ_2z2i1=(24chXf!H7%2GtMk9)X0wcmq^F?EV_CAX50l_<=aWZ^wFw z3gqwutzAbCKTw+nEsKFQet=edu={Pmg3z`Oj18he{y}#;NIU>~DT)KsLQr-9jWt5K z@ca*IQ)9D#0`ww-$sh|r20}3!mmwpyBBeC9Krdfk0SpYlB!qylA*7j!30Tn3!q5Q1 zO5mz@^>JeYHDKUoZ^tMfKvEV+l_P}dz#zpS&hY;*)5V|J%qt}s7$*E$%sBCTGSkZM z%uK8PX*2v(Vs`lXHJWkd=U|4Fzl&K`#@92fjIU=}8DG!1@+&jrDn|x~pAXC#em4Eb;byR` zmt!bYmT|eP$m1}{IV0J^F(c99aWa$T!*nLg2OJC`^>z$}Nem4^54adY9x}^-a`Kb| z96!t#WK~-@3OoE{YG4QqmUq~x$igtu+1a?;NroY~n2kX&zJjsPQJCT9LDq(#V0ng} z3=YW%06BHOM88{h2s@WMP)-#L0cHm+NabR}%S^WFIsiU^TP9}y1(CUIIAhQoM zF-!!>Db++=R*ea`tYYJFSy6@|*i**kvOAB%q!ltQmzVK4OzM?!x!lU*FiA(o<+2Ko z!=&ttObd`(vog{xoERH|GBYwP(lc@`GBVOE(lSylQZsTak~2~)UMDkIzDj4Ze3{K; z`68dm@_8|n<+E}o%cs>$mXGV1ET^b5SWZ!90F{1I6c~S)gZv3{&xZg1#hVx!f1UaNLSUNE^1Vtn>SSqwQ zfQChaiWwM86+rRy|G)Ty!^}pYczZCLVP^w>L(qd_ zCd*Qg9J8?27KVnPm5dA_0t^fy@-_^Gi-e{~f&2vW3j+hglm|cmn>)xm>||hJ5Ok1d z*a=dzf`K7KUWTEt@!$UtkiWnD|1X}*#vs_j-w@=?%-sFJ+~H>u7lWXqGQ-4RXXEY^ zB?e0u#)hC2P+T)GOmX=B-yGz&o&W!XYEV!&lfl5y$k@cx%-q5KC%QLHhwnQ>9f(s5NCUCcc z39<{4g@qM##X3Zp2I#gf2-6DG=z=gE%0Xw-Lac+?0kMje19a6R)Lb?WuyU5e#~BzP zm+c0y@-v4+&lqB06<`Lpqrh%p6=arVVqgGymVtp)hLlU0sc2jq5$eg$UGy%JETDKf8RfICeE>;tING{GDhh#oC42kK63Fh_+e zuQZo|RS(R8I$EC@bhL^NS3yY;1FHcusNW3rfiW}aFcYW`OqfA6G1LbTjt2uP2k00V zZcu=;a)3^5;bGzcw+lcnXJAX|1z%Rmz`(%z6y$zZ4nHOa23}Be3uH1Mm;glpA1L7Y zz$}m?ABbRJ2BZ#bEgvWV7+5*3fYg9QL9qx{!@$b%10)F22#P?kAlNcK@F6s; z9K6g746GbR%nS_Npy6TAum*zxqeC4t1A{Bgn^)%RL#LK*AiLYMO!38I;Cl z1o9XdT|l9%01EK1_lN}$U+`Q55|4W3=E?Ar6mlE9w2XvCNVI2 zG%+wh778$Wo&(1L0|P`qhzHg$z`zaC2+I2mjD8@a8Q+2oN@8I21L=lbP0Sb$@;W2v z(h1Szk_raKa1ayRHe?J3T{$6|lbXlC7y)vvWF`Y+B$$y@n#RBw<;%jrAeqC!7!7hh z11pC)I8;FAVQ_;i0DC8vg@FO=98RcxQ^5AkU}0c@*f#}aA9y^RaT-VzWZ-m=fs$ZL zX3Pa8Gj5Oo*u1qc^H?BPA2V(RnFq>8Ap8c}kYSv2oSlI|1{@Vz!BN4$0J-{@aVyAE zAhj}Jk8K6{2gC*URv5Q}ECO-mz=5$1Ipc>>s@eDHzL^BqyWMyDbSPIpyFbm26o1?sr znSp^5Dgsh14?ATA!~tQ(=2IZ;uuBmbFwIZrWFx_R4CiHdP^3Mxog(d7$4Jl)AF%-? z0?;wEs*Hh5Jq!$R@n`G|4Byxo7*rX9m^l9<#6jwX*}>wBR_K~Qk_J#o6R0G-Zvm22 zWej3;0!e^(N~?oXJ}72jm~l7LPEeA`g{A;-#41%lc}mSthH?)J0|V2<47g)KMlS~2 z3-$z>m4QrP+u##5Y@jLuRB$n{R)BH_$g7a@ONEJn0bGbNfM;)5JsCmrAoUP=P|D{6 z5zsrW83h?t`GmQd`K0+m#RVA!#2FZvR2aCq?YNow7#Ntv7?}C2xUIQ8g&7!FpyC`1 z46OVN++Z;_5QBk%U6_%XkDJ?y+nSY8n1O+V7ov^TQ`mx=fq_$uftdql3KuVg1C`@e zV*r`W1M)DhD5JWhr!dF_K31?WKiphykf;DuFE_+oL8vuQt`H+5M6<9WgQu`QHv@x+ z9wWs0>XHgz14LONmV@0cW&&{~x2LcS9|MCpLb0bXM7abjTm=JzqzRHE<6cCP{} zgP|};p&~b9s5k?Ik_nWr3}#3$FsO7kF)|7=8iGSjwX2Ddfk|SblLP~U8cc$LK^@uH zZBAg5H9DIZ89@3N7&K9xZv%F>7F>`O6ekctZ9N8%N7W@wByB*0tgu86qZt`MEjkzv zOtUb2W()vb?hWSQA{ZHv?^Xn>Vq^eK`GA=)0%TSohFL@_gc$>)85xi-k_3w~GQiHQ z1am^77ObiT644`w2Sr~uw@iH(nf`_m{^H5oNnfk>=$@C9vUSem1Px8K(vesm^3nE zuJi)2*lgGgn7O^=6&0=Y^_d0q^qCkL7#U$fj!1O+ut}L@hTPPWjQkXaq|E&I%)GSx z_~ax|Oe9s7q%ss|G8M2Irv2fDr%qqSUnH z{L;LV_!5Ssg3^*=hMfGobOkU0vL9rIuWN{hzY9bHB$kp|TvC)@$&i;?Q4$ZzNFXm1 zmoTJd=4BRVFeDeHCYGdPj)>2R1%FK_4L~ML9INCrnaPg3!FG?*b zssu$*aef{{N@7VO12lG$lj0ML(jftiVj9>-peTSC0P`t0W}yj*At^nzq?nBLhQI(Da0YMnO?(QEE_S@E6pp<%uCS)Cr%K*xFj(-TeqMnza%xeB)>=(lv4826?D_`b2CeH(~1&vQ*{gS zGxJJPixhOzic5+zlS_0Hb21Z)Gr`JA^NPzeOOi8mbMo^GKn7;!gHtTW|r6* z8yG0)rj=zDXC`IlWR_IgW@M(Mq~z5T#3Tm2;*uf=odIK&q*jzL=z$ZAUQ%%}gI-Z;PNE)2R1cIkUjG#EiNfy z&`ZwG%>@-RdU^RJse0~yp}OFRfSR3}5f6@dkT-E*(0mvR!^i*FuQINtPoL?9iz$2oteOCz83=FoQ={aNpDBB%}IA~Z2 zn>nx|Krfj=rGh~v1;hszR(i&k=4L1bDRSwNUYb~x0+xl8yr6srEv%81feRV1%V7N- zb4KXw5m=Og0oE%A?V*8gX9UZ@)*cJPW-h^^3=E)=V-QmmO&q%9i9wo?0W#eKQpCW( zzyr!S3=Cj#SXl&;0_k+f~L0Zw(w?Mjo zVD})K54-aUT|MmX1CTiK@FpyWf$sW&LSbl?vLsT;`z)~no zycp^qm|Y-oP#QOYnxhKU2oeWRK0^7Ro-K$85(n9P7Q|s-U@(NzFmdoOKLZ1U9h$fv z)O=So@gS&sV0#2%=D^m*!G<1S;;=gj;?T^2-Bkk{dW5M5tt|p6g^km|#P37xh3yT5 zi6?;+GcYi~?f`^|mqEq*pfpU}6KW3Z4j`EL7O1*KP#Pv~1XT}O8xN9#iG%Vlh`$X) zfYv22GJs333sCiY(Zmly`LMlyFmpaZ)q~cagOtF;Z$ZT$fdrAv=Y@*H?goOX2Q91s zDFv;;2GKC_c&K_#C=C;bF3DpMLlaMd#=A0_IBe}2Y|kCcoUb6u7#J9A(bQjqihH4n zgVqRxq>|CZVRsga;P{+J;?pAbk&9=4l+j= znm%B6Qh?Nh#H*p=Q;^gnn=>CO4zd@#P7UNp1_p+8Na7$SY%ljV5C>WggUo^Lbw7$E z4zl+;)ZX(@agg~SCaisP9mGL0=K$2+XGr28a~z@R;60jnEmZsqk~qjcFmwJx#X0SKmmz^l)(0&ib2Ie;RZ4XR*$P9iG$p;0BWxun)n^4xG|DAvN?88age>p?(szu z2e}7!7g#7%9OfQaeUO4A4ss78ND~7CLoS-QEmXV+NgU)Jm^rmjadh|eAc=#FfZY)` z1u7165A4pi#Yo~H_auQdF)%Q|_6mX2gT!Y-#Wy0U2e}7k&K{^Zx_gcziGz%Q?LEAY zCJx(U{~b+y0W@EWKm#3QKFA!Hy@qJw8qoY0fF=&B_amU9`(EJQeDn9;i6X{T)zuEzjG7Dhbo7Q!`iQ)eSRP{F!#g6LHoau#bNG*)ekWB zAT=P2d>1FkUy!xy3=FXH9;O~94x3|yi64Qc2jsgrLFT~3VM`TY>S1?nAm7CaQV$bH zzKati4r@2U_Rho1fr-QRzQV*|{)N?hFmaGyK^WGqhKa+bFOl!!1lbD{N4|>_B>n>G zU)ULAFmqtyu)DKh;xK=`0$C2)8v#8-04DwkO&sQaSUn6g2daz#)Q<(RVdAiOhn27B z;>c%QfZPu=A67rZ)Pu(GK<4^E{Rb0=`708Kcp{oO%wPF9#LLmdVeWyo3t;xb+=F~q zCdmD;bcK9ZCbBs4U6~+pn0t1k*$Wdtj3y3CSLbkuUqcgzxgXYkL3cmQ9+>zWsD5^6 zxq>dvk0uVglTj9jxGI`B%syCq9%epF+!{?i%>A(T6ihuV{NvEn!^Uf1?RS`Zn0OJI zdRTk77EK)Ho>nw*7bt%Ml!lq_1Le%4_o~U z6NkBH8k)VZ{Js!P9Oj;tXyUN+vjt5YmVWl2iNn$ltbGl04{Y4#KAL*i-Mg=Fh<`#8 zhuxXQ2yM^8%!i4?`kOFuSie;YO+74}mC(dt;}WoTJ5rq#6b=>Xt{=bXCg=mEPuh; zd!=xQE1`*(K-KHw5I02=KLb_ofI}R#X91L6 zVD5y~6R>^;OdMt}tX~Ne2W>n8>90gHe*x6qMl|saP;sa*_^d_bSu#)`1Y{n}d=MKM z!^C0jd-VPVth_}x2Ugy~=2l?lz|sk990ev0EB|5R?lAEZsAFLL37B{dR25@`7k z+4Tvz0~cg|4OARfU%}MF+zBg3VdAjy9N2sTOdM9Pf#&Cs-ID+{ANh4V#9{RvY|lMR9OljrH1#ldPCyff zxf6Ew1I(Nps5;m<4NM&7&J|F3n0ODA4;#OMiNo9pYrn(9Vd(@m9|aSK*$bP$fQiH6 z{Q=Y-m^jQ{SpO0xJ_V`{HVy<6hm|w1b~H>JR$su*l!J-G>I>MNmN4-L(DD;D&j}L; z#UTiT&UygRFmYJ_s1E8bm^erc2*c*JL1)&1(iKRI8W=Q=1F{lU&cn=vm76d=j0UNN zu|YIw?-xi6+8hN5fibcADLu0eG#?DIAD8=K;R<#X^n5888$^TVnL$lIboUy7JO(;* z1!On_1Ne*xkUCgB2CJW(L2U}qcsR%~By0c;5ZL$*ObS-t!T6vh<4`MLLSPy;zr_Qy z5G;y$z6$7Q3y{0e-QNJ+d+`D~nGbR=Xs8fo9EcAx5_Gf=Hv40s`oPfoQ3ADfi?U@AWgJFIy;5or@aKj&Ug-npYc2lKkJzoe#%QQ?5yWv_*u`# z@H63%gXIGT29pQO!r(J$6c`$UK36-e{O`;FK2s$@%;6{KJd+>bGe=P6VD^4yW?03* z(QpZ*u7QzZi+l~!O8FXwmGU)=E9GmLS0+d?{A6tCxWp*H@Dts91~mKrGc#TUozL@y znPJrR)vAw-0M@$^BH{2;ft?}5hmj$~UWK9X0V_ku8zzPj zdk%)e1Qv!6dj*CBL^sbFrEhM*I+1A0GX@9P^iGra4F&M{}7N` zu$%=`p##WVAEv^@|Nleg%Yf6uC6L@=W`-?^5+HLLE-7(1{9N?=|5gPKhn?~a^4SmA z=g$JEVUl6k2{IGJR%B=h0@*`G;E!SBYwoH}+yEiEDl!N6$76#JE(AD6lhZVPSCi`Gk#OON)fV&m#;BTUr?$ezr0&Y*{Md@N+){!)pg-2G9^Y z*v*U#4M9nK5O*(;Xb2K!fVlkuv#{1bZikV%bi0VdPk9Em*Xj%mKN%*p&2nX6_?f`KumzN!8;>wpCNMDk zG=`op1#$z(E!f-vbNdr<;@!@~3-PauBtp*-P&`5F4q*w0ox;ovCQK3zKap%auExINt%Ge&m*GB9>CDlq)4Kf+*n z;7El|Z z;RJ(a8ZU+9A6AyNXd%?>2E`Fl9tno#5hYL_5pnqW zm<^Iw7PBGpN-~4P&t?V)zaCFsd7_7~2Nd?m=^xo$uy9Y&MT9%D+F}leo%J#dKZ{uy zOp{JHSURyXn56SK{7mI=_?aT$@N*FZdv`no%j-44k;s5q*Sz(Ze1VKPd(f zKkh*@119fc2$A0cZjUm6hK0fHssGK47eVbrP}>o7=HowUhM!-V8CHE`W?q%V#IVJY ziD9cSL&GHzhK5U^wl0VbYS%qr7Fh)n1F=DM;$|j>pI4X|z;yuZtigZM4nO}lL)vYw z3=CV2{QbX0gn?ngQ+)Gi>?7#PAbTkNoFi*!h5&QR}}P!_WW67%cyvVz3lu zX80-3&9GBmp5dqbaRy8I(+rl0QVcsAr5JXC;=z%DVar1yhM!DKki7RujN#{lLkyPx zxfp)_=VSQ!{QrM(7Y2qcEW!*wS(zbfSV492VFpWiZib)o{0u)IfZ88I4nO}NVz7Lw z&hYaIG#nm?f!Gc|pQ=0jZ20?sD{{J4;(*pkUJ(Dy0{Kta;ivpz$XSpKAUkmAS>glH z)BFFw_)})4RZp0iSAol2X4X}#4B)AOV7G?$p z=s}61%%HIp=-G&3U>WFfh~mtLn32wK1T8Uuo`5LH4B|LIOp{{%M${ROe?a2_5G@MK z63p=9B^9ZBh9eU*0|WLm9NiG7P?``p!;y!Dqlxhg=!`>9s$m3=Ix>MtW-!SDCRxEG z8<=DVlN?}@6HIb}Np3L7115RFBp;aM2a^I|QV>iEfk|O7DFP-%!K4_N6bF+MU{VrH zN`XmfFew8jWx=Ezn3M;T3Sd%^ftBMI=yWrjXHtUVgOx*$nSp^HbT%3&qy)eOXd+So zbXcSSm<5s)01?nLDfvO7;G_js4Ohs(%Habt3?vOoY!JghhcklBVPNIRhDn2xA4D3Y zn}L<13nT-w1C;zAG9Y8X)(Sw+q+9}00}=%#M6enLR*n-OL6AmJf&>eKEfWA8M#;d+ zaTk30A`=VrOiIuY8G{3(J?J<&@J32T2aq2in<^RIK!$S&gO5OT2aO^MK-74E*b)%7 zCy1>e3_ga@3uKH2MBE#6mZSlM?F(WXLfHNwHstnb#vqVh3kFsW&_R&kL0!f)#*?5! zA3;0u8Ph;c5ldoVOb3a9ci=H*fW#ooOpqu8D+fCZWD0?Sv5^VnaYoQS14*z6jZ7fr zlF7L#AW4vKBta*hLKR9DloWx)LBT0ilv={T*aS8}Dv5!ynF(aNv;`}4+au#{umFQB zc`XUG#<#6c!M} z--6j7SG)s<2Gkk}CWI16FdMQJm4R_CNP>|Cboe3I;JF~Tg9jNI=OIMrbFnc%_FFP8 z0BK-g!o?w{Y%xY4yB@xJdQK(W^%2OfkA%4%H2(!QDncA$JZRuw7bLCHN-&s#%mra^8f0K#2*Pi&8pvdjdU$$)X*35}W)89lQwn4qhNy-c%n=L>3~*U+ z^$xn4P#Z353@Va9c7iZ``N5oRTnr3qX;4*aMKDGkl%dfDV@!iF7C{-{aNy-)V9;0# z717uUWxx|QDBeDCf+8n~sTC=5K;l}AkoXK_0>vjh2*G6r0|P@R7XyO{$YG2rCLm`q zrkj8q#qyakXg=JZFvaE|XPSeYXby57JQ1t`CxQ@WE+!@|#$d#`v>>}VQneTZ7(p8s z;LZi5rG;D|=YrD>+?Y#XW58kzkj!(R2{}K46EtY1X^tK@Ec4t47tf%;1|31cz<8et zRO*8GaO)n6GcX8pgRNtpSi!~sTjaz5iYhI}K<54mHZ8^g=Ff})4B)N<1LIm`YvGGR z<~-nm6=G{)#Q=DMk#Q}k>;+j0;jRM}nh5TC7#CFHZGe>-phMCb7&pSWkeY52$d5Ll z3I(Jch8Zt>;bve^dkc+swMQ@pY#$lu+yMrSA5dYmY|Fy~_B$wx!ovg^vc?n6+m3gW6F#~8SR1trrz+j#ND8a#i&bYP1?P(Zxl1;tms8{YK5%oTz~ODal+w*yB=5=w%AFRYvMS_qaP zlF$-F5;zJ$nn4ks43A)No@Pve^C1zQ23E}&25vGirh|D9l^Kk%Z10Gi7(fOywlgjl z#G4QxB{jat2W9wsg3#D1#}XR2!(BuOsx2FfHk^^{4bxSGMHg<%nqb=MuxLYxF_iSX z1E#GRi#AZ&fK?!{oWcMK5G}?KX09#*IvAWl-5F3kfG}vC5r}4-11??}&B1L6#v)+` z21wt=9NcukWLtoHTo7>!CQw{M*p^7*mSAzIBtr&9D{!AsD#-}OgqBzz!S;b%0K%{p z*^F~~L>U+$CDKPG5E~>5NXEgPn!45*me}St9o5T1O>_Lz`I^Pi7 z2mS_kp>t|c5d$L+vm+C1rz%Jns19Reb`@n{Q1ge1t2x6M<}ijfj3EzYm=c)`wg1>8@N2Yi3>{YT8yEfJQc$HnK4+4F_`%?V~`eO5J)JH`7>i6yy**Z zmLzzn5ac8f1}# zl>?uN#4ZOKQUdj}1i*O=e8(F|2-L>`s}leXs|tV?7&3s3V7&$EGJ}WfpaSPW1sp^G zbWRuphZ!TNCj=SH12tV*(Os5d|e^TMxa0Np!5`1%LbAe~^2G&dvoo(HG_U@=*4Mg|5s=v5D35qYSQ+@Q-8AVw-c<-vDRC_-*l z09~K~QNh5VgscVSP6=hGW4JxRcSEQkT_PdQz@Q4c?E$17c8P=<>=FreZbpze1A_+m z_6TtX22I!{5g;#UA>AIKjkq2{2d0LBK^N*IaKM0!f?so?2XzuF#7X*4zd^YMh`<3| zW?=|*FjUqEbhib_0mgcahN!n^n1G!w!N6b&cCiElgBipRAm!#DF$M+;i2J5GNg4_> zFj(s0zKg>O>MCfsSwmd~<=TM44f*m7TaddL80_FCVtU&iY6Qq95)2FuAR|EG62Tn_ zz6iw;BmgxNEa0TafaFC624^lvie+VBaDm&ytu6_1w*kxT7+7vU!6F258n&xoU`L&xTLkB0iE@xxm^Zw@bwC;13==D+uy81-a44u@ z+)=>DfN{wpUiI7z{nRrI>OeS!#W9SSm+4@MZ>*|dhd3e`k3|S0Nx+pu8CVh}6GIC| z+9g&DYAT$x>bqLTwiF)}8~;TSmv*#r=qiJ<_a z#=zoVR)!J=Hq3Sr$OL4JMJJZhAA8`@MIo|dL2N9A50<7879o%yuoY1lttFxrf}Del z$xaxY3`Gn$8dY2jpBaO2$YE*YP*FLu&p>P}wt<9^F>$R8EUJ(V0kN^<6f8m@mB<)N z(+yb~#KxN3v2@Qc$~aJ>AY6Q4Nt{d!6Jbk*Kn?(7tjhW^l!4VE5m+6M(dfkPQo7_- zqOC^q6qt!MKrq9Ni2*Z^u!ZkHsRR23iNI1IFfmL74O=290$q^Rk40?os6%lqxZ{j* zsV5V|MA!j1aMer<{aC~Xk2<(Rp$sh93tLZ&y2`NG0Cf+XVg&65g7d%(Hii}hHZ0XU z7NuB(aOnmcjYMEczeuuRCIvYctRIQM;!q@6FcWLo7lWnn5m>b0DyoPq_y^ELbdO?* z0g&ggHFYrBmP1z|W+;Gm*`kQz92vw=iM>gUp$vzC*mP5_6vZpp3td)*B5X~3PRNKT z_TmAf7y-^T}}4*u=0DT|9_zVN=F11a2CX!NgDu zziA#S#DGnV6B<}-${5N~EX0t7849D>7+^;*!$cr7E^&w~g2bf`mpDQvgoPy`U=gB1 ztg0}SG6*R*zyMQ?CKy zNCb(ckQhw80fa*#EG(%PTN|9Z%COmhO$_2h1c{|d%*s%JtW#!nGK9tVq&Aq7bpWu9YK2M1&0n?EmB^vKlntJ5utOdH7`WMX2Nh<=(T1ITTdl@2XbV)_JQ@B!o)%tcaI;vQQA7`tX# zsKoRMmQf#!wOSze1!GCA#OTGe5w^h`E(0w(eNCdW&f+gkAUKx^` zz)Wme1WUC-du3qPAQ9L~Gc3g;aY9Juf|=L~eJl-j;)K8^A`w^;K9)f(Bn@CD7G0on z2(vN;t41QQI1;20v!+AR17>0kI*c+7OZx|8JZ9YmHWP`!q7h5N0-1$bRUjDyW>OG1 z7^MNoMq)yhNR2X#pjmg2D`DqcfY=NS=u0rrD<{|)ClJ*P46u_xV0_rA7%)EiLM_;N z3ov=uZhjaaw)q>zhwc4^@nIW3VSL!uOBf%0Rs*)j4JMDyhwUkY$&b>bAwY`|_{|E+ zZ~cr63@nVl`FI%^89~>VfbLpg#60tlK|douH&wqNHK#IBA9NgGYFP4hif&#?wr-K3VX}Tnetu4JMq*}Ov3_D=QF4ZviEd72UTK9cOr?pQrG7zC zYEo%tPKiE5s=~r7-poWlCo@SuJvkY>K7EkB%)I2B(v(zE-Bgg1Sdx}slv@mUu92ZW z$Z@)fMY(1s`lZE1`Y@wmApqs;=NF{r6&L3)Fo2Fa)Jq11QgKO2N@|*32Iw-H;*yli zyb`?(24)6^q{QM>y$l8x28N`}d^H=3)g!h>L94n7M42BNP;w)fJe1 z6%^%}jTM;F74(@U6qsWb444)5nD^H!Fdt-4U|v_RzN3cQ6s>SnG583=3)gU2NfB0=1M(vb>>P1B{k+M1rz3Q8+~SN1?GMAP0WWF z6qrl(d|VWneIuAS(9FKa%BTnS8JicIKFEAs4C~i1GTNxf7%3^mLVTsbW(?7xz`(@9 zq{n8PF3&8gz#JFBtW?6BAHf`<$E<6^9IT-3&8)4UXsD>joEniX&n&ILTo92iuZUs( zZAM0BPCaAXhAS#C2YE5;l`toJF|VrEW4_Cf#>}I~T%`c=sv6iW@=C@^I{J#tQ3~nu zpukS?N|#q;7FJ*`*28Ay1|~)uRcT{IxR)S4F#?;#hU70P1?H#-X0;OLoCp(nMP?rb z134vdC@ZNcGV6nU$DE{>F3&8lz?=*6oEkRU9x^eS!MumdA{hnd2rp)h66Q=Vc||qm zIrVx_o0wlRC>Sd#$rvaqGADq1r>MZ(U+<;Fe2W3(HI-7eQj8FN!O94VN=7yXjP(7P zl`+CtOP*OuK~Y{wQQioWQkj#|KpKoDf=Fds=Dl?aic0AqPNNyKupS6;D=?QSFwbOE zV17}jpa=m6cib~9!3i66dibil2bF!Yit-dX@V3WL}z9L4Nd(FzosL#ZLmJ(;M zF$!Y{&cPPC?ut)mK1}ED8u*yhP=|;`0}F6l2nHLl8n@%c+f#{RjEb! z@yYoGl@OWuoc!c$2C$-}(ln!Z(AkYnp8oO08KosD`Q>@>`5C)D(rxyb`bzK!g!P5~!4902!K>TF#JP zS`wdBniij*mR6iv!jPO4pIDU6kery4la!d89iLoMltZ8f2zK#-)i?SDMfq8&$tC)r zf;}l8RN597=jg*(aQ6kc`Z6RJr6!i7G9>5Z7pJCx-Gc~=^wg4gkTbzfOUchmWk}8_ z&C3R>N-IiD1^FZ%H1I^_*Oyo0yZCSe%)c4mPj2JhLP@LpLWszW`)l zW?oKaUaD?RW^QJQt+9cDf^J$_W^raxW=>{FrENxLN=j-TJj{X|{aoN2S7%TVg3}H- zypl@O48gf8DKkI5ptPhI9K61+As+rNU?yr}1nU8%k9cru%uOxH$WH+$fdYo)jKm_a zJ$|9SpxhS>iWQ^y0uU7swh@w5K?#~632YLBb5LYJh<|)hYFcuBXJG5a0u8%I7|asl$Tl# zO4ae8<`+W}JXF9AftdtxIoxtrKX*?*S2)+-$qVcghP>2@5|CMNnb2U@Ah7+#B@7@r za5#Ws0flD-4tqo@2YD85grC2kD+4SCL$VM^9#(c0rGoNBQEFmwejeBuRG)$^ga=$f zX-Rx)QBgi5=0L&dz(AIWYeRM+Ut@in+jLy;sFlslvGfztAxa9W?m*FrIl0`q(a<+Qp$m9D3FgC!18b@a0&-I4jf@H zmJ!q)-~t$G573gKou0IgOyxVSx}O%pOl#oJ8vCY zXM(*9iAH!ZfT9hNra<8YsjhQVbCU}y86cSs8~`9WhLrr$q?}ZSB3ONso0y#ni3U(! zOU_A6EQ*JuSxDs#Dv3b2xCCqz+`X>O(5OV%4XV$;u>cN6SYWt@1u!tUJ3Ct`Xt?`@ zYT_>M85m&0A&gZ)3@jCLjM6;v44@$q*f0usILMJtz;QCuJjP(IdzT&g7#z7>FW+;r{2?5Jq15PyTrNr38sr6-UW?EY;K8#L4cqC24KKx~j0C_d&u#X#wi!I4kE zWge3g$YhW_gI;lEZb@Pi1L$B_2%S+}QUqp|q*jzL=%plVZT- zM>0cdVl**O6B11boOKbpz;z#*5^&B#Hy&JDA}IvranuY8G8vp-iBbh=Xy8=}b_Zb- z;mRHZURHiPR)o1w|T({89M>W zvMdZA|6`M7291YdkzfXmjbRlB-By7q!3-KTLlcHf20#z*Mv?Kszz}mV#X(o`G9jr4*GW)q%naa*E1*0G1u+Lx98}gb zA*lzIyAT}=49pDtFeaRan1d+}Qozgrz7_(+gky+$OmUC`W(MdPk01^dL)2r6gQS@m zK)0oWSO^SJk0}mP!3?>z0K|l2hzpJ-Qd7_Df&wIxJ%#f2(v4|UDh=Bx{8H_;`3WoU0gaK5pphz%)@{0+&5SY)*06umf z%!U!5C0nqz2TTk^gI1wo6OUy;w4FifU>LL$6PtR_9opE$dvTZpx^o(v`t>-}Z)0F! z5JD;+z-?3p28N4ZaYTLxw>cRY7(Rl<5&0V2u4G_f;AI4vgUG+&HX{QAgC0m6bZ8&c zqp)_N1xOqzpMu+l3=9lmjM&2`9*1~3*c?PYg|!z!{t!aSr?4=Ygu|TKU~>@p5vG0z zSR9e>z->y9UqC|~ddUnb72y6FWRxZ|A3UZAY88RnYG4^q`vlAYw@<(x8 z4g!Hqfc84UjUSBe9kiDSl0+NdKox>m1nScv#wegez95A-+LXAZAgw-3d9Xd;)*~J{ zh-OfTfc;6JKMyhp91tJ|sBI0UK}}4go^MG}4raR$q!b+3Fa}r&#F2YP22}64ss8q%mk@sfR~#faq#i85MlTgFj9;RD6I(CWg#H-$o_(@R6}=93Di7v z_cTDoLFOR4X9iRp-5gl|AKjb{Q1$5Mz~Tkn90O=Lpqpa@6-PHG1S*bhP6|{U-JAlb zIJ!BoG=^>tXdDCN1$1*FK!VV8f*d|MP;qo~YM|oi=CnY?(cJ^Pt z?l0u>89AN9$_;dLVCfm%oF0&+Sn|scs5rVg98mY8nR6V*mxXKe)`bRgX1BW@Vctm#(GLeIWHPyFgBYjdOs+`9K0t3>pssF+t)mH-PxC^ac`#UyQ}T03TUm zVq{=I?nT1<3lcYDU|?v6jxEF73=^Nh4l?R^P+g4>0wcpza6t zXF>ME#KWQH#DN5n%-IVShn?jMQ~wx^o|zcn;K^H_*i8pzisECjJu|&i~QG*F)XI1GOLK9@xmN9-6o-)Ls)b z@l#N7D>U)NP;mz|aZRW@-O$8~q3-cP6HkQ}enDvBJy3HZ(8OOr{TqiS&JXo}3Ys{~ zeXw!}77qE)@Gn49e+}xdGBoj%Q1ffh#7{xp(}X6@2=y;){tssF1E@KDXzC-N{+)s* zZVfeO7Mi#xRD1!NxDC{tWoY6h(DGpon)pqq`!}J9Cqm8NfhL{{HGdzPcqY_eN6^F@ zq4u6a6SslJ`vo-d7^r)$p@}y@#qXerS3voXpfoI;>!I#^fhNubjo)`@;xD1@{D&s~ z2Wk#8R32u&1k^ozXyUMOMGmMuOuY`&zanVj=1_43G;t+pcv_%|7ed|Vf+qe2%7=v? z%wBb<`V6Q%O#C9$UnOYbu#rSqc*E2OLBnk_n)*6uI@ydSUJm8&gVHc_-azfWfF=&} zrw-H}boEwf;;@+&cQo-bXt;%;iNogW>(Rt{pzfcJCe93vmvw03-ca}NLKF9d+Is>` zydUb%8))LNaCnR+z8A`W2c==*02((36OG1rvn12J%#9{WvqKRLFhC>#b_+Mx~DS?Wkw{NFH#X;^wp2b*%CY}Te1O^6%)lhMm zIk0i{V^DFJIk0iJ^Ekw>K*iC`c?lJVnX?;eFRVQU6Tb%)|Ba>|WFAP037TF&d{ETE z+O<+>;;?Z>4X8NCd{Da@)~_~#ii6C7MlHyAhG3{TNIfXrRG{IXfF?c@DxL}zhnWNG zt5iY7LFRz${S4)|LTQkCSpI#EBo0!49jg8-ns^S>J-?8|LFT~nDJwM4 zVg5Z0RnLVa4(d07+z!IRNa7%KVC91xk~qjcBA`UUz`&pk6^Dg0EZy3niNpGtVQAv8 zc+W=?NA7QSLB(P2H;39g8BN?6>i;=t;;?X8gC-8MZwHb%C>&t@*rQ0|Apg$i1ceR* z!)d5E$iE@vpN;;-L7Q3RQm%P5d-e{5Dh^=3iL6 ze?}9BjaS0r8KxdKj%*DL4|MTpG;!E?WigUC^0-+Sk~k>*Vfkwjn)nq^q%bfrY=?@2 z;suni7eULDLr`&$dthZMNXrwbI7mGxeBMFB;R~9$FDMf*Ffjatio?u-)oVh~c!r6? z#+CG;;vn-u?s0^cOO{Y^ka}2K3FMwAs5nSH$UUo}_QoTLgUo@oLo$)XLF!wfOLFp% z#6jv|?S~2^agh2L=s;R6k~l~`tliU&Bo0z<42lHMyd;`9mk`MH3=A`o#6jl3%IC#M z;vjPtL)EW95(lY=wOh7B#bMzCo2T3l6$gb6D4oO7=Q$*CkohvuB?i~g#OEaMWDYD{nInmV%vm7@GKGP` z21y*G9+s}$(Zr*m^=u%LILMqipg;nxCqWVinFH%@Bp``{)Js4Mf=sA5EPP<|b}dkG zSom~8)%T)_pM;7}LlftO2KH>IIJ)^8pyDv|i=gVaL&ah0V<5r9a0y8qIo{tQiGz%Q z%|~)T%OQ|C$m*4l#6jv|^WU~e;>hYFkiw_eYtUet{9HbtWZkv(Bk=4&b5(lYY08QuHki?PIUxJE*!VMIU+o0{7yHIhE`=Ln$ z9FzZ{;vn^)coc*-q*$Q!IY=C2PBd6G0|P&jI7q!Xbl^!AP25chqCp8s9ApkG9qJ;9 zgUm^VE;Thm5(lY=^#>i$#5JJ(b{{lxap<^NIFdNX{F%@MkpLBkg#)ZU&47x7{0pkz zVe_&TNa7%KgrE~^jcDRoQ1LD_@k3DYek5^Z^JgH5gUok>E`42yCO!o!z5*%^b3bhS z;RupAa(cLrBo2!A36N-E_>ClvtX>q_{(_k=0Zng)NaD!qeUQXK=EK$}Wgv+ot8YdU z2dRg(H|8UWBdgzuBo0y!n-{-`B#x~91CltjXaM_|8QSgu#V;sbaX|Z-B52~BVATu^ z3TWc6`9d8u@hQ;!Wq~Fx2CZLQ(8NJ@gRBTZ6IX$%FGdq*fcER_pyHr-fo3_7F$`0o z;xKx(iJ|OOeDuZh^Uf1ClsMy}vrxc!sS=;vn@fe;q&)2dS5YF3moQ zBo0#l4H`ZdkiO(;n#4|83JVg=*sfC5x2PAQj`mIp) zUy;N?>S6H|&?*fa zK3k#UF!iu}dH_ir6z{fBPaH)O2bq5ws^J2XI7odNRQ**XagcggzI%Wq4pP4!s{SdG zI7t0fsQDj|#6jx$^uf+&_zD$=`3u?|VbFs1t6=`BgT{*~R2-xpS_Og)3Wth=)Pu~A zf|?%#6^E&ZHcJ?qpyD9)Aa}ynA@xGVLF%DJ71;dsP;roYkol9L=5K+D!_>pfzXcTs zsRx-4OAk+>;vn_Vq6BO{JGB1?QV%l!4Agucs5neLEPRZh;vn@P^I_xI_E2$b`1nz$IWzJv8&Vdfh_>z%b|>Zd}*FQbXW)&V?0 z6Njy*{D~&+4^0nz&;WtiI}_|%1_s!zKQQrw(0l}y2CwgeIt45Q^#)uVHeL-a<}t)U zZDx>0P&k9kf$jT-#VNWtY#kI#9JbyFwnh$J9F|^S;;?l{u=y^SI4r$ofgA%}hX!&F zEZj=b#9{sMS~PK(`(g78F!Q0o%K$5%VB#=$!{)(Y;xP4x(aeXbhs}?ntAB<=JxCo$ z3Pgka1?|oS6x6jzj!DnmBCjCTyM%WIl9g6BJzxOwj%oOdQtc=EWf{iY5;0zbN1k z*FY100k)Na!3>AE9hx|7y|pI}@jx_j*uH{z9OCI{;;{ZcY`zp04p3(@bfKw-h0jzR z;&ai&Vg1k*XyUMN*nlPu+efh*hxlPMaoD=^i#Wt@qKU)&3!Cpn_wOGx^)UakL+de^ zdYCvrnmEjS*!(a|J**rsMNM>04hzre zIK=0piNn&{DjedQ(8OWk18YaX!Uq-(_tDhD^4BXI;-ApOVe5Ed>po!S!^Byk^)pNy zwr@%Rhd6A#6-+&BzC#&J{TXPyXrqb4;>!$89CkK}9hx|7{?QYMcp#cMEc{{X2w?66 z^@TuAf~~WHiNnh0dNgxj;_YbSu<(bizk-Gu=TjG zbqz4{Vdej2H1)832=~y$VeWZ`CJuAYM>KI*I)|-eh1m;BpRn~2FmYHqkpVRhpzR+} zJ#ql*U)Z_^kb3A)I#|XYNj*p$Hh=1cLmal=4Q3839uv^i!^AVt#9{SyF%I!+G;!Fz zpiUg(6Vb$B>3Duzu(!9OAI`Y%u@A#u<*HsfUT5MH7eZ|GbSu95(*|Gat5p z47Sbhvk<{9O8v&;;?o3^*F@a(Zpf(`y?FVv(Ut0<4Y@Wh;Kj>hn1hZ zaflyA6NiltU&JAP6HOdejy=I4{sv7PHgEU~hdA;&Jy7`o>sRnX`@yhu1rrxV6Nl}4 zgsq=~sfR{8gEg9ZSo!0IL);Hd99GW6;1GxHSAf|I>-XiOsfUS|qlv@HALR9Zpm2bR z_oAtX&3C}|6~XLKt%p6!cnTn)b%` z2x~71qKU)Otqcxv6*O^J|I`47xCNRxtiEtY6Nj~jz0t&B<$oBOIINtHLlcLU=b32Y zuyVT)O&nG}*Pw~R%G(w+aaekWttW+rKP=vtqp63*FKpc-Og+rrU1;iI=EK&X!qmgo zgWW|_4{Oi7z#;wtO&sPPhcqf{ASij&X4)L>S;;?jk1BdtnG;vsZ zhOMgwxd%Fx4K9J$L7fU{{{kcq8)raXhlwmMg{B@>9;)IH*F_VDl}pw*#GTQ^VdaS* z4)HKFaaehhfnm8<+@1cpq+Vd}Qh<`*AhlS^V9OCRq>li`l1Xex^;SiTX6Nlvs5r=EKC((A2}shpiunnGYME??F=!GiN>y@#SdZuy)06 z9O8%3#9{Gx4u|+PG;vsXzQQ5?2~8X}fAAMg92WkpNb49u;RXvI*gASx_`v*Sh^8Kv zK4I(YVd`PyEg@*?VeN`|G;x@}($U0W^;Z#^IL!T3XyP#U!`AP^+yfhLnTw_#bY2^% zpj?3_4s#D|y(r8a&^Ztw^{{;aF!3oMK?Vkf%V_4n>Mz)Od60V8Tn9+YHzf5SaoD&n zBdBtMmfOhUoM__EWg`qCIK*Yp#G%u(4C*+<_0hy({RP;%esuSTqN#^YcQPd45YIpp zhc4e>D8V6KgC-7he>)EGel&5I`(gV7K<oY;_hn<@sfJ0mYO&r$lRmLH%jV2CjXIkPAhpn51 zg){6tDIYZTF!2yHaoBpfBpl*dXyUMQc3}HCVD^II7KD4z)WhO;1`hEBXyUMZy#|N) z7Bq2K{2ss|egaMW2*{BP3=CIrh~GgIhsEy;9O56)#9{rEKRCo$pal*r++gu5fJ0mY zO&qo^T?L1@4w^VDel2i_JD`cf;up662Ifv^urZ{dsfWdHJ`VA6G;vt`BCj_FS6I~jiw$Jziv3h{m{f=@fd|eJPA!4 z7QcBo#LLjcVe#99LmamL8Rjoo{7yqt4-=nA_`QTf z{1%!xEFPcX5Pydz4vSydzBgDnz}kmGNb8e9=?AvHNEU~6>YLp%>n9OfR_zDacVOv0fa zwr>)q{tL7~gsne^iNnT!VC&D(#ZTZcAGYrhq#m?i3~D^X8zl80aoGB(?>NN&qlv@v zFE6Om0<9N7=D@^7(Zpf>N7%Y?n0sL28ffZa<+B+MaXU0|*!UZ4Jvq#Ln0O$Xdf2&L z@i@fO(Zpf>&>|e-RcPX{e9?hJd;*#{>>S(KIK&sDiNnqbh3ylC`4<+yC(+cy*0Wu~ zA$|u<92SqSaEO0G6Njz;{EI^zd3`%5oxtK(7-@YqvbZ#wI4obN;SkqD6Nlw@8yw;; zXyUN(SbrSi;b`Kp^plE1JQqzIcCInS5`p4~O_PG;!E^&4oC`SE7l- z(hqDuF)aN+qmSV{ntE8ha|?&~BQ$Z?zPXQR;;?xCi6#y^SCj>5{W&OnVB$Pz;;{K3 z2{dt7yepuI!^%%>9OA}k;_}e-piXGwuz2@E6Ni-#VK~I&(8OWu!*kKZVewvyCJrkf z8gYnsqKU)Sw{iNnhIEl_cE zb71Eyz|4WU=OR=+OdRH(J5X_$IiXPZJcNqF)Wh8K5=|WDo-a^wbaP5|M!M zZ8ULMc*4$~0J$HwrwQaED<}sh4jV6W#UbvCCJw82B5;T&pozoMVIB_gGBj~mI5*-D z??e-ah5vLM;`7nOVd;Do4)INB;;?u;fJ6KQnmFuy57>Dguy6*2JqW)>Qx6OOZ#cyN zp^3xVbzIO1S(y1SaUnEuSoq7~5LZJJhmHRj;Sje%6NiPr8xCe(bU7j zKLm$(44ODB{4;Qf7ods5!oLQGcng|1Ec_?n5TAi24h#P!IKSe0{?q{trzY z7GHeOg+MU>!opJwO&k`UYG~rH@YF*ShlMBXyeOFYuytHvXzF3<1a^)Ty822S>S5sS`NFFQAFT<_GWL5Pyay4$DU$afts! z6NjC<0y~!rmQKKlhk=1X9&{KAw4DG-SFn3pwQz_Vp^3xNj{^>I4>WPuI<#OM;?Zd0 zu=JCOL%a}89JUU>28VbHnmBAcWD*YXS!m+0b#Y5^h_6Kxho#TmIK&U5iNnt4JcmR4 z8k#sPeLle<{sv7P)_?zwL;OFQI4phgLeFo5r5~8MD4KW+w0=~;A+CWY4ojb~^Wk9T z!^YeF(A2}~*+?AXiD=@<(1c!qCJswi6=>qHafxOe;@xQCuzF!Snm8<7%|{c5mGi4` zh;Kp@7l(%DK{Rn#x;lv_4jb>iibMP^nmFu!xEDCYKcI;RL*4TqO&pdE*`W=7SUkeY zLtz}^(rDta`ED&VaaejYLKBCThjuu`-O$7*L){NMUl8U_*gDKyH1)9kQx!PG8_>jI z>9Ze)_;fUJSo&OrCJsxVo6y8z>GL2C@snucu=IHoO&pef9-@iE($7a6;y=;EVd;kh zI)MTUPnfs>nm8=|D5HtP(vLQpI4u2G;}Ca76NjarFf?&k`iVmmhozr99O7kY;;{4s zJ3kWUUs!v4A)0#F{(`k=;xPAYMH7de|9KFH_(?QznEM~#5PyLt4s$>3+)9}HVf%fg zpoeq8#9`%_DpVXcE^QB8=cEM{hpC69Dildw31Qmyw0}CH7G;vsc5egMY zHwSj^Cd?d|zlxyhVd5}<)k4K#=6FN>)dUrXsfYQi3r!s6uc=URbaQ4w#bM^a{Iv*8 z9OkdJP;qo~VCROy%z^pq6jVJ-9Okd9XyP#U-$fILx&H;4ILw_N(8OWs^EVE0X6U(+ zF!#XHr#KFAc{FiY`h=Z(3Nr^b&hLk&9+vMS(Zpf?O+*ui?FT8uAzq0l4htXHd8;t@ z!0erarXCjl%hAMP;~4AF#9`*|LKBCD{~l2p%!=J5TA@D4oeU7afmNR6NmLrx8e}rizW`6?>LD= z{34n-tbKkThxl_eaoG8~pK*x)MiYm{7wr63^!QSQZrFi|!{SQ^hqwuvI4r)LaEN=M ziNoS66o+^$nm8=JGI59(qKU)es~(4VJDNBwz9!=kpN%FCi?5Y9#5bae!|qYui$nY< znm8=JVCV0`;su(_8D68QhsD=79OD1b#9`$IC-i_tnE5bqK{Rn#{L14HS4R_v#jg<# zaVs=&n15mC2gBS0^KUGgdYFGRaEKS6iNoAqheNy#O&sR_i8#b(qKU)Y4?E8o-Tiyf z)Wh6=0*CkoG;x^w@8J-Ch9(Yk|3@6+KheZt?uVVPjP8C}=sC(TahUrx(Zr$2jKL61 z9M)g6!6EK~CTU7O#9`~YHPOUj@oS1h+!jq77QY@i!~@X8VdY*74)GK;aacMj z#35dZCJsAyr4@&GFPb=Pz0C|9;tSBkVetz)*Bllv&|qdbjHVtIp6AiTVg9;~CJsxV zk8y~O_@C-#$4-3yk9O9X1;;`^6K@*3CTMe2xEF9X=#9`skk0uWDFYKNHboXyU zQx9|hJ{;o5(8OWxzlbIdbN@{=ahUs`pozoW{{~GQ=6=|H2{zWDayl6N&?Z0F{3}T6LE^CRxsOBqIhr`E{SQ6v zkpVU?3O1a9fdOVe$X@7CqhKlMG&uPDf9MfzU~$k|aS#Kf9(v>th|2(LSAxW$M@@jm zVe{c2ap=%6SR8h~GDsYjWpdRY7+rw5RF*m?ulx@?$wm^)$q0EvUr8!WzI_Q1qp=ZwMZ zfr-P?0c>41OdM9v!sJ2XpmYfH7p&ffiNowgPCp>^uyJ^pc`)^`ac|iEGmtna-NM>A zuys{1ad>)wjt9fUVftbAz{FwoENndmNF2F*fSpSX6Nkkg>^uOFI4li=k~nOB5+)Ao z_rc~TLE@nF2~rEfuziOxahQDtNbU!vH;`HohK=`w)Puxf{(;S(fW$%R0i+g$JCMu) ziNo9n8~+2TM=qCO^Gh&sSUCv0KM*7iN@SQ*VG|4stncfhG>C zH|HSv7dic(MG{9&=Wmh3k<+sqlKG(Y2?{e1zJ(+XN{1jZ5H>@)M*uk;Mk0xW(iKQ8 z2=7D^M^0BdNaxIh(g{c{2+u+iM@}c)P)~y55jj1mA&Gj^6`F;>huM z6-gWvFCa5O_!W{ka=bv7=QFS}GB7}ufRr=9#-Bjq$l(v$Uk(yS4u4oZ1`Z56fR5apdrqfu;wLICA*I(k)0F zIs8+Q)FX#~1(G;&`1c@*BZvP2Byr^M2M0C<1jx^zECFkO!i<8oGhloe4N?nZgJ_Un zL1NJ44H5!lV)cXk2udI1>IdCl1+pKP`(gDS*ij4&4A5)^<1&DTOF&}i?$xM;c&i zvIE_IP&*Er|6%P3SiKA~6NEu_foK>GhK32c{RL3_VeLwg{UEzR7^D~Gu5=v!4}qpv zSUnHY1H$O`gRH^k{u*e4fYtjTy&#OPzYK@_cYq9LU|@i?w?OU(l{e__2en7B*?$FU z5iI^ec7rff7{ml)(EbFF7<%|6Ko^q3^n>gNZJ9;4A2gng&3+bWVG1j^z?MP%3S)!l z`A{)*`zJu{hmALb><9II(d|ElBmQbYiH(7Q0oKj|*#*KNzk+BOK8nNs6VQv?VC_VZ z{h;z2-TtpQ?EeEj2OrjMg4u^|Kd3zp5<~aDK|MqV%>5wyK}Xr3+YjnjVGI8S&~vb1 z?J$UGnB@m({VF#5H$Xc^u=XU#e$deu==Ov1CpP;nK#7%sfdSU8!)3oSBg9SU{!eIv z=s-??p!yKq{#Zr^aMu?a-4IO-3=A$%`{C_Gs0_%jP$rlHX3s`jf190dMfzDU6q6GlDes3J^&sYU^~U`vEx5fKZJ+rf6zUQpgf6Q{w@%N zxD>hm0}VZ++dmm<{UAP?60pVxgMEAJk02W`9B@L_cgC3c^E# zKa5{cl$lqOrkAg;009ON3QR)S5Yo)V1T1D~Y++~yW+iadyZX2>fd(R=hA}d12e&1l zTsTz$N_bEnB%L}iNHK^r{CDQK_}`iF;)`a^i9fTMSN>FHn)s`kapLD-hLyq$3=_Wa zHwb-=W?cC_nQ7(kYL=B6%nU!jALf{-!OrmWD{F(0IXA=4Z_JFVOr;ri{$9*9(L|nM z=MQFvRXI!!KOZnluhPl-Pcl$Nyn2)L~)>dB7~O>LIf< zsAQZ{%;fO%(RGKPiA)YZ;~5xVJF+o^d=7S4`8C>c<@aQ#l|QqcSN^VcS^3|YapHex zj)@1DiF9_l;%RA6S<0`mW(X3mMAZ~^&IiJ9T2 z5<3If&!8|;5qDUrChxe?O`dV3i#P+^jUYFH+y-*<7iI=6P}qUk512)?uKoWn&cM(h zbmjklab^aF2?|UNL5vIyK}sAALCFjZ6OZsT1cB6o)SL#ZWtftcm#JS|l&qgzR9R4x zub-5euMbUTkV0iW8>G%=V1Ueyfbsw|d7x5E9N^LqoW7Z^fRaBG2RJ`4u|OzBaI=+( z5u7WSn82!;AXlWZu&`$4l`w$yGHW<7FhH3Opn?HvFw8WFp{yKp85kI#hOu#gb+R;W zWME(bTc*Iq0P1XjtpfGhAXyQ_;(&_@fLW=ab}O7E1F@L(@NWhN22gfo2w>-D?q+0Q z0AKaOF2D>@59J6lCo?fHa6n{)nAbBiFbF_6!p!HG85krW98u;M%nS?)5RMpFMgzhT zXXasHU@(AiB$yRh7#J)d97!<80m6}Dc3@#(@L=F}^7Ln5Ju;0E?lf6uUnZE-xd1ao8{GFo5`)ScR3jtWm+X)Xi19+(4lv_7*B zGXsMTPeDl$1G@n;C`_R~FlL^>4EKQvGpLq=`T)Z5fCMgw1}K`qF~*Suaz86aCKCe# zFDOF!Sa_Nk?U)%DK;2&kMlcCERi7EmW&x9|V3G|?vV%zuFv$rfxxgehnB)PIykL?K zO!9+C$cg-dV73sL6b6$bU{VxJih)USFbO%SUlPog0+Z5UQU*-Qf=M|rDGw$Uz@#Dr zD~AgxRWNaYq6Xr9&XjUk`euI$iX~Q#3}yxf@Y-Wg_z8gtP%;w&B`+Z`3)C7D0ucvYzzz{NtyW!jBcP{04V@<#2Fafz>Z{KU=Ra!j2Rf+ zBbXQ%m?y5Nkw_{{V_@_EX=I*wqDC^mw1k1t1LR|nX7GVkj2@t*h2VO^?3OG_En#4U zb3t8B2GAX<5MA*S-~x+*0XA&TAj`(UAj`_YAj=rQGVw<>8$!m2je)@vEECMs#URTV z#MH(h%NPh&CCeDV)Xl&EJ7K(dc;%Fbb9VE6@=1v^+C>?{Tb zhP9w@PymG?C`1%Nqj3KjctL>(-gnC-2TB|uHwuBWJOilb#=x!12vPv@s}LwMz*3L| zy$ob7xU0%z#t3o|B(;E)Ls+1w76MfQ3}ExwD?m~p$3fB-sCWP?WB_-!xD-L|gCtN$ z1C~*cQI$`ao0(6VFH~HRQ9zu5fk}mdo7;|?nU8^iS&V_1&x+fc+f$f+PLd!cBCHVOxjluM#2FYwS>c`oam7F_UvU$Jm;?iZgb6~2 z1OtO45?7poK?+H+I0J(;H)E(c$R3%_CPqdWV@Oe8JHv{I!Q1v$iXBS800&f z7#Ton7#I{786jR!RAlfJ*5_tmP(t;D4cPU{a6wj(&me*-$bt|dRk#qhx+FwMO^*Q- zDC&|Xk~Wf{6orNv8PG=~7#JB~3w_~gSr|Su27rcT;UXXg7KI>TWX#AAh|C4C85z<* z6fy=GABe?x428&=Kx{^aY!HQvv3iJ1RmkRo*h~xt7_P)FW=OU=kUhv4tA9YvQ)ER9 zj0_k;91IhGR8L_sl)-Qc2SX7K86JjC1~x7ZCK(+1aG6L0N1}KSJfMyxp~6-!p(}>- z2RK}C#{p=L4$?;kH>%+dhSl+K0U9x~m>3wC7(_rL1&qJ>co`TO!JS^v$SG!5he1Ch zKQ~psAT_5l5!?$(%}dEiEiR5PE=WvH)lbYzDay}G(alTA)-5tLOx7>S&(BHDNX*PD z)=x|AqlM;(l^)f(9 z6l}mDshgQ+2TCqUnfVam;*ylaqI8HEB^gDji762A+{B!m{A7rEAhSWrnHd;Ti;5uf z3=Eu*vFRz&Eqr;q~$IPu)$}FJA#K^$N=o%Ch@8jtd@9gjA#sK5EIy2;^mSp6oz(qWK z9i8DEmtaSRq|E&I%)GSx_~aypqSV6D)Z&uVl=z&~Jh&n{BndR{GGhuMud7YID<`zFG@{I&M(a?i7#P@k1s2VFUc=pNGd2TDP{nr<3zA1 z)P9ivd|g94{9WMY1PA-T*{*)>o_?-yZiK0UB|}PTaY<2rB|~0nMM*rUD*+1YVvwQf z5UUc4(u*158T~faFauWU4!5pf9K!;P zBLhQI14AQY1&xBD)S}d!)WqUcO$FWDq|E%h%wz@K+?>pklAKiC)V!3;#5@Jv+{C0z z+nfS369wIL1zmq51>LlQ%wz@Kw6xN^zLW=%y7V=BDZv1Qw}J!aAVN8FAKxR|JYP8 zW1UF=4dTLUTNG`~p!yy~1j1nkRsIkroCJ?eVi5-^V8&R<#lQfW3I>f>fK;GjX2{?$ zsvxK-02%7VA`Y<~U4j{7r3XX>GXr!Y8N!8=%G~)NkYUS z{u0F^0}5yGAQ?m<63NT}9&AGrf$UKcLJCiC{$OBW01bYjub%*E1kHnD69>(aViR{n z%99}dFbv9**wp*tP!F2Y#ikz7mQ<-=P)Pw7?9hw`t<%8;RC;M*Q3_IB2Fj0+@*h$| zA<8R68HKDLT)=_c4jWlBXJlYN4rS0yV$hio%MhYYj8YKS# z9RLN*&4Tp8#Ero7Lx?bkiKjw~6qsK?;-I_%9(rV8fQ$)(r-m3%awDi;ifsOKs5ziD zsmS7)APxfq1GvKhH3#I*DyTa_Ye+##K=y*f&7kJM&boz(vp~f`Yc`S9-+_h~bjbvG z4;jduc#t9n28Ki^4KpVYYHu!@_&O*bwq_QlUKeUFbV&-_eApR&Jy3lx^v z4NAkrXG8THqlxc?#+L({_)n;~ADZ}msJ)SB;y0k`VS5E&_QLX29h!PSXt=eYi8Djp z*@Y&)9?G8prD5jxK;1J9O?)#{d=8rUS15lGl!loDS{n=U!U{BTeyBUwp^3xF(=BM? zpf#c(b9SML{{_#0GB6xK69=gUVc6Omn0sJ*{m!7N2bJ|8^_S4Zv!UU315KO}8V>i+ z#7&{%Pte4jq2jO5#IvE|u<`)r&hJorzoDrwhl>9}6TbvChY3bALMFRm1iNmj?wJ0|SEsntIsYD>XFnlTh_KXyUNpcq26N zqfovDl!n<0T5}3A$^%XODKtI!qKWH4!z}_$9JHniWKIxNAIyB{(rtzqs5oe}7n)>2 z${A{*;vn^)?i^T0uhx9j^IIO;rgLVx;=>ZfDuszhqXyTWl;Shl)E)6xe4o!R| zG=ArziE}~KuR{}u#SqTUQ_3J3 zT^xE81^7$?kP~6;71-S^F!eBTSbBkp!@?7mKVae@yFeJU*9b(z#9`rF1QJAwUzm6m znmBCFHLM*AGY2N#i>4mt&e=G`7o&;8+z-pIF!Mo6R6t6Pfe0jb!qVYIG;z?L5RlMK z5P_t=8JhlKcZa~thl#_^Vup#s_Bek>GY8gBgAKgE)Wh~TLzhm&;}Iq<1hpTg9@bBT zl{YYPSo_`-O+C!Nj%ebraE7&8VdlWXArwtLOdPa#1>`lDdYFGR(bU7lVeMF$dRREr zqN#_8x1x!|{0l2DVdlW%VJfD}5!t^manPbqWO0~($kN@-BN4k`j*;RZ7gvNj*aL(m|#2p$6iXdf3y3>qD9 zDPr~0de1j3TwxA_Hb-GxoO`}4Kmo(RzyKOI1t|u_FGw#eU4Zx?anL$KkpI#5jKR*p zfSu_BQVYT`{UALcei*1u2Qknv?2L=eXb}U`2U8AOCI)gBdUzK=6O0C^(G6OI4qdtq zvmfUEBpmj?hARAuW+57vp%jPy2hc&;4zz@Ut{>Ds!{+`OpoGD|!0-X;e~^1YMnath z-wO(AzoDB63Y!e*R0%Bqfy6)Ae4XA!tzX+xW=6@I;G+vA?{1UK)A7~y2 zrXLiZATvP0gqB4>!VDJBNtV}O9)dvkD~ONoc93cfs0FaILO}Bwpjkh3`$2UiHv3ON zCt*N4WI*P@Fvva_8$=i9CugUY5Wi>4$jrjRg2X*zC*nXhK`^A8b70V9P-A$=%&bLaGeGt&ePL!;^?+G;)mLT_(2mzB^O@wcdl^A{wM4bR`?0DW zSN=cD0N#Hk%Fqz>fEiO9v`-4O2P)y;e-n^dAohp<|HWbM`Nz%h6J!s_9gl<|Zh0i^ z@Dt<)keeE`9CkX@IDm$Ar-0o2fLR2*x2v8>KKm>K$SuNJ|F|7~g4_dh%L8U%uzMB$ zgY1N;{|2(tnc?E+YKD~xOblC?WE^%XGBgA|Vqh=C4-~ay?X9W8fRsMf7!$o@?hC+}XU^CemLVOq*LhKb73Kdux zLhMx-3KN+aLYQP2b}BG5TmqZj3^Ch&0b?Np6GMpo62?MDMurfOdlFa~Op+NGwt(zS zU|`sppw+MwSr3TKz|e5%Kh%r|3=CTsWE^%bU|=vwkaF1Bzy$FR$S(;D5dS7m&B%r-A}AgnF*9mCWM5U<4_r_}cmA<R%nO(q5g1qeqBETaM8h%^6XVqh?Ua3q+8KpWp6 z97!<80m6}DHe?2E-Q#rf^k-l@k_($u4`7#txBwJ=>~hTJAP+*cC@=>joTkXU7SuO_ z$UwL5K{(K@dk_wE>mGyy-MYtxymb#Eqt6UFfk1}~x^-_C1KbD3%#BP83>FY&CXlUr z$Q%y_Rt_yD1_o|W*t2q&GBGglFd=Pf<3Qfj268_u2dLxE3yM3C$$Ve}w2y}m6!3gt z7D$p0L@=;&fZ_?fr3e%i5Y=#n46GcW-aJ?u6gd!SP{4rAVPNH02HHOeG7}VC5NVKZ z23C%vAQ_Mypy-0gfYgDl z0tPDA3vwspMX($LV=qWXFgZ7cfw32)Ne~pDj9@i_pa^8_1vy^`yoId~q*ExffPt|e zq@9741Ed4I_=hnF#00qmgrS`d2F5v{$b;;(3j$dLl7x&cGiD-dfHiL!=iFxjZOvm~ z%!DZy0dKX-1jPeLH>mN%fY2-kc32k7ENE+qfq{<`>6{o*P6h_h;dzpb!Hfoyj6obN z3>*q7913cZjDgG(E7;(@2nH)o28K;63=EQt0Zh$ECU|o)Fr0#lw=gh38$}EZ37l}X z(9o?0IfYS@m4QJpiGi^i~vMe zIoDVj7-ZgqT9ph83^G4p49J#d1_oJPXgQ7D(}kQ23=>&F&VzWGYhu9^7Chcw3051x z)Pm;igHZ8iByUfHdK+}0iZmz%f*cOQux2vj91AuE2ANV&dBXtRlnCd^dqRalIzXK% z5Y3n<13M=X?w{qLRw)C6G$-W zX2?JV$Q<}uxyK-f;?@nf0lY~Nq!ZNr0nu=CWkKeGL>L&9kplxH#5fu5ZSc-aI1eQd z;Q0l2AV70XCpf`?OlDwUfGx^loD;wS$~6THjGdqa2a*;6Ey-l;1f@CI;Lp44`H`1N$vdDFm(~7(mC?FmR=UTn{ROkX4-nWqgP#h}jBYvq4!F ztc*{eiGcyb>`S1$2GIpJo4WyIHYm8knjjYPn1Y-H@;117g$S|-fDZ@1QSC)h8U4rLE4cqmd&4x z3>aHRK^_Xi*dvQYFLs5<7J}H=_5)+Fm5~8dK7lmAF_wrT(lEFYPzDy0us8waA8b*M z5kgQ?;S`b4fh{Jn#W>ttD1+>vXJo)ggjhoYLlx9wI7OT;T;YddJQm}y>xDZ2%D|!# zs~<6JgzAS=ObpH7>KZP9g+ZKU*d0z~y>zhzOGpxJFD``yBLYj-0hxvE@B@s3ooI#V zkxO)j!lICgVIpX13<*%24FNQxUKQ{cstO^MkRJvlt4ol@W{#7|P%VLm5mAn1?Q4 zNteS^88i^!6f*-yCPrYxWuXl6A`+?@P7$4v;5wiTEU^QXfm2wN5N#b6g>ZAB3@l2p z2tgIYDY8pbjG7gcCkAH~Ot2)wmP^U6@u?Xy7)~cH5y7Ju%D|!vdvrn7!znCfJeG_G zG7GcVhZ_QAU~vSN1d2r!=#E*?5G-_9A8H)Z8COsd*uW)}%K#g_gYjVlVlX~z_zK3a zfH9ynY&ZHHJNpKH zN)8Dp(%?Tf1~NaXmkiooj_cT%g8bslig?hu6wt$CU`$p92Ix65Yz&|SHS{t-ds5-2 z#jr6jK#d0814NO(``+dOCp$g6oPG;m_ZA)kq)2v#lUD|uUM*Yf<^8o1Eao*I&-Ch zzM-NabGjEZpA9p&0uu|G5j~8IDl!Tx%wlQG=?cus3d{*MK?aHj%)$z8D$J|u^;Gl? z6`2hbl;oJJ6x0=&r4^WqZJ2o#m@B>1ndjE)F<)XRVPZlvvxAY*R$h_0#6~e)pP5UK zxjX{X>Dw6@8JJiY8QBytwC`kO^fClVvMI3XE8BscoSc(ioC-S-r#Lk)1r!yvX*6N{jBK~JavornY3Ar3#rCO$qpwJ0w&Cmv=L*e~&*Lta3~?c{({P(1kL z3()@Z;?$CO_^~G`SWdfv9C8CcP9rm~#L&n>0d|N9I0&GJ-GGb(g$mq*AOVp1X(`wb zxJgTiFV4s>%}If{0PM-)5|ra@VD>=Hv!TkVHTaLuBIRTn*!duk^KU@Dg+vh~JV7B| z4E7V^R2)!3i3gt=1dbIDH?@QTab`_%Nl{K}9yB4r{SHbjAk#r%2{9WI=MZ*LY9i>k z8hE^efMSz7tXYimMtPF9ZUNS@##A1*b=$M=o z=wUP?>SP&^=NXDplgpsxLoqlQ3lOKp5O)d;Y~qg*=?oZ<7<7pp{FqkInegCQ5a{9@ z21h;vr^#$nSf{egV-5lx0(0-GBOik!w=>t}D~?z1f!PcU44}hGVGVh3I})aE9!ntC zJ;y7Tp$b9jVEgOA?Mp{K0msQq^B8@&?m^VJT?QEnIx7HncO|&p>By(xG?`@{vlmRA zHy2o;Bex^h<$F#bC;7odoL~&N6xe-Wb6``Cj(i4=Ab&Z}V+lZVASg_9pbG?H?O6o| z1_s#Pdhk4)BcFmZ$SvMrCo_P79tmgQfRDccMJ%{jM>-M*ECxR83SAJA6VOG$V(P<}eKT1A9PGJebbv0qsL&LOOE> zHmeRwTg;$i{y+>Q3|dEydP5;Z613!(2}wP29}nBvJ`i)jD{~+QKuJ)VXF@s)2%M*( za?DuH0)m(WS@Qr@2Btt0vP?+o!Fe7m13Ht38_GgZ5OXlaO+hP&7!cyHybRLG3_Z~Z z#D-yrIiOI5i9l$3usH~EiU{B$65BlpTZwGh*!!LJ+)25VX=7 zMF`Ac2A_ZgW}*M+mc9C0XFe7 zINS+Zv58GRXiu#WQo4oJS)j9CgpkrFxZYx5U;y1uhs~V7IP3+t!%|E1k{MJgz-(}p zg{Y^%EJ)=9W`b)ZFbiA_fmz_XMq13AkHQaao$UlF z)4+)Yv^W&X0ExreO&}r28h-``kT~dkFpwAsL$5Iei$k}^fP@)f_ltwnL$_Uk#bNC; zkT@=TK?_^JiWwLfV0+U+>XGe*mAfEuWP4$IBS7M?bDltE!O{yz9C=?DY)>}2II=s9 zK?XoEs2%|^LF$p+4{B$^#F5>PE8JjhOOQFp?uSiKfy9yB4>B8sL1%YCx50t9@ER6$ zb{DcZvio6f18IQO!yxm`Kmt$-T|ox z*$X=Z3Kpj@ahQMXK$@WDfYhIYy2lkw{3NKM$H2eDwEVd9-o^`QC! zSv@T7kS1Rlz|LZTsSkvzgPqv`6NjChl?RoFiI+k7)leEH4$E(_J=idD6X?q5sc7mC zL){6w&l40xF!jYy@%3oxVQ0$0&R~G4Ukp_T%Lg!V&~^ZjxsRdpF!4r^AOi!#Uo`PZ zC?9mcB}fTOJ*@l{hq?jUR&@nmA}f56E2DnQJg}V5fh&LgN!A4m;z- z3r#!;YHk#oxC}I$VSDaj=79D-g6wTVQ~wTX&J8qi@WNsS28KsaaZtGmUCItJhJhJs z56FD@s%y|iSxDlbd?XLmFANn2nS)&Z8$rck=D^AyM>KKR*(~6Tt&qyY>tNR~Fa)5f zhn)=&k0!np8owz}ahQ8x^-v+2IINDGjV2CjH*7`|2klV?Iq5W-IIMhl02K%M7Zg6Q zvl@`kQbMjbEun!9QV$AeO=x^Mp^0}u#l6wQVP{Q*pozoI{)&W(gTeu1FRUGqh9(XR zhe>GSuzG40nmDW-a|lfwmXB^Di6ht7-=N|!|7Jqd59|ylkT|HG1%)vPvp@?RkT@uO zVE3l-Ld8M;0+|nUrwUXYrrrt~ADU2cn0n9|wIK6tk;Gwb1CTiKSx_K*jlW1Vl?s9P(JJ)ZAosxTsh9RM;16u+?c-*2dT zkT@uuKSRxj4cUOiLF!@ceokmOfy6=TgP=n-LQrv-y|DUQ6Dkf<-vL#x2Nj2@hn)pw z4;2Tg2jyST-D9A5^n{9o)FZcJGoj)j^&t1Gftp`|Ce95RP+@3#2nmDX{{sk2WxfA3bHE6lS22FP$^O5_5{7`Y2`iUUNgYMQt z69--L2a>Wz6NjA*<%1>;+QbP`pNJ+78m|F~7omy6Mk=SHiBE#Y;|er!kQpGn7fl>? z=ISLhaoCw=&(Xx)pzQ&WSs)AwA83&c;-d6(LE_Nhg^yUm)WgJKVG9$7#Urd;0}_X+ z1z7;=-@(LTBZ-jlKnBp9JlG8|aoCDkn0i?G9|JNB+8+m*4-<#g!!Y%*auWIMJ&<~s zcomvCu>1(?$HB~ji6fuA2QmlN4@5qD4_O@6UxS$gE5~5%JD51s84Sp0?}5yLg#+^0 zd&uITaYB$@m^rX;c?uFl3Lls_tiJ|R4+{raI~`pd#0MD#qCxh;{0qG{93EdVaacbN zrXJ>BSo;(v4l)yjVP_b@#9{u0odt$2?hQ@9FmYIU3p;}wT|5p=JS6w>$06R1CJys2tlbSWALLgMUW=w4=6=|j;4t+taoE|`FmYHqhn+EsE)F}}3nmUb ztN%Wly)g0TXyUMNfSoxFGY2OA3r#&NeAuAn7EC=%9QjN>Q2K#|53F4eQV*>XK*7Uc zh-3~(99F*A;1G8~6NiP5KMrx&S?4f&Vfg}fwm!OeE}A*8dKuRLfT;&N9yGU(rXJ@0 z**L@(qlv@f1$O2&%zT(Q=pJ~GT`+N&`(fh>=;Ei*%!j!j)=z?|2bl@N@6pu5+>d-F zA9B3F&T@vC12Z4i--3z5(z6D%e*+VT#g{P-aceYjn19`Hi2I?5!`uVwSApyW^^ZV) z1>r&@^&oLrd!q)2cng|1tli#^LmYNyJe3*D9ntGUjOK^z8 z#=&6b!2H{RrXD6f0Zkm{U)Z=B%p8zkK^S&sCrljX-+gH2z{HQCiNpK_8wZ1#0~5c4 zrXJ?s=QzaQqlv@(1sey0nGX|ZMjBTErGJ=zVdI4`^&r23uo{|rSov>+L);2Y99EvY z;t=;m6NmLbBXNi)qKU)G=Nug3C1~QX^0@(rcn6v|tQ?+ckz#34tc zLB=IO=D^Y$Y`htk-eB!66Et&R@e3QTLsuV(Lp^N#7+rl04)w5cYjpMV(bU7*536v9 zZ$cA?xgR#p4Kp8>&TrsQ4;#0JsfVS*-)QP#?E&QRI#4*n#6f3ff$}lT99Vlm5<0Gh zF0P0s4ojcOtbL^x23*yc10vHtz$Q4?#D7J(_yhI;~we#1El~!`yQghxk=AahQ8x^Dr>? zz~-}lqp63j`D24R45l6?&W9!ri$_Tu;)-bEF!w;4f#7v(u)GB-A7JGf$X;j{0VK=- zQv(u*Rw-a{So;nn4)qFH95#Lc5(ka*fCU*C7-0QxkT|H`fr-P?5l9@Ao?+s!`Vb_J zJii93-$3G^bOKWkqe0>zdtvhS5-?@)=A$%zW5*Fi0E} z&ailet$%}w!~6?cj|~b_m^jRRuysi=ahQFu`X3~YoPJ>ab(lCTUSRD_kT@)kK=#4f zk1%nVyJ7wVi6f^s*xflWao9K{Y+fBC4vJrp*&qzNBNrwP^A~7KE=V3E4hl~Y8-zKK z#^FKYuy&~ck~kab?f=J_&pl|^B6@+1DUV_wv{0kBT;Z7v=$o^e| zBo1;vNG%A%(gph6Ca`=55=VAFEMI`ck=+kVFCcMb_ruz=AaP{(!{Qetj_iI|_=Cie z-4DB?4kV83evlt1!JzsDloVj)Gt4YlIRfLuXpmYM8$^TFAcMr9!3z=sV`BA#)+vC( zmt6gz^~WIlak(EBzhFl(z|I1P@fa9D?!=}a)^3BvD@+G;cofEEu!fomG6ycmz`*bV zx)}hL4?+F}-Ayf3QP*!eo*}e5<|B?0h)l3?FV&@ z(e2O1VL$9HVR$(ObpXgNC=*Pj;qd`3@^pu{~1vGp}_z?4i>Z<4&8pxozB?ohuvukE9YVM zq1z8ye-08u_x}l~{jhci$p4`758ZyyI$n_dQ18O5VVD3F0HtrZAOrfzI1CJ+^|ILP z7l3Ylfwdbz_Ja-$N4Fo;{|4C)RSvi60n~n&dYA-^57Gk?1Knv1V}tlG`~s?<8QPzM ziKDCiha>)WKpmt3txQ1f2kjAs*$>NC{EQ5+CIrk1F#Q^o*cccXVDsBxL1s<+VHZ-m4CDbRu&)*b}86@=042i^II zE&dB4L8=)TVC_1P{h+!I-G0z|DReVII!&NkBLmPR(YOqtJ0!8$?*ZG00!;@X`$0yc z+Yefwk8UQ&{ubzh^@C9TATba|R~v#O{5@hpsu>ty?PHMrptU#X_NPL_A68C4bTKfv zf)@EPFfiDHJO>j*N`vGnj9@{e@I&UKyB#FA0DO)%1A_yo(ZImK05T4=4-egbP@Rg+{s+*_cCdCP$V?DM z4?pN0&WzNYg480te0>821c0z1q?w5cSi;cE#MBJTO5mz@^>JeYHNZgzgZ;K0YgyC* z>#Ty#V*smlV322!VffF?bn$C6<4Q3Gh6(?q8GeH9O!}V8wDKsE!_Uvkj1#|u?@eM{ z^^lom)dObcRZAEge*R!)T2)`iu<{YJ@G4e@2BG>o#+CJTOe-HVGfsTU#IW;;J;P69 zhK8We!3;Y=_s@J~X3%=T%3%6H+2JPx3&R#h0f(KSyK(FpmJFWaD?eOzIGZXlJ9cBiG2}}$PLCFjZ6OXVp1Tiu+1UVp? z1@a^4E-KhPObiSSK`;LQ7YFGBsROBp>3_ljxoZmKp1a_CgczoP?(YG~gTnp`Gow}_ zLqibg9-+_7-~-^N9ANxm4!VnqkwMgmsX{~uWRH?SlT;(r4e|`~*$>3$OTq7jg5Hk= zatFE?_-?FbhKsGByP%j^wGIIs81z;PCS) zKjiKs2gV=f4}=|d7K6f#-{EH>EZi6vLXhtfQebEZ0^Jt{3KLK=!+A_iJT$pOPaRy( z2C2gs7$CU?J&%CQ0%Il)aBc+WH>N9~rau!0s8P+p!~&rh!QBuhMsO}=f?RXJ!~~XO zVPORw&;!=XtO2^Z5yEr;?c{|T3^NU4C@aTY@WvppVbI%vSZd3`8~s78hWcd;po>~S zEjV_NN)8r|CPvWyNKl!;zz8Opz$7!6WC4?`U=lJN!wzP1fJsg;$pt34!6Xlu*kv0*TlOLBa?q_$5)gI;$VdeUyK+7gsK{sK z_zt=%o&#h*sPWFgs0K0!-d?ZsrA16mygZm=<`ftVmk2v;4pFAT!f$O6@MAp1c| z7&So`K!8{fSuGeB)KF(&)CO70G|>af138IlqJvO!X%PdXHi!q(3As{62j(nc@Wna) zAQ=#bk8I3lWngGyW?&Fy3}%|>Aj%lTG|@wpF_8H)V~8kY0P|=7H6M zZ|wlJdO>C}yk%uT9Ebth4+S?Jbn*Qgu#ONW4l_~4V8o3VqKrX|2BM6CAR>U#2w{s0 zDATimTol06%774$1YOMn6>mlo2iXDIlqbpRXWMg0eUAO}Gv9T!R zLLpGI8>Er}qyiKaCQu2;6(@|a>+Ios>>1}kT!?a85^Ug$aSkXhAqfVq0Fp$&HzF}j zEP(K`L0)B=SORxo4;uqRFDod-LzpI(fKx&N$gw6MHyJ{bK>#9#!GQ;AvNN!M1_jlA z(9J}k6e5GxH;@201%XV3 zYPDemc|``KOc8Rz3D{ShZXh+FK!KPA;wdtKPf}qM1v?KR4q<_P0?ENty3+)5GYJO^ zBR4nbE)&q59Gn^q%zQGu3=CYL7C5&sBQqaZ5_|~<4=)4cvJy{W(1aZ?BcrD%3bLApjn8rA8LD?Vf(m$b-2t{%EJZWH-{*|g;>?0S`|TASP9|`bxDwc3=GQ1%0L&4fRZU1#&TpZBLh75 z!W4rJDaLj_HHJc%1{jU?3}o0k5SSwHT_TugAY-|z0+d(4C-g4upXva6o2-%!f$hCb2jI>uJ!?wkSyk zVZUkwRFI$;gVhNbs)#fU#bj`&4}FM^0gL}YVTCPGV)z=nLQG2oF@?xasvt`-(=?_H zSbQ2pgeoGGfLwqXKA=em$lw6D4*)j@*6@P~z*-M5KD3bs<6`DAxD0g}Qs4uvqnH>N zMh~RHqgdK~A<#OU^3+9bXOZ zydj-5t;v|C#$2TUI?cIE&qRf}N}?Qftg5KU zoU*1AENH`~&&;pa%*>^Lanki=21bzSCd^d|3Tlcf4jIhlUd)`BhgCmgU}VJ5{DOf| zNy$w?NzTDgvEC3YonKlKpO}(T6rYotmtK;=;2IPZ@8jtd@9GR@CZ?o7j%$tw9oxxJ zlv-SxQ^F7rKI$wdH7~w|p&-AgBp!6dVsUYNT4HWyP9<0)$P5o(M~EpPj!Up3Lt-Y_ zuAJ07gc@%bH!!E56n1D^aYlYo3HZ2Q=z-E83KU5U@N!QsGr+?&2*C}C z3<&WDpN9-NNDibCe#jgm$Xq<&TAchCK&RJXnC$Q5#gGAV5KLF7CqqVlaY@esncVcW|%|+)7tJcTYc8kRc$A;PdrTOW?8*rUsT^AAoFt#3_ng zm@%9i1c@qWY=Vx~%Pfdb%u9&}$8||QIQCOZz(NqK5}{EaU%~)C`5AmNG{~KPp}wFb z6^t<7(a!~*bCZiI3rh0!lQQ%5K`u)zLF8EwACkz3K0F(ioEb_p^Gb}3klh0c^z_6` zP+CnbD#|Y+P&kotn09d@Bzr(oE<6N4Hi8@k@(1LgY}`yTR=%@L&n3sf=`nH)!9X1Xz}V0oC*aew8Dif*a^uY(Ll;-5}Kr3=E{4ja`(Qlc)zi zARClR2$W)w!r{c&L~eGMtYp2o4|U!U{AQY-dS>lwdnE z8X^u_RRUt6Vr*wUgH$jxAg}5Ji9j$j1ALekBESF}dzM0sO~YkC@eaQa9!V4=4l7j< z!XO)km|(ddTHb)Jeuhm1Ae4exptZQLG7BsKB|vNSv5CjyFbA|Y44e959O^-57-Cc3 zheQ2B9O9re6@{1(=@VQ|GB7ZJX3DUc4_YfM#Dqwnu#mdXz`!5`nLz`G0JyAVU|@KM z!(MRBf!wN6sbEln-U)-hRfk+@rI#iarGT2upgIWLRED;qA*Cc{TNlxsM`?3`nh6$fWl|vJ46yqnKxYgii`ziegUpAmUk7P`t;q$6gVw=<#6TFfW(Xt> zT}A^EW{82BgKjVEtQvHCVQ1BV%t5xd0cs9N96VnDHXU(K97r5?UN1-rwr2xf92Vy2 z@dauhfb^k<8*Ggb$Q;mm6p$JahMAA99yTBcQjhFTSk45U(S@8J!E>MBDQ^bw`NYN0 zj0mX@7{Gf+Kquu_LaRIw8)QGo91#0AR2){4g2a(aXIPkk#36MCNH?TS1!953LFVK^ zt4`<=M!3D8sbr8kI}m~7&P!1B$Y&UX%z>TR1}aZMT43hG&TtI|2_l&j2z5Vf=@?8s z>`LO)<7)_i9YW_K{V+pmG6Z1x&mJYK|mS9wrVuYeF7P9JCe_q+b0zGas~e5ahl@H1Tgx_oSnVH$%m9(ZpfyE=CiF?fHh;1G5*lrUG_m z7)+cGs=pOV!^C0vup3R>0_v}cXyWnE@L7l^{vPW76=>qHv&dj)kHPGPoi(%rP5oL> zpfNBo96=NJf{I^26IX@0^DUaVE7YAo(8OV9lCVJKVeWB-nj?TN4)vEVnmA~$3&=^x zXHkRF1MEy_nEf#GC7}9YOt*vkou=c;vn@PF%X8G4F*#WJHzk`ntJef1p@=aKO}LG`LObb8R}k;IUw^LL54Fh zFz_OYgVbk2!%YZD9HbuB?tz^#1~Uh`q?N$}Nj=D%tx$8^(Zv5j#e<;YuyBU87o*X{ zVeOT6G;vV>0OSQ&IR`Tbwl{DMn))vw#S9D#JJG~pcadE|5=U-lzC{uTr3cuV_N>r! z1hW^k<{M;%ESh)))W5KD1*9I?{6IAIuy}->l?4muLr`~ABdG_kVFX#qz`!sGDh^Y> z5#(3~28KCE;-Gk$3QZrY(8Rf*=C4N*2gUm)sQR5q;vjSCq3ZWR#X;;V(f})@gO&r!Qg|$0i=FEh;{~}a9O#Cy*5KuoB zP5c&AJs-4z4pR@ScjeKw@)@@vao8SVSp2}ufr%rZaSKup zb3gJKx5(m)L6&22KdgR$nGaQla>gyl99VvYwew->VdBVV+=A4@!v6`>K$v=%IBahu zOdRHZSh_$L2c=_>Q7~~>xd*GSVB#P(APj3i!^C0Z?XbPM=;EM$FGwFu9JZ(h)~-Ys zM?T{g`7tNd&kY)x3h7&l%VeLtnIk5WoHkx|a_z3K76PS9~cn7RLhl#_=J>;`#LE#A- z?-PX9CouIeaY;0Bn0r)lh{M{YFmqsMAX}iRhowUYG;!GYkv9(UU^H=9IK<%)PeT)j zg-;O<@hUWNSp353XOO=@^(izO8RjCX2Z_VR)K=gSM{dW0)Wh=2ZZ!2UapbdXLFz%{ z${@R8?OT|8VB$B?%z?Gjp5PFFgC-7(cUZdvWjV`W=CJytL z0S<9kdlhC5%wNc7+#-hq@)@@vahQK2(aeX5C!&eN{0nP0!R&>#myp}HAoF4M<0Le5 zVB5B4p^4jr0*!%z0r`wukU21a!TOyrdqKM{Xa&>MM{q$el3tFd8I| zY(9EB1eWiR-Ggi|Y@8fq4oDmpkFaOtbLa7#zZ zFUamciX;wl56qu$k;IYRgML;tOg(Iz8PuOgHXk;=0uo0yA6B1$#F5R1of!iX2e}_+ zKBY9M{RgUwpv_FUaj^J?3qTnlwNNIQ0*(EH#GuI%ECwQo)eqX63rZ{G>IaQegY3uU zeptE#xe0_}=>)_EVNg2~B!=!@0cgU5)i0pA7?3)UTS59@=@rzD#b!TjdTiX0Oaz87&N=Vgc&rT`eA24!6ab*hw(vYP+$u`4QPdp9DblxA29t; z@8LXy-~rTr*nA4iK9E~sY!D6Nqq`j>ZUL$o85kH~cPWDA+_BjY%I0WE1f-oo0NQbY z-8};qM2bHcKQSdmFJB*gr~sINoHzhxDnQr}5_SfGv5A2JM1=S=2rhsQ3W8b)DJL8l zR2UQ){yQ^*&maJuI{?}P4?2h78#BYI@63#=6gV7qhHyCSlxGmh_U2>=nOf&C`3p0H zRwEmO-~(o{Rgcseeokf*^;WEL08NojN#JDI@<`p`=VNA3tshJdKd&=6{B&Y)`1z1o zV$~HchMf=Efx-wBR-nE455E21ihkY!14Bd5f2bJ; zxEyvWGBjLrWMBZD*&uj;i(%)Z|Nq57;lsetaH*J$VWM(H!Vl*Pg&&~skY^Bn-T421 z$j$%%#s4!iUIfJ>=v;~K)l4g4acRoourrv$VdoYm;p`R;hLDAI4wE0rL(Ug?B=7K3 zft_K?Luh;*U~>3*nU%pLi;W?Wg`wfnXJ)Qd>=)|urIH!gPXA|+&t5FhJPSlKSE&4GVPTl4F4!S8pMmQ&Q2S`JXVu&o9i3t3ER`t@_H$uu56L zVP}|t!_NCm%-IgC3?a-+45pwnGafPvgVVnQ(+~3p%%ZCvGK;JNo#O%Wj{-A;DaibP z!VW)S_WeK108Ue1n3-06W@cQ4YzD)>|7H*~gjYRc76F^f@bA9~C@dBTG3F(p`rv-8W?cD&nE~t;1p$Yh3m6$p90VM8nu5;cK=&gn#6MtnR6DMO zxdEhJfsw%k<`+@uIT{Q8{Wp_kWZ5$bLt1&r}@Z5OWdnv*0Hr zY#W3acAf_1Gidxn&k9*}kbz+@9w=YL2NsC@nZUp$4$;b$}09Ol<2m>5D585mDDGBEs9{QZ9` zNX_;C|HVP!1qv%rSq@5bCBOcgfW#D`aq)mzMC;uD|KjyRpfVehW$gtInp&{r2vzQhrt%1S@RA$1$2IPhYRtD2) zLJm8(F*BG><#N~wD&O`qF=Xd5GK4fSIsA02NcfS+#Mtdvq42|=LHM;XL&GHo2H|d} zzyCu(>fZc=&<(ul*K|63Zk9Cm`-(8%QQlYv2uyMc>gr|}KbAGiPi z7YC&eP`Uu6Gmu-pfzHZ-=B0#R|4kc&Ky@GFd>2r>gTe%)7Nig450HOA{sQ?2wpaSm;>o-u)2UbA`DC% zpq3p2CkJTIf(z8s# zn3MsNvS3mUOv-~v$blt_4B&ZYMpp2-1&p8t5`0ArjI0n=B8b(_#K6Fp1Y_~%CRQ*o zvVoQJ=Vs=?*(sT6aCV6y10y>lD75%XjNr_~0uU1vBm7ASW)Xs!$-u|~HW=J}fwCDm zIY7(RI5|LzG`K)ah>P99Dj5%fT$jke=niplIfw;(#E;!T>Tu=~YfkFsmjuCV;M3l4J}7 zs{x-N1UDaK!UCuXAiXd(tqhQJSwJ2DWo>A-Jp*$sNE|ll$2jL3J0t+kAP2x1kS9Uv zKmh>fK(g&wm^osJDJcw$=ippWwSnM5LhC%pAh?S`t_fxbg-8(dXT~7x-U2BC-M=l# zh({49jZ6TWgc>HG5CdKMBgq)ZJh6felr@`?0u&TvSHRkWAkwffYeCAtAVr|`35qkg zDWFk&Y1nngppb!IDLdyR2Lpo)>}E`vwb0xp3%mOgzE&I-3|%1gFlBI!ux0A-vIcGd zJaL1HbySZb#q>ljB!4dFVqjR$0Sf2fjML@NhNTSx}|I&&9x?4yuUM!7MNVPW_x5qFf9NTp%^zgD%<47(oS; zI!F?U0Bwa+2OXTm09M87&Il^5z;=O;CuEq%z`&3XvIN9X2eZJZJaKZAaxpMygGc^Y zcY!N#khj%AnF~xn4kl$i2$lkQ5F!e8JL^4=Ge9v9wn-i2O7O-@2G)lV5s*9s0|kdL zF)*;fPgY_Dood9+3pwwI)f0TO5(o64B`BAZpMjg(Qy6?G6NutQKCy`hc48AR>KQ@` z;3J#(pywj7g7op5z-?h*5P%+$1eOtm>jfX&1ko!5)eE*-7^)Y{5kXZBKSl}U6;XsP z&`C^U2z?-~IMh~dPhk*O0(LMHNT(#y(N0n@2?hpfJw`)e6f0y{84SVNWlf+AIc~;K zagZ7EAO-`20!V^^K@rJv2?how#CcK5+>9V2L0VKGOa=y3h@DfNBn^cb7}Vf?WJR3t zqz*X{N&_wj4lc;)PnvK+_)$+<5FwC$&^b>a+rWuZ2O@68Z4Evs3Y5#xFxEqRKs)MC z)L}n2hLM4Mg(${@2Wzn$wS#e%6qe(Wu%7pXp%K$Mj1zU37$(AIP~fVGGaQR5Y=*&2 zg)*=PJ#4WBR1N6VZDNGr%ApKK21wZf<$@?Ch9cOAK8Op(Sd@Xqkq9=17KT;^8H@v{ zm>HVuF$A$3$waI=4u%$nB9196m^R^Z0k)H*kQ@$XVmbN?OB!NkD6GKn3kO3hgRx2n zgA#^}07DrA&;S4b|4SLG6f!6&b6}{zt(O;OY5}9M3Z~HrX$EZ4U_T)dOboEang~HG zsSzOwVPQGW4T~;jh9b;R!LAN71hA+>4z?n!!G=W>2LmXeim=222SWjau?jXBh$j&w zmW+mwgs_+x3NbQ2J1nXoN^p}{%*U2Cu_!|~6N?f`3RzsmHu_921JRaXI+&PZ8{`hm zgU_&}LR<>Tw*=F{L>2r@4E-4C0b7}lO&yk04DuJ|af6s{!zi?|6wp|N&<(;~)Wg={ z!c`Ng46Yu^U}I=yXvR__U^$$TI3cLHa0=@gix|-cR}N(`GZbN~kbh9f|Mftl*CBo<6R zVkAV6S(wQJOOhg5A+~l0cFpL{lVE7(n8G5&p`ZflS&4~oD5z*_Ffxb3K(^wC2dF>b@sD8lA6@|CeNd}a(#22b@Ny9b*k$nqdI*2)2E8pM`!vE+ITy&zkV zF_uOM79niu3ac_~(T+J*g6seg8(Yv|J@Fcg4>5`>kb%e;t2+t1iKr}%;T~j*L2RrM zis58X79}!5G4x`w0lRS^=OAM&;eu5NBMHefG&3kSzyM<*GDn-^zZ6E!#}brSYy!C& zvt&hfF^G*tBS;t-V+j#vh5|+`&LSfEFno_}6Nrta-vSaw##kJLr59ZT+9w3ohC22J zo1F(sF)%Q|W}RVt*gPnV51ST*@nMr(Fg|RC2*w{Ov>Es)?=sNsa*V(Eco`TOLA!=P zhY&JiEb$?5ylY}!N>P4hif&#?wr-K3VX}Tnetu4JMq*}Ov3_D=QF4Zvi7xnvXxT7FS(u|CWZ zMuz$z$LS_woa7A)0H{@nldvI6o$#E0os?Lds+R#;2$hrvp)>PJQj78uL8n_YGJsAb zg$Oe+ARTl4oPjaIn3*%pN{N}vMoUSFxk^t>Utd{KSx!+&UQtn6Sx!k&k(oz~KGXov_8{2iPzhC@_2LF`Je!d)qLZDljpj znS6+W(aTQVPCX!mnO}i9Bf``>nweLRxgtVIEmTp7i4{%xX+}mHW-dK_&{5mW0t(E6 zUd-GI%&}gknySoP5sLEOemTC%ip&{aip=5)%q3pY7+yKX#Au_&tgWEP92vpPX=CaV zqou0IT&1AM%&7FSWRBDGR*YBFchpw|pUjOMFbf$Oy-XFE z6%?3L(u^6HSeThPz4SraJwY5cFA$T>SU*}tR$iYuUr%1q)|R;~ORIn@hn80g$R z&~d#e=gnfA&+X&~I-fhfJijOfe1Nif#?IUQ4W6A&&bbB)h|fRsZ7)_E=tx<%}dEi zEiR5PE=WvH)hFqMYw(%uD268|78Oi!V>DC`impVSt>= z4o+y0)CUT^Qc$V^#~6x@uu#Tvjx|i$)tMnFFFrZHs3C+%K;zUnSelAUdj% zK_^oaeHt~aqr`}G7B%R65(#L-1l;~{lwCJ3EXaSL0PUr7k!Auuyyr7}Vge1pS%&cX&=zb=Gy7Cg8Nhwi1uW)5hN zy$}N=lt5ksm(QTZePDMY(i^zUWnf?cZRf;hP8$yQOu`|)2y8wgeS*tskOLrnImij# zprRC1a3VFPP?}sIc~CKm))s;`%`s|pkWnBlpw=d+QirzNVWqBJ_14APO|D1EN9V$m+qXLZSXbR(}Dc7%C24-Vfy?hXb-WtbGGA zA6XpPeB|(40W}Y#9@#yhi$XzCAaP{(fJRubiG$AQfQf_G!h$#q3=FWn{UCF+pkg5E z28e+A3v_Qhl*<6ihamMZGeL65;f!oP?4A&idSrhgpV1CpGz&6>fq?-zJdw>|fyS>C zBLigRE>u0NW&@qkhFn_1ay&>Jw2j>oyg`crvI_?^cE`v7zA<3|)LhWH0w5z{>c2t7 zL3&~0pgjn%c!e!)2C0X&eL?DAVFD5d>4lxa1v+B|Bo7mZO)uGj1d-gc8M^Wt`7Cgd zIWM8^fu&oRIR~KPuxUn^IP5G>(Ag*;D`4WVd=5KH8YT`qa}0KNEleDAsWeDGY|#u% z9Cp?S?2JH|_#cpB1_lP?v%o>_hn;Z?+Dr^m0#gqv=Ry2gAOa~IBB9{`x}yOk1ye5u zjYnA99wz<}q=!uKD4l_{z|2VkaTpjF z6rlQG;+fEQb+A*g!TnV~TC!BBNZP#PuE^}^KiL)BG5X_z?dj49YzLNM`osJb>N4HNGK84gN^XyULl$tR(SPlobmKxvpc zpmGaj)I2nC*x7DN(8OWsY!#aLb!fWUfF|Am72k#?z7=FC0|UbzG;vV-4J364O?~K9Ik51Boiz^=Uk!CX@>$oQd;~j_ za57XLrrsBteqd+#!Ng&8+YdDLu(Lgp&jv$2&P5UGZ;&~#G92W7Jv8wSkRSsCgEgA? zcc{1*ns_xdTwrJB!OXu770*CZuLyN_8JhTgsCWyS_&z8fc4i*T{I5{)=};OZjvSr~ zk;Fm%eF6>7^=RVk&_LRYChh_iKMNHH&B}m;VD-vJH1QH>_=rO7fvJb(TPq}SNM8-2 zArvYOazDtOurr6_(8TSb6?i(D_y?$X0h)LZ)RIax@vBhrCNyzlXjiryO?(Ped0$MRC6YLDdpi_K92E4R@hXs8 zE78PZcZtBxqz0uQkb2lzyz8LqLFojP&X+**%MPeGNIf*jK*lp%hl+#LgTjFeddAli zH1Y3H@sDWYTcHg@Mris1nFF%-8`yLP25uyAkogJF0#_C)4s(wURJ}EtIB47vBo&V) z4!c9I7EK)1K3<3>eg$L*C|yCtVeTx0itmJqgWLo4Dp=+QR2-xp+FU<5@Hw7mo}=Pp!S08LyR+KHA&6WTl@gU`;;`_U zh$aqe|7}1MhxKP*P;m`3@hBm%F$}s; zagefzw{OwTn{%GRwpyDA=addMsq2e%e1fge~S1RRccY2J`Y$uk z#9{rh4QS%9JG0Iqi9?eD*uyWO;xPA^K;82RP5eAm{5P6-E40(b0?p(wb5=mbIicbp ze}U|UorR_Z6^E(+3{|gS1>{g6ruZ5a(2u(Z^>K>>xX!0I*eF9hrnjGNburVfRa={RX z9w`SGhuw(*Yd?bG3smI8#Gywx!qvm-HCX(>)WgI<rjJ{;oH(8ZyA*xgVt^I`s436+P5!|n*!f+h}2 z=dk`MOg$_;!}>`uahUt>qnQJ1FTFw&hq>nynm8=n(9iORiKCz84+~FN{|x3HSU%T; zmZLCnn0sJ%M#02k`O^_iJuH9v;Sdi)6NlY>mxx0gc9#^)-VLD4z`(#zhNd1SUWXp9fcnb@O&oT| zM;MwoEF9v{#9{Sp0S@sBG;!FO*!?)fVdDlc|HASkY`g&`4h#QdXy(A$;jlX?Vd`Px zx6sss?&1X{QP{WzOg*gL`HQ9=HopQn){FsOFT=!PcPPTlfwh;Uq3sBCab+~|IUvV? z+Iu*}Ezrba`Oz6od<)bZZ!~dO`!fQEcmkR@Ed6AoiNn$l?2b~HzhLR77fn4Z{Y*s@ zhozqdIK)?=iNn&*E*#>A(8OWs2R6;>dSoft0}FJsZS9awkl@7)=~jZotO3 zK<wnaft6n6NlXmcnXL3B{XqZ_`}9);o$%Zd7N;t8KC(K#Ds}+gE&ay zu=zxB9OAHXC%C=PdRZGyJuLi<(ZpfptvwELcQkQW_=65r19=f0HopEtoj0 z-6)DC4)d2RnmBCSQUiy$0h&0>U$$uCuyrS{XyP#U2cU_=;x__KTpU{dz~+Tu{(|*4 zVRxFq#9{u0%@@JMVe2&Jp_va;zYtvU|`sX zL;M(;IP4DUi#Wt@qKU)Wy|DRJSiD26W%!S#9yTrwIcpqJUxU&QOdN8iI6@q@E(LN@ zIHtHNZ2p#!fdOO=tUNJ56NjY}3p8<9zttIsxHpCJu}DI5crsIh=_m4vWV^ zG;vsb)!-0sK@*3Kr}yI!pN=LDi!b=RH#FQ}@wFFCJuLiB;1IunCJqb#+i2pj@PCXZ z4h#QxIK;o9iNnI55j2?!ZD)ew9TxtaXyUN&7eNz;g})4%I4u0tafs`qiNnI*3WvB8 znm8={Ve1HB`32Vg%s^8Q3;$v?aaed(qlwo;BeD%m9OmCXG;x@JVe0}w?tx}mut^({ z)PuxfYg_l=5I=$@4r|w)$02?lO&qrF=qV2Iw`k%pfBnEA4%_@L_@(8a~j z#9`}I6mf`aqKU)$U*)m1NFJSHg2R;J>LlT;LSbr)Phj=NPI4t}d(8OWk z+<_(z8wZ|@Lwq)xI4r*}!yO&oS2!%iIH2hqe~>HG{1@hfQJu=3BG`~l?)m^d$*I4nI#;}BOy6NjY-__`ZL1_qG%u=L=DrXH3a z0&$2(qKU)m*>p5LtXyUN&?8hNK9ZejTo?+|1VBrP}&)sP1Vc~fk zhxmCkaaefXLKBCD=OZ+6Sa`m}A^r_b92TC8&~;ug_rt_F(ZpflDT+f}7EK)19?-xc zZh$5Z3x9hY;_hhTu<(biUjw-xT2+FhAR9?NNF2IsilGdLcpaKJY#g!^hxkM^aajD$ z$05EPO^(XdN6xo z>5w0XxHy_PY=4~+4sk6saae!W3{4z1PiluI4htXH`b2bhCZVZ^<(E7h;$>*!F!wZ~ ziNnU(I?=>o^I_{ELE_LV2;@u#8zl80aajIx$06>ICJvj=iozkDgeDFv zKMQb(SD=Z*`XkLa#JkbNVg8+lLwp{ZI6HK_bR`b)jcDSqb&|04r0C&!9ZfwfJRhNn z!@}VenmEkAUvY^4MH2_@I|fB02ee>;xd$dLfF=&h@0Mudu=Nj)XyUN&^uZw>f+h|N z&v+c->1g7x@Pw_yg}EO#F4v2u9=1LQwmui8J_Hm93=9k#(A2}iVK)x(!)W5LcG?9r zaaj1=Kof_pzk;p*g}Dc|PUAP4dRYAnTNjM3UJknc7bXr<4_g-u6Ni;!j%ey({Rxh2aq~gzK7*!&^#wL`vsus2bK?EHiFE6u|c#w)J^F22SDwImG>a~L4HKHAG97H zoBgnLl(2javI~UK?Fa442Z^EE{{U(~EFXjH2iXn6Aah{;&jgJT!7hOXNkDN5$WYKF zw;;zs#XuBP7{ml)P`&|)q1zt;UFePMf6!DNy8WPYO+Z$F!Uk+0lmK1t2x7v@9S|FY zL3V*?7zXVx1Bs#A{{m`1tULtyA2d{tZa?Up6m0glKpg}t$6)q>?1HgDbT5wh_pk-Y zGB6;AKWL~9-G0z~0my#X`2-MM3=E*F3qfpHJb~CC4AT$N1LA|)4KOx{55p^0WGXR;Rotc!t95+3p787&Hfr_Kg1WBk6?D9tG$lJO(3-= zq3xi2X!`>s2Eyq2FX3>1hA&7p1A_weFc6UYK}Mpx|2Yo(Eue>s!0J1QX`oxMU@Qpz z2#5V0(1?eP2ZHPugO-&bov`o&o#%k=Cy@LOsQs|@rXVp8Mpp~k2MS7)=;_~}5~P}e z0k-c4WIxDGbpP`)V)_ZBGXffJR%it~y8WD>6LT3D7|`wCPz5rD0lpsyWIyQa26X#D z=T?Bsgtem}x)>NHK{rB`f;xGr*cqxHEtxYIK=s4UYXPYRVVM6xY!C*WlL7J~diXhj3PuLh@B^Jk z1Je(ROOSq0oNIgU&hvo&SSwKd4QF z&He~0hspmqIMnO?(QEE_S@E6pp<%uCTNNleN~ z1@VhZ5|gua3yShfQj<&ai*$=iit_W)6?D_`b2CeH(~1&vQ*{gS!ADXn=%y8y6lErt z=qBc5CKhLcm6hfdmuHqFXXxhS=NEts%*@Nl%uChH$;{0xu{Aa@P|!^)%Ph`J%FM|u zskF_=Oi4-2Lpzu^IU}(M5*wh1fE}fsTvS<5lCPhXr=M7ytB;fkk{MF+OOtX^86d|Y zql6;zNxcwhkdg3Xl8HPMRj;@*wVweh0Fu~ZxB}EK+$@#gtsd*&~dU^RJ zse0~yp}OG6K~2$UJWzgQVfYB!Vu>Qlj5Vi&&JcuT85G6fvkS46QXuu9(idGdNF1rq zK$2#Lo*;=N1ZFaWSNDLKCRL(td@vMWLD zTaXTrIH+9i192Eo&kzHNPX`4o^bAFi5}0~WUlPOz6)YecB#vD4z}A3(#6jl3_Hcsw zfH3tSaoApBXcZ0~BLazo+P@%mrXT`(Rs%>JcBT)s$qrW!+f(X{rXFP-P79PzFpKe9tih1N`z>m^f^2Cv5LCOuQ3nK5WbnCcX?RN!=6+~X6(j`4=wd z3FTsxOrSGELGD6#{{(1+!rTdRKd8BY?tW0Z#b!UOU_?JP6{UqT$uiTm_{g#t{=q5Rx6x< z+7H{~0P5<3%24$12bED!rBE9n)C*9gGBCiFa6ts2VGZYi)=1?++P08(E8#Y-v6-b2 zq}5A&8`lD*Bf}PX4u+qK3=Ki@H4G~m zMHqJeV|MuY-psRii)sR!Hd z%y1Fp7qCAV9DXifVAztx*RT^57EVyR>$w7jtQxORf?gz{wTA=v(TJ5+J z6h|O`fYKX0Ez2+ng3>NS4RbIojmZlz?3Cw#gfWAF!%ley`RoVm^QB;VVexwqeDrfe zPy%LLPI37E-&BDCQ||v^Nc#L5&A9TPFvCw!I{CuPxQclf%y>u7;ftnZ;JY($xcIu~i^{mohQ@Ea79= z2}-a3gdKi@{U7bP^8aB-nr24IpH94x{CPyBAxM}3k`F%p|1XZL<`54=jS7;QmuPBW z`MgCHVa|j9|HVOZX3xOz8kQ%&Ff*)5U}6aQ%*?n-k)r_|cL|IPTR?tEWODe~z~t}~ z=AR@khn)|YMOGyWIqYl{V%XWl#jq3P7f_yq#pMHL##JCbNE{{x3u90j@PLtF%L8#p zxdpbHkzvb2aYz{g3VQ``86mO?99GC>?K4NH?_AH-*1WMX1wW@cuA0#-D@MgXu=2sj29fZ7Jgbv29)5(i-rAJlfh?6@c8=_NBT zyySt+Nnsg70%?X}=(rHL9l>-3G&{ot9UCG%w8R1#S_123)&}W?Fr7iG{GbNIOoJNA z2yVo%a)1@G99j*V;*nsrV+Iwl>?sVa_RQc@ir7K-*swY>gSu@T5N%Fi4i7u%jw4oQ zFbA@MmDL5z5n*703}tb0fF?A#K&Q5Ha)A0%+$`)(jGzu0s3FC`2qu}pBr}*~0h6p? zk_}9p7|a#{lcHc!3`~lHNeM71 z2_~h$q%@e60h5s3J91#QJeX7flZp)BIb24U-=JY$5W$y}$H3?cVli-XfClFw3bs3e z+Ix2>xf_0)-W5?2>^|k`WY~ zjGz-`L_nbn;e+RW7$q4&oer@?21Y4HaAJi7_g_$2Wt;{IZjg?@AOpasgEIaF1wDfV zChz!D4$46uFy;~XN) z#sH>f$cO@1666e6_<>a_u%fEO=SKLQnefFjb4p=uoDXv&JZPtagEkP9Ai#&&Gp;y@ zG{}MoUXUobN6NVJ4l4r#BHAE=tB#`xGH`N$1h_z1SrC+VKzhJwl!1Zk3@a=+*Moh_ zz`y`ocgr|OlZ}BvKEJetfpI;^t&9N*nRyJ1>p|9o6oUuF7}tXmDu~MBhIgM-#3>tz^DNQLRWCw$%0O68g9-0aU1_nr2JO`COP{ZMOV=&GEouUd(K+j>$ z(gxj8$M^yy0a6Z+yG=X{4AmuxeW3zD7*ZG`43($gPaL77E*zLhFcjJE#X-OmFIj?0W{?^N=+rj@1IWps4e_#!f$X0d1C{N~RAD6n+*_c;Cd(MY z%wk!KI5oymT=K`HT^wfiVzT*1#^uV1QpC#W)A#AFx}3p>BbMPB6kM zaBatK#t6!`mZ11TB0xjBmf#{5Jb%t6H;;hOPk9&^AX>mIuog~^*E|di zb__`K)}i8pjOcUMVhqfDR@~Oyp27?aEQpD0R(=Lb2Bgq!_8wwm?r`?f)(Tr zQC5f%V2&8nCNM`FDg(AwLXXi;{FcF~oOZuY>p|NLENNFqlFe2Q|nH>P0Bm9LX991_ldc_t=1=(~=dOEUn-& z+@J&lk+Vh?gb3L{gg|OcBq2h!5Ft#888%LF%G+4m>Dn{i$*NQV>b(nLM+B%*9)^BMzb=sFc?ZEE*XZK$SUI7DiyV6ebI!nHievF_H=+18501ObM9AstzoJ zL|}0kaju}IMxwJI7E6iNi{xoAlj!VAv_i14NCYLWCE8omSBT^TFcXXav7|Oos=+M! zh|^1)DzIaa2&}=2k*A1Lg=8$4Npz@!RU;8tt;5Kgpui%k)W#9en0k?%0A^whQjFFB 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 {6c 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 {IN9!(q;{;+d0(8FH{x)~lO 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 `%C1rG5BG;vt^ z=|dBTrJreN;;{6y1x*~5e)gb=!_vcXG;vsZIFBX{3;$a<#2=xF!^Yd+;t>CeCJu`) zW-HWm0u$#(6NiP57@9aNeB{u?Vc}zmCJtL?;)o`$0iCb+#UUPwCY}OSpMWM_02R+b z6NjC1UW_IVyC1F^O&m7Q*p4R71ML_0qlv@z+08~1ht1nAMiYnK8@>)r92TD2(8QlW z?LCAh4lCzRp^3x7{~4P22539~9hx}oKB=E*;;?XLv_?%QN1)-%heKQpO&pegRnWv? z;je=x4r>oMpozokWe+s*8PM;4^14_t`kEOhqd1n(ZpftK@&|J)*drK6Nk0CY|zAE z<(oU2I4u46qlv@PPZpXuEZ&RI#9`%sFPb>)9OJ2I;;`^vghPB4nm8;!ZpR_MA59## z9_A97I4oXnp^3xxS3XA*hsDc#H1Q|U@z_5]@n%M(~U^5YN}M-zwTcNH{oSiI|? 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 {5>dpN|A=gUC(3pURGA5A?h{Mn)9 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

ljuxGJ(#u2BnRLpvi0uKg+lnekLX{ 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 `|Bpc^e=`3t6A3{4!S-ULk?rrrik9Hu@3O&q2^ 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

PqO*THgVMObs$c6J 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 z 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

L~5 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


LvE09_X| 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 zed58
YEJIKN4;;<9(VB)ZP2R2TLE)JWo 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 `^-Bo6V5XyP#U-^U^T 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

_8 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%0DZ zfq{_$Lx>8dQo#tg3!w~bMiMK=$dC#(1x{hp3YUa3u&H5WNQcV8DQwEHiDA(SHv`IG zWB3GRp;DxZqv{5oql+a|VF;n?qJgdGR$$3P=t_o*D=?BEmQ;yF2t7FH5@Hx>98228 zB1DE;v3Lhm$q>_S!KiLQ8Zj$yOh;kVtssq<6)C1hGOM{!KcWXE5+6(33=|!s@dyf| zfk-(R)dDCwh{=x_8nLu3u$zTNA;|a07)vt2QdokF$4ogyD@3*s#KvBWWAP_O+Yq}> z3}sm27fYW3

C#-Eb_{a74EMV;h3pT-3tmVAyae9+yG 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�@4K=Hu<2^wRg_!4km3tDi;gYr#s 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 `}JThPU! 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

nX@UIFey@oJzT_xa46kW!uP+iAJ(Ul3) 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 z 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 !wzHtIT>6+IGFMD0YU2D!6cU0Tsf` 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%0Do9 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%0Dhf-{VWSyb1pecXUd;*e9 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⪚MZ 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ðkVx>hy%K9f`Nfsiuo*2cdcCp^)tY+&aJ@w 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 {97MH7d) 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 `%X1rBl8I(C@7u<(KH!+?py=IfWC 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≻ zS2>`xYJfOZ2qF;@66EO=8sZ8`0^pR&P+F2^0W}kP+7a<5!Z0A#Fe04^16uzA8hHUV z&%jMOM?MGVsch3&Cv!|;pUyImIi2hB700XB9IxL4p8(?yJr?HPbtlk)Fph9p2p6W- z3AC08w4MmIju+NE1Wg^o_6&iWh>m;#u9LZ@aL#0z#XOZ`8vAs%8LYFJ<}nsSEkZee zCID*w4ab|e9B+eM1adb6d1ulf6^h^r5pq%uk|?;Sgq$;jIK&1m3k`=uY(OpffjGkk z(xCv&>Vabsg}`=(4MaV3N(MzW=&Tp$LP8{QhFdDgY1@j=8}s@G1Z>3z;DO z%p2t0@(7cd89=*(5PTSm8GHf_jEA7HomB&pWriFd4Pv5TX2>)diWtOS5;)Gtf#rS_ zEey;kr=LLNKzSPZj2v)z!2p?S0_AmxDg+5y;)zWhw6`CdIB4t-n>c8oLI~+hBUo7i zy68X%>FgqKdBVWJ09xCR&74U%&e{R(Rm7$qviL2T0djB-Qo#T&F2F@Ov~>t7z#-){ zMgs|~4BjAt6z!ms=RjHv7?2DFmo{K|v?2yndqA5_ASR?D0kNRdIc!f2=qwCmb6{usz{FwZfQBSMHo?SU=DEs{a&SwT`T^{~BDurvk|2d!@fsR3c|3?$SX@H9V2kOB2f z5RkocP}s<(sEAoD@un$U3qP`Lq;f{BA}902iQ=>aBw4J63G06#YuCJu97 z98?}Aehs{Oh5Se#u(Q@;^v zK4^~%ND8JNau*8&11~f_VdAhg>5^#TTF`J%Lld`y@(rOh%$!7MyxXFQ!|Vm!|A*`z zSo#P>Qx9_wY>ywze3*Ok(9||R`$IiQtJAb0emss98LWMBZFI1FOK z)E|VJvlLA|>?|eNo(!0JSUT8^rrrV?kH^r&L92~G_FY61hb~!XfSn-)Gd~7u&T};N zu(K#&`3$C>1?qm-9zU4)TBtd&v!Y<)Ah&?9FjOB*d@(d#!S?>a#HFC&uZyPsI@Ek? zG;sr{dN(xj3s632$QWcl%zRinf$cqqiNnmzh3bQegZ4mx^uzY@!NgUd_O_#`2VJcK zQV%;53Z^~`>VDXsJ(&1usQ5ZGb2dWF-;E~z3#$GEn)o{?{~?rynI8buFG1ZCk0uUk_k+xVokaq(R}q@d%F)z=+Up?o z&1m9IP6uF@NebBBrs2u@y3Rp%FDh^Yh4|Tsbk~ng& z*#Jo#R1SQFrcWy*agch@ay5_z_DJF&^{{;Ei6jnE4_fdFQtyW(4pP4xBna9oiX;wF ze;gW*u}I<|^^>9QNkKqDtQJ`Mxd#pB6eRUft3b|SsD_He z)PokNgCts!#6kX=1@+ftH1W$&@fk?spzwj6QFH-K{2^5REvPuiU&y0Ozo6nE_kiq$ zok7J3RRk0N49zrrNa7%ScR~FNx$TVsymuXBjt(?Gsv@Zei64iG8=;B+g^JswiJL$J z&jl(Db3bfsHv>%^w6Y!)p518Tu(N5`qlt?^^U)C`aZnu#>n~qK6Nd&D!$Tx-5EHaH z24wGd5C^mjjS;#M9V7@kD;K)K3KX88aD%m1Gf5Q6R=;G5rlF)Pl3TN0j&O#jGuzokp9N2gbte%01L$x!U zhcaN|u(MHb;Sh(_lQ8wL^7bv7dYJfEG;vtGz|J6rnFAB&hNfSbIP9!YF&yHsaT=I< zSiHc-ozTTi(9D6IEozTL+#O9E7GJRbJIs8Tcr2QF*f?4S4sqC7pD=S^@dc~rVdBtW zWSE9#4(N<`klaEX;;^$TVdlWhhqVh};vh3X_&g4CZs8DrgeDH!%MUW=Ee>(?vv^?f z&J3*|VD5p5!_EMOiNnsU0o_XuvIkvU4$T~RdcYwLJ6i^34s5SG`WZbiar85KVDTP` zWfGFmqt-0TyVx111hjZ?N$Pm^dt*NT8{Qi7TLq!|H2YG;vsZFhvuG`4`rofY}RL zqX2SuB$|5InT#no#6cGZgY?17f%&%_O+C#0^=RTS_rv-DAakHiVUV#5i;&cV#9{4K z*f=OmJxqKnntE7!1=gQ{sRtX*z`$@DO+DyN5Rlw69OCcL#9{Lme{hI{_Sb^UgV_sn z53K(I5{EXWLCP4^L5(D6dkG{C>)#pS5Vt}ThmFs;;t=;m69>)jf-H`}A)bIH4(kuX z#+_j9hlv-XsfW#T)Zq|sLlcLctvC^f_)Ii$*gPU^JPPI>nD}}$^|1EmE*#>A(8OV9 ze}isn289#Me3B8s zP0-bY1Q{3@>~V;@qlv@fF$jlv6q-0Jep7LXgLYzroB(qtEWcNvsfUR-pozocu@8s% zG&FJ8-6IQeh_6Hwhs77HzYcRJc$*~y1H*YV^{{g67MeKBosZDOVP~ep`u*tUvw{jW zEcqSzY+_J30IPQ-(bU7*C$RAYnE9~&sSTQX*j+U4XyP#U`=g0FK+_x4Ti|gIAaSUXU~$-b29P+&UtmEb0wj)X4s09(CJw8=knKe_A65^5)Puxf zmC8z3=gvj;9ktbSUbQ3y*HFo!{_ zV;C3b8HE`jhcPfPz~TcGP9VLobO%dM?w~vhx_2CIB7_kG3KRwgjIB8!GaxD;B1kD z5vCt%ECcB5br>6_21Exy_1}e#vw_4w7+q~Q4)<4pH>@)-8~_cPLfsEC3T8hn{6XXE z=w^cK(S#p584iA*LB1xgS(M zqPu@T7BfLQkAhEVV8FP(9Nqn(BL=Y9p8;LK1#7p0(l5v<==Ou^X>>C|_KQLT7~Nm! zYR}<_zY|dVLFofz9>{*sdL?xGpW*O-DAaz~d>6~w2lpA7FsfAm;lue8yALYfcYQB2aP{s3%>gPf7az~Jx` zbdDnEOuPgC{+m8v7S@8Fi3d7A@i4@G28IS9Y~uf$87_XVW&ocB`GA>G>k&W1?GKq5 zRvlnq*z$3A*Kllj157I3=Kg_ z91TIBGYV6L8bIeVOaa9QNF6AgKr{nG!zGaazE(S~{0|NPMkYu&I{yE^butsf&maH) zi%{j zrXMkjYW-vu28%l|F_IM{eg?%8$ls5l{sx5y0~5m*Nfw8l z7ythk2Zy^dB>#Lx^6P)-S(*=-g|!|ri-X^4cu_LFtNN)nj3YpO3^r=h8yTCr~*IDqlclD01F#5`f0BG{o&7bs)Py zYC-nG$^el2K;l&K12g3OT2L7RDkDKok%14^` z8(QBpayaZ{;BfePkb%JjRAz$eeo(mytN%gn0Exl)2@DKdKxHl{K0xjR(J=Rc;v<2H zVape0MlDdf0_l}!5XnBv$Pkji<*@Sr1A__ZJY@9r1QKhkbC?WDV<0(DIs>H*kom}B z=yrW!W&-CwkX;T;Aa^lL0oiwufguER9yG`-kbaPPAiXHz4^3-Jv>@RRvg->t&o*58 z1WVh&3@gEPLN(J$P?`X>cR+T6&YcGPjfKJRGc$wM0cM7f`D_e^p!#$*xUB;z`$6sk zr3cVi(IB^g%e`u+m7sLS%+PQNl&(Sk1eKqUpyj4K3xlB})C`b$AbUXO%;#b-T<{lE zRxnHfogwT1W<%?1P|zE2Tw;ZXCRm}5zJW#=4=FW z4uUxs!JLO+&POm8BAAO1%*6=i5(M)z=&(+R4_P;YLJjPC*3FwiJuL`(3&@8MU$O2C zVg+pwX629t9mETY8deU_IzVm~jwVLXrDEXCLyTaO2~0ABNft243MSdWBs-Yo0F#_x zk_$|7gGnAR$qOd=z$8DI6abTgU{VN73WG@zFewTq#lWOEn3MpMl3-E_OiF`E889ge zCgs4SJeX7flZuezq1j@YnL($If)Yp&~hqIqD9)+`?F@p9VK-52Hya*S6!3f%K0TF-6 zco#1Iit#a={hIM5oc)Fobk`HQ>9nBi zje5#$I9MEV)-C85O;(O+%nXnXwE`@+8Le5NC;hVAWdx-T$W~aEZ;Z=9NdU5qp5;5E zFe?LO(=ICqNQXEF>((03apa(wV%-LcC<&0~Shs^j!F%RdcYv??WaR*@um{I4D@PM6 z^Z;2#KCoqs+gV|U$MS*MGN3~m82K3YLP7#^67ONqiMycS0CmC{7{wu4&DdaC#lc!Z z15PkW7#ozbWkBZ@KsA9+qh*w21i1{tmI6lrge?s=ST41wh=I|DkwG4mk{IuUoX9u< zd_*;9IORTwsR(xF1CT4h8Y@56DP}>e{NBSk z4?xBhXEQJc!pu_z2Y(^&0XYQJssqtrhpgoQ zJBF#1fdMXlL4twdG*~>4sij_>F#seBcm6A|^TEd-LqotFW)H|z*zz96IYpe15O9aP z7@WA^s=*U)j2mCT6c%`R zLIN=r=2wt9*aSP{oL5j6rNUj5lb_7MmWB zsDNn3IS;uZPACU4KthnvuK?Kz;(}MrGFHL3nxLds4Kqp?q=In@hy-C}aA`6Lwvd^@ zQW7cg_)9`A4^U?eWNHPabI@VWa9?FfGBDV3gM1Le#4%Z&5$UXEb;ckj4o7vyKt=;~ z#sEfZM0%Vc$-oc_)&x$8aKjc!GBD&q#hV!z;O^Os>>iMf>%oc$+XzqNAWiCwAxs?g zm`-#?av}pO2Plm6d!g|P3Y{1b0V=TPMDZ{%7|er88LWabVEeJ*6Xb9ixLUYR_DLem zD_j7_d;lmlFfiz!fEov~4R-A*1+qVgsU7S_ z(8hUvP$LEu!5|F3C3cR!00V=88#Mk60%4387z4KF*`Nq2VpI!d7{jji1{sKvYHIlz z7)(LtGNzb3!vKcIknxH@#>@HY57#z8<;OhWKF>-mc0y$DZmT?H6Sq67K$WV1g90o!% z8RINakpc=v5Jps9vVxEjd={((hcp0Y!zxTjfj%2nr$D%KKn*OAIjZ1x;T)JOq`034 zFYduj#rZIc;h74QN?w6I6TD#f!qgMwa7TfNr-{L0Ja&^0Jb~ZU=K8*8Nk+Q8C-&j z7{M+ifG0c96e7sbKY~a`nSzXB`OFwN-xOpP%V)-*`EbKbL58t>W(=7RPlGT+%s|G& zJpjtK;F{qkX7X#oUSfe7Frq@B5COIMkQy+c&{by)Vd>8RHDH37`wQ4`v}cyXVg}?Z zM3OKNh9rsQ@FW3lVXc70G9(S4aaW=yiIp(LkR-7hHA$?2Sqx7Sph)`*_61#uRv}fN3`a*Oc4JHdoW;;-m*-n_na36sZLW(FT97sxLO<*lB z-?kw67Nz6?bx}bs2Vq!@GS0an%D`X{2~99yVK@(7|ATr43=H5UKa3vWF(8l`APgRd z0Vh{(G3c#wj2_^QB}kS*AJlCHvlti{U~9%1=d_41Fc_3W?KEhHGOR%g^FdND5x5%M zeGw$jg8T=IT76KD7-Sv@!xr;1&S?>6U@%w+wa;KJjIk5OI0|JLU4$~=IS8Cq7#JA* zi8KM8cVHULKt{qd04Uq2Glnp8g<{Dv?MPV$sYVBdWxhBlb-=11aBmuJ=0k9%0@vrz zO7$S9_YMjH5Qc5NV4MSrPEarXAS?kwD%C@v5eSe47zm))J6og!caRhpq{b~SPd-Ywj!=MVgSWoJXkgu)HMRty}{sM zK~%aROKQPNg1{v#s11ma1sOjZEQ@43Jgkt@3TV!Pf$bt_RQ0F?==K}Xcm^xSX$b}f zu1aPG28jGkP*{S70r@lFg0M&PVpjHW(fXY;Z1VDXPK9CZKAlrM8LB^5{ z418b$Y!E94$RayX;IkfK0tF|i1+w1IVCW2-s$bTUmZFfxHXqH1L6>`9MQx5P7hBSne}{Mg$=iJz@g2 z?)g9hU?qHDk3pULS$yCC1=+y>9_?Xy2sRjO=)hbt zq{aZc1c;jj>FysM4F+aD8D0hkUc}8oe2|-i_(5r30QveLLD=;{Lde$#3G*^AbAWEy z0U0iWe0`9pFe5V`;+`R-tA#*U7>Yv;;RfC8BLOvp8)S$i)DSR73iZYv1+a2y=*>Ui zTa9F(_x^x6ve4Uxz#KU)sM8o2MU{FW8&`1MeCrFhh!Xgk? z3#JKVpf-dv)k)G&n1MkD>NBYEx?BtpcYscy(L>y$q_4+lD2(DR16Bq@u!{^KmohOh z7@0stjJX&gdE^P+^{>G9N{-TLCs@eaDod# zO=Dni29?q-aNTfmP)UY@v0MxSx>^JC1`!lppf(N0>SP8SSM6Y$MYKXpOR?MyLgejB zm}Y_2F;0hj$3zdk_MT8RKT!=kdvFOFF5YrtPQ32A3c}ota zMvQO=X~ewD1ydtvrWQpM%T+X35;PW7D5l_wE{rRNu$T>UI%WdLG#(?cumn67cY=&3 zCP=Y_%rJ93C?qfgnvns+o46E`8AMoYAR=}_j=+pJED_AaFcG%P2yQGEW!TMw>wq$_ z-$#VS&lg*M+Uz#hM2(8ot6FHV)IZSc+YYJOs+9 z*osaJg;)zk3{^xMhv`}@r6+8R9j+K;Jhl=LLm}3(4MP>t#=#u`Wne8+Fp6Q2@z@GM z424uS4(doah4p%0j64l;Ew<}@F%(kSIJh&R46GG0mYN((34}!mi$*L$#At*%4^GiP z`+{N!Gq1uO1Z7}J`XG&%*#@c}PGL!fAdQ$Q7_I}#z>*+98Zi?SR6U%+8iZI%ExN`S z+;va}R!0)!B2XA$Yp7%B#jX%)J)FW)0E0BrH$h;#Pn(IMAGYQM?pR{g!8Je`G*3!c zaymwWgSrJyVJVS7A&(iia2-$v`JsTtndCP#pss;agCZq?LU6Qb!4l6{+fGusmUzZ8EC-4R%t8c5ikcM-u{i~sI=F+N44RiA7zH?SRRq*|a0;s~j9d;^ z4rLIh3lyo?(hL#CV-$xVvoI3~)H!g9nyCR~<7nA{Q8s{r1v66NF#u&?Ngz-eIE6(C zcC(3A2sawaz@m}pT9jyoP`lt1mCHLU#(_eKn5=-2%_uMnqqG4zf~;gftVZgU09a}f zkRverB3Kl{qZP`apnHOmldvQ)tU|i~<>iPQ_V z9!_CNyEq26F|!8I3gNav8Ca?lENKK3)!X$E>ih=*6xO z?f@tQYs_Pm16WclR6m@;q6DkiSP~0{b)XH*pu-Fp;P-k!tN|^Vfv_MXY^NoJ#{gN_ z2IDX=Fu+zr!-UZJu$^`=dDt#67$3Gp3&w}-xq^?TUZ#F=QL=t= zQDs3%zCP$YJO=%Y{M=Oig4CSKM6g_HUP?}CadCWcL1J>MeqvrqQGRBMZeB{ZZjqs3 zvVKW^eok^mVrE{keqv%#a)z0SZcb)iX@xFKrHP)UenC-cQfX#Ri9STC!on=x%tSvY zGf6)^IT^b?eUQG)yyTqHlvMcPDp0UA7#KJqhXH92fO!HGT)Awc;izroOjwz96 z7ErKNRb=KRg zsbW)LW99~Hbg>0FHVq`0$-urA+K- zp4vvpl!Hu+`XC3gDJZZhD#jJkdu_`^{w^gL5iiLyg?M39-BQA z8v`RF=w9^1lK7O=oYaz3P);jiD9(;AC@s!l07=C=hJ*xpI)#R~#)Ga=k55S~Nn|L_ ztV)e9VQ>u!iudt!iud#Pa|J6-EQwD{NihVQ5}#BVUs6%Rke`&5np^_8!ac;yFgPU0 z)6X5Q)io@Dp`@}Pl_5Dlw}7F<%&@qmC^Ih|qTIC^8_#p8fD%6zJywcp%qQsKa6u5;R-Y#w!ZiQIq@8sp`90FxKhq%Hm zhxs!&*avP-kfWaqhB+WV`#X8T6*>F+1~7nK4JJS?hB`huBe4jqte~_cKDDSQzX)Ql zyQ`mTkfRUO*WerO!#smMoqSxOLNK>@_&Pc>_&a&U=VhiCflg6?+W=GH>g*Ei2zDZR z973a{I3vHP1RRVh`K3uYsSp>0Ir@aU#up=nt-l{6#E^_hE=o--Nribgsj?)s80;HR zY6ybbnpgr#G4Qki3YW}8Q)tY9itKnOJ3TcowJ0$M$}3CEDNSWaEGdD656Hv-Z|7ih zxcMNS1p`Vl0Ebg(h?@m8kidLMbjGI@r9yq?=@;Va?i$392R1w}wH)j=hRnQ@)b!LM zNIan!i(13K*iWB^()fV6`15GfnJ4R#HJS9nF4Nu?#J#h{n~8G{t~;Cu+qG%zzaSrkH zb%o3MI|m0al$Ioe^@7R@uwy|wkbF^`T4ERvO^Hdl1<=?B#~dgW<3aKaIf=z31^LCG z5(#uZRANaH*r>A1;!H#?2jznNq%0%QK3IhQywq~IgIxXGJ^ft4rlgj~=auH%mkhTXH@sQW<&ErIy~L7sjgj);;7WI7~-K+Y)w zXIao0c+fQA=NaZ26bvuQ!2SZ8f^Ke3W=Tm-s%~mtN@il7f^KeNQl@QAftiVdZn}c5zmbA&T0v&Af^HfpoJ%tE z^K^?-lR$KJ0|$j}K~a85YH~?_k#2EG5vX3)P0P>CEYVFX zO3Y2wEyxEIs6}AaMVZMZx`{cNiJ-&@Hm|rmvm`k~Hzz;80AxXCUQT9Ss%}nZZf1$C zv4MetZW=gmXXa#CvOn5;7P8AS$ zfXXaTIRPr;VbL2L84Qj|^rjI=4U$%{Qxj8CAZ-DNCE(DGFD{8kbq2)q;A)zov?R>} zlFGoAAh{KsK8v%V?K%bqcV}lS1r2wNUsf zAk~iCPFF5FUc2ge@46!&c%Lq8)C0V&(2-BUaWcz1W>2nrmmT>S9Jw9uU3TIF-{S!` z8#XHA$fw{mnPm#|JSH!$dyZEiYMr1g2C(`QAjcA^9^`)5otofL9Y;O`Cy@K6vdm+S zTIi|5sXPdz~lVuk3Jf>){E!P~c-*CKn%MoImC&(4ot~%bh?s)4aR4f%@2Pka8 zDnS7T9>qEWwF5LJz~IQ|;4+nM8tZhH8O)P8rm)Xr3PP9#F+3dEAh0P6;JD#|c9X#) zQINQq!t6Yc$s1$^@3xTsra@I8J7p$Lb4DQI(o)gHo;B*X1_kW;j zVEg((Y6ZaON<#PVBjVQ!>=1DLI-?{(aHKOp+~xz-3m$1h=mp0mH24@mcL2lgl?RW& zf$|R|?M-6_<)1*1P2e2k403D$QvP880lnhN+>*p32EF2vA_$!UW0j;>__f*Vrqot5Kka5uPvtxeALCWTU`6 z07U#FNr5{R1Va(53e*U}6VhNc*g_hT+EAO*dPVslrJ$s1sAmB+H6=BvG(A2uFD;)z z55i7NN-9b%Ly-pcuONW|RZ^6gm!1ks;t(+`LZJ2r%+%tNA_l$W{M_8syb=bzy!?_> zJ$JuQU2we%wJS9v9^9+}R~ssfJ6|OnE`ZL6M_$7LDXZ4gXEYQ zAhIAf3`0a9BuorOGc)kPm~a}R5>p(cfEjXhEQkrm5cQx^9WDfCFf$0j*)Rq~J*GHF zo*8sC35bD&A?jf@1(F14P#JQtEs7vSy%>rZjKd6WVZnG18loQD+JXomk<5@&O_4+x zpdl=UA_n6yGr&%^f{DP?V~T@RFf+)3C=?8F52iRs5i|T?Ll6&wA?iUjFNBXwGBZFg z5JD1!sK*osDPd-SUKj-8Kruu;rZ`BNnL!mqpHlK zn1MJ@47z`d0gE_Dni+903y2HH%;1(PoC{|#Gk}lZg!5qxW(Iv26NP4GfFHPnCT@(v zhjEx0OkqqEnwbH1lQKdW;x7vwI8Ql6usD-hZ8O&fzI1S2KLP+HpEMNHySqauQ<#B-DQSNJtre5 zd=N6=ehjGn%7{IjO>v0Zg3STNGAMKy7{L7-1_p*O9O|=ih*#qf@5CWK9f$a09OAoh zh@S+zA5orz`%VlD44~8g5upR|8;JY~R*xvpVd+7T2^5~N)Xl&E?h`REFo5nV6hbPu zVd~w$>JjBIxX;7Dz>v&@J^b@=h&O@FL6pxh^Jjs@5#=zbPXluQdayX6yoLGv6j&Tl zuEJIgJO+y+%1>~ghJk?r)MvsLK3vS8a6puw;JyvWV$dWlXvk16nL(w3K_vw|bOC7` zf`p5pU6JDKc+i+HdOro)4S|of!p7{dr~|dDLDH}(5;P?+dy%^!h!GR0Vt7LxtQx7o z3>u$>O_YHKdk_;jAe~4GVIwgx8Z_~MZ3r5<9|Im4LY}|?c>`o4n%Q7IpawK#PzX8< z1!|y!hn&I2Kn3CBxZv?h&{!~77R&?5fown-MMvlZbu2((iK4*}JwQ-*oAUG&)&<579nF-Pc5=S-@+*?8u1ov*B z{UmHsps+^|8L%EiEP;bOJ+%a^43h3qJ4K*Of>^r*x&sn?_8>$UJl+CgqKm`wJ4hUS zmLNzG0|NtS%n8H6=q~WoDa{yz~BRtWME(rMH5F3 zA6KXv5CyC6K<0zm79cSYhOK%8iG%I|28n_28V~`xvzC#80e1f=NC;NGp}Xe{ND_;C zu0X{><|Di30aP5_9N0CJ=>CF@TcVqT9G+fKGeH!ny#=B{>b*e>CfE3 zA-63tFo497(}@76gU-OffbLEOs5rViVf8-99AtM|K-Gi9k=GpuAc-UI4DLY^N8Z;D zyR#YHJu9H<(cQBFDh{$2#XX?FfW`~-I#;j=EKES^k<&BmPIQnsERTRRfbLiZ(ID|q z5Ce*l(>b#FuyhDgk8BRCeT(id5vcpo{RO+b8)Oc$zmUr%Se^wr2|3+@&n^TBBF#O3 z%t7`qa`}T?zQNKtsJucpAC_j&-49cP?tbKQ1DE?jeGjNJA(wSPkXfW{ZHIk5ObHwQUh zki!QyGRVY;bgc#hY@CRJ0VEC@P1p)O8yI}c5(7ef4)mG{QK)-h>eoUI2H(>JRSz1i zfcXK|qX4M~oqi3~4j&l-iG%Dt0WC*BdO>Pn;;{AsERVy)VdrYY(lAVXJ9Lf*R(8R} z^P%R$%4(Q+8`NL0JO~s21yv7A8!+)yX!zuV90~O=$o+{>^<`+{pxgLBLbV_QNqquz zXcsi@0Fr{454t@8#GeQvkkscu!x>hd!_>1v?FEfTfV9BGGok*v3KB#zrv>VM(D(vK z3Z@=(9UF-M7DOPae+?ZX{)Hw!4a$ev4>KnWYCh_$^>2TfPU(8P~G-FXpB zd=8X<2TH@tp9zh}=V;;+pyBWtO&pfr|D%b6uEzlRj2mh{%=`&Zz7dp$iNnfn3pDX? zX!zKniC=`qy9=7QCzS66rD5i)K*J{hO&peQ!_dSzpz2|B+c0zNq4_HbO??G4+%nL_ zy`bWGXyUt}=9Hj`i$K*^p@~aE`3+DS=AONvKxSZIXhReK4mH0AOntE@j_#QOz3TQe!geD#W zHU9*fI4s?tLlZv&_3srl@%2!1ZlQ_qf!g~3P5chjoM&j_&!O@122H#fYR)G#@sCh* zexiwkF6jUnr47{w3pdbF@*r_%G;vt@>5nGP3oSRI(ZqwG{B$S{Gaq!LDaiaPH1S1H zcebO6vq0TF9Zh@_H2*F}6Ni-xd(p&~Lfv^1O}q?h{#7(_So!l1O`H+Re+#8y{<;J5 z6axbTtXzkQn?l{m3Qcz~aV}^+5=0Y+_5Wqj#CxFTYodwgK;3VOCJq|k1!-|a6K{d? zeW5hWJ*T1mi9{2RfbvtJG)%n+lwSy?Vd7h${8}gt6WrpP)1>d|>&M3!2_x;#N>~Vrb$VP`(nBhN)+Q^39<% zOk54>es?r+m^)+9#MeN>Ap=bu=FaJ8;?mG~S&k+SGk-6dIL!PLXyP#QU!jRtLixX- zG|XQx^I4(s4-@|fEtdq)#9`@88cp088a_5?;;?er6HWX!)W1<^;xPB5qlv@HJ6O8_ z=1!RUiD>G<*OW3aFf2k7hpFF%CJqbFV`$>A@Vta34og?}(Zt!H>G>s89JI#}ngl_` z5(5V`TtV&!&E0|p85kINq2e(0uo+Z6s5nSHsDBg+4QC6eI7mIzDzH%zP;roYkomAa ze>$4@I9!0>9Aplx-_ndG4(kt0L=y*Hh77V|8dMzSPT2UxIy7=174|2~@sJ+T);;{aLF;pC84$M8?XyP#UlMPNgQM^Y`!5GO&m6_ z(2gb!8?RrCB#vzUULC=YgVclS9cJhfvJ5owB&c{Uk~qkGSi8L(NgQO( zY^eGgByo^>SbM$=NgSm93RL}6G;v-~;$>i9n1v(`G6z=AE62t6BO^s(E7_4Dh^T)>yv@PKL;ufQV&WG zaZvYHqlxc@iZ>vMgUpAe=Po31kU8I=>idzzLF!@Yc_xxLNWDHZldV7#&wz@rMG^;@ z153}_k;FmfEQG2*h9)imO}M9_;;?Xl3N!pe6NjZ|8EAThsfVR!QzUU&P(VU)08|_n zo^DVJBGJT`LdBEN#6ee6f{e;W6SoCLJ_7?o37YsEsCX@!_*JNQ8=ANabjf`;R2<|l zko#ft?x%2wKSdLV&DSzQ^BKq-X}L#X;&p>8A=BJ~xoWLFRZu`w@?j#6jwB zLe)P<5(lY=<%^F<;vn@x(9HJ@NgSjemM<8fCpqXhu zns_l(`~;f#8mRbLs5r>|Aosx9fzP1gF!xA93yAkP#DAcPJ3`enLhAu^bJ(Eb==RE> ziNnIv1W6oJUV-8qgaeSoLGFiUXNCeaaj0_`TA|_~_khx;ICQ+CA1V%V5ArUZbx?7T zdQf^uff}?IP5cd1{1B2j$b8ti*%>5pkU5E zG;z@W5>R@Zh$apjH(ZP+ZUS}Z7BunKPPpP)EGeKK$95*Y<>Ww9vX#U z^I>bwVd9{&1|$J%2ce6@`pqzL*m^tIT0wMi*m@k8IBeZ*DaaDgxf+ZN3?TQw#9`~c zVCrG{4&EMws)vcg)?32V!`Ab`<~?BIQ0o}BK^ZV{n12uA5I>0~4l5sE>(ycAz{FwW zNicDkdtmb_Fmb4{;B|x`HcT8AU%b%v1-dwBT`979SpBPnrXD7)g(ePLj}BWW1~VTf z4%)YdY(6YrVDmpP^|1LJ*!dkWaacVI+Ruh;4otil%{{R61Di*JnFFgIr=h8bjR(T! zc|hu+Sq@|!!%igiAaUq00t4&}5SV(H_!%_yu=d_{9OAHcAIuz3Sr4-K6`FdO_$M@R z*nALd%R9^*m^cS?ehDTHYxfG{5SK<1ht+qm`7W3_AUA@rBbs_>HOk?ZzQK8BKf& z)MN8-h%ZAE2c1^|(y|GM_%1YY*gn{!IK!}^UDIK&;$#9{4u*g6h$|E8g-hmElo z;t;Py6NmX1wx0%OK1{p^O+C!Nvv7#R))~Ugfw>>Ht^_6y9X4Y)ie?VX{TFbE-#`OtbLc6bI3@d7k)*nE984sqBzMwq>@`W?285nX&HnmGqRj$~k9Sb{@*4VpM? zebg=-;)l@0Q=t9BvpB@BqKRif)jz-?{sK+B0IL2o4)Nb;;;?;LoS@D#wA=v23rt)P zO&m5p30ubm3r}dUF_@sKhn;0$k3-xYO&k`#K{&*t(8OW!n}I{T08JdW-yXJ~4Ca2A zcr%)MSbFHgAwCUF9F`uI;1FMfCT;?aukAR*_oInhL)D+cA$|!>9G2eh;t+p|CJu}D z4>-hspozoM18n^oEIeW9K^nS#4JHmt4{A8X_0Ys&<9?Pn#2wMZVd=pihj=)eI4s_i zaENE2iNns-EyW>TizW_B58XJ#C!>kO(!)F);;?nCu<(SXhmC0JVd6W{#9`^-2oCWx zXyUN+a2<#EeKc`cdVsB4gt-%z9+;qmBQSATdf>$&E{Y}&Yac4$5Z6ExhouKI9OB69 zWN`Vdlf!$&a>v z6}I143WvB7nmBA7ENopZ%zW7VBl0?7Q2K$je*)3Wfr&?=iNnr@NWmeVgC-73|K(`n zuykIJCJsxt-8jT2qlv@PGi<#v%)hX7y9`Y|Ec`d(5Jz8c44YRtil!bWeils}mOgLb z5PyIs4vY6UIK;o8iNoUeKMrwr(4ZkwyJ!Kl{uRO@E`=rzOaHL-*Rb$}r5{@~^|1cF zCz?1cego0OVeuP_Lp&8t9M(TAKof_>Zv~n-EPk7DhA_`Qfj{3e<>EWTjtsX_4tUD^XK>Hi|B2Z_VRS2@tuIm5&S(8OW= zM`;}5%4p)S@e@NF;+AOQuyo>rL)-^Vd_LG$3=H8o#N*M#FF@62;SeuE6Ni=a4LHO* z(8OWqPr=r$qlf=$H1)9a5VqkE--jj+%U>sPh+jk#hlT%r9OBQ>#9`t835WPEG;vt? zvw{YHq2&xHUBSe8(Zpf%&=NSr70|?C;jf27+zd?|7XGmP0qEf$iKZSF{wX-bbI`Z;Vp^3x7UloVAE}A$j{H<|_JEMui!ru>vco>>EEc_F3 zh-adS!@|D=hd6A%11x-C;opU(9wt5sO&k{fu>CGDbD+f@!&Wr)u<$>CL;M7qIIR4+ zj6?i3nm8={U*Zt|h$apT|35gySwMrrSjriG9OB|=;;`}udH)5dyn=~qp{a+3vjq-u z2Q+b5_`~)U!NMOlPMD0Q9#)^`p^3x7tqe^ZHvZp;L%b7B92TBa(8OWwt~qGpu=%Xz zIKT!8 z0VEDhW(>&tN07zk(A2}`zcg`(8={HB<`?X7h`XbS!{(!5`=!v`pM|C#(%)hXGlQ4T>@s)t49_HU{9OA`j;xO}J`!8YU!^)GHXzF48^d&gN*Pw~R z(m!nf5zKs8`0Phh4=ZPo_Zfl0A0~bYO+Bpqf$axHH~%Y|dRTseUAY5O4-@Br?q`9C z!@>u)uM{Q@bH5&%dRY8g;ShI16Ni}(+xH1FAGSsv6vt^u>OtbL@~RMrcqN)RtXyru zA>M-~4h!d5IK&sBiNnfs*#1;>_a8-5533(9;1IuoCJr+nwx1Q<{C{ZbVdir}88G!w zE`uPH0TYLr58M9=69;;`_kz#-m%CJu8yY~MM|J>bL%T8D$C9_G&VIK;Q3 ziNnl??O%tP56ee)(bU7{>0aOv|9~bAyF=nP4smAa{x6ulu<;*0G;vtCiJ^(Z_RA>Z z5Z6Q#hxr$_4-RH8ES>wHsfU$6;W)(O(ZpfnEwFv`t2RIK=;>iNnGNc76sdd|>WWg`Q&p6NkCS0Ef5*nmEio&N#%q(Zpf< zWMSua!0d&&rw~m&%sn+Y#9PqBVdlfm?Esk%+cOQyzpIecgT$f3j0{_Gi0?%chqWhR z=YOD^{}@d@%=~va#J{15!_0@BBZ6+e45-qD=67WGtK$&YM-zvY+g3QlozTQ#<#PZI z@dz|=nEPSpouIqF8cjVceA;k`_o0cy%!i$u0y7`lZDH7grXI>=*bimE)I+%p$Ds_E zI4pcFp^3x7;TD=WtUde`hxl7Gaae!z2M%%ARm?E=!2An4_XQ>nbB{7~;|5F|<{tRD zFN_S}+mT`FJ#naqou>ja2l?EU93=H1aZnut%17lm#Ou+-VfnEOhxjBkaaeh^0EhSr zH1TqfV;C41HscWAjV2B||L_N3%!@@@uhqx}9I4u2J;1G8}6NiNl?0h4bJ7MQeq@k&YwYLj#h*zSC!^SIG z(8OW>>Om8S?U#g|s|0fo%$)UT>S5_^7Y^}5XyUN&KZ_;~v-c{R_-tr=J-{LU0!=4bb8Qd`=E@3msS-R$qbCL$|ho#bNC!kT`V7IanOl zo&t$Omx6-DVf6+`9J-_nEDoCw0f|GGT7bo2=d6IlVRbl20v1jnap+VJNSFb39xX^5 z*5?LEz|tc~96AIA5@vwyTLOv0+Uy_+*m@I?IJBt?5@vv{Hvx%5t5&c$?7mBoI5Z1_ z#bN7EK;p1G4U&M}HwqF5^^ZVeAPhUl7bFg9cY(w}*Z{ho8YB)X&p~3y7$gp|7uN5C z^%r5{u=s}2FmYJ_6xObRiNo?8a=e4w35#!7{sXB8iNo>*Odci<%NH+zSoStFkfz*S< zVg5o+Z^-E!w!a^w9wZJ^kDLyX(?4wgG)O&29Jb#XIejAM3)ucDkb00ftbRvMx5)Vg zwjL0q9wZK1zm1%pk@FGkTm+DMkT`6;6LLC7&R?+mg+b~;;xPXrr+?&p2fK$Cq#h&= zi&x})ft(*DkkUU$9A-XpenHNsF!zGY2Z_VVL*#sfoPS~W_JY)d#9`(;AlVDbU$8vq zfhG>i53qZFLFORmci6rSm^f_w1hx+VBo4|)F!N#iSz+R^dJ4906(o*aK2#vN2P6*5 zKMhFY$mK={nmDZfMLz!ul<#2f@kUY)%3m}8IewwT zcnqL>HId^HmQF$9$ngl9KLLp&$0KZACrBJQ9%1*Dfy9yH5q7TyNE|sHVf$l1;>hs` z+t&gTM~+9>J+2^ei|UL26-a z5DoGxNDS(1kPsLXs~_Y?P+Npt{h+gYLH6TvKdfB|KHg2pfy7#Kid1JMB?Vf7aw`$7G5Z1y`~u^-fS zMz{Yw4*OyE+``&v5LaQQzf(BkzW{1Kti1pVf6$gEbo*c9upf4BD6HLw%l>CL>_1Qh z(SaQPpuPdR{h<4YvBkd)G(*GMkr2}`{SR7Kk1hN^K<$U!M-1{mXbCpD{h;;;Hv4~o z3}s+ofVJ~**$-;(fs~@BzXhO-#lXM-YZrs;2erx2?T=+-05@UL)1LxVfKd7awfnHy zUjaSn6*>Qdmb9VU4{E<*^M47{erPs^c^{+v1D#`x&He*W`(gbikpDq>9^L*GIQ;(v zYCj?WFJ^?K3H0!{fL@f0?0?V_0d)IM1Ioz$2TjqS+Yf60Vzb`>su0$m1Njw%L4F0% zFf7P~J^U9y?FYp- z2b~8CV}tlGYys5|Th{{ke>-&Giy4$?V49(IEfSaEH4gVDKsRJMxI^5CwoF85kHq_Ji8$==Q5KL-Ie&d>FmT55lsA>WA9X z1t~$#e;1$!Q^NX*Ap1dQ7^B;747DFtPQdJW4rOXj4u}4;(1sT@ z`NFh=+X^5KOusu+KS&H2e}?Ku76Y+i`aoK|)~s1FC-mTKb3iAFPOh zfgzk3d-*@(9Yh6k_<`yYn0{FL1@+a@tN?3V0Ufx7oreq-#FBroxgDfd06IbK0S$l9 zyfHTWLDJalkH`g?!oUDZ9}pIV1lb2+LC6YI1Izg2+ycFPeFYFO01;3OVM9nW6BDqg zxuKDz8JLy8RqyKK#snI`f*8fX$gmwAzfd7C)qvCqfTU9g1`h^ThX2hB7e5Cxto+B# z@Uww|VGA>h!_N8yw!#Ap3?T~a4MCrS9ajG1cKG?fnPK7q=J;z2EDk@vFf*P%ufJLH>0EdqWTd!+fdd|No2E=b@@~{PRDgk;&mFNX^6F{bq_k@+UDcGz2v= zG5oy!|G)VE!;D~e3o|fG_$SQp^J_HY$}f)@CVpjRSe3}+@bdw)$SOq!ho2A48GbS_ zFics%R~eDM38$xVh4WzH+huqX!$kU(eh!kqvh6p z1(zS>J6dj4Vp_G8iE-7|B!*Sj{{IIJGfiPoV4SF^z&Npqso@gn+Fu3+ho2z7g5wRu z7IF9qXR|=qp!f%c3n&eIW@cQ)$j~4JN(*10VFTiW~UzizJf&AjY#IPlS%V8%26N703pTo}wOblBZxEyva zU}7*$QgYbYpyaR)n+0-f zA{KXm;s}&ZL4H$&q)QRFn25tqMG>%>2r&+apNbq1vH#AD7eVd=g%cd=D~-sJP68XNb$%3^Q$xK#qZTjpe;`mK=B2Ns|QRD;BpHTCJ&Y~{G7tX zu;r^W>%<3#872xdG+cTl&+zl1I>XNeeIlTv8buy53&YD3P}%j6SrnWn6_^-IirE+@ zg4_)Xqk1NW*NgxC4`EXeOp#|{FkHaM5aPhXU?R`KV5q>#5F*bYpZ(?fd?`@50P@2FW)Uq= zSpae`%&p7}3=%Knq}p8 zX698tn3-0A!uWwc!_Noo3?YxT8Gec}G+bijX4nF$r=j7+!SGRmogqY&y&(uBe~Xi0 zOBgf5&Iin*TA*^^kv^gfP~<{NU&&4@e`Y(c{9Wy`@;@}sfx`AHGlLc=-8^8H0HF@z$^)tho$SEpmK{@RO=D5G*}#D&H`oz(`(?g4>9XL6T@qe z`on+zgN8joWd&G0%q)&Wxbp;3*)xKy@FoT@U{J zHv#$I^56fh3*IpV%Cj&OuK4~xj&)fXYK#QP>)FQ)}v%l833uLKUX`fgw>WFEcbR zgZLo7gJ|@;%l!X8xSa#a3o!FQ4a%&%O#R}bWc}o#%7T)7eNYn?On}?5$qWoJ8jvbgKoEjIs#@h!~v`v zpbMm+wy|-5m9tC$4Q4`^lR@1}u;m)8M?hzFaunw=upScyO*L}lz?d8yd6_8;tj9t6 z1VB9n2G$cGwg`lM(vhEmK?1@)1rk?)IGkmw8}zm;1_{>t&5R5T5H$}$YM|^#AT|p` z{ILQr0|N(y{Q@*OCjd2P8ps@ogQp{yGZ4&~2<9vVb2frG2f>_+V9rA@=OdU45X^-L z<{|`hF@m`S!CYp{#J~U^t&w13WXxbrZBE1Wn9Bw4^YC!V9WD70ls*$fPlD2N?$8q=RK7Ae;;^M+O>} zD{sN95nyv?WMYOn(}S@GVT~u4!vWQ@ftQ(q0W@g?1m4V3>W&|q}(^9xk zS(%wE1wq41kZ9WqnvVqsP5}E<#$zxo?9;(P00}Af8H{d1u)txT$(SX=z#stj0{bjR z4-p0ih=15;gE^1`ciHDK-VtG7fSj_+K9{jZgn_|;H#IMrfqfohEk6T;1=P*kF2dYg z!M>1j5eowYZ*ox%1N#z2@Qt?+YnCEAU>QDZ;>@z?+#; zz`(wm@dd&)Yr)D4Aj;N(IVKR!2C%O!Ae@b0jst|ViSeKa1A_;IvzhU;2m?a`gtLY5 zrw9W>286Sf5w!lO0P440Ygr(d*fD6ZPx{6J&1URVB0;SjaCTy!3Qjf<_VjpAz(Uw_ zKv@owb=l{F)WEXt9!6HEnG)=kMyxP1t3fdY$-3+{paciWuI#mbATy!vIbaLZE5Kfy z1lL;%ibJU0G7uYxHDU_F);831u<}VFc*OeZeBkI4o@&sf;Z2Afy0Ygo1cNf z0BYTF7dBWBa=MqYL4%Of13W|q4t`G0!=Ry9j@-lw22L-KxBvs6iw6VC*?O4P1ze{= zQ!pF_3|wb6fd+{<(iynUf>@A{=Q;;sLkeZC^B^`PHn}c?>JJ65HC$I;@i8!HK-kxI z2r@7va1=6d-2|!5;K*X&x&>lEPNwI&4N4Ie5Vdzef!qLL-vz1ZfUxg_#3w-54?r1X z3WWWziI0I{1_Pfw}64$nh|7! z0B<1!w+)yn!JE#&Z3|{XGCQ|Dm;=e|+zwz4Bzti?fjJhuMGV}|U?wC#al3-ehvX-2 zcScY+1c0*;w+ACAAUYr%PjL300O5EsLc9Sfxz2NOpcHnwK$-$tiba+odX)n zJa4^0kp&JGo)4hp1&J=6FJXcV43OyJ`H?8dz#sulEmw+A&Ar)#%D*)Um49au2Q+vk zc$YCf;eZA&?{X$kgg}CqcQq3zrdYuK;@!;j6jUNZINO=5g%EYm)AumLCh$FAe9j3q zjPD_1FUT8UEqsr`g$^Xo@jYdX2I+^$JOgte#WUYa#%du321tzYy=Gh~1S_8T-Z5Sm zVqk#87~f|`0bvFPNEyiY70iLe8Q%{u2NGv|zrY+wobhoonFup5L_jR%VagPSm5zLT zOpAnJr6ZpZ*w+ORWg<*xgc%qrARIBKufhxr4G@kr6Tb)pLk9z25Gc7m`@{(i&l7yg zOrYc9A*xiE)Ih~3Zyp1m8WSjma`2`y@Tr5D0=y{UY;1aAQYpC*{8z+1?`rv+w0 zk}97zm;?2=4wwV=xGtCj^|(HhA-wSCGhzazLa4`$!I28}xCz*MkOSWN%$PuF8d68_ zSuugqG~}ptK5H-sa=tpB4Vbe6;w48WP}#5n!f|CX7hz!70pYkYfpY%=Xp;QG$_-80 z8tl*gxS>g#{bf5SK)^|x{S}A}N!skMe}Wny5b-ylHV>pEVt?BUsvx0eev5>enZbVP z72M1#pq3D{Znz3!L(RMfs&63Kh5b6HK>#)LMj6OVh+Q{9;u;*;sg(@uw+cWF0EqZ) zQ2k^9Vc!9DWugH@&2JDJ>h3?F zra#o(e?e@>I6nJ75F0YL$^IY2hNKO425@5&k{s9>!A%orlYxnGz6b*YBvY_6Gp-VW zWeRo{#;u@X30_d6iIs6TC{KV>13MeIF*1QSv9yALot^Qb2m`|k238JfUIqq!P`84W z1JsofU=eR({Km_`04gaM7{MeHm}CZ%kP|*x!E81#$qpttz$7P_DF!AXXM{?C*^*#V3QS6aNf|IH3nt~jq&%2Z0F#Q4 zw7?(B$j89I%E8XZz#s&QOVIh)!f=9tl|vCMug=H7AOh(>@h2AYF)(oCmF6<=Cxhy8 zNOI;+0SkkpmOmXN4oM>XSs*qfiSXxu!cT#Ll><~$fa@LpTn#>G|4*Qymk*i_IRwru z1zA#@%^+}g6=)q3q+QO+0TKqa-x(|f!!PqOK#t!Mj6g6WZ-JCEaeyZI7{q%S7#KhW zhXiO|+#KR(!Ke)|D+N

    +QfEm*i()5C(++gaC0FSUEr~DOL^!eoz=KW?*0t2NBkw zZXn1&Mg~?6P(i}V;m*&%zz<3#;4qS4{Q$~u;H<~`38aF7BPTVFf%P*e$wRUc>lct^ z&`uHSS08=`2JkvlR!PPw{Lt(v#ld=yalQZpgLFYj5d-UeMo_K-ttw$)eZUBsHh{1n zg4ICSj~GFH6A1e;xWx@&KVjS`z`y`uKLxk=A?#=1j09mnXFLp7^Mdgtoc)sVJe>WC z@hY7Cnh|trE=2De#)ok6w~Wu>?01ZB;q3Q}pW*BejG$6fx;V9jf%P+z`@bNuzcT&@ z^|M$xZZm?y|1JZF1TFYxJOoF=OtQ>#9Y<4D) z2{XZLSuk4&Om^@?t3(0T+l;z`&{hHKU2vlc(!^l>#yAt)UWP={cScY~XXOAXX65+B z4Kf!LpR62#f(#7&p!N|fM?0(~!^)8k5{(fADJudoLFtl}14N30QVpo}0ZyX);7ht0 zIE2DLRWLX+35A0UhGa6K2vB*%!obP_YL~NefZF!pY$P0bQV^PGSUEs#P*#pxAbTK8 zP&FvU!Mm0TbowheE%B~n0;MJCqT)mb-t`di6cBp@lfDoGgLFy;1MfyAQxG#XnSpl` z(>YM7!O8(@GO==iTI#GEpr$@6hocY!1AjRO$Y(;#&_V>%WD*A1#lXtpBgDWU1S$dw zgg_Y#v?h<0qYR`8VpbwZ9^}K7V0i`x2H_k*1_oh}n}y3ktotAWq?>`2qY zV=hQLD2`b<@?jc}fi!~c0J&HgY%fTRft3T)gJk7c0aFQT0z%vlRtYAMm0yA>1T_zZ zK|v-AZp^cC{1%25Mtq7)iX!lI1!{bQyRWPqpyNhaIc!Bh(JqQm@e!Q0rX$jQ2v`NE zKMBKfb%D4^aiSbDMIxIusYBH5;zZm zs%>x{5@ulK0JUqOIy~!4;sz_t*2yQdw^g*1dlwha)^pT>n#bkyJe!#_9NRpP>4hFE!!i|xt@@MpX~{# z9S1G=*`B(Jg2E7_3u<{gSYU=I0|P&(T#*BfyfUVNiz3F?q6`e+T?CA2jG&PS7#n00 zj15wwkX}^4z?i}KQIvrJwBnwDF%xV611krp5yi^!9c27IK?Vk;x!~FqWC;TUeAC#R zHDU}5%Ily~%DZ5UV^D?)?D$NTdr%SR@+nY14`S9t{3gKHxxf~NsDq4DhZqN4OU1yD zrpmwo=Tw9209Bw2jKLsZK%ST7(&3}L5v3ajDd^>2v;9hMN)W4m4TrSp%B%S@2U(8)4-Cb z;yh{$4C|ocZAgYGsxdH}0gDGRwPCo)L5+do30O9O30>D8s5r780@WB8(|sT#x{7k$P+ z*3XQA${zZR0j!@H1C%{LnPG|q0|P%OJ3{Pg0_7KwHV_79641J!IVYfYHNhgA0it{& zcIDrp$|s^Jp9boMflLNrgz0LMkfbyXP5C-xkAoVIAZ?6uK*!dBQr@~r(EI@MIGm$h zRK~!#0j3k4Y^JC&Fiet!1ciYN5r~ zw@hGU0Ii?{IgkOQ2pT>|VeSA)%mESL;4G7Zc=#xY0TKoI0M3DAB=E!tNDjqZxMR1d zF)+kPf&3E)$_4>U%?u1iAmtzok_2ZBs23SnIclUB82CXI0wm(xksSs*2aItJgEYip z?#Mw4=V)g#FnYo?YA0qgFnWQzt)R@Ggv^7d;`3?@h;RYL8#G+5uogKk3&szAEGgkeA>)iRbjl zFfeFUFfcxX3C_My& zh#;nk3HpqI%o8KnKnbB0NiS0I(hhS1$iawAc>?O-c37r_dlnQX(0H7UT`!9)#Iv*U z>HUtZ7k0G<;~W_|h~Dq8fC8-yWnlaXtw1>!I6dtiP; zjgJUuxb$FzDJZm|@v#8A-YHPM3$W`2pI^qv%LtPNSq$2H1)>?}G|MwEm=?Hh z5Am)t+(wWCU{~@o&M{GddRH0EyUK9yLY%A$Hvr^aHMn=-mVrC~_YJ59Wmf?CCV&Y! zHG;}Ad9XOBVSy;ZK|TOwT9Csa4mJe0LP3rNVem)*xH2gMIk(Gcz)cuvg#?J9ui zwg8VqfOLW|Lib{*ZVN_OQON+&U=L};f>bjwFu=A3GtSXeVqh?>U|_U|TW6XL;(?mT zAjRet*$j-1aJQO+TZK+=!{7k|3TH`0aDXs>W(+_y@aohV7%adNfy@&tz$F)Q6}(uT zfgu1a4X*Rx=50}DU;rH$q|X?_%oWV2<=J?yZB|q|X?{#8CvQ^;hKFhFu$C!;I0 z0S=0lPI#=qWKr{M7bC2MFbB1hdf>)G(lmk(O4GgYG;Lmx&A`|Pk5ovG?gyL2G_k-s zH7|vMaX-{?NVUu@btKMjb)-TVls9CQL4g5E_Mn8`fut0q4<50g2zLZ44Pfd-G6Ix< zBBA2QjcZURs}?LC#MI3IiUvsefUFmkyQYHG1Tb|VnF(^^TBta>nWw?x5HnF-0&?MF zuq>)L$c4Y5;^?NytAIQYF%8xjMRp-5fXu;az%GOrDo7>RWq9O)(gvatcTR|HU&lCWq1Ta631n51cEd}V*e`KK)7{+8c5AbP{@L^(!>f-gf%lTKojW$ zcu5H|3$&UDL^I9-^(Y}WAyh!hgGX>3pmg>ap3dNrZm7Y)V6F-Zq5yE|0Cx~5T;LpE zWY>Y>6yz>Yi3!?~z#viz>XL(cvcgwDSp+O7+y`ptf!YAVAXx@mkW+cG7OFBZ2!jX) zRt`{0!ww|OZp#enrGgp;!l2fOFo*{p2xG7Z$@2t&#&E#K@-%{s{RlG!Jh&qa;xe#u z@N+OQKok{$6oI;!5Uap~qNbpF64Z1M22BS+Rd#_?g1VJpmBOHj0b!6jh-23C%FAoD=OY2YNm8wIKvghARF96^ySZpH{ImcSu` zM1bN9JbntXku{DP)WP}yG8{xOuyT9@nF|_8hXkW6I2b|sN*G+@g1sn_404j11_OgI zh+tsl(9vLE;0KMugLU!qFuH3nFn}<`d#oJgd<+braa#sgNAXT730|hfOz^X>LFbl(H#sKJURJb4m(Fze-AS_0PKnMdtf@}!HVgrUkMuudB zF6=Bu2I$61gfz(bAS}jXC}d=SZW=`BMQ1TF7+{!$O$y;QHbddETN21T;U33O7vn_ zg6=dD0-l4Rh@nLRTex#G6fuCNxv)xNi9#$w=S3orT3d;`~ERjaX6=c1K`Qi0L7+%R7t?1IQ7W zJqvUjvBwWNWgK>suq0NDRw$OXD!MbVL>QLfBu*75U@%KwEXHA1i0L$pIK$#0kXe}3 z7SReZEyWVB7?~SO7Qzxl=w@S&NDNOhGc;rN3$WCMSo+jhRG~Wpi#tIbd!+(6gSX*qwRB%|bG)5^5O7WQO4VZgiG?qMvy+(o_SPaw0 zz`%fA9cImiqy@~x8Wb2l0xLx#u;>E$keJZI60O7(rbw29nb^||hQldn6@gBZhMaT= zK86HrD~NzCbO*6P7`B8Q#0Fv5ie?ZSgkeh%L2M8v#D^^m2B`&M*fLuX8-!sCBS35r zhAlS*u|b#+AGU@Qq!xq;xd*nC5u_G`38{yzv;(OHVbJ;o5DmkywOY9Nu%%frdDtQ$ z7$4pL7zqldaFiZWA)w9%D#dg_XUsDG=Hq2xWCR~~2|9Bd%OOMz`WgATsrm(}IhBdv z1Bz1fQgTv@i{pz65|dN)6Z2Av@-tI(^HQ>Piwq5u^-J>ebCNR>GxLh|6BCP)Gt5kM zb29TvD|BHhP4q1F3yM;cN;7jx^dV9e7H08gCi*#}2U zf}F&XwEUvnVz_gS4D~^d(@iYOH8asKEiTfB84U{pC|^InAT_VJIER4&bRrYh|6;mb8_-QYM2=qQj3Zp3i6Y(APfcuPDmLIItc0+ z6Qex?6AL4o0-HUvlmc^#m$#AZ=Kl74xVqP(KDqA?RAnh}2) z7=@Ww&;*+p8HE)wY@3KxbQ)ICb&QP4vWBt>%8EYT$`EI;+36doSU6xB?d7Nlc1{FahMWpG_>`Hr(Tr?oWE5s%MiZQkP4GJ-qZ)ISf+=&Qf|t0nOA{XP!Gd>mzf!r>VgrPXIDmA_YOqEm?q%tJt zq~{l9mSp5IBxR=OmFC8ScJaA}1;o363o(WW(2>jm{yv`0k@3!s&K|A|j=_G0@xdWM zo__A2VilsIpfo8vwKBfAgu&H0-aW`aG$1}bwIn{dw5TjKJ})sBWKm{%UT$h$3B-U< zKhH4NpkPNIh)EDrKw643)AJHbN{dqCLC3|FmZVug3Oj^~%;MtG)FOzfkW=^Kb4yE7 zD?qk`or|O(J|nR>gCVUnCkO0^f}+eaP$|lgn4Osd51LR<29S?)Q%u3MuM0y_YF278 zD3sFk7*Z?ZvrCH;(^KK0vd*(V1Nd@vuA*ZYY;3gAQmzBIr_TBJNx?uhXgr#`h^5Dq-Ex17H2RdC+6fNB_?Mxcm@ZDf@0Cd zGdLtZz~9p^1mdAEN1sqvkUNu$a^mw!bCXhwAfXQmLy&l0YDGzCK}uptDntX+_h9#U z`h~cxxI@S;rB9J(RhA1egp(&05T(ia(mp}r>-^t6>IfS7gwWuh+ zC_W{%pd^C?PMSMYWL1IY;=oATLKQN@`fzua6IdUcd1wv+CNosm( z5yIB8{LB<+Ya_L&BtEeeoFem+OHxbXp=mfdKQ}i&4<1>d)QZsW?&{|n$oSK@#;NAn6Z2Byi&Kj- z6LTOzRh%7PmY7qT3h@WX+n#=I{tWqfIhDovxv52|iN&CjA}K#VCp9sTAqA52L0Q7r zCEhtCB0d=;URnSRK8EDPy!^a)(9t)k72tMVN^ogXNl|JlqO=K)42HPb)6oFdf+ zkXV$Mn_7}u#Ngxy3OR<%;`ri{#FETp28ivYCCMe3xvAi|1tqtF)S}$Xl9E(J2!azn zQmzFhHE^N~2=ep`adh%=g@$KRZUHpVKyBA}q`c}F8sgy}4M07@bH0@ zH4M3_B^lu21QO2-dHE$yscHE|(3FyvnU@luREe3a7+n3_J^frkjobJFXt@t|BQyzn zM!C9x!y`WlT#mv@FF$`jSBBjDyps4lhJw;0a7kPNs$f8l2RSA`1>{|bP-b2lhyza8 z;EJIXY#5~6cM5fj_jUD!dnmxwmmxPlB{MBE6;ZB(w1yco6qgnh1s4b0V{!LC6JDVfD31^FQ1l;T9VyC4YzRI4PGq=LNz(*!!b z&dD#{-PO<836aG?E&>NQIE|+jrKZA)ec#X!*9e9JQ0)uJx{wrBjO1x>W(F6Bpv>d! z2=}~)ucI>q%n>C;iFw7KP7{{m9pr9k6vczmSunULi7!elXDETBPjJwK%2ap@09wvN z0?pVczJvkPL4p=2@u1Y5oE@K>ksY6wn3)4{G{|U%#GK5;Vo1Ra4q8yq6_h6BWP-af zaJRcUgF-4fzcde&Ym)Nf(^K=3lRyqd)JkBtLX39y^mAj#EX*wcha#kn;+C10m=m8` z!2qgaic*tHoP&HIs!I#vi&E2|!JnL45T90>mkibk3V()_{L-WxXj%uQFi0bYp{O`9 z9+VhCj>yc*EP?7TE@3DJwHiQ;Byg9DA*nPiJ~uTNq|P-cD88VyBpzJZFl47zrl;mX z+E#Gg@dyt=T!#|3pcVj1>I1s~Tt|Y;2DRXV9Q|AvQo%h#kd^S-4mCzWNemod;N$|a zDa_G_Ar&0%AdR3L3(oraDe>UUSP%~`(qKJkaGi&Fk}=#qgbl8KAwiL#l$TeMn3R(W zEsj8mI6l7sTFa)VmKelCLN-1rv!uABh@m(;KBcq(;xzD(Lp(I1;1vs~XiUifIo8Q9 z-q+tR1YDTH0s>UjfD8ehk_E{uevn2=acW^{YF;w5RRS)7Qc}U*VJOQi&O|uT-^nXJ zKPk%y)Wn3D>hByJz>o~8xij<9@)=6=GRsnnis3a=rcp{f+~@G*8{q96Y>vXSU`Wj? z%}p&z1XVu8nd$L~Iq3|!r8y;;@dZVhx!_U)lsF(oFerV36MuXOG(3uO;z9O<{9crr zlUR~jmI`Wifotp1;?yEg(It2BfkmfKY{q5CWA@ z&<3`Xr$0m->K~AY!AT!nQi97WXu1UZIv~^u)O1cyh4w?BnFm^@qNZ`zh!9u5U{8NP zaFGG2Bjdp(0@x@>(uGt3;I=^$C@Yl3L!A!t4k+6?`N7kNYghoptD4dT;_@=FU4WeeCrjy~@GLEuU`Hzgi5 z7lJHAacO*Th@-PN16or73U_zGx;2NI;9c+E}Cg+&p_PtN|n0R#r~f?a%ILx=hW zMfsq1fIg^%Ny-NeT@@GS=)+l%FoDDjgbnctD4)l>`Z@c9k`u^jU|+&oCD2rdT9Sda z!^7LfgCQ{`C9@e} zHc(Fo+T4Z~Ly0*hU~|9;gaOnb%z!i#!5u4x;*9*F5^!&(EHNiDC9|Xw+=>S`NK!zj z_`*_7aIg=;EzS%{necuDI3PgPY1tSAPQv*XIV+Dyv$?; z-Q1kal9HTM-PF94%)~qe-Q2{aOxv6SGZO{fbOl|1BL&^Gg3M$E-84{T3krJO;?!gi zU96y+R+?9ynU|sqsV)?B)4(p%Ehx$_Nlh-vFVZb8DFSu%bkp*4GfQ;SK&@$AaI-75 z2&}p&Gr2?;+_cEdO9z`*T%K8yoS~bOpI-p7ATtjX9J)D~xtS%l#s&rox@q8|KQkw@ zq|!DcGbJT84-y%$gavK`fkzw|%8NiPd~hQkT6;nAOhIW;L4I*6LvcwFsAfV`VDq~rmKWv5nVrZ5zMl4D*vxH|&tcEJm0uo<9gAJPg2_3Xgy zEpTLmGBC8O59Wi%Z9oQ>6qSNXLwI}5GcU6Q)EG)G%1J2z^>#8-ApZ4-^oK#6F!0a{ zIOsvW<)C24c#yk5ag>+?sihdeZBuXt42cYIWhgN-g!l!TdQnR8y!;Z!G*I&mWD?Yo zV69=E!Jdc?OKLKt)B?FWHLs*7Gqo7j`^&6KO#%0dz?F4=Jak|jtg<2=rEl)!8vre= z!QlWc1;D)maIw!&lvuk$>vsXWuTV?m0qU4^R$ z*#+813bGQ!hS9JYMIMj<1L%Zi(23d*4zd_*CK4v5!@$6B0HTZmJj)7mr}I3faFE>~ zhdOaPL7mKCz`(!&yW1K(3ky>}k12@jp5v9vV1J=_5$s15klz>>7{D`?2tDpFD;&9< zp}HY%4}q$O&D?_gnt?^E22BjKZ+rq&3_Ppr$QR%=nQIEC^Hh#`>iG1>z#;#%$;z9N<}Lc-YKjo5kunonr?3RIX{9vsvabM}PwV+EvFJ*Bx)& zbi8*PYy`+X4p9BDwBa(DWgfH7Jy23&0Nr_;0F?*NY9rE)A1qBW=oMGymLw)I=oOa~ zLFfz^t0c9egh3CS+x3!)iy8DlEo?oIs2-%C2RGy5laM9Ar3|DYgfXy&q#vvdR7gXb zbr3_rf}oxyR6n>?fF^}pfH9!Ufd}!RtqOF@KxG-a7`%`}mw-9|X=D(acBm?lGr=RH z=%ygM6{`YJ0AMp1>@Lt~F0POTTZvTxik(?e?Rtcox!!Kw<@@`M_R z2uuuL!Bj%c#gGT32}qw9Ey~fm%ILmEDP45J7^-GeC(QpL;wJ#`1ffntdHnBpL5W(LqTr63jpL)2r6gH$j> zPA>;B;TWPGd|)Pvq>veMPA-TE#}MM_MZlFZ;%F^Gl05cQxI zIYJD^Vn!Ti1`~p&PxyICaB&cW8Qf9_u@D$yKB$$45QDLp5y#TOgrMfb4>p5~gBZ+^ zbD=;?IEJJsP%9NK1ZOaVt{Q~%5DaDpa|8#8#moRcfDB0l!enLupJN5#Ad$?FbAOOT zAWUY+nLQ8=63GlXH3>-s!eoXVxC7xpNr=Ck!IytRh2Ru3gEO3s%wUF`D1M2;C`8rq}Q6Is?--5*v^$tw@7g!uozkvJC43Oo7*!%^$>;aoN=qd;yr1}UJ zg2qgs_=4mnQ24;ay};s#dIa3ZW?*251&br<3z+(HusEV#fQe56izCW^aKD;?fng&P z_Vlm|hxkFTIf!}z+}CDcV7LYrN0k4dzAMNd&v2OY4Xhqf{=?Msf$nucD*wTKZ3YGg zRc7q&G{PYc>NjHxe?PGKhBd>TZ*BQf@M+!*9tUnZyclV1{pL&p2$uwO)N^mKIH@M zYQl!xL6cXoHDi#OXxP{*NCrAx1Y0@-9XbZdK-5C#)xqPe2vPW4HnM{dGwYz98)Se1 zIw1r06R0-{^%tlg4H?=52|~M{;K5NOQRGntumPYhJA?u56~czQ!9rj!gA|}nfP&?q zmLfXBpm>6eHbcf}!F*(;Aon2zk==(71$h!=Ay^;SdQiU|93i0PUtk6#3?Y7kx&mx8 zSS45^irENZxOw0nK3FBXeuNB$83-v@4nD00Q!KKXjs>0XkO5z`!8Q$iUzZDmbCo z1xka&J)mq51*_T385tNrZ6S~t2*b)z3p8<9%Nb;jH%K8A!^YP^;;=FdBn7hzB<>3m zfZ_-!4HEZ*vOyGV<0wenA0z<9IZztiJ+OKnq#jllf|SDQC6GAs?kw1N07x8p=N;&1 zOprd1II?fb0i_8?yUhJtL4f^8P+p+5m|o?`o|98N$H8fNuU0s5nSHa{R*b z3&_97yDf2vWRixll0>1?t~{Xms;o?R1cOWPgF?PC)8G;>h+Q$0N)QAa%&`h@6j*^E7fK90L3sj2s1LE^!j0b5k(V+g%8NyQm7dq z3RW(mn*&Qf=;k1o+sNjC`oAFa(9Jml5@cXtKsN_Dy&;=(1F9a~oEK1WbaTEy#nJsm zYW{_#4UjqIP%}XkEX>i<6>>g;g)K-uEF3`Qz~TZV4hsj6II{V${v1dgW*12P9S{M{ zzsTw24U#zMx@;(y0XAe0G6y9cBGq@u?o>b$M>fX*NgUZd9!TQI?ukGWM>b~zk~nfW zoInzXg*nI%$nBFVkN^}T=PzXQk@FF(E&yqPmCvAXK(-e-f7OB%LNRiFM-DgG%mNc5 z1LVwcsCrns0*O0;#;2eTfsIJO#7&_?DXJFHAJJeoSnG6%30-e%<)zL8VxzM27$8HhPuZF zP5eJJ9Nf{wo1x(rj3y4V7c{>k+oNj92#n0w06#9{7fK@-0Q4TpYoacH`lg(hAM z&7e!s#8sg~kFfFw7Cx;|b9SStw}QsYF*NaKQ1utl#Lq*+^A4JL7BpWxM-yKO75{`L z4x2*!izYr76u1lw3>;8>F!yIe?G;872aT(Ow8)`}H$lTw6HWXd)EpBuaZPBs}J|jV68{s(uBU zxGL10ThYY7LG3++CJwqH4iuiS@)hn*sJh!w8YaFQ8lErE#8*PazoLm}K;6R(O?NPJ zV10Pd_$SDIn7BVwoiLP!iSLHSmmHe-U1)r1qls&Q3dy`|anNZSApcH96F&@XKP*NQuY~5W zb!g&2P!JCG32Gip zJ*>ULhbGU(kP`)dahN(}3#$zCwIINu$izW_h&orQk zAA!1O0h;(?D1QxaDXjAgZWnmny<{-n{wZ$ZuBOV&~oxAns_<1-2Q+jZVPqiUo`O<(0t7Wm4~@g z51OyV(ZoHWd=)4SQ!fS$e?v6!R%p1{p^3x#hu&!7Mo@o6pozOf-IDsozXuJ^Y&3B$XuMRQiNngJRy1)~ zI-i6l4hx_8XyUO@_pCt^p99TDJJG~XLc`%0n)n5%_+>P4U#R;Zpo#NA&3}s~J`tLp zf1`=pK;6j(jW<~MS3%RK5SsXFXgMQ?Chh<&m$cBtVdaz=nmDY#?1UzM0b0NNqlsUE z#$yzk_&%tA)6m3W^=1*8_$#RY>(Inu{gf^=aajLr8k+cWX!tKe6AysK*Df@1cW680 z7@Bw&~#geCT;^Q_qx!; zeW2-f8k)EbG~5=UiQj>S&pI^maA>)<8%-S6Z#{t~{t4>et7ziPP=7r_6R(4+|BWUN z>z^7x^9?M1`=RN<3{AWeTF%>`iMK%cPEZa-r(D3m?6Yq!eL!dOw9N4&C z6q-0}+%N%6{3X==X=vhA(0U{XO&m7fQG_Ob4VvF!{RWtOqM_kgho)WvYA-B2VCqjn z)pwz(-vQlH1Q^=IZx2URiX1o zuh7I@q2_-;6Wt=@cdo8^3~;b1-pvsCzom)K7x) zr$T9%dP`_KXFZy@DYP8hjV8_sO&`b6#5kSLdzL8X#B&%rx3~)hSD%`SbtLiOP}rWaTTaJE@#6zIrpN1xG0af3OCJtJU4vNZUXyUN`=SDPf zSUSFeCN2Zb5AV^$pFqnQZs>vlSUB`U%Na2=aoD(zCYm@uwEQ$d6Nk0G-O$A2pz#re zCJswiacJVO_G%WII0rPo%F)D+K+|&vnmBAeW*(ZjKQ#TUM-zvQpX^2xmxjjsaWrvQ zd-pz?I19AgU=#zzCIjdYTL!3=U;!DZI4JzVSBry185mU2#FL=ndT8PYq2lIf;;{8J z4rt=Ad2v^$IOvRWkb7Wj!s4LfF!wBk#&0^B_;ILs0h;(LsCX$<9Nqj$XyUN7CiBt6 zVe3TKLd8Mu0j)Fn1TD|EL&ZVnL!%rV64#*OAoZZ|7j`$LhCPMs5s301hDB03=U}Gu>2K^CJtL~+5{B`xd-Had1&J5fr^97hZZeh z8&*TbLFz&7-wAck4m5GtJk3!waoBvxWi)X=Xd(9yO}qsv{tPM(a}O*YKck7m${$AP zR&$U$LH?Q#Ew{O$;vjRNNgM1hEvPt1J;-0Xp!S-hiGPNQ+d#!(=D_0E3n~sW2W0O8 zXgeeXDh^T)bu!rAVyHMsJ;+`isQLypaoG5ND^wh24$R)kP;rnsAbS;{<;+~DI7mHg zttQCgJy3CwdXT;Ip!S|b6Tc1>KL-_unFF);4pbau4#?i$Q1#EC;vn^MAPb?G73v6( zdXT*W&_YxMO*|het_Br{nFCut>Wn51+o2tRCJtNkT8}0UTc_R&6$iNoSLkeF!N#SiL21WVe20zp^3xdYd)GdtX;GRO&qp2;0l`f6p*JF7#QB5 ziNoTTADZ}J?u6B+vQTkQIDq{79vYzPP;roYHK^Gj$_*+GQV$9TL8y9fs5neLRG1+W zDh^T)GXDs)oJ@v_gVe*)GRXWUs5nSH$b2uTLG4g+n0lx%!&Im^NIl4WM`(Sq04fer z4_kuZPIWrT1v! zu<_h4Na7%K>Y)85A?Vg?kUK%*uyr}INa7&#=RwU^f{MfZ3){csfF=%Wf5xGS!|KN} zG;!FzxE825%stnkji!F6ILKaD+6RU62B)Qxg&j;iEdMH?iNo4OrciN^ ze?jilg_i#gP;rnsh~3`|3<*$ikb02&-$31&3KfT`ht)5|P;roYkoj%U@~{pn4pI+m zyMe-g9#kBp9%MdjymtwbILMr2XntG|6$hDv*e%Y$a2_fSGY2-_bQewh0JQP@22I=@ znx6lliJyduGeQ@%!|a9mR|-uW7GIWV;;?cu5KSDmHzOBG9Ql-z4kU4qe_{QsB}n4P z>h~jwgVe*y&)Z1i$m+i#iG$St07VJ|0|Otlk^}h{S-loi92Cx=cu9cf7gMM>NIfhK zf{gNkio?`%L)$swNaCP)w}IBPsc7P}q2gIc;vjq5py{v_NgQNOKeRnxg(MDA51X%V zMG^<87lB6P6g2UfQ1O{a;vjQi<1I^jjbL&sS*p^5iE#Sfy1|AC4hLlOs>Zv<_x z-hqn4!czlUzduD2ht;#6(8OW&>3=kF*!~S!=n)t&^G|>xi-Cbb3r!rh-^>Y3`~g&b z6q-2fe9t;GaTciir=f|%`tR$|#9?QCob5dyHwNP<+s5s1CXm(_dkbhILJL9|6YTZV>M{v)gaF@FfdF+6Ayr@Ux6n609r1cKod8F zro+o<;vb>)%MUbh7w9+)FSJn$b7weIy%L(ZBedLbL=$&{mY+dr;*X)~3(>@3>lDk- z!~>z}e=3@|3)DSZ(ZqwH{f-N0;;?qzH#G6X(C}e|9-Ra8uRS#U_0h!npy3mOCjJOdMA4z~&8L;xPZfuAqmB!`unm`;0CQ+oK8-hq<#GY9P8eY~C9t z4og?_(A2}km!XNn+z*@IfSChT#sHh=go(r44{Lv+i^KLW!^C0ke+4xVUHlW8ILw`Y zafq|R@)IKiczy@we%L$=%zUVJ23Y$7CJu8ytiFYb!`unmF9{Qe)g!Qd(CFd;XzqcX z;R2igfvJbJlZ(;R!`eA@XyTyr=|FyHLlcLcs|K4df|(DSS6Ydt9%c?~9tmCjc^v9t z^GoRJVe6h?;xO}J^FJVQSe^yBUldw?z{FwomjVuP4K#7sd=TiIG>~~Pb711uXzF3% zgU)S3 z4hNWj_n?^r6F-6`&I65a*gi*?`7rStXzF3-=D^nP!_>pXU!$o9o!(*iB!`uU#Hv@@7t1ghY z7_yMe0f|GaYlc!B;IK)%X#9{u;$01&hCJys2Y+e`UepowUE}DASJm3m6aag^u0Zkls&d~uJ;wR9= zVfFrH9OAdp#9`-az~*~F?uUgvD9+fRtAW2sfXnwOB~{kXyUMTf)5Vy5HxXEIH%zd&qEW3ovGK1CJvjg=|&TW z<;Q7g;;?lN^U%a$^Mlto(tkgFrX`7n*ul z{|I(I2TVOooEO@_fQiG*hpnf8iNnUPjM3D?#@b-(EMV$kb#NG(dgyQgLn4|ute>8V zCJyVL!`5rS%!ie6J!tA-=EL^!!_>pfpO2;RILv(5`VNpd@;VR`By&LGF!$Tz5O+rt zhnWvsCxUK%E}D9nJ1cOAH=v2b%!jQL0htd=o1pNA?E{60!`#0S$sCY+nD|aKahUnA z^(HWLKxTvReKhqj_rJm+{s~PSW#O=_;VdrG|;1Gwcr-r!`Hva-!7XuTA)q~||=D_9wVe3;s>S1LA$iuUd)Puxf z@v;nu_&PLkSbH0`J_TexbZQ7>Ji`?v^&oMW`S)>%KSvXXnGai^0x}=wSC9p~(D6=~ zIP7F|2^`|E@llw1*g64iH1#lXV>EHtxs9NE@<8^(%z=q}qN#_SOBjMfJO)i1Hm(O- zUjs8AR!%mdsfW3<4~IBxpDD~7SbJk3ntGV{N;Gkpzqa5I--9L&JD2SQ4)F_U;;{25 zZ{rYuj3y2{-|Za^ao9dqn15m630tQF5{FI^fTE8<5}LqZ;;{6ofv_7N3Si=(IuB$oZ2u{`_&hZAuy)Z( z9O4_%#9`|M_TvygjwTLUKLcAg1al9_jUfCAO+BoB|B6HWFPb>aeAqf8bn}&=^D{7U znE84*#9{keVd`P#!`3Uo#9{5{7#!wg;1DlB6NmM$tI@<^;oOWS4lDm*>z-ilft88N z(A2~Hy9rGkwjL6;e-ma7?5yphXzF3&XVJuA{b<;JOqe+^_dh^W4|6|kJrqbiZ0r`4 z9+*LcO3?ZjBo3W+XW+vjE`}x!^OqtHao9dhn7y$6hzXi{m^f_THcUONKM31@k1pGDe zb71ki2TeUp{0N#j%)gg#h~GjJhqX_h;t+p}CJys2Y`q)Iov<=j7&@Q|6Nj}2%q*2x!(m%JxtsOO&sQa*t$HJIiNTJ;e0gpu=uLRA>NE84$Cin zIK-!+iNpF?i*bmrMiYm%H@4vrhwWd7`3n|qC(+cy#4nU)5~8MYn}Bo3Q<1c~b+sRxO}%(1{B?tmr^>tFcc5D!BW zht=1KIK(s2#9{7-twRL4AGE#>qKDggzXFC$006`CJt+#E8`H?MiYmH4{Tj0 z%wAYL`lG3b<;N%-;z?-Yu=*<(O&k^urD)=?_IU#i@eVX`*nIJ19OARl#9{3p*nVV~ ze_`Ra4oy8QeBkR_86kJc!P+Mm(bU7n8}Fcr!~FXMO&nJ5yhjslNkE#9{u0tuqCM53EcDbJ zkG2p^J*>aH22C91uPtceu=;C1nmBCT(Q!0!*nJ+CaERYR6NjyDdx}H+Et(|Kg+mTh9Cm&MOnd=UTo}6EA0`fqFF7=ESiV+66NlXk0^4T*GY1xK-e~G! z^=23jaoD*QFmqtxoQb9$=AJ?{@dHqQ!S*-6%z@>LDQN0p>0~~dI4nIZM-vC#Cj%;* zHlc~b&Kul?CJqbdqiEu=a`h~lILu!+afm-e6NiOAY~KdVzp(Ko7SN<4wA}(~KfwGe zfF=&}uLPPn>^?SS9OBw&;_pF$!@$5`hC|#AO&k`Uo@nB*@C-x~hppF)#UY-GCLRq< z53ut$VBrH3uRv1|i?3!haag|SMiYm{*K{1>$mex{!XFl2uzeUH_aN`rID}*lNF3HL zIEzF4Dw?=HH2fdn5PyLt4$Bv?{U7M=;e+mzfQiG*m&75CeC`Lx{jm1A4w`zHxCxp# z%ssIEB`|xT-eQPCQxEOdF{I)U&qWi5jn7o#5N|{ihplJs#UVZwO&qqKVIdCjm1yEH z|HAgi!2AnJDA(aE+F$^VE{6p8JfUg;?U*?10N1? zF*I@5cn)me49py;G6owc111hzFXxU!+#gLGmQJE@h$o?m!`uVguLH9es*Ir(%7BT( z#zQ9J5TA)A4s$>9IVzy=go&>~QxEI6?!+N}5KSBwk7sa*UqKUx`4_tU2Yf#i%nVTc z!tw{mztE**AYt&m?H~q795zM;;)BMlKr~1kI+Y6I!f%!bi9@GQz~V6bLE_M%R;Hkok>?GO_dCGGoO+t?XkG)P7KCB-AxIoFo(U2IVOV<* zBo2#Hkaz)-J3-?ZATbbbKoWya967zg(ilt} zw(kR$HbCMqH6U|faS9WMt?P!x1xOq@eZs;JCJr+f=68@da=L}N872;sgOxWRapd$2 zE7xJ-F!jjkA7&@W{jhOLkb00fOg(bGKu-U#b{R-LNE|k9gPdQG^95|28>Aj24qK;( zoR5(63vApDq#h&=t9Ov|7c9&{?uXeAQV$Xb*#Qzq&UeW93pOtYQV$Y`sYlL_$oUQy z{~+}sahQ7Ke2SbOVf%nV>OtZ#`;hZ5ENy_?2^((%sRxO}!XG(bBj;b(IbI<3AaR&_ zilF8b};=za+?f zkT^^|a=C;C#5T1sl9+clfVj#R4NgR}~L1G|$07)Dc zw;=JWNaCP;3K9e1e@Nn>{0I^QVdQ-!pnL}s17Qv5LKl!bLHP?L2Es{5;-Gv45(D9K zBymuF0f~Wd50W@2Ux36w_z;pfDE))PK=?nBI4GTi#6VaU8rdNCfYLKa41}$a#6js6 zBnHB1NaCRM2@(V0TS(%dbO;gy;jc*I$mtLkwxE5JP$eMc46t<>AaUe+6E?mD5=TyN zu<{=yj-1|L^#({BIlaNkZIC!}dV}4E3lc|8Z?JJ1kT`OBgOy7lapd#{D<44O$mtC> zUIh|IPH(V$4HAci2`C_@K=Ua`967zg#(_ZM$m#70l6vIy_5w*9IlYNM^CQR{XFl10g^a!dV}422r>sby}|Yag2a*28*JYnNE|u6u|V?|NE|u6xgd!n zr#INS(IEB6=?xU7lwi>QZBS6c`Xey2VC^axA4Y@J!q^}hbnFXA4C-u<5Ev7yAGF>U zlpn~|586)-vLBcGVeJ;MqZk-q+vs3i22k9BiV$@7Zh&swfyJd8R4>S_AkDBm0J={S zoBgo%2CN+n(gVUEyFfGygYF3iiJ{y70BS$1z6RM3@*}$ag`lxQ1_lO@9L!7*%>zxp z$YlXY9Ap=WhGEdU43HSQ{RXWN6)=B-><8Hm!XO!#cpDD;WuW#Wmt7!zAiF>`3@^l? zAC_MU>EDY(KkVLBLi$1X1Y?Uo2dMjD?P{2N(cOO&nl8}8&jT8Mu>J!m{6I_N(8CY3 zA0M0juzkU>@*bD{Z*kba0%||39|W==w3G(jer`s{mFDQ_rv#cIVeKwl_OmfU@)WxN zKS1qA&Oe~3dUX3i=b2#hKdiliTsMK-fFAy!`4x~Dy8Q~Egvr3b086JJ|AWTL(CrVz z;r}a8{}ZwwbY2iP`z^5851I-|3K}B_1i#U z55ge7f@m0S#bJL2)P9(LQ22w6#znV(2@d<0KrJGae?jNFf|R1izd$?0g~;&_s_W40 zKZ?Wt4Io1q7#IlI4{Eo7l%m_OfyI8%QI+WSgYL1$mj3sE3xXY z0ct<29}5b9(3mH>{j5yb^Zx{BmOKK3nT-JmsvRMzX7!$x$O?phwlHWIP7nL+7Gh_l>R_x0-^hV0}lJY5NZEq z9Qp;I`z&GO5+JvOFuMEC;c)*9sQY2#93c0D+KTAz2i-f4E&uXB6~e|jKz4&Ly8Rz; z*v|kxfM^5Aa0Uhjko}l;LzU;?L5ARWk8T(Ebgzz;r<=RAQ~D#9V}@2 z1NA#$;RiEz3J&{={2}^5^&^A@Az|ST;W04u^BO8 z*Z|8v5FTduEyiL0fnN|E4?u|%>VMEY9lHIyaoGPT2%=vbEn}kle;W?_7yO6lhmAvk z{0}g^>wFB!R2m)yItqG(ZY9 zoRMKWY&rxg0-+|PLue2QsV5v5q!}a_{yQ^V{9Mhj@-s8TDh39IDG!+$Ry|-A2D2A1 zF>Fy}Xb56rXt8E z-^_6Fb1=iouhonzKQl9~`ohex>MJwTDn}*;(6TkCdqlwQVPJ%~=Ml5;DrF@1$g?mM z9$;Vy0h=A{u<~oQK;eslnK-~LVQ?B@x?;`1z`z8#Tb_vp+{9sG z1eY*id1e*Rwml|Ba3W)Z938~O1Xjkv!kU>^0-2Ry)&QMU3elkrG7-YG0@c+Jrb9Uc z15~YZ6WB_yBVaZ|8~|3zA^~dEL735p85kH?IqrirK-|E_0hVEnItMe4H5xQ?$I1b6 zC@TjSBLf3FNIh5?+XPUigD@wnGD0g$4fZ3T$s^9?c5M5peCzezKUK0lLGV{S-)C0pcmPsm(CcCD`wSswjy1haffJ_+nsx1Y)y5 z#2^0yl^hWE3y^;Wpyo^inFDd~bOdt-f;khxoP}V{Mlk0fm~#=#c?jlw1akp`xe&oz zgkUa4Fqa^h%Rpryc>6TOr7Iek7#NWFD<`1xH!MKqZw9r|k<@QFzy$3V3$QaVy= z1{%)-_hlXkz@WgFnNq;Ov6}I+2m=GuHEY4jAouEWtOIjQAbK`{eGR!Gk7Fa4;{cJ_ z#0XmF47n?pV>9DD5e5dx!RQ=Y7@vqRFhF)0b8KaN2CCYie%lqm0t#u+;a?n+X0kvE z90ral;4A#ViI!t3$i*BG_H-{11_nrG;g|zT*pMSIIOc-Xz%s}l(D)0u7?I$pyb3q7 z8Wcm248l;SyoOaB)tPBi%DGZ$U%(0;HOTLo)0tQY;W{_hcNrlr1%;Dk7OHF6sbOv)E(Z=Zl z=7>P;Ia`9YxxNw>#V!?ZYXx-;JaX$cBq z;PhY?1(k<7@jTK}r0|UbXuG8z; z7#KJU7`V=?1+_mo(;2wVf>@ByQJctd6A+F1yVp{E=WxWgnb_*J^{jh07~pr zAnb>`_!t;wFz~wsJ2J4H+rs!2O}sTI>1?p+Y_8+A=fH%doe=10g2V~jqE51?#e_|{>_D`{5u=jq289@ zS;q7k=53zkOrU^*c$;T66DR~(z?SoDX1V|>{UDs}Olm?546rKW=|7lZ6L=pme&c|K zA@4&*@YX%B7T(9;3=T=(yiXb3K>8sv&%hi=QONs}F-?ep0TPnDuNkKZ!3rPVcZ`RG z7#JWS$@`h{w-5sZq`cw%3g$q)V|lM5CEDolc)!k90Qfme+QlyW%uQW<#F!At?Z6b4=mFjIoBfPq&N%v9hjWZ=~T zGa*TcR~yWMdRzz0fqGmQ%z=7bp9!=P2kLPnCQ#~tdfXTssZfubfV~Gf^MTil36$0# z559 z{Tbvws9V2)?0~xUD=6PV-TDobA!Q)yzk{acAf+Y84^RX{N=uGkpt8yUqUJY<4R!Y) zP)iu*^FV{<1K$(S z^#Yv9B^3;O&!j-pDPU*uJqHB=Bxv|vfo?d41P$NoU!Z0aM9muxNd^W;aPYnRAr7lN z_}+smKS*%!eG-;nV1NV%-)CJ31_nrQ@O=rAU|@g*2jAC12?hp8aPWNtsgHn||9zSS z149CY{bPd!0|O}aF);A`JTJk(0I7)heu30ODk8q$FC`clAQchcA3jM221rH3_ZOrF zQf%`vfQx!aCgWoSbLN0^4<8dF$ZL=s$H&a5Aj!Z0$#HzFU}caT$HxKYK<={V;{7$^Sfrj)kka}oH9|y$@G^9^}Vg?%0CqXd-sq*WzxaFh?~M-Kioclj6?IE%9x_|HB9uSo)T7Fanz z!l33ogM~mi===^)TZcg)0>O+F0yXKFAZHj0fksS0K_Lv<<7*DFME z7XbxgAU^|xD2M?eKwJh^4p8%smBWG`)CXP6z`!5`B0xPruz`#WtQ?j63=Hg`o+r4Z zm0Dw4pZ6ZENED}*FtC3{a{m`3_E$zjP{guwNHBpyUJ7(k0LOPQc^XWD zdhe_pOki2ivGuGR%3$^zuNsW~QM1oTShhP|} zxdBe*g5jVThh$U12+-IB3j-?$sJ+k10qQfba)8>stQ?@CfR*Dk$h0WCos1OgkY#2x<DxLC)0?Vqjng9d63Xv6YE|0i66n%|TI+T@0)o=0Xe%BA~(FXdwm$Q4qnv%8>}t z1To78BoFctsBs9%F6Dv@45A?Ci#CB+pd0348gpQ(L9Iu0)d+o1Yi7Yze+AhMa*!yP z1vVDsCQ+~!Fbm`a238Ibo0a1POe3g`3HAxZDRAWstQ?HOP~SQWGcbsPqDK_W0$T&# z_0G!SDa^pY4v892Ka-V16{e{PRTEezm;mV%1<5k7a&&;SL*g_Frg0-kBiIg*iy`)c z#28pPKs`}bj>#~Upyn;a?O>H)0_;qva?nn7aCCv1zTf~BJqn3s&>nMe0_9a?;t_$C zBCH&sjs>*j6c+)-y#|(UkcR-8rfjw01X1La)7$+tQ??? z-%!b1uxdRp32I}qa-@O{1kK?>l}tcbHXE$2m5G5t2vlT(nk3+YRG5L41Jq`R>No^e z1{wuo9YaLxK*J1>DKr7TvIJ3RGnuav6!?%V%U91P3aXgEJw3h#kl_$! zQyEyC0W?^1eLr05O(d@EA%L&LMGWSKF7VJK zxCr6vjueAy?#U8^4Y%<1g2W+BRlYtD8`>W0pDYG%k4@Yw#=rn=k4=6i25*l|zVuySOJf|3o$O)?-`VZ!lZ(5wWq1}q54+8`H;g6cX^@Gf*# z4$!7saFPYxLXV^n)an-ni7~KpfI^*>VNx1m7A^XUu>zGlhX~EyyMd238JFxWm>( z!d%13@d&|uD-MdD>*CPZ0JR@QK?DOU2dK-#%JB~-1#00zJPnnXlz?jTkzimD1rs0{ zQBXEvVC4W&tQ^KLMWBWt*krIgm|$S#h=55?0GR>S4rYNgGq7@ivKcE!IZP3#p$IVp zB*DPSF$X3CYBnNdV5V;aNrM{Ypq3;=8kB4pSUIjrK%+(k)CB=y6lu^5H7my#2~gPB zfkOz?$zkPK%EZ6`S~11IXb%c_*u)5Y!_*v3DFy~PP+y4A9+W9T3P3BI7#JPF*#VT( zL1G~MTZ(}JwE76dW?+|QVCa%$U{GQVU}{DZSCVF6*Z>v}VKh);3}!S|VhjSY0vQeA z`!5-Mq>;3MjJgWef@#!musDWMMhK%KKnv0!UJOL`BB=cfaw+2+kh>vX41{?Rw1|m; zF%Xn@L24k}AQ%@C03n0}pj!$O04+$q0R_M&usGD!hDwY3AY3Bdvt=U`x9y(+}t1ypmqr-F9S0Nh~p`2 z!Og(H#S1qK#N`%dVCJ)tWMJTd>tY4z;)N<>h3Mjg8Up3=i^0ugU=R>Tu}=`H6YMe} zMn+Fzka@z244%UJ+zbpNqKxX25HV3!uzSUz-eUzhUR<0J>~ydrBoMYTFi1kp1uK(+ zD&q#3Ee%x$wowLTK1ftnkI`Nd5^f+11sR3d9VDhZNrL3$SmEwx5@%qLH-U!eDES7tRWFdY>;6pM3@a>F)~2c&p@~!l93@5L?L64PlK>n zN~A($qd;t|i31~^K&yZtD?Y$Y4Uk4KhE+^p4g&)NtQ3dw$)!!185o!tc7fIjGXCb{ zWng3kFWCUCTh7YM)Gsbd)=w^~EGWs>2dxER(9g)vP1P?*&8bWT%cbU}G!%;L>V^m8(k^wX1*vFpC4PZ&M8evCDly@If*4{`9-Vq7on^=@o@CI%oZ^y{l+-l63bYeo<soDgaU;YLt;*Peo#> zpJ9BcpJ$kBP_UyL+#5hURA5_3~Q;(4hRC7}f=i6yBF#U+W!+403C@!$|~4)TE*0rhQsd}(H0 ziA8(~LsCv=UP@+OdU1SaUTJYED1<->7-BAR3_|pWm>EKi$j;0wW5`P_kIyVg%>@TR za#0RLPJUjx0%$>1aYmwHd`4n%2190EMtoXMVtO${YF=401HA`2*-Q+x%o3B<>%+5Cgwqm3l8xQa*cNmiGX^JAvrNGKQA6M?^glJ zL!gL6Br7Nj9R3i0JDNg6yEG5kW^n17m;?1hN^XH6Lvl$`4ntC2d~SY9d}>7j#MQ2T zp}wv`jv=lt5Wc^2h-*kZ)X3DLqI_ujfjBcUB_$q`)R7#|kW^WcTFj7{QUHy_vc#Oy zR0ePWBo-8aOFM>?+(JW$9%t8}ka)+?2!`a+qN3Eil6X+igCl_K5I;b{e@MOr#{e{#z{xB(KP59QGc|>wxU`@kzo?`*J|#0fwYY=C+2=xZMkSi!n%E?TI1af|99w<2`<;AC`<|QYAj09_T z_VjaO$Slk)fW>@qDI~sNbpu06erZxpDnn6mBDjhH>CDW_EP=TUR5=%yfI6dL`bc!nl5a0moLBf`;#Ar764lGVBEKSWz zhF0p}Jdu(LsVT}bi!+fdfE7wbIq(7sn*PCVgC=rtE(8T^d}dx+K0|3d+EzK#(j4vnxwLG9P01szS5{ZYW(xTL~WKjBuFM)(1sQ3UG4e}w_VrX3k zs&+tP$%)As;Ho&U7~~8FP*#D2CA0wyPAK^)@yX!&3#6qiwJ0;K5}cwz38@&GiXmkK zNC7O_6{V)77J)(wl$gQo8juyxmJULBYDGa#W^!gpd_jIrW^yG1RC}nW3#i0(^6~U@ z0X5n{%|%Gw2KiV4B|U+C1_@GzoYcJZk_-k&vVc&93}B-(Q;QLSQVdP?&}0Sk1vGsi zmwwQK88vOWMufQf1$+AYfs$5PJk-*H(xQU=;#7uscrw#L3MRv4kR-aBZ?q! z5(sh)^Y?ajVSpr222f*_0o0R#g?uqXVonKI6x`uv09EW65O;!GybQ$|`9&q*R%KaY zPG(AGNhP@L1+HgOauX{Uk}}~fI#A%Cb^XEpe@JH$oZ>3uA^8iOoSZ!24I+3zAeVX! z?tY;P&I%@amI_7&hNcFFM#c&n1x2YvsX3{M#i^PKy17Z2`FWYi3c9&DnI$DTsk*6o zDVd3R3c9(8Ntw1e1!g7+y6FnK{zeMAX$6_d3c6`&rFqGq0Mji_1=Ga}x@o0(<(YXY zx{%^fK{pNT7~O)R{F2n%Ue3eo{;WrJ&Fa9VN>@`3g1zE?f?|Mo zWf_u-a#9Ky!083zD`>(7hbyRG6cp?jkDhWF(m*XdaJmSI3~*&AF*AfX9W6ye3pGf( zL@D#~@=F}kKg!(B^+;qA64e-oh`+i7!qDHCGwjot>=| zG~E3{HF0Mc2GEjU$e15vRS*M9g&d4< zPM7aF@-Y}NFfc&&T0ut=9r+ZTCbLXop2{?jF^KERWygD0!OBA}Uvaz&(!s#MpjTX( zTauW>pjTW{1fervtdi7<5(Yi6ul16Oiy8EaQgagZK%#o!1coc$eP#|#>L1G7*GX3#(! zst}mR3>uFEvk(M$83Yz_kP2qdP#uVYgdys|+q{rOAxvh-QUnMGiDZUMcq55Gn9Pu! zKM)QQ$qZRQg(L!DGBbdd=t0=XBr^keNd~eIn9a<9w&4^k3YxJ8oqhu4Kq>HAK?X6< z0vD(Vf?{R>uaH3qKv~RKRD)b1gcP3Od%I_D zJi=!Jz+)jPMtaE%DisVW(4iPyIS-sIAti7;xTOvjfT%_v!hk9R_gcZqpaSsTK6+aQ ztO#NjT3$vv^F*4F0lY8-9B4>q>43zMV+T}Lfz*J+L1)Z>*dPo$*9;^MEAv3&uyPF~ zj%*I>3|5dhvNa+$ z(EI|+H!yR)Le=v@Vdj9&s08t&(bN|}!!r#{+z;yhLNxI-NW+Jr3{89?G`t$o#NR{ndmEZK z>@3oWXyRX??w^Jx4q6)xa{od!@k3DlGAIr6uQ)VbHlm65LG#NtH1Q`;e;q^p{aigO%MKP;vl^soP{R74(eZ+{V?+} z?6rgD3qdq-(5h{a`{dBXXF%gy8%;a|YK{e(xCAu6yP=8eKZ~5KVjsG~Cvp zi7P?l@h+OU4AkBiXyS*U_I^hbUj{W_9I6i%o-qB&XyUt};i-=%{sdZ{Sfh!@Ld|za z6W4`?XF8g=5Hvj(qlv@PM?IQ&DAZrwXyUMVnT{q7E3X!#iOWLEf!%20lc4+)P#P9K zu=4*Znz%8vykdsB3#J|xp0G3aVB)awltokT26c}qnmEi~PH5t=aP~(NhlO(tnm8;R zGSS3g;ZTky&IQe|&4aSy0_UZRP6LEXaym4~_i0hG@VrD5W*c0w?k_ywpt6VSwipz)iFCSDA6XBC=w z05o3O(Zpf-bPAd{ES)bz6NiP*IyCWesC#y!iC>52qZ4T2)zEYWi%(cMG(p85p{Z|y zy8k_zcpTLHKWO5h&90#I#sxJGW_~!-ouX*sZ=vOhBAWPBXgRElCJwv1(GpGE3>yBf zXyP?cb712WF!vZj>)$vu^|10Z6HWXt)W4-@;;?$85l#FEG+p+hiNo6AGttCh?fa!@ z;=7^YzY$IR8#LTcqKUUa{dE;h+!V@x2&G}+0E#OR{)HyK9U5+|Q1f8w+o1V^3r*Y_ z>P}HKaXx6gD58n0LEW#5CJyVrSfYu;!p#*;{58~_foS5ed=!f&UJrF=CYm@bKbE42 zAA!~jjcDSa^TI&k){7=?0xkDuqKW?oDP~|`Sc)cI3FU8u(y(w|0S%wMXySXJ;du&8 z9M&(pjwb#a>R(v@8)p7fXt;euQ$Go+o(oFD)WiB;s%YYA(DYz{CJr^0!2?bFJyaqD zP5dm>UkPa96QTJo2Ti;HTF%4jJ(xRtpyIG{3nqRKYR&{Sb71=CpoxPv-h-lS1)4Y) z)ch@I;vb;qA3ziLhlcYRH1QB~BGAEfm^d?39CEM{1AIIgmcMk-)H^`^WrZd_3+fJcG;vF4_=KQ|t3u12 zL^Sa=Q1|4aiL*oNk!m#YRH!)QY#D_6*`WDoDw_IVQ1cg|iMvDd?|L+Gb7;KmK@;Bw zO}8h}#9`&hbu@8hs5>8_iLZc~^A1gX5!C&^(8SxJ>5vT?53qRL1XVADCJx%j4@wVm zXyUN^qJ<_7%NJ&7;;?+-geDHl7k+5suzV4PCJxINX=viGd{KlZ4$BvHXyUMZ0UKw6 zg##@8!}=dEaaj6agk}yb{ln%%VCrG@$Zj9`NKD(tJb{R2?7G9+*2PK+}&hn)p#@I?+QD&xWRxdNlEW&~&~SO&m6^ zwE<0B8tR_iXyVJD<-lLp1R?Xg%^4O?)l1eE5kbegRsZutM`IEF7*w!x=U% z1rxsn4F}kK2wWWMPE9m({z1(#MHBCYmK%;};#yGm`J##2Liv$U8fNbysDD$@#I>OO zLMRPWZvc(2S~T&e(DI}cO?(E_JyX%d-$32J5KVkKG#&0l6Tb*me-uqz5t`mCpcA?< zcP2p7gDaXite+l)CT<6He*&7g0@VGTXySXI;V>0V9F|WPqKShJ1Oa)C5p<{=Qa*y5 z^2NZwizdzuP5%;T;(ww3(nk|_hpKl#6EA>BxriRg(j{9b44-?VERiN(4K@-n_nqQ74J`XD1j3y2nZ|O%9Uj;2UW}}IVLhW6SCO#9IPdB59 z--f1#18Cx)yO}`g?F^bYtlx11O&oNW3P}AEG;wKY`u~6?4)fO^H1SO!LqO+zKo@Pm z;t_V1x(J$h1vFhLpoxR-h5{L-gC<@F4L1ukad~JxXb)W!0<-rH$Pfkw1}`*m*e2>w zH1Qf}dW%96-vEu5G&FHocow0FM?>>t9h!JPG=FuWiNnTKrlE;{fTpWOXyUMOiFIh= z#?bKDg(lt!HRlGJIOq-^P!K&v6X%EK-*;%@Cb0AXU91BO=cmx{SBEZ?fr-QFQA4OW zX#X_Si6Cnkf}r9c_0S*#i-#kLgRHyPx|@85q)_;xO}})dWK^nmBCT zQa747Y`xS*G;z?q8z3w8p^3xp6upKf4qGqv2TdGymkJm3qE3*1L0*~yO>ZJlagh6= zSpsA&gDF%Tq#oqoePB@r1}h|SkU6uVf$D-J4pMInjTcWOagh3xP;-Kj#6jv|>oy{g z#6jv|;h%&g4pI;6U!+6DVeW_B{ZfJ^4qF%1gC-6O&&_D!u)Dqwpov4Tcwo4JCJw#2 zhT#uX929OK_lrX7YYx!4FG%$-FEsp>(Zmg)`P~;yoD&+(k!a!$(EI`oR?rq|2B=c7 z5VYEZi-X(*l7Ow)1ce(&Jxm;GJX}329KeURfR2Fx9nr_YzyK2m-A@EE4`vQ*{hSR* z5J^2u92VX%^{{q6^y(P6y)f}`G;?6j}KC(FY+$tn- z*u3@=H1#m?H)!Ip{0_a!25v7*9F#6WT43&k-66~i&9CUKALidDXzF3&paV9M)o%fD7#J8}>%w5> zz{LNfnFI4LtbB#3hn1hOdK)GVx?cxmg#omE0TYMi3kx)H&^l?5dT22R9%q9Vksx6P zSp5ky2b3Sdf=I`Dfy6=i1tt!oLE^~j(aSwpxq)mxvN_OZ1w6mN!r?fQ`;pE6gCve@ z4y+skt%pNa4=Zm#;>hY@?kAT9mDivsgoP)}9N4;N7#~K1)WX;x8gxP$NDSJ{2MK{O zvHC%0Z-K&^T>YSR$sqf2xgQp9U`K(EX@apJG$>tys#0|KN`Nj7V*s6~4N(Vb7J<}( z+zJwb#W(26ENu2404c(9q7TRns1%q2l~*7!bo&oL?T6JbAp1dnM7O^VRMvw{LM3WI zjsmqiK@p531r>&iR6@f9-Tna3;f4$h3?0yl8)QGoZV(1(hWWn>hy8b<37HL=&Ov%W z7~TH4IP^c31F2?U2qvH(biOmT@Vk)+(GR7zNVcw+$ zx~mhL{T-kUAPfu)u)CB&_Jf9?(d|Eo!~Qa;{jhx!xarQ&3*&u{a-NmgX{+lEuq{00BS!>9moz4z7Jja4jcCa ziGeW8ei;24hkgst#fe1RMF(2<4l@g6J`Be}^~3lu8eJ_X=u9n8yBwwfN+&?|!`iJ- zVT_$upkoQKgx_wv4)n#K-w8zK<|Qt-K7ZX zmVk!7(Cr7+z1Zw8fZk!b6l@xTK(`;Vy(u*fb{QSyo;mQfa|#ePgoNEiXKrj}0g)yC zE;4~uc}1fOUJ=ev3OfcDi`LGN!S_8vIc6>KP%zhS-cjTv&|8}$A- zm_EqWZBPv?9H1>TtYx4y&jCugkWFih?y#N{$P=(mCF2}WoyEZDg-_BKpJV_&$zXhv zVb~=J9rB4d*OLWwoG0ioOjgK&o^0@wBDp~)O2SXFWME*Z0fh$0<7oLC77k!3q+N2< z;=|0LH+>iEUr-UlLd^MskmFiF=g@)Aq(eE{?KlG?=nOVSHU%aoQ0p1#0Jl@PrOx7( zx`12iGH$7Bs8Zk)JHQ0!I3AR3?BH#Xpwofi`^Aeg%RtBKq+}KmIP;H`6Dz=$BHVt0J8x01|_>-C?B@ zNDR~u0_i~(gVdGK3pAknmO=d$bak+?JeXckbqgvHk=23Nl$9)haTWq3oq^jP;ADkNU^@!|q8{85K~@T8V>=50q8`@L1uKIS*v?3RsE1Be z!Bs*S%nT4&2oFL+L?9$Y1VJ)0Kqp2KLQoSh#X(A#;Uiuk9t4B>d5DulAYw3*^fMSh zxf!M#LE}Da0am&o)Ph*d44@tah=q!o8K46NNWu{J%VIgT0dyt=Z09+W2G9|)3}^!# zpv#=V7?Dn3A+8S=N2CXsxEEL)5$`Z@&|ZHbq_Z(#;-Krcg`lwmat%xzG^Qbh6pt`* zqi!c$-~scQUS5yO>S1%9=;~qO=;~p|bfc?>iKDBB zjisQghl#^d6ljhFIoH7AA0!U)>nW(gu&{!Or$am9(4`6Bv2BognEOFvC?KsM^`Nl; z5F3QScNu_M?we zPb8#?n*xu?eG;?&J=791SND8JN#0KGP5CQcU$llFRei4+0sR!Lf z4H5#4WrAp!_jAaSo`xpbkH>dRPfE3nT~{SAxz}Lb(i}u|g0VW)5s`{&tWc zR6X+8JS?7J>bFDP0~&J!X#veSfW}WiY!H49B9Q#+19j&|s5nSHXbcm|WdMyGf!Hwf z`Jw9hp!R^&gT@>|YCu>KDh^XW1tiG8z@QBk2dRgYy$}iH^bDKt1<8Qgiy#`L9(j%e zHg^sZM-B(r*d9n6*}t&%B}g3EU$FcK5=VAFET4hIk=+S$3kZY6k=+9;$zkHKe2DCR zWOstn7|a}yI7~gVzmVMzD~CYlgT!I#k^PJ8FIYYXsRxO})FX!jvVURu3#1+-4pWaD zKFHw!n+pV~2Z_Vf!_FoEi6e(kEXcE1(k*Q69HbuPFQ_tx$xsGJ9OQl|mth^00TKtf z6Ut?PtF?xh!P&z`_kA4hnymdgQq;WcR@Q3sR5lo*bw~kT|k?U~@qr zab)*Em6J_@$_-E!g5?*OL9lp*@nJMbEsPDKK|}2zG4yd%V)fH{4h@!$KyC$LSp5fL zgD|L`0g0iz7jl~|=yr3EDhBW+Mj&;tdZPFD52~lI*$S!Iu7DYtlh;q#(T@_k-HS=p0L8tIx+QD;vAP!9bB&dFn7&4YZu7r^!VESM}%c1(w zoXMa7)erMOOg+s1F#aMO;kN@z_(GL;LKXI23%J%vuv zGBJVM)l5v_9KZsZ)rBb20QCkSOl^>f5T+HVPXS>%l!J%UK!h`BWB}?2n9Y#MU{(%L z;~r`o8wXe?%LGtC4Pj1x!N9-(wp@et2xv_wM{ynl>oFBji;N=&#^m70%S>TlJr2?* z0Ln!StS3Nh5eWMvXfvk-gnbGmt^heOmt`ub#sQly!Fs=$k%0lC<{?N8l>G?AW`T%5 z*5_ql;DE4SXo4p)Ag-JSG6%w(j$qC}FlQo|vk=VL2<99Fb1s5855b&|U@kx~7b2L8 z5X{90<`M*RnK2XeR$2)*M#c;#=*6gPOpIBeP7Ju?!^X_GK$wAn1HxfpjNk{2|3ZAW zq8O%Mfi02oJY0V=<0DY{3el1RzA_W4KNZa3fyksWrhp8CaMHmt5)e)Xm?Hy?la;q% z)(Eh%7GaGin8N|pvVoTwI=KXK=@waLs80o08JJvQMzAt51;KsF%FOhP zAAVUg%U002b)YsaLje0!#$zxo?9;(P06DjqeFozu0a)O$&t$wN#K0f`_5%AX#x0=x z)FGVNV2%QWGl$Vbn1Mk9!kNqXLWqIEfERQ(5&Jww&|Y5)s2{dngt@tbeIer_76t}h z(B%p2OBg}7hC>~&6xjjGkOGu_IpYdm1_nrgvaf&yD8$ZHjI6>83<|uNDFqDds~JNO zu2~CKW&lyP4$Luua5jK_4Z2U1fq{J^nBxGE*~F+T%)sCQ;cRA%7iM5cfN-`jrV2AK zWI#Au880v}Fcd)jwtX!NG!sj(FS*A8&1US&z_9_&PVCDsf%Z&6*egKkQ2?rU*GrgQ z4faV!tT4S(j)K}`5cN|*Srn2j*{7cdMG8cG4k)`qvOW7;kQ!LF-($-PcTXkgz%hvW zYEbM#vORkZD6vA#tlb4N6Y8D=po7T3MTP)-@jSSDNXf^UzLK zXxfzEuw!OpV_@J-Vc@W5z5y!HcuVpN7&si6L5_vwAr2=nhle*WHJyRO8O(vCISv;v zM+EAwqk?Qua|Jl^nJhu(CKjbLa1=0sVgizWI0~6Afl4r_mSZk3Ee;&+%%B5zd4qx& zI6RowfeL+IKL!p@FjImz&wzo$i}@Zes0#|oV#gcUpx)wh@nB#%+s_6K(FL5RJ=hr- zI0_gz&ny59ka46laGnLRAfd^54#b8O(wyf(Y)A}oUIx`C3gDRFygHYcfk6YpzP3z& zfgypTkb(0iNOcBB76a!k5UT(pe;X9b6%h6vP{1`n*mpr{Iw0)(An^$h_5)Bxft>ck z`OuV?fnf#%pG&YK1IxK!c4!DL;Id%k=YSSGT$YTWq8<{0Tvp(0!ogd>z-7${vO$2i zkb%nv%#`3wXW+60Ga;Fu%O1>uWPUCOFb9&|xSYTo3*I6IE@v#R7S&GYp5fl&|5RNA}yH9{{yci+gfW*vsDGq4NK=@a*Q295lQ2BSfIH2B^;9kbm z1M@cbawbqfLA=eqnh6wwEMWV%H#3O{z=}cc?Mwv%h&tlwbeLficpfnJb3((A=OJS? zC@p~X^E?I@4v_TC^OW&8NIyj88JGhp#duyaJ{MqMfP^H^YerE)STV};j?r0=fdLYd zJf9hB1Q{40Wfjj?Fb5KrJU_r3NLcdx0&^f?$-~LCK#+kU0%9o-(^WxODaOOc#3uwR z#dw6kzAk_$6JfFtVqmC%aKxArg%}tbARK9?Y9R)O4hFs;P%?TpixV22CwP>Z7IDFX zK!s@%sL0~YW8hI^0;L=d-c$x2bud$aH-&*m1I(1*Enwi$1Tz(Q3mJH{z)VOI;?V|k zpdQx&bD$pA1#_St*Jqk51S_O@jF>>F1L|>OaHK*#ZUXjR48#*=OrW#|Da(1Rm_TW5 z21Ldh%vk{8*nl}JARI>~P@dfY;kYs_7Ghx70pYkYfpX;mXhHJ@ba()`%+z3i{*4P( zhQIs_3J`FvWPb%>LrMtt*ULZ+1&H_?P+b5iA=uyk6atO?L6Y@1&_NVnGc(vPP2z@` zc?HyBftJHpL2Rg**Fa@Eq|{-*4yw4JX5M%NG81CgO^~<-2k7cc_FH#A6*WZsHmEMJ zfUxg?*pRc4*zbZWa}N%1WquD-mj^)o`+Y7qN*4UFmK&NRG}zl1IeDN-g1rM=vqG{M zdndTn0Lc~XUEqcSq@ZW-VN?``*X@1a0s@jN*!#g86{xj8MR=fv@CNn|pcXR3$)Els zg84Hj7@$G&1>_ZIkbDJYZ)lKw1Lb=eh~DpqL0euR>>r?X1Syo+e}Rfb$WaLFzd>wh z@caSw1faq57sQ4f56Auw#14R%^B=^9BtdotaN84->ev~k z#e`vbkDUb^91XmA$qekQjOxM+43I*RoekVJnZTP^TEW21&S)zP+I7Lop~cI@Z9PY6VSdM;oC85vkPzJPoJ@&h>COR#89{Ll zo+4&_zzAxVLD&z$Y9Q=KjG(3)g#8$th#~AJjB)%73=sBHaPt(xeg=+a2>UrB=qPRo z`vqeeT>VSN8aVqEV-uYHny~}Ue#6)YXTN2f0%yNtoCRmUXIubhe_#X^B@)G{B@C>e zk=*|UiT#yv4X9JV%5fVsOUnUTk;=-k3(W2Vlb~KFE5}hV`vRDJ1}4{o$t7SC)OTd% z_ycCMGl61oCYTM{y~fHR1Qs#ngBAh;thX6&@k0v%*1O<53@HRyzcIS;fjT9i(M1N< z?~I%HL1uvzvvPpS4OR|Ne6n)<<7Z&t2PHUG4hYFFz`(#S&%wYT&cVHwDMA1mo80S| zK(Q%NRGi4by&fW-0%C7qiUX-h$zb5#$dm$NrY19RZ(_;TZV_{(B0JS7pIY6yZRt`{I!O8(T zmlm7}K-In|$e|3Z96JOU7(_s$mUjdg7(_t?11rZPkX;amoCV2)%m+0BAerU|KLdj( z$VgFUke)Rl0;=&XOf{&LfUX*$52{*Pkbwd0pfW)Q2C#!f!7Q+`AUBDEwSZY5Cor&b zfY_`Yo-mD|wgf~YSPxt|11m=pOwAFH;h?}01+zf@7CjFdZ)D{-CCI?Q4+$txe}a`` z8B7zi5CelKLK9dgm;mV%1<5k7a&QVUFz`b{_%=+V5lAE04v>o>Mu5Z^SUEsF4pt5k zA*iQ8%@~N=!79N7*hZ*wJD5UH69*hKqMVQrB2A}a@|v&YH->YlN3TtsMp2UfivOoG}H ztQ;EP>;)Prfa(_%hC4?_7~}@fV1*E<-~`nP;Nn!6ft3T)HiPPL1}g)N6tHrDMn<5* zQDEV0VFm_%P!ofd12ixIu0Yt%fJ~O+V7m_*F9Ag)1KR@x^C7r<%F0nD49zMMY4LiEg)jqTaT=o&*Z}AdA6OPN z8#4!VCXP%61EW&`XrzRJfdMqg3|4gqvY z9O9!?RO{iYA=anD+z#c!%z|*!KJN`7>jP0wW$rWy1^t>4q=5nKKFM zsBE~SQY#o3vte-piA}g((ButBKf`CRt=K$YfNT%K^XH)U6ug0kF1GAhie0a{1SH@} zVR|9i6RsK(G;l6FXmDrGD(n_5fLc@qw+Ng)t5CBiTr=Dv+}X1pyG5Lm5FgdUEP{9e zt{ROCw+MIkY=OlXD0&dV9s{+g1!fT>LR(xI8q}W2aC^W7z+{-KAi+Kv zwE%!~;bBFv0GI(Y5Y>8ZX^1yxpjr=C4Y7U(%U9EU=~4= z`WBe8;3i|qo;$G{=_d;bq@Acn?!+(>OZMCcQv`A)bniF=+XJrx)OSU)ocC=0++)L~d!2U&;+e>*vd9}dGU1n1MkFy}$S|1fGkg>&J7Mlhd( z=Se|UgD}E+P=gWFra6IXJzO=!`V%m>L%FDqJ4tdrMG71xkbBr~f#*0r$uTg9f(Qmy zjvsOi4E&((07SuUumVu(1}lK{_Q1}7$lnFa+sZ=?5CyZq@~j-r@(c|8p#DBY>3y(L zP%6W2)I(-aY=e>vLY@Jl^$}PK6xO1kF+s2^AX01{;Q1F&3k4x13W_x_0aerk9*KPm zawV7mIZzZ7wqTP)!Qsft0Ww+{94wESL2Oa5T9Bi_$`}akNETyY=Ck6q<_2v=WV83VR?D0R7{U{x*`G$b(U$2fX(9Gh^`Z${l3;5q+&O1E}Z- z8D4=yc3LG{<7n}Sp6B5FfhZoyE;{I+07in1Lnu1Pb}HEgGW`<({ryP)N@oa#>ZnuU zbp<+uk%8>AO8-zD1U51=6ck`I~P_K9&VsS*a$B8WS&oDAD zK=yXQ21y~I4x3ql@Sy7sU>u~WSC|mB)x&0xXk|XSdr7qqHMBr$n_w=5(3HxI{At1m4%8#Ja>WMlzQa>X=cXme?qF@g7QUN*0EWqE#(>XHU+0og<6(Uklnv|Vd8DCt&keHL1 zo|l`NSHj>J>}MDs>gO5e8Wim46C4uc>F3T+T9Rf_TvC*om(Gw}R9R4xAD>%Vl3D@M znO2&Ulb4vA$^bfuEgrO`0CX-|nQ=Vm+_cn+lK7;`_~fF@lFa199EQZ~%oK>#i76@Z zsTCy*u3-W3zAg~4AlEQ|Z&w$XPKKh?tkmQZh@5kf4@^8h#VC^jbX+JyYDIi@X>nqD zD%8~>ZWd4nL;YS1(T(aFen=b*@d5dV1BhwIq`X=xk;%-V58zeK?oAhORXpgEl5c$f%*yRpZNIF z%)And_!5SsoXotG%)IpC_{_Z0;#5!=fC?LkDbNsv*cD=C2-TgPnFl@X7Ib)PaYmwH zd`2SF6Y+^DDTbh^h|e@iVMxs@i_c8~Ii$EGF*!TFxC9a!{!U)5&LIq$#l@wmMa5vt z%8Wr;K{`QhC`c|yEXe?^$_Iy@r(cMxyK4|wVHjAUA=G?u`T>i_BPU3Zm6>@Zsp+Xj z3~;N<@-tH)1v&WOy~I**ipx(fNiB(oCCB{S-26OI9L{G8N8s6WuG0wpX+z%wK#=H=(bgZAO1 zR)DM4l;F~&lA_d9NR)sg15z%4f)f%Ej;7E=fO?)U$N`BZB}EMBsd=eIi8;{VOvx=U zWJt=3&&>yA&jN_IT>V0QU4tA$TwNf1f9DX_ka(!ENtGq3#SED#1@UP)iRr}*Wr;bZ zsSM!bf)fi0z!f1wN^YScB#OX?v^$1IFy!PXXG4X8d?3b#hB$|K`noa{Bo-y+rk11@ zF*y0fJBLI-ltGg=Jk4bm#}}6*mSiR~KxoL(kmsPzwn1^b2ux@^OWEGPeL4K%fRgJW}R$3=Q${5AqC&jQ4hp z^mIXFPlnvok_?8t{1T_swEUt}hSaix_yTBY3yv9R!t{)Cbpd-jKM7pg<>u#=#OE;- zlqP`-(+X1qOR#+)U^0i{|ezj$|7KW8V16Of_;TKxKkhPa|dFPaIdd8N6jMTsRKm!=kFCgy;1 zjUQ(2pR}5+_VkvS#&Vq(=JSeJz!5K5YD6t&kAoO5E&eq^ShKGl-QG5vl zsD&60N#5X42N?;fI1`JJP7()&NI_{*PG&MV`oJ-fS_H~c>8W|iNgyX7>IAT>AZ~H? z^mAj#EX*xn02S{=smUeIK|bKx5mY6ioT?2f9+1Kk>=xIE5LdroPk%p#qTj;DCWU1QrKK9s=bOaPG-Zi3jI~f_QLg0XG?J7AW-N zUHw9WB0*^(uOu-kCl#7U;iV*~97xFk+2!OH@9Xau0xnL9!3oI^Qu!9A7M7;wB|~dl za7Ii?MXIA<0fn44$})>Hk!(vXDv1Z5I$fHVS(aK<3@=P!eG{;8`TC$F1tvhH5$LS) z%=GxgoOFiV(wvga_=2L$+*DAS0Yw5de-x#rfg>m$(u@I@10b6~J}OGhNi4}MO9eF? zz?q`7IJF2=6Xz9!DoX}vM+lr2@>AlI!Sy6aV@d&7OId1BW?CgUGk}r|s0~=0XBZDD zg+S_xOCbePQEFOh5h#d?8K6R;o-UxG*~!P#&jr*v1T{gCvH(iL$VtshFUeql#3O_% z1g9jhXJEEMBM!M-gqFOhk&Z~_;MOM8a7ZNzG1VEVod^y)P}YOBnLyqG#ZYE`9yrZ| z+oa&yF0TaCP6o;6mt-I}LBMIv(Z}5%(w0GL@m*ic-t+lM_KH z!3ES=0auQoZWKr#m;=evAZ~VQWo8OP0Vw6*f*nDvNtDzK zQ5g~$;L1>9W(e^DG%2DKYkB!4j%lDKD##G1o4}zQ<{9jXXg8+jl@w*B7Q-6ZnN_JN z;6^Ig`5^DWl0T%1h);!#9D)3lS`m-ZqjK^MfEJ0MdL$kc{Mo7C_8^qW;OY!&gMxD@ zsF?yX1Y9G-+VZIt&?b6jqAAp8L*Z@=0qAW(pix}d7(GY~c19ku80cJ3WObnP?sk9# z7#JA9>T-0nH@fo}nTohyxO2Iw3vkQQXIKOh05IS!Eh0?OpqF?j}SQn*db@n^yp-1MSfU*@Y~&1B*J)91ps>2Uyg7 zK@$VH9d;Htcs|0BPrzv&lk+_%NO-D1CXV3eeS+KsyN?v+CI-FY%G{E~BnHs!9S}OB zxTFZo0^Lf&pa)L1dP&8_(2G4lqI&3ACLU7%qTd;Ul&L@?PoQ210VSZ$KLI76_A$7v zfJYrxw<5J_@n{7PXkn8_X(!-N0BTHP*bOaKaD)*|HmNcmTlgSJV+$K3X`JB#RfFL! zJmCRra-e$?Y82Km!W%x&h6sGr5PNz-SA`=?uqeY8HdvJ53?nqP7-0pI#}j5SCAh*4 zCXX)+VQR31B~cgZfOY^w;tZmEz%JMU6;-2m>%iva!6*EIig*+}5O?c9>MT%AfZ`M| zhnWF%Vh@-JCm`xE#X$;~K}W8F7)ThRUIa-5!Nhjw4n#fp+!2IAD2tf^RKr0zPzs_R zQye6X?T#LZdgAZyfvAU_@DDN-fteY=`^^vn@HPmhI7ksQ_{4Y+3xOf#gHBRLh{0IQ zkZoBoE|`X>2XFTR^N|T=25_y9ECe}22#YvK5iUZsrZ`9uGXwNeS`Y_{A?h*3LDI|&up2i(JP3xU#}o(2 zGBdz#zya|Pn3=%_!9ij%GuR^W5KLwUdjtoG#moS^Ne4*~bj~h=GpYcT$IJk_?G?&F zqL>-nk$4a$f)(AiYjN#^L#yfdO>a4>t9nyE%m5EoxZ$U|?tgAIl516o~@e#e?ncEzq4i*vtnVe1+{! zuE#jc{{(hF^q_qt_p>pAPDey?2$TuBD?kX`+kyzd!bcZ}dK*Rt1|g(+0j53(hx#P2 zdPMmTD=CU`sBZ$RN0k3C^QVHv5#>Bgd?i>MQJ%xZ_kzU{KF6j&Tl?!m;% zz~YGV4JJMvERHD0VB%}Q;)wDJCVm7gjwqL4HOEb`IHLT4ss98PN0c)#amWNPWF-&M z9dO7UJxJ3Y)I-D=p9Kkmr*&a%U}ys$B#xvQNfcc*sGX0g8YYUa8s6N;)Pf>~tPeb7 zgK!L(3zkP}`a_LF69KD&`3yFKi!?_A(gjw7(z*wUB2UVL_%K!A?j%S6X?h>TMe9bP z2q6a^%rVeWLUeVgVE|PO@i4mAV4WHiBVc|64csACEr6B4Ix)jpb`|8FQgb5P--<~aZiv!C`K0dhKhkG zWN}}R02CvO!|tU6Ng<0PuS`c4M_!wZEFKCn0E%ICkTfF$LpW3nL?Nq3uC0;9>FFry z@sL}4F!Mp;pw^oc=;%-e=%J#}yZS)l%fLs$F)+YR8iT1n13p+6dblQ3J#y<1`R+#K z`+s0H8O$6L=vbs7C~-l}0oe;Ro&nSj14+Tu7eGA(YeB-qTc8OLcDEKxd_MSiJO&0> z*uum?r~ZM=jRO%#_L@KgG8IkyF*LwH?L3ea%$z((1C;@Gw;W773w$Oj14A=NF_QUF zQ1|ztiLZvbb0(Vj3uqG#Hf9bp{~Odj8`0EHfZ7WiPlu_W3>|9NkER~fE(Qsm0TD>< zTnG(^%V^@0pzgefCT;)?hnHyLp-_9pK?6TX=C6W^E2D{PKr^&Hnm8}$40r|x22i^b zWChG$GSGDEj;4M-G~9yG#9{V=?q)(ZCjhE08%o2>hqJOs>~3sCn6L(PMU3qtkFp@~n0hNmW)co)?Du<`?D zP8YP`a70tT4w@eP(8NDN({nVMIP8w8Of>O@PpEcQ%^% zZ>aheXyON(bT&`!}A52xG7ZpE1EbH)O=>B zyI|(SdLDde;s>Gnh0(;7pyikxnm8jg-nG%h!RO#HFfdr4iQk2~#|=$6g zM-x8|_3tG#@%_+r^#)BG=Kh~(;8ct{yaFoTfhN8LYR*(N@rls(!(udX9;o;_ zG;vtC>_QX20yX~_nz%DGU0p&GpAF^Thtja{X@KVIS7_pAq2colO?(A3zd$a?g4}5h zYDYOj(;*+!T`=>zq57rJ#D753hZ>r=95nqKqlt?_^RFG6IOr&BP`dR(6OV?5XBe9J zJg9$@(8TXT)#sy$Z-R=$(gn<4GSGa~hNgZcls^ed!_+rI!)-pA_;YCZtU?oqwQJX- ziFZT8Z5Nt2>~8A&XyX5&;r0_v9G1V>q45TD=W-}t2uj1mH$uZr2TgniG@V$Xi5o)W z(G^YH2bw<1(8N`t{6;7Zv)2$B{u9u|wV~#3Kofri_2(WmaoAnmC(y*1pzgVXCjJO& z?*laP3}|>lE@wle|4eAS@Ib=}=6-3YdnC}rS3>zJP#UHl7B2>9;;?ek22GqBTK4KwEys4xND>5e8I3H6r&ns_KQ{ad4n zUx0?E1DZI@pWbNVo1y6>0!Oqu<&t56F&rXPY9a$ZD>A9L=)c#<>x_Z znEQ7?`PEPwCcYl({th(pSy1z*qKW^8rsu_I;#;8ZT!$w92AV#1p^5WD^W!lz@n@jK z&%nTN2~E5U8vggt#9{r=S7_qV(E9E>n)q3$Ik5T=77l-*{^f(}gNeiH5h*lrTWGpb zLl=jZhel}Puzrmln)q92_E(m;$F~r z;ev)MEFR0Cd{HP36HkJs2SqgT9;i9GXyUMbpCy_&tl#H~CawhypFlKmSUC`jCcX;F z&xF!2cf!h(QZ(_$Q1ctn#QUN7t`|+*6k2Z2L=$I+=Ifp;u%Q)uF_{_J%$aenA{;}bM-6{x>HqKU)ox3r01sZNKXyTx2Y(YVhfhK+$njT8f#9{sS1~l<& z&~WZS6MqQ}hZ$(%EKvV1K@X1G)bMntD5EzPN%W?hUQi z9-xUAK+DNDXyVhL_WnQ<7lx{5fu=i{dp1D%0#F(zUI#Tt22C7vbU4WUCTQZYa?b%x zycC+=HlvA8g1YYjnmDYzeHKj|Hm-6TO*{(9uYrai%>ByH^w5DO4lDPjpoud>!>0*4 zfdVt932IIsnz#SbO3AP3{%m>nW5pf98Ej~8tFi_dT24mU;q^dsR#9sZbI#~f{KIGL!AgRo*@z{4pI*?-x4g!z>t9^UIZ1- zMG^;@4=YE?k;FmftcI$ufr`WIg}HMkR2*b4$Q)~^I~PO6LF%DJ0NA8MP;roYkoix* zq6`cd(Zpq;<@Plsagg~icRoN82bmKFRsR$!4zm~LPA2F?HOO9&IeAcb@<7Ew>Y-5x zc9Awz9Hbs(K5X9307)EVjz2V=TOo;q)SrO5#~w)>q#ovePb6`WdPZn|^n;4S+yire zHdGws9*{Y(@~#vr4pI-zqG0z=fr^9FgUq*rn!gxLycjCJ0xAwO2WIaPs5rk ziS8U!9HbsvRDtb%3l#^c2iXf+Uj~x+gC_nIYA+*nDId%nn7!gqagaG6d*6Z#VPIfT zgo=aIgRirLiaS8XLFz&F!sdZv~y_U*3f$VGLksRd|1797fBps zP6<@~BP4N(15CRnksRx-a53Ns=(8MF4;)Q796QSZ|P;r>~&|-mMGE^L7 zKFB>b(EK|WDh^T)WrE$a2g(7d2f61I)ck``ahQ6jw;0Yt#X;&p=1+#U18+jbLF&Pm z%7RU2VE6$Q2dM{{&kR-14qeI$6Sski^B{?X%!idHVo2g3b3oTrf~=5+io@)MxzhqF z4l*BPjxN-E(ET4EeIWI)IaLrp5lKDB{B=%j12X3*R6+zQ4pI-l1&M)y!5AtIQV%kp z1)4sc(8O(_;_gs!m^o168DgR0Aag+W!scDlq2eI*@avx#7#P~1;vn@Pd&{8aPel`7 z4;7yU6^EGvvv&hj9Apm2-o2p2!@$6>3n~s$5561-Dt;3x4pI-Y_XX7a=V;=J(0Kob zCLRS9{|yy~nGehF640gJAoD@)5rme*N>Fi-df40@$VrY+agchDdnQB84?q(?0~HTN z5(k+NOIPto;vjQaq3z5(G;uqqcrjEQ<{nshPKSzv+ygS-9a?WLgo=aItAiX4#Rs6` zAoU=7VdH7%(Zn}E?Y)8|4l*BBkK98N2buE{s{S#OI7mIrzi*MmLF$#Djj2ya;vn^~ zdgKq1I7mHgoRbk+=)n913kMyjILKchbGV@8j2ToMq#m?q0~!nrp-^#Ce8-+z-lCMkomCk zWGj+5$Q*m9`dv_Qn7uG}UWbZ<>;;*V4($g$go=aI>ms?60lLKjq#k5`1=M_gG;!Ft zm?*$Z>015_MjFUTB6XgTQx6$h!;M{;K-R2-xpWWF-A zF`I`Z4l)Op-YSs9LF!|m>T8k2LF!@dZ$}abshP?|`f~X3pI7mIn z-c3;R+t9=rpq+!MXyTSo@mWxDnEBA*6ovy(agg~S_t-(x+bO6xNWD48AyE7hDh^T) za!(P|{2yrItD)k5k;Fmf!_pNybn6eyoF`EAVrb&BP=`uG#bNG&g{M7K9Apm2{7umE z!4oPDQV;8+gS?Od6$hyYxjzhQemR=>5~z3$k~qkGSh?MXBn~p?E>wLtk~l~`%)e8S z#6jxCpq;8&Na7&%uyT6|k~m1cKUDons5s1DuyD8w6$kkXWKJnG9R8t+gZ6cS!a)w& z7=o$ShW4X9(ZuJ16f-a|WTJ_SLgT9iOS5y0VjHd=n#>tsX#=DlT6BW6!*^7|#9`*Z*0-aJ z!;X!IiNnl?jRV2N!G<$1FjPSqFmY&fF|^_k??n@bnGYK`f|&zV#;_U6fQiG*--ko| z7@9cDeAu`V$Q)=>46O1Em}CHlCrBI?KHqVO|3?#tnGYL(LN{L(njT@|F!vka5Qm)~ z15*z(A2wbE6Nfs3Ar6N*nK;A?(Zpfq!^W#X=EK|wvST`udXP9Qd=}vlUxg+PGaoj- zg>L=@H1!}mK=$6oAr9JC36h7I12Z2s9tIN!sR3b5X#RtV!^{`KAufX^4l^G%9tJW8 zT2+ILXK+GN4-$ukk1r1KP&9Fv`LJ;{bn~mx)Wh80hC{p$O&n%EY+MawKD5XKyMGIk zdXPBG{rhoS6BB!XaLSCJr+nHZF*6{tPtrF!LAV z5QpvWftdp{A2z-S6NkAUHg5?Nhnar|hxt#?#9`*c#uq{6fX3@!=5s*<93~FsGKfMM z=;E?y;xO}JN`+8!pw(_n}WPx0Zl!~O`y2X#vxveCJr+nHjayK{!BFWF!N#S<6!Dx z;%m^>4hx@yIK)q)iNnl?jYFfG{~k>}%>BP`h{M*6!pwo04;#0J ziG$n@!Wz)VI!qj9zA+AQYcz3~`LJ7YCUS?V^Fb z0Na-X6NiO^IJ9GiE-sHI4l^G%z7A6lHk^Th!4*wC%>4m4#9`~hVdlWhhmEg;#F5A0 z>yXR=iNoCAi9;N=KM7_I%zW55JxmRYvKM3yEIeWJ4>0vG_g_I%4~yUX zIK-c$iNnl?%~znC&kLOgfQiG*m%t$oTTc#C4>KP&?*S8sx!(Bs6iD`LOvDbn{{B(_!MU@HvcT4on=j-Vml9WA-*0>99m2Fd7fn6PoE134H=v2b%!kd7 zfy_sqN4tik9wZJ6hle=CU!sY_%!kdhp_|VSou`6{!`v^0LtF_>9A-Xjo(*IU@_d{J zl6sIh%>BVQ#G}!~Vdlf;>(I?_L{krQKWzOuOg&6|3YvPD`LOvqkb2~Ky1 zJWL!G@B7fqfr%eO6Ni}(o9Bd?0}2}ueuJhSX3lpU;{VaaVdlf;OVQ0&h0agH#9`(e z;1IV!6Ni}(n=b{K1DiVoxjzm`JxClD{+T$$3(>@3?y18e-i9U)a}R8u7TrB-(A2}s z-;P6kKbknqeAv7$y7^Dh)WgjGfJ6KTnmEjS*gP=0`Et;~dYCxOd`%qUhG^n2^I`MG zFmph01;XKI>S5+5;SkS46Ni}(9nN6@%_Ccb42EK;cfs?6(4jl94D4i2kb7Wuf+S$) z)_}yJT_un(1MKWFkT|r72Ns9jS`QM3R!v~>1TYC1r-fz_un24)3`jlHD`4>kFbPo) z>w|)XVE1N#)Pu%vL1G}h07O9BA)s+fD3@UalmSwYJPvsPNgOoJ2IVqbfHFYpLE}hJ zF2e&T10;?--tqxS95h}5b;mxB`-Td{d;yYr zP&p41hn>>}QV%MBVB#ww$?5{IcrE(ehF`wt}ZLE^CRL@pnY%K;9gd;}7QnU7pXFMUOtbL_APR`hg`nF&JzN; z2P6(NAGth4F85X-nGX_&sYhNPf?OVcKvEAX-#~ENDPFfki5f}|c){(!_l7)px;btUpP`LpT1L2uS z;-K;YBnHCkki<41|%_V}SB6NDPFTkmmhC`4l7u z!s1Bcp!^6D17TexaZtVkiGi>ak~k=Tfy6)+>I4IqM#6b8hk~k=Rg2X@=dHn+@ z9fHI_7`ptHffa54Caiu0i6f^&7my|f2C#bMbO@{0KUprE7#NUl@PLSb z&XWf9_0ipX0NSvGwVOd_bc57^+zQeO69=84jm>`8I$J{a`$64=ZvPD|_JjP0Zhsl5 zFUP>Z0Fnc_3x;9k3L*OoaoGO>i~S(GK^SBQ%>SVCrm^`y1*8b+-Vi7kBm6<-7ARcN z{m+pI(E+mu6#k&8D|Gu0;_yGLolnUBpmGqK{R&v@2bqO#|6LsR*Fc;Py*CNUfrd4L z$G`w8Z?V~LfyI8%kSMzSpgSwEg+Hu+0&+95eIUD#`JnaAATjjt55QtSXiNm%ei=qc z7al$Rf#MZp4vQiA0z)2;jn)L7W+YY5#9c2 zIQ$Rm7ZURSL>%^?z+yjWDfuX!C}8Z5+ucd;vB>RmA{~|B6Ryf?HG_%==mSk z4=0rW*qN}We+?}5gKkekw;yyDEjIf>`5NSILg6ou!+r-W_JjJk==M7>VK4t&K#n3J z{H<}=AA!Yw&}~rY_Q&F|AJ%S$sRxAx2!ql(h=$<^9QGGru^$wdF!NyP0@R-cc@;hW zVdE7r^)UO;?XSaOe+L%(LAP7M%!Ap#3Wxt;<03Hixa?nw!~O+W><6_KVdlZ?zlg(r z*!T-fJudst;IMxO7W+ZBb-~Po*$+Ao3|sia#(7}saoG>rj{%Ak^!n!l7W+YcTbOw; z`(>H2r+?UZ5==cV`z4sM=l>U2><8UG1~U(4zXJ~YVf{c*o`u;BqCtKI(J%};hX^Ew z?tg}4hzgiJpz;rN%Ne@;2{`OWzoQ#s8pN+KHi(YK;eQD%_JeLyL$|*Lhy80niGqOv zem@+@E)WL!6-2{uJr4T~u-Fe8<43oDCDeYHc`zDwo}K`x(trs<+sa5>h9x-c_kh~( z0PSRh!XI=CCA$4vaoB$Z)G=jXU;x#x$o4^l1uk>~hyEGR!G;dx!4xd+Ka9iu9g`qd zEPxJvfZPw-2aE3h8#wG&fDQ`4#v34}LGl`m4WcjOuwMf@QLq3yZUC|$biWe1{h)gu z(8B~|?gvm}V_;x7fF_B?Wq6Lm{u7%(rZ6xFKnH0-_Jj8IqTBx;hyOQ#5*q^pg9uuJ zMYsPK4*PF_F2ZDBVCX>dKj=15bo;qkAYlqB+aNB6kVl}GU3q{yJrE%<39}zYi{a4E z1HHTpRA+-VLJ62Y7%dOg50!>fMo|550Vo5e56Wc#-8TgigL)Gt%wPf4?|~)(^FK_X zJ`1EwLNEUkc0p7ihaYIp4yGSgE`qWL`q&LfX9M(-GCKnCht2IE{Rcn;D+~+_AE1M! zpz##Yt*q$wgQT(9zabW63IhWVnk2|Rhzx|RFg37@&neZ**H-`o12738AZ!R}W?}*s zG&C@_GypRbxawVf+?YTE{}7`X7#X(1hC`tu5GtV&VJjq@9TIQ&dx zaM zdF4YUhMf!y4nH5rGyY8AUlO%nm=}85m!K z?D!n)u<~oPp)%XV2gezH zg2LcYHp9;Y|Nn!A)~Eb$X1E9nzb~M8V`;ebkDCD$$5TM@n83uarIF3yr#u4#C_Z?kT>Fggf!%s#Q zho6az3|ka=9DXi@y5%3U!%tB90;vPVA2J`5W|8?A<_J(`4l9ep&s0W+ElWilelBHT z*s_4Z{u;7vM@1hX_IjHd5n=^3oDDmP8NoSprzpOWzj-5>i~oO zwI|FBS`U~}#X;&p>OkVKaDbT)a^F)1hAm5Fu)7ae_`vlkkf~3FNPW!=7a7DGE`ieG z*J{R!_WFU#+CJTOe^c_m{-=rfLUx6$WEC3AiF{3_W#2S7eVd?#S_TQAoqS{W?Thw zkBEu`=qe!45akq5{`suJ2t&iAPoT1oS!5N64GM>M|No1F%4$%Za)1F+J|{xU zXOQ1O`aoqhh)t|IW=I()0?KEI`j24>V~xXPdlm*mY;_+f{!z;`ri(wbnO90OFiiNT z&G7SgG0RF&_=3V2RPTLbX4Fz-cK9jE;PCS|GsCJs%*?C4Gc&DHWN`So*@Onrk&IASq)B9Wug^bJ$A;sJdJAXW8 zoCvDhco`T(7C_?wq~{?s#H`2665zBi&mf=unwcR4RChfD>1AUO1gQt91=n4mIL&w1 zSguvnv zT(4z2ul!x?vhtrcs9a|P*DDF!3_C&b3Nrr}v&5V3_cO znPC+y93L=&>KevX|D-|oJN$g0526{SfYR>+E`}|jcElH9#)%9Lkh}omD>5_$Jz^GK z^_W>?6*OH;QDFOFE?na<`GLE`P7#KNAW(R`VPFVRV_*>Z>h7>}3LAqUD39%D63NzO zVF(dr2E~W)Dp0(D!bp_G;U_H3KLp2(7&u%N{{7zyvJ+-MObsZ1g7P9Lu0i@iY3DnW z!_PJ^#QZQDuiD}!R}#T z0@dqKHnYP|n7cscA=DzmCE@#jGmsoi9mvfv_g(?n$$*F(a61kuZb14zGh>gN1Wtx6 zUz9;@HStxB$nn9zFol5wL2a{3PNw%kIr zG>;s2sAfXq4qXgnKPXMS0*7(KB}jf?m;!1uKVoKF^}U*DB`7a|$`Vjsc+BMR6I5P5 zJj^f=l=hPu9DY8QhvWqYRtA#=Ob$C4SQr99?RO1!hLA7Pp!5n!qw|>ss_?GdB7~91uq*x{)Dy#Kh;C|NkGflnP-72gD8)9f%zuGeCYv_BW_* z2l*S^reJEg^o5xbTrPn8-N4GQWt$VjL{J_BrSC*0hMgs7{sxtIsLn?TU#Q<*3?T9#b3l3K|6xXOKS-E?VFJjn z;J8m_TA9e?@Do(mg6ijg%AkHDs6J&{^(~okA}C)!G>61DsICE(i=ej1BW8(JkC`F) z1C)=xGBao?FfoM4voIJka502{?A*%1U|I|+$ITsng6shG>l(RG%kiJt&MW^ZgW7$N zvb#?H^1W;6-~(ED(wjJgo(mXI24SNzKFv z9)MzkT$9QKIrW2ug*7v;gaM*V!-;_b%G3s#2obdct!sxc9m?SfoSQ&5nnN4`vl-$5 zuu>KY&`LE3Gx{)S@gT>2kOqhw*f_v4tWoD+=CMYDR$a4lfE>!o!NthHzz$LmR>n2~ zv?2z=oD4dg4(tyN_9LK)8qVT82KHktpm5^MfiXEa^Dd_!y%8AxI4ag#8G_W`VFD{{ziZK-e!p z{uO|lGYw=8#KF@M%ozygOayZlf;k((oP%J_MKI?fnDY_L1qkLs1alFBxfsD*f?zHy zU}9hZuiKR1U}OYMCW0rNIhYu~f>x_QILwT>(hLk75Dp9DV<83xm?u|kfazD@NMr;J zRzg%IGp+}%%!6=J7(w9$)t?IH@IYkJ7(w^72tYXLU>OMrCj-opfrjNuP#pwzrT~XK zqdhYNWL*-62P63WV2Bn^Foy%GWrG(p0|R*FDI^XyN1^h!fKEb#7|G7S1iGdgYzjLQ z(_OgF*_oLNg+Yk{V#LyPMNFYw)oWW=-0t+n8nT&~I3=9ze zan5427h_<6_>Xfon4?0zaQ5Py3Qk54 z_Vh4Nz(Uw_Kv@uyl{x2v)WEXx9zRy7nG&3p^>8z*K`{h1zXp^5IUwfLx`NDvy5~R_ zOs@cEG3d5qh?-JR976S$f!MJ0b`W&)F;aRv1Uh*OoW3Nu?3l&b7#R3c7`W`2lR+~M zd?on>3|x-PAjd-T1(y?;!^4-Cn$E!G4CX-64VMd;BLa2TQ6)BL8W7;hX98WX$(LA^ z&cIc`1PV<^BIGJ$iWLO;9FlI2g~GHraJe(Lft(T)#K7gjydPA3@cA)td4ib|e0c^8 zTwctXf(#4>Q0tCQWP@fSeisi0wzCV^K;|+qFf8Cc4LZAtvw(s7%udkCY|eBB?z12k zBs96tf!L6Om-{@34T&M{%b*HI0UVm#S4#yL7&IX4YoM!)5;zMPxNm|~XK-dQaNh#4 z3Lx^gL9tu`Vc!7-TmyuC7o-Mq9VYjEkoW|M_ybU4p8{b&6cA)!n8CpB670ypb}oe- z8iEUWEEqu-?Sd00k0m3h_=bcaj}u$lJ6Io0|`q$PA1U(MiCH8d6*JJVI>hCAJa@xSV_bu1om|SM41TF zVNnJK$hjYUVoYyD85kgkeeg*$v57G-bTIG-fs)a))tt~EIKijPw3!PQ1S(9jpdyPe zkAY8(36yd;_);18)WJ*vz7z&N4KP!JuYiG16USIuvjD=e z0drPBIF3x9Ji7tHab?mIV_?_;;kYq@a^(SNVew@j7qoQH;C#-`4J*T6)`0>9oD(@; zf!L4|g7dYZFaramgy4JwYHvVF2+p@Hpvnkp<~Jd3sF@j@mq53iLd>}WYK1_{;j17v z)XZz3vK?yXbx`FCHS-4OVk1bY!+8@VuECj|TFJn9D;-qXLd?7kstYV2>^mT~1B87S zR3UqCf-B^Ep!zrf>bCEo+f|XW*w1}1w{GD4aE=G&|4&^A|9=L#59-!0AUmLL{R+x= zP`7>qWk?x_-QRCAFfc&f{R0%ikkXR#7pSZXVDkhH5CBsloL)=DujK!St+8%TWw#0}pUNii@aK-fR_NHH*EK-fQTOEEA& zDkA=0AoY-ni2wIjDFy~eMa2I{N}7QIQW5e01*w4)+x!gRq8^gT_!+^RIpFZ(XJQ0- z4U*&dnHfQMe?W2^KPy-nB**b{fH_+rdN{!xNcQ9BVg!ZL0f-DYm~#Tc;b8>bV08h) z;REY|Tph~K&j`xQcOWu?jFM6e3=be2VQ~HO0vcn#yZN9owu65w=o(H)NbCT`5+vjC z@BA#uzyOW0U7%tG8e@C^Ny0;VKPZ-k3^b&Vf?@_5(#JsR zp&@-76f@9}J^_juXh@#~#SEm%=RXCCjTsPko(9Fn0tovI$ea}r_Bl}I+Q1;dBG$xc zBEY}^YK}25f=MPY$qXi0z$7b}WCN4zV3Gq&a)L=NFv$%jdB7wunB)VK{9qE4Wf>R* z!E7NgDGVk>z@#Xcgq%Sk4rWV$Nl7p%1tz7zqzssp1(T4oDdfRy1u&_|z{+7Iz`y{x z<!7i8r z5{4ud!E}%~B&i5yf!L68PcWxjfPq1Qft3T4nISgkZiBf;r~woZU`sfJ&KL_aFmM)U zGYFlv00#iL5N72734>h-I$lEptr5cU(smqIZ0Pr;o#i1;&bISyezXZ#IU^Ma947^eOuBRib^ijf!2e$6Nh zXTM>TgtOl=%EQ_37**ly_l(+b_6J5#B`#f@TEf8o8Oi-$kl0@t%|VSqRt^a!P{>Px zww!W&2a~74BxnqWm4gW^%L^uz!Q>mT>_adK8i`@$ump>PHZ!wwTmy?ofkphm7TDa`r7%zgmMvzGQ&S)zPauY}~E5~MT5E~SqtQ?)f3=Hg` zJi^KWBEji_LpTi7paZ99;c$>TNI@tZ0UD=bVPNF|^{7}mK)o_n4p7g6l>=1RvT|Gp znP$Mjz#zrJyOv2o1ez3h*D-;Tf^<=FA_MPwh=yz}?05!NJKz1>(ayW}HFo=WlTDk}W zg9M0RVC4W^j>--(D*_}B@)4-{4aqdk!VC-&Am>Z;fmom$WnmgCV5&jwb9B`ReNbzb z!BjJfGBAK0BmriDjRm<$0;~nh0y%+!l>@|P<+uXV2x`ScG=lZOl{2t%@QOkUC4Z3N zpy-hRvq1iqhyra5X5|PKWnf^3M9q3uP!JiyH1(ls0_y}5Ae|B*Sq4@P&>f@fkT^|) zY1|9a2(|;{VhOOlATb734p3j8m190kC8z@daXVNgm_Sy35~dK;xc~>S#6?Ife-ee3 zC47oZ5@OJ@gp~u-b%U07%3>hjn1D$hgbF=yZU7zC3svV0RsrhyLj^!%N30y6VHQ>n z(7*^QM+`!HC0Ml;m;|-rSvgX{27<=jp!(+^R4)gs0}cI&f(lMhqYqr13Nx^BfO!7vL|;5r;O!`71$z56QCp^+MvH<_)-- z;coyL4q-MmfyF_sZvN}1;aYDZX}twvLxz9(Z!3U?M!_Wl{~eIKAoUvmJy63|0^)`M z{*C|%m>asl!_*KB-Ki4r_ES%p1gtZ}-wP6lREqq4AU31}z~4V#0^Z`Ccv6Ca0ovl7 z{7C}d;+-lj32*VvZ~?W$Aa!=U1OtNvh+tslC>3R4MkA(D|`m7s1LOgZS@N^qeC zaz2tmP^Ako9BS?ln28|2At?lfJ&Hm_NoY%ke-hmuLb(f&gx&p+8#>`4kGJwX+DiB)*60560Y)Chae+{U+YrvVA!oa^4 zWRnF0D@Q2YVe3+1u3_bPhhYAc1f~1OlF--ywa_I%1OqDvs8h+x!6gNi0=1zbo`%Y+ z!ek<(7#JkL1V}~#lubYp53cO&VTwRaZLrB;c`(7i%8>$-o&z!itR2jPngPmYtQ^fS zMWCiQ#0-!G11rZ0m<*_4j*x+weh4HD>h^%z>JVvAVqjq9cqj#p8gWo34}?*qe@lTv zg+UrbdVxa-)Qx22@Mi{zSV%K4$U93jFi3zJkC4_Z#~D!BB+J2ZA2fdfE*dxC4p}*l zNi#68gIW_z0^o@_@Fo(*MIa*?L5)4dL zEnr~04KfCVK`Z(|G~=9`G7JnFi42Ul!MTlrfdSOe1xYc~nK3Xdm0@7eVhmvZ%oxA` zKWw7k3{BN(Y^oN5tOadAV_@6@X^w$SWnf4F&Dw!Brp#F^$H1VQ0g?xGD?!qFAOcA} zgufL$sRELM@oPc#B?AKkc&`oPc1BQ`F;DEMf$(=Qf?|Ss;)yy4e z7{J7#zyR7I1yatyClB#YGXo-_fl?p?sQhJMi~=iSU_cyCIHyRSfk6W_roJ+jN7r)w}U&UpuSSv|~U5WC^( zpKAi*$+5|_<{nFTT)Y#TVt_P|{> z6V+vK^%}(`MGTBH!R;N;ge%x(2w8AinMH}qwu4%~AXkC#7Z3q<*$!m}21rS;6Q;mE zwWx@J@eEW6q9g(p48qEgLV#ljLR`n3fk7K8-hx!vxtKFBctOND!A(7|iSR-z5~K|* z#K6FiVveM-z?^}h2BMLv1*x=YLe?<_odYjML4^{i7;R=?fR;^fVb*~51%TL$bKa^j zFldyeRWdNXh56eui-GYys9pi7uq@7IVEh0YGzIf=N*NeG!lDjdR4z4VU{F&5hX`}q z21Z1XfP7#Fkzi^QK$MrD@*l1nREQ-*6(Ls=pt8Cei#VuKnG6+24rfqEti~dK(42wc z6j(eETlj-Q6MNAMF5?)v8Dahfg#i4}$2q%H85nfS7#O)3VF9O`3*y1*6~{~lMqY6J z4ASQa3P(OhSU@_00+JtYGCVP$1PsWdHLBoX1;sx+z(B2$DNu3b0K0C^z_11^4ysiV zp$!U12GD2;1LG`clZJr-bm9QWVT^Ma)fgCb6G3vYd7O zqYExBb>NcHaQ6b&~G)aFC=}s71|{WFnxKdXW@-foQ8TF3%xDOz5;~B= z9+dqbffa&V+;G!CF$p&fl&yrcAf|yD>_JRW(-5T$$aZ+$11gI_7PT=T1vW}ehhcmn zR^#C=040S^u#!NOgas;<7J|jW&WEc96^1*Z;>gJYjstCCx1yvc}pyKG7 z;Q@q{cGQ_bV*=oaVqjo^9iYfKhea2bcGQ_bqZJ?(;IyO81k0nKYC;pd3IZevDNYc4 zNZNt$VQEJTZW$=;XfuHaHy9WgAZbU330C|?(J zR0M!rg&rYrrJ!nN4Ol6v5un&S0u@Ks4EG00x&S5LZ&-97MR^cBoI&vhJ7be^PN^QG z3JGF@)m^$342%fXkdAu@6R3g3G_e2_{SXew7)TU`!i~o4oX0aA)}>PC9Mq$Jt_zCM zAaDs0$TYD48oux#1r?(I!D<4SkPB>3EXwME^kRz@I}4>3<4^S0~oCl&IP69&0uY)&IRS9(_nG1v*2Yl$Qmui5N57K zELJ#bF$RJfQy?24LmG^g@PGqF1n87R5Y0HJ-4GTLl_(KW31063QUgie)o2k>12+#P zB1#RwA&wpqy%1rP)Ch`*rBHG7h}a7j2m2UqJSZZrg2gc-;w=_&Pzb3Qf}9h=%ryZ^ zDB+F>8?ZKT%7&(3$HdnfqMhqV!3O~zyN6q)-r*{*+H_9 z7ECRo7OG%itYrd^n}e#3iaZ9!dU%~=0B(gez-kW2kYNM7RC3JEW?*cDTMntSkoe&2 zg~ZQfU~B@HcOZwrLt&N$14EP%C{R(8DX2zj28#zXwSgNhpcY;rq~X%SfEb9I3sw{e z9t}h-@Impr6)X!5czBTm%E)m0K@Ic=U`0XTHe?`Zyb-Pxl!@R{U|`S!D+*xhKys!FSPaRTa63RHBV0Sk&6!}OU^m0XL20`YD&B=u$bi((go-1V z%%HS-9xNWh%+FC(+DB=zyDRiD~XR9Oh1in|lt;+;dEzg=(PKfSVhFY%Ziv zei?oo5h4sOm@+W9fcq|&!DccBxPpvfyut*Uo?{GzjtbnwqLs@Gru8ONt4nec1LG|w z(Bd`5KxkcXA1ntl6NC{KgC+$aMb3SAk;4EwWQc)tF?i2Fgc)cO5JoVta>SW2FtCGW z*deNBfK`ENMu`KUsWTA4;104xL=n`^gUqFYN5VOEm_hA$32-|YBEroK%3F|mJx`D( z!Hb~w)(Mb(AObX939=8ghz=ru6ErsmY7t3*?;R3uHW4rHC9z7&Hn9(GGTs=mbVPkTwv(z{&wy)dp59cnV}Bs3|T1T3W^cI>d`X z@El0c2V^3@1US+mX3S><4N^&f%>aw=OEQ6)s1o3G0S*8J2r4*{Tq-(;5!4!lh(L5M0Y@#U`6mHS1rRrL&I3zxXCIf>23nSPzumOS^ z49t8oybKINpg}=laTKSBKurfbT9lE|Qy65Ym?DFxus$~fgSaT8x+FwQf)(r)NvO|R zLH?2wN3us6;UESE8K}8nWwKCZ+#s{%pvu5D%7e@Yi7MzZLIM<$vsog_ipRahAeg_*<|7*tK547JWCMg~E~sZNrhWr^wt<5Bc!AnX9? z*6eIzWQ1x08LQRR#K^!TG0{nafk7K$AjmWwsA;Sq$D)|03pJ0`6YLs2R!Gc3x%wsu zE@;gT)K4H;2?hp3ZpKh?kgY~Y%ETEMjAa=Og@YJF#Ur>Q!4YZ#Qpmty3URCu^fx!t`DT*VUxfwxxkV{>Vf?R@u!4>L5kP#9L z3~tCqcnaHqQ;R!XkXv06BIE%VVucBL!iBg&@eEPtrN;mYTy;qkNl+&AhHyc78KQ=P z!3Qn`_8&+UsD?qoj0~V%)F?tM44)YT=A#H<;V?1;qKkqw1`^cB#!$#mz#xO64vR}T z7z!DR7^bjbD&}G+W|+c)U5+G!NK%Z?R`kHYVlX4@09=GxEUG}Eh#CA;){AffgoVW& zj0~v|IRuHzX&4F-S|BVeiG_)w9U_NBg3QNEKon_4G9AohWC#M&NCe2%AS}s|NQFoy zftid9!C)GRU}Q)`;(?hUOM|gkilLA= zB?D}k9YY~p2b6);c#H_fnhY=^6pL9fLjG+V6l;CvnW&ubpf0j zbqYKvkQi8sWl*>iRemEG17=cEDuWF`BCr&gAa`LaY%vOIBxAr#M$q9#U>2MJnH7Si z;D)VNg)2m7460N_WZMl(9AkQm$a)e>9Alb=5hI}BCNt_ViWrbt*a}-B6=J$}B!nVH zx(0>fAjtruF#-;O(HH>-1Dv3HNkh{-g0-E6rKN{aieb?R4}6+#V$Q$%YdS|QwMD1!ox7=;ta^O$KL zY7v~mQmuhBVh&xwbwC+doQfs&Vo?P$9$Tbf6u8(GLam2WSV|0#MwB4X{D8{j+R}6)i#$(Au7`_7;k1f3tsSw>#?6o>Zm4vPhOK4#U zcC4x}LY^qIv9y6PgfI=lX#LPIjbjYXgJKF>Lcman>Fz<35HJD|)2$fsNnAo8${>s= z#!@b0O=K7vF|ET$H=&`XrhG13aw6ouh!EUM70V`4DGGTwoa?y)IDHwtT!cE5Y6<$0(+;DZ?&?S-PQHiKWGWMF>+DMhJkC4`$-W)QC|! zfiz+!YfO!!Hll|KoR6ja81kWN!^FS<**yW<`~dMTc!fBG2`16!hG1t)fh8FbM-;*M z;63Ru4${$DFd=mF(bdCF!GWmTF$Ba0Vc0nsAT|iYj*|ef zK^UEn8ahZjg+PiK7#LvZ96-4Yu>JQiK5S1lj1Svz3**D~gTnZ*ZHX{GYYda$Y10$BZ#2EB5@^e%5 z3sQ3`6T$b4rRJsNq!t&)7Z)TZr|Ku>r4;37rs(FSWa}0g8Yb(P~*S?U)Qr6!eT=9K6|q$(`T;>}F-b25|k)0302>(dA6%gjs8 zDNRWw)lCICi6v?IMY+Xr=NcL6gB+)uSd?pKqF-8Eq)&UJ^%IM8b<uzMSVTg7rJrArnpa$$0~bfWEKX04fdO=D9OS|{Mh1rBl9ZIxG`$Q4CNMiQuS72c zbOvTYesN|+d`V?NYO!7h0}BHKjLFKtkd#=Qs+YmQ#=wwRoM#AOfebA(MzA5Qq&x_n zk^!ZQ6CsS$vH}RB2qpqDAigZE5+YoZQIwjP0$~@IBqnD=n5h-Gp{7IC@(QbFN1-dfg!c12%?vPffLda09_ilh>=m$TR*@-nYm1XiJ5_s z5n1v!Bcq<812dx|gFRQGtF0BXxVC@QQCLxOQiXb+~7ffh6ZZR^Wex4+73J3|dMoMcE9omMGV>`gmwD;yD}tbb zB6G4AhRfeFGWr`b3)?UkMkvcFDJtoMLWoHV>KRZpGV6dj3T$eMKKhD^o*2>9&BW+s zBCn_f)@cb=tj7k@$pq8M%&B0js;g+mTynxpQC<65t}oPODC*q8bNu%&@GdTa*Xpm1Phv(aNy zveoxiTWQOjtfwfipRI43u4K!ct;ei^Y2IX1yWVSId24`625-*Tj*=*Rf zn8g*C_teZ|-ofm}T#?2s;)UVc8%&IT`raC{%Cd?|N(Mg4vWohZ24F8Tr$sPJDFid; zdzE5D#7}~{GW9@q=j&nW{ma5QPgRk*O2Jq^QeIJsnMaSgN`YBRfjNFxhN8Tpl96qs zvaBq#xPmQnfu4_?639=G@CJFDxdI#!;6jNB8VJnUHU`YHdLYfr5eoXH%sQCix04l1 zdfLazsBeIglaF9idJ>!9Ic$PgSQ&*e^S~{vqW4)DMZkfZT2YdkSDcxjR}87sic9i~ zQsa|LD&mVv7+iyb;(a`w;$1x5U4ugyiZiQH<4eF4s3v1b%t_BL$}GvqWr#2}u#ES2 z@^W^0AP@El~mYJ6VQ5@j!Jqm8b!0G3qxW~ zW_n(3YF-J0W3ZoLe5jvim}^k5qfc;1kf)zJLupBxMR7?{W?ni(dwOa~d}eWRX=+h? zUSe)41Eji-&n+!U1qVc0X-*DUqBx_pBqhH*kD;I_vn(EThgD*BW(qu@LOmho`S|;L zhX%xF=4F;JxP}G9`?@fcWafeb5A1rVw6AN3hrbI$QEFCdatTBuia$Vskdj(ZlEF}% znV!dxS`nXJTAY}k3b)SH*~Nn)IX|}m>dO!}3#bQ+v*Ytp%VD8kT*3hIVNzv$Voqja zFl*Lu?-v{r*4?aB)VWVSGknaRx(XUPgRcPGWj7#3pD;gU5VoURiuDIC|k>0*)z& zXCZnZc?*>I%2JCm(<>Y3ld8*KquIOjq&sgadmeMVo1#c z=OBoA2sfl<=B1|=6%>J-3=VAMQUDZZpk`-!Y7rvB%JMT)An7wXwWuUMu@syg^OH+b zOX8s!I5|HzH$M-a3PI)~^t-$Ixdu7<#0Q5ug#@{}G8Ct#q8314Q72D#zffNk*TOS8 z*k4Zm{ywgbe&BqVnxc@Lkyyk4i)oOB@lZd4W2ZPfzAQ1P6k2eB0?X6S&7UDZFQ>9N zKR2}~HL(~}+$QDc=cFd)L422=1S$jKGgB(!K}RWq&4k2*b4Ua<^cj*9^YZiJK^Nhn zq&;vclUf1p>7@jhCY2PWrb1&1Vgx8EONvU73iRN}UVLVMxl0 z&&^MXPpyC!SFV1czOF%zA+9cvJmBvf;u;bUbpou+0A2Q&T2z!@#88}HR04}Uu$2r+ zl_jag44Ekf&=d~|b#UY)78HPcISeVeg@%xbb#@I3iFXW*U`Q@4DoV{Oi3g=9aOg9D z^Da2dk#lCerwb@eg2h3l0yvODL!3iAeW6trG}b{SZ9!sDVs2_lY7v8zUpyqv;)_cX zOEQxgAlb3BBpFl%fKwnSzZ9ev4BqOy5+@L5ZO#)ZJ6`nW1=WVdrI0)asxQDH0V(6KcKN|J^3#QXHR>nVwo)0ZtivRi+6YRb9Q1VCNaFE;*&w;XK4YrIC6G`$AyQlqcgaDmROP+ zUs9BqR}31#g~AGaG+&=JSf*EXU8XJWXGo^X68UV3NjefCQU4607o8}07XtgX;MyRGB_2( z;?UI@6x!hSMrskL&`eLwOHKkg6VU_$yA)!yv!|aMLuO%a0RyPPQIwio0xGLOkpgRC zL1HR7w;(>PG%p$6L}N(FFHOpU)>7aC6;y7;r>B+}#DjYQ3`NC>;PxQMZg3?74GT~Y zp|}K;qCgGoVo(DZ)W!!7A2B4Arp4!`=7RKq3s~2np!kB)l6XiVUI03FFFUm|Jv9%O z9*R=az@CjyNllJV%u9(cNi8mkuSzY-hjcLDr3P{nFg`vzwJ0w&CmvL$#zPy=(1ZqV z!pDQM7%YLH-zIr=c9f@2BfEoe&_oE1TZ7_>}? z2bWI;@!-k?66VDv@nHR+=#O{x3kiw@rOUjM#H5^5X!QuM(?NAYN(RV$a7e{N3VA2L zcwc|N5Kzp((>JKV1a+oBw>(0!g&(B(Tbx>0nwpoK3aL)P`N^%WJoCh+Y4<&gUS<7ekz8R7LW=Kq#c@S8H!TVQj0** z2Pz}LeKC;ppxttWa7sB0Hp2!$F5(fFKCb;m?0-MFTErK zQcV{?s6qy?gEC?5QBdq4HA9^|{lN_|SfIlK2bwoP2_01DfLid-rVnbqa*YUa^$Yg& z_XB0CvUsQiU026Wz3t)(cl^KvW0;nGa_L6guPdudSm6R6`>%M^^2$Z@r z^YcJit{}evGUxzq%YxdFkbx3#n}h-EJ9tKcwe!J-BO(muBvhX``ndZCfvTuvNQ^+# zL)z4-MJ2@ykimI~B&3Z2?kpr##zP~M0pcA{c?eMjF(NS~1sb{x@xdXE&fW}YO+=6n zQ!C;tphF9g>?PAoj8Eh;l z9>ED7<_#AQ2J|t3VnlTSj=mt*Fn@1X7Y0aXW&mewn08k`cTYc822c$MOErjwle52{ z8$)7F30MbsnvVh0O~`IVj#ho&Y;J9=&uyba*mTGD|AK zeNk{zF(o�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

    ejjR% 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 {f@ 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 `rc1&8<@ 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