<pre style='margin:0'>
Zhenfu Shi (i0ntempest) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/a971437a4529e72ff8d619adfbeec7ac8ea7b3b2">https://github.com/macports/macports-ports/commit/a971437a4529e72ff8d619adfbeec7ac8ea7b3b2</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new a971437a452 qca*: update to 2.3.4
</span>a971437a452 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit a971437a4529e72ff8d619adfbeec7ac8ea7b3b2
</span>Author: i0ntempest <szf1234@me.com>
AuthorDate: Thu Nov 11 16:36:22 2021 -0500

<span style='display:block; white-space:pre;color:#404040;'>    qca*: update to 2.3.4
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/63873
</span>---
 devel/qca/Portfile                      |  20 +++---
 devel/qca/files/patch-qca-ossl.diff     | 116 ++++++++++++++++----------------
 devel/qca/files/patch-qca210-qt550.diff |  14 ++--
 3 files changed, 72 insertions(+), 78 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/qca/Portfile b/devel/qca/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 67d07050804..843ff4bf255 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/qca/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/qca/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,7 +3,7 @@
</span> PortSystem              1.0
 
 name                    qca
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version                 2.2.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version                 2.3.4
</span> 
 # Qt version handling logic
 global Qt_Major
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,7 +18,6 @@ if {[string match "${name}-qt5*" ${subport}]} {
</span> }
 # best included after the required Qt PG
 PortGroup               cmake 1.1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup               cxx11 1.1
</span> 
 categories              devel crypto security
 maintainers             {gmail.com:rjvbertin @RJVB} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,14 +32,12 @@ platforms               darwin
</span> homepage                https://userbase.kde.org/QCA
 master_sites            https://download.kde.org/stable/qca/${version}
 use_xz                  yes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums               rmd160  dddc3cf240dc5424b9df13fc1bf41c8e04f3b814 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256  d716d2d8e3ed8d95bbdb061f03081d7d032206f746a30a4d29d72196f50e7b02 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size    691676
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums               rmd160  88589c5b4f2a87cb048b5a90ff39256ec996fdb1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  6b695881a7e3fd95f73aaee6eaeab96f6ad17e515e9c2b3d4b3272d7862ff5c4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    737072
</span> 
 patch.pre_args          -Np1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append       patch-qca-ossl.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-installname.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-cmakeminver.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append       patch-qca-ossl.diff
</span> 
 # the QCA plugins have been rolled into the main source tarball and are built by default
 # when their dependencies are available. Allow this for all plugins that were not already
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -59,6 +56,7 @@ configure.args          -DCMAKE_INSTALL_PREFIX:PATH=${qt_dir} \
</span>                         -DOSX_FRAMEWORK:BOOL=OFF
 
 # botan requires C++11
