<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>50519</bug_id>
          
          <creation_ts>2010-12-04 06:42:10 -0800</creation_ts>
          <short_desc>[Qt] [WK2] WebKit2 enabled build fails to link</short_desc>
          <delta_ts>2011-01-20 10:20:08 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P4</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Laszlo Gombos">laszlo.gombos</reporter>
          <assigned_to name="Andras Becsi">abecsi</assigned_to>
          <cc>abecsi</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>317269</commentid>
    <comment_count>0</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-12-04 06:42:10 -0800</bug_when>
    <thetext>build-webkit --qt --minimal CONFIG+=webkit2 results in the following linnking error:


/usr/bin/ld: ../WebKit2/release/libwebkit2.a(ThreadLauncherQt.o): in function WebKit::ThreadLauncher::createWebThread():ThreadLauncherQt.cpp(.text+0xea): error: undefined reference to &apos;WTF::createThread(void* (*)(void*), void*, char const*)&apos;
/usr/bin/ld: ../WebKit2/release/libwebkit2.a(WebProcess.o): in function WebKit::WebProcess::initialize(QString, RunLoop*):WebProcess.cpp(.text+0x1852): error: undefined reference to &apos;WTF::createThread(void* (*)(void*), void*, char const*)&apos;
collect2: ld returned 1 exit status
make[1]: *** [../lib/libQtWebKit.so.4.9.0] Error 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324381</commentid>
    <comment_count>1</comment_count>
      <attachid>76996</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2010-12-20 07:23:32 -0800</bug_when>
    <thetext>Created attachment 76996
proposed fix

This patch also adds missing ENABLE(DATABASE) guards to fix the build. 

The linking issue is caused by a more complex problem.
In a default WebKit2 build WebCore links to the static jscore library, and because some parts of WebCore (IconDatabase, ImageResizerThread, DatabaseThread, LocalStorageThread, WorkerThread) are using createThread, the linker doesn&apos;t remove the symbol so it is present afterwards when linking to the static webkit2 lib, but in a minimal build these parts are guarded by various ENABLE guards so because they are not needed in WebCore the linker removes the symbol, but the WebKit2 ThreadLauncher nonetheless needs the symbol, hence the linking fails.
This patch adds -whole-archive to JavaScriptCore.pri&apos;s addJavaScriptCoreLib to explicitly force the linker to keep all the symbols of the archive.

This is only a workaround and should serve as a temporary solution until we find a proper solution, how to refactor the build system.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324383</commentid>
    <comment_count>2</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2010-12-20 07:29:16 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=76996) [details]
&gt; proposed fix
&gt; 
&gt; This patch also adds missing ENABLE(DATABASE) guards to fix the build. 
&gt; 
&gt; The linking issue is caused by a more complex problem.
&gt; In a default WebKit2 build WebCore links to the static jscore library, and because some parts of WebCore (IconDatabase, ImageResizerThread, DatabaseThread, LocalStorageThread, WorkerThread) are using createThread, the linker doesn&apos;t remove the symbol so it is present afterwards when linking to the static webkit2 lib, but in a minimal build these parts are guarded by various ENABLE guards so because they are not needed in WebCore the linker removes the symbol, but the WebKit2 ThreadLauncher nonetheless needs the symbol, hence the linking fails.
&gt; This patch adds -whole-archive to JavaScriptCore.pri&apos;s addJavaScriptCoreLib to explicitly force the linker to keep all the symbols of the archive.
&gt; 
&gt; This is only a workaround and should serve as a temporary solution until we find a proper solution, how to refactor the build system.

The whole-archive change should be inside a webkit2 guard, but before I update the patch I&apos;ll wait for some opinions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>324433</commentid>
    <comment_count>3</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-12-20 09:47:31 -0800</bug_when>
    <thetext>This perhaps is another reason to _not_ build WebKit2 as a separate library - and instead build it into the WebKit library directly like many other WebKit features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>326565</commentid>
    <comment_count>4</comment_count>
      <attachid>76996</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-12-24 03:06:19 -0800</bug_when>
    <thetext>Comment on attachment 76996
proposed fix

View in context: https://bugs.webkit.org/attachment.cgi?id=76996&amp;action=review

