<?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>191773</bug_id>
          
          <creation_ts>2018-11-16 14:30:51 -0800</creation_ts>
          <short_desc>Web Inspector: &quot;Reload Web Inspector&quot; button no longer partially works</short_desc>
          <delta_ts>2018-11-26 10:29:37 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=191971</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1479624</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-16 14:30:51 -0800</bug_when>
    <thetext>&quot;Reload Web Inspector&quot; button no longer partially works

The reload button only partially worked before (breakpoints would end up in an unresolved state). But now it totally doesn&apos;t work in a WI.MultiplexingBackendTarget world, since the TargetAgent doesn&apos;t re-send the targets like it does on first initialization. One approach would be to add and call disable on all agents and re-enable them, but it is still likely to be imperfect. It would be better to have a Close / Reopen approach.

This is used by Experimental Settings and there is a &quot;Reload&quot; debug navigation item.

Can we replace the button with a Reopen button or just ask developers to close and reopen?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479625</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-16 14:31:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/46139932&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479817</commentid>
    <comment_count>2</comment_count>
      <attachid>355173</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-16 19:48:37 -0800</bug_when>
    <thetext>Created attachment 355173
[PATCH] Proposed Fix

Introduce InspectorFrontendHost.reopen which closes and reopens the Web Inspector.

I tests:

  - WebKit
    - local
    - remote
  - WebKitLegacy Mac

I didn&apos;t test WebKitLegacy Windows but its nearly identical code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1479823</commentid>
    <comment_count>3</comment_count>
      <attachid>355173</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-16 20:02:32 -0800</bug_when>
    <thetext>Comment on attachment 355173
[PATCH] Proposed Fix

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

&gt; Source/WebKitLegacy/mac/WebCoreSupport/WebInspectorClient.mm:-667
&gt; -    if (_attachedToInspectedWebView)

This was leaving behind empty white windows if web inspector was detached because we weren&apos;t calling window close. So just unconditionally close.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480161</commentid>
    <comment_count>4</comment_count>
      <attachid>355173</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-19 00:18:14 -0800</bug_when>
    <thetext>Comment on attachment 355173
[PATCH] Proposed Fix

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

r=me

&gt; Source/WebInspectorUI/ChangeLog:10
&gt; +        * UserInterface/Debug/UncaughtExceptionReporter.js:

I think there&apos;s also a `location.reload()`  inside Bootstrap.js:39 (reload Web Inspector keyboard shortcut).  Frankly, I&apos;ve never used it (and didn&apos;t know it existed till now), so I&apos;d also be fine if you removed it.

&gt; Source/WebInspectorUI/ChangeLog:12
&gt; +        (sheetElement.innerHTML.div):
&gt; +        (let.dismissOptionHTML.loadCompleted.string_appeared_here.dt.A.frivolous.exception.will.not.stop.me.dt.dd.a):

lolwut

&gt; Source/WebKit/UIProcess/RemoteWebInspectorProxy.cpp:99
&gt; +    load(m_debuggableType, m_backendCommandsURL);

Should we add assertions that `m_debuggableType` and `m_backendCommandsURL` are both valid?  `load` doesn&apos;t so maybe I&apos;m just being paranoid...

&gt; Source/WebKitLegacy/win/WebCoreSupport/WebInspectorClient.cpp:276
&gt; +    if (Page* inspectedPage = m_inspectedWebView-&gt;page())

Not sure about our style on this, but IIRC this would be a great `auto*` case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480278</commentid>
    <comment_count>5</comment_count>
      <attachid>355173</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-19 12:44:01 -0800</bug_when>
    <thetext>Comment on attachment 355173
[PATCH] Proposed Fix

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

&gt;&gt; Source/WebKit/UIProcess/RemoteWebInspectorProxy.cpp:99
&gt;&gt; +    load(m_debuggableType, m_backendCommandsURL);
&gt; 
&gt; Should we add assertions that `m_debuggableType` and `m_backendCommandsURL` are both valid?  `load` doesn&apos;t so maybe I&apos;m just being paranoid...

I&apos;ll assert that they are not empty, that sounds like a good idea.

&gt;&gt; Source/WebKitLegacy/win/WebCoreSupport/WebInspectorClient.cpp:276
&gt;&gt; +    if (Page* inspectedPage = m_inspectedWebView-&gt;page())
&gt; 
&gt; Not sure about our style on this, but IIRC this would be a great `auto*` case

