Patches leading towards being able to run GIFT on a modern machine
Sarah Kate <[email protected]> Fri, 7 Oct 2022 16:06:17 -0400
| Newsgroups | gmane.comp.gnu.gift.general |
|---|---|
| Message-ID | <CANwV=5KMWhUiph=YZ=pof3JJesj927+gaBPE7JCozXbbp9G88g@mail.gmail.com> |
--000000000000659d0a05ea7759d7 Content-Type: multipart/alternative; boundary="000000000000659d0905ea7759d5" --000000000000659d0905ea7759d5 Content-Type: text/plain; charset="UTF-8" Hello, Here are 2 patches that help towards being able to run GIFT on a modern machine. (Debian 11, g++ 10.2.1) - modern-cpp.patch allows for compilation - fix-undefined-behavior-when-writing-errors.patch stops undefined behavior when GIFT wants to write error messages. It was writing "\n" to console on an infinite loop for me. Please consider applying them. Thanks, Sarah --000000000000659d0905ea7759d5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>Hello,</div><div><br></div><div>Here are 2 patches th= at help towards being able to run GIFT on a modern machine.</div><div>(Debi= an 11, g++ 10.2.1)</div><div><br></div><div>- modern-cpp.patch allows for c= ompilation<br></div><div>- fix-undefined-behavior-when-writing-errors.patch= stops undefined behavior when GIFT wants to write error messages. It was w= riting "\n" to console on an infinite loop for me.<br></div><div>= <br></div><div>Please consider applying them.</div><div><br></div><div>Than= ks,</div><div>Sarah<br></div></div> --000000000000659d0905ea7759d5-- --000000000000659d0a05ea7759d7 Content-Type: text/x-patch; charset="US-ASCII"; name="modern-cpp.patch" Content-Disposition: attachment; filename="modern-cpp.patch" Content-Transfer-Encoding: base64 Content-ID: <f_l8ywtrz20> X-Attachment-Id: f_l8ywtrz20 Y29tbWl0IDkyODAxYTdjNTUwOTc3Yjg3N2Q1NzYwNDc5ODFiZTU4NGE2MzEzYTYKQXV0aG9yOiBT YXJhaCBLYXRlIDxuZXRjYXRrYXRlQGdtYWlsLmNvbT4KRGF0ZTogICBUaHUgT2N0IDYgMjE6MzM6 MjIgMjAyMiAtMDQwMAoKICAgIEdldCBpdCB0byBidWlsZCB3aXRoIG1vZGVybiBDKysgY29tcGls ZXIKCmRpZmYgLS1naXQgYS9saWJHSUZUQWNEaXN0YW5jZU1hdHJpeC9pbmNsdWRlL0NQZXJzaXN0 ZW50TWF0cml4LmggYi9saWJHSUZUQWNEaXN0YW5jZU1hdHJpeC9pbmNsdWRlL0NQZXJzaXN0ZW50 TWF0cml4LmgKaW5kZXggNjdjZGVmYS4uMDQ3NzEyZSAxMDA2NDQKLS0tIGEvbGliR0lGVEFjRGlz dGFuY2VNYXRyaXgvaW5jbHVkZS9DUGVyc2lzdGVudE1hdHJpeC5oCisrKyBiL2xpYkdJRlRBY0Rp c3RhbmNlTWF0cml4L2luY2x1ZGUvQ1BlcnNpc3RlbnRNYXRyaXguaApAQCAtNzUsNyArNzUsNyBA QCBDUGVyc2lzdGVudE1hdHJpeDxUPjo6Q1BlcnNpc3RlbnRNYXRyaXgobG9uZyBpblhTaXplLAog CiB0ZW1wbGF0ZTxjbGFzcyBUPgogYm9vbCBDUGVyc2lzdGVudE1hdHJpeDxUPjo6Y3JlYXRlKGNo YXIgY29uc3QqIGluRmlsZU5hbWUpY29uc3R7Ci0gIGZzdHJlYW0qIGxGaWxlPW5ldyBmc3RyZWFt KGluRmlsZU5hbWUsZnN0cmVhbTo6b3V0K2ZzdHJlYW06OmluKTsKKyAgZnN0cmVhbSogbEZpbGU9 bmV3IGZzdHJlYW0oaW5GaWxlTmFtZSxmc3RyZWFtOjpvdXQgfCBmc3RyZWFtOjppbik7CiAgIENQ ZXJzaXN0ZW50VmVjdG9yPFQ+IGxMaW5lKG1YU2l6ZSk7CiAgIGlmKGxGaWxlKXsKICAgICBmb3Io bG9uZyBpPTA7CkBAIC0yMDIsNyArMjAyLDcgQEAgYm9vbCBDUGVyc2lzdGVudE1hdHJpeDxUPjo6 c2V0VmFsdWUobG9uZyBpblgsCiAKICAgbUNvbnRlbnQtPmZsdXNoKCk7CiAKLSAgcmV0dXJuICgq bUNvbnRlbnQpOworICByZXR1cm4gISEoKm1Db250ZW50KTsKIH0KIAogLy8vCmRpZmYgLS1naXQg YS9saWJHSUZUQWNEaXN0YW5jZU1hdHJpeC9pbmNsdWRlL0NQZXJzaXN0ZW50VmVjdG9yLmggYi9s aWJHSUZUQWNEaXN0YW5jZU1hdHJpeC9pbmNsdWRlL0NQZXJzaXN0ZW50VmVjdG9yLmgKaW5kZXgg YmEyYmZhNi4uMWZiMGJkYyAxMDA2NDQKLS0tIGEvbGliR0lGVEFjRGlzdGFuY2VNYXRyaXgvaW5j bHVkZS9DUGVyc2lzdGVudFZlY3Rvci5oCisrKyBiL2xpYkdJRlRBY0Rpc3RhbmNlTWF0cml4L2lu Y2x1ZGUvQ1BlcnNpc3RlbnRWZWN0b3IuaApAQCAtMTEwLDEwICsxMTAsMTAgQEAgYm9vbCBDUGVy c2lzdGVudFZlY3RvcjxUPjo6cmVhZChpc3RyZWFtJiBpblN0cmVhbSwKIAogICAgIGFzc2VydChs VG9CZVJlYWQ+PTAgJiYgbFRvQmVSZWFkPD0xKTsKIAotICAgIHB1c2hfYmFjayhsVG9CZVJlYWQp OworICAgIHZlY3RvcjxUPjo6cHVzaF9iYWNrKGxUb0JlUmVhZCk7CiAgIH0KICAgbUxlbmd0aD1p bkxlbmd0aDsKLSAgcmV0dXJuIGluU3RyZWFtOworICByZXR1cm4gISFpblN0cmVhbTsKIH0KIAog dGVtcGxhdGU8Y2xhc3MgVD4KQEAgLTEyNSw3ICsxMjUsNyBAQCBib29sIENQZXJzaXN0ZW50VmVj dG9yPFQ+Ojp3cml0ZShvc3RyZWFtJiBvdXRTdHJlYW0pY29uc3R7CiAJCSAgKmkpOwogICB9CiAg IG91dFN0cmVhbSA8PCBmbHVzaDsKLSAgcmV0dXJuIG91dFN0cmVhbTsKKyAgcmV0dXJuICEhb3V0 U3RyZWFtOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYkdJRlRBY0ludmVydGVkRmlsZS9j Yy9DQWNJRkZpbGVTeXN0ZW0uY2MgYi9saWJHSUZUQWNJbnZlcnRlZEZpbGUvY2MvQ0FjSUZGaWxl U3lzdGVtLmNjCmluZGV4IDRjOGQ1ZTUuLmE3ZGVkMTggMTAwNjQ0Ci0tLSBhL2xpYkdJRlRBY0lu dmVydGVkRmlsZS9jYy9DQWNJRkZpbGVTeXN0ZW0uY2MKKysrIGIvbGliR0lGVEFjSW52ZXJ0ZWRG aWxlL2NjL0NBY0lGRmlsZVN5c3RlbS5jYwpAQCAtNjAxLDcgKzYwMSw3IEBAIGJvb2wgQ0FjSUZG aWxlU3lzdGVtOjpuZXdHZW5lcmF0ZUludmVydGVkRmlsZSgpewogICBpZnN0cmVhbSBsSW5BdXhp bGlhcnlGaWxlKGxMYXN0RmlsZVVzZWQuY19zdHIoKSk7CiAKICAgY291dCA8PCAiT3BlbmluZyBz b3J0ZWQgc3RyZWFtIGZvciByZWFkaW5nLiBTdGF0ZSAoc2hvdWxkIGJlICcxJyk6ICIKLSAgICAg ICA8PCBsSW5BdXhpbGlhcnlGaWxlCisgICAgICAgPDwgISFsSW5BdXhpbGlhcnlGaWxlCiAgICAg ICAgPDwgZW5kbDsKICAgCiAgIGlmKGxJbkF1eGlsaWFyeUZpbGUpewpkaWZmIC0tZ2l0IGEvbGli R0lGVEFjSW52ZXJ0ZWRGaWxlL2NjL0NBZGRpdGlvbmFsRG9jdW1lbnRJbmZvcm1hdGlvbi5jYyBi L2xpYkdJRlRBY0ludmVydGVkRmlsZS9jYy9DQWRkaXRpb25hbERvY3VtZW50SW5mb3JtYXRpb24u Y2MKaW5kZXggM2EwMzM2ZS4uMmEzZDhhMyAxMDA2NDQKLS0tIGEvbGliR0lGVEFjSW52ZXJ0ZWRG aWxlL2NjL0NBZGRpdGlvbmFsRG9jdW1lbnRJbmZvcm1hdGlvbi5jYworKysgYi9saWJHSUZUQWNJ bnZlcnRlZEZpbGUvY2MvQ0FkZGl0aW9uYWxEb2N1bWVudEluZm9ybWF0aW9uLmNjCkBAIC0yNjcs NyArMjY3LDcgQEAgYm9vbCBDQWRkaXRpb25hbERvY3VtZW50SW5mb3JtYXRpb246Om91dHB1dChv c3RyZWFtJiBvdXRTdHJlYW0pY29uc3R7CiAJICAgIDw8IG1ERlNxdWFyZVN1bQogCSAgICA8PCAi ICIgCiAJICAgIDw8IG1TcXVhcmVERkxvZ0lDRlN1bTsKLSByZXR1cm4gb3V0U3RyZWFtOworIHJl dHVybiAhIW91dFN0cmVhbTsKIH07CiAKIApAQCAtMjk5LDcgKzI5OSw3IEBAIGJvb2wgQ0FkZGl0 aW9uYWxEb2N1bWVudEluZm9ybWF0aW9uOjppbnB1dChpc3RyZWFtJiBpblN0cmVhbSl7CiAgICAg ICAgPDwgZmx1c2ggCiAgICAgICAgPDwgZW5kbDsKICNlbmRpZgotICByZXR1cm4gaW5TdHJlYW07 CisgIHJldHVybiAhIWluU3RyZWFtOwogfTsKIAogCmRpZmYgLS1naXQgYS9saWJHSUZUQWNJbnZl cnRlZEZpbGUvY2MvQ0RvY3VtZW50RnJlcXVlbmN5RWxlbWVudC5jYyBiL2xpYkdJRlRBY0ludmVy dGVkRmlsZS9jYy9DRG9jdW1lbnRGcmVxdWVuY3lFbGVtZW50LmNjCmluZGV4IDg0ZjEzZGIuLjg0 NTY5YzggMTAwNjQ0Ci0tLSBhL2xpYkdJRlRBY0ludmVydGVkRmlsZS9jYy9DRG9jdW1lbnRGcmVx dWVuY3lFbGVtZW50LmNjCisrKyBiL2xpYkdJRlRBY0ludmVydGVkRmlsZS9jYy9DRG9jdW1lbnRG cmVxdWVuY3lFbGVtZW50LmNjCkBAIC02Niw3ICs2Niw3IEBAIHN0YXRpYyB1bnNpZ25lZCBjb25z dCBpbnQgc0ZSRVFfTUFYPShGUkVRX01BWCk7CiBib29sIENEb2N1bWVudEZyZXF1ZW5jeUVsZW1l bnQ6OmlucHV0KGlzdHJlYW0mIGluU3RyZWFtKXsKICAgaW5TdHJlYW0gPj4gbUNvbnRlbnQubUlE IAogCSAgID4+IG1Db250ZW50Lm1Eb2N1bWVudEZyZXF1ZW5jeTsKLSAgcmV0dXJuIGluU3RyZWFt OworICByZXR1cm4gISFpblN0cmVhbTsKIH07CiAKIApAQCAtODcsNyArODcsNyBAQCBib29sIENE b2N1bWVudEZyZXF1ZW5jeUVsZW1lbnQ6Om91dHB1dChvc3RyZWFtJiBvdXRTdHJlYW0pY29uc3R7 CiAJICAgIDw8ICIgIiAKIAkgICAgPDwgbUNvbnRlbnQubURvY3VtZW50RnJlcXVlbmN5CiAJICAg IDw8IGVuZGw7Ci0gIHJldHVybiBvdXRTdHJlYW07CisgIHJldHVybiAhIW91dFN0cmVhbTsKIH07 CiAKIApAQCAtMTI0LDcgKzEyNCw3IEBAIGJvb2wgQ0RvY3VtZW50RnJlcXVlbmN5RWxlbWVudDo6 d3JpdGVCaW5hcnkob3N0cmVhbSYgb3V0U3RyZWFtKWNvbnN0ewogICBvdXRTdHJlYW0ud3JpdGUo KGNoYXIqKXRoaXMsCiAJCSAgc2l6ZW9mKCp0aGlzKSk7CiAjZW5kaWYKLSAgcmV0dXJuIG91dFN0 cmVhbTsKKyAgcmV0dXJuICEhb3V0U3RyZWFtOwogfTsKIAogCmRpZmYgLS1naXQgYS9saWJHSUZU QWNVUkwyRlRTL2NjL0NBY1VSTDJGVFMuY2MgYi9saWJHSUZUQWNVUkwyRlRTL2NjL0NBY1VSTDJG VFMuY2MKaW5kZXggZmQxY2JkNS4uNWQyNDdlMCAxMDA2NDQKLS0tIGEvbGliR0lGVEFjVVJMMkZU Uy9jYy9DQWNVUkwyRlRTLmNjCisrKyBiL2xpYkdJRlRBY1VSTDJGVFMvY2MvQ0FjVVJMMkZUUy5j YwpAQCAtMTIwLDcgKzEyMCw3IEBAIENBY1VSTDJGVFM6OkNBY1VSTDJGVFMoY29uc3QgQ1hNTEVs ZW1lbnQmIGluQ29sbGVjdGlvbkVsZW1lbnQpOgogICAgIGNvdXQgPDwgIiAuLi5zdWNjZXNzLiIg CiAJIDw8IGVuZGw7CiAgIAotICBtV2VsbENvbnN0cnVjdGVkPW1VUkxUb0ZlYXR1cmVGaWxlOwor ICBtV2VsbENvbnN0cnVjdGVkPSEhbVVSTFRvRmVhdHVyZUZpbGU7CiAgIAogICBtVVJMVG9GRk4u Y2xlYXIoKTsKICAgbVVSTFRvSUQuY2xlYXIoKTsKZGlmZiAtLWdpdCBhL2xpYk1STUwvY2MvQ0Fj Y2Vzc29ySW1wbGVtZW50YXRpb24uY2MgYi9saWJNUk1ML2NjL0NBY2Nlc3NvckltcGxlbWVudGF0 aW9uLmNjCmluZGV4IDAyNDcwOTguLmFiYjZlMzAgMTAwNjQ0Ci0tLSBhL2xpYk1STUwvY2MvQ0Fj Y2Vzc29ySW1wbGVtZW50YXRpb24uY2MKKysrIGIvbGliTVJNTC9jYy9DQWNjZXNzb3JJbXBsZW1l bnRhdGlvbi5jYwpAQCAtMzEwLDcgKzMxMCw4IEBAIHBhaXI8Ym9vbCxUSUQ+IENBY2Nlc3Nvcklt cGxlbWVudGF0aW9uOjpVUkxUb0lEKGNvbnN0IHN0cmluZyYgaW5VUkwpY29uc3QKICAgCiAgIGlm KGxJIT1tVVJMVG9JRC5lbmQoKSkKICAgICB7Ci0gICAgICByZXR1cm4gbWFrZV9wYWlyPGJvb2ws VElEPih0cnVlLCgqbEkpLnNlY29uZCk7CisgICAgICBhdXRvIHZhbHVlID0gKCpsSSkuc2Vjb25k OworICAgICAgcmV0dXJuIG1ha2VfcGFpcjxib29sLFRJRD4odHJ1ZSxtb3ZlKHZhbHVlKSk7CiAg ICAgfQogICBlbHNlCiAgICAgewo= --000000000000659d0a05ea7759d7 Content-Type: text/x-patch; charset="US-ASCII"; name="fix-undefined-behavior-when-writing-errors.patch" Content-Disposition: attachment; filename="fix-undefined-behavior-when-writing-errors.patch" Content-Transfer-Encoding: base64 Content-ID: <f_l8ywvtuj1> X-Attachment-Id: f_l8ywvtuj1 Y29tbWl0IGZlODJhOTFmMTlhYTE2YmU3ZmIxZTNjMDE5MDE0Zjg4OWU0NzQzNmQKQXV0aG9yOiBT YXJhaCBLYXRlIDxuZXRjYXRrYXRlQGdtYWlsLmNvbT4KRGF0ZTogICBGcmkgT2N0IDcgMTU6Mjg6 NDggMjAyMiAtMDQwMAoKICAgIEV4Y2VwdGlvbiBvcGVyYXRvcjw8J3MgbmVlZCB0byByZXR1cm4g dGhlIG9zdHJlYW0KICAgIAogICAgVGhpcyBtYXkgaGF2ZSB3b3JrZWQgYmVmb3JlLCBidXQgaXQg d2FzIHVuZGVmaW5lZCBiZWhhdmlvci4KCmRpZmYgLS1naXQgYS9saWJNUk1ML2NjL0dJRlRFeGNl cHRpb25zLmNjIGIvbGliTVJNTC9jYy9HSUZURXhjZXB0aW9ucy5jYwppbmRleCBkMjIyNWI2Li4x ZDU0Nzc4IDEwMDY0NAotLS0gYS9saWJNUk1ML2NjL0dJRlRFeGNlcHRpb25zLmNjCisrKyBiL2xp Yk1STUwvY2MvR0lGVEV4Y2VwdGlvbnMuY2MKQEAgLTQ4LDYgKzQ4LDcgQEAgb3N0cmVhbSYgb3Bl cmF0b3I8PChvc3RyZWFtJiBvdXRTdHJlYW0sY29uc3QgR0lGVEV4Y2VwdGlvbiYgaW5FeGNlcHRp b24pewogCSAgICAgIDw8IGluRXhjZXB0aW9uLm1NZXNzYWdlCiAJICAgICAgPDwgZmx1c2gKIAkg ICAgICA8PCBlbmRsOworICAgIHJldHVybiBvdXRTdHJlYW07CiB9CiAKIHZvaWQgR0lGVEV4Y2Vw dGlvbjo6ZHVtbXkoKXsvL25lZWRlZCBmb3IgUlRUSS9leGNlcHRpb24gY2F0Y2hpbmcKQEAgLTY3 LDYgKzY4LDcgQEAgb3N0cmVhbSYgb3BlcmF0b3I8PChvc3RyZWFtJiBvdXRTdHJlYW0sY29uc3Qg VkVQcm9ncmFtbWluZ01pc3Rha2UmIGluRXhjZXB0aW9uKXsKIAkgICAgICA8PCBpbkV4Y2VwdGlv bi5tTWVzc2FnZQogCSAgICAgIDw8IGZsdXNoCiAJICAgICAgPDwgZW5kbDsKKyAgICByZXR1cm4g b3V0U3RyZWFtOwogfQogCiBWRU5vdEZvdW5kOjpWRU5vdEZvdW5kKGNvbnN0IGNoYXIqIGluTWVz c2FnZSk6CkBAIC03OCw2ICs4MCw3IEBAIG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0cmVhbSYgb3V0 U3RyZWFtLGNvbnN0IFZFTm90Rm91bmQmIGluRXhjZXB0aW9uKXsKIAkgICAgICA8PCBpbkV4Y2Vw dGlvbi5tTWVzc2FnZQogCSAgICAgIDw8IGZsdXNoCiAJICAgICAgPDwgZW5kbDsKKyAgICByZXR1 cm4gb3V0U3RyZWFtOwogfQogCiBWRUJhc2VVbmtub3duOjpWRUJhc2VVbmtub3duKGNvbnN0IGNo YXIqIGluTWVzc2FnZSk6CkBAIC04OSw2ICs5Miw3IEBAIG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0 cmVhbSYgb3V0U3RyZWFtLGNvbnN0IFZFQmFzZVVua25vd24mIGluRXhjZXB0aW9uKXsKIAkgICAg ICA8PCBpbkV4Y2VwdGlvbi5tTWVzc2FnZQogCSAgICAgIDw8IGZsdXNoCiAJICAgICAgPDwgZW5k bDsKKyAgICByZXR1cm4gb3V0U3RyZWFtOwogfQogCiAKQEAgLTEwMSw2ICsxMDUsNyBAQCBvc3Ry ZWFtJiBvcGVyYXRvcjw8KG9zdHJlYW0mIG91dFN0cmVhbSxjb25zdCBWRURvdWJsZUluc2VydCYg aW5FeGNlcHRpb24pewogCSAgICAgIDw8IGluRXhjZXB0aW9uLm1NZXNzYWdlCiAJICAgICAgPDwg Zmx1c2gKIAkgICAgICA8PCBlbmRsOworICAgIHJldHVybiBvdXRTdHJlYW07CiB9CiAKIApAQCAt MTEzLDYgKzExOCw3IEBAIG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0cmVhbSYgb3V0U3RyZWFtLGNv bnN0IFZFV3JvbmdBY2Nlc3NvciYgaW5FeGNlcHRpb24pewogCSAgICAgIDw8IGluRXhjZXB0aW9u Lm1NZXNzYWdlCiAJICAgICAgPDwgZmx1c2gKIAkgICAgICA8PCBlbmRsOworICAgIHJldHVybiBv dXRTdHJlYW07CiB9CiAKIApAQCAtMTI1LDYgKzEzMSw3IEBAIG9zdHJlYW0mIG9wZXJhdG9yPDwo b3N0cmVhbSYgb3V0U3RyZWFtLGNvbnN0IFZFV3JvbmdBbGdvcml0aG0mIGluRXhjZXB0aW9uKXsK IAkgICAgICA8PCBpbkV4Y2VwdGlvbi5tTWVzc2FnZQogCSAgICAgIDw8IGZsdXNoCiAJICAgICAg PDwgZW5kbDsKKyAgICByZXR1cm4gb3V0U3RyZWFtOwogfQogVkVXcm9uZ0Jhc2VUeXBlOjpWRVdy b25nQmFzZVR5cGUoY29uc3QgY2hhciogaW5NZXNzYWdlKToKICAgICBHSUZURXhjZXB0aW9uKGlu TWVzc2FnZSl7CkBAIC0xMzUsNiArMTQyLDcgQEAgb3N0cmVhbSYgb3BlcmF0b3I8PChvc3RyZWFt JiBvdXRTdHJlYW0sY29uc3QgVkVXcm9uZ0Jhc2VUeXBlJiBpbkV4Y2VwdGlvbil7CiAJICAgICAg PDwgaW5FeGNlcHRpb24ubU1lc3NhZ2UKIAkgICAgICA8PCBmbHVzaAogCSAgICAgIDw8IGVuZGw7 CisgICAgcmV0dXJuIG91dFN0cmVhbTsKIH0KIFZFQ29uZmlndXJhdGlvbkVycm9yOjpWRUNvbmZp Z3VyYXRpb25FcnJvcihjb25zdCBjaGFyKiBpbk1lc3NhZ2UpOgogICAgIEdJRlRFeGNlcHRpb24o aW5NZXNzYWdlKXsKQEAgLTE0NSw2ICsxNTMsNyBAQCBvc3RyZWFtJiBvcGVyYXRvcjw8KG9zdHJl YW0mIG91dFN0cmVhbSxjb25zdCBWRUNvbmZpZ3VyYXRpb25FcnJvciYgaW5FeGNlcHRpb24pewog CSAgICAgIDw8IGluRXhjZXB0aW9uLm1NZXNzYWdlCiAJICAgICAgPDwgZmx1c2gKIAkgICAgICA8 PCBlbmRsOworICAgIHJldHVybiBvdXRTdHJlYW07CiB9CiAKIApAQCAtMTU3LDUgKzE2Niw2IEBA IG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0cmVhbSYgb3V0U3RyZWFtLGNvbnN0IFZFVW5rbm93blNl c3Npb24mIGluRXhjZXB0aW9uKXsKIAkgICAgICA8PCBpbkV4Y2VwdGlvbi5tTWVzc2FnZQogCSAg ICAgIDw8IGZsdXNoCiAJICAgICAgPDwgZW5kbDsKKyAgICByZXR1cm4gb3V0U3RyZWFtOwogfQog Cg== --000000000000659d0a05ea7759d7 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaGVscC1HSUZU IG1haWxpbmcgbGlzdApoZWxwLUdJRlRAZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFp bG1hbi9saXN0aW5mby9oZWxwLWdpZnQK --000000000000659d0a05ea7759d7--