<span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard   2011
</span> configure.cxxflags-append \
                         -std=c++11
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -111,7 +109,7 @@ foreach qv ${qt.versions} {
</span>     # the main ports
     if {${subport} eq "${name}${qv}"} {
         # revbump for botan2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        revision                4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        revision                0
</span>         depends_lib-append      port:botan \
                                 port:libgcrypt \
                                 port:nss
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -120,7 +118,7 @@ foreach qv ${qt.versions} {
</span> 
     # plugins depend on the corresponding main port and the libraries of which they expose the Functionality
     subport ${name}${qv}-ossl {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        revision                2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        revision                0
</span>         license                 LGPL-2.1+
         depends_lib             port:${name}${qv} path:lib/libssl.dylib:openssl
         configure.args-append   -DBUILD_PLUGINS:STRING="ossl"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -139,7 +137,7 @@ foreach qv ${qt.versions} {
</span>         build.dir               ${workpath}/build/plugins/qca-gnupg
     }
     subport ${name}${qv}-pkcs11 {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        revision                2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        revision                0
</span>         license                 LGPL-2.1+
         depends_lib             port:${name}${qv} path:lib/libssl.dylib:openssl port:nss port:pkcs11-helper
         configure.args-append   -DBUILD_PLUGINS:STRING="pkcs11"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/qca/files/patch-qca-ossl.diff b/devel/qca/files/patch-qca-ossl.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 28f561abea3..724725b5d39 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/qca/files/patch-qca-ossl.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/qca/files/patch-qca-ossl.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,85 +1,83 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/plugins/qca-ossl/qca-ossl.cpp b/plugins/qca-ossl/qca-ossl.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 11ecdc9d2c34f639a8515ac3fe7a12400590ac29..59e2135209b481ba60ebb32b6cb7f2af33d42188 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/plugins/qca-ossl/qca-ossl.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/plugins/qca-ossl/qca-ossl.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2102,7 +2102,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_sha1();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           else if(alg == EMSA3_MD5)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_md5();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/plugins/qca-ossl/qca-ossl.cpp        2021-09-14 08:41:31.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/plugins/qca-ossl/qca-ossl.cpp        2021-11-11 14:46:54.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2071,7 +2071,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_sha1();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (alg == EMSA3_MD5)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_md5();
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                else if(alg == EMSA3_MD2)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_md2();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (alg == EMSA3_MD2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_md2();
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2130,7 +2130,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_sha1();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           else if(alg == EMSA3_MD5)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_md5();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2098,7 +2098,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_sha1();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (alg == EMSA3_MD5)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_md5();
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                else if(alg == EMSA3_MD2)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   md = EVP_md2();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (alg == EMSA3_MD2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             md = EVP_md2();
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -3848,7 +3848,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3717,7 +3717,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -4351,7 +4351,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4215,7 +4215,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -4548,7 +4548,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4413,7 +4413,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md5WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD5;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   break;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -7176,7 +7176,7 @@ static QStringList all_hash_types()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   list += "sha0";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         case NID_md2WithRSAEncryption:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             p.sigalgo = QCA::EMSA3_MD2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6429,7 +6429,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list += QStringLiteral("sha0");
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        list += "ripemd160";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list += QStringLiteral("ripemd160");
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        list += "md2";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list += QStringLiteral("md2");
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        list += "md4";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -7411,7 +7411,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           list += all_hash_types();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           list += all_mac_types();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           list += all_cipher_types();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list += QStringLiteral("md4");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6682,7 +6682,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         list += all_hash_types();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         list += all_mac_types();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         list += all_cipher_types();
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                list += "pbkdf1(md2)";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         list += QStringLiteral("pbkdf1(md2)");
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                list += "pbkdf1(sha1)";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -7451,7 +7451,7 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         list += QStringLiteral("pbkdf1(sha1)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6720,7 +6720,7 @@
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                else if ( type == "ripemd160" )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   return new opensslHashContext( EVP_ripemd160(), this, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (type == QLatin1String("ripemd160"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return new opensslHashContext(EVP_ripemd160(), this, type);
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                else if ( type == "md2" )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   return new opensslHashContext( EVP_md2(), this, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (type == QLatin1String("md2"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return new opensslHashContext(EVP_md2(), this, type);
</span>  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -7483,7 +7483,7 @@ public:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           else if ( type == "pbkdf1(sha1)" )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   return new opensslPbkdf1Context( EVP_sha1(), this, type );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6750,7 +6750,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (type == QLatin1String("pbkdf1(sha1)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return new opensslPbkdf1Context(EVP_sha1(), this, type);
</span> -#ifdef HAVE_OPENSSL_MD2
 +#if defined(HAVE_OPENSSL_MD2) && !defined(OPENSSL_NO_MD2)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                else if ( type == "pbkdf1(md2)" )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   return new opensslPbkdf1Context( EVP_md2(), this, type );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else if (type == QLatin1String("pbkdf1(md2)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return new opensslPbkdf1Context(EVP_md2(), this, type);
</span>  #endif
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/qca/files/patch-qca210-qt550.diff b/devel/qca/files/patch-qca210-qt550.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index ba3a707f648..93c4460bea7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/qca/files/patch-qca210-qt550.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/qca/files/patch-qca210-qt550.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,12 +1,10 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/include/QtCrypto/qca_core.h b/include/QtCrypto/qca_core.h
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 8c25a701dd49961c87bd4a5ebf5024d8459c604b..9592cb3739da1847a7dfc3e14b74bf90c89d53e1 100644
</span> --- a/include/QtCrypto/qca_core.h
 +++ b/include/QtCrypto/qca_core.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -39,6 +39,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QList>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QSharedData>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -43,6 +43,7 @@
</span>  #include <QSharedDataPointer>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <QString>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <QStringList>
</span> +#include <QIODevice>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "qca_export.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "qca_support.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "qca_tools.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /**
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    The current version of %QCA.
</span></pre><pre style='margin:0'>

</pre>