This matches style later in the file. I&apos;ll keep the file consistent for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480280</commentid>
    <comment_count>6</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-19 12:50:31 -0800</bug_when>
    <thetext>(In reply to Joseph Pecoraro from comment #5)
&gt; Comment on attachment 355173 [details]
&gt; [PATCH] Proposed Fix
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=355173&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/UIProcess/RemoteWebInspectorProxy.cpp:99
&gt; &gt;&gt; +    load(m_debuggableType, m_backendCommandsURL);
&gt; &gt; 
&gt; &gt; Should we add assertions that `m_debuggableType` and `m_backendCommandsURL` are both valid?  `load` doesn&apos;t so maybe I&apos;m just being paranoid...
&gt; 
&gt; I&apos;ll assert that they are not empty, that sounds like a good idea.

Err, at least m_debuggableType. backendCommandsURL can be empty.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480281</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-19 12:52:04 -0800</bug_when>
    <thetext>https://trac.webkit.org/r238378</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355173</attachid>
            <date>2018-11-16 19:48:37 -0800</date>
            <delta_ts>2018-11-19 00:18:14 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>reopen-2.patch</filename>
            <type>text/plain</type>
            <size>21844</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2MmI2NTRlYjQ1Ny4uNDIwOGZhOWM3MjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxOC0xMS0xNiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUu
Y29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6ICJSZWxvYWQgV2ViIEluc3BlY3RvciIgYnV0
dG9uIG5vIGxvbmdlciBwYXJ0aWFsbHkgd29ya3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTc3MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDYx
Mzk5MzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckZyb250ZW5kSG9zdDo6cmVvcGVuKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJv
bnRlbmRIb3N0Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5p
ZGw6CisgICAgICAgIFByb3ZpZGUgYSBob3N0IGNhbGwgdG8gcmVvcGVuIGFuIGluc3BlY3RvciB3
aW5kb3cgdG8gcmVsb2FkIGl0LgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICBTdHViIGltcGxlbWVudGF0aW9uLCB0aGlzIGlzIG5vdCB1c2VkIGluIHRlc3RzLgor
CiAyMDE4LTExLTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIE9wdGltaXplIGNvbXBvc2l0ZWQgaWZyYW1lIGxheWVyIGhvb2t1cApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kQ2xpZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQuaAppbmRleCAz
NjIzMTAwM2Y5My4uYzQ4ZmYzNTQ4MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JGcm9udGVuZENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JGcm9udGVuZENsaWVudC5oCkBAIC02MCw2ICs2MCw3IEBAIHB1YmxpYzoK
IAogICAgIHZpcnR1YWwgdm9pZCBicmluZ1RvRnJvbnQoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IGNsb3NlV2luZG93KCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCByZW9wZW4oKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIFVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gdXNlckludGVyZmFjZUxheW91
dERpcmVjdGlvbigpIGNvbnN0ID0gMDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNwcAppbmRleCAxOGNmOWM4MDVhMi4uZGZlYzI5MjVi
NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuY3BwCkBAIC0xODksNiArMTg5LDEyIEBAIHZvaWQgSW5zcGVjdG9yRnJvbnRlbmRIb3N0
OjpjbG9zZVdpbmRvdygpCiAgICAgfQogfQogCit2b2lkIEluc3BlY3RvckZyb250ZW5kSG9zdDo6
cmVvcGVuKCkKK3sKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50LT5yZW9wZW4o
KTsKK30KKwogdm9pZCBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6OmJyaW5nVG9Gcm9udCgpCiB7CiAg
ICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckZyb250ZW5kSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckZyb250ZW5kSG9zdC5oCmluZGV4IDY1NGYwNjBkZDg2Li40MjU0ZmM1MmIyOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaApAQCAtNTcs
NiArNTcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBsb2FkZWQoKTsKICAgICB2b2lkIHJlcXVlc3RT
ZXREb2NrU2lkZShjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIGNsb3NlV2luZG93KCk7CisgICAg
dm9pZCByZW9wZW4oKTsKICAgICB2b2lkIGJyaW5nVG9Gcm9udCgpOwogICAgIHZvaWQgaW5zcGVj
dGVkVVJMQ2hhbmdlZChjb25zdCBTdHJpbmcmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmlkbAppbmRleCBkNTM0MThiY2FlZC4uNWU0
MDE4MzU2ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JG
cm9udGVuZEhvc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JG
cm9udGVuZEhvc3QuaWRsCkBAIC0zNiw2ICszNiw3IEBACiBdIGludGVyZmFjZSBJbnNwZWN0b3JG
cm9udGVuZEhvc3QgewogICAgIHZvaWQgbG9hZGVkKCk7CiAgICAgdm9pZCBjbG9zZVdpbmRvdygp
OworICAgIHZvaWQgcmVvcGVuKCk7CiAgICAgdm9pZCBicmluZ1RvRnJvbnQoKTsKICAgICB2b2lk
IGluc3BlY3RlZFVSTENoYW5nZWQoRE9NU3RyaW5nIG5ld1VSTCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcAppbmRleCBiODg0M2E2ZDNiMi4uNzM0NDdmYWM0YWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTMwNiw2ICszMDYsNyBAQCBwcml2YXRlOgog
ICAgIHZvaWQgYXR0YWNoV2luZG93KERvY2tTaWRlKSBmaW5hbCB7IH0KICAgICB2b2lkIGRldGFj
aFdpbmRvdygpIGZpbmFsIHsgfQogICAgIHZvaWQgY2xvc2VXaW5kb3coKSBmaW5hbDsKKyAgICB2
b2lkIHJlb3BlbigpIGZpbmFsIHsgfQogICAgIHZvaWQgYnJpbmdUb0Zyb250KCkgZmluYWwgeyB9
CiAgICAgU3RyaW5nIGxvY2FsaXplZFN0cmluZ3NVUkwoKSBmaW5hbCB7IHJldHVybiBTdHJpbmco
KTsgfQogICAgIHZvaWQgaW5zcGVjdGVkVVJMQ2hhbmdlZChjb25zdCBTdHJpbmcmKSBmaW5hbCB7
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDgwNGIyNzlmNTJmLi5iY2VjZTkxZmNlOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTgtMTEtMTYgIEpv
c2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiAiUmVsb2FkIFdlYiBJbnNwZWN0b3IiIGJ1dHRvbiBubyBsb25nZXIgcGFydGlhbGx5IHdv
cmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE3
NzMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2MTM5OTMyPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9CYXNlL01haW4u
anM6CisgICAgICAgICogVXNlckludGVyZmFjZS9EZWJ1Zy9VbmNhdWdodEV4Y2VwdGlvblJlcG9y
dGVyLmpzOgorICAgICAgICAoc2hlZXRFbGVtZW50LmlubmVySFRNTC5kaXYpOgorICAgICAgICAo
bGV0LmRpc21pc3NPcHRpb25IVE1MLmxvYWRDb21wbGV0ZWQuc3RyaW5nX2FwcGVhcmVkX2hlcmUu
ZHQuQS5mcml2b2xvdXMuZXhjZXB0aW9uLndpbGwubm90LnN0b3AubWUuZHQuZGQuYSk6CisgICAg
ICAgICogVXNlckludGVyZmFjZS9WaWV3cy9TZXR0aW5nc1RhYkNvbnRlbnRWaWV3LmpzOgorCiAy
MDE4LTExLTE2ICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBBdWRpdDogYWRkIGRlZmF1bHQgdGVzdHMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcwppbmRleCAzOTJjMjIwNDQ1ZC4u
MTBmOWUyNjczN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL0Jhc2UvTWFpbi5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9CYXNlL01haW4uanMKQEAgLTE1ODQsOCArMTU4NCw3IEBAIFdJLl9jb250ZXh0TWVudVJlcXVl
c3RlZCA9IGZ1bmN0aW9uKGV2ZW50KQogICAgICAgICBwcm9wb3NlZENvbnRleHRNZW51ID0gV0ku
Q29udGV4dE1lbnUuY3JlYXRlRnJvbUV2ZW50KGV2ZW50KTsKICAgICAgICAgcHJvcG9zZWRDb250
ZXh0TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsKICAgICAgICAgcHJvcG9zZWRDb250ZXh0TWVudS5h
cHBlbmRJdGVtKFdJLnVubG9jYWxpemVkU3RyaW5nKCJSZWxvYWQgV2ViIEluc3BlY3RvciIpLCAo
KSA9PiB7Ci0gICAgICAgICAgICAvLyBGSVhNRTogUmVsb2FkIFdlYiBJbnNwZWN0b3IgZG9lcyBu
b3Qgd29yayB3aXRoIE11bHRpcGxleGluZ0JhY2tlbmRUYXJnZXQuCi0gICAgICAgICAgICB3aW5k
b3cubG9jYXRpb24ucmVsb2FkKCk7CisgICAgICAgICAgICBJbnNwZWN0b3JGcm9udGVuZEhvc3Qu
cmVvcGVuKCk7CiAgICAgICAgIH0pOwogCiAgICAgICAgIGxldCBwcm90b2NvbFN1Yk1lbnUgPSBw
cm9wb3NlZENvbnRleHRNZW51LmFwcGVuZFN1Yk1lbnVJdGVtKFdJLnVubG9jYWxpemVkU3RyaW5n
KCJQcm90b2NvbCBEZWJ1Z2dpbmciKSwgbnVsbCwgZmFsc2UpOwpAQCAtMjI1Myw4ICsyMjUyLDcg
QEAgV0kuc2V0TGF5b3V0RGlyZWN0aW9uID0gZnVuY3Rpb24odmFsdWUpCiAgICAgaWYgKFdJLnJl
c29sdmVkTGF5b3V0RGlyZWN0aW9uKCkgPT09IFdJLkxheW91dERpcmVjdGlvbi5MVFIgJiYgdGhp
cy5fZG9ja0NvbmZpZ3VyYXRpb24gPT09IFdJLkRvY2tDb25maWd1cmF0aW9uLkxlZnQpCiAgICAg
ICAgIHRoaXMuX2RvY2tSaWdodCgpOwogCi0gICAgLy8gRklYTUU6IFJlbG9hZCBXZWIgSW5zcGVj
dG9yIGRvZXMgbm90IHdvcmsgd2l0aCBNdWx0aXBsZXhpbmdCYWNrZW5kVGFyZ2V0LgotICAgIHdp
bmRvdy5sb2NhdGlvbi5yZWxvYWQoKTsKKyAgICBJbnNwZWN0b3JGcm9udGVuZEhvc3QucmVvcGVu
KCk7CiB9OwogCiBXSS5fc2hvd1RhYkF0SW5kZXggPSBmdW5jdGlvbihpLCBldmVudCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0RlYnVnL1VuY2F1Z2h0
RXhjZXB0aW9uUmVwb3J0ZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9EZWJ1Zy9VbmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyLmpzCmluZGV4IDdjNjE4OTQ0YjAyLi41
ZTk5YTZiNjZiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvRGVidWcvVW5jYXVnaHRFeGNlcHRpb25SZXBvcnRlci5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9EZWJ1Zy9VbmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyLmpz
CkBAIC0yNTcsNyArMjU3LDYgQEAgRG9jdW1lbnQgYW55IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24g
dGhhdCBtaWdodCBiZSB1c2VmdWwgaW4gcmVzb2x2aW5nIHRoZSBwcm9ibGUKICAgICAgICAgPGRk
PjxhIGNsYXNzPSJieXBhc3MtZXZlbnQtYmxvY2tpbmciIGlkPSJkaXNtaXNzLWVycm9yLXNoZWV0
Ij5DbGljayB0byBjbG9zZSB0aGlzIHZpZXc8L2E+IGFuZCByZXR1cm4KICAgICAgICAgdG8gdGhl
IFdlYiBJbnNwZWN0b3Igd2l0aG91dCByZWxvYWRpbmcuIEhvd2V2ZXIsIHNvbWUgdGhpbmdzIG1p
Z2h0IG5vdCB3b3JrIHdpdGhvdXQgcmVsb2FkaW5nIGlmIHRoZSBlcnJvciBjb3JydXB0ZWQgdGhl
IEluc3BlY3RvcidzIGludGVybmFsIHN0YXRlLjwvZGQ+YDsKIAotICAgIC8vIEZJWE1FOiBSZWxv
YWQgV2ViIEluc3BlY3RvciBkb2VzIG5vdCB3b3JrIHdpdGggTXVsdGlwbGV4aW5nQmFja2VuZFRh
cmdldC4KICAgICBsZXQgc2hlZXRFbGVtZW50ID0gd2luZG93Ll9fc2hlZXRFbGVtZW50ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgc2hlZXRFbGVtZW50LmNsYXNzTGlzdC5h
ZGQoInNoZWV0LWNvbnRhaW5lciIpOwogICAgIHNoZWV0RWxlbWVudC5pbm5lckhUTUwgPSBgPGRp
diBjbGFzcz0idW5jYXVnaHQtZXhjZXB0aW9uLXNoZWV0Ij4KQEAgLTI3Myw3ICsyNzIsNyBAQCBE
b2N1bWVudCBhbnkgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiB0aGF0IG1pZ2h0IGJlIHVzZWZ1bCBp
biByZXNvbHZpbmcgdGhlIHByb2JsZQogICAgICAgICA8YSBocmVmPSIke3ByZWZpbGxlZEJ1Z1Jl
cG9ydExpbmt9IiB0YXJnZXQ9Il9ibGFuayI+Y2xpY2sgdG8gZmlsZSBhIHByZS1wb3B1bGF0ZWQK
ICAgICAgICAgYnVnIHdpdGggdGhpcyBpbmZvcm1hdGlvbjwvYT4uIEl0IGlzIHBvc3NpYmxlIHRo
YXQgc29tZW9uZSBlbHNlIGJyb2tlIGl0IGJ5IGFjY2lkZW50LjwvZGQ+CiAgICAgICAgIDxkdD5P
b3BzLCBjYW4gSSB0cnkgYWdhaW4/PC9kdD4KLSAgICAgICAgPGRkPjxhIGhyZWY9ImphdmFzY3Jp
cHQ6d2luZG93LmxvY2F0aW9uLnJlbG9hZCgpIj5DbGljayB0byByZWxvYWQgdGhlIEluc3BlY3Rv
cjwvYT4KKyAgICAgICAgPGRkPjxhIGhyZWY9ImphdmFzY3JpcHQ6SW5zcGVjdG9yRnJvbnRlbmRI
b3N0LnJlb3BlbigpIj5DbGljayB0byByZWxvYWQgdGhlIEluc3BlY3RvcjwvYT4KICAgICAgICAg
YWdhaW4gYWZ0ZXIgbWFraW5nIGxvY2FsIGNoYW5nZXMuPC9kZD4KICAgICAgICAgJHtkaXNtaXNz
T3B0aW9uSFRNTH0KICAgICA8L2RsPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvU2V0dGluZ3NUYWJDb250ZW50Vmlldy5qcyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NldHRpbmdzVGFiQ29udGVudFZpZXcu
anMKaW5kZXggOTkxZGQ3Njk1MjYuLjg0YmIyNDhkZGUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TZXR0aW5nc1RhYkNvbnRlbnRWaWV3Lmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NldHRpbmdz
VGFiQ29udGVudFZpZXcuanMKQEAgLTI1OCwxMCArMjU4LDkgQEAgV0kuU2V0dGluZ3NUYWJDb250
ZW50VmlldyA9IGNsYXNzIFNldHRpbmdzVGFiQ29udGVudFZpZXcgZXh0ZW5kcyBXSS5UYWJDb250
ZW50VmkKICAgICAgICAgZXhwZXJpbWVudGFsU2V0dGluZ3NWaWV3LmFkZFNldHRpbmcoV0kuVUlT
dHJpbmcoIlVzZXIgSW50ZXJmYWNlOiIpLCBXSS5zZXR0aW5ncy5leHBlcmltZW50YWxFbmFibGVO
ZXdUYWJCYXIsIFdJLlVJU3RyaW5nKCJFbmFibGUgTmV3IFRhYiBCYXIiKSk7CiAgICAgICAgIGV4
cGVyaW1lbnRhbFNldHRpbmdzVmlldy5hZGRTZXBhcmF0b3IoKTsKIAotICAgICAgICAvLyBGSVhN
RTogUmVsb2FkIFdlYiBJbnNwZWN0b3IgZG9lcyBub3Qgd29yayB3aXRoIE11bHRpcGxleGluZ0Jh
Y2tlbmRUYXJnZXQuCiAgICAgICAgIGxldCByZWxvYWRJbnNwZWN0b3JCdXR0b24gPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJidXR0b24iKTsKICAgICAgICAgcmVsb2FkSW5zcGVjdG9yQnV0dG9u
LnRleHRDb250ZW50ID0gV0kuVUlTdHJpbmcoIlJlbG9hZCBXZWIgSW5zcGVjdG9yIik7Ci0gICAg
ICAgIHJlbG9hZEluc3BlY3RvckJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsICgpID0+
IHsgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpOyB9KTsKKyAgICAgICAgcmVsb2FkSW5zcGVjdG9y
QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgKCkgPT4geyBJbnNwZWN0b3JGcm9udGVu
ZEhvc3QucmVvcGVuKCk7IH0pOwogCiAgICAgICAgIGxldCByZWxvYWRJbnNwZWN0b3JDb250YWlu
ZXJFbGVtZW50ID0gZXhwZXJpbWVudGFsU2V0dGluZ3NWaWV3LmFkZENlbnRlcmVkQ29udGFpbmVy
KHJlbG9hZEluc3BlY3RvckJ1dHRvbiwgV0kuVUlTdHJpbmcoImZvciBjaGFuZ2VzIHRvIHRha2Ug
ZWZmZWN0IikpOwogICAgICAgICByZWxvYWRJbnNwZWN0b3JDb250YWluZXJFbGVtZW50LmNsYXNz
TGlzdC5hZGQoImhpZGRlbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBmYWUwYjA5ZjVmNy4uODMwNWJhZWYwMzUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTgtMTEtMTYgIEpvc2VwaCBQZWNvcmFybyAg
PHBlY29yYXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiAiUmVsb2FkIFdl
YiBJbnNwZWN0b3IiIGJ1dHRvbiBubyBsb25nZXIgcGFydGlhbGx5IHdvcmtzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE3NzMKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ2MTM5OTMyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL1JlbW90ZVdlYkluc3BlY3RvclByb3h5LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6UmVtb3RlV2ViSW5zcGVjdG9yUHJveHk6OmxvYWQpOgorICAgICAg
ICAoV2ViS2l0OjpSZW1vdGVXZWJJbnNwZWN0b3JQcm94eTo6cmVvcGVuKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvUmVtb3RlV2ViSW5zcGVjdG9yUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
UmVtb3RlV2ViSW5zcGVjdG9yUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL1JlbW90ZVdlYkluc3BlY3RvclVJLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVt
b3RlV2ViSW5zcGVjdG9yVUk6OnJlb3Blbik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L1JlbW90ZVdlYkluc3BlY3RvclVJLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
Ykluc3BlY3Rvci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkluc3BlY3Rvcjo6cmVvcGVuKToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yLmg6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yVUkuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJJbnNwZWN0b3JVSTo6cmVvcGVuKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
SW5zcGVjdG9yVUkuaDoKKwogMjAxOC0xMS0xNiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9A
YXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZm9sbG93LXVwIHRvIHIyMzgzMzAuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVXZWJJbnNwZWN0b3JQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVXZWJJbnNwZWN0b3JQcm94eS5j
cHAKaW5kZXggNmYxZTQwNzEwYWEuLjNmZTYxOGRhZTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9SZW1vdGVXZWJJbnNwZWN0b3JQcm94eS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUmVtb3RlV2ViSW5zcGVjdG9yUHJveHkuY3BwCkBAIC01NSw2ICs1NSw5
IEBAIHZvaWQgUmVtb3RlV2ViSW5zcGVjdG9yUHJveHk6OmxvYWQoY29uc3QgU3RyaW5nJiBkZWJ1
Z2dhYmxlVHlwZSwgY29uc3QgU3RyaW5nJiBiCiB7CiAgICAgY3JlYXRlRnJvbnRlbmRQYWdlQW5k
V2luZG93KCk7CiAKKyAgICBtX2RlYnVnZ2FibGVUeXBlID0gZGVidWdnYWJsZVR5cGU7CisgICAg
bV9iYWNrZW5kQ29tbWFuZHNVUkwgPSBiYWNrZW5kQ29tbWFuZHNVUkw7CisKICAgICBtX2luc3Bl
Y3RvclBhZ2UtPnByb2Nlc3MoKS5zZW5kKE1lc3NhZ2VzOjpSZW1vdGVXZWJJbnNwZWN0b3JVSTo6
SW5pdGlhbGl6ZShkZWJ1Z2dhYmxlVHlwZSwgYmFja2VuZENvbW1hbmRzVVJMKSwgbV9pbnNwZWN0
b3JQYWdlLT5wYWdlSUQoKSk7CiAgICAgbV9pbnNwZWN0b3JQYWdlLT5sb2FkUmVxdWVzdChVUkwo
VVJMKCksIFdlYkluc3BlY3RvclByb3h5OjppbnNwZWN0b3JQYWdlVVJMKCkpKTsKIH0KQEAgLTkw
LDYgKzkzLDEyIEBAIHZvaWQgUmVtb3RlV2ViSW5zcGVjdG9yUHJveHk6OmZyb250ZW5kRGlkQ2xv
c2UoKQogICAgIGNsb3NlRnJvbnRlbmRQYWdlQW5kV2luZG93KCk7CiB9CiAKK3ZvaWQgUmVtb3Rl
V2ViSW5zcGVjdG9yUHJveHk6OnJlb3BlbigpCit7CisgICAgY2xvc2VGcm9udGVuZFBhZ2VBbmRX
aW5kb3coKTsKKyAgICBsb2FkKG1fZGVidWdnYWJsZVR5cGUsIG1fYmFja2VuZENvbW1hbmRzVVJM
KTsKK30KKwogdm9pZCBSZW1vdGVXZWJJbnNwZWN0b3JQcm94eTo6YnJpbmdUb0Zyb250KCkKIHsK
ICAgICBwbGF0Zm9ybUJyaW5nVG9Gcm9udCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUmVtb3RlV2ViSW5zcGVjdG9yUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1JlbW90ZVdlYkluc3BlY3RvclByb3h5LmgKaW5kZXggNzVkOWVhZmI4OGEuLjE5MWYwMzNi
ZDg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVXZWJJbnNwZWN0
b3JQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZVdlYkluc3BlY3Rv
clByb3h5LmgKQEAgLTkxLDYgKzkxLDcgQEAgcHJpdmF0ZToKIAogICAgIC8vIFJlbW90ZVdlYklu
c3BlY3RvclByb3h5IG1lc3NhZ2VzLgogICAgIHZvaWQgZnJvbnRlbmREaWRDbG9zZSgpOworICAg
IHZvaWQgcmVvcGVuKCk7CiAgICAgdm9pZCBicmluZ1RvRnJvbnQoKTsKICAgICB2b2lkIHNhdmUo
Y29uc3QgU3RyaW5nJiBmaWxlbmFtZSwgY29uc3QgU3RyaW5nJiBjb250ZW50LCBib29sIGJhc2U2
NEVuY29kZWQsIGJvb2wgZm9yY2VTYXZlQXMpOwogICAgIHZvaWQgYXBwZW5kKGNvbnN0IFN0cmlu
ZyYgZmlsZW5hbWUsIGNvbnN0IFN0cmluZyYgY29udGVudCk7CkBAIC0xMTMsNiArMTE0LDkgQEAg
cHJpdmF0ZToKICAgICBSZW1vdGVXZWJJbnNwZWN0b3JQcm94eUNsaWVudCogbV9jbGllbnQgeyBu
dWxscHRyIH07CiAgICAgV2ViUGFnZVByb3h5KiBtX2luc3BlY3RvclBhZ2UgeyBudWxscHRyIH07
CiAKKyAgICBTdHJpbmcgbV9kZWJ1Z2dhYmxlVHlwZTsKKyAgICBTdHJpbmcgbV9iYWNrZW5kQ29t
bWFuZHNVUkw7CisKICNpZiBQTEFURk9STShNQUMpCiAgICAgUmV0YWluUHRyPFdLSW5zcGVjdG9y
Vmlld0NvbnRyb2xsZXI+IG1faW5zcGVjdG9yVmlldzsKICAgICBSZXRhaW5QdHI8TlNXaW5kb3c+
IG1fd2luZG93OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlV2Vi
SW5zcGVjdG9yUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1v
dGVXZWJJbnNwZWN0b3JQcm94eS5tZXNzYWdlcy5pbgppbmRleCA4NGI1MjU5ZDdjNS4uOWQwNzNj
Yjc0ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZVdlYkluc3Bl
Y3RvclByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90
ZVdlYkluc3BlY3RvclByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yMiw2ICsyMiw3IEBACiAKIG1lc3Nh
Z2VzIC0+IFJlbW90ZVdlYkluc3BlY3RvclByb3h5IHsKICAgICBGcm9udGVuZERpZENsb3NlKCkK
KyAgICBSZW9wZW4oKQogICAgIEJyaW5nVG9Gcm9udCgpCiAKICAgICBTYXZlKFN0cmluZyBmaWxl
bmFtZSwgU3RyaW5nIGNvbnRlbnQsIGJvb2wgYmFzZTY0RW5jb2RlZCwgYm9vbCBmb3JjZVNhdmVB
cykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZVdl
Ykluc3BlY3RvclVJLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90
ZVdlYkluc3BlY3RvclVJLmNwcAppbmRleCBhYjQyNjk1OGJkMS4uNTc0MzhkYjJlODYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZVdlYkluc3BlY3Rv
clVJLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVXZWJJ
bnNwZWN0b3JVSS5jcHAKQEAgLTEyNiw2ICsxMjYsMTEgQEAgdm9pZCBSZW1vdGVXZWJJbnNwZWN0
b3JVSTo6Y2xvc2VXaW5kb3coKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OlJlbW90ZVdlYkluc3BlY3RvclByb3h5
OjpGcm9udGVuZERpZENsb3NlKCksIG1fcGFnZS5wYWdlSUQoKSk7CiB9CiAKK3ZvaWQgUmVtb3Rl
V2ViSW5zcGVjdG9yVUk6OnJlb3BlbigpCit7CisgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
cGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6UmVtb3RlV2ViSW5zcGVj
dG9yUHJveHk6OlJlb3BlbigpLCBtX3BhZ2UucGFnZUlEKCkpOworfQorCiB2b2lkIFJlbW90ZVdl
Ykluc3BlY3RvclVJOjpvcGVuSW5OZXdUYWIoY29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAgV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6UmVtb3RlV2ViSW5zcGVjdG9yUHJveHk6Ok9wZW5Jbk5ld1RhYih1cmwpLCBtX3BhZ2Uu
cGFnZUlEKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
UmVtb3RlV2ViSW5zcGVjdG9yVUkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1JlbW90ZVdlYkluc3BlY3RvclVJLmgKaW5kZXggMzNmNDNiZWMwMTYuLmNjMjg2OTQ3MjFlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVXZWJJbnNw
ZWN0b3JVSS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZVdl
Ykluc3BlY3RvclVJLmgKQEAgLTYyLDYgKzYyLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBicmlu
Z1RvRnJvbnQoKSBvdmVycmlkZTsKICAgICB2b2lkIGNsb3NlV2luZG93KCkgb3ZlcnJpZGU7Cisg
ICAgdm9pZCByZW9wZW4oKSBvdmVycmlkZTsKIAogICAgIHZvaWQgb3BlbkluTmV3VGFiKGNvbnN0
IFN0cmluZyYgdXJsKSBvdmVycmlkZTsKICAgICB2b2lkIHNhdmUoY29uc3QgU3RyaW5nJiB1cmws
IGNvbnN0IFN0cmluZyYgY29udGVudCwgYm9vbCBiYXNlNjRFbmNvZGVkLCBib29sIGZvcmNlU2F2
ZUFzKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYkluc3BlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJJbnNwZWN0b3IuY3BwCmluZGV4IDk1Mjg5OGQxNjlhLi4zMjAxOWM4MWI5NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3IuY3BwCkBAIC0x
MzcsNiArMTM3LDEyIEBAIHZvaWQgV2ViSW5zcGVjdG9yOjpjbG9zZSgpCiAgICAgY2xvc2VGcm9u
dGVuZENvbm5lY3Rpb24oKTsKIH0KIAordm9pZCBXZWJJbnNwZWN0b3I6OnJlb3BlbigpCit7Cisg
ICAgY2xvc2UoKTsKKyAgICBzaG93KCk7Cit9CisKIHZvaWQgV2ViSW5zcGVjdG9yOjpvcGVuSW5O
ZXdUYWIoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB7CiAgICAgVXNlckdlc3R1cmVJbmRpY2F0
b3IgaW5kaWNhdG9yIHsgUHJvY2Vzc2luZ1VzZXJHZXN0dXJlIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3IuaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5oCmluZGV4IGU1MDM5NmQ1YzU2Li4z
M2ExMWQwOTYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViSW5zcGVjdG9yLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
SW5zcGVjdG9yLmgKQEAgLTUyLDYgKzUyLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzaG93KCk7
CiAgICAgdm9pZCBjbG9zZSgpOworICAgIHZvaWQgcmVvcGVuKCk7CiAKICAgICB2b2lkIG9wZW5J
bk5ld1RhYihjb25zdCBTdHJpbmcmIHVybFN0cmluZyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5tZXNzYWdlcy5pbiBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5tZXNzYWdlcy5pbgppbmRl
eCBiZDc1NGMxMThiYS4uYmNiM2YxNTUwOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYkluc3BlY3Rvci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3IubWVzc2FnZXMuaW4KQEAgLTIzLDYg
KzIzLDcgQEAKIG1lc3NhZ2VzIC0+IFdlYkluc3BlY3RvciB7CiAgICAgU2hvdygpCiAgICAgQ2xv
c2UoKQorICAgIFJlb3BlbigpCiAKICAgICBTZXRBdHRhY2hlZChib29sIGF0dGFjaGVkKQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3JV
SS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3JVSS5j
cHAKaW5kZXggZTgyYjU2OWEyMWYuLjhjNmIyOTU2MWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3JVSS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yVUkuY3BwCkBAIC0xNjUsNiArMTY1
LDEyIEBAIHZvaWQgV2ViSW5zcGVjdG9yVUk6OmNsb3NlV2luZG93KCkKICAgICBtX3VuZGVyVGVz
dCA9IGZhbHNlOwogfQogCit2b2lkIFdlYkluc3BlY3RvclVJOjpyZW9wZW4oKQoreworICAgIGlm
IChtX2JhY2tlbmRDb25uZWN0aW9uKQorICAgICAgICBtX2JhY2tlbmRDb25uZWN0aW9uLT5zZW5k
KE1lc3NhZ2VzOjpXZWJJbnNwZWN0b3I6OlJlb3BlbigpLCAwKTsKK30KKwogV2ViQ29yZTo6VXNl
ckludGVyZmFjZUxheW91dERpcmVjdGlvbiBXZWJJbnNwZWN0b3JVSTo6dXNlckludGVyZmFjZUxh
eW91dERpcmVjdGlvbigpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fcGFnZS5jb3JlUGFnZSgpLT51
c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJJbnNwZWN0b3JVSS5oIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViSW5zcGVjdG9yVUkuaAppbmRleCA1YjAzMGVjOTVhMS4uMTM5NmU0
ZDE0NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYklu
c3BlY3RvclVJLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViSW5z
cGVjdG9yVUkuaApAQCAtOTEsNiArOTEsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGJyaW5nVG9G
cm9udCgpIG92ZXJyaWRlOwogICAgIHZvaWQgY2xvc2VXaW5kb3coKSBvdmVycmlkZTsKKyAgICB2
b2lkIHJlb3BlbigpIG92ZXJyaWRlOwogCiAgICAgV2ViQ29yZTo6VXNlckludGVyZmFjZUxheW91
dERpcmVjdGlvbiB1c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvaW9zL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvaW9zL0NoYW5nZUxvZwppbmRleCA3NTc2NGZhMWY4ZS4uNzEyNzA4ZTlm
MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvaW9zL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L2lvcy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0x
MS0xNiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIFdl
YiBJbnNwZWN0b3I6ICJSZWxvYWQgV2ViIEluc3BlY3RvciIgYnV0dG9uIG5vIGxvbmdlciBwYXJ0
aWFsbHkgd29ya3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MTc3MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDYxMzk5MzI+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJJbnNwZWN0b3JDbGllbnRJT1MubW06CisgICAgICAgIChXZWJJbnNwZWN0b3JGcm9udGVuZENs
aWVudDo6cmVvcGVuKToKKwogMjAxOC0xMC0xOCAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFw
cGxlLmNvbT4KIAogICAgICAgICBTd2l0Y2ggZnJvbSBQTEFURk9STShJT1MpIHRvIFBMQVRGT1JN
KElPU19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L2lvcy9XZWJDb3Jl
U3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L2lv
cy9XZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnRJT1MubW0KaW5kZXggMzlhZDgwZDA4
NDUuLjRjZDUzZmNlOTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L2lvcy9XZWJD
b3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnRJT1MubW0KKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS9pb3MvV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50SU9TLm1tCkBAIC0xMjQs
NiArMTI0LDcgQEAgdm9pZCBXZWJJbnNwZWN0b3JGcm9udGVuZENsaWVudDo6ZnJvbnRlbmRMb2Fk
ZWQoKSB7IH0KIFN0cmluZyBXZWJJbnNwZWN0b3JGcm9udGVuZENsaWVudDo6bG9jYWxpemVkU3Ry
aW5nc1VSTCgpIHsgcmV0dXJuIFN0cmluZygpOyB9CiB2b2lkIFdlYkluc3BlY3RvckZyb250ZW5k
Q2xpZW50OjpicmluZ1RvRnJvbnQoKSB7IH0KIHZvaWQgV2ViSW5zcGVjdG9yRnJvbnRlbmRDbGll
bnQ6OmNsb3NlV2luZG93KCkgeyB9Cit2b2lkIFdlYkluc3BlY3RvckZyb250ZW5kQ2xpZW50Ojpy
ZW9wZW4oKSB7IH0KIHZvaWQgV2ViSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQ6OmF0dGFjaFdpbmRv
dyhEb2NrU2lkZSkgeyB9CiB2b2lkIFdlYkluc3BlY3RvckZyb250ZW5kQ2xpZW50OjpkZXRhY2hX
aW5kb3coKSB7IH0KIHZvaWQgV2ViSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQ6OnNldEF0dGFjaGVk
V2luZG93SGVpZ2h0KHVuc2lnbmVkKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRl
eCAxMTVmNjVkNTBiMy4uZDJiNTcwOTE0N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAxOC0xMS0xNiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9A
YXBwbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6ICJSZWxvYWQgV2ViIEluc3BlY3Rv
ciIgYnV0dG9uIG5vIGxvbmdlciBwYXJ0aWFsbHkgd29ya3MKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTc3MworICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNDYxMzk5MzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnQuaDoKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnQubW06CisgICAgICAgIChXZWJJbnNwZWN0
b3JGcm9udGVuZENsaWVudDo6cmVvcGVuKToKKwogMjAxOC0xMS0xNSAgVHJ1aXR0IFNhdmVsbCAg
PHRzYXZlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIy
MzgyNDQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJJbnNwZWN0b3JDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkluc3BlY3RvckNsaWVudC5oCmluZGV4IGU2NjJkYjUzZDc3Li42NzBlNDA1ZDFk
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
SW5zcGVjdG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50LmgKQEAgLTExNiw2ICsxMTYsNyBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGJyaW5nVG9Gcm9udCgpIG92ZXJyaWRlOwogICAgIHZvaWQgY2xvc2VXaW5kb3co
KSBvdmVycmlkZTsKKyAgICB2b2lkIHJlb3BlbigpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBhdHRh
Y2hXaW5kb3coRG9ja1NpZGUpIG92ZXJyaWRlOwogICAgIHZvaWQgZGV0YWNoV2luZG93KCkgb3Zl
cnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJJbnNwZWN0b3JDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnQubW0KaW5kZXggNGE1YzNmOGQxMjguLjhmNTkwMDEx
OGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJJbnNwZWN0b3JDbGllbnQubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50Lm1tCkBAIC0yNDcsNiArMjQ3LDEzIEBAIHZvaWQg
V2ViSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQ6OmNsb3NlV2luZG93KCkKICAgICBbbV9mcm9udGVu
ZFdpbmRvd0NvbnRyb2xsZXIuZ2V0KCkgZGVzdHJveUluc3BlY3RvclZpZXddOwogfQogCit2b2lk
IFdlYkluc3BlY3RvckZyb250ZW5kQ2xpZW50OjpyZW9wZW4oKQoreworICAgIFdlYkluc3BlY3Rv
ciogaW5zcGVjdG9yID0gW21faW5zcGVjdGVkV2ViVmlldyBpbnNwZWN0b3JdOworICAgIFtpbnNw
ZWN0b3IgY2xvc2U6bmlsXTsKKyAgICBbaW5zcGVjdG9yIHNob3c6bmlsXTsKK30KKwogdm9pZCBX
ZWJJbnNwZWN0b3JGcm9udGVuZENsaWVudDo6YXR0YWNoV2luZG93KERvY2tTaWRlKQogewogICAg
IGlmIChbbV9mcm9udGVuZFdpbmRvd0NvbnRyb2xsZXIuZ2V0KCkgYXR0YWNoZWRdKQpAQCAtNjY0
LDggKzY3MSw3IEBAIC0gKHZvaWQpZGVzdHJveUluc3BlY3RvclZpZXcKICAgICAgICAgcmV0dXJu
OwogICAgIF9kZXN0cm95aW5nSW5zcGVjdG9yVmlldyA9IFlFUzsKIAotICAgIGlmIChfYXR0YWNo
ZWRUb0luc3BlY3RlZFdlYlZpZXcpCi0gICAgICAgIFtzZWxmIGNsb3NlXTsKKyAgICBbc2VsZiBj
bG9zZV07CiAKICAgICBfdmlzaWJsZSA9IE5POwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cK
aW5kZXggZTQ2OTZkOTA1NGQuLjdmYzVkODk3NWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTgtMTEtMTYgIEpvc2VwaCBQZWNvcmFybyAgPHBlY29y
YXJvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiAiUmVsb2FkIFdlYiBJbnNw
ZWN0b3IiIGJ1dHRvbiBubyBsb25nZXIgcGFydGlhbGx5IHdvcmtzCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE3NzMKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzQ2MTM5OTMyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50LmNwcDoKKyAgICAg
ICAgKFdlYkluc3BlY3RvckZyb250ZW5kQ2xpZW50OjpyZW9wZW4pOgorICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L1dlYkluc3BlY3RvckNsaWVudC5oOgorCiAyMDE4LTExLTE2ICBCcmVudCBGdWxn
aGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtXaW5dIFJlZHVjZSB0aGUgdXNl
IG9mIFdLU0kgbGlicmFyeSBjYWxsczogQ0ZOZXR3b3JrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnQuY3BwIGIvU291
cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50LmNw
cAppbmRleCBmOGYwYTQ2YzcwZS4uZGRmYTI4Yzk4MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkluc3BlY3RvckNsaWVudC5jcHAKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50
LmNwcApAQCAtMjY5LDYgKzI2OSwxNCBAQCB2b2lkIFdlYkluc3BlY3RvckZyb250ZW5kQ2xpZW50
OjpjbG9zZVdpbmRvdygpCiAgICAgZGVzdHJveUluc3BlY3RvclZpZXcoKTsKIH0KIAordm9pZCBX
ZWJJbnNwZWN0b3JGcm9udGVuZENsaWVudDo6cmVvcGVuKCkKK3sKKyAgICBkZXN0cm95SW5zcGVj
dG9yVmlldygpOworCisgICAgaWYgKFBhZ2UqIGluc3BlY3RlZFBhZ2UgPSBtX2luc3BlY3RlZFdl
YlZpZXctPnBhZ2UoKSkKKyAgICAgICAgaW5zcGVjdGVkUGFnZS0+aW5zcGVjdG9yQ29udHJvbGxl
cigpLnNob3coKTsKK30KKwogdm9pZCBXZWJJbnNwZWN0b3JGcm9udGVuZENsaWVudDo6YXR0YWNo
V2luZG93KERvY2tTaWRlKQogewogICAgIGlmIChtX2F0dGFjaGVkKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGll
bnQuaAppbmRleCA4MzQyZmUwM2JiOC4uNmMyODBmMjZhMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkluc3BlY3RvckNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkluc3BlY3RvckNsaWVu
dC5oCkBAIC0xMDIsNiArMTAyLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBicmluZ1RvRnJvbnQo
KSBvdmVycmlkZTsKICAgICB2b2lkIGNsb3NlV2luZG93KCkgb3ZlcnJpZGU7CisgICAgdm9pZCBy
ZW9wZW4oKSBvdmVycmlkZTsKIAogICAgIHZvaWQgc2V0QXR0YWNoZWRXaW5kb3dIZWlnaHQodW5z
aWduZWQpIG92ZXJyaWRlOwogICAgIHZvaWQgc2V0QXR0YWNoZWRXaW5kb3dXaWR0aCh1bnNpZ25l
ZCkgb3ZlcnJpZGU7Cg==
</data>
<flag name="review"
          id="372328"
          type_id="1"
          status="+"
          setter="hi"
    />
          </attachment>
      

    </bug>

</bugzilla>