<?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>122771</bug_id>
          
          <creation_ts>2013-10-14 12:06:17 -0700</creation_ts>
          <short_desc>Move TestRunner::setCacheModel to Window::Internals</short_desc>
          <delta_ts>2013-10-23 12:58:00 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>87284</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Andre Loureiro (IRC: loureiro)">andre.vl</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>afonso.costa</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gtk-ews</cc>
    
    <cc>m.morais</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>939586</commentid>
    <comment_count>0</comment_count>
    <who name="Andre Loureiro (IRC: loureiro)">andre.vl</who>
    <bug_when>2013-10-14 12:06:17 -0700</bug_when>
    <thetext>Since Mac, Efl, Win and Gtk ports implement this method we could move this to Internals.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941821</commentid>
    <comment_count>1</comment_count>
      <attachid>214732</attachid>
    <who name="Andre Loureiro (IRC: loureiro)">andre.vl</who>
    <bug_when>2013-10-21 06:12:05 -0700</bug_when>
    <thetext>Created attachment 214732
WIP Patch for EWS testing

Patch to check WIN build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941822</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-21 06:13:32 -0700</bug_when>
    <thetext>Attachment 214732 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/fast/dom/HTMLScriptElement/nested-execution.html&apos;, u&apos;LayoutTests/storage/domstorage/localstorage/close-idle-localstorage-databases-immediately.html&apos;, u&apos;LayoutTests/storage/domstorage/storage-close-database-on-idle.html&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/testing/Internals.cpp&apos;, u&apos;Source/WebCore/testing/Internals.h&apos;, u&apos;Source/WebCore/testing/Internals.idl&apos;, u&apos;Source/WebKit/gtk/ChangeLog&apos;, u&apos;Source/WebKit/gtk/webkit/webkitglobals.cpp&apos;, u&apos;Source/WebKit/gtk/webkit/webkitglobals.h&apos;, u&apos;Tools/ChangeLog&apos;, u&apos;Tools/DumpRenderTree/TestRunner.cpp&apos;, u&apos;Tools/DumpRenderTree/TestRunner.h&apos;, u&apos;Tools/DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp&apos;, u&apos;Tools/DumpRenderTree/efl/TestRunnerEfl.cpp&apos;, u&apos;Tools/DumpRenderTree/gtk/TestRunnerGtk.cpp&apos;, u&apos;Tools/DumpRenderTree/mac/TestRunnerMac.mm&apos;, u&apos;Tools/DumpRenderTree/win/TestRunnerWin.cpp&apos;]&quot; exit_code: 1
LayoutTests/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Tools/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Source/WebCore/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Source/WebKit/gtk/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Source/WebCore/testing/Internals.cpp:2095:  Omit int when using unsigned  [runtime/unsigned] [1]
Source/WebCore/testing/Internals.cpp:2096:  Omit int when using unsigned  [runtime/unsigned] [1]
Source/WebCore/testing/Internals.cpp:2097:  Omit int when using unsigned  [runtime/unsigned] [1]
Source/WebCore/testing/Internals.cpp:2099:  Omit int when using unsigned  [runtime/unsigned] [1]
Total errors found: 8 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941834</commentid>
    <comment_count>3</comment_count>
      <attachid>214732</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2013-10-21 07:10:15 -0700</bug_when>
    <thetext>Comment on attachment 214732
WIP Patch for EWS testing

Attachment 214732 did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/8858037</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941860</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-10-21 08:41:54 -0700</bug_when>
    <thetext>Cache model is a WebKit concept, not a WebCore one. I don&apos;t think that it makes sense to &quot;test&quot; it in WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941867</commentid>
    <comment_count>5</comment_count>
    <who name="Andre Loureiro (IRC: loureiro)">andre.vl</who>
    <bug_when>2013-10-21 09:14:15 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Cache model is a WebKit concept, not a WebCore one. I don&apos;t think that it makes sense to &quot;test&quot; it in WebCore.

Hi, I see, but don&apos;t you think that it could be be considered to move to internals since only gtk port implements this feature? if not, could you explain better this issue?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>941870</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-10-21 09:24:04 -0700</bug_when>
    <thetext>Why are you saying that only Gtk implements this? -[WebView setCacheModel:] is part of Mac WebKit1 API, and this is what&apos;s exposed through TestRunner. Looking at the patch, it changes Efl too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942103</commentid>
    <comment_count>7</comment_count>
      <attachid>214732</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-10-21 17:24:25 -0700</bug_when>
    <thetext>Comment on attachment 214732
WIP Patch for EWS testing

Attachment 214732 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/8878166</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942664</commentid>
    <comment_count>8</comment_count>
    <who name="Andre Loureiro (IRC: loureiro)">andre.vl</who>
    <bug_when>2013-10-23 06:38:54 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Why are you saying that only Gtk implements this? -[WebView setCacheModel:] is part of Mac WebKit1 API, and this is what&apos;s exposed through TestRunner. Looking at the patch, it changes Efl too.

Hi Alexey,
Yes you are right, but what I&apos;d like to say is, besides Mac port others ports has implementation to this method, for example, Gtk and EFL as well, so according with http://trac.webkit.org/wiki/Internals_Hackathon I thought that this method could be considered to move to Internals (just to reduce duplicated code), as I did in this other issue here https://bugs.webkit.org/show_bug.cgi?id=84398. Although, as you said before, cache model is a webkit concept and not a webcore concept, then my question is, which methods could be considered to move to Internals according the Internals Hackathon?

Thanks in advance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942740</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-10-23 10:44:05 -0700</bug_when>
    <thetext>One way to look at this is that we considered doing so in this bug, and decided against doing so. If you agree, you can just remove the suggestion from the wiki page, referencing this bug in a history comment.

There is no hard rule - as the obvious things were already moved to internals, moving anything else probably reduces test coverage on platforms that expose the functionality as WebKit API, but at the same time it also reduced code duplication between ports. In a case like this, where it&apos;s conceptually a WebKit feature anyway, I think that it&apos;s better to keep going through API where one exists.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942779</commentid>
    <comment_count>10</comment_count>
    <who name="Andre Loureiro (IRC: loureiro)">andre.vl</who>
    <bug_when>2013-10-23 12:19:27 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; One way to look at this is that we considered doing so in this bug, and decided against doing so. If you agree, you can just remove the suggestion from the wiki page, referencing this bug in a history comment.

Agreed, I can update the wiki and refer this bug there, by the way, could you help me in update the wiki with bugs related to Internals, for example this bug https://bugs.webkit.org/show_bug.cgi?id=84395 do you think it is valid to move to internals?
 
&gt; There is no hard rule - as the obvious things were already moved to internals, moving anything else probably reduces test coverage on platforms that expose the functionality as WebKit API, but at the same time it also reduced code duplication between ports. In a case like this, where it&apos;s conceptually a WebKit feature anyway, I think that it&apos;s better to keep going through API where one exists.

Ok, I&apos;ll mark this bug as won&apos;t fix.

Thanks in advance</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214732</attachid>
            <date>2013-10-21 06:12:05 -0700</date>
            <delta_ts>2013-10-21 17:24:25 -0700</delta_ts>
            <desc>WIP Patch for EWS testing</desc>
            <filename>0001-wip.patch</filename>
            <type>text/plain</type>
            <size>23243</size>
            <attacher name="Andre Loureiro (IRC: loureiro)">andre.vl</attacher>
            
              <data encoding="base64">RnJvbSBkNDhkOGIzYzZlYTM1OWFhZjQ0Yzc4ODljZWNjZWNmYmE1NzRlZTY2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZSBMb3VyZWlybyA8YW5kcmUudmxAc2Ftc3VuZy5jb20+