&gt; JavaScriptCore/JavaScriptCore.pri:88
&gt; -        LIBS += -l$$JAVASCRIPTCORE_TARGET
&gt; +        LIBS += -Wl,-whole-archive -l$$JAVASCRIPTCORE_TARGET -Wl,-no-whole-archive

I think this change is different from the rest of this patch. Please split up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337420</commentid>
    <comment_count>5</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-01-20 10:20:08 -0800</bug_when>
    <thetext>A workaround to use whole-archive was landed in r76263 which fixes the issue for now until the build system gets redesigned.
(See https://bugs.webkit.org/show_bug.cgi?id=51339)
Closing this bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76996</attachid>
            <date>2010-12-20 07:23:32 -0800</date>
            <delta_ts>2011-01-20 10:00:05 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>0001-Qt-WK2-WebKit2-enabled-minimal-build-fails-to-link.patch</filename>
            <type>text/plain</type>
            <size>13708</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSAzN2Q0ODM5MjY2MWNiZDliN2IwZWU3YzZmN2U4YWViOGI4MmVhZGMyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFiZWNzaUBpbmYudS1zemVnZWQuaHU+
CkRhdGU6IE1vbiwgMjAgRGVjIDIwMTAgMTY6MDI6MjkgKzAxMDAKU3ViamVjdDogW1BBVENIXSBb
UXRdW1dLMl0gV2ViS2l0MiBlbmFibGVkIG1pbmltYWwgYnVpbGQgZmFpbHMgdG8gbGluawoKLS0t
CiBKYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg
IDkgKysrKysrCiBKYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5wcmkgICAgICAgICAgICAg
ICAgICB8ICAgIDIgKy0KIFdlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAyNyArKysrKysrKysrKysrKysrKysrKwogV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tBUElDYXN0LmggICAgICAgICAgICAgICAgfCAgICA0ICsrKwogV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcCAgICAgICAgICAgICAgfCAgICAyICsKIFdlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLRGF0YWJhc2VNYW5hZ2VyLmNwcCAgICAgIHwgICAgMyArKwogV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tEYXRhYmFzZU1hbmFnZXIuaCAgICAgICAgfCAgICA0ICsr
KwogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAgICAgICAgICAgICAgICAgICAgfCAg
ICA2ICsrKysKIFdlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaCAgICAgICAgICAgICAgICAg
ICAgIHwgICAgNiArKysrCiBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJEYXRhYmFzZU1hbmFnZXJQcm94
eS5jcHAgICAgICB8ICAgIDMgKysKIFdlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdl
clByb3h5LmggICAgICAgIHwgICAgNCArKysKIC4uLi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5h
Z2VyUHJveHkubWVzc2FnZXMuaW4gIHwgICAgMiArCiAuLi4vV2ViQ29yZVN1cHBvcnQvV2ViRGF0
YWJhc2VNYW5hZ2VyLmNwcCAgICAgICAgICB8ICAgIDMgKysKIC4uLi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkRhdGFiYXNlTWFuYWdlci5oIHwgICAgNCArKysKIC4uLi9XZWJDb3JlU3Vw
cG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIubWVzc2FnZXMuaW4gIHwgICAgMiArCiAuLi4vV2ViQ29y
ZVN1cHBvcnQvcXQvV2ViRGF0YWJhc2VNYW5hZ2VyUXQuY3BwICAgICB8ICAgIDMgKysKIFdlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCAgICAgICAgICAgICAgICAgIHwgICAgMiArCiAx
NyBmaWxlcyBjaGFuZ2VkLCA4NSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxv
ZwppbmRleCA2NDMxNmJiLi41MmYwYjE0IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9DaGFu
Z2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIw
MTAtMTItMjAgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUB3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF1bV0syXSBXZWJLaXQyIGVu
YWJsZWQgbWluaW1hbCBidWlsZCBmYWlscyB0byBsaW5rCisKKyAgICAgICAgKiBKYXZhU2NyaXB0
Q29yZS5wcmk6IGxpbmsgdG8ganNjb3JlIGxpYiB3aXRoIHdob2xlLWFyY2hpdmUKKyAgICAgICAg
dG8gcHJldmVudCBtaXNzaW5nIHd0ZiBzeW1ib2xzIGluIHRhaWxvcmVkIFdlYktpdDIgYnVpbGRz
LgorCiAyMDEwLTEyLTE3ICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUucHJpIGIvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUucHJp
CmluZGV4IDA1OTBiOTQuLmQ5NjVhODkgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL0phdmFT
Y3JpcHRDb3JlLnByaQorKysgYi9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5wcmkKQEAg
LTg1LDcgKzg1LDcgQEAgZGVmaW5lVGVzdChhZGRKYXZhU2NyaXB0Q29yZUxpYikgewogICAgICAg
ICAjIE1ha2Ugc3VyZSBqc2NvcmUgd2lsbCBiZSBlYXJseSBpbiB0aGUgbGlzdCBvZiBsaWJyYXJp
ZXMgdG8gd29ya2Fyb3VuZCBhIGJ1ZyBpbiBNaW5HVwogICAgICAgICAjIHRoYXQgY2FuJ3QgcmVz
b2x2ZSBzeW1ib2xzIGZyb20gUXRDb3JlIGlmIGxpYmpzY29yZSBjb21lcyBhZnRlci4KICAgICAg
ICAgUU1BS0VfTElCRElSID0gJCRwYXRoVG9KYXZhU2NyaXB0Q29yZU91dHB1dCAkJFFNQUtFX0xJ
QkRJUgotICAgICAgICBMSUJTICs9IC1sJCRKQVZBU0NSSVBUQ09SRV9UQVJHRVQKKyAgICAgICAg
TElCUyArPSAtV2wsLXdob2xlLWFyY2hpdmUgLWwkJEpBVkFTQ1JJUFRDT1JFX1RBUkdFVCAtV2ws
LW5vLXdob2xlLWFyY2hpdmUKICAgICAgICAgUE9TVF9UQVJHRVRERVBTICs9ICQke3BhdGhUb0ph
dmFTY3JpcHRDb3JlT3V0cHV0fSQke1FNQUtFX0RJUl9TRVB9bGliJCR7SkFWQVNDUklQVENPUkVf
VEFSR0VUfS5hCiAgICAgfQogCmRpZmYgLS1naXQgYS9XZWJLaXQyL0NoYW5nZUxvZyBiL1dlYktp
dDIvQ2hhbmdlTG9nCmluZGV4IGU2NGUzZjcuLmMzOGE5MTUgMTAwNjQ0Ci0tLSBhL1dlYktpdDIv
Q2hhbmdlTG9nCisrKyBiL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTAt
MTItMjAgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF1bV0syXSBXZWJLaXQyIGVuYWJs
ZWQgbWluaW1hbCBidWlsZCBmYWlscyB0byBsaW5rCisKKyAgICAgICAgQWRkIG1pc3NpbmcgRU5B
QkxFKERBVEFCQVNFKSBndWFyZHMgdG8gV2ViS2l0MiBzb3VyY2VzLgorCisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0Nv
bnRleHQuY3BwOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0RhdGFiYXNlTWFuYWdlci5j
cHA6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLRGF0YWJhc2VNYW5hZ2VyLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250
ZXh0OjpXZWJDb250ZXh0KToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cHJvY2Vzc0Rp
ZENsb3NlKToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6ZGlkUmVjZWl2ZU1lc3NhZ2Up
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0Lmg6CisgICAgICAgICogVUlQcm9jZXNz
L1dlYkRhdGFiYXNlTWFuYWdlclByb3h5LmNwcDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViRGF0
YWJhc2VNYW5hZ2VyUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5h
Z2VyUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJEYXRhYmFzZU1hbmFnZXIuY3BwOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViRGF0YWJhc2VNYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9xdC9XZWJEYXRhYmFzZU1hbmFnZXJRdC5jcHA6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
czo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorCiAyMDEwLTEyLTE5ICBEYW4gQmVybnN0ZWluICA8bWl0
ekBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KZGlmZiAtLWdp
dCBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oIGIvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tBUElDYXN0LmgKaW5kZXggYjhmZmNjNC4uNDAyNTc1NCAxMDA2NDQKLS0tIGEv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKKysrIGIvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tBUElDYXN0LmgKQEAgLTQ3LDcgKzQ3LDkgQEAgY2xhc3MgV2ViQmFja0Zvcndh
cmRMaXN0OwogY2xhc3MgV2ViQmFja0ZvcndhcmRMaXN0SXRlbTsKIGNsYXNzIFdlYkNvbnRleHQ7
CiBjbGFzcyBXZWJDcmVkZW50aWFsOworI2lmIEVOQUJMRShEQVRBQkFTRSkKIGNsYXNzIFdlYkRh
dGFiYXNlTWFuYWdlclByb3h5OworI2VuZGlmCiBjbGFzcyBXZWJGb3JtU3VibWlzc2lvbkxpc3Rl
bmVyUHJveHk7CiBjbGFzcyBXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHk7CiBjbGFzcyBXZWJG
cmFtZVByb3h5OwpAQCAtNjYsNyArNjgsOSBAQCBXS19BRERfQVBJX01BUFBJTkcoV0tCYWNrRm9y
d2FyZExpc3RJdGVtUmVmLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVtKQogV0tfQUREX0FQSV9NQVBQ
SU5HKFdLQmFja0ZvcndhcmRMaXN0UmVmLCBXZWJCYWNrRm9yd2FyZExpc3QpCiBXS19BRERfQVBJ
X01BUFBJTkcoV0tDb250ZXh0UmVmLCBXZWJDb250ZXh0KQogV0tfQUREX0FQSV9NQVBQSU5HKFdL
Q3JlZGVudGlhbFJlZiwgV2ViQ3JlZGVudGlhbCkKKyNpZiBFTkFCTEUoREFUQUJBU0UpCiBXS19B
RERfQVBJX01BUFBJTkcoV0tEYXRhYmFzZU1hbmFnZXJSZWYsIFdlYkRhdGFiYXNlTWFuYWdlclBy
b3h5KQorI2VuZGlmCiBXS19BRERfQVBJX01BUFBJTkcoV0tEb3dubG9hZFJlZiwgRG93bmxvYWRQ
cm94eSkKIFdLX0FERF9BUElfTUFQUElORyhXS0Zvcm1TdWJtaXNzaW9uTGlzdGVuZXJSZWYsIFdl
YkZvcm1TdWJtaXNzaW9uTGlzdGVuZXJQcm94eSkKIFdLX0FERF9BUElfTUFQUElORyhXS0ZyYW1l
UG9saWN5TGlzdGVuZXJSZWYsIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eSkKZGlmZiAtLWdp
dCBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAgYi9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCmluZGV4IDdhNWVjNzAuLmZiZjEwYTIgMTAwNjQ0Ci0t
LSBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKKysrIGIvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApAQCAtMTUxLDcgKzE1MSw5IEBAIHZvaWQgV0tD
b250ZXh0Q2xlYXJBcHBsaWNhdGlvbkNhY2hlKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQogICAg
IHRvSW1wbChjb250ZXh0UmVmKS0+Y2xlYXJBcHBsaWNhdGlvbkNhY2hlKCk7CiB9CiAKKyNpZiBF
TkFCTEUoREFUQUJBU0UpCiBXS0RhdGFiYXNlTWFuYWdlclJlZiBXS0NvbnRleHRHZXREYXRhYmFz
ZU1hbmFnZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCiB7CiAgICAgcmV0dXJuIHRvQVBJKHRv
SW1wbChjb250ZXh0UmVmKS0+ZGF0YWJhc2VNYW5hZ2VyUHJveHkoKSk7CiB9CisjZW5kaWYKZGlm
ZiAtLWdpdCBhL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRGF0YWJhc2VNYW5hZ2VyLmNwcCBi
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRGF0YWJhc2VNYW5hZ2VyLmNwcAppbmRleCBiYzc4
OWExLi5mNzNiNTM4IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0RhdGFi
YXNlTWFuYWdlci5jcHAKKysrIGIvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tEYXRhYmFzZU1h
bmFnZXIuY3BwCkBAIC0yNSw2ICsyNSw4IEBACiAKICNpbmNsdWRlICJXS0RhdGFiYXNlTWFuYWdl
ci5oIgogCisjaWYgRU5BQkxFKERBVEFCQVNFKQorCiAjaW5jbHVkZSAiV2ViRGF0YWJhc2VNYW5h
Z2VyUHJveHkuaCIKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKIApAQCAtNjgsMyArNzAsNCBAQCB2
b2lkIFdLRGF0YWJhc2VNYW5hZ2VyRGVsZXRlQWxsRGF0YWJhc2VzKFdLRGF0YWJhc2VNYW5hZ2Vy
UmVmIGRhdGFiYXNlTWFuYWdlcikKICAgICB0b0ltcGwoZGF0YWJhc2VNYW5hZ2VyKS0+ZGVsZXRl
QWxsRGF0YWJhc2VzKCk7CiB9CiAKKyNlbmRpZiAvLyBFTkFCTEUoREFUQUJBU0UpCmRpZmYgLS1n
aXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0RhdGFiYXNlTWFuYWdlci5oIGIvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0MvV0tEYXRhYmFzZU1hbmFnZXIuaAppbmRleCA0YjczYzJhLi4xNTBh
Njc3IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0RhdGFiYXNlTWFuYWdl
ci5oCisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRGF0YWJhc2VNYW5hZ2VyLmgKQEAg
LTI2LDYgKzI2LDggQEAKICNpZm5kZWYgV0tEYXRhYmFzZU1hbmFnZXJfaAogI2RlZmluZSBXS0Rh
dGFiYXNlTWFuYWdlcl9oCiAKKyNpZiBFTkFCTEUoREFUQUJBU0UpCisKICNpbmNsdWRlIDxXZWJL
aXQyL1dLQmFzZS5oPgogCiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTQ4LDMgKzUwLDUgQEAgV0tf
RVhQT1JUIHZvaWQgV0tEYXRhYmFzZU1hbmFnZXJEZWxldGVBbGxEYXRhYmFzZXMoV0tEYXRhYmFz
ZU1hbmFnZXJSZWYgZGF0YWJhc2UKICNlbmRpZgogCiAjZW5kaWYgLy8gV0tEYXRhYmFzZU1hbmFn
ZXJfaAorCisjZW5kaWYgLy8gRU5BQkxFKERBVEFCQVNFKQpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViQ29udGV4dC5jcHAgYi9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNw
cAppbmRleCA3YmZmNzUyLi5lODAxMTc4IDEwMDY0NAotLS0gYS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJDb250ZXh0LmNwcAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcApAQCAt
ODUsNyArODUsOSBAQCBXZWJDb250ZXh0OjpXZWJDb250ZXh0KFByb2Nlc3NNb2RlbCBwcm9jZXNz
TW9kZWwsIGNvbnN0IFN0cmluZyYgaW5qZWN0ZWRCdW5kbGVQYQogICAgICwgbV9jYWNoZU1vZGVs
KENhY2hlTW9kZWxEb2N1bWVudFZpZXdlcikKICAgICAsIG1fY2xlYXJSZXNvdXJjZUNhY2hlc0Zv
ck5ld1dlYlByb2Nlc3MoZmFsc2UpCiAgICAgLCBtX2NsZWFyQXBwbGljYXRpb25DYWNoZUZvck5l
d1dlYlByb2Nlc3MoZmFsc2UpCisjaWYgRU5BQkxFKERBVEFCQVNFKQogICAgICwgbV9kYXRhYmFz
ZU1hbmFnZXJQcm94eShXZWJEYXRhYmFzZU1hbmFnZXJQcm94eTo6Y3JlYXRlKHRoaXMpKQorI2Vu
ZGlmCiAjaWYgUExBVEZPUk0oV0lOKQogICAgICwgbV9zaG91bGRQYWludE5hdGl2ZUNvbnRyb2xz
KHRydWUpCiAjZW5kaWYKQEAgLTIwOSw3ICsyMTEsOSBAQCB2b2lkIFdlYkNvbnRleHQ6OnByb2Nl
c3NEaWRDbG9zZShXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3MpCiAKICAgICBtX2Rvd25sb2Fkcy5j
bGVhcigpOwogCisjaWYgRU5BQkxFKERBVEFCQVNFKQogICAgIG1fZGF0YWJhc2VNYW5hZ2VyUHJv
eHktPmludmFsaWRhdGUoKTsKKyNlbmRpZgogCiAgICAgbV9wcm9jZXNzID0gMDsKIH0KQEAgLTQz
NiwxMCArNDQwLDEyIEBAIHZvaWQgV2ViQ29udGV4dDo6ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQ
Qzo6Q29ubmVjdGlvbiogY29ubmVjdGlvbiwgQ29yZUlQQzo6TWVzCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKKyNpZiBFTkFCTEUoREFUQUJBU0UpCiAgICAgaWYgKG1lc3NhZ2VJRC5pczxDb3Jl
SVBDOjpNZXNzYWdlQ2xhc3NXZWJEYXRhYmFzZU1hbmFnZXJQcm94eT4oKSkgewogICAgICAgICBt
X2RhdGFiYXNlTWFuYWdlclByb3h5LT5kaWRSZWNlaXZlV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHlN
ZXNzYWdlKGNvbm5lY3Rpb24sIG1lc3NhZ2VJRCwgYXJndW1lbnRzKTsKICAgICAgICAgcmV0dXJu
OwogICAgIH0KKyNlbmRpZgogCiAgICAgc3dpdGNoIChtZXNzYWdlSUQuZ2V0PFdlYkNvbnRleHRM
ZWdhY3lNZXNzYWdlOjpLaW5kPigpKSB7CiAgICAgICAgIGNhc2UgV2ViQ29udGV4dExlZ2FjeU1l
c3NhZ2U6OlBvc3RNZXNzYWdlOiB7CmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJD
b250ZXh0LmggYi9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKaW5kZXggODYwZTc3NS4u
YWY4NjFiOSAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCisrKyBi
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaApAQCAtNDUsNyArNDUsOSBAQAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIGNsYXNzIERvd25sb2FkUHJveHk7CisjaWYgRU5BQkxFKERBVEFCQVNF
KQogY2xhc3MgV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHk7CisjZW5kaWYKIGNsYXNzIFdlYlBhZ2VH
cm91cDsKIGNsYXNzIFdlYlBhZ2VQcm94eTsKIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzOwpAQCAtMTIwLDcgKzEyMiw5IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBIYXNoU2V0
PFN0cmluZywgQ2FzZUZvbGRpbmdIYXNoPiBwZGZBbmRQb3N0U2NyaXB0TUlNRVR5cGVzKCk7CiAK
KyNpZiBFTkFCTEUoREFUQUJBU0UpCiAgICAgV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkqIGRhdGFi
YXNlTWFuYWdlclByb3h5KCkgY29uc3QgeyByZXR1cm4gbV9kYXRhYmFzZU1hbmFnZXJQcm94eS5n
ZXQoKTsgfQorI2VuZGlmCiAKICAgICBzdHJ1Y3QgU3RhdGlzdGljcyB7CiAgICAgICAgIHVuc2ln
bmVkIHdrVmlld0NvdW50OwpAQCAtMTg3LDcgKzE5MSw5IEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X2NsZWFyUmVzb3VyY2VDYWNoZXNGb3JOZXdXZWJQcm9jZXNzOwogICAgIGJvb2wgbV9jbGVhckFw
cGxpY2F0aW9uQ2FjaGVGb3JOZXdXZWJQcm9jZXNzOwogCisjaWYgRU5BQkxFKERBVEFCQVNFKQog
ICAgIFJlZlB0cjxXZWJEYXRhYmFzZU1hbmFnZXJQcm94eT4gbV9kYXRhYmFzZU1hbmFnZXJQcm94
eTsKKyNlbmRpZgogCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIGJvb2wgbV9zaG91bGRQYWludE5h
dGl2ZUNvbnRyb2xzOwpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VN
YW5hZ2VyUHJveHkuY3BwIGIvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJv
eHkuY3BwCmluZGV4IDExNzU1ZGYuLmQ2NmJiN2MgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5LmNwcAorKysgYi9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJEYXRhYmFzZU1hbmFnZXJQcm94eS5jcHAKQEAgLTI1LDYgKzI1LDggQEAKIAogI2luY2x1ZGUg
IldlYkRhdGFiYXNlTWFuYWdlclByb3h5LmgiCiAKKyNpZiBFTkFCTEUoREFUQUJBU0UpCisKICNp
bmNsdWRlICJJbW11dGFibGVBcnJheS5oIgogI2luY2x1ZGUgIldlYkRhdGFiYXNlTWFuYWdlck1l
c3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViQ29udGV4dC5oIgpAQCAtOTUsMyArOTcsNCBAQCB2b2lk
IFdlYkRhdGFiYXNlTWFuYWdlclByb3h5OjpkZWxldGVBbGxEYXRhYmFzZXMoKQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKIAorI2VuZGlmIC8vIEVOQUJMRShEQVRBQkFTRSkKZGlmZiAtLWdpdCBh
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5LmggYi9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJEYXRhYmFzZU1hbmFnZXJQcm94eS5oCmluZGV4IDliOTEyYjkuLjcxNDhjNzYg
MTAwNjQ0Ci0tLSBhL1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5LmgK
KysrIGIvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuaApAQCAtMjYs
NiArMjYsOCBAQAogI2lmbmRlZiBXZWJEYXRhYmFzZU1hbmFnZXJQcm94eV9oCiAjZGVmaW5lIFdl
YkRhdGFiYXNlTWFuYWdlclByb3h5X2gKIAorI2lmIEVOQUJMRShEQVRBQkFTRSkKKwogI2luY2x1
ZGUgIkFQSU9iamVjdC5oIgogI2luY2x1ZGUgIkFyZ3VtZW50cy5oIgogI2luY2x1ZGUgIkdlbmVy
aWNDYWxsYmFjay5oIgpAQCAtNzYsMyArNzgsNSBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2Ug
V2ViS2l0CiAKICNlbmRpZiAvLyBEYXRhYmFzZU1hbmFnZXJQcm94eV9oCisKKyNlbmRpZiAvLyBF
TkFCTEUoREFUQUJBU0UpCmRpZmYgLS1naXQgYS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJEYXRhYmFz
ZU1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbiBiL1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNl
TWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IGQwZjQ1OWEuLmVhNmVkZmEgMTAwNjQ0Ci0t
LSBhL1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5Lm1lc3NhZ2VzLmlu
CisrKyBiL1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdlclByb3h5Lm1lc3NhZ2Vz
LmluCkBAIC0yMCw2ICsyMCw4IEBACiAjIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAKKyNpZiBFTkFCTEUoREFUQUJBU0UpCiBtZXNzYWdlcyAtPiBXZWJEYXRhYmFzZU1hbmFn
ZXJQcm94eSB7CiAgICAgRGlkR2V0RGF0YWJhc2VPcmlnaW5zKFZlY3RvcjxXVEY6OlN0cmluZz4g
b3JpZ2luSWRlbnRpZmllcnMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB9CisjZW5kaWYKZGlmZiAt
LWdpdCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFn
ZXIuY3BwIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNlTWFu
YWdlci5jcHAKaW5kZXggOTg0YjliMy4uYjM4YzdhOSAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNlTWFuYWdlci5jcHAKKysrIGIvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNlTWFuYWdlci5jcHAKQEAgLTI1
LDYgKzI1LDggQEAKIAogI2luY2x1ZGUgIldlYkRhdGFiYXNlTWFuYWdlci5oIgogCisjaWYgRU5B
QkxFKERBVEFCQVNFKQorCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk1lc3Nh
Z2VJRC5oIgogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgpAQCAtODEsMyArODMs
NCBAQCB2b2lkIFdlYkRhdGFiYXNlTWFuYWdlcjo6ZGVsZXRlQWxsRGF0YWJhc2VzKCkgY29uc3QK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisjZW5kaWYgLy8gRU5BQkxFKERBVEFCQVNFKQpk
aWZmIC0tZ2l0IGEvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNl
TWFuYWdlci5oIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNl
TWFuYWdlci5oCmluZGV4IGViMjM2MDEuLjQxYjA5NjggMTAwNjQ0Ci0tLSBhL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIuaAorKysgYi9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRGF0YWJhc2VNYW5hZ2VyLmgKQEAgLTMwLDYg
KzMwLDggQEAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIAorI2lmIEVOQUJMRShEQVRBQkFTRSkKKwogbmFtZXNwYWNlIENvcmVJ
UEMgewogY2xhc3MgQXJndW1lbnREZWNvZGVyOwogY2xhc3MgQ29ubmVjdGlvbjsKQEAgLTU5LDMg
KzYxLDUgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gV2Vi
RGF0YWJhc2VNYW5hZ2VyX2gKKworI2VuZGlmIC8vIEVOQUJMRShEQVRBQkFTRSkKZGlmZiAtLWdp
dCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIu
bWVzc2FnZXMuaW4gYi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRGF0YWJh
c2VNYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IDFhYWIzNzguLjFkYzRmNmYgMTAwNjQ0Ci0tLSBh
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIubWVz
c2FnZXMuaW4KKysrIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFi
YXNlTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMjAsOCArMjAsMTAgQEAKICMgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAorI2lmIEVOQUJMRShEQVRBQkFTRSkKIG1lc3NhZ2Vz
IC0+IFdlYkRhdGFiYXNlTWFuYWdlciB7CiAgICAgdm9pZCBHZXREYXRhYmFzZU9yaWdpbnModWlu
dDY0X3QgY2FsbGJhY2tJRCkKICAgICB2b2lkIERlbGV0ZURhdGFiYXNlc0Zvck9yaWdpbihXVEY6
OlN0cmluZyBvcmlnaW5JZGVudGlmaWVyKQogICAgIHZvaWQgRGVsZXRlQWxsRGF0YWJhc2VzKCkK
IH0KKyNlbmRpZiAvLyBFTkFCTEUoREFUQUJBU0UpCmRpZmYgLS1naXQgYS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvcXQvV2ViRGF0YWJhc2VNYW5hZ2VyUXQuY3BwIGIvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3F0L1dlYkRhdGFiYXNlTWFuYWdlclF0LmNwcApp
bmRleCAxMWY5MjljLi41YWQyODQ3IDEwMDY0NAotLS0gYS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvcXQvV2ViRGF0YWJhc2VNYW5hZ2VyUXQuY3BwCisrKyBiL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9xdC9XZWJEYXRhYmFzZU1hbmFnZXJRdC5jcHAKQEAgLTI1
LDYgKzI1LDggQEAKIAogI2luY2x1ZGUgIldlYkRhdGFiYXNlTWFuYWdlci5oIgogCisjaWYgRU5B
QkxFKERBVEFCQVNFKQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogU3RyaW5nIFdlYkRhdGFiYXNl
TWFuYWdlcjo6ZGF0YWJhc2VEaXJlY3RvcnkoKSBjb25zdApAQCAtMzQsMyArMzYsNCBAQCBTdHJp
bmcgV2ViRGF0YWJhc2VNYW5hZ2VyOjpkYXRhYmFzZURpcmVjdG9yeSgpIGNvbnN0CiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAorI2VuZGlmIC8vIEVOQUJMRShEQVRBQkFTRSkKZGlmZiAtLWdp
dCBhL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQcm9jZXNzLmNwcAppbmRleCA1NDUzNzQyLi5lMTQ2MTkyIDEwMDY0NAotLS0gYS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MuY3BwCkBAIC00OTIsMTAgKzQ5MiwxMiBAQCB2b2lkIFdlYlByb2Nlc3M6OmRpZFJl
Y2VpdmVNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qIGNvbm5lY3Rpb24sIENvcmVJUEM6Ok1l
cwogICAgICAgICByZXR1cm47CiAgICAgfQogCisjaWYgRU5BQkxFKERBVEFCQVNFKQogICAgIGlm
IChtZXNzYWdlSUQuaXM8Q29yZUlQQzo6TWVzc2FnZUNsYXNzV2ViRGF0YWJhc2VNYW5hZ2VyPigp
KSB7CiAgICAgICAgIFdlYkRhdGFiYXNlTWFuYWdlcjo6c2hhcmVkKCkuZGlkUmVjZWl2ZU1lc3Nh
Z2UoY29ubmVjdGlvbiwgbWVzc2FnZUlELCBhcmd1bWVudHMpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQorI2VuZGlmIC8vIEVOQUJMRShEQVRBQkFTRSkKIAogICAgIGlmIChtZXNzYWdlSUQuaXM8
Q29yZUlQQzo6TWVzc2FnZUNsYXNzSW5qZWN0ZWRCdW5kbGU+KCkpIHsKICAgICAgICAgaWYgKCFt
X2luamVjdGVkQnVuZGxlKQotLSAKMS42LjUKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>