<?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>48725</bug_id>
          
          <creation_ts>2010-10-31 04:54:49 -0700</creation_ts>
          <short_desc>Web Inspector: unhide new network and resources panels.</short_desc>
          <delta_ts>2010-11-01 00:42:31 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>abarth</cc>
    
    <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>eric</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>peter</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>302368</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-10-31 04:54:49 -0700</bug_when>
    <thetext>There still is enough room for polish, but I&apos;d like to enable it early in order to get the feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>302370</commentid>
    <comment_count>1</comment_count>
      <attachid>72453</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-10-31 05:17:50 -0700</bug_when>
    <thetext>Created attachment 72453
[PATCH] Proposed change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>302492</commentid>
    <comment_count>2</comment_count>
      <attachid>72478</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-10-31 14:43:57 -0700</bug_when>
    <thetext>Created attachment 72478
[PATCH] Same with Web Sockets filter fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>302498</commentid>
    <comment_count>3</comment_count>
      <attachid>72478</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2010-10-31 15:48:43 -0700</bug_when>
    <thetext>Comment on attachment 72478
[PATCH] Same with Web Sockets filter fix.

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

&gt; WebCore/inspector/front-end/StoragePanel.js:1103
&gt; +        return &quot;fs://&quot; + encodeURI(this._origin);

Better as &quot;file-system://&quot; I think.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>302579</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-11-01 00:21:13 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	LayoutTests/ChangeLog
	M	LayoutTests/http/tests/inspector/console-xhr-logging-expected.txt
	M	LayoutTests/http/tests/inspector/resource-parameters-expected.txt
	M	LayoutTests/inspector/elements-panel-styles-expected.txt
	M	WebCore/ChangeLog
	M	WebCore/English.lproj/localizedStrings.js
	M	WebCore/inspector/InspectorController.h
	M	WebCore/inspector/front-end/NetworkPanel.js
	M	WebCore/inspector/front-end/Resource.js
	M	WebCore/inspector/front-end/ResourceManager.js
	M	WebCore/inspector/front-end/Settings.js
	M	WebCore/inspector/front-end/StoragePanel.js
	M	WebCore/inspector/front-end/inspector.js
	M	WebCore/inspector/front-end/networkPanel.css
	M	WebKit/chromium/ChangeLog
	M	WebKit/chromium/src/WebDevToolsAgentImpl.cpp
Committed r71010</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>302582</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-11-01 00:42:31 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/71010 might have broken SnowLeopard Intel Release (Tests)
The following tests are not passing:
inspector/console-log-syntax-error.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72453</attachid>
            <date>2010-10-31 05:17:50 -0700</date>
            <delta_ts>2010-10-31 14:43:57 -0700</delta_ts>
            <desc>[PATCH] Proposed change.</desc>
            <filename>enable_panel</filename>
            <type>text/plain</type>
            <size>22459</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA4MzA1ZDZjLi5kYThlMWY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMTAt
MzEgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogdW5oaWRl
IG5ldyBuZXR3b3JrIGFuZCByZXNvdXJjZXMgcGFuZWxzLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDg3MjUKKworICAgICAgICAqIGh0dHAvdGVzdHMv
aW5zcGVjdG9yL2NvbnNvbGUteGhyLWxvZ2dpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0
dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGluc3BlY3Rvci9jb25zb2xlLWxvZy1zeW50YXgtZXJyb3ItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGluc3BlY3Rvci9lbGVtZW50cy1wYW5lbC1zdHlsZXMtZXhwZWN0ZWQudHh0Ogor
CiAyMDEwLTEwLTMwICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjcwOTg0LgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvY29uc29sZS14aHItbG9nZ2luZy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1sb2dn
aW5nLWV4cGVjdGVkLnR4dAppbmRleCA1NWY1MGM0Li5kNzAyZmNkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1sb2dnaW5nLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1s
b2dnaW5nLWV4cGVjdGVkLnR4dApAQCAtMTIsMTMgKzEyLDEzIEBAIGNvbnNvbGUteGhyLWxvZ2dp
bmcuaHRtbDoxMWVuYWJsZWQKIGNvbnNvbGUteGhyLWxvZ2dpbmcuaHRtbDo0MHNlbmRpbmcgYSBH
RVQgcmVxdWVzdCB0byByZXNvdXJjZXMveGhyLWV4aXN0cy5odG1sCiBYSFIgZmluaXNoZWQgbG9h
ZGluZzogImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3IvcmVzb3VyY2VzL3hoci1leGlz
dHMuaHRtbCIuCiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEgR0VUIHJlcXVl
c3QgdG8gcmVzb3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5odG1sCi1yZXNvdXJjZXMveGhyLWRv
ZXMtbm90LWV4aXN0Lmh0bWxGYWlsZWQgdG8gbG9hZCByZXNvdXJjZTogdGhlIHNlcnZlciByZXNw
b25kZWQgd2l0aCBhIHN0YXR1cyBvZiA0MDQgKE5vdCBGb3VuZCkKK3hoci1kb2VzLW5vdC1leGlz
dC5odG1sRmFpbGVkIHRvIGxvYWQgcmVzb3VyY2U6IHRoZSBzZXJ2ZXIgcmVzcG9uZGVkIHdpdGgg
YSBzdGF0dXMgb2YgNDA0IChOb3QgRm91bmQpCiBYSFIgZmluaXNoZWQgbG9hZGluZzogImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3IvcmVzb3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5o
dG1sIi4KIGNvbnNvbGUteGhyLWxvZ2dpbmcuaHRtbDo0MHNlbmRpbmcgYSBQT1NUIHJlcXVlc3Qg
dG8gcmVzb3VyY2VzL3Bvc3QtdGFyZ2V0LmNnaQogWEhSIGZpbmlzaGVkIGxvYWRpbmc6ICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvaW5zcGVjdG9yL3Jlc291cmNlcy9wb3N0LXRhcmdldC5jZ2kiLgog
Y29uc29sZS14aHItbG9nZ2luZy5odG1sOjIxZGlzYWJsZWQKIGNvbnNvbGUteGhyLWxvZ2dpbmcu
aHRtbDo0MHNlbmRpbmcgYSBHRVQgcmVxdWVzdCB0byByZXNvdXJjZXMveGhyLWV4aXN0cy5odG1s
CiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEgR0VUIHJlcXVlc3QgdG8gcmVz
b3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5odG1sCi1yZXNvdXJjZXMveGhyLWRvZXMtbm90LWV4
aXN0Lmh0bWxGYWlsZWQgdG8gbG9hZCByZXNvdXJjZTogdGhlIHNlcnZlciByZXNwb25kZWQgd2l0
aCBhIHN0YXR1cyBvZiA0MDQgKE5vdCBGb3VuZCkKK3hoci1kb2VzLW5vdC1leGlzdC5odG1sRmFp
bGVkIHRvIGxvYWQgcmVzb3VyY2U6IHRoZSBzZXJ2ZXIgcmVzcG9uZGVkIHdpdGggYSBzdGF0dXMg
b2YgNDA0IChOb3QgRm91bmQpCiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEg
UE9TVCByZXF1ZXN0IHRvIHJlc291cmNlcy9wb3N0LXRhcmdldC5jZ2kKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvcmVzb3VyY2UtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1wYXJh
bWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCBjMzczMzRmLi4yMmZjZmVlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1wYXJhbWV0ZXJzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMyw3ICszLDcgQEAgVGVzdHMgdGhhdCByZXNvdXJj
ZXMgcGFuZWwgc2hvd3MgZm9ybSBkYXRhIHBhcmFtZXRlcnMuCiAgIAogCiB7Ci0gICAgcGFnZXJl
ZiA6ICJhYm91dDpibGFuayIKKyAgICBwYWdlcmVmIDogImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9p
bnNwZWN0b3IvcmVzb3VyY2VzL3Bvc3QtdGFyZ2V0LmNnaT9xdWVyeVBhcmFtMT1xdWVyeVZhbHVl
MSZxdWVyeVBhcmFtMj0iCiAgICAgc3RhcnRlZERhdGVUaW1lIDogPHN0cmluZz4KICAgICB0aW1l
IDogPG51bWJlcj4KICAgICByZXF1ZXN0IDogewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2NvbnNvbGUtbG9nLXN5bnRheC1lcnJvci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvY29uc29sZS1sb2ctc3ludGF4LWVycm9yLWV4cGVjdGVkLnR4dAppbmRleCAw
YzBmMTZhLi45NzdlMjcxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29s
ZS1sb2ctc3ludGF4LWVycm9yLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvY29uc29sZS1sb2ctc3ludGF4LWVycm9yLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAK
IENPTlNPTEUgTUVTU0FHRTogbGluZSAxOiBTeW50YXhFcnJvcjogUGFyc2UgZXJyb3IKIFRlc3Rz
IHRoYXQgc3ludGF4IGVycm9ycyBhcmUgbG9nZ2VkIGludG8gY29uc29sZSBhbmQgZG9lc24ndCBj
YXVzZSBicm93c2VyIGNyYXNoLgogCi1yZXNvdXJjZXMvc3ludGF4LWVycm9yLmpzOjFTeW50YXhF
cnJvcjogUGFyc2UgZXJyb3IKK3N5bnRheC1lcnJvci5qczoxU3ludGF4RXJyb3I6IFBhcnNlIGVy
cm9yCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy1wYW5lbC1z
dHlsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzLXBhbmVs
LXN0eWxlcy1leHBlY3RlZC50eHQKaW5kZXggZWYyZTllNC4uNGRjZWE4NCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy1leHBlY3Rl
ZC50eHQKQEAgLTIsMzYgKzIsMzYgQEAgVGVzdHMgdGhhdCBlbGVtZW50cyBwYW5lbCBzaG93cyBw
cm9wZXIgc3R5bGVzIGluIHRoZSBzaWRlYmFyIHBhbmVsLgogCiBbZXhwYW5kZWRdICAoKQogY29s
b3I6IGJsdWU7Ci0gICAgLmZvbywgLmZvbzo6YmVmb3JlIC0gYmx1ZSByZXNvdXJjZXMvZWxlbWVu
dHMtcGFuZWwtc3R5bGVzLmNzczoxNQotICAgIC8tLSBvdmVybG9hZGVkIC0tLyAuZm9vIC0gYmxh
Y2sgcmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAKKyAgICAuZm9vLCAuZm9v
OjpiZWZvcmUgLSBibHVlIGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTUKKyAgICAvLS0gb3Zl
cmxvYWRlZCAtLS8gLmZvbyAtIGJsYWNrIGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAKIGRp
c3BsYXk6IG5vbmU7CiAgICAgZWxlbWVudC5zdHlsZSAtIG5vbmUgCiAgICAgLy0tIG92ZXJsb2Fk
ZWQgLS0vIGRpdiAtIGJsb2NrIHVzZXIgYWdlbnQgc3R5bGVzaGVldAogZm9udC1mYW1pbHk6IHNl
cmlmOwotICAgICNjb250YWluZXIgLSBzZXJpZiByZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5
bGVzLmNzczo1CisgICAgI2NvbnRhaW5lciAtIHNlcmlmIGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5j
c3M6NQogZm9udC1zaXplOiAxNHB4OwotICAgICNjb250YWluZXIgLSAxNHB4IHJlc291cmNlcy9l
bGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjUKLSAgICAvLS0gb3ZlcmxvYWRlZCAtLS8gYm9keSAt
IDEycHggcmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MQorICAgICNjb250YWlu
ZXIgLSAxNHB4IGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6NQorICAgIC8tLSBvdmVybG9hZGVk
IC0tLyBib2R5IC0gMTJweCBlbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjEKIG1hcmdpbi1ib3R0
b206IDJweDsKLSAgICAuZm9vIC0gMnB4IHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMu
Y3NzOjEwCisgICAgLmZvbyAtIDJweCBlbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjEwCiBtYXJn
aW4tbGVmdDogMHB4OwotICAgIC5mb28gLSAwcHggcmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0
eWxlcy5jc3M6MTAKKyAgICAuZm9vIC0gMHB4IGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAK
IG1hcmdpbi1yaWdodDogMHB4OwotICAgIC5mb28gLSAwcHggcmVzb3VyY2VzL2VsZW1lbnRzLXBh
bmVsLXN0eWxlcy5jc3M6MTAKKyAgICAuZm9vIC0gMHB4IGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5j
c3M6MTAKIG1hcmdpbi10b3A6IDEwcHg7Ci0gICAgLmZvbyAtIDEwcHggcmVzb3VyY2VzL2VsZW1l
bnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAKKyAgICAuZm9vIC0gMTBweCBlbGVtZW50cy1wYW5lbC1z
dHlsZXMuY3NzOjEwCiAKIFtleHBhbmRlZF0gZWxlbWVudC5zdHlsZSB7ICgpCiBkaXNwbGF5OiBu
b25lOwogCiA9PT09PT09PSBNYXRjaGVkIENTUyBSdWxlcyA9PT09PT09PQotW2V4cGFuZGVkXSAu
Zm9vIHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjMzKQorW2V4cGFuZGVk
XSAuZm9vIHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MzMpCiAKLVtleHBhbmRlZF0gLmZv
bywgLmZvbzo6YmVmb3JlIHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjE1
KQorW2V4cGFuZGVkXSAuZm9vLCAuZm9vOjpiZWZvcmUgeyAoZWxlbWVudHMtcGFuZWwtc3R5bGVz
LmNzczoxNSkKIGNvbG9yOiBibHVlOwogY29udGVudDogJ1tiZWZvcmUgRm9vXSc7CiAKLVtleHBh
bmRlZF0gLmZvbyB7IChyZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxMCkKK1tl
eHBhbmRlZF0gLmZvbyB7IChlbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjEwKQogLy0tIG92ZXJs
b2FkZWQgLS0vIGNvbG9yOiBibGFjazsKIG1hcmdpbjogMTBweCAwcHggMnB4OwogICAgIG1hcmdp
bi10b3A6IDEwcHg7CkBAIC00MywzMiArNDMsMzIgQEAgbWFyZ2luOiAxMHB4IDBweCAycHg7CiAv
LS0gb3ZlcmxvYWRlZCAtLS8gZGlzcGxheTogYmxvY2s7CiAKID09PT09PT09IEluaGVyaXRlZCBm
cm9tIGRpdiNjb250YWluZXIgPT09PT09PT0KLVtleHBhbmRlZF0gI2NvbnRhaW5lciB7IChyZXNv
dXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczo1KQorW2V4cGFuZGVkXSAjY29udGFpbmVy
IHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6NSkKIGZvbnQtZmFtaWx5OiBzZXJpZjsKIGZv
bnQtc2l6ZTogMTRweDsKIAogPT09PT09PT0gSW5oZXJpdGVkIGZyb20gYm9keSA9PT09PT09PQot
W2V4cGFuZGVkXSBib2R5IHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjEp
CitbZXhwYW5kZWRdIGJvZHkgeyAoZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxKQogLy0tIG92
ZXJsb2FkZWQgLS0vIGZvbnQtc2l6ZTogMTJweDsKIAogCiA9PT09PT09PSBQc2V1ZG8gOjpiZWZv
cmUgZWxlbWVudCA9PT09PT09PQotW2V4cGFuZGVkXSAuZm9vOjpiZWZvcmUgeyAocmVzb3VyY2Vz
L2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MzcpCitbZXhwYW5kZWRdIC5mb286OmJlZm9yZSB7
IChlbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjM3KQogCi1bZXhwYW5kZWRdIC5mb286OmJlZm9y
ZSB7IChyZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoyMCkKK1tleHBhbmRlZF0g
LmZvbzo6YmVmb3JlIHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MjApCiBjb2xvcjogcmVk
OwogCi1bZXhwYW5kZWRdIC5mb28sIC5mb286OmJlZm9yZSB7IChyZXNvdXJjZXMvZWxlbWVudHMt
cGFuZWwtc3R5bGVzLmNzczoxNSkKK1tleHBhbmRlZF0gLmZvbywgLmZvbzo6YmVmb3JlIHsgKGVs
ZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTUpCiAvLS0gb3ZlcmxvYWRlZCAtLS8gY29sb3I6IGJs
dWU7CiBjb250ZW50OiAnW2JlZm9yZSBGb29dJzsKIAogCiA9PT09PT09PSBQc2V1ZG8gOjphZnRl
ciBlbGVtZW50ID09PT09PT09Ci1bZXhwYW5kZWRdIC5mb286OmFmdGVyIHsgKHJlc291cmNlcy9l
bGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjI4KQorW2V4cGFuZGVkXSAuZm9vOjphZnRlciB7IChl
bGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjI4KQogY29udGVudDogJ1thZnRlciBGb28gMl0nOwog
Zm9udC1mYW1pbHk6IGNvdXJpZXI7CiAKLVtleHBhbmRlZF0gLmZvbzo6YWZ0ZXIgeyAocmVzb3Vy
Y2VzL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MjQpCitbZXhwYW5kZWRdIC5mb286OmFmdGVy
IHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MjQpCiBjb2xvcjogZ3JlZW47CiAvLS0gb3Zl
cmxvYWRlZCAtLS8gY29udGVudDogJ1thZnRlciBGb29dJzsKIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyN2UwNGZiLi4xYTM3MTdkIDEw
MDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMwIEBACisyMDEwLTEwLTMxICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFdlYiBJbnNwZWN0b3I6IHVuaGlkZSBuZXcgbmV0d29yayBhbmQgcmVzb3VyY2VzIHBhbmVscy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ4NzI1CisK
KyAgICAgICAgKiBFbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL05ldHdvcmtQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3b3JrUGFu
ZWwpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanM6CisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9TdG9yYWdlUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuU3RvcmFnZVBhbmVsKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwu
cHJvdG90eXBlLnJlc2V0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJv
dG90eXBlLmFkZFJlc291cmNlVG9GcmFtZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3RvcmFn
ZVBhbmVsLnByb3RvdHlwZS5hZGREb2N1bWVudFVSTCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
U3RvcmFnZVBhbmVsLnByb3RvdHlwZS5zaG93RmlsZVN5c3RlbSk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuRmlsZVN5c3RlbVRyZWVFbGVtZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5GaWxl
U3lzdGVtVHJlZUVsZW1lbnQucHJvdG90eXBlLmdldCBpdGVtVVJMKToKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5GaWxlU3lzdGVtVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uc2VsZWN0KToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci51cGRhdGVSZXNvdXJjZSk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9uZXR3
b3JrUGFuZWwuY3NzOgorICAgICAgICAoI25ldHdvcmstY2xvc2UtYnV0dG9uKToKKyAgICAgICAg
KC5uZXR3b3JrLnBhbmVsLnZpZXdpbmctcmVzb3VyY2UgI25ldHdvcmstY2xvc2UtYnV0dG9uKToK
KwogMjAxMC0xMC0zMCAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBiL1dlYkNvcmUvRW5nbGlzaC5scHJv
ai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IGE0YTE5OTcuLjU3YWU1MmQgMTAwNjQ0CkJpbmFy
eSBmaWxlcyBhL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGFuZCBi
L1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGRpZmZlcgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCmluZGV4IDhiMDA4MzUuLjY0MDk4N2IgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaAorKysgYi9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTg2LDcgKzg2LDcgQEAg
Y2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgU3RvcmFnZTsKIGNsYXNzIFN0b3JhZ2VBcmVhOwog
Ci0jZGVmaW5lIExFR0FDWV9SRVNPVVJDRV9UUkFDS0lOR19FTkFCTEVEIDEKKyNkZWZpbmUgTEVH
QUNZX1JFU09VUkNFX1RSQUNLSU5HX0VOQUJMRUQgMAogCiAjaWYgTEVHQUNZX1JFU09VUkNFX1RS
QUNLSU5HX0VOQUJMRUQKIGNsYXNzIEluc3BlY3RvclJlc291cmNlOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtQYW5lbC5qcyBiL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9OZXR3b3JrUGFuZWwuanMKaW5kZXggOGMzYWY2YS4uYzBmOGYyMCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtQYW5lbC5qcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1BhbmVsLmpzCkBAIC01Niw5ICs1
Niw5IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUGFuZWwgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5l
bGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX3ZpZXdzQ29udGFpbmVyRWxlbWVudCk7CiAKICAgICB2
YXIgY2xvc2VCdXR0b25FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7
Ci0gICAgY2xvc2VCdXR0b25FbGVtZW50LmNsYXNzTmFtZSA9ICJuZXR3b3JrLWNsb3NlLWJ1dHRv
biI7CisgICAgY2xvc2VCdXR0b25FbGVtZW50LmlkID0gIm5ldHdvcmstY2xvc2UtYnV0dG9uIjsK
ICAgICBjbG9zZUJ1dHRvbkVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl90
b2dnbGVHcmlkTW9kZS5iaW5kKHRoaXMpLCBmYWxzZSk7Ci0gICAgdGhpcy5fdmlld3NDb250YWlu
ZXJFbGVtZW50LmFwcGVuZENoaWxkKGNsb3NlQnV0dG9uRWxlbWVudCk7CisgICAgdGhpcy5lbGVt
ZW50LmFwcGVuZENoaWxkKGNsb3NlQnV0dG9uRWxlbWVudCk7CiAKICAgICB0aGlzLl9jcmVhdGVT
b3J0aW5nRnVuY3Rpb25zKCk7CiAgICAgdGhpcy5fY3JlYXRlVGFibGUoKTsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcyBiL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcwppbmRleCAxMjRmNzM2Li5iNWYzOTg0IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMKKysrIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzCkBAIC00NSw3ICs0NSw3IEBAIHZhciBQ
cmVmZXJlbmNlcyA9IHsKICAgICBvbmxpbmVEZXRlY3Rpb25FbmFibGVkOiB0cnVlLAogICAgIG5h
dGl2ZUluc3RydW1lbnRhdGlvbkVuYWJsZWQ6IGZhbHNlLAogICAgIHJlc291cmNlRXhwb3J0RW5h
YmxlZDogZmFsc2UsCi0gICAgbmV0d29ya1BhbmVsRW5hYmxlZDogZmFsc2UsCisgICAgbmV0d29y
a1BhbmVsRW5hYmxlZDogdHJ1ZSwKICAgICBmaWxlU3lzdGVtRW5hYmxlZDogZmFsc2UsCiAgICAg
dXNlRGF0YVVSTEZvclJlc291cmNlSW1hZ2VJY29uczogdHJ1ZQogfQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0b3JhZ2VQYW5lbC5qcyBiL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TdG9yYWdlUGFuZWwuanMKaW5kZXggMjQzZWI4My4uNTJkNjA2MyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0b3JhZ2VQYW5lbC5qcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3RvcmFnZVBhbmVsLmpzCkBAIC01OSw3ICs1
OSw3IEBAIFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwgPSBmdW5jdGlvbihkYXRhYmFzZSkKICAg
ICB0aGlzLnNpZGViYXJUcmVlLmFwcGVuZENoaWxkKHRoaXMuYXBwbGljYXRpb25DYWNoZUxpc3RU
cmVlRWxlbWVudCk7CiAKICAgICBpZiAoUHJlZmVyZW5jZXMuZmlsZVN5c3RlbUVuYWJsZWQpIHsK
LSAgICAgICAgdGhpcy5maWxlU3lzdGVtTGlzdFRyZWVFbGVtZW50ID0gbmV3IFdlYkluc3BlY3Rv
ci5TdG9yYWdlQ2F0ZWdvcnlUcmVlRWxlbWVudCh0aGlzLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkZpbGUgU3lzdGVtIiksICJmaWxlLXN5c3RlbS1zdG9yYWdlLXRyZWUtaXRlbSIpOworICAgICAg
ICB0aGlzLmZpbGVTeXN0ZW1MaXN0VHJlZUVsZW1lbnQgPSBuZXcgV2ViSW5zcGVjdG9yLlN0b3Jh
Z2VDYXRlZ29yeVRyZWVFbGVtZW50KHRoaXMsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiRmlsZSBT
eXN0ZW0iKSwgIkZpbGVTeXN0ZW0iLCAiZmlsZS1zeXN0ZW0tc3RvcmFnZS10cmVlLWl0ZW0iKTsK
ICAgICAgICAgdGhpcy5zaWRlYmFyVHJlZS5hcHBlbmRDaGlsZCh0aGlzLmZpbGVTeXN0ZW1MaXN0
VHJlZUVsZW1lbnQpOwogICAgICAgICB0aGlzLmZpbGVTeXN0ZW1MaXN0VHJlZUVsZW1lbnQuZXhw
YW5kKCk7CiAgICAgfQpAQCAtNzQsNiArNzQsNyBAQCBXZWJJbnNwZWN0b3IuU3RvcmFnZVBhbmVs
ID0gZnVuY3Rpb24oZGF0YWJhc2UpCiAgICAgdGhpcy5fZGF0YWJhc2VzID0gW107CiAgICAgdGhp
cy5fZG9tU3RvcmFnZSA9IFtdOwogICAgIHRoaXMuX2Nvb2tpZVZpZXdzID0ge307CisgICAgdGhp
cy5fb3JpZ2lucyA9IHt9OwogICAgIHRoaXMuX2RvbWFpbnMgPSB7fTsKIH0KIApAQCAtMTE2LDYg
KzExNyw3IEBAIFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlID0gewogCiAgICAg
cmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7CisgICAgICAgIHRoaXMuX29yaWdpbnMgPSB7fTsKICAg
ICAgICAgdGhpcy5fZG9tYWlucyA9IHt9OwogICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRo
aXMuX2RhdGFiYXNlcy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgdmFyIGRhdGFiYXNlID0g
dGhpcy5fZGF0YWJhc2VzW2ldOwpAQCAtMTk4LDExICsyMDAsNyBAQCBXZWJJbnNwZWN0b3IuU3Rv
cmFnZVBhbmVsLnByb3RvdHlwZSA9IHsKIAogICAgIGFkZFJlc291cmNlVG9GcmFtZTogZnVuY3Rp
b24oZnJhbWVJZCwgcmVzb3VyY2UpCiAgICAgewotICAgICAgICBpZiAoIXRoaXMuX2RvbWFpbnNb
cmVzb3VyY2UuZG9tYWluXSkgewotICAgICAgICAgICAgdGhpcy5fZG9tYWluc1tyZXNvdXJjZS5k
b21haW5dID0gdHJ1ZTsKLSAgICAgICAgICAgIHRoaXMuYWRkQ29va2llRG9tYWluKHJlc291cmNl
LmRvbWFpbik7Ci0gICAgICAgICAgICB0aGlzLmFkZEFwcGxpY2F0aW9uQ2FjaGUocmVzb3VyY2Uu
ZG9tYWluKTsKLSAgICAgICAgfQorICAgICAgICB0aGlzLmFkZERvY3VtZW50VVJMKHJlc291cmNl
LmRvY3VtZW50VVJMKTsKIAogICAgICAgICBpZiAocmVzb3VyY2Uuc3RhdHVzQ29kZSA+PSAzMDEg
JiYgcmVzb3VyY2Uuc3RhdHVzQ29kZSA8PSAzMDMpCiAgICAgICAgICAgICByZXR1cm47CkBAIC0y
NDQsNyArMjQyLDggQEAgV2ViSW5zcGVjdG9yLlN0b3JhZ2VQYW5lbC5wcm90b3R5cGUgPSB7CiAg
ICAgICAgIC8vIEZJWE1FOiBkbyBub3QgYWRkIFhIUiBpbiB0aGUgZmlyc3QgcGxhY2UgYmFzZWQg
b24gdGhlIG5hdGl2ZSBpbnN0cnVtZW50YXRpb24uCiAgICAgICAgIGlmIChyZXNvdXJjZS50eXBl
ID09PSBXZWJJbnNwZWN0b3IuUmVzb3VyY2UuVHlwZS5YSFIpIHsKICAgICAgICAgICAgIHZhciBy
ZXNvdXJjZVRyZWVFbGVtZW50ID0gdGhpcy5fZmluZFRyZWVFbGVtZW50Rm9yUmVzb3VyY2UocmVz
b3VyY2UpOwotICAgICAgICAgICAgcmVzb3VyY2VUcmVlRWxlbWVudC5wYXJlbnQucmVtb3ZlQ2hp
bGQocmVzb3VyY2VUcmVlRWxlbWVudCk7CisgICAgICAgICAgICBpZiAocmVzb3VyY2VUcmVlRWxl
bWVudCkKKyAgICAgICAgICAgICAgICByZXNvdXJjZVRyZWVFbGVtZW50LnBhcmVudC5yZW1vdmVD
aGlsZChyZXNvdXJjZVRyZWVFbGVtZW50KTsKICAgICAgICAgfQogICAgIH0sCiAKQEAgLTI1Niwx
MSArMjU1LDMzIEBAIFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlID0gewogICAg
ICAgICBkYXRhYmFzZS5fZGF0YWJhc2VzVHJlZUVsZW1lbnQgPSBkYXRhYmFzZVRyZWVFbGVtZW50
OwogICAgICAgICB0aGlzLmRhdGFiYXNlc0xpc3RUcmVlRWxlbWVudC5hcHBlbmRDaGlsZChkYXRh
YmFzZVRyZWVFbGVtZW50KTsKICAgICB9LAotICAgIAotICAgIGFkZENvb2tpZURvbWFpbjogZnVu
Y3Rpb24oZG9tYWluKQorCisgICAgYWRkRG9jdW1lbnRVUkw6IGZ1bmN0aW9uKHVybCkKICAgICB7
Ci0gICAgICAgIHZhciBjb29raWVEb21haW5UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3Iu
Q29va2llVHJlZUVsZW1lbnQodGhpcywgZG9tYWluKTsKLSAgICAgICAgdGhpcy5jb29raWVMaXN0
VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoY29va2llRG9tYWluVHJlZUVsZW1lbnQpOworICAgICAg
ICB2YXIgcGFyc2VkVVJMID0gdXJsLmFzUGFyc2VkVVJMKCk7CisgICAgICAgIGlmICghcGFyc2Vk
VVJMKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHZhciBkb21haW4gPSBwYXJzZWRV
UkwuaG9zdDsKKyAgICAgICAgaWYgKCF0aGlzLl9kb21haW5zW2RvbWFpbl0pIHsKKyAgICAgICAg
ICAgIHRoaXMuX2RvbWFpbnNbZG9tYWluXSA9IHRydWU7CisKKyAgICAgICAgICAgIHZhciBjb29r
aWVEb21haW5UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQo
dGhpcywgZG9tYWluKTsKKyAgICAgICAgICAgIHRoaXMuY29va2llTGlzdFRyZWVFbGVtZW50LmFw
cGVuZENoaWxkKGNvb2tpZURvbWFpblRyZWVFbGVtZW50KTsKKworICAgICAgICAgICAgdmFyIGFw
cGxpY2F0aW9uQ2FjaGVUcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuQXBwbGljYXRpb25D
YWNoZVRyZWVFbGVtZW50KHRoaXMsIGRvbWFpbik7CisgICAgICAgICAgICB0aGlzLmFwcGxpY2F0
aW9uQ2FjaGVMaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoYXBwbGljYXRpb25DYWNoZVRyZWVF
bGVtZW50KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChQcmVmZXJlbmNlcy5maWxlU3lzdGVt
RW5hYmxlZCkgeworICAgICAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG1hdGNoIHRoZSBT
ZWN1cml0eU9yaWdpbjo6dG9TdHJpbmcoKSwgYWRkIGEgdGVzdCBmb3IgdGhpcy4KKyAgICAgICAg
ICAgIHZhciBzZWN1cml0eU9yaWdpbiA9IHBhcnNlZFVSTC5zY2hlbWUgKyAiOi8vIiArIHBhcnNl
ZFVSTC5ob3N0ICsgKHBhcnNlZFVSTC5wb3J0ID8gKCI6IiArIHBhcnNlZFVSTC5wb3J0KSA6ICIi
KTsKKyAgICAgICAgICAgIGlmICghdGhpcy5fb3JpZ2luc1tzZWN1cml0eU9yaWdpbl0pIHsKKyAg
ICAgICAgICAgICAgICB0aGlzLl9vcmlnaW5zW3NlY3VyaXR5T3JpZ2luXSA9IHRydWU7CisgICAg
ICAgICAgICAgICAgdmFyIGZpbGVTeXN0ZW1UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3Iu
RmlsZVN5c3RlbVRyZWVFbGVtZW50KHRoaXMsIHNlY3VyaXR5T3JpZ2luKTsKKyAgICAgICAgICAg
ICAgICB0aGlzLmZpbGVTeXN0ZW1MaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZmlsZVN5c3Rl
bVRyZWVFbGVtZW50KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQogICAgIH0sCiAKICAgICBh
ZGRET01TdG9yYWdlOiBmdW5jdGlvbihkb21TdG9yYWdlKQpAQCAtMjc0LDE4ICsyOTUsNiBAQCBX
ZWJJbnNwZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRoaXMu
c2Vzc2lvblN0b3JhZ2VMaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZG9tU3RvcmFnZVRyZWVF
bGVtZW50KTsKICAgICB9LAogCi0gICAgYWRkQXBwbGljYXRpb25DYWNoZTogZnVuY3Rpb24oZG9t
YWluKQotICAgIHsKLSAgICAgICAgdmFyIGFwcGxpY2F0aW9uQ2FjaGVUcmVlRWxlbWVudCA9IG5l
dyBXZWJJbnNwZWN0b3IuQXBwbGljYXRpb25DYWNoZVRyZWVFbGVtZW50KHRoaXMsIGRvbWFpbik7
Ci0gICAgICAgIHRoaXMuYXBwbGljYXRpb25DYWNoZUxpc3RUcmVlRWxlbWVudC5hcHBlbmRDaGls
ZChhcHBsaWNhdGlvbkNhY2hlVHJlZUVsZW1lbnQpOwotICAgIH0sCi0KLSAgICBhZGRGaWxlU3lz
dGVtOiBmdW5jdGlvbihvcmlnaW4pCi0gICAgewotICAgICAgICB2YXIgZmlsZVN5c3RlbVRyZWVF
bGVtZW50ID0gbmV3IFdlYkluc3BlY3Rvci5GaWxlU3lzdGVtVHJlZUVsZW1lbnQodGhpcywgb3Jp
Z2luKTsKLSAgICAgICAgdGhpcy5maWxlU3lzdGVtTGlzdFRyZWVFbGVtZW50LmFwcGVuZENoaWxk
KGZpbGVTeXN0ZW1UcmVlRWxlbWVudCk7Ci0gICAgfSwKLSAgICAKICAgICBzZWxlY3REYXRhYmFz
ZTogZnVuY3Rpb24oZGF0YWJhc2VJZCkKICAgICB7CiAgICAgICAgIHZhciBkYXRhYmFzZTsKQEAg
LTQwOSw5ICs0MTgsOSBAQCBXZWJJbnNwZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgICAgIHRoaXMuX2FwcGxpY2F0aW9uQ2FjaGVWaWV3LnVwZGF0ZVN0YXR1cyh0aGlz
Ll9jYWNoZWRBcHBsaWNhdGlvbkNhY2hlVmlld1N0YXR1cyk7CiAgICAgfSwKIAotICAgIHNob3dG
aWxlU3lzdGVtOiBmdW5jdGlvbih0cmVlRWxlbWVudCwgZmlsZVN5c3RlbURvbWFpbikKKyAgICBz
aG93RmlsZVN5c3RlbTogZnVuY3Rpb24odHJlZUVsZW1lbnQsIG9yaWdpbikKICAgICB7Ci0gICAg
ICAgIHRoaXMuX2ZpbGVTeXN0ZW1WaWV3ID0gIG5ldyBXZWJJbnNwZWN0b3IuRmlsZVN5c3RlbVZp
ZXcodHJlZUVsZW1lbnQsIGZpbGVTeXN0ZW1Eb21haW4pOworICAgICAgICB0aGlzLl9maWxlU3lz
dGVtVmlldyA9IG5ldyBXZWJJbnNwZWN0b3IuRmlsZVN5c3RlbVZpZXcodHJlZUVsZW1lbnQsIG9y
aWdpbik7CiAgICAgICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodGhpcy5fZmlsZVN5c3RlbVZpZXcp
OwogICAgIH0sCiAgICAgCkBAIC02NTEsMTMgKzY2MCwxMyBAQCBXZWJJbnNwZWN0b3IuU3RvcmFn
ZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICB7CiAgICAgICAgIGZ1bmN0aW9uIGlzQW5jZXN0b3Io
YW5jZXN0b3IsIG9iamVjdCkKICAgICAgICAgewotICAgICAgICAgICAgY29uc29sZS5lcnJvcigi
VGhlcmUgc2hvdWxkIGJlIG5vIGNhbGxzIHRvIGlzQW5jZXN0b3IsIGJ1dCB0aGVyZSB3YXMgb25l
IGZvciAiLCBvYmplY3QpOworICAgICAgICAgICAgLy8gUmVkaXJlY3RzLCBYSFJzIGRvIG5vdCBi
ZWxvbmcgdG8gdGhlIHRyZWUsIGl0IGlzIGZpbmUgdG8gc2lsZW50bHkgcmV0dXJuIGZhbHNlIGhl
cmUuCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KIAogICAgICAgICBmdW5j
dGlvbiBnZXRQYXJlbnQob2JqZWN0KQogICAgICAgICB7Ci0gICAgICAgICAgICBjb25zb2xlLmVy
cm9yKCJUaGVyZSBzaG91bGQgYmUgbm8gY2FsbHMgdG8gZ2V0UGFyZW50LCBidXQgdGhlcmUgd2Fz
IG9uZSBmb3IgIiwgb2JqZWN0KTsKKyAgICAgICAgICAgIC8vIFJlZGlyZWN0cywgWEhScyBkbyBu
b3QgYmVsb25nIHRvIHRoZSB0cmVlLCBpdCBpcyBmaW5lIHRvIHNpbGVudGx5IHJldHVybiBmYWxz
ZSBoZXJlLgogICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgIH0KIApAQCAtMTA3MCwx
NiArMTA3OSwyMiBAQCBXZWJJbnNwZWN0b3IuQXBwbGljYXRpb25DYWNoZVRyZWVFbGVtZW50LnBy
b3RvdHlwZSA9IHsKIH0KIFdlYkluc3BlY3Rvci5BcHBsaWNhdGlvbkNhY2hlVHJlZUVsZW1lbnQu
cHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5CYXNlU3RvcmFnZVRyZWVFbGVtZW50
LnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1UcmVlRWxlbWVudCA9IGZ1bmN0
aW9uKHN0b3JhZ2VQYW5lbCwgZmlsZVN5c3RlbURvbWFpbikKK1dlYkluc3BlY3Rvci5GaWxlU3lz
dGVtVHJlZUVsZW1lbnQgPSBmdW5jdGlvbihzdG9yYWdlUGFuZWwsIG9yaWdpbikKIHsKLSAgICBX
ZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VUcmVlRWxlbWVudC5jYWxsKHRoaXMsIHN0b3JhZ2VQYW5l
bCwgbnVsbCwgZmlsZVN5c3RlbURvbWFpbiA/IGZpbGVTeXN0ZW1Eb21haW4gOiBXZWJJbnNwZWN0
b3IuVUlTdHJpbmcoIkxvY2FsIEZpbGVzIiksICJmaWxlLXN5c3RlbS1zdG9yYWdlLXRyZWUtaXRl
bSIpOwotICAgIHRoaXMuX2ZpbGVTeXN0ZW1Eb21haW4gPSBmaWxlU3lzdGVtRG9tYWluOworICAg
IFdlYkluc3BlY3Rvci5CYXNlU3RvcmFnZVRyZWVFbGVtZW50LmNhbGwodGhpcywgc3RvcmFnZVBh
bmVsLCBudWxsLCBvcmlnaW4sICJmaWxlLXN5c3RlbS1zdG9yYWdlLXRyZWUtaXRlbSIpOworICAg
IHRoaXMuX29yaWdpbiA9IG9yaWdpbjsKIH0KIAogV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1UcmVl
RWxlbWVudC5wcm90b3R5cGUgPSB7CisgICAgZ2V0IGl0ZW1VUkwoKQorICAgIHsKKyAgICAgICAg
cmV0dXJuICJmczovLyIgKyBlbmNvZGVVUkkodGhpcy5fb3JpZ2luKTsKKyAgICB9LAorCiAgICAg
b25zZWxlY3Q6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHRoaXMuX3N0b3JhZ2VQYW5lbC5z
aG93RmlsZVN5c3RlbSh0aGlzLCB0aGlzLl9maWxlU3lzdGVtRG9tYWluKTsKKyAgICAgICAgV2Vi
SW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uc2VsZWN0LmNhbGwo
dGhpcyk7CisgICAgICAgIHRoaXMuX3N0b3JhZ2VQYW5lbC5zaG93RmlsZVN5c3RlbSh0aGlzLCB0
aGlzLl9vcmlnaW4pOwogICAgIH0KIH0KICAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9pbnNwZWN0b3IuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5z
cGVjdG9yLmpzCmluZGV4IGVmNTIzOWMuLjhjOWU2NzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5qcwpAQCAtNTAsOSArNTAsNiBAQAogCiB2YXIgV2ViSW5zcGVjdG9y
ID0gewogICAgIHJlc291cmNlczoge30sCi0gICAgY29va2llRG9tYWluczoge30sCi0gICAgYXBw
bGljYXRpb25DYWNoZURvbWFpbnM6IHt9LAotICAgIGZpbGVTeXN0ZW1PcmlnaW5zOiB7fSwKICAg
ICBtaXNzaW5nTG9jYWxpemVkU3RyaW5nczoge30sCiAgICAgcGVuZGluZ0Rpc3BhdGNoZXM6IDAs
CiAKQEAgLTEyOTQsMTQgKzEyOTEsNyBAQCBXZWJJbnNwZWN0b3IudXBkYXRlUmVzb3VyY2UgPSBm
dW5jdGlvbihwYXlsb2FkKQogICAgICAgICBpZiAocmVzb3VyY2UubWFpblJlc291cmNlKQogICAg
ICAgICAgICAgdGhpcy5tYWluUmVzb3VyY2UgPSByZXNvdXJjZTsKIAotICAgICAgICB2YXIgcGFy
c2VkVVJMID0gcGF5bG9hZC5kb2N1bWVudFVSTC5hc1BhcnNlZFVSTCgpOwotICAgICAgICBpZiAo
cGFyc2VkVVJMKSB7Ci0gICAgICAgICAgICB0aGlzLl9hZGRDb29raWVEb21haW4ocGFyc2VkVVJM
Lmhvc3QpOwotICAgICAgICAgICAgdGhpcy5fYWRkQXBwQ2FjaGVEb21haW4ocGFyc2VkVVJMLmhv
c3QpOwotICAgICAgICAgICAgaWYgKFByZWZlcmVuY2VzLmZpbGVTeXN0ZW1FbmFibGVkKQotICAg
ICAgICAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG1hdGNoIHRoZSBTZWN1cml0eU9yaWdpbjo6dG9T
dHJpbmcoKS4gRklYTUU6IEFkZCBhIHRlc3QgZm9yIHRoaXMuCi0gICAgICAgICAgICAgICAgdGhp
cy5fYWRkRmlsZVN5c3RlbU9yaWdpbihwYXJzZWRVUkwuc2NoZW1lICsgIjovLyIgKyBwYXJzZWRV
UkwuaG9zdCArIChwYXJzZWRVUkwucG9ydCA/ICgiOiIgKyBwYXJzZWRVUkwucG9ydCkgOiAiIikp
OwotICAgICAgICB9CisgICAgICAgIHRoaXMucGFuZWxzLnN0b3JhZ2UuYWRkRG9jdW1lbnRVUkwo
cGF5bG9hZC5kb2N1bWVudFVSTCk7CiAgICAgfQogCiAgICAgaWYgKHBheWxvYWQuZGlkUmVzcG9u
c2VDaGFuZ2UpIHsKQEAgLTEzOTMsNDIgKzEzODMsNiBAQCBXZWJJbnNwZWN0b3IuYWRkRGF0YWJh
c2UgPSBmdW5jdGlvbihwYXlsb2FkKQogICAgIHRoaXMucGFuZWxzLnN0b3JhZ2UuYWRkRGF0YWJh
c2UoZGF0YWJhc2UpOwogfQogCi1XZWJJbnNwZWN0b3IuX2FkZENvb2tpZURvbWFpbiA9IGZ1bmN0
aW9uKGRvbWFpbikKLXsKLSAgICAvLyBFbGltaW5hdGUgZHVwbGljYXRlIGRvbWFpbnMgZnJvbSB0
aGUgbGlzdC4KLSAgICBpZiAoZG9tYWluIGluIHRoaXMuY29va2llRG9tYWlucykKLSAgICAgICAg
cmV0dXJuOwotICAgIHRoaXMuY29va2llRG9tYWluc1tkb21haW5dID0gdHJ1ZTsKLQotICAgIGlm
ICghdGhpcy5wYW5lbHMuc3RvcmFnZSkKLSAgICAgICAgcmV0dXJuOwotICAgIHRoaXMucGFuZWxz
LnN0b3JhZ2UuYWRkQ29va2llRG9tYWluKGRvbWFpbik7Ci19Ci0KLVdlYkluc3BlY3Rvci5fYWRk
QXBwQ2FjaGVEb21haW4gPSBmdW5jdGlvbihkb21haW4pCi17Ci0gICAgLy8gRWxpbWluYXRlIGR1
cGxpY2F0ZSBkb21haW5zIGZyb20gdGhlIGxpc3QuCi0gICAgaWYgKGRvbWFpbiBpbiB0aGlzLmFw
cGxpY2F0aW9uQ2FjaGVEb21haW5zKQotICAgICAgICByZXR1cm47Ci0gICAgdGhpcy5hcHBsaWNh
dGlvbkNhY2hlRG9tYWluc1tkb21haW5dID0gdHJ1ZTsKLQotICAgIGlmICghdGhpcy5wYW5lbHMu
c3RvcmFnZSkKLSAgICAgICAgcmV0dXJuOwotICAgIHRoaXMucGFuZWxzLnN0b3JhZ2UuYWRkQXBw
bGljYXRpb25DYWNoZShkb21haW4pOwotfQotCi1XZWJJbnNwZWN0b3IuX2FkZEZpbGVTeXN0ZW1P
cmlnaW4gPSBmdW5jdGlvbihvcmlnaW4pCi17Ci0gICAgaWYgKCF0aGlzLnBhbmVscy5zdG9yYWdl
KQotICAgICAgICByZXR1cm47Ci0gICAgLy8gRWxpbWluYXRlIGR1cGxpY2F0ZSBvcmlnaW5zLgot
ICAgIC8vIEZJWE1FOiBNb3ZlIGFwcGNhY2hlL2Nvb2tpZXMvZmlsZXN5c3RlbSBkb21haW4gZHVw
IGNoZWNrcyBpbiBTdG9yYWdlUGFuZWwuanMKLSAgICBpZiAob3JpZ2luIGluIHRoaXMuZmlsZVN5
c3RlbU9yaWdpbnMpCi0gICAgICAgIHJldHVybjsKLSAgICB0aGlzLmZpbGVTeXN0ZW1PcmlnaW5z
W29yaWdpbl0gPSB0cnVlOwotICAgIHRoaXMucGFuZWxzLnN0b3JhZ2UuYWRkRmlsZVN5c3RlbShv
cmlnaW4pOwotfQotCiBXZWJJbnNwZWN0b3IuYWRkRE9NU3RvcmFnZSA9IGZ1bmN0aW9uKHBheWxv
YWQpCiB7CiAgICAgaWYgKCF0aGlzLnBhbmVscy5zdG9yYWdlKQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL25ldHdvcmtQYW5lbC5jc3MgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvbmV0d29ya1BhbmVsLmNzcwppbmRleCAyMTU2ODFmLi4yNWQ4NGEyIDEwMDY0
NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvbmV0d29ya1BhbmVsLmNzcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvbmV0d29ya1BhbmVsLmNzcwpAQCAtNTQ0LDcg
KzU0NCw3IEBACiAgICAgbGVmdDogMDsKIH0KIAotLm5ldHdvcmstY2xvc2UtYnV0dG9uIHsKKyNu
ZXR3b3JrLWNsb3NlLWJ1dHRvbiB7CiAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgIHdpZHRo
OiAxNHB4OwogICAgIGhlaWdodDogMTRweDsKQEAgLTU1NSw2ICs1NTUsMTEgQEAKICAgICB0b3A6
IDRweDsKICAgICByaWdodDogNXB4OwogICAgIHotaW5kZXg6IDEwOworICAgIGRpc3BsYXk6IG5v
bmU7Cit9CisKKy5uZXR3b3JrLnBhbmVsLnZpZXdpbmctcmVzb3VyY2UgI25ldHdvcmstY2xvc2Ut
YnV0dG9uICB7CisgICAgZGlzcGxheTogYmxvY2s7CiB9CiAKIC5uZXR3b3JrLnBhbmVsIC5kYXRh
LWdyaWQuZnVsbC1ncmlkLW1vZGUgLnZpZXdlci1jb2x1bW4gewpkaWZmIC0tZ2l0IGEvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMmJj
YjRmZC4uYjc3ZjlhMSAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysg
Yi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMTAtMzEg
IFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogdW5oaWRlIG5l
dyBuZXR3b3JrIGFuZCByZXNvdXJjZXMgcGFuZWxzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDg3MjUKKworICAgICAgICAqIHNyYy9XZWJEZXZUb29s
c0FnZW50SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkRldlRvb2xzQWdlbnRJbXBsOjpz
ZXRBcHVBZ2VudEVuYWJsZWQpOgorCiAyMDEwLTEwLTI5ICBEYW5pZWwgQmF0ZXMgIDxkYmF0ZXNA
cmltLmNvbT4KIAogICAgICAgICBObyByZXZpZXcsIHJvbGxpbmcgb3V0IDcwOTcxLgpkaWZmIC0t
Z2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0FnZW50SW1wbC5jcHAgYi9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRJbXBsLmNwcAppbmRleCA5YjdiMmJkLi4x
NGQ1NTdmIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRJ
bXBsLmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRJbXBsLmNw
cApAQCAtMjY0LDE5ICsyNjQsMjYgQEAgdm9pZCBXZWJEZXZUb29sc0FnZW50SW1wbDo6c2V0QXB1
QWdlbnRFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBpZiAoZW5hYmxlZCkgewogICAgICAgICBp
ZiAoIWljLT5oYXNGcm9udGVuZCgpKQogICAgICAgICAgICAgY29ubmVjdEZyb250ZW5kKHRydWUp
OworCisjaWYgTEVHQUNZX1JFU09VUkNFX1RSQUNLSU5HX0VOQUJMRUQKICAgICAgICAgbV9yZXNv
dXJjZVRyYWNraW5nV2FzRW5hYmxlZCA9IGljLT5yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCgpOwor
I2VuZGlmCiAgICAgICAgIGljLT5zdGFydFRpbWVsaW5lUHJvZmlsZXIoKTsKKyNpZiBMRUdBQ1lf
UkVTT1VSQ0VfVFJBQ0tJTkdfRU5BQkxFRAogICAgICAgICBpZiAoIW1fcmVzb3VyY2VUcmFja2lu
Z1dhc0VuYWJsZWQpIHsKICAgICAgICAgICAgIC8vIFRPRE8oa25vcnRvbik6IEludHJvZHVjZSBz
b21lIGtpbmQgb2YgYWdlbnRzIGRlcGVuZGVuY3kgaGVyZSBzbyB0aGF0CiAgICAgICAgICAgICAv
LyB1c2VyIGNvdWxkIHR1cm4gb2ZmIHJlc291cmNlIHRyYWNraW5nIHdoaWxlIGFwdSBhZ2VudCBp
cyBvbi4KICAgICAgICAgICAgIGljLT5zZXRSZXNvdXJjZVRyYWNraW5nRW5hYmxlZCh0cnVlKTsK
ICAgICAgICAgfQorI2VuZGlmCiAgICAgICAgIG1fZGVidWdnZXJBZ2VudEltcGwtPnNldEF1dG9D
b250aW51ZU9uRXhjZXB0aW9uKHRydWUpOwogICAgIH0gZWxzZSB7CiAgICAgICBpYy0+c3RvcFRp
bWVsaW5lUHJvZmlsZXIoKTsKKyNpZiBMRUdBQ1lfUkVTT1VSQ0VfVFJBQ0tJTkdfRU5BQkxFRCAg
ICAgICAgCiAgICAgICBpZiAoIW1fcmVzb3VyY2VUcmFja2luZ1dhc0VuYWJsZWQpCiAgICAgICAg
ICAgaWMtPnNldFJlc291cmNlVHJhY2tpbmdFbmFibGVkKGZhbHNlKTsKICAgICAgIG1fcmVzb3Vy
Y2VUcmFja2luZ1dhc0VuYWJsZWQgPSBmYWxzZTsKKyNlbmRpZgogICAgIH0KICAgICBtX2NsaWVu
dC0+cnVudGltZVByb3BlcnR5Q2hhbmdlZCgKICAgICAgICAga0FwdUFnZW50RmVhdHVyZU5hbWUs
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72478</attachid>
            <date>2010-10-31 14:43:57 -0700</date>
            <delta_ts>2010-10-31 15:48:42 -0700</delta_ts>
            <desc>[PATCH] Same with Web Sockets filter fix.</desc>
            <filename>enable_panel</filename>
            <type>text/plain</type>
            <size>28397</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA4MzA1ZDZjLi5kYThlMWY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMTAt
MzEgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogdW5oaWRl
IG5ldyBuZXR3b3JrIGFuZCByZXNvdXJjZXMgcGFuZWxzLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDg3MjUKKworICAgICAgICAqIGh0dHAvdGVzdHMv
aW5zcGVjdG9yL2NvbnNvbGUteGhyLWxvZ2dpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0
dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGluc3BlY3Rvci9jb25zb2xlLWxvZy1zeW50YXgtZXJyb3ItZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGluc3BlY3Rvci9lbGVtZW50cy1wYW5lbC1zdHlsZXMtZXhwZWN0ZWQudHh0Ogor
CiAyMDEwLTEwLTMwICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjcwOTg0LgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvY29uc29sZS14aHItbG9nZ2luZy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1sb2dn
aW5nLWV4cGVjdGVkLnR4dAppbmRleCA1NWY1MGM0Li5kNzAyZmNkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1sb2dnaW5nLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9jb25zb2xlLXhoci1s
b2dnaW5nLWV4cGVjdGVkLnR4dApAQCAtMTIsMTMgKzEyLDEzIEBAIGNvbnNvbGUteGhyLWxvZ2dp
bmcuaHRtbDoxMWVuYWJsZWQKIGNvbnNvbGUteGhyLWxvZ2dpbmcuaHRtbDo0MHNlbmRpbmcgYSBH
RVQgcmVxdWVzdCB0byByZXNvdXJjZXMveGhyLWV4aXN0cy5odG1sCiBYSFIgZmluaXNoZWQgbG9h
ZGluZzogImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3IvcmVzb3VyY2VzL3hoci1leGlz
dHMuaHRtbCIuCiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEgR0VUIHJlcXVl
c3QgdG8gcmVzb3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5odG1sCi1yZXNvdXJjZXMveGhyLWRv
ZXMtbm90LWV4aXN0Lmh0bWxGYWlsZWQgdG8gbG9hZCByZXNvdXJjZTogdGhlIHNlcnZlciByZXNw
b25kZWQgd2l0aCBhIHN0YXR1cyBvZiA0MDQgKE5vdCBGb3VuZCkKK3hoci1kb2VzLW5vdC1leGlz
dC5odG1sRmFpbGVkIHRvIGxvYWQgcmVzb3VyY2U6IHRoZSBzZXJ2ZXIgcmVzcG9uZGVkIHdpdGgg
YSBzdGF0dXMgb2YgNDA0IChOb3QgRm91bmQpCiBYSFIgZmluaXNoZWQgbG9hZGluZzogImh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3IvcmVzb3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5o
dG1sIi4KIGNvbnNvbGUteGhyLWxvZ2dpbmcuaHRtbDo0MHNlbmRpbmcgYSBQT1NUIHJlcXVlc3Qg
dG8gcmVzb3VyY2VzL3Bvc3QtdGFyZ2V0LmNnaQogWEhSIGZpbmlzaGVkIGxvYWRpbmc6ICJodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvaW5zcGVjdG9yL3Jlc291cmNlcy9wb3N0LXRhcmdldC5jZ2kiLgog
Y29uc29sZS14aHItbG9nZ2luZy5odG1sOjIxZGlzYWJsZWQKIGNvbnNvbGUteGhyLWxvZ2dpbmcu
aHRtbDo0MHNlbmRpbmcgYSBHRVQgcmVxdWVzdCB0byByZXNvdXJjZXMveGhyLWV4aXN0cy5odG1s
CiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEgR0VUIHJlcXVlc3QgdG8gcmVz
b3VyY2VzL3hoci1kb2VzLW5vdC1leGlzdC5odG1sCi1yZXNvdXJjZXMveGhyLWRvZXMtbm90LWV4
aXN0Lmh0bWxGYWlsZWQgdG8gbG9hZCByZXNvdXJjZTogdGhlIHNlcnZlciByZXNwb25kZWQgd2l0
aCBhIHN0YXR1cyBvZiA0MDQgKE5vdCBGb3VuZCkKK3hoci1kb2VzLW5vdC1leGlzdC5odG1sRmFp
bGVkIHRvIGxvYWQgcmVzb3VyY2U6IHRoZSBzZXJ2ZXIgcmVzcG9uZGVkIHdpdGggYSBzdGF0dXMg
b2YgNDA0IChOb3QgRm91bmQpCiBjb25zb2xlLXhoci1sb2dnaW5nLmh0bWw6NDBzZW5kaW5nIGEg
UE9TVCByZXF1ZXN0IHRvIHJlc291cmNlcy9wb3N0LXRhcmdldC5jZ2kKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvcmVzb3VyY2UtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1wYXJh
bWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCBjMzczMzRmLi4yMmZjZmVlIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1wYXJhbWV0ZXJzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMyw3ICszLDcgQEAgVGVzdHMgdGhhdCByZXNvdXJj
ZXMgcGFuZWwgc2hvd3MgZm9ybSBkYXRhIHBhcmFtZXRlcnMuCiAgIAogCiB7Ci0gICAgcGFnZXJl
ZiA6ICJhYm91dDpibGFuayIKKyAgICBwYWdlcmVmIDogImh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9p
bnNwZWN0b3IvcmVzb3VyY2VzL3Bvc3QtdGFyZ2V0LmNnaT9xdWVyeVBhcmFtMT1xdWVyeVZhbHVl
MSZxdWVyeVBhcmFtMj0iCiAgICAgc3RhcnRlZERhdGVUaW1lIDogPHN0cmluZz4KICAgICB0aW1l
IDogPG51bWJlcj4KICAgICByZXF1ZXN0IDogewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvZWxlbWVudHMtcGFuZWwtc3R5bGVzLWV4cGVjdGVkLnR4dAppbmRleCBlZjJlOWU0
Li40ZGNlYTg0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMtcGFu
ZWwtc3R5bGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVu
dHMtcGFuZWwtc3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtMiwzNiArMiwzNiBAQCBUZXN0cyB0aGF0
IGVsZW1lbnRzIHBhbmVsIHNob3dzIHByb3BlciBzdHlsZXMgaW4gdGhlIHNpZGViYXIgcGFuZWwu
CiAKIFtleHBhbmRlZF0gICgpCiBjb2xvcjogYmx1ZTsKLSAgICAuZm9vLCAuZm9vOjpiZWZvcmUg
LSBibHVlIHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjE1Ci0gICAgLy0tIG92
ZXJsb2FkZWQgLS0vIC5mb28gLSBibGFjayByZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVz
LmNzczoxMAorICAgIC5mb28sIC5mb286OmJlZm9yZSAtIGJsdWUgZWxlbWVudHMtcGFuZWwtc3R5
bGVzLmNzczoxNQorICAgIC8tLSBvdmVybG9hZGVkIC0tLyAuZm9vIC0gYmxhY2sgZWxlbWVudHMt
cGFuZWwtc3R5bGVzLmNzczoxMAogZGlzcGxheTogbm9uZTsKICAgICBlbGVtZW50LnN0eWxlIC0g
bm9uZSAKICAgICAvLS0gb3ZlcmxvYWRlZCAtLS8gZGl2IC0gYmxvY2sgdXNlciBhZ2VudCBzdHls
ZXNoZWV0CiBmb250LWZhbWlseTogc2VyaWY7Ci0gICAgI2NvbnRhaW5lciAtIHNlcmlmIHJlc291
cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjUKKyAgICAjY29udGFpbmVyIC0gc2VyaWYg
ZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczo1CiBmb250LXNpemU6IDE0cHg7Ci0gICAgI2NvbnRh
aW5lciAtIDE0cHggcmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6NQotICAgIC8t
LSBvdmVybG9hZGVkIC0tLyBib2R5IC0gMTJweCByZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5
bGVzLmNzczoxCisgICAgI2NvbnRhaW5lciAtIDE0cHggZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNz
czo1CisgICAgLy0tIG92ZXJsb2FkZWQgLS0vIGJvZHkgLSAxMnB4IGVsZW1lbnRzLXBhbmVsLXN0
eWxlcy5jc3M6MQogbWFyZ2luLWJvdHRvbTogMnB4OwotICAgIC5mb28gLSAycHggcmVzb3VyY2Vz
L2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAKKyAgICAuZm9vIC0gMnB4IGVsZW1lbnRzLXBh
bmVsLXN0eWxlcy5jc3M6MTAKIG1hcmdpbi1sZWZ0OiAwcHg7Ci0gICAgLmZvbyAtIDBweCByZXNv
dXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxMAorICAgIC5mb28gLSAwcHggZWxlbWVu
dHMtcGFuZWwtc3R5bGVzLmNzczoxMAogbWFyZ2luLXJpZ2h0OiAwcHg7Ci0gICAgLmZvbyAtIDBw
eCByZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxMAorICAgIC5mb28gLSAwcHgg
ZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxMAogbWFyZ2luLXRvcDogMTBweDsKLSAgICAuZm9v
IC0gMTBweCByZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxMAorICAgIC5mb28g
LSAxMHB4IGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MTAKIAogW2V4cGFuZGVkXSBlbGVtZW50
LnN0eWxlIHsgKCkKIGRpc3BsYXk6IG5vbmU7CiAKID09PT09PT09IE1hdGNoZWQgQ1NTIFJ1bGVz
ID09PT09PT09Ci1bZXhwYW5kZWRdIC5mb28geyAocmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0
eWxlcy5jc3M6MzMpCitbZXhwYW5kZWRdIC5mb28geyAoZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNz
czozMykKIAotW2V4cGFuZGVkXSAuZm9vLCAuZm9vOjpiZWZvcmUgeyAocmVzb3VyY2VzL2VsZW1l
bnRzLXBhbmVsLXN0eWxlcy5jc3M6MTUpCitbZXhwYW5kZWRdIC5mb28sIC5mb286OmJlZm9yZSB7
IChlbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjE1KQogY29sb3I6IGJsdWU7CiBjb250ZW50OiAn
W2JlZm9yZSBGb29dJzsKIAotW2V4cGFuZGVkXSAuZm9vIHsgKHJlc291cmNlcy9lbGVtZW50cy1w
YW5lbC1zdHlsZXMuY3NzOjEwKQorW2V4cGFuZGVkXSAuZm9vIHsgKGVsZW1lbnRzLXBhbmVsLXN0
eWxlcy5jc3M6MTApCiAvLS0gb3ZlcmxvYWRlZCAtLS8gY29sb3I6IGJsYWNrOwogbWFyZ2luOiAx
MHB4IDBweCAycHg7CiAgICAgbWFyZ2luLXRvcDogMTBweDsKQEAgLTQzLDMyICs0MywzMiBAQCBt
YXJnaW46IDEwcHggMHB4IDJweDsKIC8tLSBvdmVybG9hZGVkIC0tLyBkaXNwbGF5OiBibG9jazsK
IAogPT09PT09PT0gSW5oZXJpdGVkIGZyb20gZGl2I2NvbnRhaW5lciA9PT09PT09PQotW2V4cGFu
ZGVkXSAjY29udGFpbmVyIHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjUp
CitbZXhwYW5kZWRdICNjb250YWluZXIgeyAoZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczo1KQog
Zm9udC1mYW1pbHk6IHNlcmlmOwogZm9udC1zaXplOiAxNHB4OwogCiA9PT09PT09PSBJbmhlcml0
ZWQgZnJvbSBib2R5ID09PT09PT09Ci1bZXhwYW5kZWRdIGJvZHkgeyAocmVzb3VyY2VzL2VsZW1l
bnRzLXBhbmVsLXN0eWxlcy5jc3M6MSkKK1tleHBhbmRlZF0gYm9keSB7IChlbGVtZW50cy1wYW5l
bC1zdHlsZXMuY3NzOjEpCiAvLS0gb3ZlcmxvYWRlZCAtLS8gZm9udC1zaXplOiAxMnB4OwogCiAK
ID09PT09PT09IFBzZXVkbyA6OmJlZm9yZSBlbGVtZW50ID09PT09PT09Ci1bZXhwYW5kZWRdIC5m
b286OmJlZm9yZSB7IChyZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczozNykKK1tl
eHBhbmRlZF0gLmZvbzo6YmVmb3JlIHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MzcpCiAK
LVtleHBhbmRlZF0gLmZvbzo6YmVmb3JlIHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHls
ZXMuY3NzOjIwKQorW2V4cGFuZGVkXSAuZm9vOjpiZWZvcmUgeyAoZWxlbWVudHMtcGFuZWwtc3R5
bGVzLmNzczoyMCkKIGNvbG9yOiByZWQ7CiAKLVtleHBhbmRlZF0gLmZvbywgLmZvbzo6YmVmb3Jl
IHsgKHJlc291cmNlcy9lbGVtZW50cy1wYW5lbC1zdHlsZXMuY3NzOjE1KQorW2V4cGFuZGVkXSAu
Zm9vLCAuZm9vOjpiZWZvcmUgeyAoZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoxNSkKIC8tLSBv
dmVybG9hZGVkIC0tLyBjb2xvcjogYmx1ZTsKIGNvbnRlbnQ6ICdbYmVmb3JlIEZvb10nOwogCiAK
ID09PT09PT09IFBzZXVkbyA6OmFmdGVyIGVsZW1lbnQgPT09PT09PT0KLVtleHBhbmRlZF0gLmZv
bzo6YWZ0ZXIgeyAocmVzb3VyY2VzL2VsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MjgpCitbZXhw
YW5kZWRdIC5mb286OmFmdGVyIHsgKGVsZW1lbnRzLXBhbmVsLXN0eWxlcy5jc3M6MjgpCiBjb250
ZW50OiAnW2FmdGVyIEZvbyAyXSc7CiBmb250LWZhbWlseTogY291cmllcjsKIAotW2V4cGFuZGVk
XSAuZm9vOjphZnRlciB7IChyZXNvdXJjZXMvZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoyNCkK
K1tleHBhbmRlZF0gLmZvbzo6YWZ0ZXIgeyAoZWxlbWVudHMtcGFuZWwtc3R5bGVzLmNzczoyNCkK
IGNvbG9yOiBncmVlbjsKIC8tLSBvdmVybG9hZGVkIC0tLyBjb250ZW50OiAnW2FmdGVyIEZvb10n
OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IDI3ZTA0ZmIuLjFhMzcxN2QgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTAtMTAtMzEgIFBhdmVsIEZl
bGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogdW5oaWRlIG5ldyBuZXR3b3Jr
IGFuZCByZXNvdXJjZXMgcGFuZWxzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDg3MjUKKworICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9jYWxpemVk
U3RyaW5ncy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1BhbmVsLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLk5ldHdvcmtQYW5lbCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVu
ZC9TZXR0aW5ncy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1N0b3JhZ2VQYW5l
bC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlN0b3JhZ2VQYW5lbC5wcm90b3R5cGUucmVzZXQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlN0b3JhZ2VQYW5lbC5wcm90b3R5cGUuYWRkUmVzb3VyY2VUb0ZyYW1lKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlLmFkZERvY3VtZW50VVJMKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlLnNob3dGaWxlU3lz
dGVtKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5GaWxlU3lzdGVtVHJlZUVsZW1lbnQpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1UcmVlRWxlbWVudC5wcm90b3R5cGUuZ2V0IGl0
ZW1VUkwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1UcmVlRWxlbWVudC5wcm90
b3R5cGUub25zZWxlY3QpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9y
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnVwZGF0ZVJlc291cmNlKToKKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL25ldHdvcmtQYW5lbC5jc3M6CisgICAgICAgICgjbmV0d29yay1j
bG9zZS1idXR0b24pOgorICAgICAgICAoLm5ldHdvcmsucGFuZWwudmlld2luZy1yZXNvdXJjZSAj
bmV0d29yay1jbG9zZS1idXR0b24pOgorCiAyMDEwLTEwLTMwICBQYXZlbCBGZWxkbWFuICA8cGZl
bGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hl
ci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpz
IGIvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggYTRhMTk5
Ny4uNTdhZTUyZCAxMDA2NDQKQmluYXJ5IGZpbGVzIGEvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMgYW5kIGIvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0
cmluZ3MuanMgZGlmZmVyCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
b250cm9sbGVyLmggYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKaW5k
ZXggOGIwMDgzNS4uNjQwOTg3YiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ29udHJvbGxlci5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xs
ZXIuaApAQCAtODYsNyArODYsNyBAQCBjbGFzcyBTaGFyZWRCdWZmZXI7CiBjbGFzcyBTdG9yYWdl
OwogY2xhc3MgU3RvcmFnZUFyZWE7CiAKLSNkZWZpbmUgTEVHQUNZX1JFU09VUkNFX1RSQUNLSU5H
X0VOQUJMRUQgMQorI2RlZmluZSBMRUdBQ1lfUkVTT1VSQ0VfVFJBQ0tJTkdfRU5BQkxFRCAwCiAK
ICNpZiBMRUdBQ1lfUkVTT1VSQ0VfVFJBQ0tJTkdfRU5BQkxFRAogY2xhc3MgSW5zcGVjdG9yUmVz
b3VyY2U7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1Bh
bmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtQYW5lbC5qcwppbmRl
eCA4YzNhZjZhLi5jZGE2NWIxIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvTmV0d29ya1BhbmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3
b3JrUGFuZWwuanMKQEAgLTU2LDkgKzU2LDkgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtQYW5lbCA9
IGZ1bmN0aW9uKCkKICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fdmlld3NDb250
YWluZXJFbGVtZW50KTsKIAogICAgIHZhciBjbG9zZUJ1dHRvbkVsZW1lbnQgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJidXR0b24iKTsKLSAgICBjbG9zZUJ1dHRvbkVsZW1lbnQuY2xhc3NOYW1l
ID0gIm5ldHdvcmstY2xvc2UtYnV0dG9uIjsKKyAgICBjbG9zZUJ1dHRvbkVsZW1lbnQuaWQgPSAi
bmV0d29yay1jbG9zZS1idXR0b24iOwogICAgIGNsb3NlQnV0dG9uRWxlbWVudC5hZGRFdmVudExp
c3RlbmVyKCJjbGljayIsIHRoaXMuX3RvZ2dsZUdyaWRNb2RlLmJpbmQodGhpcyksIGZhbHNlKTsK
LSAgICB0aGlzLl92aWV3c0NvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQoY2xvc2VCdXR0b25F
bGVtZW50KTsKKyAgICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQoY2xvc2VCdXR0b25FbGVtZW50
KTsKIAogICAgIHRoaXMuX2NyZWF0ZVNvcnRpbmdGdW5jdGlvbnMoKTsKICAgICB0aGlzLl9jcmVh
dGVUYWJsZSgpOwpAQCAtNjcsNiArNjcsOSBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1BhbmVsID0g
ZnVuY3Rpb24oKQogICAgIHRoaXMuX2NyZWF0ZUZpbHRlclN0YXR1c0Jhckl0ZW1zKCk7CiAgICAg
dGhpcy5fY3JlYXRlU3VtbWFyeUJhcigpOwogCisgICAgaWYgKCFXZWJJbnNwZWN0b3IuYXBwbGlj
YXRpb25TZXR0aW5ncy5yZXNvdXJjZXNMYXJnZVJvd3MpCisgICAgICAgIHRoaXMuX3NldExhcmdl
clJlc291cmNlcyhXZWJJbnNwZWN0b3IuYXBwbGljYXRpb25TZXR0aW5ncy5yZXNvdXJjZXNMYXJn
ZVJvd3MpOworCiAgICAgdGhpcy5fcG9wb3ZlckhlbHBlciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9w
b3ZlckhlbHBlcih0aGlzLmVsZW1lbnQsIHRoaXMuX2dldFBvcG92ZXJBbmNob3IuYmluZCh0aGlz
KSwgdGhpcy5fc2hvd1BvcG92ZXIuYmluZCh0aGlzKSwgdHJ1ZSk7CiAKICAgICB0aGlzLmNhbGN1
bGF0b3IgPSBuZXcgV2ViSW5zcGVjdG9yLk5ldHdvcmtUcmFuc2ZlclRpbWVDYWxjdWxhdG9yKCk7
CkBAIC02MTMsOCArNjE2LDYgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtQYW5lbC5wcm90b3R5cGUg
PSB7CiAKICAgICAgICAgdGhpcy5fbGFyZ2VyUmVzb3VyY2VzQnV0dG9uID0gbmV3IFdlYkluc3Bl
Y3Rvci5TdGF0dXNCYXJCdXR0b24oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJVc2Ugc21hbGwgcmVz
b3VyY2Ugcm93cy4iKSwgIm5ldHdvcmstbGFyZ2VyLXJlc291cmNlcy1zdGF0dXMtYmFyLWl0ZW0i
KTsKICAgICAgICAgdGhpcy5fbGFyZ2VyUmVzb3VyY2VzQnV0dG9uLnRvZ2dsZWQgPSBXZWJJbnNw
ZWN0b3IuYXBwbGljYXRpb25TZXR0aW5ncy5yZXNvdXJjZXNMYXJnZVJvd3M7Ci0gICAgICAgIGlm
ICghV2ViSW5zcGVjdG9yLmFwcGxpY2F0aW9uU2V0dGluZ3MucmVzb3VyY2VzTGFyZ2VSb3dzKQot
ICAgICAgICAgICAgdGhpcy5fc2V0TGFyZ2VyUmVzb3VyY2VzKFdlYkluc3BlY3Rvci5hcHBsaWNh
dGlvblNldHRpbmdzLnJlc291cmNlc0xhcmdlUm93cyk7CiAgICAgICAgIHRoaXMuX2xhcmdlclJl
c291cmNlc0J1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX3RvZ2dsZUxhcmdl
clJlc291cmNlcy5iaW5kKHRoaXMpLCBmYWxzZSk7CiAgICAgfSwKIApAQCAtOTAxLDYgKzkwMiw3
IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICAgICAg
dGhpcy5fdGltZWxpbmVHcmlkLmVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygic21hbGwiKTsKICAg
ICAgICAgICAgIHRoaXMuX3ZpZXdzQ29udGFpbmVyRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJz
bWFsbCIpOwogICAgICAgICB9CisgICAgICAgIHRoaXMuX3Bvc2l0aW9uU3VtbWFyeUJhcigpOwog
ICAgIH0sCiAKICAgICBfZ2V0UG9wb3ZlckFuY2hvcjogZnVuY3Rpb24oZWxlbWVudCkKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qcyBiL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qcwppbmRleCAxYTJjZTk2Li5iOWE0NDM5IDEw
MDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMKKysrIGIv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlLmpzCkBAIC0yNSw3ICsyNSw2IEBA
CiAgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KLQogV2ViSW5zcGVjdG9yLlJl
c291cmNlID0gZnVuY3Rpb24oaWRlbnRpZmllciwgdXJsKQogewogICAgIHRoaXMuaWRlbnRpZmll
ciA9IGlkZW50aWZpZXI7CkBAIC0zMzIsNyArMzMxLDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNl
LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICB0aGlzLmNhdGVnb3J5ID0gV2ViSW5zcGVj
dG9yLnJlc291cmNlQ2F0ZWdvcmllcy54aHI7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICBjYXNlIFdlYkluc3BlY3Rvci5SZXNvdXJjZS5UeXBlLldlYlNvY2tldDoKLSAgICAg
ICAgICAgICAgICB0aGlzLmNhdGVnb3J5ID0gV2ViSW5zcGVjdG9yLnJlc291cmNlQ2F0ZWdvcmll
cy53ZWJzb2NrZXQ7CisgICAgICAgICAgICAgICAgdGhpcy5jYXRlZ29yeSA9IFdlYkluc3BlY3Rv
ci5yZXNvdXJjZUNhdGVnb3JpZXMud2Vic29ja2V0czsKICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIGNhc2UgV2ViSW5zcGVjdG9yLlJlc291cmNlLlR5cGUuT3RoZXI6CiAgICAg
ICAgICAgICBkZWZhdWx0OgpAQCAtNjQzLDYgKzY0Miw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJj
ZS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNhbGxiYWNr
cy5sZW5ndGg7ICsraSkKICAgICAgICAgICAgICAgICBjYWxsYmFja3NbaV0odGhpcy5fY29udGVu
dCwgdGhpcy5fY29udGVudEVuY29kZWQpOwogICAgICAgICAgICAgdGhpcy5fcGVuZGluZ0NvbnRl
bnRDYWxsYmFja3MubGVuZ3RoID0gMDsKKyAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9jb250ZW50
UmVxdWVzdGVkOwogICAgICAgICB9CiAgICAgICAgIFdlYkluc3BlY3Rvci5SZXNvdXJjZU1hbmFn
ZXIuZ2V0Q29udGVudCh0aGlzLCB0aGlzLl9jb250ZW50RW5jb2RlZCwgb25SZXNvdXJjZUNvbnRl
bnQuYmluZCh0aGlzKSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1Jlc291cmNlTWFuYWdlci5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9S
ZXNvdXJjZU1hbmFnZXIuanMKaW5kZXggODVhZTIxYy4uMjcxYzRmMyAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlTWFuYWdlci5qcworKysgYi9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VNYW5hZ2VyLmpzCkBAIC03OSw3ICs3OSw4IEBA
IFdlYkluc3BlY3Rvci5SZXNvdXJjZU1hbmFnZXIucHJvdG90eXBlID0gewogICAgIHsKICAgICAg
ICAgdmFyIHJlc291cmNlID0gbmV3IFdlYkluc3BlY3Rvci5SZXNvdXJjZShpZGVudGlmaWVyLCB1
cmwpOwogICAgICAgICByZXNvdXJjZS5sb2FkZXIgPSBsb2FkZXI7Ci0gICAgICAgIHJlc291cmNl
LmRvY3VtZW50VVJMID0gbG9hZGVyLnVybDsKKyAgICAgICAgaWYgKGxvYWRlcikKKyAgICAgICAg
ICAgIHJlc291cmNlLmRvY3VtZW50VVJMID0gbG9hZGVyLnVybDsKIAogICAgICAgICB0aGlzLl9y
ZXNvdXJjZXNCeUlkW2lkZW50aWZpZXJdID0gcmVzb3VyY2U7CiAgICAgICAgIHJldHVybiByZXNv
dXJjZTsKQEAgLTEzNiw2ICsxMzcsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VNYW5hZ2VyLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICByZXNvdXJjZS5jYWNo
ZWQgPSB0cnVlOworICAgICAgICBkZWxldGUgcmVzb3VyY2UudGltaW5nOwogICAgICAgICBXZWJJ
bnNwZWN0b3IucGFuZWxzLm5ldHdvcmsucmVmcmVzaFJlc291cmNlKHJlc291cmNlKTsKICAgICB9
LAogCkBAIC0yNjcsMTAgKzI2OSw4IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZU1hbmFnZXIucHJv
dG90eXBlID0gewogCiAgICAgZGlkQ3JlYXRlV2ViU29ja2V0OiBmdW5jdGlvbihpZGVudGlmaWVy
LCByZXF1ZXN0VVJMKQogICAgIHsKLSAgICAgICAgdGhpcy5pZGVudGlmaWVyRm9ySW5pdGlhbFJl
cXVlc3QoaWRlbnRpZmllciwgcmVxdWVzdFVSTCk7Ci0gICAgICAgIHZhciByZXNvdXJjZSA9IHRo
aXMuX3Jlc291cmNlc0J5SWRbaWRlbnRpZmllcl07CisgICAgICAgIHZhciByZXNvdXJjZSA9IHRo
aXMuX2NyZWF0ZVJlc291cmNlKGlkZW50aWZpZXIsIHJlcXVlc3RVUkwpOwogICAgICAgICByZXNv
dXJjZS50eXBlID0gV2ViSW5zcGVjdG9yLlJlc291cmNlLlR5cGUuV2ViU29ja2V0OwotCiAgICAg
ICAgIFdlYkluc3BlY3Rvci5wYW5lbHMubmV0d29yay5yZWZyZXNoUmVzb3VyY2UocmVzb3VyY2Up
OwogICAgIH0sCiAKQEAgLTQ3Myw3ICs0NzMsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VNYW5h
Z2VyLmV4aXN0aW5nUmVzb3VyY2VWaWV3Rm9yUmVzb3VyY2UgPSBmdW5jdGlvbihyZXNvdXJjZQog
V2ViSW5zcGVjdG9yLlJlc291cmNlTWFuYWdlci5nZXRDb250ZW50ID0gZnVuY3Rpb24ocmVzb3Vy
Y2UsIGJhc2U2NEVuY29kZSwgY2FsbGJhY2spCiB7CiAgICAgLy8gRklYTUU6IGV2ZW50dWFsbHks
IGNhY2hlZCByZXNvdXJjZXMgd2lsbCBoYXZlIG5vIGlkZW50aWZpZXJzLgotICAgIGlmIChyZXNv
dXJjZS5sb2FkZXIpCisgICAgaWYgKFByZWZlcmVuY2VzLm5ldHdvcmtQYW5lbEVuYWJsZWQpCiAg
ICAgICAgIEluc3BlY3RvckJhY2tlbmQucmVzb3VyY2VDb250ZW50KHJlc291cmNlLmxvYWRlci5m
cmFtZUlkLCByZXNvdXJjZS51cmwsIGJhc2U2NEVuY29kZSwgY2FsbGJhY2spOwogICAgIGVsc2UK
ICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRSZXNvdXJjZUNvbnRlbnQocmVzb3VyY2UuaWRl
bnRpZmllciwgYmFzZTY0RW5jb2RlLCBjYWxsYmFjayk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU2V0dGluZ3MuanMKaW5kZXggMTI0ZjczNi4uYjVmMzk4NCAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TZXR0aW5ncy5qcwpAQCAtNDUsNyArNDUsNyBAQCB2YXIgUHJlZmVyZW5jZXMg
PSB7CiAgICAgb25saW5lRGV0ZWN0aW9uRW5hYmxlZDogdHJ1ZSwKICAgICBuYXRpdmVJbnN0cnVt
ZW50YXRpb25FbmFibGVkOiBmYWxzZSwKICAgICByZXNvdXJjZUV4cG9ydEVuYWJsZWQ6IGZhbHNl
LAotICAgIG5ldHdvcmtQYW5lbEVuYWJsZWQ6IGZhbHNlLAorICAgIG5ldHdvcmtQYW5lbEVuYWJs
ZWQ6IHRydWUsCiAgICAgZmlsZVN5c3RlbUVuYWJsZWQ6IGZhbHNlLAogICAgIHVzZURhdGFVUkxG
b3JSZXNvdXJjZUltYWdlSWNvbnM6IHRydWUKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TdG9yYWdlUGFuZWwuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU3RvcmFnZVBhbmVsLmpzCmluZGV4IDI0M2ViODMuLjEyMWVhOTcgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdG9yYWdlUGFuZWwuanMKKysrIGIvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL1N0b3JhZ2VQYW5lbC5qcwpAQCAtNTksNyArNTksNyBAQCBXZWJJ
bnNwZWN0b3IuU3RvcmFnZVBhbmVsID0gZnVuY3Rpb24oZGF0YWJhc2UpCiAgICAgdGhpcy5zaWRl
YmFyVHJlZS5hcHBlbmRDaGlsZCh0aGlzLmFwcGxpY2F0aW9uQ2FjaGVMaXN0VHJlZUVsZW1lbnQp
OwogCiAgICAgaWYgKFByZWZlcmVuY2VzLmZpbGVTeXN0ZW1FbmFibGVkKSB7Ci0gICAgICAgIHRo
aXMuZmlsZVN5c3RlbUxpc3RUcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuU3RvcmFnZUNh
dGVnb3J5VHJlZUVsZW1lbnQodGhpcywgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJGaWxlIFN5c3Rl
bSIpLCAiZmlsZS1zeXN0ZW0tc3RvcmFnZS10cmVlLWl0ZW0iKTsKKyAgICAgICAgdGhpcy5maWxl
U3lzdGVtTGlzdFRyZWVFbGVtZW50ID0gbmV3IFdlYkluc3BlY3Rvci5TdG9yYWdlQ2F0ZWdvcnlU
cmVlRWxlbWVudCh0aGlzLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkZpbGUgU3lzdGVtIiksICJG
aWxlU3lzdGVtIiwgImZpbGUtc3lzdGVtLXN0b3JhZ2UtdHJlZS1pdGVtIik7CiAgICAgICAgIHRo
aXMuc2lkZWJhclRyZWUuYXBwZW5kQ2hpbGQodGhpcy5maWxlU3lzdGVtTGlzdFRyZWVFbGVtZW50
KTsKICAgICAgICAgdGhpcy5maWxlU3lzdGVtTGlzdFRyZWVFbGVtZW50LmV4cGFuZCgpOwogICAg
IH0KQEAgLTc0LDYgKzc0LDcgQEAgV2ViSW5zcGVjdG9yLlN0b3JhZ2VQYW5lbCA9IGZ1bmN0aW9u
KGRhdGFiYXNlKQogICAgIHRoaXMuX2RhdGFiYXNlcyA9IFtdOwogICAgIHRoaXMuX2RvbVN0b3Jh
Z2UgPSBbXTsKICAgICB0aGlzLl9jb29raWVWaWV3cyA9IHt9OworICAgIHRoaXMuX29yaWdpbnMg
PSB7fTsKICAgICB0aGlzLl9kb21haW5zID0ge307CiB9CiAKQEAgLTg4LDkgKzg5LDIxIEBAIFdl
Ykluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gW3Ro
aXMuc3RvcmFnZVZpZXdTdGF0dXNCYXJJdGVtc0NvbnRhaW5lcl07CiAgICAgfSwKIAorICAgIGVs
ZW1lbnRzVG9SZXN0b3JlU2Nyb2xsUG9zaXRpb25zRm9yOiBmdW5jdGlvbigpCisgICAgeworICAg
ICAgICByZXR1cm4gW3RoaXMuc2lkZWJhckVsZW1lbnRdOworICAgIH0sCisKICAgICBzaG93OiBm
dW5jdGlvbigpCiAgICAgewogICAgICAgICBXZWJJbnNwZWN0b3IuUGFuZWwucHJvdG90eXBlLnNo
b3cuY2FsbCh0aGlzKTsKKworICAgICAgICBpZiAodGhpcy52aXNpYmxlVmlldyBpbnN0YW5jZW9m
IFdlYkluc3BlY3Rvci5SZXNvdXJjZVZpZXcpIHsKKyAgICAgICAgICAgIC8vIFNvdXJjZVZpZXdz
IGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgcGFuZWxzLgorICAgICAgICAgICAgdGhpcy52aXNpYmxl
Vmlldy5oZWFkZXJzVmlzaWJsZSA9IHRydWU7CisgICAgICAgICAgICB0aGlzLnZpc2libGVWaWV3
LnNob3codGhpcy5zdG9yYWdlVmlld3MpOworICAgICAgICB9CisKICAgICAgICAgaWYgKHRoaXMu
X2luaXRpYWxpemVkRGVmYXVsdFNlbGVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKIApAQCAt
MTE2LDYgKzEyOSw3IEBAIFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlID0gewog
CiAgICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7CisgICAgICAgIHRoaXMuX29yaWdpbnMgPSB7
fTsKICAgICAgICAgdGhpcy5fZG9tYWlucyA9IHt9OwogICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHRoaXMuX2RhdGFiYXNlcy5sZW5ndGg7ICsraSkgewogICAgICAgICAgICAgdmFyIGRhdGFi
YXNlID0gdGhpcy5fZGF0YWJhc2VzW2ldOwpAQCAtMTk4LDExICsyMTIsNyBAQCBXZWJJbnNwZWN0
b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZSA9IHsKIAogICAgIGFkZFJlc291cmNlVG9GcmFtZTog
ZnVuY3Rpb24oZnJhbWVJZCwgcmVzb3VyY2UpCiAgICAgewotICAgICAgICBpZiAoIXRoaXMuX2Rv
bWFpbnNbcmVzb3VyY2UuZG9tYWluXSkgewotICAgICAgICAgICAgdGhpcy5fZG9tYWluc1tyZXNv
dXJjZS5kb21haW5dID0gdHJ1ZTsKLSAgICAgICAgICAgIHRoaXMuYWRkQ29va2llRG9tYWluKHJl
c291cmNlLmRvbWFpbik7Ci0gICAgICAgICAgICB0aGlzLmFkZEFwcGxpY2F0aW9uQ2FjaGUocmVz
b3VyY2UuZG9tYWluKTsKLSAgICAgICAgfQorICAgICAgICB0aGlzLmFkZERvY3VtZW50VVJMKHJl
c291cmNlLmRvY3VtZW50VVJMKTsKIAogICAgICAgICBpZiAocmVzb3VyY2Uuc3RhdHVzQ29kZSA+
PSAzMDEgJiYgcmVzb3VyY2Uuc3RhdHVzQ29kZSA8PSAzMDMpCiAgICAgICAgICAgICByZXR1cm47
CkBAIC0yNDQsNyArMjU0LDggQEAgV2ViSW5zcGVjdG9yLlN0b3JhZ2VQYW5lbC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIC8vIEZJWE1FOiBkbyBub3QgYWRkIFhIUiBpbiB0aGUgZmlyc3QgcGxhY2Ug
YmFzZWQgb24gdGhlIG5hdGl2ZSBpbnN0cnVtZW50YXRpb24uCiAgICAgICAgIGlmIChyZXNvdXJj
ZS50eXBlID09PSBXZWJJbnNwZWN0b3IuUmVzb3VyY2UuVHlwZS5YSFIpIHsKICAgICAgICAgICAg
IHZhciByZXNvdXJjZVRyZWVFbGVtZW50ID0gdGhpcy5fZmluZFRyZWVFbGVtZW50Rm9yUmVzb3Vy
Y2UocmVzb3VyY2UpOwotICAgICAgICAgICAgcmVzb3VyY2VUcmVlRWxlbWVudC5wYXJlbnQucmVt
b3ZlQ2hpbGQocmVzb3VyY2VUcmVlRWxlbWVudCk7CisgICAgICAgICAgICBpZiAocmVzb3VyY2VU
cmVlRWxlbWVudCkKKyAgICAgICAgICAgICAgICByZXNvdXJjZVRyZWVFbGVtZW50LnBhcmVudC5y
ZW1vdmVDaGlsZChyZXNvdXJjZVRyZWVFbGVtZW50KTsKICAgICAgICAgfQogICAgIH0sCiAKQEAg
LTI1NiwxMSArMjY3LDMzIEBAIFdlYkluc3BlY3Rvci5TdG9yYWdlUGFuZWwucHJvdG90eXBlID0g
ewogICAgICAgICBkYXRhYmFzZS5fZGF0YWJhc2VzVHJlZUVsZW1lbnQgPSBkYXRhYmFzZVRyZWVF
bGVtZW50OwogICAgICAgICB0aGlzLmRhdGFiYXNlc0xpc3RUcmVlRWxlbWVudC5hcHBlbmRDaGls
ZChkYXRhYmFzZVRyZWVFbGVtZW50KTsKICAgICB9LAotICAgIAotICAgIGFkZENvb2tpZURvbWFp
bjogZnVuY3Rpb24oZG9tYWluKQorCisgICAgYWRkRG9jdW1lbnRVUkw6IGZ1bmN0aW9uKHVybCkK
ICAgICB7Ci0gICAgICAgIHZhciBjb29raWVEb21haW5UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNw
ZWN0b3IuQ29va2llVHJlZUVsZW1lbnQodGhpcywgZG9tYWluKTsKLSAgICAgICAgdGhpcy5jb29r
aWVMaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoY29va2llRG9tYWluVHJlZUVsZW1lbnQpOwor
ICAgICAgICB2YXIgcGFyc2VkVVJMID0gdXJsLmFzUGFyc2VkVVJMKCk7CisgICAgICAgIGlmICgh
cGFyc2VkVVJMKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHZhciBkb21haW4gPSBw
YXJzZWRVUkwuaG9zdDsKKyAgICAgICAgaWYgKCF0aGlzLl9kb21haW5zW2RvbWFpbl0pIHsKKyAg
ICAgICAgICAgIHRoaXMuX2RvbWFpbnNbZG9tYWluXSA9IHRydWU7CisKKyAgICAgICAgICAgIHZh
ciBjb29raWVEb21haW5UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVs
ZW1lbnQodGhpcywgZG9tYWluKTsKKyAgICAgICAgICAgIHRoaXMuY29va2llTGlzdFRyZWVFbGVt
ZW50LmFwcGVuZENoaWxkKGNvb2tpZURvbWFpblRyZWVFbGVtZW50KTsKKworICAgICAgICAgICAg
dmFyIGFwcGxpY2F0aW9uQ2FjaGVUcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNwZWN0b3IuQXBwbGlj
YXRpb25DYWNoZVRyZWVFbGVtZW50KHRoaXMsIGRvbWFpbik7CisgICAgICAgICAgICB0aGlzLmFw
cGxpY2F0aW9uQ2FjaGVMaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoYXBwbGljYXRpb25DYWNo
ZVRyZWVFbGVtZW50KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChQcmVmZXJlbmNlcy5maWxl
U3lzdGVtRW5hYmxlZCkgeworICAgICAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG1hdGNo
IHRoZSBTZWN1cml0eU9yaWdpbjo6dG9TdHJpbmcoKSwgYWRkIGEgdGVzdCBmb3IgdGhpcy4KKyAg
ICAgICAgICAgIHZhciBzZWN1cml0eU9yaWdpbiA9IHBhcnNlZFVSTC5zY2hlbWUgKyAiOi8vIiAr
IHBhcnNlZFVSTC5ob3N0ICsgKHBhcnNlZFVSTC5wb3J0ID8gKCI6IiArIHBhcnNlZFVSTC5wb3J0
KSA6ICIiKTsKKyAgICAgICAgICAgIGlmICghdGhpcy5fb3JpZ2luc1tzZWN1cml0eU9yaWdpbl0p
IHsKKyAgICAgICAgICAgICAgICB0aGlzLl9vcmlnaW5zW3NlY3VyaXR5T3JpZ2luXSA9IHRydWU7
CisgICAgICAgICAgICAgICAgdmFyIGZpbGVTeXN0ZW1UcmVlRWxlbWVudCA9IG5ldyBXZWJJbnNw
ZWN0b3IuRmlsZVN5c3RlbVRyZWVFbGVtZW50KHRoaXMsIHNlY3VyaXR5T3JpZ2luKTsKKyAgICAg
ICAgICAgICAgICB0aGlzLmZpbGVTeXN0ZW1MaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZmls
ZVN5c3RlbVRyZWVFbGVtZW50KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQogICAgIH0sCiAK
ICAgICBhZGRET01TdG9yYWdlOiBmdW5jdGlvbihkb21TdG9yYWdlKQpAQCAtMjc0LDE4ICszMDcs
NiBAQCBXZWJJbnNwZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAg
IHRoaXMuc2Vzc2lvblN0b3JhZ2VMaXN0VHJlZUVsZW1lbnQuYXBwZW5kQ2hpbGQoZG9tU3RvcmFn
ZVRyZWVFbGVtZW50KTsKICAgICB9LAogCi0gICAgYWRkQXBwbGljYXRpb25DYWNoZTogZnVuY3Rp
b24oZG9tYWluKQotICAgIHsKLSAgICAgICAgdmFyIGFwcGxpY2F0aW9uQ2FjaGVUcmVlRWxlbWVu
dCA9IG5ldyBXZWJJbnNwZWN0b3IuQXBwbGljYXRpb25DYWNoZVRyZWVFbGVtZW50KHRoaXMsIGRv
bWFpbik7Ci0gICAgICAgIHRoaXMuYXBwbGljYXRpb25DYWNoZUxpc3RUcmVlRWxlbWVudC5hcHBl
bmRDaGlsZChhcHBsaWNhdGlvbkNhY2hlVHJlZUVsZW1lbnQpOwotICAgIH0sCi0KLSAgICBhZGRG
aWxlU3lzdGVtOiBmdW5jdGlvbihvcmlnaW4pCi0gICAgewotICAgICAgICB2YXIgZmlsZVN5c3Rl
bVRyZWVFbGVtZW50ID0gbmV3IFdlYkluc3BlY3Rvci5GaWxlU3lzdGVtVHJlZUVsZW1lbnQodGhp
cywgb3JpZ2luKTsKLSAgICAgICAgdGhpcy5maWxlU3lzdGVtTGlzdFRyZWVFbGVtZW50LmFwcGVu
ZENoaWxkKGZpbGVTeXN0ZW1UcmVlRWxlbWVudCk7Ci0gICAgfSwKLSAgICAKICAgICBzZWxlY3RE
YXRhYmFzZTogZnVuY3Rpb24oZGF0YWJhc2VJZCkKICAgICB7CiAgICAgICAgIHZhciBkYXRhYmFz
ZTsKQEAgLTQwOSw5ICs0MzAsOSBAQCBXZWJJbnNwZWN0b3IuU3RvcmFnZVBhbmVsLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgICAgIHRoaXMuX2FwcGxpY2F0aW9uQ2FjaGVWaWV3LnVwZGF0ZVN0YXR1
cyh0aGlzLl9jYWNoZWRBcHBsaWNhdGlvbkNhY2hlVmlld1N0YXR1cyk7CiAgICAgfSwKIAotICAg
IHNob3dGaWxlU3lzdGVtOiBmdW5jdGlvbih0cmVlRWxlbWVudCwgZmlsZVN5c3RlbURvbWFpbikK
KyAgICBzaG93RmlsZVN5c3RlbTogZnVuY3Rpb24odHJlZUVsZW1lbnQsIG9yaWdpbikKICAgICB7
Ci0gICAgICAgIHRoaXMuX2ZpbGVTeXN0ZW1WaWV3ID0gIG5ldyBXZWJJbnNwZWN0b3IuRmlsZVN5
c3RlbVZpZXcodHJlZUVsZW1lbnQsIGZpbGVTeXN0ZW1Eb21haW4pOworICAgICAgICB0aGlzLl9m
aWxlU3lzdGVtVmlldyA9IG5ldyBXZWJJbnNwZWN0b3IuRmlsZVN5c3RlbVZpZXcodHJlZUVsZW1l
bnQsIG9yaWdpbik7CiAgICAgICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodGhpcy5fZmlsZVN5c3Rl
bVZpZXcpOwogICAgIH0sCiAgICAgCkBAIC02NTEsMTMgKzY3MiwxMyBAQCBXZWJJbnNwZWN0b3Iu
U3RvcmFnZVBhbmVsLnByb3RvdHlwZSA9IHsKICAgICB7CiAgICAgICAgIGZ1bmN0aW9uIGlzQW5j
ZXN0b3IoYW5jZXN0b3IsIG9iamVjdCkKICAgICAgICAgewotICAgICAgICAgICAgY29uc29sZS5l
cnJvcigiVGhlcmUgc2hvdWxkIGJlIG5vIGNhbGxzIHRvIGlzQW5jZXN0b3IsIGJ1dCB0aGVyZSB3
YXMgb25lIGZvciAiLCBvYmplY3QpOworICAgICAgICAgICAgLy8gUmVkaXJlY3RzLCBYSFJzIGRv
IG5vdCBiZWxvbmcgdG8gdGhlIHRyZWUsIGl0IGlzIGZpbmUgdG8gc2lsZW50bHkgcmV0dXJuIGZh
bHNlIGhlcmUuCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KIAogICAgICAg
ICBmdW5jdGlvbiBnZXRQYXJlbnQob2JqZWN0KQogICAgICAgICB7Ci0gICAgICAgICAgICBjb25z
b2xlLmVycm9yKCJUaGVyZSBzaG91bGQgYmUgbm8gY2FsbHMgdG8gZ2V0UGFyZW50LCBidXQgdGhl
cmUgd2FzIG9uZSBmb3IgIiwgb2JqZWN0KTsKKyAgICAgICAgICAgIC8vIFJlZGlyZWN0cywgWEhS
cyBkbyBub3QgYmVsb25nIHRvIHRoZSB0cmVlLCBpdCBpcyBmaW5lIHRvIHNpbGVudGx5IHJldHVy
biBmYWxzZSBoZXJlLgogICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgIH0KIApAQCAt
MTA3MCwxNiArMTA5MSwyMiBAQCBXZWJJbnNwZWN0b3IuQXBwbGljYXRpb25DYWNoZVRyZWVFbGVt
ZW50LnByb3RvdHlwZSA9IHsKIH0KIFdlYkluc3BlY3Rvci5BcHBsaWNhdGlvbkNhY2hlVHJlZUVs
ZW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5CYXNlU3RvcmFnZVRyZWVF
bGVtZW50LnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1UcmVlRWxlbWVudCA9
IGZ1bmN0aW9uKHN0b3JhZ2VQYW5lbCwgZmlsZVN5c3RlbURvbWFpbikKK1dlYkluc3BlY3Rvci5G
aWxlU3lzdGVtVHJlZUVsZW1lbnQgPSBmdW5jdGlvbihzdG9yYWdlUGFuZWwsIG9yaWdpbikKIHsK
LSAgICBXZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VUcmVlRWxlbWVudC5jYWxsKHRoaXMsIHN0b3Jh
Z2VQYW5lbCwgbnVsbCwgZmlsZVN5c3RlbURvbWFpbiA/IGZpbGVTeXN0ZW1Eb21haW4gOiBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIkxvY2FsIEZpbGVzIiksICJmaWxlLXN5c3RlbS1zdG9yYWdlLXRy
ZWUtaXRlbSIpOwotICAgIHRoaXMuX2ZpbGVTeXN0ZW1Eb21haW4gPSBmaWxlU3lzdGVtRG9tYWlu
OworICAgIFdlYkluc3BlY3Rvci5CYXNlU3RvcmFnZVRyZWVFbGVtZW50LmNhbGwodGhpcywgc3Rv
cmFnZVBhbmVsLCBudWxsLCBvcmlnaW4sICJmaWxlLXN5c3RlbS1zdG9yYWdlLXRyZWUtaXRlbSIp
OworICAgIHRoaXMuX29yaWdpbiA9IG9yaWdpbjsKIH0KIAogV2ViSW5zcGVjdG9yLkZpbGVTeXN0
ZW1UcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CisgICAgZ2V0IGl0ZW1VUkwoKQorICAgIHsKKyAg
ICAgICAgcmV0dXJuICJmczovLyIgKyBlbmNvZGVVUkkodGhpcy5fb3JpZ2luKTsKKyAgICB9LAor
CiAgICAgb25zZWxlY3Q6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHRoaXMuX3N0b3JhZ2VQ
YW5lbC5zaG93RmlsZVN5c3RlbSh0aGlzLCB0aGlzLl9maWxlU3lzdGVtRG9tYWluKTsKKyAgICAg
ICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uc2VsZWN0
LmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMuX3N0b3JhZ2VQYW5lbC5zaG93RmlsZVN5c3RlbSh0
aGlzLCB0aGlzLl9vcmlnaW4pOwogICAgIH0KIH0KICAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvaW5zcGVjdG9yLmpzCmluZGV4IGVmNTIzOWMuLmM4OWQ5MGEgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcwpAQCAtNTAsOSArNTAsNiBAQAogCiB2YXIgV2ViSW5z
cGVjdG9yID0gewogICAgIHJlc291cmNlczoge30sCi0gICAgY29va2llRG9tYWluczoge30sCi0g
ICAgYXBwbGljYXRpb25DYWNoZURvbWFpbnM6IHt9LAotICAgIGZpbGVTeXN0ZW1PcmlnaW5zOiB7
fSwKICAgICBtaXNzaW5nTG9jYWxpemVkU3RyaW5nczoge30sCiAgICAgcGVuZGluZ0Rpc3BhdGNo
ZXM6IDAsCiAKQEAgLTU1Niw3ICs1NTMsNyBAQCBXZWJJbnNwZWN0b3IuZG9Mb2FkZWREb25lID0g
ZnVuY3Rpb24oKQogICAgICAgICBzY3JpcHRzOiBuZXcgV2ViSW5zcGVjdG9yLlJlc291cmNlQ2F0
ZWdvcnkoInNjcmlwdHMiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNjcmlwdHMiKSwgInJnYigy
NTUsMTIxLDApIiksCiAgICAgICAgIHhocjogbmV3IFdlYkluc3BlY3Rvci5SZXNvdXJjZUNhdGVn
b3J5KCJ4aHIiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlhIUiIpLCAicmdiKDIzMSwyMzEsMTAp
IiksCiAgICAgICAgIGZvbnRzOiBuZXcgV2ViSW5zcGVjdG9yLlJlc291cmNlQ2F0ZWdvcnkoImZv
bnRzIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJGb250cyIpLCAicmdiKDI1NSw4Miw2MikiKSwK
LSAgICAgICAgd2Vic29ja2V0OiBuZXcgV2ViSW5zcGVjdG9yLlJlc291cmNlQ2F0ZWdvcnkoIndl
YnNvY2tldHMiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIldlYlNvY2tldCIpLCAicmdiKDE4Niwx
ODYsMTg2KSIpLCAvLyBGSVhNRTogRGVjaWRlIHRoZSBjb2xvci4KKyAgICAgICAgd2Vic29ja2V0
czogbmV3IFdlYkluc3BlY3Rvci5SZXNvdXJjZUNhdGVnb3J5KCJ3ZWJzb2NrZXRzIiwgV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJXZWJTb2NrZXQiKSwgInJnYigxODYsMTg2LDE4NikiKSwgLy8gRklY
TUU6IERlY2lkZSB0aGUgY29sb3IuCiAgICAgICAgIG90aGVyOiBuZXcgV2ViSW5zcGVjdG9yLlJl
c291cmNlQ2F0ZWdvcnkoIm90aGVyIiwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJPdGhlciIpLCAi
cmdiKDE4NiwxODYsMTg2KSIpCiAgICAgfTsKIApAQCAtMTI5NCwxNCArMTI5MSw3IEBAIFdlYklu
c3BlY3Rvci51cGRhdGVSZXNvdXJjZSA9IGZ1bmN0aW9uKHBheWxvYWQpCiAgICAgICAgIGlmIChy
ZXNvdXJjZS5tYWluUmVzb3VyY2UpCiAgICAgICAgICAgICB0aGlzLm1haW5SZXNvdXJjZSA9IHJl
c291cmNlOwogCi0gICAgICAgIHZhciBwYXJzZWRVUkwgPSBwYXlsb2FkLmRvY3VtZW50VVJMLmFz
UGFyc2VkVVJMKCk7Ci0gICAgICAgIGlmIChwYXJzZWRVUkwpIHsKLSAgICAgICAgICAgIHRoaXMu
X2FkZENvb2tpZURvbWFpbihwYXJzZWRVUkwuaG9zdCk7Ci0gICAgICAgICAgICB0aGlzLl9hZGRB
cHBDYWNoZURvbWFpbihwYXJzZWRVUkwuaG9zdCk7Ci0gICAgICAgICAgICBpZiAoUHJlZmVyZW5j
ZXMuZmlsZVN5c3RlbUVuYWJsZWQpCi0gICAgICAgICAgICAgICAgLy8gVGhpcyBzaG91bGQgbWF0
Y2ggdGhlIFNlY3VyaXR5T3JpZ2luOjp0b1N0cmluZygpLiBGSVhNRTogQWRkIGEgdGVzdCBmb3Ig
dGhpcy4KLSAgICAgICAgICAgICAgICB0aGlzLl9hZGRGaWxlU3lzdGVtT3JpZ2luKHBhcnNlZFVS
TC5zY2hlbWUgKyAiOi8vIiArIHBhcnNlZFVSTC5ob3N0ICsgKHBhcnNlZFVSTC5wb3J0ID8gKCI6
IiArIHBhcnNlZFVSTC5wb3J0KSA6ICIiKSk7Ci0gICAgICAgIH0KKyAgICAgICAgdGhpcy5wYW5l
bHMuc3RvcmFnZS5hZGREb2N1bWVudFVSTChwYXlsb2FkLmRvY3VtZW50VVJMKTsKICAgICB9CiAK
ICAgICBpZiAocGF5bG9hZC5kaWRSZXNwb25zZUNoYW5nZSkgewpAQCAtMTM5Myw0MiArMTM4Myw2
IEBAIFdlYkluc3BlY3Rvci5hZGREYXRhYmFzZSA9IGZ1bmN0aW9uKHBheWxvYWQpCiAgICAgdGhp
cy5wYW5lbHMuc3RvcmFnZS5hZGREYXRhYmFzZShkYXRhYmFzZSk7CiB9CiAKLVdlYkluc3BlY3Rv
ci5fYWRkQ29va2llRG9tYWluID0gZnVuY3Rpb24oZG9tYWluKQotewotICAgIC8vIEVsaW1pbmF0
ZSBkdXBsaWNhdGUgZG9tYWlucyBmcm9tIHRoZSBsaXN0LgotICAgIGlmIChkb21haW4gaW4gdGhp
cy5jb29raWVEb21haW5zKQotICAgICAgICByZXR1cm47Ci0gICAgdGhpcy5jb29raWVEb21haW5z
W2RvbWFpbl0gPSB0cnVlOwotCi0gICAgaWYgKCF0aGlzLnBhbmVscy5zdG9yYWdlKQotICAgICAg
ICByZXR1cm47Ci0gICAgdGhpcy5wYW5lbHMuc3RvcmFnZS5hZGRDb29raWVEb21haW4oZG9tYWlu
KTsKLX0KLQotV2ViSW5zcGVjdG9yLl9hZGRBcHBDYWNoZURvbWFpbiA9IGZ1bmN0aW9uKGRvbWFp
bikKLXsKLSAgICAvLyBFbGltaW5hdGUgZHVwbGljYXRlIGRvbWFpbnMgZnJvbSB0aGUgbGlzdC4K
LSAgICBpZiAoZG9tYWluIGluIHRoaXMuYXBwbGljYXRpb25DYWNoZURvbWFpbnMpCi0gICAgICAg
IHJldHVybjsKLSAgICB0aGlzLmFwcGxpY2F0aW9uQ2FjaGVEb21haW5zW2RvbWFpbl0gPSB0cnVl
OwotCi0gICAgaWYgKCF0aGlzLnBhbmVscy5zdG9yYWdlKQotICAgICAgICByZXR1cm47Ci0gICAg
dGhpcy5wYW5lbHMuc3RvcmFnZS5hZGRBcHBsaWNhdGlvbkNhY2hlKGRvbWFpbik7Ci19Ci0KLVdl
Ykluc3BlY3Rvci5fYWRkRmlsZVN5c3RlbU9yaWdpbiA9IGZ1bmN0aW9uKG9yaWdpbikKLXsKLSAg
ICBpZiAoIXRoaXMucGFuZWxzLnN0b3JhZ2UpCi0gICAgICAgIHJldHVybjsKLSAgICAvLyBFbGlt
aW5hdGUgZHVwbGljYXRlIG9yaWdpbnMuCi0gICAgLy8gRklYTUU6IE1vdmUgYXBwY2FjaGUvY29v
a2llcy9maWxlc3lzdGVtIGRvbWFpbiBkdXAgY2hlY2tzIGluIFN0b3JhZ2VQYW5lbC5qcwotICAg
IGlmIChvcmlnaW4gaW4gdGhpcy5maWxlU3lzdGVtT3JpZ2lucykKLSAgICAgICAgcmV0dXJuOwot
ICAgIHRoaXMuZmlsZVN5c3RlbU9yaWdpbnNbb3JpZ2luXSA9IHRydWU7Ci0gICAgdGhpcy5wYW5l
bHMuc3RvcmFnZS5hZGRGaWxlU3lzdGVtKG9yaWdpbik7Ci19Ci0KIFdlYkluc3BlY3Rvci5hZGRE
T01TdG9yYWdlID0gZnVuY3Rpb24ocGF5bG9hZCkKIHsKICAgICBpZiAoIXRoaXMucGFuZWxzLnN0
b3JhZ2UpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvbmV0d29ya1Bh
bmVsLmNzcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9uZXR3b3JrUGFuZWwuY3NzCmlu
ZGV4IDIxNTY4MWYuLjJjNjgzZjAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9uZXR3b3JrUGFuZWwuY3NzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9u
ZXR3b3JrUGFuZWwuY3NzCkBAIC0yMiw3ICsyMiw3IEBACiAgICAgLXdlYmtpdC1iYWNrZ3JvdW5k
LXNpemU6IDFweCA0MnB4OwogfQogCi0ubmV0d29yay5wYW5lbCAuZGF0YS1ncmlkIHRkIHsKKy5u
ZXR3b3JrLnBhbmVsIC5kYXRhLWdyaWQgdGQ6bm90KC5uZXR3b3JrLXN1bW1hcnkpIHsKICAgICBs
aW5lLWhlaWdodDogMTdweDsKICAgICBoZWlnaHQ6IDM3cHg7CiAgICAgYm9yZGVyLXJpZ2h0OiAx
cHggc29saWQgcmdiKDIxMCwgMjEwLCAyMTApOwpAQCAtNDg3LDcgKzQ4Nyw3IEBACiAgICAgaGVp
Z2h0OiAyMHB4OwogICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICBmb250LXdlaWdodDogYm9sZDsK
LSAgICBwYWRkaW5nLXRvcDogMXB4OworICAgIHBhZGRpbmctdG9wOiAzcHg7CiAgICAgcGFkZGlu
Zy1sZWZ0OiAxMHB4OwogICAgIHotaW5kZXg6IDIwMDA7CiAgICAgd2hpdGUtc3BhY2U6IHByZTsK
QEAgLTU0NCw3ICs1NDQsNyBAQAogICAgIGxlZnQ6IDA7CiB9CiAKLS5uZXR3b3JrLWNsb3NlLWJ1
dHRvbiB7CisjbmV0d29yay1jbG9zZS1idXR0b24gewogICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
ICAgICB3aWR0aDogMTRweDsKICAgICBoZWlnaHQ6IDE0cHg7CkBAIC01NTUsNiArNTU1LDExIEBA
CiAgICAgdG9wOiA0cHg7CiAgICAgcmlnaHQ6IDVweDsKICAgICB6LWluZGV4OiAxMDsKKyAgICBk
aXNwbGF5OiBub25lOworfQorCisubmV0d29yay5wYW5lbC52aWV3aW5nLXJlc291cmNlICNuZXR3
b3JrLWNsb3NlLWJ1dHRvbiAgeworICAgIGRpc3BsYXk6IGJsb2NrOwogfQogCiAubmV0d29yay5w
YW5lbCAuZGF0YS1ncmlkLmZ1bGwtZ3JpZC1tb2RlIC52aWV3ZXItY29sdW1uIHsKZGlmZiAtLWdp
dCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
CmluZGV4IDJiY2I0ZmQuLmI3N2Y5YTEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisy
MDEwLTEwLTMxICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IHVuaGlkZSBuZXcgbmV0d29yayBhbmQgcmVzb3VyY2VzIHBhbmVscy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ4NzI1CisKKyAgICAgICAgKiBzcmMv
V2ViRGV2VG9vbHNBZ2VudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZUb29sc0Fn
ZW50SW1wbDo6c2V0QXB1QWdlbnRFbmFibGVkKToKKwogMjAxMC0xMC0yOSAgRGFuaWVsIEJhdGVz
ICA8ZGJhdGVzQHJpbS5jb20+CiAKICAgICAgICAgTm8gcmV2aWV3LCByb2xsaW5nIG91dCA3MDk3
MS4KZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2VG9vbHNBZ2VudEltcGwu
Y3BwIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0FnZW50SW1wbC5jcHAKaW5kZXgg
OWI3YjJiZC4uMTRkNTU3ZiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZU
b29sc0FnZW50SW1wbC5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0Fn
ZW50SW1wbC5jcHAKQEAgLTI2NCwxOSArMjY0LDI2IEBAIHZvaWQgV2ViRGV2VG9vbHNBZ2VudElt
cGw6OnNldEFwdUFnZW50RW5hYmxlZChib29sIGVuYWJsZWQpCiAgICAgaWYgKGVuYWJsZWQpIHsK
ICAgICAgICAgaWYgKCFpYy0+aGFzRnJvbnRlbmQoKSkKICAgICAgICAgICAgIGNvbm5lY3RGcm9u
dGVuZCh0cnVlKTsKKworI2lmIExFR0FDWV9SRVNPVVJDRV9UUkFDS0lOR19FTkFCTEVECiAgICAg
ICAgIG1fcmVzb3VyY2VUcmFja2luZ1dhc0VuYWJsZWQgPSBpYy0+cmVzb3VyY2VUcmFja2luZ0Vu
YWJsZWQoKTsKKyNlbmRpZgogICAgICAgICBpYy0+c3RhcnRUaW1lbGluZVByb2ZpbGVyKCk7Cisj
aWYgTEVHQUNZX1JFU09VUkNFX1RSQUNLSU5HX0VOQUJMRUQKICAgICAgICAgaWYgKCFtX3Jlc291
cmNlVHJhY2tpbmdXYXNFbmFibGVkKSB7CiAgICAgICAgICAgICAvLyBUT0RPKGtub3J0b24pOiBJ
bnRyb2R1Y2Ugc29tZSBraW5kIG9mIGFnZW50cyBkZXBlbmRlbmN5IGhlcmUgc28gdGhhdAogICAg
ICAgICAgICAgLy8gdXNlciBjb3VsZCB0dXJuIG9mZiByZXNvdXJjZSB0cmFja2luZyB3aGlsZSBh
cHUgYWdlbnQgaXMgb24uCiAgICAgICAgICAgICBpYy0+c2V0UmVzb3VyY2VUcmFja2luZ0VuYWJs
ZWQodHJ1ZSk7CiAgICAgICAgIH0KKyNlbmRpZgogICAgICAgICBtX2RlYnVnZ2VyQWdlbnRJbXBs
LT5zZXRBdXRvQ29udGludWVPbkV4Y2VwdGlvbih0cnVlKTsKICAgICB9IGVsc2UgewogICAgICAg
aWMtPnN0b3BUaW1lbGluZVByb2ZpbGVyKCk7CisjaWYgTEVHQUNZX1JFU09VUkNFX1RSQUNLSU5H
X0VOQUJMRUQgICAgICAgIAogICAgICAgaWYgKCFtX3Jlc291cmNlVHJhY2tpbmdXYXNFbmFibGVk
KQogICAgICAgICAgIGljLT5zZXRSZXNvdXJjZVRyYWNraW5nRW5hYmxlZChmYWxzZSk7CiAgICAg
ICBtX3Jlc291cmNlVHJhY2tpbmdXYXNFbmFibGVkID0gZmFsc2U7CisjZW5kaWYKICAgICB9CiAg
ICAgbV9jbGllbnQtPnJ1bnRpbWVQcm9wZXJ0eUNoYW5nZWQoCiAgICAgICAgIGtBcHVBZ2VudEZl
YXR1cmVOYW1lLAo=
</data>
<flag name="review"
          id="62734"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>