CkRhdGU6IEZyaSwgMTggT2N0IDIwMTMgMTc6MTk6MzIgLTA0MDAKU3ViamVjdDogW1BBVENIXSB3
aXAgTmVlZCB0aGUgYnVnIFVSTCAoT09QUyEpLgoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CgpTb3VyY2UvV2ViQ29yZToKCk5vIG5ldyB0ZXN0cyAoT09QUyEpLgoKKiB0ZXN0aW5nL0ludGVy
bmFscy5jcHA6CihXZWJDb3JlOjpJbnRlcm5hbHM6OnNldENhY2hlTW9kZWwpOgoqIHRlc3Rpbmcv
SW50ZXJuYWxzLmg6CiogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgoKU291cmNlL1dlYktpdC9ndGs6
CgoqIHdlYmtpdC93ZWJraXRnbG9iYWxzLmNwcDoKKiB3ZWJraXQvd2Via2l0Z2xvYmFscy5oOgoK
VG9vbHM6CgoqIER1bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuY3BwOgooVGVzdFJ1bm5lcjo6c3Rh
dGljRnVuY3Rpb25zKToKKiBEdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmg6CiogRHVtcFJlbmRl
clRyZWUvYmxhY2tiZXJyeS9UZXN0UnVubmVyQmxhY2tCZXJyeS5jcHA6CiogRHVtcFJlbmRlclRy
ZWUvZWZsL1Rlc3RSdW5uZXJFZmwuY3BwOgoqIER1bXBSZW5kZXJUcmVlL2d0ay9UZXN0UnVubmVy
R3RrLmNwcDoKKiBEdW1wUmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbToKKiBEdW1wUmVu
ZGVyVHJlZS93aW4vVGVzdFJ1bm5lcldpbi5jcHA6CgpMYXlvdXRUZXN0czoKCiogZmFzdC9kb20v
SFRNTFNjcmlwdEVsZW1lbnQvbmVzdGVkLWV4ZWN1dGlvbi5odG1sOgoqIHN0b3JhZ2UvZG9tc3Rv
cmFnZS9sb2NhbHN0b3JhZ2UvY2xvc2UtaWRsZS1sb2NhbHN0b3JhZ2UtZGF0YWJhc2VzLWltbWVk
aWF0ZWx5Lmh0bWw6Ciogc3RvcmFnZS9kb21zdG9yYWdlL3N0b3JhZ2UtY2xvc2UtZGF0YWJhc2Ut
b24taWRsZS5odG1sOgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgMTEgKysrCiAuLi4vZG9tL0hUTUxTY3JpcHRFbGVtZW50L25lc3RlZC1l
eGVjdXRpb24uaHRtbCAgICB8ICA0ICstCiAuLi5zZS1pZGxlLWxvY2Fsc3RvcmFnZS1kYXRhYmFz
ZXMtaW1tZWRpYXRlbHkuaHRtbCB8ICA0ICstCiAuLi4vZG9tc3RvcmFnZS9zdG9yYWdlLWNsb3Nl
LWRhdGFiYXNlLW9uLWlkbGUuaHRtbCB8ICAzICstCiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
ICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE0ICsrKysKIFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCAgICAgICAgICAgICAgIHwgNDMgKysrKysrKysrKwogU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCAgICAgICAgICAgICAgICAgfCAgMSArCiBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgICAgICAgICAgICAgICB8ICAyICsKIFNvdXJj
ZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgMTAgKysrCiBT
b3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0Z2xvYmFscy5jcHAgICAgICAgICB8IDk3IC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIFNvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXRnbG9i
YWxzLmggICAgICAgICAgIHwgIDYgLS0KIFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgMTYgKysrKwogVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdFJ1
bm5lci5jcHAgICAgICAgICAgICAgICAgfCAxNiAtLS0tCiBUb29scy9EdW1wUmVuZGVyVHJlZS9U
ZXN0UnVubmVyLmggICAgICAgICAgICAgICAgICB8ICAxIC0KIC4uLi9ibGFja2JlcnJ5L1Rlc3RS
dW5uZXJCbGFja0JlcnJ5LmNwcCAgICAgICAgICAgIHwgIDUgLS0KIFRvb2xzL0R1bXBSZW5kZXJU
cmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcCAgICAgICAgIHwgNDggLS0tLS0tLS0tLS0KIFRvb2xz
L0R1bXBSZW5kZXJUcmVlL2d0ay9UZXN0UnVubmVyR3RrLmNwcCAgICAgICAgIHwgMTggLS0tLQog
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0gICAgICAgICAgfCAgNSAt
LQogVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL1Rlc3RSdW5uZXJXaW4uY3BwICAgICAgICAgfCAg
NSAtLQogMTkgZmlsZXMgY2hhbmdlZCwgMTAzIGluc2VydGlvbnMoKyksIDIwNiBkZWxldGlvbnMo
LSkKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggY2Y1MjdmZC4uNmJjM2QyNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEz
LTEwLTE4ICBBbmRyZSBMb3VyZWlybyAgPGFuZHJlLnZsQHNhbXN1bmcuY29tPgorCisgICAgICAg
IE5lZWQgYSBzaG9ydCBkZXNjcmlwdGlvbiAoT09QUyEpLgorICAgICAgICBOZWVkIHRoZSBidWcg
VVJMIChPT1BTISkuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L2RvbS9IVE1MU2NyaXB0RWxlbWVudC9uZXN0ZWQtZXhlY3V0aW9uLmh0bWw6
CisgICAgICAgICogc3RvcmFnZS9kb21zdG9yYWdlL2xvY2Fsc3RvcmFnZS9jbG9zZS1pZGxlLWxv
Y2Fsc3RvcmFnZS1kYXRhYmFzZXMtaW1tZWRpYXRlbHkuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdl
L2RvbXN0b3JhZ2Uvc3RvcmFnZS1jbG9zZS1kYXRhYmFzZS1vbi1pZGxlLmh0bWw6CisKIDIwMTMt
MTAtMTggIEppbndvbyBTb25nICA8amlud29vNy5zb25nQHNhbXN1bmcuY29tPgogCiAgICAgICAg
IFVucmV2aWV3ZWQgRUZMIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL0hUTUxTY3JpcHRFbGVtZW50L25lc3RlZC1leGVjdXRpb24uaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL0hUTUxTY3JpcHRFbGVtZW50L25lc3RlZC1leGVjdXRpb24uaHRtbAppbmRleCA0
MTBlNjYwLi5kMzg3OWQ4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MU2Ny
aXB0RWxlbWVudC9uZXN0ZWQtZXhlY3V0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTFNjcmlwdEVsZW1lbnQvbmVzdGVkLWV4ZWN1dGlvbi5odG1sCkBAIC0yMSw4ICsyMSw4
IEBACiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgY2FuUGFzcyA9IHRydWU7CiAK
LSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLnNldENhY2hlTW9kZWwoMCk7IC8vIFdlYkNhY2hlTW9kZWxEb2N1bWVudFZpZXdlcgor
ICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAgICAgaW50ZXJu
YWxzLnNldENhY2hlTW9kZWwoMCk7IC8vIFdlYkNhY2hlTW9kZWxEb2N1bWVudFZpZXdlcgogICAg
ICAgICB9CiAgICAgPC9zY3JpcHQ+CiA8L2hlYWQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL2Nsb3NlLWlkbGUtbG9jYWxzdG9yYWdlLWRh
dGFiYXNlcy1pbW1lZGlhdGVseS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdl
L2xvY2Fsc3RvcmFnZS9jbG9zZS1pZGxlLWxvY2Fsc3RvcmFnZS1kYXRhYmFzZXMtaW1tZWRpYXRl
bHkuaHRtbAppbmRleCA0Y2M2ODFlLi4wYTJiZTNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2RvbXN0b3JhZ2UvbG9jYWxzdG9yYWdlL2Nsb3NlLWlkbGUtbG9jYWxzdG9yYWdlLWRh
dGFiYXNlcy1pbW1lZGlhdGVseS5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvZG9tc3Rv
cmFnZS9sb2NhbHN0b3JhZ2UvY2xvc2UtaWRsZS1sb2NhbHN0b3JhZ2UtZGF0YWJhc2VzLWltbWVk
aWF0ZWx5Lmh0bWwKQEAgLTE0LDggKzE0LDggQEAgZnVuY3Rpb24gbG9hZE5leHRQYWdlKCkKIAog
ZnVuY3Rpb24gcnVuVGVzdCgpCiB7Ci0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAg
ICAgIHRlc3RSdW5uZXIuc2V0Q2FjaGVNb2RlbCgwKTsgLy8gV2ViQ2FjaGVNb2RlbERvY3VtZW50
Vmlld2VyLgorICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAgIGludGVybmFscy5z
ZXRDYWNoZU1vZGVsKDApOyAvLyBXZWJDYWNoZU1vZGVsRG9jdW1lbnRWaWV3ZXIuCiAgICAgfQog
CiAgICAgLy8gVGVzdCB0byBtYWtlIHN1cmUgdGhlIHN0b3JhZ2UgdmFsdWVzIGRvbid0IGNoYW5n
ZSBhZnRlciB0aGUgZGF0YWJhc2UgaXMgY2xvc2VkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3RvcmFnZS9kb21zdG9yYWdlL3N0b3JhZ2UtY2xvc2UtZGF0YWJhc2Utb24taWRsZS5odG1sIGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9kb21zdG9yYWdlL3N0b3JhZ2UtY2xvc2UtZGF0YWJhc2Utb24t
aWRsZS5odG1sCmluZGV4IDAzYTc2ZGEuLjBlNmRhNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvZG9tc3RvcmFnZS9zdG9yYWdlLWNsb3NlLWRhdGFiYXNlLW9uLWlkbGUuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2RvbXN0b3JhZ2Uvc3RvcmFnZS1jbG9zZS1kYXRhYmFz
ZS1vbi1pZGxlLmh0bWwKQEAgLTIxLDcgKzIxLDggQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiB7CiAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RvcmFn
ZURhdGFiYXNlSWRsZUludGVydmFsKDApOwotICAgICAgICB0ZXN0UnVubmVyLnNldENhY2hlTW9k
ZWwoMCk7IC8vIFdlYkNhY2hlTW9kZWxEb2N1bWVudFZpZXdlci4KKyAgICAgICAgaWYgKHdpbmRv
dy5pbnRlcm5hbHMpCisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0Q2FjaGVNb2RlbCgwKTsgLy8g
V2ViQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyLgogICAgIH0KIAogICAgIC8vIFRlc3QgdG8gbWFr
ZSBzdXJlIHRoZSBzdG9yYWdlIHZhbHVlcyBkb24ndCBjaGFuZ2UgYWZ0ZXIgdGhlIGRhdGFiYXNl
IGlzIGNsb3NlZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MzU0NDY5Li5hNDA3MzIwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTMtMTAtMTggIEFuZHJlIExvdXJlaXJvICA8YW5kcmUudmxAc2Ft
c3VuZy5jb20+CisKKyAgICAgICAgTmVlZCBhIHNob3J0IGRlc2NyaXB0aW9uIChPT1BTISkuCisg
ICAgICAgIE5lZWQgdGhlIGJ1ZyBVUkwgKE9PUFMhKS4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAg
ICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6
c2V0Q2FjaGVNb2RlbCk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFscy5pZGw6CisKIDIwMTMtMTAtMTggIERlbmlzIE5vbWl5YW1hICA8
ZC5ub21peWFtYUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbQVRLXSBGaXggaW52YWxpZCBzaWdu
YWwgdG8gc2V0IG9iamVjdHMgdG8gYW4gdW5rbm93biBzdGF0ZSAibGF5b3V0LWNvbXBsZXRlIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDVmZGY2ODMuLjc5NmFhMTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTcyLDYgKzcyLDcgQEAKICNpbmNs
dWRlICJNZW1vcnlDYWNoZS5oIgogI2luY2x1ZGUgIk1lbW9yeUluZm8uaCIKICNpbmNsdWRlICJQ
YWdlLmgiCisjaW5jbHVkZSAiUGFnZUNhY2hlLmgiCiAjaW5jbHVkZSAiUHJpbnRDb250ZXh0Lmgi
CiAjaW5jbHVkZSAiUHNldWRvRWxlbWVudC5oIgogI2luY2x1ZGUgIlJhbmdlLmgiCkBAIC0yMDg5
LDQgKzIwOTAsNDYgQEAgYm9vbCBJbnRlcm5hbHM6OmlzUGx1Z2luVW5hdmFpbGFiaWxpdHlJbmRp
Y2F0b3JPYnNjdXJlZChFbGVtZW50KiBlbGVtZW50LCBFeGNlcHQKICAgICByZXR1cm4gZW1iZWQt
PmlzUmVwbGFjZW1lbnRPYnNjdXJlZCgpOwogfQogCit2b2lkIEludGVybmFsczo6c2V0Q2FjaGVN
b2RlbChpbnQgY2FjaGVNb2RlbCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgdW5zaWduZWQg
aW50IGNhY2hlVG90YWxDYXBhY2l0eTsKKyAgICB1bnNpZ25lZCBpbnQgY2FjaGVNaW5EZWFkQ2Fw
YWNpdHk7CisgICAgdW5zaWduZWQgaW50IGNhY2hlTWF4RGVhZENhcGFjaXR5OworICAgIGRvdWJs
ZSBkZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFsOworICAgIHVuc2lnbmVkIGludCBwYWdl
Q2FjaGVDYXBhY2l0eTsKKworICAgIHN3aXRjaCAoY2FjaGVNb2RlbCkgeworICAgIGNhc2UgMCAv
KiBXZWJDYWNoZU1vZGVsRG9jdW1lbnRWaWV3ZXIgKi86CisgICAgICAgIHBhZ2VDYWNoZUNhcGFj
aXR5ID0gMDsKKyAgICAgICAgY2FjaGVUb3RhbENhcGFjaXR5ID0gMDsKKyAgICAgICAgY2FjaGVN
aW5EZWFkQ2FwYWNpdHkgPSAwOworICAgICAgICBjYWNoZU1heERlYWRDYXBhY2l0eSA9IDA7Cisg
ICAgICAgIGRlYWREZWNvZGVkRGF0YURlbGV0aW9uSW50ZXJ2YWwgPSAwOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIDEgLyogV2ViQ2FjaGVNb2RlbERvY3VtZW50QnJvd3NlciAqLzoKKyAgICAg
ICAgcGFnZUNhY2hlQ2FwYWNpdHkgPSAyOworICAgICAgICBjYWNoZVRvdGFsQ2FwYWNpdHkgPSAx
NiAqIDEwMjQgKiAxMDI0OworICAgICAgICBjYWNoZU1pbkRlYWRDYXBhY2l0eSA9IGNhY2hlVG90
YWxDYXBhY2l0eSAvIDg7CisgICAgICAgIGNhY2hlTWF4RGVhZENhcGFjaXR5ID0gY2FjaGVUb3Rh
bENhcGFjaXR5IC8gNDsKKyAgICAgICAgZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbCA9
IDA7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgMiAvKiBXZWJDYWNoZU1vZGVsUHJpbWFyeVdl
YkJyb3dzZXIgKi86CisgICAgICAgIHBhZ2VDYWNoZUNhcGFjaXR5ID0gMzsKKyAgICAgICAgY2Fj
aGVUb3RhbENhcGFjaXR5ID0gMzIgKiAxMDI0ICogMTAyNDsKKyAgICAgICAgY2FjaGVNaW5EZWFk
Q2FwYWNpdHkgPSBjYWNoZVRvdGFsQ2FwYWNpdHkgLyA0OworICAgICAgICBjYWNoZU1heERlYWRD
YXBhY2l0eSA9IGNhY2hlVG90YWxDYXBhY2l0eSAvIDI7CisgICAgICAgIGRlYWREZWNvZGVkRGF0
YURlbGV0aW9uSW50ZXJ2YWwgPSA2MDsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAg
ICAgICAgZWMgPSBJTlZBTElEX0FDQ0VTU19FUlI7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBib29sIGRpc2FibGVDYWNoZSA9ICFjYWNoZU1pbkRlYWRDYXBhY2l0eSAmJiAhY2FjaGVN
YXhEZWFkQ2FwYWNpdHkgJiYgIWNhY2hlVG90YWxDYXBhY2l0eTsKKyAgICBtZW1vcnlDYWNoZSgp
LT5zZXREaXNhYmxlZChkaXNhYmxlQ2FjaGUpOworICAgIG1lbW9yeUNhY2hlKCktPnNldENhcGFj
aXRpZXMoY2FjaGVNaW5EZWFkQ2FwYWNpdHksIGNhY2hlTWF4RGVhZENhcGFjaXR5LCBjYWNoZVRv
dGFsQ2FwYWNpdHkpOworICAgIG1lbW9yeUNhY2hlKCktPnNldERlYWREZWNvZGVkRGF0YURlbGV0
aW9uSW50ZXJ2YWwoZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbCk7CisgICAgcGFnZUNh
Y2hlKCktPnNldENhcGFjaXR5KHBhZ2VDYWNoZUNhcGFjaXR5KTsKK30KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggOTBhYWFiMS4uYjE1OTdmOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oCkBAIC0zMTgsNiArMzE4LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAg
ICBib29sIGlzUGx1Z2luVW5hdmFpbGFiaWxpdHlJbmRpY2F0b3JPYnNjdXJlZChFbGVtZW50Kiwg
RXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgc2V0Q2FjaGVNb2RlbChpbnQgY2FjaGVNb2RlbCwg
RXhjZXB0aW9uQ29kZSYpOwogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhEb2N1
bWVudCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRs
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGJhYTQxYzUuLmE0
ZjIxNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTI3Miw0ICsyNzIs
NiBAQAogICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gaXNQbHVnaW5VbmF2YWlsYWJpbGl0
eUluZGljYXRvck9ic2N1cmVkKEVsZW1lbnQgZWxlbWVudCk7CiAKICAgICBbUmFpc2VzRXhjZXB0
aW9uXSBDbGllbnRSZWN0IHNlbGVjdGlvbkJvdW5kcygpOworCisgICAgW1JhaXNlc0V4Y2VwdGlv
bl0gdm9pZCBzZXRDYWNoZU1vZGVsKGxvbmcgY2FjaGVNb2RlbCk7CiB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9n
CmluZGV4IDBlNGUxOGQzLi5hM2M2NjU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTMtMTAtMTggIEFuZHJlIExvdXJlaXJvICA8YW5kcmUudmxAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgTmVlZCBhIHNob3J0IGRlc2NyaXB0aW9uIChPT1BTISkuCisgICAgICAgIE5lZWQg
dGhlIGJ1ZyBVUkwgKE9PUFMhKS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHdlYmtpdC93ZWJraXRnbG9iYWxzLmNwcDoKKyAgICAgICAgKiB3ZWJr
aXQvd2Via2l0Z2xvYmFscy5oOgorCiAyMDEzLTEwLTE3ICBBbmRyZWFzIEtsaW5nICA8YWtsaW5n
QGFwcGxlLmNvbT4KIAogICAgICAgICBNYXNzYWdlIHRoZSBHdGsgYnVpbGQuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0Z2xvYmFscy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2d0ay93ZWJraXQvd2Via2l0Z2xvYmFscy5jcHAKaW5kZXggMmNiNWJlNS4uZWE0NDJhMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdGdsb2JhbHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXRnbG9iYWxzLmNwcApAQCAtMjcsOSAr
MjcsNyBAQAogI2luY2x1ZGUgIkZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuaCIKICNpbmNsdWRl
ICJJY29uRGF0YWJhc2UuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCi0jaW5jbHVkZSAiTWVtb3J5
Q2FjaGUuaCIKICNpbmNsdWRlICJQYWdlLmgiCi0jaW5jbHVkZSAiUGFnZUNhY2hlLmgiCiAjaW5j
bHVkZSAiUGFnZUdyb3VwLmgiCiAjaW5jbHVkZSAiUGFzdGVib2FyZC5oIgogI2luY2x1ZGUgIlBh
c3RlYm9hcmRIZWxwZXJHdGsuaCIKQEAgLTg3LDEwMSArODUsNiBAQCBTb3VwU2Vzc2lvbiogd2Vi
a2l0X2dldF9kZWZhdWx0X3Nlc3Npb24gKCkKIH0KIAogLyoqCi0gKiB3ZWJraXRfc2V0X2NhY2hl
X21vZGVsOgotICogQGNhY2hlX21vZGVsOiBhICNXZWJLaXRDYWNoZU1vZGVsCi0gKgotICogU3Bl
Y2lmaWVzIGEgdXNhZ2UgbW9kZWwgZm9yIFdlYlZpZXdzLCB3aGljaCBXZWJLaXQgd2lsbCB1c2Ug
dG8KLSAqIGRldGVybWluZSBpdHMgY2FjaGluZyBiZWhhdmlvci4gQWxsIHdlYiB2aWV3cyBmb2xs
b3cgdGhlIGNhY2hlCi0gKiBtb2RlbC4gVGhpcyBjYWNoZSBtb2RlbCBkZXRlcm1pbmVzIHRoZSBS
QU0gYW5kIGRpc2sgc3BhY2UgdG8gdXNlCi0gKiBmb3IgY2FjaGluZyBwcmV2aW91c2x5IHZpZXdl
ZCBjb250ZW50IC4KLSAqCi0gKiBSZXNlYXJjaCBpbmRpY2F0ZXMgdGhhdCB1c2VycyB0ZW5kIHRv
IGJyb3dzZSB3aXRoaW4gY2x1c3RlcnMgb2YKLSAqIGRvY3VtZW50cyB0aGF0IGhvbGQgcmVzb3Vy
Y2VzIGluIGNvbW1vbiwgYW5kIHRvIHJldmlzaXQgcHJldmlvdXNseQotICogdmlzaXRlZCBkb2N1
bWVudHMuIFdlYktpdCBhbmQgdGhlIGZyYW1ld29ya3MgYmVsb3cgaXQgaW5jbHVkZQotICogYnVp
bHQtaW4gY2FjaGVzIHRoYXQgdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlc2UgcGF0dGVybnMsCi0gKiBz
dWJzdGFudGlhbGx5IGltcHJvdmluZyBkb2N1bWVudCBsb2FkIHNwZWVkIGluIGJyb3dzaW5nCi0g
KiBzaXR1YXRpb25zLiBUaGUgV2ViS2l0IGNhY2hlIG1vZGVsIGNvbnRyb2xzIHRoZSBiZWhhdmlv
cnMgb2YgYWxsIG9mCi0gKiB0aGVzZSBjYWNoZXMsIGluY2x1ZGluZyB2YXJpb3VzIFdlYkNvcmUg
Y2FjaGVzLgotICoKLSAqIEJyb3dzZXJzIGNhbiBpbXByb3ZlIGRvY3VtZW50IGxvYWQgc3BlZWQg
c3Vic3RhbnRpYWxseSBieQotICogc3BlY2lmeWluZyBXRUJLSVRfQ0FDSEVfTU9ERUxfV0VCX0JS
T1dTRVIuIEFwcGxpY2F0aW9ucyB3aXRob3V0IGEKLSAqIGJyb3dzaW5nIGludGVyZmFjZSBjYW4g
cmVkdWNlIG1lbW9yeSB1c2FnZSBzdWJzdGFudGlhbGx5IGJ5Ci0gKiBzcGVjaWZ5aW5nIFdFQktJ
VF9DQUNIRV9NT0RFTF9ET0NVTUVOVF9WSUVXRVIuIERlZmF1bHQgdmFsdWUgaXMKLSAqIFdFQktJ
VF9DQUNIRV9NT0RFTF9XRUJfQlJPV1NFUi4KLSAqCi0gKiBTaW5jZTogMS4xLjE4Ci0gKi8KLXZv
aWQgd2Via2l0X3NldF9jYWNoZV9tb2RlbChXZWJLaXRDYWNoZU1vZGVsIG1vZGVsKQotewotICAg
IHdlYmtpdEluaXQoKTsKLQotICAgIGlmIChjYWNoZU1vZGVsID09IG1vZGVsKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICAvLyBGSVhNRTogQWRkIGRpc2sgY2FjaGUgaGFuZGxpbmcgd2hlbiBzb3Vw
IGhhcyB0aGUgQVBJCi0gICAgZ3VpbnQgY2FjaGVUb3RhbENhcGFjaXR5OwotICAgIGd1aW50IGNh
Y2hlTWluRGVhZENhcGFjaXR5OwotICAgIGd1aW50IGNhY2hlTWF4RGVhZENhcGFjaXR5OwotICAg
IGdkb3VibGUgZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbDsKLSAgICBndWludCBwYWdl
Q2FjaGVDYXBhY2l0eTsKLQotICAgIC8vIEZJWE1FOiBUaGUgTWFjIHBvcnQgY2FsY3VsYXRlcyB0
aGVzZSB2YWx1ZXMgYmFzZWQgb24gdGhlIGFtb3VudCBvZiBwaHlzaWNhbCBtZW1vcnkgdGhhdCdz
Ci0gICAgLy8gaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0uIEN1cnJlbnRseSB0aGVzZSB2YWx1ZXMg
bWF0Y2ggdGhlIE1hYyBwb3J0IGZvciB1c2VycyB3aXRoIG1vcmUgdGhhbgotICAgIC8vIDUxMiBN
QiBhbmQgbGVzcyB0aGFuIDEwMjQgTUIgb2YgcGh5c2ljYWwgbWVtb3J5LgotICAgIHN3aXRjaCAo
bW9kZWwpIHsKLSAgICBjYXNlIFdFQktJVF9DQUNIRV9NT0RFTF9ET0NVTUVOVF9WSUVXRVI6Ci0g
ICAgICAgIHBhZ2VDYWNoZUNhcGFjaXR5ID0gMDsKLSAgICAgICAgY2FjaGVUb3RhbENhcGFjaXR5
ID0gMDsgLy8gRklYTUU6IFRoZSBNYWMgcG9ydCBhY3R1YWxseSBzZXRzIHRoaXMgdG8gbGFyZ2Vy
IHRoYW4gMC4KLSAgICAgICAgY2FjaGVNaW5EZWFkQ2FwYWNpdHkgPSAwOwotICAgICAgICBjYWNo
ZU1heERlYWRDYXBhY2l0eSA9IDA7Ci0gICAgICAgIGRlYWREZWNvZGVkRGF0YURlbGV0aW9uSW50
ZXJ2YWwgPSAwOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdFQktJVF9DQUNIRV9NT0RFTF9E
T0NVTUVOVF9CUk9XU0VSOgotICAgICAgICBwYWdlQ2FjaGVDYXBhY2l0eSA9IDI7Ci0gICAgICAg
IGNhY2hlVG90YWxDYXBhY2l0eSA9IDE2ICogMTAyNCAqIDEwMjQ7Ci0gICAgICAgIGNhY2hlTWlu
RGVhZENhcGFjaXR5ID0gY2FjaGVUb3RhbENhcGFjaXR5IC8gODsKLSAgICAgICAgY2FjaGVNYXhE
ZWFkQ2FwYWNpdHkgPSBjYWNoZVRvdGFsQ2FwYWNpdHkgLyA0OwotICAgICAgICBkZWFkRGVjb2Rl
ZERhdGFEZWxldGlvbkludGVydmFsID0gMDsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXRUJL
SVRfQ0FDSEVfTU9ERUxfV0VCX0JST1dTRVI6Ci0gICAgICAgIC8vIFBhZ2UgY2FjaGUgY2FwYWNp
dHkgKGluIHBhZ2VzKS4gQ29tbWVudCBmcm9tIE1hYyBwb3J0OgotICAgICAgICAvLyAoUmVzZWFy
Y2ggaW5kaWNhdGVzIHRoYXQgdmFsdWUgLyBwYWdlIGRyb3BzIHN1YnN0YW50aWFsbHkgYWZ0ZXIg
MyBwYWdlcy4pCi0gICAgICAgIHBhZ2VDYWNoZUNhcGFjaXR5ID0gMzsKLSAgICAgICAgY2FjaGVU
b3RhbENhcGFjaXR5ID0gMzIgKiAxMDI0ICogMTAyNDsKLSAgICAgICAgY2FjaGVNaW5EZWFkQ2Fw
YWNpdHkgPSBjYWNoZVRvdGFsQ2FwYWNpdHkgLyA0OwotICAgICAgICBjYWNoZU1heERlYWRDYXBh
Y2l0eSA9IGNhY2hlVG90YWxDYXBhY2l0eSAvIDI7Ci0gICAgICAgIGRlYWREZWNvZGVkRGF0YURl
bGV0aW9uSW50ZXJ2YWwgPSA2MDsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAg
ICAgZ19yZXR1cm5faWZfcmVhY2hlZCgpOwotICAgIH0KLQotICAgIGJvb2wgZGlzYWJsZUNhY2hl
ID0gIWNhY2hlTWluRGVhZENhcGFjaXR5ICYmICFjYWNoZU1heERlYWRDYXBhY2l0eSAmJiAhY2Fj
aGVUb3RhbENhcGFjaXR5OwotICAgIG1lbW9yeUNhY2hlKCktPnNldERpc2FibGVkKGRpc2FibGVD
YWNoZSk7Ci0gICAgbWVtb3J5Q2FjaGUoKS0+c2V0Q2FwYWNpdGllcyhjYWNoZU1pbkRlYWRDYXBh
Y2l0eSwgY2FjaGVNYXhEZWFkQ2FwYWNpdHksIGNhY2hlVG90YWxDYXBhY2l0eSk7Ci0gICAgbWVt
b3J5Q2FjaGUoKS0+c2V0RGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbChkZWFkRGVjb2Rl
ZERhdGFEZWxldGlvbkludGVydmFsKTsKLSAgICBwYWdlQ2FjaGUoKS0+c2V0Q2FwYWNpdHkocGFn
ZUNhY2hlQ2FwYWNpdHkpOwotICAgIGNhY2hlTW9kZWwgPSBtb2RlbDsKLX0KLQotLyoqCi0gKiB3
ZWJraXRfZ2V0X2NhY2hlX21vZGVsOgotICoKLSAqIFJldHVybnMgdGhlIGN1cnJlbnQgY2FjaGUg
bW9kZWwuIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoaXMKLSAqIHZhbHVlIGNoZWNrIHRo
ZSBkb2N1bWVudGF0aW9uIG9mIHRoZSBmdW5jdGlvbgotICogd2Via2l0X3NldF9jYWNoZV9tb2Rl
bCgpLgotICoKLSAqIFJldHVybiB2YWx1ZTogdGhlIGN1cnJlbnQgI1dlYktpdENhY2hlTW9kZWwK
LSAqCi0gKiBTaW5jZTogMS4xLjE4Ci0gKi8KLVdlYktpdENhY2hlTW9kZWwgd2Via2l0X2dldF9j
YWNoZV9tb2RlbCgpCi17Ci0gICAgd2Via2l0SW5pdCgpOwotICAgIHJldHVybiBjYWNoZU1vZGVs
OwotfQotCi0vKioKICAqIHdlYmtpdF9nZXRfd2ViX3BsdWdpbl9kYXRhYmFzZToKICAqCiAgKiBS
ZXR1cm5zIHRoZSBjdXJyZW50ICNXZWJLaXRXZWJQbHVnaW5EYXRhYmFzZSB3aXRoIGluZm9ybWF0
aW9uIGFib3V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0Z2xv
YmFscy5oIGIvU291cmNlL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdGdsb2JhbHMuaAppbmRleCBm
MDAyZDZkLi5mYzM0MGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay93ZWJraXQvd2Vi
a2l0Z2xvYmFscy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXRnbG9iYWxz
LmgKQEAgLTE4NSwxMiArMTg1LDYgQEAgd2Via2l0X2dldF9pY29uX2RhdGFiYXNlICAgICAgICAg
ICAgICAgICAgICAgICAgKHZvaWQpOwogV0VCS0lUX0FQSSBXZWJLaXRGYXZpY29uRGF0YWJhc2Ug
Kgogd2Via2l0X2dldF9mYXZpY29uX2RhdGFiYXNlICAgICAgICAgICAgICAgICAgICAgKHZvaWQp
OwogCi1XRUJLSVRfQVBJIHZvaWQKLXdlYmtpdF9zZXRfY2FjaGVfbW9kZWwgICAgICAgICAgICAg
ICAgICAgICAgICAgIChXZWJLaXRDYWNoZU1vZGVsICAgICBjYWNoZV9tb2RlbCk7Ci0KLVdFQktJ
VF9BUEkgV2ViS2l0Q2FjaGVNb2RlbAotd2Via2l0X2dldF9jYWNoZV9tb2RlbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgKHZvaWQpOwotCiBXRUJLSVRfQVBJIEdPYmplY3QqCiB3ZWJraXRfZ2V0
X3RleHRfY2hlY2tlciAgICAgICAgICAgICAgICAgICAgICAgICh2b2lkKTsKIApkaWZmIC0tZ2l0
IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGI0NGZlNjkuLjFmODEw
MzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOSBAQAorMjAxMy0xMC0xOCAgQW5kcmUgTG91cmVpcm8gIDxhbmRyZS52bEBzYW1z
dW5nLmNvbT4KKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gKE9PUFMhKS4KKyAg
ICAgICAgTmVlZCB0aGUgYnVnIFVSTCAoT09QUyEpLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHA6
CisgICAgICAgIChUZXN0UnVubmVyOjpzdGF0aWNGdW5jdGlvbnMpOgorICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL1Rlc3RSdW5uZXIuaDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9ibGFja2Jl
cnJ5L1Rlc3RSdW5uZXJCbGFja0JlcnJ5LmNwcDoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9l
ZmwvVGVzdFJ1bm5lckVmbC5jcHA6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZ3RrL1Rlc3RS
dW5uZXJHdGsuY3BwOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFj
Lm1tOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcDoKKwog
MjAxMy0xMC0xOCAgRGVuaXMgTm9taXlhbWEgIDxkLm5vbWl5YW1hQHNhbXN1bmcuY29tPgogCiAg
ICAgICAgIFtBVEtdIEZpeCBpbnZhbGlkIHNpZ25hbCB0byBzZXQgb2JqZWN0cyB0byBhbiB1bmtu
b3duIHN0YXRlICJsYXlvdXQtY29tcGxldGUiCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9UZXN0UnVubmVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuY3Bw
CmluZGV4IDVjMGQwM2MuLmU4OTQ2YzYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuY3Bw
CkBAIC05NDAsMjEgKzk0MCw2IEBAIHN0YXRpYyBKU1ZhbHVlUmVmIHNldEF1dGhvckFuZFVzZXJT
dHlsZXNFbmFibGVkQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTCiAgICAgcmV0dXJu
IEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpOwogfQogCi1zdGF0aWMgSlNWYWx1ZVJlZiBz
ZXRDYWNoZU1vZGVsQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIGZ1
bmN0aW9uLCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBzaXplX3QgYXJndW1lbnRDb3VudCwgY29u
c3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9uKQotewotICAg
IC8vIEhhcyBNYWMgaW1wbGVtZW50YXRpb24uCi0gICAgaWYgKGFyZ3VtZW50Q291bnQgPCAxKQot
ICAgICAgICByZXR1cm4gSlNWYWx1ZU1ha2VVbmRlZmluZWQoY29udGV4dCk7Ci0KLSAgICBpbnQg
Y2FjaGVNb2RlbCA9IEpTVmFsdWVUb051bWJlcihjb250ZXh0LCBhcmd1bWVudHNbMF0sIGV4Y2Vw
dGlvbik7Ci0gICAgQVNTRVJUKCEqZXhjZXB0aW9uKTsKLQotICAgIFRlc3RSdW5uZXIqIGNvbnRy
b2xsZXIgPSBzdGF0aWNfY2FzdDxUZXN0UnVubmVyKj4oSlNPYmplY3RHZXRQcml2YXRlKHRoaXNP
YmplY3QpKTsKLSAgICBjb250cm9sbGVyLT5zZXRDYWNoZU1vZGVsKGNhY2hlTW9kZWwpOwotCi0g
ICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpOwotfQotCiBzdGF0aWMgSlNW
YWx1ZVJlZiBzZXRDdXN0b21Qb2xpY3lEZWxlZ2F0ZUNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90
IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKIHsKICAgICAvLyBIYXMgbWFjIGltcGxlbWVudGF0aW9uCkBAIC0yMTMwLDcg
KzIxMTUsNiBAQCBKU1N0YXRpY0Z1bmN0aW9uKiBUZXN0UnVubmVyOjpzdGF0aWNGdW5jdGlvbnMo
KQogICAgICAgICB7ICJzZXRBdXRoZW50aWNhdGlvblBhc3N3b3JkIiwgc2V0QXV0aGVudGljYXRp
b25QYXNzd29yZENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJv
cGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsgInNldEF1dGhlbnRpY2F0aW9u
VXNlcm5hbWUiLCBzZXRBdXRoZW50aWNhdGlvblVzZXJuYW1lQ2FsbGJhY2ssIGtKU1Byb3BlcnR5
QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAg
ICAgICAgeyAic2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQiLCBzZXRBdXRob3JBbmRVc2Vy
U3R5bGVzRW5hYmxlZENhbGxiYWNrLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pT
UHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCi0gICAgICAgIHsgInNldENhY2hlTW9kZWwi
LCBzZXRDYWNoZU1vZGVsQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBr
SlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAic2V0Q2FsbENsb3Nl
T25XZWJWaWV3cyIsIHNldENhbGxDbG9zZU9uV2ViVmlld3NDYWxsYmFjaywga0pTUHJvcGVydHlB
dHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAg
ICAgICB7ICJzZXRDYW5PcGVuV2luZG93cyIsIHNldENhbk9wZW5XaW5kb3dzQ2FsbGJhY2ssIGtK
U1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxl
dGUgfSwKICAgICAgICAgeyAic2V0Q2xvc2VSZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlIiwg
c2V0Q2xvc2VSZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlQ2FsbGJhY2ssIGtKU1Byb3BlcnR5
QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL1Rlc3RSdW5uZXIuaAppbmRleCA4Y2RhY2Q5Li5kMThhNjRmIDEwMDY0NAotLS0g
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmgKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvVGVzdFJ1bm5lci5oCkBAIC05Miw3ICs5Miw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHNl
dEFwcENhY2hlTWF4aW11bVNpemUodW5zaWduZWQgbG9uZyBsb25nIHF1b3RhKTsKICAgICB2b2lk
IHNldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YSh1bnNpZ25lZCBsb25nIGxvbmcpOwogICAg
IHZvaWQgc2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoYm9vbCk7Ci0gICAgdm9pZCBzZXRD
YWNoZU1vZGVsKGludCk7CiAgICAgdm9pZCBzZXRDdXN0b21Qb2xpY3lEZWxlZ2F0ZShib29sIHNl
dERlbGVnYXRlLCBib29sIHBlcm1pc3NpdmUpOwogICAgIHZvaWQgc2V0RGF0YWJhc2VRdW90YSh1
bnNpZ25lZCBsb25nIGxvbmcgcXVvdGEpOwogICAgIHZvaWQgc2V0RG9tYWluUmVsYXhhdGlvbkZv
cmJpZGRlbkZvclVSTFNjaGVtZShib29sIGZvcmJpZGRlbiwgSlNTdHJpbmdSZWYgc2NoZW1lKTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2JsYWNrYmVycnkvVGVzdFJ1bm5lckJs
YWNrQmVycnkuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9UZXN0UnVubmVy
QmxhY2tCZXJyeS5jcHAKaW5kZXggNjA4NDlkNC4uNTIzZDkxOCAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9UZXN0UnVubmVyQmxhY2tCZXJyeS5jcHAKKysrIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvYmxhY2tiZXJyeS9UZXN0UnVubmVyQmxhY2tCZXJyeS5jcHAK
QEAgLTE4MiwxMSArMTgyLDYgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRBdXRob3JBbmRVc2VyU3R5
bGVzRW5hYmxlZChib29sIGVuYWJsZSkKICAgICBtYWluRnJhbWUtPnBhZ2UoKS0+c2V0dGluZ3Mo
KS0+c2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoZW5hYmxlKTsKIH0KIAotdm9pZCBUZXN0
UnVubmVyOjpzZXRDYWNoZU1vZGVsKGludCkKLXsKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotfQot
CiB2b2lkIFRlc3RSdW5uZXI6OnNldEN1c3RvbVBvbGljeURlbGVnYXRlKGJvb2wgc2V0RGVsZWdh
dGUsIGJvb2wgcGVybWlzc2l2ZSkKIHsKICAgICBCbGFja0JlcnJ5OjpXZWJLaXQ6OkR1bXBSZW5k
ZXJUcmVlOjpjdXJyZW50SW5zdGFuY2UoKS0+c2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUoc2V0RGVs
ZWdhdGUsIHBlcm1pc3NpdmUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZs
L1Rlc3RSdW5uZXJFZmwuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL1Rlc3RSdW5uZXJF
ZmwuY3BwCmluZGV4IDA3NDZlNTIuLmRhYThiZmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2VmbC9UZXN0UnVubmVyRWZsLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9l
ZmwvVGVzdFJ1bm5lckVmbC5jcHAKQEAgLTU1LDEzICs1NSw2IEBACiAjaW5jbHVkZSA8c3RkaW8u
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAotLy8gU2FtZSBhcyBNYWMgY2Fj
aGUgbW9kZWwgZW51bSBpbiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2Vz
LmguCi1lbnVtIHsKLSAgICBXZWJDYWNoZU1vZGVsRG9jdW1lbnRWaWV3ZXIgPSAwLAotICAgIFdl
YkNhY2hlTW9kZWxEb2N1bWVudEJyb3dzZXIgPSAxLAotICAgIFdlYkNhY2hlTW9kZWxQcmltYXJ5
V2ViQnJvd3NlciA9IDIKLX07Ci0KIFRlc3RSdW5uZXI6On5UZXN0UnVubmVyKCkKIHsKIH0KQEAg
LTQ3NCw0NyArNDY3LDYgQEAgYm9vbCBUZXN0UnVubmVyOjppc0NvbW1hbmRFbmFibGVkKEpTU3Ry
aW5nUmVmIG5hbWUpCiAgICAgcmV0dXJuIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6aXNDb21t
YW5kRW5hYmxlZChicm93c2VyLT5tYWluVmlldygpLCBuYW1lLT5zdHJpbmcoKS51dGY4KCkuZGF0
YSgpKTsKIH0KIAotdm9pZCBUZXN0UnVubmVyOjpzZXRDYWNoZU1vZGVsKGludCBjYWNoZU1vZGVs
KQotewotICAgIHVuc2lnbmVkIGludCBjYWNoZVRvdGFsQ2FwYWNpdHk7Ci0gICAgdW5zaWduZWQg
aW50IGNhY2hlTWluRGVhZENhcGFjaXR5OwotICAgIHVuc2lnbmVkIGludCBjYWNoZU1heERlYWRD
YXBhY2l0eTsKLSAgICBkb3VibGUgZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbDsKLSAg
ICB1bnNpZ25lZCBpbnQgcGFnZUNhY2hlQ2FwYWNpdHk7Ci0KLSAgICAvLyBUaGVzZSBjb25zdGFu
dHMgYXJlIGRlcml2ZWQgZnJvbSB0aGUgTWFjIGNhY2hlIG1vZGVsIGVudW0gaW4gU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5oLgotICAgIHN3aXRjaCAoY2FjaGVNb2Rl
bCkgewotICAgIGNhc2UgV2ViQ2FjaGVNb2RlbERvY3VtZW50Vmlld2VyOgotICAgICAgICBwYWdl
Q2FjaGVDYXBhY2l0eSA9IDA7Ci0gICAgICAgIGNhY2hlVG90YWxDYXBhY2l0eSA9IDA7Ci0gICAg
ICAgIGNhY2hlTWluRGVhZENhcGFjaXR5ID0gMDsKLSAgICAgICAgY2FjaGVNYXhEZWFkQ2FwYWNp
dHkgPSAwOwotICAgICAgICBkZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFsID0gMDsKLSAg
ICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXZWJDYWNoZU1vZGVsRG9jdW1lbnRCcm93c2VyOgotICAg
ICAgICBwYWdlQ2FjaGVDYXBhY2l0eSA9IDI7Ci0gICAgICAgIGNhY2hlVG90YWxDYXBhY2l0eSA9
IDE2ICogMTAyNCAqIDEwMjQ7Ci0gICAgICAgIGNhY2hlTWluRGVhZENhcGFjaXR5ID0gY2FjaGVU
b3RhbENhcGFjaXR5IC8gODsKLSAgICAgICAgY2FjaGVNYXhEZWFkQ2FwYWNpdHkgPSBjYWNoZVRv
dGFsQ2FwYWNpdHkgLyA0OwotICAgICAgICBkZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFs
ID0gMDsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXZWJDYWNoZU1vZGVsUHJpbWFyeVdlYkJy
b3dzZXI6Ci0gICAgICAgIHBhZ2VDYWNoZUNhcGFjaXR5ID0gMzsKLSAgICAgICAgY2FjaGVUb3Rh
bENhcGFjaXR5ID0gMzIgKiAxMDI0ICogMTAyNDsKLSAgICAgICAgY2FjaGVNaW5EZWFkQ2FwYWNp
dHkgPSBjYWNoZVRvdGFsQ2FwYWNpdHkgLyA0OwotICAgICAgICBjYWNoZU1heERlYWRDYXBhY2l0
eSA9IGNhY2hlVG90YWxDYXBhY2l0eSAvIDI7Ci0gICAgICAgIGRlYWREZWNvZGVkRGF0YURlbGV0
aW9uSW50ZXJ2YWwgPSA2MDsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAg
ZnByaW50ZihzdGRlcnIsICJ0cnlpbmcgdG8gc2V0IGFuIGludmFsaWQgdmFsdWUgJWQgZm9yIHRo
ZSBDYWNoZSBtb2RlbC4iLCBjYWNoZU1vZGVsKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQot
ICAgIGV3a19zZXR0aW5nc19vYmplY3RfY2FjaGVfY2FwYWNpdHlfc2V0KGNhY2hlTWluRGVhZENh
cGFjaXR5LCBjYWNoZU1heERlYWRDYXBhY2l0eSwgY2FjaGVUb3RhbENhcGFjaXR5KTsKLSAgICBE
dW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OnNldERlYWREZWNvZGVkRGF0YURlbGV0aW9uSW50ZXJ2
YWwoZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbCk7Ci0gICAgZXdrX3NldHRpbmdzX3Bh
Z2VfY2FjaGVfY2FwYWNpdHlfc2V0KHBhZ2VDYWNoZUNhcGFjaXR5KTsKLX0KLQogdm9pZCBUZXN0
UnVubmVyOjpzZXRQZXJzaXN0ZW50VXNlclN0eWxlU2hlZXRMb2NhdGlvbihKU1N0cmluZ1JlZikK
IHsKICAgICBub3RJbXBsZW1lbnRlZCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvZ3RrL1Rlc3RSdW5uZXJHdGsuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1Rlc3RS
dW5uZXJHdGsuY3BwCmluZGV4IDI2NWZiNWMuLjMyM2Y4YTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2d0ay9UZXN0UnVubmVyR3RrLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9ndGsvVGVzdFJ1bm5lckd0ay5jcHAKQEAgLTUzOSwyNCArNTM5LDYgQEAgYm9vbCBUZXN0
UnVubmVyOjppc0NvbW1hbmRFbmFibGVkKEpTU3RyaW5nUmVmIG5hbWUpCiAgICAgcmV0dXJuIHJl
c3VsdDsKIH0KIAotdm9pZCBUZXN0UnVubmVyOjpzZXRDYWNoZU1vZGVsKGludCBjYWNoZU1vZGVs
KQotewotICAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgZGVyaXZlZCBmcm9tIHRoZSBNYWMgY2Fj
aGUgbW9kZWwgZW51bSBpbiBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2Vz
LmguCi0gICAgc3dpdGNoIChjYWNoZU1vZGVsKSB7Ci0gICAgY2FzZSAwOgotICAgICAgICB3ZWJr
aXRfc2V0X2NhY2hlX21vZGVsKFdFQktJVF9DQUNIRV9NT0RFTF9ET0NVTUVOVF9WSUVXRVIpOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIDE6Ci0gICAgICAgIHdlYmtpdF9zZXRfY2FjaGVfbW9k
ZWwoV0VCS0lUX0NBQ0hFX01PREVMX0RPQ1VNRU5UX0JST1dTRVIpOwotICAgICAgICBicmVhazsK
LSAgICBjYXNlIDI6Ci0gICAgICAgIHdlYmtpdF9zZXRfY2FjaGVfbW9kZWwoV0VCS0lUX0NBQ0hF
X01PREVMX1dFQl9CUk9XU0VSKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgfQotfQotCiB2b2lkIFRlc3RSdW5uZXI6OnNl
dFBlcnNpc3RlbnRVc2VyU3R5bGVTaGVldExvY2F0aW9uKEpTU3RyaW5nUmVmIGpzVVJMKQogewog
ICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9UZXN0UnVubmVyTWFjLm1tIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5u
ZXJNYWMubW0KaW5kZXggYTQ2ZDQyOC4uZDRlYjgzZCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0KKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL1Rlc3RSdW5uZXJNYWMubW0KQEAgLTcxMSwxMSArNzExLDYgQEAgYm9vbCBUZXN0UnVubmVy
OjpmaW5kU3RyaW5nKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1N0cmluZ1JlZiB0YXJnZXQsIEpT
T2JqZWN0UmUKICAgICByZXR1cm4gW1ttYWluRnJhbWUgd2ViVmlld10gZmluZFN0cmluZzooTlNT
dHJpbmcgKil0YXJnZXRDRlN0cmluZy5nZXQoKSBvcHRpb25zOm9wdGlvbnNdOwogfQogCi12b2lk
IFRlc3RSdW5uZXI6OnNldENhY2hlTW9kZWwoaW50IGNhY2hlTW9kZWwpCi17Ci0gICAgW1tXZWJQ
cmVmZXJlbmNlcyBzdGFuZGFyZFByZWZlcmVuY2VzXSBzZXRDYWNoZU1vZGVsOmNhY2hlTW9kZWxd
OwotfQotCiBib29sIFRlc3RSdW5uZXI6OmlzQ29tbWFuZEVuYWJsZWQoSlNTdHJpbmdSZWYgbmFt
ZSkKIHsKICAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IG5hbWVDRiA9IGFkb3B0Q0YoSlNTdHJp
bmdDb3B5Q0ZTdHJpbmcoa0NGQWxsb2NhdG9yRGVmYXVsdCwgbmFtZSkpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL1Rlc3RSdW5uZXJXaW4uY3BwIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvd2luL1Rlc3RSdW5uZXJXaW4uY3BwCmluZGV4IDNmYjFjNWEuLmU5OTk0ZDEgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAorKysg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vVGVzdFJ1bm5lcldpbi5jcHAKQEAgLTc2OSwxMSAr
NzY5LDYgQEAgYm9vbCBUZXN0UnVubmVyOjpmaW5kU3RyaW5nKEpTQ29udGV4dFJlZiAvKiBjb250
ZXh0ICovLCBKU1N0cmluZ1JlZiAvKiB0YXJnZXQgKi8KICAgICByZXR1cm4gZmFsc2U7CiB9CiAK
LXZvaWQgVGVzdFJ1bm5lcjo6c2V0Q2FjaGVNb2RlbChpbnQpCi17Ci0gICAgLy8gRklYTUU6IElt
cGxlbWVudAotfQotCiBib29sIFRlc3RSdW5uZXI6OmlzQ29tbWFuZEVuYWJsZWQoSlNTdHJpbmdS
ZWYgLypuYW1lKi8pCiB7CiAgICAgcHJpbnRmKCJFUlJPUjogVGVzdFJ1bm5lcjo6aXNDb21tYW5k
RW5hYmxlZCgpIG5vdCBpbXBsZW1lbnRlZFxuIik7Ci0tIAoxLjguMS4yCgo=
</data>
<flag name="commit-queue"
          id="237320"
          type_id="3"
          status="-"
          setter="gtk-ews"
    />
          </attachment>
      

    </bug>

</bugzilla>