<?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>229139</bug_id>
          
          <creation_ts>2021-08-16 07:33:20 -0700</creation_ts>
          <short_desc>document.hasFocus() returns true for unfocused pages</short_desc>
          <delta_ts>2021-08-19 01:47:18 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kangil.han</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1784492</commentid>
    <comment_count>0</comment_count>
      <attachid>435599</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-16 07:33:20 -0700</bug_when>
    <thetext>Created attachment 435599
Test

This can be reproduced with the attached test, the web view title shows whether the document has the focus or not at any time. Move the focus to a new tab in MiniBrowser to see that it remains true for the hidden tab. The problem is that we are always claiming to have the focus when the web view is in the active window. This is not happening in safari, but I don&apos;t understand why. I noticed this because ikea.com website stores the active widget in localstorage using document.hasFocus(). When opening multiple tabs it starts writing local storage like crazy making the network and web processes consume 100% cpu. It doesn&apos;t happen when using multiple windows instead of tabs, because in that case only the tab in the active window returns true for document.hasFocus().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784493</commentid>
    <comment_count>1</comment_count>
      <attachid>435600</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-16 07:36:20 -0700</bug_when>
    <thetext>Created attachment 435600
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784497</commentid>
    <comment_count>2</comment_count>
      <attachid>435600</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2021-08-16 07:45:42 -0700</bug_when>
    <thetext>Comment on attachment 435600
Patch

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

&gt; Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:801
&gt; +static void testWebViewDocumentFocus(WebViewTest* test, gconstpointer)

Nice test, by the way :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784756</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-16 23:59:29 -0700</bug_when>
    <thetext>The gtk unit test is failing under xvfb, I&apos;ll fix it. But I need help with the cocoa unit tests. WebAuthenticationPanel test looks unrelated, but maybe the test assumes the view has the focus while the panel is open or something like that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784758</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-17 00:16:24 -0700</bug_when>
    <thetext>In the case of gtk I think the problem is that the toplevel window focus is given to the window by the window manager, so under xvfb we never set the WindowIsActive flag because there&apos;s no a window manager.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1784761</commentid>
    <comment_count>5</comment_count>
      <attachid>435668</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-17 00:27:50 -0700</bug_when>
    <thetext>Created attachment 435668
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785076</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-18 02:28:55 -0700</bug_when>
    <thetext>The cocoa tests failures are because the credential container requires the document to be focused and the page isn&apos;t actually focused, now caught by document.hasFocus(). We just need to focus the view in all the tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785077</commentid>
    <comment_count>7</comment_count>
      <attachid>435755</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-18 02:29:24 -0700</bug_when>
    <thetext>Created attachment 435755
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785083</commentid>
    <comment_count>8</comment_count>
      <attachid>435758</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-18 03:31:27 -0700</bug_when>
    <thetext>Created attachment 435758
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785386</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-18 23:31:22 -0700</bug_when>
    <thetext>ChangeLog entry in Tools/ChangeLog contains OOPS!.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785387</commentid>
    <comment_count>10</comment_count>
      <attachid>435847</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-08-18 23:37:27 -0700</bug_when>
    <thetext>Created attachment 435847
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785412</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-19 01:46:12 -0700</bug_when>
    <thetext>Committed r281228 (240665@main): &lt;https://commits.webkit.org/240665@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 435847.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785413</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-19 01:47:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/82115580&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>435599</attachid>
            <date>2021-08-16 07:33:20 -0700</date>
            <delta_ts>2021-08-16 07:33:20 -0700</delta_ts>
            <desc>Test</desc>
            <filename>focus.html</filename>
            <type>text/html</type>
            <size>225</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">PGhlYWQ+CiAgPHNjcmlwdD4KICAgIGZ1bmN0aW9uIGZvY3VzRGlkQ2hhbmdlKCkgewogICAgICAg
IGRvY3VtZW50LnRpdGxlID0gIkZvY3VzOiAiICsgZG9jdW1lbnQuaGFzRm9jdXMoKTsKICAgIH0K
ICA8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keSBvbmZvY3VzPSJmb2N1c0RpZENoYW5nZSgpIiBvbmJs
dXI9ImZvY3VzRGlkQ2hhbmdlKCkiPgogIDxpbnB1dCB0eXBlPSJ0ZXh0Ii8+CjwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435600</attachid>
            <date>2021-08-16 07:36:20 -0700</date>
            <delta_ts>2021-08-17 00:27:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-document-has-focus.diff</filename>
            <type>text/plain</type>
            <size>4544</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZmU4ZTdkOWVjYmUuLjJhYmQ3NzYyMDJkZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTA4LTE2ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtXUEVdIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0
dXJucyB0cnVlIGZvciBoaWRkZW4gdGFicworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgV2UgYXJlIGFsd2F5cyBjbGFpbWluZyB0byBiZSBmb2N1c2VkIHdo
ZW4gdGhlIGRvY3VtZW50IGluIHRoZSBhY3RpdmUgd2luZG93IGV2ZW4gaWYgdGhlIHBhZ2UgaXMg
bm90IGFjdHVhbGx5CisgICAgICAgIGZvY3VzZWQuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6Omhhc0ZvY3VzIGNvbnN0KTogQ2hlY2sg
YWxzbyB0aGF0IHBhZ2UgaXMgZm9jdXNlZC4KKwogMjAyMS0wOC0xNiAgUGhpbGlwcGUgTm9ybWFu
ZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMjc4OTgxKTog
W0dTdHJlYW1lcl1bRGVidWddIEFzc2VydCBjcmFzaGVzIHdoZW4gcnVubmluZyBtZWRpYS90cmFj
ayB0ZXN0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggNGI2ZjdjZWU1NWZkLi4xMmVkMWU0
ZDViODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtNzU4Nyw3ICs3NTg3LDcgQEAgRWxl
bWVudCogRG9jdW1lbnQ6OmFjdGl2ZUVsZW1lbnQoKQogYm9vbCBEb2N1bWVudDo6aGFzRm9jdXMo
KSBjb25zdAogewogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7Ci0gICAgaWYgKCFwYWdl
IHx8ICFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpKQorICAgIGlmICghcGFnZSB8
fCAhcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuaXNBY3RpdmUoKSB8fCAhcGFnZS0+Zm9jdXNDb250
cm9sbGVyKCkuaXNGb2N1c2VkKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoRnJh
bWUqIGZvY3VzZWRGcmFtZSA9IHBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmZvY3VzZWRGcmFtZSgp
KSB7CiAgICAgICAgIGlmIChmb2N1c2VkRnJhbWUtPnRyZWUoKS5pc0Rlc2NlbmRhbnRPZihmcmFt
ZSgpKSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRl
eCA2MzJhYTJiZWI4MzQuLmMxMDFkMzg3ZWRlZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA4LTE2ICBDYXJs
b3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtX
UEVdIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0dXJucyB0cnVlIGZvciBoaWRkZW4gdGFicworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdW5pdCB0
ZXN0cyB0byBjaGVjayBkb2N1bWVudC5oYXNGb2N1cygpIHJldHVybnMgZmFsc2Ugd2hlbiBhIHdl
YiB2aWV3IGlzIGluIHRoZSBhY3RpdmUgd2luZG93LCBidXQgbm90IGZvY3VzZWQuCisKKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYlZpZXcuY3Bw
OgorICAgICAgICAodGVzdFdlYlZpZXdEb2N1bWVudEZvY3VzKToKKyAgICAgICAgKGJlZm9yZUFs
bCk6CisKIDIwMjEtMDgtMTYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtHVEtdIFRlc3QgV2ViS2l0V2ViVmlldy9wYWdlLXZpc2liaWxpdHkg
aXMgYSBmbGFreSB0aW1lb3V0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYlZpZXcuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcAppbmRleCA0Nzg5YTFiM2I1NGUu
LmNiYWZiNzRiOTZjYSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYlZpZXcuY3BwCkBAIC03OTgsNiArNzk4LDM2IEBA
IHN0YXRpYyB2b2lkIHRlc3RXZWJWaWV3UGFnZVZpc2liaWxpdHkoV2ViVmlld1Rlc3QqIHRlc3Qs
IGdjb25zdHBvaW50ZXIpCiAgICAgZ19hc3NlcnRfdHJ1ZShXZWJWaWV3VGVzdDo6amF2YXNjcmlw
dFJlc3VsdFRvQm9vbGVhbihqYXZhc2NyaXB0UmVzdWx0KSk7CiB9CiAKK3N0YXRpYyB2b2lkIHRl
c3RXZWJWaWV3RG9jdW1lbnRGb2N1cyhXZWJWaWV3VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikK
K3sKKyAgICB0ZXN0LT5zaG93SW5XaW5kb3coKTsKKyAgICB0ZXN0LT5sb2FkSHRtbCgiPGh0bWw+
PHRpdGxlPjwvdGl0bGU+IgorICAgICAgICAiPGJvZHk+IgorICAgICAgICAiPHNjcmlwdD4iCisg
ICAgICAgICJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5nZVwiLCBv
blZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTsiCisgICAgICAgICJmdW5jdGlvbiBvblZpc2liaWxp
dHlDaGFuZ2UoKSB7IgorICAgICAgICAiICAgIGRvY3VtZW50LnRpdGxlID0gZG9jdW1lbnQudmlz
aWJpbGl0eVN0YXRlOyIKKyAgICAgICAgIn0iCisgICAgICAgICI8L3NjcmlwdD4iCisgICAgICAg
ICI8L2JvZHk+PC9odG1sPiIsCisgICAgICAgIG51bGxwdHIpOworICAgIHRlc3QtPndhaXRVbnRp
bExvYWRGaW5pc2hlZCgpOworCisgICAgR1VuaXF1ZU91dFB0cjxHRXJyb3I+IGVycm9yOworICAg
IFdlYktpdEphdmFzY3JpcHRSZXN1bHQqIGphdmFzY3JpcHRSZXN1bHQgPSB0ZXN0LT5ydW5KYXZh
U2NyaXB0QW5kV2FpdFVudGlsRmluaXNoZWQoImRvY3VtZW50Lmhhc0ZvY3VzKCk7IiwgJmVycm9y
Lm91dFB0cigpKTsKKyAgICBnX2Fzc2VydF9ub25udWxsKGphdmFzY3JpcHRSZXN1bHQpOworICAg
IGdfYXNzZXJ0X25vX2Vycm9yKGVycm9yLmdldCgpKTsKKyAgICBnX2Fzc2VydF90cnVlKFdlYlZp
ZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQpKTsKKwor
ICAgIC8vIEhpZGUgdGhlIHZpZXcgdG8gbWFrZSBpdCBsb3NlIHRoZSBmb2N1cywgdGhlIHdpbmRv
dyBpcyBzdGlsbCB0aGUgYWN0aXZlIG9uZSB0aG91Z2guCisgICAgdGVzdC0+aGlkZVZpZXcoKTsK
KyAgICB0ZXN0LT53YWl0VW50aWxUaXRsZUNoYW5nZWRUbygiaGlkZGVuIik7CisgICAgamF2YXNj
cmlwdFJlc3VsdCA9IHRlc3QtPnJ1bkphdmFTY3JpcHRBbmRXYWl0VW50aWxGaW5pc2hlZCgiZG9j
dW1lbnQuaGFzRm9jdXMoKTsiLCAmZXJyb3Iub3V0UHRyKCkpOworICAgIGdfYXNzZXJ0X25vbm51
bGwoamF2YXNjcmlwdFJlc3VsdCk7CisgICAgZ19hc3NlcnRfbm9fZXJyb3IoZXJyb3IuZ2V0KCkp
OworICAgIGdfYXNzZXJ0X2ZhbHNlKFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29s
ZWFuKGphdmFzY3JpcHRSZXN1bHQpKTsKK30KKwogI2lmIFBMQVRGT1JNKEdUSykKIGNsYXNzIFNu
YXBzaG90V2ViVmlld1Rlc3Q6IHB1YmxpYyBXZWJWaWV3VGVzdCB7CiBwdWJsaWM6CkBAIC0xNzA5
LDYgKzE3MzksNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAgU25hcHNob3RXZWJWaWV3VGVzdDo6
YWRkKCJXZWJLaXRXZWJWaWV3IiwgInNuYXBzaG90IiwgdGVzdFdlYlZpZXdTbmFwc2hvdCk7CiAj
ZW5kaWYKICAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgInBhZ2UtdmlzaWJp
bGl0eSIsIHRlc3RXZWJWaWV3UGFnZVZpc2liaWxpdHkpOworICAgIFdlYlZpZXdUZXN0OjphZGQo
IldlYktpdFdlYlZpZXciLCAiZG9jdW1lbnQtZm9jdXMiLCB0ZXN0V2ViVmlld0RvY3VtZW50Rm9j
dXMpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogICAgIE5vdGlmaWNhdGlvbldlYlZpZXdU
ZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAibm90aWZpY2F0aW9uIiwgdGVzdFdlYlZpZXdOb3Rp
ZmljYXRpb24pOwogICAgIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZp
ZXciLCAibm90aWZpY2F0aW9uLWluaXRpYWwtcGVybWlzc2lvbi1hbGxvd2VkIiwgdGVzdFdlYlZp
ZXdOb3RpZmljYXRpb25Jbml0aWFsUGVybWlzc2lvbkFsbG93ZWQpOwo=
</data>
<flag name="review"
          id="458456"
          type_id="1"
          status="+"
          setter="aperez"
    />
    <flag name="commit-queue"
          id="458512"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435668</attachid>
            <date>2021-08-17 00:27:50 -0700</date>
            <delta_ts>2021-08-18 02:29:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-document-focus.diff</filename>
            <type>text/plain</type>
            <size>4796</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZmU4ZTdkOWVjYmUuLjlkMDE2MWQ4NDZkMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTA4LTE2ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtXUEVdIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0
dXJucyB0cnVlIGZvciBoaWRkZW4gdGFicworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRyaWFuIFBl
cmV6IGRlIENhc3Ryby4KKworICAgICAgICBXZSBhcmUgYWx3YXlzIGNsYWltaW5nIHRvIGJlIGZv
Y3VzZWQgd2hlbiB0aGUgZG9jdW1lbnQgaW4gdGhlIGFjdGl2ZSB3aW5kb3cgZXZlbiBpZiB0aGUg
cGFnZSBpcyBub3QgYWN0dWFsbHkKKyAgICAgICAgZm9jdXNlZC4KKworICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aGFzRm9jdXMgY29uc3Qp
OiBDaGVjayBhbHNvIHRoYXQgcGFnZSBpcyBmb2N1c2VkLgorCiAyMDIxLTA4LTE2ICBQaGlsaXBw
ZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIy
Nzg5ODEpOiBbR1N0cmVhbWVyXVtEZWJ1Z10gQXNzZXJ0IGNyYXNoZXMgd2hlbiBydW5uaW5nIG1l
ZGlhL3RyYWNrIHRlc3RzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCA0YjZmN2NlZTU1ZmQu
LjEyZWQxZTRkNWI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC03NTg3LDcgKzc1ODcs
NyBAQCBFbGVtZW50KiBEb2N1bWVudDo6YWN0aXZlRWxlbWVudCgpCiBib29sIERvY3VtZW50Ojpo
YXNGb2N1cygpIGNvbnN0CiB7CiAgICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKLSAgICBp
ZiAoIXBhZ2UgfHwgIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmlzQWN0aXZlKCkpCisgICAgaWYg
KCFwYWdlIHx8ICFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpIHx8ICFwYWdlLT5m
b2N1c0NvbnRyb2xsZXIoKS5pc0ZvY3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IGlmIChGcmFtZSogZm9jdXNlZEZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNl
ZEZyYW1lKCkpIHsKICAgICAgICAgaWYgKGZvY3VzZWRGcmFtZS0+dHJlZSgpLmlzRGVzY2VuZGFu
dE9mKGZyYW1lKCkpKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDYzMmFhMmJlYjgzNC4uY2E2ZTU5YTFkYzAyIDEwMDY0NAotLS0gYS9Ub29scy9D
aGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMjEtMDgt
MTYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAg
IFtHVEtdW1dQRV0gZG9jdW1lbnQuaGFzRm9jdXMoKSByZXR1cm5zIHRydWUgZm9yIGhpZGRlbiB0
YWJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkx
MzkKKworICAgICAgICBSZXZpZXdlZCBieSBBZHJpYW4gUGVyZXogZGUgQ2FzdHJvLgorCisgICAg
ICAgIEFkZCBhIHVuaXQgdGVzdHMgdG8gY2hlY2sgZG9jdW1lbnQuaGFzRm9jdXMoKSByZXR1cm5z
IGZhbHNlIHdoZW4gYSB3ZWIgdmlldyBpcyBpbiB0aGUgYWN0aXZlIHdpbmRvdywgYnV0IG5vdCBm
b2N1c2VkLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RX
ZWJLaXRXZWJWaWV3LmNwcDoKKyAgICAgICAgKHRlc3RXZWJWaWV3RG9jdW1lbnRGb2N1cyk6Cisg
ICAgICAgIChiZWZvcmVBbGwpOgorCiAyMDIxLTA4LTE2ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAg
PGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBUZXN0IFdlYktpdFdlYlZpZXcv
cGFnZS12aXNpYmlsaXR5IGlzIGEgZmxha3kgdGltZW91dApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcCBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKaW5k
ZXggNDc4OWExYjNiNTRlLi44Y2RkMjM5YTcxYWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKKysrIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcApAQCAt
Nzk4LDYgKzc5OCw0MiBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViVmlld1BhZ2VWaXNpYmlsaXR5KFdl
YlZpZXdUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X3RydWUoV2ViVmll
d1Rlc3Q6OmphdmFzY3JpcHRSZXN1bHRUb0Jvb2xlYW4oamF2YXNjcmlwdFJlc3VsdCkpOwogfQog
CitzdGF0aWMgdm9pZCB0ZXN0V2ViVmlld0RvY3VtZW50Rm9jdXMoV2ViVmlld1Rlc3QqIHRlc3Qs
IGdjb25zdHBvaW50ZXIpCit7CisgICAgaWYgKCFnX3N0cmNtcDAoZ19nZXRlbnYoIlVOREVSX1hW
RkIiKSwgInllcyIpKSB7CisgICAgICAgIGdfdGVzdF9za2lwKCJUaGlzIHRlc3RzIGRvZXNuJ3Qg
d29yayB1bmRlciBYdmZiIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICB0ZXN0LT5z
aG93SW5XaW5kb3coKTsKKyAgICB0ZXN0LT5sb2FkSHRtbCgiPGh0bWw+PHRpdGxlPjwvdGl0bGU+
IgorICAgICAgICAiPGJvZHkgb25sb2FkPSdkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImVkaXRh
YmxlXCIpLmZvY3VzKCknPiIKKyAgICAgICAgIjxpbnB1dCBpZD0nZWRpdGFibGUnPjwvaW5wdXQ+
IgorICAgICAgICAiPHNjcmlwdD4iCisgICAgICAgICJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVy
KFwidmlzaWJpbGl0eWNoYW5nZVwiLCBvblZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTsiCisgICAg
ICAgICJmdW5jdGlvbiBvblZpc2liaWxpdHlDaGFuZ2UoKSB7IgorICAgICAgICAiICAgIGRvY3Vt
ZW50LnRpdGxlID0gZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlOyIKKyAgICAgICAgIn0iCisgICAg
ICAgICI8L3NjcmlwdD4iCisgICAgICAgICI8L2JvZHk+PC9odG1sPiIsCisgICAgICAgIG51bGxw
dHIpOworICAgIHRlc3QtPndhaXRVbnRpbExvYWRGaW5pc2hlZCgpOworCisgICAgR1VuaXF1ZU91
dFB0cjxHRXJyb3I+IGVycm9yOworICAgIFdlYktpdEphdmFzY3JpcHRSZXN1bHQqIGphdmFzY3Jp
cHRSZXN1bHQgPSB0ZXN0LT5ydW5KYXZhU2NyaXB0QW5kV2FpdFVudGlsRmluaXNoZWQoImRvY3Vt
ZW50Lmhhc0ZvY3VzKCk7IiwgJmVycm9yLm91dFB0cigpKTsKKyAgICBnX2Fzc2VydF9ub25udWxs
KGphdmFzY3JpcHRSZXN1bHQpOworICAgIGdfYXNzZXJ0X25vX2Vycm9yKGVycm9yLmdldCgpKTsK
KyAgICBnX2Fzc2VydF90cnVlKFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFu
KGphdmFzY3JpcHRSZXN1bHQpKTsKKworICAgIC8vIEhpZGUgdGhlIHZpZXcgdG8gbWFrZSBpdCBs
b3NlIHRoZSBmb2N1cywgdGhlIHdpbmRvdyBpcyBzdGlsbCB0aGUgYWN0aXZlIG9uZSB0aG91Z2gu
CisgICAgdGVzdC0+aGlkZVZpZXcoKTsKKyAgICB0ZXN0LT53YWl0VW50aWxUaXRsZUNoYW5nZWRU
bygiaGlkZGVuIik7CisgICAgamF2YXNjcmlwdFJlc3VsdCA9IHRlc3QtPnJ1bkphdmFTY3JpcHRB
bmRXYWl0VW50aWxGaW5pc2hlZCgiZG9jdW1lbnQuaGFzRm9jdXMoKTsiLCAmZXJyb3Iub3V0UHRy
KCkpOworICAgIGdfYXNzZXJ0X25vbm51bGwoamF2YXNjcmlwdFJlc3VsdCk7CisgICAgZ19hc3Nl
cnRfbm9fZXJyb3IoZXJyb3IuZ2V0KCkpOworICAgIGdfYXNzZXJ0X2ZhbHNlKFdlYlZpZXdUZXN0
OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQpKTsKK30KKwogI2lm
IFBMQVRGT1JNKEdUSykKIGNsYXNzIFNuYXBzaG90V2ViVmlld1Rlc3Q6IHB1YmxpYyBXZWJWaWV3
VGVzdCB7CiBwdWJsaWM6CkBAIC0xNzA5LDYgKzE3NDUsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAg
ICAgU25hcHNob3RXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgInNuYXBzaG90Iiwg
dGVzdFdlYlZpZXdTbmFwc2hvdCk7CiAjZW5kaWYKICAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJL
aXRXZWJWaWV3IiwgInBhZ2UtdmlzaWJpbGl0eSIsIHRlc3RXZWJWaWV3UGFnZVZpc2liaWxpdHkp
OworICAgIFdlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAiZG9jdW1lbnQtZm9jdXMi
LCB0ZXN0V2ViVmlld0RvY3VtZW50Rm9jdXMpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQog
ICAgIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAibm90aWZp
Y2F0aW9uIiwgdGVzdFdlYlZpZXdOb3RpZmljYXRpb24pOwogICAgIE5vdGlmaWNhdGlvbldlYlZp
ZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAibm90aWZpY2F0aW9uLWluaXRpYWwtcGVybWlz
c2lvbi1hbGxvd2VkIiwgdGVzdFdlYlZpZXdOb3RpZmljYXRpb25Jbml0aWFsUGVybWlzc2lvbkFs
bG93ZWQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435755</attachid>
            <date>2021-08-18 02:29:24 -0700</date>
            <delta_ts>2021-08-18 03:31:27 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>wcore-document-has-focus.diff</filename>
            <type>text/plain</type>
            <size>31080</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZmU4ZTdkOWVjYmUuLjE4YzVkNDc4ZDIyMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTA4LTE4ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtXUEVdIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0
dXJucyB0cnVlIGZvciBoaWRkZW4gdGFicworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRyaWFuIFBl
cmV6IGRlIENhc3Ryby4KKworICAgICAgICBXZSBhcmUgYWx3YXlzIGNsYWltaW5nIHRvIGJlIGZv
Y3VzZWQgd2hlbiB0aGUgZG9jdW1lbnQgaW4gdGhlIGFjdGl2ZSB3aW5kb3cgZXZlbiBpZiB0aGUg
cGFnZSBpcyBub3QgYWN0dWFsbHkKKyAgICAgICAgZm9jdXNlZC4KKworICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aGFzRm9jdXMgY29uc3Qp
OiBDaGVjayBhbHNvIHRoYXQgcGFnZSBpcyBmb2N1c2VkLgorCiAyMDIxLTA4LTE2ICBQaGlsaXBw
ZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIy
Nzg5ODEpOiBbR1N0cmVhbWVyXVtEZWJ1Z10gQXNzZXJ0IGNyYXNoZXMgd2hlbiBydW5uaW5nIG1l
ZGlhL3RyYWNrIHRlc3RzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCA0YjZmN2NlZTU1ZmQu
LjEyZWQxZTRkNWI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC03NTg3LDcgKzc1ODcs
NyBAQCBFbGVtZW50KiBEb2N1bWVudDo6YWN0aXZlRWxlbWVudCgpCiBib29sIERvY3VtZW50Ojpo
YXNGb2N1cygpIGNvbnN0CiB7CiAgICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKLSAgICBp
ZiAoIXBhZ2UgfHwgIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmlzQWN0aXZlKCkpCisgICAgaWYg
KCFwYWdlIHx8ICFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpIHx8ICFwYWdlLT5m
b2N1c0NvbnRyb2xsZXIoKS5pc0ZvY3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IGlmIChGcmFtZSogZm9jdXNlZEZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNl
ZEZyYW1lKCkpIHsKICAgICAgICAgaWYgKGZvY3VzZWRGcmFtZS0+dHJlZSgpLmlzRGVzY2VuZGFu
dE9mKGZyYW1lKCkpKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDYzMmFhMmJlYjgzNC4uNzg2MjRkMjNhMjBkIDEwMDY0NAotLS0gYS9Ub29scy9D
aGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMjEtMDgt
MTggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisKKyAgICAg
ICAgW0dUS11bV1BFXSBkb2N1bWVudC5oYXNGb2N1cygpIHJldHVybnMgdHJ1ZSBmb3IgaGlkZGVu
IHRhYnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
OTEzOQorCisgICAgICAgIFJldmlld2VkIGJ5IEFkcmlhbiBQZXJleiBkZSBDYXN0cm8uCisKKyAg
ICAgICAgQWRkIGEgdW5pdCB0ZXN0cyB0byBjaGVjayBkb2N1bWVudC5oYXNGb2N1cygpIHJldHVy
bnMgZmFsc2Ugd2hlbiBhIHdlYiB2aWV3IGlzIGluIHRoZSBhY3RpdmUgd2luZG93LCBidXQgbm90
IGZvY3VzZWQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL19X
S1dlYkF1dGhlbnRpY2F0aW9uUGFuZWwubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNU
KTogRW5zdXJlIHdlYiB2aWV3IGlzIGZvY3VzZWQgYXMgcmVxdWlyZWQgYnkgY3JlZGVudGlhbHMg
Y29udGFpbmVyLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0
V2ViS2l0V2ViVmlldy5jcHA6CisgICAgICAgICh0ZXN0V2ViVmlld0RvY3VtZW50Rm9jdXMpOgor
ICAgICAgICAoYmVmb3JlQWxsKToKKwogMjAyMS0wOC0xNiAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gVGVzdCBXZWJLaXRXZWJWaWV3
L3BhZ2UtdmlzaWJpbGl0eSBpcyBhIGZsYWt5IHRpbWVvdXQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5t
bSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGlj
YXRpb25QYW5lbC5tbQppbmRleCBmMTc1MzI0NDU0NzkuLmE5ZTNhNGU4ZTA0YiAxMDA2NDQKLS0t
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNh
dGlvblBhbmVsLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
X1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbQpAQCAtNDMyLDYgKzQzMiw3IEBAIFRFU1QoV2Vi
QXV0aGVudGljYXRpb25QYW5lbCwgTm9QYW5lbE5mY1N1Y2NlZWQpCiAgICAgW1tjb25maWd1cmF0
aW9uIHByZWZlcmVuY2VzXSBfc2V0RW5hYmxlZDpZRVMgZm9yRXhwZXJpbWVudGFsRmVhdHVyZTp3
ZWJBdXRoZW50aWNhdGlvbkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOworICAgIFtbd2ViVmlldyB3aW5kb3dd
IG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRS
ZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAg
IFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAiU3VjY2VlZGVkISJdOwpAQCAtNDQ2LDYgKzQ0Nyw3
IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTm9QYW5lbEhpZFN1Y2Nlc3MpCiAgICAg
W1tjb25maWd1cmF0aW9uIHByZWZlcmVuY2VzXSBfc2V0RW5hYmxlZDpZRVMgZm9yRXhwZXJpbWVu
dGFsRmVhdHVyZTp3ZWJBdXRoZW50aWNhdGlvbkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOworICAgIFtbd2Vi
VmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3
ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5n
ZXQoKV1dOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAiU3VjY2VlZGVkISJdOwpAQCAt
NDYzLDYgKzQ2NSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGFuZWxIaWRTdWNj
ZXNzMSkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwog
ICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxV
SURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxl
Z2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndl
YlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50
aWNhdGlvblBhbmVsUmFuKTsKQEAgLTQ4NSw2ICs0ODgsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIFBhbmVsSGlkU3VjY2VzczIpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RX
ZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJW
aWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3dd
IG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRS
ZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAg
IFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC01MTMsNiArNTE3LDcg
QEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbFJhY3kxKQogICAgIGF1dG8gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFs
bG9jXSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzUmFjeTp0cnVlXTsKICAgICBbd2ViVmll
dyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBt
YWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICBbd2ViVmlldyBsb2FkUmVx
dWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBV
dGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNTM3LDYgKzU0Miw3IEBA
IFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGFuZWxSYWN5MikKICAgICBhdXRvIGRlbGVn
YXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOwogICAgIFtkZWxlZ2F0ZSBzZXRJc1JhY3k6dHJ1ZV07CiAgICAgW3dlYlZpZXcg
c2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFr
ZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVl
c3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRp
bDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTU2MCw2ICs1NjYsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsVHdpY2UpCiAgICAgYXV0byB3ZWJWaWV3
ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVj
dCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRv
cHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0p
OwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2Vi
VmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3
ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5n
ZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC01
ODMsNiArNTkwLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBSZWxvYWRIaWRDYW5j
ZWwpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGlu
aXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAg
ICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlE
ZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdh
dGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJW
aWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVx
dWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVudGlj
YXRpb25QYW5lbFJhbik7CkBAIC02MDMsNiArNjExLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlv
blBhbmVsLCBMb2NhdGlvbkNoYW5nZUhpZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9w
dE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZp
Z3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtb
VGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAg
W3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdp
bmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTYyMyw2ICs2
MzIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIE5ld0xvYWRIaWRDYW5jZWwpCiAg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRv
IGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0
ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0
KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3Lmdl
dCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdp
dGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25Q
YW5lbFJhbik7CkBAIC02NDIsNiArNjUyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVs
LCBDbG9zZUhpZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmln
dXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRp
Y2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlE
ZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0
UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVu
KCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTY4MCw2ICs2OTEsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIFN1YkZyYW1lQ2hhbmdlTG9jYXRpb25IaWRDYW5jZWwpCiAg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRv
IGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0
ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0
KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3Lmdl
dCgpXTsKIAogICAgIGF1dG8gcG9ydCA9IHN0YXRpY19jYXN0PHVuc2lnbmVkPihzZXJ2ZXIucG9y
dCgpKTsKICAgICBhdXRvIHVybCA9IG1ha2VTdHJpbmcoImh0dHA6Ly9sb2NhbGhvc3Q6IiwgcG9y
dCk7CkBAIC03MjQsNiArNzM2LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBTdWJG
cmFtZURlc3RydWN0aW9uSGlkQ2FuY2VsKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tU
ZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2Vi
QXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmll
dyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBt
YWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICBbd2ViVmlldyBsb2FkUmVx
dWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOihp
ZCltYWtlU3RyaW5nKCJodHRwOi8vbG9jYWxob3N0OiIsIHNlcnZlci5wb3J0KCkpXV1dOwogICAg
IFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC03NDMsNiArNzU2LDcg
QEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZENhbmNlbCkKICAgICBhdXRv
IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpO
U1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdh
dGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9j
XSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07Cisg
ICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwog
CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0
ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFu
KTsKQEAgLTc2Myw2ICs3NzcsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVs
SGlkQ3RhcE5vQ3JlZGVudGlhbHNGb3VuZCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRp
b246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZp
ZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10g
bWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJl
cXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAg
VXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTc4MSw2ICs3OTYsNyBA
QCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsVTJmQ3RhcE5vQ3JlZGVudGlhbHNG
b3VuZCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwog
ICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxV
SURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxl
Z2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndl
YlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50
aWNhdGlvblBhbmVsUmFuKTsKQEAgLTgwMCw2ICs4MTYsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIEZha2VQYW5lbEhpZFN1Y2Nlc3MpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbZGVsZWdhdGUgc2V0SXNGYWtlOnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdh
dGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3Bv
bmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJl
cXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2Vi
QXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC04MTksNiArODM2LDcgQEAgVEVTVChXZWJBdXRo
ZW50aWNhdGlvblBhbmVsLCBGYWtlUGFuZWxIaWRDdGFwTm9DcmVkZW50aWFsc0ZvdW5kKQogICAg
IGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzRmFrZTp0cnVlXTsKICAg
ICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcg
d2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCld
XTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtODM4LDYg
Kzg1Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTnVsbFBhbmVsSGlkU3VjY2Vz
cykKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBh
bmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1
ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3
ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAg
W3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJM
LmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAg
LTg1Nyw2ICs4NzYsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIE51bGxQYW5lbEhp
ZEN0YXBOb0NyZWRlbnRpYWxzRm91bmQpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
ZGVsZWdhdGUgc2V0SXNOdWxsOnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVs
ZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3
ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3Qg
cmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVu
dGljYXRpb25QYW5lbFJhbik7CkBAIC04NzYsNiArODk2LDcgQEAgVEVTVChXZWJBdXRoZW50aWNh
dGlvblBhbmVsLCBQYW5lbE11bHRpcGxlTkZDVGFnc1ByZXNlbnQpCiAgICAgYXV0byB3ZWJWaWV3
ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVj
dCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRv
cHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0p
OwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2Vi
VmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3
ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5n
ZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC04
OTUsNiArOTE2LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZENhbmNl
bFJlbG9hZE5vQ3Jhc2gpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZp
ZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3Vy
YXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNh
dGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVs
ZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJl
c3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigm
d2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC05MTUsNiArOTM3LDcgQEAgVEVTVChXZWJB
dXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZFN1Y2Nlc3NDYW5jZWxOb0NyYXNoKQogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxl
Z2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxs
b2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsK
KyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07
CiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbENhbmNlbEltbWVkaWF0ZWx5ID0gdHJ1ZTsKIAog
ICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVz
dFVSTC5nZXQoKV1dOwpAQCAtOTMzLDYgKzk1Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgUGFuZWxIaWRDdGFwTm9DcmVkZW50aWFsc0ZvdW5kQ2FuY2VsTm9DcmFzaCkKICAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFs
bG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07
CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCld
OwogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxDYW5jZWxJbW1lZGlhdGVseSA9IHRydWU7CiAK
ICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRl
c3RVUkwuZ2V0KCldXTsKQEAgLTk0OSw2ICs5NzMsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9u
UGFuZWwsIFBpbkdldFJldHJpZXNFcnJvcikKICAgICBbW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5j
ZXNdIF9zZXRFbmFibGVkOk5PIGZvckV4cGVyaW1lbnRhbEZlYXR1cmU6d2ViQXV0aGVudGljYXRp
b25Nb2Rlcm5FeHBlcmltZW50YWxGZWF0dXJlKCldOwogCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRv
cHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25m
aWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmly
c3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcg
d2FpdEZvck1lc3NhZ2U6QCJVbmtub3duIGludGVybmFsIGVycm9yLiBFcnJvciBjb2RlOiAyIl07
CiB9CkBAIC05NjMsNiArOTg4LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5H
ZXRLZXlBZ3JlZW1lbnRFcnJvcikKICAgICBbW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdIF9z
ZXRFbmFibGVkOk5PIGZvckV4cGVyaW1lbnRhbEZlYXR1cmU6d2ViQXV0aGVudGljYXRpb25Nb2Rl
cm5FeHBlcmltZW50YWxGZWF0dXJlKCldOwogCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNw
b25kZXI6d2ViVmlldy5nZXQoKV07CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVx
dWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZv
ck1lc3NhZ2U6QCJVbmtub3duIGludGVybmFsIGVycm9yLiBFcnJvciBjb2RlOiAyIl07CiB9CkBA
IC05NzcsNiArMTAwMyw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGluUmVxdWVz
dFBpbkVycm9yTm9EZWxlZ2F0ZSkKICAgICBbW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdIF9z
ZXRFbmFibGVkOk5PIGZvckV4cGVyaW1lbnRhbEZlYXR1cmU6d2ViQXV0aGVudGljYXRpb25Nb2Rl
cm5FeHBlcmltZW50YWxGZWF0dXJlKCldOwogCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNw
b25kZXI6d2ViVmlldy5nZXQoKV07CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVx
dWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZv
ck1lc3NhZ2U6QCJQaW4gaXMgbnVsbC4iXTsKIH0KQEAgLTk5NCw2ICsxMDIxLDcgQEAgVEVTVChX
ZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5SZXF1ZXN0UGluRXJyb3JOdWxsRGVsZWdhdGUpCiAg
ICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJ
RGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbZGVsZWdhdGUgc2V0SXNOdWxsOnRydWVdOwog
ICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmll
dyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQo
KV1dOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAiUGluIGlzIG51bGwuIl07CkBAIC0x
MDExLDYgKzEwMzksNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBpblJlcXVlc3RQ
aW5FcnJvcikKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0p
OwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFu
ZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVy
OndlYlZpZXcuZ2V0KCldOwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjMi
OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTAzMSw2ICsxMDYwLDcgQEAgVEVTVChXZWJBdXRoZW50aWNh
dGlvblBhbmVsLCBQaW5HZXRQaW5Ub2tlblBpbkJsb2NrZWRFcnJvcikKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3
ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAg
d2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2ViVmlldyBsb2FkUmVx
dWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTEw
NTEsNiArMTA4MSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGluR2V0UGluVG9r
ZW5QaW5BdXRoQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpj
b25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0
aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBz
ZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtl
Rmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBh
bmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3Qg
cmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTA3MSw2ICsxMTAyLDcgQEAgVEVT
VChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5HZXRQaW5Ub2tlblBpbkludmFsaWRFcnJvckFu
ZFJldHJ5KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9j
XSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7
CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5l
bFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRl
bGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6
d2ViVmlldy5nZXQoKV07CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQi
OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTA5MCw2ICsxMTIyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNh
dGlvblBhbmVsLCBQaW5HZXRQaW5Ub2tlblBpbkF1dGhJbnZhbGlkRXJyb3JBbmRSZXRyeSkKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8g
ZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRl
IGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQo
KV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0
KCldOwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2Vi
VmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0
KCldXTsKQEAgLTExMDksNiArMTE0Miw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwg
TWFrZUNyZWRlbnRpYWxQaW4pCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dl
YlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZp
Z3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50
aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJ
RGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJz
dFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQ
aW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1
ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CkBAIC0xMTI3LDYgKzExNjEsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIE1ha2VDcmVkZW50aWFsUGluQXV0aEJsb2NrZWRFcnJvcikK
ICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1
dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVn
YXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5n
ZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcu
Z2V0KCldOwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBb
d2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwu
Z2V0KCldXTsKQEAgLTExNDcsNiArMTE4Miw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5l
bCwgTWFrZUNyZWRlbnRpYWxQaW5JbnZhbGlkRXJyb3JBbmRSZXRyeSkKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3
ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAg
d2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2ViVmlldyBsb2FkUmVx
dWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTEx
NjYsNiArMTIwMiw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgR2V0QXNzZXJ0aW9u
UGluKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBp
bml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAg
ICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJ
RGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVn
YXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2Vi
Vmlldy5nZXQoKV07CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwog
ICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVz
dFVSTC5nZXQoKV1dOwpAQCAtMTE4NCw2ICsxMjIxLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlv
blBhbmVsLCBHZXRBc3NlcnRpb25QaW5BdXRoQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmll
dyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1Jl
Y3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFk
b3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRd
KTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dl
YlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICB3
ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1
ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTIw
NCw2ICsxMjQyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBHZXRBc3NlcnRpb25Q
aW5JbnZhbGlkRXJyb3JBbmRSZXRyeSkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVz
dFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246
Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1
dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcg
c2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFr
ZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgd2ViQXV0aGVudGljYXRpb25Q
YW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0
IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTEyMjQsNiArMTI2Myw3IEBAIFRF
U1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTmZjUGluQ2FjaGVkRGlzY29ubmVjdCkKICAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFs
bG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07
CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCld
OwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCld
XTsKQEAgLTEyNDQsNiArMTI4NCw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTXVs
dGlwbGVBY2NvdW50c051bGxEZWxlZ2F0ZSkKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhb
W1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAg
IFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVy
OndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVz
dCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1l
c3NhZ2U6QCJPcGVyYXRpb24gdGltZWQgb3V0LiJdOwpAQCAtMTI2MSw2ICsxMzAyLDcgQEAgVEVT
VChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBNdWx0aXBsZUFjY291bnRzKQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
W3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAg
ICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RV
UkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIlN1Y2NlZWRlZCEiXTsK
QEAgLTEyODMsNiArMTMyNSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFFcnJv
cikKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAg
IGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0
ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZp
ZXcuZ2V0KCldOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1
ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNh
dGlvblBhbmVsVXBkYXRlTEFFcnJvcik7CkBAIC0xMzAwLDYgKzEzNDMsNyBAQCBURVNUKFdlYkF1
dGhlbnRpY2F0aW9uUGFuZWwsIExBRHVwbGljYXRlQ3JlZGVudGlhbCkKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3
ZWJWaWV3IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAg
QVNTRVJUX1RSVUUoYWRkS2V5VG9LZXljaGFpbih0ZXN0RVMyNTZQcml2YXRlS2V5QmFzZTY0LCAi
IiwgdGVzdFVzZXJFbnRpdHlCdW5kbGVCYXNlNjQpKTsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVz
dDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTEzMTks
NiArMTM2Myw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFOb0NyZWRlbnRpYWwp
CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBh
dXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxl
Z2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUu
Z2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3
LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVz
dFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigmd2ViQXV0aGVudGljYXRp
b25QYW5lbFVwZGF0ZUxBTm9DcmVkZW50aWFsKTsKQEAgLTEzMzcsNiArMTM4Miw3IEBAIFRFU1Qo
V2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFNYWtlQ3JlZGVudGlhbE51bGxEZWxlZ2F0ZSkKICAg
ICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlE
ZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1ZV07CiAg
ICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3
IHdpbmRvd10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgp
XV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJEaXNhbGxvdyBsb2NhbCBhdXRoZW50
aWNhdG9yLiJdOwpAQCAtMTM1NCw2ICsxNDAwLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBMQU1ha2VDcmVkZW50aWFsRGlzYWxsb3dMb2NhbEF1dGhlbnRpY2F0b3IpCiAgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVn
YXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOwor
ICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgpXTsK
IAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
dGVzdFVSTC5nZXQoKV1dOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAiRGlzYWxsb3cg
bG9jYWwgYXV0aGVudGljYXRvci4iXTsKQEAgLTEzNzEsNiArMTQxOCw3IEBAIFRFU1QoV2ViQXV0
aGVudGljYXRpb25QYW5lbCwgTEFNYWtlQ3JlZGVudGlhbEFsbG93TG9jYWxBdXRoZW50aWNhdG9y
KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0
V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAg
YXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVs
ZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRl
LmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6d2ViVmll
dy5nZXQoKV07CiAKICAgICBsb2NhbEF1dGhlbnRpY2F0b3JQb2xpY3kgPSBfV0tMb2NhbEF1dGhl
bnRpY2F0b3JQb2xpY3lBbGxvdzsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1
ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTEzOTEsNiArMTQzOSw3IEBA
IFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFNYWtlQ3JlZGVudGlhbE5vTW9ja05vVXNl
ckdlc3R1cmUpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxs
b2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25d
KTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBh
bmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6
ZGVsZWdhdGUuZ2V0KCldOworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRl
cjp3ZWJWaWV3LmdldCgpXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVl
c3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JN
ZXNzYWdlOkAiVGhpcyByZXF1ZXN0IGhhcyBiZWVuIGNhbmNlbGxlZCBieSB0aGUgdXNlci4iXTsK
QEAgLTE0MDgsNiArMTQ1Nyw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFNYWtl
Q3JlZGVudGlhbFJvbGxCYWNrQ3JlZGVudGlhbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3Vy
YXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVz
dFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dl
YlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW1t3ZWJWaWV3IHdpbmRv
d10gbWFrZUZpcnN0UmVzcG9uZGVyOndlYlZpZXcuZ2V0KCldOwogCiAgICAgbG9jYWxBdXRoZW50
aWNhdG9yUG9saWN5ID0gX1dLTG9jYWxBdXRoZW50aWNhdG9yUG9saWN5QWxsb3c7CiAgICAgW3dl
YlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdl
dCgpXV07CkBAIC0xNDQxLDYgKzE0OTEsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWws
IExBR2V0QXNzZXJ0aW9uKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJW
aWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1
cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGlj
YXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURl
bGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RS
ZXNwb25kZXI6d2ViVmlldy5nZXQoKV07CiAKICAgICBBU1NFUlRfVFJVRShhZGRLZXlUb0tleWNo
YWluKHRlc3RFUzI1NlByaXZhdGVLZXlCYXNlNjQsICIiLCB0ZXN0VXNlckVudGl0eUJ1bmRsZUJh
c2U2NCkpOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdp
dGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTQ2MSw2ICsxNTEyLDcgQEAgVEVTVChXZWJBdXRo
ZW50aWNhdGlvblBhbmVsLCBMQUdldEFzc2VydGlvbk5vTW9ja05vVXNlckdlc3R1cmUpCiAgICAg
YXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJh
bWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRl
bGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBh
bGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCld
OworICAgIFtbd2ViVmlldyB3aW5kb3ddIG1ha2VGaXJzdFJlc3BvbmRlcjp3ZWJWaWV3LmdldCgp
XTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhV
Ukw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFt3ZWJWaWV3IHdhaXRGb3JNZXNzYWdlOkAiVGhpcyBy
ZXF1ZXN0IGhhcyBiZWVuIGNhbmNlbGxlZCBieSB0aGUgdXNlci4iXTsKQEAgLTE0NzgsNiArMTUz
MCw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFHZXRBc3NlcnRpb25NdWx0aXBs
ZU9yZGVyKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9j
XSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7
CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5l
bFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRl
bGVnYXRlLmdldCgpXTsKKyAgICBbW3dlYlZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6
d2ViVmlldy5nZXQoKV07CiAKICAgICBBU1NFUlRfVFJVRShhZGRLZXlUb0tleWNoYWluKHRlc3RF
UzI1NlByaXZhdGVLZXlCYXNlNjQsICIiLCB0ZXN0VXNlckVudGl0eUJ1bmRsZUJhc2U2NCkpOwog
ICAgIEFTU0VSVF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4oIkJCUm9pMkpiUjBJWFRlSm12WFVwMVlJ
dU00c3BoL0x1M2VHZjc1RjduK0hvakhLRzcwYTRSMHJCMlBRY2U1L1NKbGU2VDdPTzVDcWV0L0xK
WlZNNk5ROHlERHhXdmF5ZjcxR1REcDJ5VXR1SWJxSkxGVmJwV3ltbGo5V1JpemdYM0E9PSIsICIi
LCAib21KcFpFb0FBUUlEQkFVR0J3Z0paRzVoYldWa1NtRnVaUT09Ii8qIHsgImlkIjogaCcwMDAx
MDIwMzA0MDUwNjA3MDgwOScsICJuYW1lIjogIkphbmUiIH0gKi8pKTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYlZpZXcu
Y3BwCmluZGV4IDQ3ODlhMWIzYjU0ZS4uOGNkZDIzOWE3MWFlIDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYlZpZXcuY3BwCisrKyBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5j
cHAKQEAgLTc5OCw2ICs3OTgsNDIgQEAgc3RhdGljIHZvaWQgdGVzdFdlYlZpZXdQYWdlVmlzaWJp
bGl0eShXZWJWaWV3VGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKICAgICBnX2Fzc2VydF90cnVl
KFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQp
KTsKIH0KIAorc3RhdGljIHZvaWQgdGVzdFdlYlZpZXdEb2N1bWVudEZvY3VzKFdlYlZpZXdUZXN0
KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQoreworICAgIGlmICghZ19zdHJjbXAwKGdfZ2V0ZW52KCJV
TkRFUl9YVkZCIiksICJ5ZXMiKSkgeworICAgICAgICBnX3Rlc3Rfc2tpcCgiVGhpcyB0ZXN0cyBk
b2Vzbid0IHdvcmsgdW5kZXIgWHZmYiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAg
dGVzdC0+c2hvd0luV2luZG93KCk7CisgICAgdGVzdC0+bG9hZEh0bWwoIjxodG1sPjx0aXRsZT48
L3RpdGxlPiIKKyAgICAgICAgIjxib2R5IG9ubG9hZD0nZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
XCJlZGl0YWJsZVwiKS5mb2N1cygpJz4iCisgICAgICAgICI8aW5wdXQgaWQ9J2VkaXRhYmxlJz48
L2lucHV0PiIKKyAgICAgICAgIjxzY3JpcHQ+IgorICAgICAgICAiZG9jdW1lbnQuYWRkRXZlbnRM
aXN0ZW5lcihcInZpc2liaWxpdHljaGFuZ2VcIiwgb25WaXNpYmlsaXR5Q2hhbmdlLCBmYWxzZSk7
IgorICAgICAgICAiZnVuY3Rpb24gb25WaXNpYmlsaXR5Q2hhbmdlKCkgeyIKKyAgICAgICAgIiAg
ICBkb2N1bWVudC50aXRsZSA9IGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZTsiCisgICAgICAgICJ9
IgorICAgICAgICAiPC9zY3JpcHQ+IgorICAgICAgICAiPC9ib2R5PjwvaHRtbD4iLAorICAgICAg
ICBudWxscHRyKTsKKyAgICB0ZXN0LT53YWl0VW50aWxMb2FkRmluaXNoZWQoKTsKKworICAgIEdV
bmlxdWVPdXRQdHI8R0Vycm9yPiBlcnJvcjsKKyAgICBXZWJLaXRKYXZhc2NyaXB0UmVzdWx0KiBq
YXZhc2NyaXB0UmVzdWx0ID0gdGVzdC0+cnVuSmF2YVNjcmlwdEFuZFdhaXRVbnRpbEZpbmlzaGVk
KCJkb2N1bWVudC5oYXNGb2N1cygpOyIsICZlcnJvci5vdXRQdHIoKSk7CisgICAgZ19hc3NlcnRf
bm9ubnVsbChqYXZhc2NyaXB0UmVzdWx0KTsKKyAgICBnX2Fzc2VydF9ub19lcnJvcihlcnJvci5n
ZXQoKSk7CisgICAgZ19hc3NlcnRfdHJ1ZShXZWJWaWV3VGVzdDo6amF2YXNjcmlwdFJlc3VsdFRv
Qm9vbGVhbihqYXZhc2NyaXB0UmVzdWx0KSk7CisKKyAgICAvLyBIaWRlIHRoZSB2aWV3IHRvIG1h
a2UgaXQgbG9zZSB0aGUgZm9jdXMsIHRoZSB3aW5kb3cgaXMgc3RpbGwgdGhlIGFjdGl2ZSBvbmUg
dGhvdWdoLgorICAgIHRlc3QtPmhpZGVWaWV3KCk7CisgICAgdGVzdC0+d2FpdFVudGlsVGl0bGVD
aGFuZ2VkVG8oImhpZGRlbiIpOworICAgIGphdmFzY3JpcHRSZXN1bHQgPSB0ZXN0LT5ydW5KYXZh
U2NyaXB0QW5kV2FpdFVudGlsRmluaXNoZWQoImRvY3VtZW50Lmhhc0ZvY3VzKCk7IiwgJmVycm9y
Lm91dFB0cigpKTsKKyAgICBnX2Fzc2VydF9ub25udWxsKGphdmFzY3JpcHRSZXN1bHQpOworICAg
IGdfYXNzZXJ0X25vX2Vycm9yKGVycm9yLmdldCgpKTsKKyAgICBnX2Fzc2VydF9mYWxzZShXZWJW
aWV3VGVzdDo6amF2YXNjcmlwdFJlc3VsdFRvQm9vbGVhbihqYXZhc2NyaXB0UmVzdWx0KSk7Cit9
CisKICNpZiBQTEFURk9STShHVEspCiBjbGFzcyBTbmFwc2hvdFdlYlZpZXdUZXN0OiBwdWJsaWMg
V2ViVmlld1Rlc3QgewogcHVibGljOgpAQCAtMTcwOSw2ICsxNzQ1LDcgQEAgdm9pZCBiZWZvcmVB
bGwoKQogICAgIFNuYXBzaG90V2ViVmlld1Rlc3Q6OmFkZCgiV2ViS2l0V2ViVmlldyIsICJzbmFw
c2hvdCIsIHRlc3RXZWJWaWV3U25hcHNob3QpOwogI2VuZGlmCiAgICAgV2ViVmlld1Rlc3Q6OmFk
ZCgiV2ViS2l0V2ViVmlldyIsICJwYWdlLXZpc2liaWxpdHkiLCB0ZXN0V2ViVmlld1BhZ2VWaXNp
YmlsaXR5KTsKKyAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgImRvY3VtZW50
LWZvY3VzIiwgdGVzdFdlYlZpZXdEb2N1bWVudEZvY3VzKTsKICNpZiBFTkFCTEUoTk9USUZJQ0FU
SU9OUykKICAgICBOb3RpZmljYXRpb25XZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3Iiwg
Im5vdGlmaWNhdGlvbiIsIHRlc3RXZWJWaWV3Tm90aWZpY2F0aW9uKTsKICAgICBOb3RpZmljYXRp
b25XZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgIm5vdGlmaWNhdGlvbi1pbml0aWFs
LXBlcm1pc3Npb24tYWxsb3dlZCIsIHRlc3RXZWJWaWV3Tm90aWZpY2F0aW9uSW5pdGlhbFBlcm1p
c3Npb25BbGxvd2VkKTsK
</data>
<flag name="commit-queue"
          id="458661"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435758</attachid>
            <date>2021-08-18 03:31:27 -0700</date>
            <delta_ts>2021-08-18 23:37:27 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>wcore-document-has-focus.diff</filename>
            <type>text/plain</type>
            <size>30325</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZmU4ZTdkOWVjYmUuLjE4YzVkNDc4ZDIyMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTA4LTE4ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVtXUEVdIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0
dXJucyB0cnVlIGZvciBoaWRkZW4gdGFicworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRyaWFuIFBl
cmV6IGRlIENhc3Ryby4KKworICAgICAgICBXZSBhcmUgYWx3YXlzIGNsYWltaW5nIHRvIGJlIGZv
Y3VzZWQgd2hlbiB0aGUgZG9jdW1lbnQgaW4gdGhlIGFjdGl2ZSB3aW5kb3cgZXZlbiBpZiB0aGUg
cGFnZSBpcyBub3QgYWN0dWFsbHkKKyAgICAgICAgZm9jdXNlZC4KKworICAgICAgICAqIGRvbS9E
b2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aGFzRm9jdXMgY29uc3Qp
OiBDaGVjayBhbHNvIHRoYXQgcGFnZSBpcyBmb2N1c2VkLgorCiAyMDIxLTA4LTE2ICBQaGlsaXBw
ZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIy
Nzg5ODEpOiBbR1N0cmVhbWVyXVtEZWJ1Z10gQXNzZXJ0IGNyYXNoZXMgd2hlbiBydW5uaW5nIG1l
ZGlhL3RyYWNrIHRlc3RzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCA0YjZmN2NlZTU1ZmQu
LjEyZWQxZTRkNWI4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC03NTg3LDcgKzc1ODcs
NyBAQCBFbGVtZW50KiBEb2N1bWVudDo6YWN0aXZlRWxlbWVudCgpCiBib29sIERvY3VtZW50Ojpo
YXNGb2N1cygpIGNvbnN0CiB7CiAgICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKLSAgICBp
ZiAoIXBhZ2UgfHwgIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmlzQWN0aXZlKCkpCisgICAgaWYg
KCFwYWdlIHx8ICFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpIHx8ICFwYWdlLT5m
b2N1c0NvbnRyb2xsZXIoKS5pc0ZvY3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IGlmIChGcmFtZSogZm9jdXNlZEZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNl
ZEZyYW1lKCkpIHsKICAgICAgICAgaWYgKGZvY3VzZWRGcmFtZS0+dHJlZSgpLmlzRGVzY2VuZGFu
dE9mKGZyYW1lKCkpKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDYzMmFhMmJlYjgzNC4uOWI2NTJhNTU2NDRhIDEwMDY0NAotLS0gYS9Ub29scy9D
aGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjEtMDgt
MTggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAg
IFtHVEtdW1dQRV0gZG9jdW1lbnQuaGFzRm9jdXMoKSByZXR1cm5zIHRydWUgZm9yIGhpZGRlbiB0
YWJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkx
MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
YSB1bml0IHRlc3RzIHRvIGNoZWNrIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0dXJucyBmYWxzZSB3
aGVuIGEgd2ViIHZpZXcgaXMgaW4gdGhlIGFjdGl2ZSB3aW5kb3csIGJ1dCBub3QgZm9jdXNlZC4K
KworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVu
dGljYXRpb25QYW5lbC5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOiBFbnN1cmUg
d2ViIHZpZXcgaXMgZm9jdXNlZCBhcyByZXF1aXJlZCBieSBjcmVkZW50aWFscyBjb250YWluZXIu
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJW
aWV3LmNwcDoKKyAgICAgICAgKHRlc3RXZWJWaWV3RG9jdW1lbnRGb2N1cyk6CisgICAgICAgIChi
ZWZvcmVBbGwpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvY29jb2EvVGVzdFdLV2ViVmlldy5o
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvY29jb2EvVGVzdFdLV2ViVmlldy5tbToKKyAgICAg
ICAgKC1bVGVzdFdLV2ViVmlldyBmb2N1c10pOgorCiAyMDIxLTA4LTE2ICBDYXJsb3MgR2FyY2lh
IENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBUZXN0IFdlYktp
dFdlYlZpZXcvcGFnZS12aXNpYmlsaXR5IGlzIGEgZmxha3kgdGltZW91dApkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlv
blBhbmVsLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJB
dXRoZW50aWNhdGlvblBhbmVsLm1tCmluZGV4IGYxNzUzMjQ0NTQ3OS4uNzljYjQxN2IwMjAyIDEw
MDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL19XS1dlYkF1
dGhlbnRpY2F0aW9uUGFuZWwubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tCkBAIC00MzIsNiArNDMyLDcgQEAg
VEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBOb1BhbmVsTmZjU3VjY2VlZCkKICAgICBbW2Nv
bmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdIF9zZXRFbmFibGVkOllFUyBmb3JFeHBlcmltZW50YWxG
ZWF0dXJlOndlYkF1dGhlbnRpY2F0aW9uRXhwZXJpbWVudGFsRmVhdHVyZSgpXTsKIAogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CisgICAgW3dlYlZpZXcg
Zm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0
V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJT
dWNjZWVkZWQhIl07CkBAIC00NDYsNiArNDQ3LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBOb1BhbmVsSGlkU3VjY2VzcykKICAgICBbW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNd
IF9zZXRFbmFibGVkOllFUyBmb3JFeHBlcmltZW50YWxGZWF0dXJlOndlYkF1dGhlbnRpY2F0aW9u
RXhwZXJpbWVudGFsRmVhdHVyZSgpXTsKIAogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tU
ZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uXSk7CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJTdWNjZWVkZWQhIl07CkBAIC00NjMsNiAr
NDY1LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZFN1Y2Nlc3MxKQog
ICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0
byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdh
dGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdl
dCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpb
TlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpy
dW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNDg1LDYgKzQ4OCw3IEBAIFRFU1Qo
V2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGFuZWxIaWRTdWNjZXNzMikKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dl
YlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50
aWNhdGlvblBhbmVsUmFuKTsKQEAgLTUxMyw2ICs1MTcsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIFBhbmVsUmFjeTEpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0
V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbZGVs
ZWdhdGUgc2V0SXNSYWN5OnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdh
dGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1
ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0
aWw6OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC01MzcsNiArNTQyLDcgQEAg
VEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbFJhY3kyKQogICAgIGF1dG8gZGVsZWdh
dGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9j
XSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzUmFjeTp0cnVlXTsKICAgICBbd2ViVmlldyBz
ZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAg
ICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RV
UkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpA
QCAtNTYwLDYgKzU2Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGFuZWxUd2lj
ZSkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAg
IGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0
ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVl
c3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRp
bDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTU4Myw2ICs1OTAsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFJlbG9hZEhpZENhbmNlbCkKICAgICBhdXRvIHdl
YlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1pl
cm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUg
PSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBp
bml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAg
W3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVz
dCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRo
ZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTYwMyw2ICs2MTEsNyBAQCBURVNUKFdlYkF1dGhlbnRp
Y2F0aW9uUGFuZWwsIExvY2F0aW9uQ2hhbmdlSGlkQ2FuY2VsKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVl
c3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0
aW9uUGFuZWxSYW4pOwpAQCAtNjIzLDYgKzYzMiw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgTmV3TG9hZEhpZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVz
dFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246
Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1
dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcg
c2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAg
ICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0
VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsK
QEAgLTY0Miw2ICs2NTIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIENsb3NlSGlk
Q2FuY2VsKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9j
XSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7
CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5l
bFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRl
bGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2Fk
UmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAg
ICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNjgwLDYgKzY5MSw3
IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgU3ViRnJhbWVDaGFuZ2VMb2NhdGlvbkhp
ZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0p
OwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFu
ZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgYXV0byBwb3J0ID0g
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHNlcnZlci5wb3J0KCkpOwogICAgIGF1dG8gdXJsID0gbWFr
ZVN0cmluZygiaHR0cDovL2xvY2FsaG9zdDoiLCBwb3J0KTsKQEAgLTcyNCw2ICs3MzYsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFN1YkZyYW1lRGVzdHJ1Y3Rpb25IaWRDYW5jZWwp
CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBh
dXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxl
Z2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUu
Z2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0
OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6KGlkKW1h
a2VTdHJpbmcoImh0dHA6Ly9sb2NhbGhvc3Q6Iiwgc2VydmVyLnBvcnQoKSldXV07CiAgICAgVXRp
bDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTc0Myw2ICs3NTYsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkQ2FuY2VsKQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
d2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0
IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhl
bnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNzYzLDYgKzc3Nyw3IEBAIFRFU1QoV2ViQXV0aGVudGlj
YXRpb25QYW5lbCwgUGFuZWxIaWRDdGFwTm9DcmVkZW50aWFsc0ZvdW5kKQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
d2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0
IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhl
bnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNzgxLDYgKzc5Niw3IEBAIFRFU1QoV2ViQXV0aGVudGlj
YXRpb25QYW5lbCwgUGFuZWxVMmZDdGFwTm9DcmVkZW50aWFsc0ZvdW5kKQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
d2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0
IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhl
bnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtODAwLDYgKzgxNiw3IEBAIFRFU1QoV2ViQXV0aGVudGlj
YXRpb25QYW5lbCwgRmFrZVBhbmVsSGlkU3VjY2VzcykKICAgICBhdXRvIGRlbGVnYXRlID0gYWRv
cHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0p
OwogICAgIFtkZWxlZ2F0ZSBzZXRJc0Zha2U6dHJ1ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxl
Z2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgp
XV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTgxOSw2
ICs4MzYsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEZha2VQYW5lbEhpZEN0YXBO
b0NyZWRlbnRpYWxzRm91bmQpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2Vi
QXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbZGVsZWdh
dGUgc2V0SXNGYWtlOnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUu
Z2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0
OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6
OnJ1bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC04MzgsNiArODU2LDcgQEAgVEVT
VChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBOdWxsUGFuZWxIaWRTdWNjZXNzKQogICAgIGF1dG8g
ZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRl
IGFsbG9jXSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzTnVsbDp0cnVlXTsKICAgICBbd2Vi
VmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107
CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJM
OnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxS
YW4pOwpAQCAtODU3LDYgKzg3Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTnVs
bFBhbmVsSGlkQ3RhcE5vQ3JlZGVudGlhbHNGb3VuZCkKICAgICBhdXRvIGRlbGVnYXRlID0gYWRv
cHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0p
OwogICAgIFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxl
Z2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgp
XV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTg3Niw2
ICs4OTYsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsTXVsdGlwbGVORkNU
YWdzUHJlc2VudCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBh
bGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlv
bl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9u
UGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0
ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTg5NSw2ICs5
MTYsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkQ2FuY2VsUmVsb2Fk
Tm9DcmFzaCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0p
OwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFu
ZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9h
ZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAg
ICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTkxNSw2ICs5Mzcs
NyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkU3VjY2Vzc0NhbmNlbE5v
Q3Jhc2gpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsK
ICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVs
VUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVs
ZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICB3ZWJBdXRoZW50aWNhdGlv
blBhbmVsQ2FuY2VsSW1tZWRpYXRlbHkgPSB0cnVlOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVl
c3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CkBAIC05MzMs
NiArOTU2LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZEN0YXBOb0Ny
ZWRlbnRpYWxzRm91bmRDYW5jZWxOb0NyYXNoKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMo
W1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJh
dGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0
V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2Vi
VmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107
CiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbENhbmNlbEltbWVkaWF0ZWx5ID0gdHJ1ZTsKIAog
ICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVz
dFVSTC5nZXQoKV1dOwpAQCAtOTQ5LDYgKzk3Myw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgUGluR2V0UmV0cmllc0Vycm9yKQogICAgIFtbY29uZmlndXJhdGlvbiBwcmVmZXJlbmNl
c10gX3NldEVuYWJsZWQ6Tk8gZm9yRXhwZXJpbWVudGFsRmVhdHVyZTp3ZWJBdXRoZW50aWNhdGlv
bk1vZGVybkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9w
dE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZp
Z3VyYXRpb246Y29uZmlndXJhdGlvbl0pOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICBbd2Vi
VmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0
KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIlVua25vd24gaW50ZXJuYWwgZXJy
b3IuIEVycm9yIGNvZGU6IDIiXTsKIH0KQEAgLTk2Myw2ICs5ODgsNyBAQCBURVNUKFdlYkF1dGhl
bnRpY2F0aW9uUGFuZWwsIFBpbkdldEtleUFncmVlbWVudEVycm9yKQogICAgIFtbY29uZmlndXJh
dGlvbiBwcmVmZXJlbmNlc10gX3NldEVuYWJsZWQ6Tk8gZm9yRXhwZXJpbWVudGFsRmVhdHVyZTp3
ZWJBdXRoZW50aWNhdGlvbk1vZGVybkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAgICBhdXRv
IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpO
U1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOworICAgIFt3ZWJWaWV3IGZv
Y3VzXTsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRo
VVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIlVua25v
d24gaW50ZXJuYWwgZXJyb3IuIEVycm9yIGNvZGU6IDIiXTsKIH0KQEAgLTk3Nyw2ICsxMDAzLDcg
QEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5SZXF1ZXN0UGluRXJyb3JOb0RlbGVn
YXRlKQogICAgIFtbY29uZmlndXJhdGlvbiBwcmVmZXJlbmNlc10gX3NldEVuYWJsZWQ6Tk8gZm9y
RXhwZXJpbWVudGFsRmVhdHVyZTp3ZWJBdXRoZW50aWNhdGlvbk1vZGVybkV4cGVyaW1lbnRhbEZl
YXR1cmUoKV07CiAKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBh
bGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlv
bl0pOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNV
UkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3
YWl0Rm9yTWVzc2FnZTpAIlBpbiBpcyBudWxsLiJdOwogfQpAQCAtOTk0LDYgKzEwMjEsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBpblJlcXVlc3RQaW5FcnJvck51bGxEZWxlZ2F0
ZSkKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBh
bmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1
ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dl
YlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3Nh
Z2U6QCJQaW4gaXMgbnVsbC4iXTsKQEAgLTEwMTEsNiArMTAzOSw3IEBAIFRFU1QoV2ViQXV0aGVu
dGljYXRpb25QYW5lbCwgUGluUmVxdWVzdFBpbkVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29u
ZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMo
W1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAg
ICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBm
b2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMyI7CiAgICAgW3dl
YlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdl
dCgpXV07CkBAIC0xMDMxLDYgKzEwNjAsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWws
IFBpbkdldFBpblRva2VuUGluQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
d2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1
c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQo
KV1dOwpAQCAtMTA1MSw2ICsxMDgxLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQ
aW5HZXRQaW5Ub2tlblBpbkF1dGhCbG9ja2VkRXJyb3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRv
cHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25m
aWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhb
W1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAg
IFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZv
Y3VzXTsKIAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dl
YlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdl
dCgpXV07CkBAIC0xMDcxLDYgKzExMDIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWws
IFBpbkdldFBpblRva2VuUGluSW52YWxpZEVycm9yQW5kUmV0cnkpCiAgICAgYXV0byB3ZWJWaWV3
ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVj
dCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRv
cHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0p
OwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJW
aWV3IGZvY3VzXTsKIAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAg
ICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0
VVJMLmdldCgpXV07CkBAIC0xMDkwLDYgKzExMjIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9u
UGFuZWwsIFBpbkdldFBpblRva2VuUGluQXV0aEludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxl
Z2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxs
b2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsK
KyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0g
IjEyMzQiOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdp
dGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTEwOSw2ICsxMTQyLDcgQEAgVEVTVChXZWJBdXRo
ZW50aWNhdGlvblBhbmVsLCBNYWtlQ3JlZGVudGlhbFBpbikKICAgICBhdXRvIHdlYlZpZXcgPSBh
ZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNv
bmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5T
KFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAg
ICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcg
Zm9jdXNdOwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBb
d2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwu
Z2V0KCldXTsKQEAgLTExMjcsNiArMTE2MSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5l
bCwgTWFrZUNyZWRlbnRpYWxQaW5BdXRoQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAg
IFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVS
TC5nZXQoKV1dOwpAQCAtMTE0Nyw2ICsxMTgyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBNYWtlQ3JlZGVudGlhbFBpbkludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
d2ViVmlldyBmb2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQi
OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTE2Niw2ICsxMjAyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNh
dGlvblBhbmVsLCBHZXRBc3NlcnRpb25QaW4pCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RX
ZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJW
aWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsK
IAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CkBAIC0xMTg0LDYgKzEyMjEsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFz
c2VydGlvblBpbkF1dGhCbG9ja2VkRXJyb3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RX
ZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJW
aWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsK
IAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CkBAIC0xMjA0LDYgKzEyNDIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFz
c2VydGlvblBpbkludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
d2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1
c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQo
KV1dOwpAQCAtMTIyNCw2ICsxMjYzLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBO
ZmNQaW5DYWNoZWREaXNjb25uZWN0KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpj
b25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0
aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBz
ZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAg
ICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxvYWRS
ZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAt
MTI0NCw2ICsxMjg0LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBNdWx0aXBsZUFj
Y291bnRzTnVsbERlbGVnYXRlKQogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW2RlbGVn
YXRlIHNldElzTnVsbDp0cnVlXTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRl
LmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVz
dDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBbd2Vi
VmlldyB3YWl0Rm9yTWVzc2FnZTpAIk9wZXJhdGlvbiB0aW1lZCBvdXQuIl07CkBAIC0xMjYxLDYg
KzEzMDIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIE11bHRpcGxlQWNjb3VudHMp
CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBh
dXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxl
Z2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUu
Z2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0
OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFt3ZWJW
aWV3IHdhaXRGb3JNZXNzYWdlOkAiU3VjY2VlZGVkISJdOwpAQCAtMTI4Myw2ICsxMzI1LDcgQEAg
VEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQUVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVl
c3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0
aW9uUGFuZWxVcGRhdGVMQUVycm9yKTsKQEAgLTEzMDAsNiArMTM0Myw3IEBAIFRFU1QoV2ViQXV0
aGVudGljYXRpb25QYW5lbCwgTEFEdXBsaWNhdGVDcmVkZW50aWFsKQogICAgIGF1dG8gd2ViVmll
dyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1Jl
Y3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFk
b3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRd
KTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2Vi
VmlldyBmb2N1c107CiAKICAgICBBU1NFUlRfVFJVRShhZGRLZXlUb0tleWNoYWluKHRlc3RFUzI1
NlByaXZhdGVLZXlCYXNlNjQsICIiLCB0ZXN0VXNlckVudGl0eUJ1bmRsZUJhc2U2NCkpOwogICAg
IFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVS
TC5nZXQoKV1dOwpAQCAtMTMxOSw2ICsxMzYzLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBMQU5vQ3JlZGVudGlhbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdL
V2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29u
ZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhl
bnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0
VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAg
W3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJM
LmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsVXBkYXRlTEFO
b0NyZWRlbnRpYWwpOwpAQCAtMTMzNyw2ICsxMzgyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlv
blBhbmVsLCBMQU1ha2VDcmVkZW50aWFsTnVsbERlbGVnYXRlKQogICAgIGF1dG8gZGVsZWdhdGUg
PSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBp
bml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzTnVsbDp0cnVlXTsKICAgICBbd2ViVmlldyBzZXRV
SURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBb
d2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwu
Z2V0KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIkRpc2FsbG93IGxvY2FsIGF1
dGhlbnRpY2F0b3IuIl07CkBAIC0xMzU0LDYgKzE0MDAsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIExBTWFrZUNyZWRlbnRpYWxEaXNhbGxvd0xvY2FsQXV0aGVudGljYXRvcikKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8g
ZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRl
IGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQo
KV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcg
d2FpdEZvck1lc3NhZ2U6QCJEaXNhbGxvdyBsb2NhbCBhdXRoZW50aWNhdG9yLiJdOwpAQCAtMTM3
MSw2ICsxNDE4LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQU1ha2VDcmVkZW50
aWFsQWxsb3dMb2NhbEF1dGhlbnRpY2F0b3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RX
ZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJW
aWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsK
IAogICAgIGxvY2FsQXV0aGVudGljYXRvclBvbGljeSA9IF9XS0xvY2FsQXV0aGVudGljYXRvclBv
bGljeUFsbG93OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVz
dFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTM5MSw2ICsxNDM5LDcgQEAgVEVTVChXZWJB
dXRoZW50aWNhdGlvblBhbmVsLCBMQU1ha2VDcmVkZW50aWFsTm9Nb2NrTm9Vc2VyR2VzdHVyZSkK
ICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1
dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVn
YXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5n
ZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6
W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZp
ZXcgd2FpdEZvck1lc3NhZ2U6QCJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRo
ZSB1c2VyLiJdOwpAQCAtMTQwOCw2ICsxNDU3LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBMQU1ha2VDcmVkZW50aWFsUm9sbEJhY2tDcmVkZW50aWFsKQogICAgIGF1dG8gd2ViVmll
dyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1Jl
Y3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFk
b3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRd
KTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2Vi
VmlldyBmb2N1c107CiAKICAgICBsb2NhbEF1dGhlbnRpY2F0b3JQb2xpY3kgPSBfV0tMb2NhbEF1
dGhlbnRpY2F0b3JQb2xpY3lBbGxvdzsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxS
ZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTE0NDEsNiArMTQ5MSw3
IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFHZXRBc3NlcnRpb24pCiAgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVn
YXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOwor
ICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIEFTU0VSVF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4o
dGVzdEVTMjU2UHJpdmF0ZUtleUJhc2U2NCwgIiIsIHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0
KSk7CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVS
TDp0ZXN0VVJMLmdldCgpXV07CkBAIC0xNDYxLDYgKzE1MTIsNyBAQCBURVNUKFdlYkF1dGhlbnRp
Y2F0aW9uUGFuZWwsIExBR2V0QXNzZXJ0aW9uTm9Nb2NrTm9Vc2VyR2VzdHVyZSkKICAgICBhdXRv
IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpO
U1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdh
dGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9j
XSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07Cisg
ICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVx
dWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZv
ck1lc3NhZ2U6QCJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSB1c2VyLiJd
OwpAQCAtMTQ3OCw2ICsxNTMwLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQUdl
dEFzc2VydGlvbk11bHRpcGxlT3JkZXIpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rl
c3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9u
OmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJB
dXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3
IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAog
ICAgIEFTU0VSVF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4odGVzdEVTMjU2UHJpdmF0ZUtleUJhc2U2
NCwgIiIsIHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0KSk7CiAgICAgQVNTRVJUX1RSVUUoYWRk
S2V5VG9LZXljaGFpbigiQkJSb2kySmJSMElYVGVKbXZYVXAxWUl1TTRzcGgvTHUzZUdmNzVGN24r
SG9qSEtHNzBhNFIwckIyUFFjZTUvU0psZTZUN09PNUNxZXQvTEpaVk02TlE4eUREeFd2YXlmNzFH
VERwMnlVdHVJYnFKTEZWYnBXeW1sajlXUml6Z1gzQT09IiwgIiIsICJvbUpwWkVvQUFRSURCQVVH
QndnSlpHNWhiV1ZrU21GdVpRPT0iLyogeyAiaWQiOiBoJzAwMDEwMjAzMDQwNTA2MDcwODA5Jywg
Im5hbWUiOiAiSmFuZSIgfSAqLykpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKaW5kZXggNDc4OWExYjNi
NTRlLi44Y2RkMjM5YTcxYWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcApAQCAtNzk4LDYgKzc5OCw0
MiBAQCBzdGF0aWMgdm9pZCB0ZXN0V2ViVmlld1BhZ2VWaXNpYmlsaXR5KFdlYlZpZXdUZXN0KiB0
ZXN0LCBnY29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X3RydWUoV2ViVmlld1Rlc3Q6OmphdmFz
Y3JpcHRSZXN1bHRUb0Jvb2xlYW4oamF2YXNjcmlwdFJlc3VsdCkpOwogfQogCitzdGF0aWMgdm9p
ZCB0ZXN0V2ViVmlld0RvY3VtZW50Rm9jdXMoV2ViVmlld1Rlc3QqIHRlc3QsIGdjb25zdHBvaW50
ZXIpCit7CisgICAgaWYgKCFnX3N0cmNtcDAoZ19nZXRlbnYoIlVOREVSX1hWRkIiKSwgInllcyIp
KSB7CisgICAgICAgIGdfdGVzdF9za2lwKCJUaGlzIHRlc3RzIGRvZXNuJ3Qgd29yayB1bmRlciBY
dmZiIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICB0ZXN0LT5zaG93SW5XaW5kb3co
KTsKKyAgICB0ZXN0LT5sb2FkSHRtbCgiPGh0bWw+PHRpdGxlPjwvdGl0bGU+IgorICAgICAgICAi
PGJvZHkgb25sb2FkPSdkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImVkaXRhYmxlXCIpLmZvY3Vz
KCknPiIKKyAgICAgICAgIjxpbnB1dCBpZD0nZWRpdGFibGUnPjwvaW5wdXQ+IgorICAgICAgICAi
PHNjcmlwdD4iCisgICAgICAgICJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0
eWNoYW5nZVwiLCBvblZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTsiCisgICAgICAgICJmdW5jdGlv
biBvblZpc2liaWxpdHlDaGFuZ2UoKSB7IgorICAgICAgICAiICAgIGRvY3VtZW50LnRpdGxlID0g
ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlOyIKKyAgICAgICAgIn0iCisgICAgICAgICI8L3Njcmlw
dD4iCisgICAgICAgICI8L2JvZHk+PC9odG1sPiIsCisgICAgICAgIG51bGxwdHIpOworICAgIHRl
c3QtPndhaXRVbnRpbExvYWRGaW5pc2hlZCgpOworCisgICAgR1VuaXF1ZU91dFB0cjxHRXJyb3I+
IGVycm9yOworICAgIFdlYktpdEphdmFzY3JpcHRSZXN1bHQqIGphdmFzY3JpcHRSZXN1bHQgPSB0
ZXN0LT5ydW5KYXZhU2NyaXB0QW5kV2FpdFVudGlsRmluaXNoZWQoImRvY3VtZW50Lmhhc0ZvY3Vz
KCk7IiwgJmVycm9yLm91dFB0cigpKTsKKyAgICBnX2Fzc2VydF9ub25udWxsKGphdmFzY3JpcHRS
ZXN1bHQpOworICAgIGdfYXNzZXJ0X25vX2Vycm9yKGVycm9yLmdldCgpKTsKKyAgICBnX2Fzc2Vy
dF90cnVlKFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRS
ZXN1bHQpKTsKKworICAgIC8vIEhpZGUgdGhlIHZpZXcgdG8gbWFrZSBpdCBsb3NlIHRoZSBmb2N1
cywgdGhlIHdpbmRvdyBpcyBzdGlsbCB0aGUgYWN0aXZlIG9uZSB0aG91Z2guCisgICAgdGVzdC0+
aGlkZVZpZXcoKTsKKyAgICB0ZXN0LT53YWl0VW50aWxUaXRsZUNoYW5nZWRUbygiaGlkZGVuIik7
CisgICAgamF2YXNjcmlwdFJlc3VsdCA9IHRlc3QtPnJ1bkphdmFTY3JpcHRBbmRXYWl0VW50aWxG
aW5pc2hlZCgiZG9jdW1lbnQuaGFzRm9jdXMoKTsiLCAmZXJyb3Iub3V0UHRyKCkpOworICAgIGdf
YXNzZXJ0X25vbm51bGwoamF2YXNjcmlwdFJlc3VsdCk7CisgICAgZ19hc3NlcnRfbm9fZXJyb3Io
ZXJyb3IuZ2V0KCkpOworICAgIGdfYXNzZXJ0X2ZhbHNlKFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0
UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQpKTsKK30KKwogI2lmIFBMQVRGT1JNKEdU
SykKIGNsYXNzIFNuYXBzaG90V2ViVmlld1Rlc3Q6IHB1YmxpYyBXZWJWaWV3VGVzdCB7CiBwdWJs
aWM6CkBAIC0xNzA5LDYgKzE3NDUsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAgU25hcHNob3RX
ZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgInNuYXBzaG90IiwgdGVzdFdlYlZpZXdT
bmFwc2hvdCk7CiAjZW5kaWYKICAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3Iiwg
InBhZ2UtdmlzaWJpbGl0eSIsIHRlc3RXZWJWaWV3UGFnZVZpc2liaWxpdHkpOworICAgIFdlYlZp
ZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAiZG9jdW1lbnQtZm9jdXMiLCB0ZXN0V2ViVmll
d0RvY3VtZW50Rm9jdXMpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogICAgIE5vdGlmaWNh
dGlvbldlYlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAibm90aWZpY2F0aW9uIiwgdGVz
dFdlYlZpZXdOb3RpZmljYXRpb24pOwogICAgIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0OjphZGQo
IldlYktpdFdlYlZpZXciLCAibm90aWZpY2F0aW9uLWluaXRpYWwtcGVybWlzc2lvbi1hbGxvd2Vk
IiwgdGVzdFdlYlZpZXdOb3RpZmljYXRpb25Jbml0aWFsUGVybWlzc2lvbkFsbG93ZWQpOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3LmggYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL2NvY29hL1Rlc3RXS1dlYlZpZXcuaAppbmRleCA4NGFhZjY5ODVhMzAu
LjEwYTc2YjFkM2FkNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0
V0tXZWJWaWV3LmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3
LmgKQEAgLTEwMSw2ICsxMDEsNyBAQAogLSAoQk9PTClzZWxlY3Rpb25SYW5nZUhhc1N0YXJ0T2Zm
c2V0OihpbnQpc3RhcnQgZW5kT2Zmc2V0OihpbnQpZW5kOwogLSAodm9pZCljbGlja09uRWxlbWVu
dElEOihOU1N0cmluZyAqKWVsZW1lbnRJRDsKIC0gKHZvaWQpd2FpdEZvclBlbmRpbmdNb3VzZUV2
ZW50czsKKy0gKHZvaWQpZm9jdXM7CiBAZW5kCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQpk
aWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3Lm1tIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3Lm1tCmluZGV4IDIyZDAwMjY5
MjRkYi4uNGI0YzYxOGI1NzE2IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29h
L1Rlc3RXS1dlYlZpZXcubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tX
ZWJWaWV3Lm1tCkBAIC02NTQsNiArNjU0LDE1IEBAIHN0YXRpYyBVSUNhbGxvdXRCYXIgKnN1cHBy
ZXNzVUlDYWxsb3V0QmFyKCkKICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmVQcm9j
ZXNzaW5nTW91c2VFdmVudHMpOwogfQogCistICh2b2lkKWZvY3VzCit7CisjaWYgUExBVEZPUk0o
TUFDKQorICAgIFtfaG9zdFdpbmRvdyBtYWtlRmlyc3RSZXNwb25kZXI6c2VsZl07CisjZWxzZQor
ICAgIFtzdXBlciBiZWNvbWVGaXJzdFJlc3BvbmRlcl07CisjZW5kaWYKK30KKwogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKIC0gKHZvaWQpZGlkU3RhcnRGb3JtQ29udHJvbEludGVyYWN0aW9u
Cg==
</data>
<flag name="commit-queue"
          id="458740"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435847</attachid>
            <date>2021-08-18 23:37:27 -0700</date>
            <delta_ts>2021-08-19 01:46:14 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>wcore-document-has-focus.diff</filename>
            <type>text/plain</type>
            <size>30319</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZmU4ZTdkOWVjYmUuLmY0MWM1ZTg3YzRhYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE2IEBACisyMDIxLTA4LTE4ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBkb2N1bWVudC5oYXNGb2N1cygpIHJldHVybnMgdHJ1ZSBm
b3IgdW5mb2N1c2VkIHBhZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjkxMzkKKworICAgICAgICBSZXZpZXdlZCBieSBBZHJpYW4gUGVyZXogZGUg
Q2FzdHJvLgorCisgICAgICAgIFdlIGFyZSBhbHdheXMgY2xhaW1pbmcgdG8gYmUgZm9jdXNlZCB3
aGVuIHRoZSBkb2N1bWVudCBpbiB0aGUgYWN0aXZlIHdpbmRvdyBldmVuIGlmIHRoZSBwYWdlIGlz
IG5vdCBhY3R1YWxseQorICAgICAgICBmb2N1c2VkLgorCisgICAgICAgICogZG9tL0RvY3VtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpoYXNGb2N1cyBjb25zdCk6IENoZWNr
IGFsc28gdGhhdCBwYWdlIGlzIGZvY3VzZWQuCisKIDIwMjEtMDgtMTYgIFBoaWxpcHBlIE5vcm1h
bmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI3ODk4MSk6
IFtHU3RyZWFtZXJdW0RlYnVnXSBBc3NlcnQgY3Jhc2hlcyB3aGVuIHJ1bm5pbmcgbWVkaWEvdHJh
Y2sgdGVzdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDRiNmY3Y2VlNTVmZC4uMTJlZDFl
NGQ1YjgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKQEAgLTc1ODcsNyArNzU4Nyw3IEBAIEVs
ZW1lbnQqIERvY3VtZW50OjphY3RpdmVFbGVtZW50KCkKIGJvb2wgRG9jdW1lbnQ6Omhhc0ZvY3Vz
KCkgY29uc3QKIHsKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwotICAgIGlmICghcGFn
ZSB8fCAhcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuaXNBY3RpdmUoKSkKKyAgICBpZiAoIXBhZ2Ug
fHwgIXBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmlzQWN0aXZlKCkgfHwgIXBhZ2UtPmZvY3VzQ29u
dHJvbGxlcigpLmlzRm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKEZy
YW1lKiBmb2N1c2VkRnJhbWUgPSBwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkRnJhbWUo
KSkgewogICAgICAgICBpZiAoZm9jdXNlZEZyYW1lLT50cmVlKCkuaXNEZXNjZW5kYW50T2YoZnJh
bWUoKSkpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5k
ZXggNjMyYWEyYmViODM0Li5mYWM3NDQ1NWU5OWEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMS0wOC0xOCAgQ2Fy
bG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgZG9jdW1l
bnQuaGFzRm9jdXMoKSByZXR1cm5zIHRydWUgZm9yIHVuZm9jdXNlZCBwYWdlcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MTM5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWRyaWFuIFBlcmV6IGRlIENhc3Ryby4KKworICAgICAgICBBZGQgYSB1bml0
IHRlc3RzIHRvIGNoZWNrIGRvY3VtZW50Lmhhc0ZvY3VzKCkgcmV0dXJucyBmYWxzZSB3aGVuIGEg
d2ViIHZpZXcgaXMgaW4gdGhlIGFjdGl2ZSB3aW5kb3csIGJ1dCBub3QgZm9jdXNlZC4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvX1dLV2ViQXV0aGVudGljYXRp
b25QYW5lbC5tbToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRFU1QpOiBFbnN1cmUgd2ViIHZp
ZXcgaXMgZm9jdXNlZCBhcyByZXF1aXJlZCBieSBjcmVkZW50aWFscyBjb250YWluZXIuCisgICAg
ICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNw
cDoKKyAgICAgICAgKHRlc3RXZWJWaWV3RG9jdW1lbnRGb2N1cyk6CisgICAgICAgIChiZWZvcmVB
bGwpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvY29jb2EvVGVzdFdLV2ViVmlldy5oOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvY29jb2EvVGVzdFdLV2ViVmlldy5tbToKKyAgICAgICAgKC1b
VGVzdFdLV2ViVmlldyBmb2N1c10pOgorCiAyMDIxLTA4LTE2ICBDYXJsb3MgR2FyY2lhIENhbXBv
cyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBUZXN0IFdlYktpdFdlYlZp
ZXcvcGFnZS12aXNpYmlsaXR5IGlzIGEgZmxha3kgdGltZW91dApkaWZmIC0tZ2l0IGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVs
Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9fV0tXZWJBdXRoZW50
aWNhdGlvblBhbmVsLm1tCmluZGV4IGYxNzUzMjQ0NTQ3OS4uNzljYjQxN2IwMjAyIDEwMDY0NAot
LS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL19XS1dlYkF1dGhlbnRp
Y2F0aW9uUGFuZWwubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tCkBAIC00MzIsNiArNDMyLDcgQEAgVEVTVChX
ZWJBdXRoZW50aWNhdGlvblBhbmVsLCBOb1BhbmVsTmZjU3VjY2VlZCkKICAgICBbW2NvbmZpZ3Vy
YXRpb24gcHJlZmVyZW5jZXNdIF9zZXRFbmFibGVkOllFUyBmb3JFeHBlcmltZW50YWxGZWF0dXJl
OndlYkF1dGhlbnRpY2F0aW9uRXhwZXJpbWVudGFsRmVhdHVyZSgpXTsKIAogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CisgICAgW3dlYlZpZXcgZm9jdXNd
OwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVS
TDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJTdWNjZWVk
ZWQhIl07CkBAIC00NDYsNiArNDQ3LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBO
b1BhbmVsSGlkU3VjY2VzcykKICAgICBbW2NvbmZpZ3VyYXRpb24gcHJlZmVyZW5jZXNdIF9zZXRF
bmFibGVkOllFUyBmb3JFeHBlcmltZW50YWxGZWF0dXJlOndlYkF1dGhlbnRpY2F0aW9uRXhwZXJp
bWVudGFsRmVhdHVyZSgpXTsKIAogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tX
ZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25m
aWd1cmF0aW9uXSk7CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJl
cXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAg
W3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJTdWNjZWVkZWQhIl07CkBAIC00NjMsNiArNDY1LDcg
QEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZFN1Y2Nlc3MxKQogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxl
Z2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxs
b2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsK
KyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxS
ZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndl
YkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNDg1LDYgKzQ4OCw3IEBAIFRFU1QoV2ViQXV0
aGVudGljYXRpb25QYW5lbCwgUGFuZWxIaWRTdWNjZXNzMikKICAgICBhdXRvIHdlYlZpZXcgPSBh
ZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNv
bmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5T
KFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAg
ICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcg
Zm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0
V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlv
blBhbmVsUmFuKTsKQEAgLTUxMyw2ICs1MTcsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFu
ZWwsIFBhbmVsUmFjeTEpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0
aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbZGVsZWdhdGUg
c2V0SXNSYWN5OnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0
KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltO
U1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1
bigmd2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC01MzcsNiArNTQyLDcgQEAgVEVTVChX
ZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbFJhY3kyKQogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW2RlbGVnYXRlIHNldElzUmFjeTp0cnVlXTsKICAgICBbd2ViVmlldyBzZXRVSURl
bGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2Vi
VmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0
KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNTYw
LDYgKzU2Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgUGFuZWxUd2ljZSkKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8g
ZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRl
IGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQo
KV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVu
KCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTU4Myw2ICs1OTAsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIFJlbG9hZEhpZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcg
PSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0
IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9w
dE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7
CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZp
ZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1
ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNh
dGlvblBhbmVsUmFuKTsKQEAgLTYwMyw2ICs2MTEsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9u
UGFuZWwsIExvY2F0aW9uQ2hhbmdlSGlkQ2FuY2VsKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
d2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1
c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRo
VVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFu
ZWxSYW4pOwpAQCAtNjIzLDYgKzYzMiw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwg
TmV3TG9hZEhpZENhbmNlbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmln
dXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRp
Y2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlE
ZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dl
YlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdl
dCgpXV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTY0
Miw2ICs2NTIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIENsb3NlSGlkQ2FuY2Vs
KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0
V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAg
YXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVs
ZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRl
LmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVz
dDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGls
OjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpAQCAtNjgwLDYgKzY5MSw3IEBAIFRF
U1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgU3ViRnJhbWVDaGFuZ2VMb2NhdGlvbkhpZENhbmNl
bCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAg
IGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0
ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgYXV0byBwb3J0ID0gc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KHNlcnZlci5wb3J0KCkpOwogICAgIGF1dG8gdXJsID0gbWFrZVN0cmlu
ZygiaHR0cDovL2xvY2FsaG9zdDoiLCBwb3J0KTsKQEAgLTcyNCw2ICs3MzYsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIFN1YkZyYW1lRGVzdHJ1Y3Rpb25IaWRDYW5jZWwpCiAgICAg
YXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJh
bWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRl
bGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBh
bGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCld
OworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6KGlkKW1ha2VTdHJp
bmcoImh0dHA6Ly9sb2NhbGhvc3Q6Iiwgc2VydmVyLnBvcnQoKSldXV07CiAgICAgVXRpbDo6cnVu
KCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTc0Myw2ICs3NTYsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkQ2FuY2VsKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVl
c3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0
aW9uUGFuZWxSYW4pOwpAQCAtNzYzLDYgKzc3Nyw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgUGFuZWxIaWRDdGFwTm9DcmVkZW50aWFsc0ZvdW5kKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVl
c3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0
aW9uUGFuZWxSYW4pOwpAQCAtNzgxLDYgKzc5Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgUGFuZWxVMmZDdGFwTm9DcmVkZW50aWFsc0ZvdW5kKQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVl
c3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0
aW9uUGFuZWxSYW4pOwpAQCAtODAwLDYgKzgxNiw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25Q
YW5lbCwgRmFrZVBhbmVsSGlkU3VjY2VzcykKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhb
W1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAg
IFtkZWxlZ2F0ZSBzZXRJc0Zha2U6dHJ1ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9h
ZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAg
ICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTgxOSw2ICs4MzYs
NyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEZha2VQYW5lbEhpZEN0YXBOb0NyZWRl
bnRpYWxzRm91bmQpCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVu
dGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbZGVsZWdhdGUgc2V0
SXNGYWtlOnRydWVdOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCld
OworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0aWw6OnJ1bigm
d2ViQXV0aGVudGljYXRpb25QYW5lbFJhbik7CkBAIC04MzgsNiArODU2LDcgQEAgVEVTVChXZWJB
dXRoZW50aWNhdGlvblBhbmVsLCBOdWxsUGFuZWxIaWRTdWNjZXNzKQogICAgIGF1dG8gZGVsZWdh
dGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9j
XSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNldElzTnVsbDp0cnVlXTsKICAgICBbd2ViVmlldyBz
ZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAg
ICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RV
UkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFuZWxSYW4pOwpA
QCAtODU3LDYgKzg3Niw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTnVsbFBhbmVs
SGlkQ3RhcE5vQ3JlZGVudGlhbHNGb3VuZCkKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhb
W1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAg
IFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1ZV07CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpk
ZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9h
ZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAg
ICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTg3Niw2ICs4OTYs
NyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsTXVsdGlwbGVORkNUYWdzUHJl
c2VudCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwog
ICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxV
SURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxl
Z2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJl
cXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAg
VXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTg5NSw2ICs5MTYsNyBA
QCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkQ2FuY2VsUmVsb2FkTm9DcmFz
aCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAg
IGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0
ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVl
c3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgVXRp
bDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsUmFuKTsKQEAgLTkxNSw2ICs5MzcsNyBAQCBU
RVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBhbmVsSGlkU3VjY2Vzc0NhbmNlbE5vQ3Jhc2gp
CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBh
dXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxl
Z2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUu
Z2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVs
Q2FuY2VsSW1tZWRpYXRlbHkgPSB0cnVlOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CkBAIC05MzMsNiArOTU2
LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQYW5lbEhpZEN0YXBOb0NyZWRlbnRp
YWxzRm91bmRDYW5jZWxOb0NyYXNoKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpj
b25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0
aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBz
ZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAgICAg
d2ViQXV0aGVudGljYXRpb25QYW5lbENhbmNlbEltbWVkaWF0ZWx5ID0gdHJ1ZTsKIAogICAgIFt3
ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5n
ZXQoKV1dOwpAQCAtOTQ5LDYgKzk3Myw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwg
UGluR2V0UmV0cmllc0Vycm9yKQogICAgIFtbY29uZmlndXJhdGlvbiBwcmVmZXJlbmNlc10gX3Nl
dEVuYWJsZWQ6Tk8gZm9yRXhwZXJpbWVudGFsRmVhdHVyZTp3ZWJBdXRoZW50aWNhdGlvbk1vZGVy
bkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRp
b246Y29uZmlndXJhdGlvbl0pOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICBbd2ViVmlldyBs
b2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsK
ICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIlVua25vd24gaW50ZXJuYWwgZXJyb3IuIEVy
cm9yIGNvZGU6IDIiXTsKIH0KQEAgLTk2Myw2ICs5ODgsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWwsIFBpbkdldEtleUFncmVlbWVudEVycm9yKQogICAgIFtbY29uZmlndXJhdGlvbiBw
cmVmZXJlbmNlc10gX3NldEVuYWJsZWQ6Tk8gZm9yRXhwZXJpbWVudGFsRmVhdHVyZTp3ZWJBdXRo
ZW50aWNhdGlvbk1vZGVybkV4cGVyaW1lbnRhbEZlYXR1cmUoKV07CiAKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOworICAgIFt3ZWJWaWV3IGZvY3VzXTsK
ICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRl
c3RVUkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIlVua25vd24gaW50
ZXJuYWwgZXJyb3IuIEVycm9yIGNvZGU6IDIiXTsKIH0KQEAgLTk3Nyw2ICsxMDAzLDcgQEAgVEVT
VChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5SZXF1ZXN0UGluRXJyb3JOb0RlbGVnYXRlKQog
ICAgIFtbY29uZmlndXJhdGlvbiBwcmVmZXJlbmNlc10gX3NldEVuYWJsZWQ6Tk8gZm9yRXhwZXJp
bWVudGFsRmVhdHVyZTp3ZWJBdXRoZW50aWNhdGlvbk1vZGVybkV4cGVyaW1lbnRhbEZlYXR1cmUo
KV07CiAKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwor
ICAgIFt3ZWJWaWV3IGZvY3VzXTsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1
ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3YWl0Rm9y
TWVzc2FnZTpAIlBpbiBpcyBudWxsLiJdOwogfQpAQCAtOTk0LDYgKzEwMjEsNyBAQCBURVNUKFdl
YkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBpblJlcXVlc3RQaW5FcnJvck51bGxEZWxlZ2F0ZSkKICAg
ICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlE
ZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFtkZWxlZ2F0ZSBzZXRJc051bGw6dHJ1ZV07CiAg
ICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcg
Zm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0
V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3NhZ2U6QCJQ
aW4gaXMgbnVsbC4iXTsKQEAgLTEwMTEsNiArMTAzOSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRp
b25QYW5lbCwgUGluUmVxdWVzdFBpbkVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMo
W1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJh
dGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0
V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2Vi
VmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107
CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMyI7CiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CkBAIC0xMDMxLDYgKzEwNjAsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBpbkdl
dFBpblRva2VuUGluQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tU
ZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2Vi
QXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmll
dyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAK
ICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxv
YWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpA
QCAtMTA1MSw2ICsxMDgxLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBQaW5HZXRQ
aW5Ub2tlblBpbkF1dGhCbG9ja2VkRXJyb3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RX
ZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJW
aWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsK
IAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcg
bG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07
CkBAIC0xMDcxLDYgKzExMDIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIFBpbkdl
dFBpblRva2VuUGluSW52YWxpZEVycm9yQW5kUmV0cnkpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRv
cHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25m
aWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhb
W1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAg
IFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZv
Y3VzXTsKIAogICAgIHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dl
YlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdl
dCgpXV07CkBAIC0xMDkwLDYgKzExMjIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWws
IFBpbkdldFBpblRva2VuUGluQXV0aEludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVy
b1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9
IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGlu
aXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBb
d2ViVmlldyBmb2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQi
OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTEwOSw2ICsxMTQyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNh
dGlvblBhbmVsLCBNYWtlQ3JlZGVudGlhbFBpbikKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3Vy
YXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVz
dFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dl
YlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNd
OwogCiAgICAgd2ViQXV0aGVudGljYXRpb25QYW5lbFBpbiA9ICIxMjM0IjsKICAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCld
XTsKQEAgLTExMjcsNiArMTE2MSw3IEBAIFRFU1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTWFr
ZUNyZWRlbnRpYWxQaW5BdXRoQmxvY2tlZEVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
d2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1
c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQo
KV1dOwpAQCAtMTE0Nyw2ICsxMTgyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBN
YWtlQ3JlZGVudGlhbFBpbkludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1dG8gd2ViVmlldyA9
IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3Qg
Y29uZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0
TlMoW1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsK
ICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmll
dyBmb2N1c107CiAKICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAg
IFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVS
TC5nZXQoKV1dOwpAQCAtMTE2Niw2ICsxMjAyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBh
bmVsLCBHZXRBc3NlcnRpb25QaW4pCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RX
S1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNv
bmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRo
ZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNl
dFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAg
IHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcgbG9hZFJl
cXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CkBAIC0x
MTg0LDYgKzEyMjEsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFzc2VydGlv
blBpbkF1dGhCbG9ja2VkRXJyb3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RX
S1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNv
bmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRo
ZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNl
dFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAg
IHdlYkF1dGhlbnRpY2F0aW9uUGFuZWxQaW4gPSAiMTIzNCI7CiAgICAgW3dlYlZpZXcgbG9hZFJl
cXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CkBAIC0x
MjA0LDYgKzEyNDIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIEdldEFzc2VydGlv
blBpbkludmFsaWRFcnJvckFuZFJldHJ5KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tU
ZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlv
bjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2Vi
QXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmll
dyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAK
ICAgICB3ZWJBdXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxv
YWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpA
QCAtMTIyNCw2ICsxMjYzLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBOZmNQaW5D
YWNoZWREaXNjb25uZWN0KQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJW
aWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmlndXJhdGlvbjpjb25maWd1
cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0V2ViQXV0aGVudGlj
YXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURl
bGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICB3ZWJB
dXRoZW50aWNhdGlvblBhbmVsUGluID0gIjEyMzQiOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0
OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTI0NCw2
ICsxMjg0LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBNdWx0aXBsZUFjY291bnRz
TnVsbERlbGVnYXRlKQogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhl
bnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW2RlbGVnYXRlIHNl
dElzTnVsbDp0cnVlXTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgp
XTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNV
UkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBbd2ViVmlldyB3
YWl0Rm9yTWVzc2FnZTpAIk9wZXJhdGlvbiB0aW1lZCBvdXQuIl07CkBAIC0xMjYxLDYgKzEzMDIs
NyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFuZWwsIE11bHRpcGxlQWNjb3VudHMpCiAgICAg
YXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJh
bWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRl
bGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBh
bGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCld
OworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFt3ZWJWaWV3IHdh
aXRGb3JNZXNzYWdlOkAiU3VjY2VlZGVkISJdOwpAQCAtMTI4Myw2ICsxMzI1LDcgQEAgVEVTVChX
ZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQUVycm9yKQogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29uZmln
dXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tU
ZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBb
d2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1
c107CiAKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRo
VVJMOnRlc3RVUkwuZ2V0KCldXTsKICAgICBVdGlsOjpydW4oJndlYkF1dGhlbnRpY2F0aW9uUGFu
ZWxVcGRhdGVMQUVycm9yKTsKQEAgLTEzMDAsNiArMTM0Myw3IEBAIFRFU1QoV2ViQXV0aGVudGlj
YXRpb25QYW5lbCwgTEFEdXBsaWNhdGVDcmVkZW50aWFsKQogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29u
ZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMo
W1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAg
ICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBm
b2N1c107CiAKICAgICBBU1NFUlRfVFJVRShhZGRLZXlUb0tleWNoYWluKHRlc3RFUzI1NlByaXZh
dGVLZXlCYXNlNjQsICIiLCB0ZXN0VXNlckVudGl0eUJ1bmRsZUJhc2U2NCkpOwogICAgIFt3ZWJW
aWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQo
KV1dOwpAQCAtMTMxOSw2ICsxMzYzLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBM
QU5vQ3JlZGVudGlhbCkKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJh
dGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0
aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxl
Z2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgp
XV07CiAgICAgVXRpbDo6cnVuKCZ3ZWJBdXRoZW50aWNhdGlvblBhbmVsVXBkYXRlTEFOb0NyZWRl
bnRpYWwpOwpAQCAtMTMzNyw2ICsxMzgyLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVs
LCBMQU1ha2VDcmVkZW50aWFsTnVsbERlbGVnYXRlKQogICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9w
dE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0XSk7
CiAgICAgW2RlbGVnYXRlIHNldElzTnVsbDp0cnVlXTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVn
YXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBmb2N1c107CiAKICAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCld
XTsKICAgICBbd2ViVmlldyB3YWl0Rm9yTWVzc2FnZTpAIkRpc2FsbG93IGxvY2FsIGF1dGhlbnRp
Y2F0b3IuIl07CkBAIC0xMzU0LDYgKzE0MDAsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9uUGFu
ZWwsIExBTWFrZUNyZWRlbnRpYWxEaXNhbGxvd0xvY2FsQXV0aGVudGljYXRvcikKICAgICBhdXRv
IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpO
U1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdh
dGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9j
XSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07Cisg
ICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVx
dWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZv
ck1lc3NhZ2U6QCJEaXNhbGxvdyBsb2NhbCBhdXRoZW50aWNhdG9yLiJdOwpAQCAtMTM3MSw2ICsx
NDE4LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQU1ha2VDcmVkZW50aWFsQWxs
b3dMb2NhbEF1dGhlbnRpY2F0b3IpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RX
S1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNv
bmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRo
ZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNl
dFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAg
IGxvY2FsQXV0aGVudGljYXRvclBvbGljeSA9IF9XS0xvY2FsQXV0aGVudGljYXRvclBvbGljeUFs
bG93OwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhV
Ukw6dGVzdFVSTC5nZXQoKV1dOwpAQCAtMTM5MSw2ICsxNDM5LDcgQEAgVEVTVChXZWJBdXRoZW50
aWNhdGlvblBhbmVsLCBMQU1ha2VDcmVkZW50aWFsTm9Nb2NrTm9Vc2VyR2VzdHVyZSkKICAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFt
ZTpOU1plcm9SZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVs
ZWdhdGUgPSBhZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFs
bG9jXSBpbml0XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07
CisgICAgW3dlYlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJM
UmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2Fp
dEZvck1lc3NhZ2U6QCJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSB1c2Vy
LiJdOwpAQCAtMTQwOCw2ICsxNDU3LDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBM
QU1ha2VDcmVkZW50aWFsUm9sbEJhY2tDcmVkZW50aWFsKQogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TWmVyb1JlY3QgY29u
ZmlndXJhdGlvbjpjb25maWd1cmF0aW9uXSk7CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMo
W1tUZXN0V2ViQXV0aGVudGljYXRpb25QYW5lbFVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAg
ICBbd2ViVmlldyBzZXRVSURlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKyAgICBbd2ViVmlldyBm
b2N1c107CiAKICAgICBsb2NhbEF1dGhlbnRpY2F0b3JQb2xpY3kgPSBfV0tMb2NhbEF1dGhlbnRp
Y2F0b3JQb2xpY3lBbGxvdzsKICAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0
IHJlcXVlc3RXaXRoVVJMOnRlc3RVUkwuZ2V0KCldXTsKQEAgLTE0NDEsNiArMTQ5MSw3IEBAIFRF
U1QoV2ViQXV0aGVudGljYXRpb25QYW5lbCwgTEFHZXRBc3NlcnRpb24pCiAgICAgYXV0byB3ZWJW
aWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJv
UmVjdCBjb25maWd1cmF0aW9uOmNvbmZpZ3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0g
YWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5p
dF0pOwogICAgIFt3ZWJWaWV3IHNldFVJRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3
ZWJWaWV3IGZvY3VzXTsKIAogICAgIEFTU0VSVF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4odGVzdEVT
MjU2UHJpdmF0ZUtleUJhc2U2NCwgIiIsIHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0KSk7CiAg
ICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0
VVJMLmdldCgpXV07CkBAIC0xNDYxLDYgKzE1MTIsNyBAQCBURVNUKFdlYkF1dGhlbnRpY2F0aW9u
UGFuZWwsIExBR2V0QXNzZXJ0aW9uTm9Nb2NrTm9Vc2VyR2VzdHVyZSkKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU1plcm9S
ZWN0IGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlvbl0pOwogICAgIGF1dG8gZGVsZWdhdGUgPSBh
ZG9wdE5TKFtbVGVzdFdlYkF1dGhlbnRpY2F0aW9uUGFuZWxVSURlbGVnYXRlIGFsbG9jXSBpbml0
XSk7CiAgICAgW3dlYlZpZXcgc2V0VUlEZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisgICAgW3dl
YlZpZXcgZm9jdXNdOwogCiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMLmdldCgpXV07CiAgICAgW3dlYlZpZXcgd2FpdEZvck1lc3Nh
Z2U6QCJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSB1c2VyLiJdOwpAQCAt
MTQ3OCw2ICsxNTMwLDcgQEAgVEVTVChXZWJBdXRoZW50aWNhdGlvblBhbmVsLCBMQUdldEFzc2Vy
dGlvbk11bHRpcGxlT3JkZXIpCiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dl
YlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNaZXJvUmVjdCBjb25maWd1cmF0aW9uOmNvbmZp
Z3VyYXRpb25dKTsKICAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RXZWJBdXRoZW50
aWNhdGlvblBhbmVsVUlEZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOwogICAgIFt3ZWJWaWV3IHNldFVJ
RGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworICAgIFt3ZWJWaWV3IGZvY3VzXTsKIAogICAgIEFT
U0VSVF9UUlVFKGFkZEtleVRvS2V5Y2hhaW4odGVzdEVTMjU2UHJpdmF0ZUtleUJhc2U2NCwgIiIs
IHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0KSk7CiAgICAgQVNTRVJUX1RSVUUoYWRkS2V5VG9L
ZXljaGFpbigiQkJSb2kySmJSMElYVGVKbXZYVXAxWUl1TTRzcGgvTHUzZUdmNzVGN24rSG9qSEtH
NzBhNFIwckIyUFFjZTUvU0psZTZUN09PNUNxZXQvTEpaVk02TlE4eUREeFd2YXlmNzFHVERwMnlV
dHVJYnFKTEZWYnBXeW1sajlXUml6Z1gzQT09IiwgIiIsICJvbUpwWkVvQUFRSURCQVVHQndnSlpH
NWhiV1ZrU21GdVpRPT0iLyogeyAiaWQiOiBoJzAwMDEwMjAzMDQwNTA2MDcwODA5JywgIm5hbWUi
OiAiSmFuZSIgfSAqLykpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKaW5kZXggNDc4OWExYjNiNTRlLi44
Y2RkMjM5YTcxYWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
R0xpYi9UZXN0V2ViS2l0V2ViVmlldy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJWaWV3LmNwcApAQCAtNzk4LDYgKzc5OCw0MiBAQCBz
dGF0aWMgdm9pZCB0ZXN0V2ViVmlld1BhZ2VWaXNpYmlsaXR5KFdlYlZpZXdUZXN0KiB0ZXN0LCBn
Y29uc3Rwb2ludGVyKQogICAgIGdfYXNzZXJ0X3RydWUoV2ViVmlld1Rlc3Q6OmphdmFzY3JpcHRS
ZXN1bHRUb0Jvb2xlYW4oamF2YXNjcmlwdFJlc3VsdCkpOwogfQogCitzdGF0aWMgdm9pZCB0ZXN0
V2ViVmlld0RvY3VtZW50Rm9jdXMoV2ViVmlld1Rlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCit7
CisgICAgaWYgKCFnX3N0cmNtcDAoZ19nZXRlbnYoIlVOREVSX1hWRkIiKSwgInllcyIpKSB7Cisg
ICAgICAgIGdfdGVzdF9za2lwKCJUaGlzIHRlc3RzIGRvZXNuJ3Qgd29yayB1bmRlciBYdmZiIik7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICB0ZXN0LT5zaG93SW5XaW5kb3coKTsKKyAg
ICB0ZXN0LT5sb2FkSHRtbCgiPGh0bWw+PHRpdGxlPjwvdGl0bGU+IgorICAgICAgICAiPGJvZHkg
b25sb2FkPSdkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImVkaXRhYmxlXCIpLmZvY3VzKCknPiIK
KyAgICAgICAgIjxpbnB1dCBpZD0nZWRpdGFibGUnPjwvaW5wdXQ+IgorICAgICAgICAiPHNjcmlw
dD4iCisgICAgICAgICJkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5n
ZVwiLCBvblZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTsiCisgICAgICAgICJmdW5jdGlvbiBvblZp
c2liaWxpdHlDaGFuZ2UoKSB7IgorICAgICAgICAiICAgIGRvY3VtZW50LnRpdGxlID0gZG9jdW1l
bnQudmlzaWJpbGl0eVN0YXRlOyIKKyAgICAgICAgIn0iCisgICAgICAgICI8L3NjcmlwdD4iCisg
ICAgICAgICI8L2JvZHk+PC9odG1sPiIsCisgICAgICAgIG51bGxwdHIpOworICAgIHRlc3QtPndh
aXRVbnRpbExvYWRGaW5pc2hlZCgpOworCisgICAgR1VuaXF1ZU91dFB0cjxHRXJyb3I+IGVycm9y
OworICAgIFdlYktpdEphdmFzY3JpcHRSZXN1bHQqIGphdmFzY3JpcHRSZXN1bHQgPSB0ZXN0LT5y
dW5KYXZhU2NyaXB0QW5kV2FpdFVudGlsRmluaXNoZWQoImRvY3VtZW50Lmhhc0ZvY3VzKCk7Iiwg
JmVycm9yLm91dFB0cigpKTsKKyAgICBnX2Fzc2VydF9ub25udWxsKGphdmFzY3JpcHRSZXN1bHQp
OworICAgIGdfYXNzZXJ0X25vX2Vycm9yKGVycm9yLmdldCgpKTsKKyAgICBnX2Fzc2VydF90cnVl
KFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQp
KTsKKworICAgIC8vIEhpZGUgdGhlIHZpZXcgdG8gbWFrZSBpdCBsb3NlIHRoZSBmb2N1cywgdGhl
IHdpbmRvdyBpcyBzdGlsbCB0aGUgYWN0aXZlIG9uZSB0aG91Z2guCisgICAgdGVzdC0+aGlkZVZp
ZXcoKTsKKyAgICB0ZXN0LT53YWl0VW50aWxUaXRsZUNoYW5nZWRUbygiaGlkZGVuIik7CisgICAg
amF2YXNjcmlwdFJlc3VsdCA9IHRlc3QtPnJ1bkphdmFTY3JpcHRBbmRXYWl0VW50aWxGaW5pc2hl
ZCgiZG9jdW1lbnQuaGFzRm9jdXMoKTsiLCAmZXJyb3Iub3V0UHRyKCkpOworICAgIGdfYXNzZXJ0
X25vbm51bGwoamF2YXNjcmlwdFJlc3VsdCk7CisgICAgZ19hc3NlcnRfbm9fZXJyb3IoZXJyb3Iu
Z2V0KCkpOworICAgIGdfYXNzZXJ0X2ZhbHNlKFdlYlZpZXdUZXN0OjpqYXZhc2NyaXB0UmVzdWx0
VG9Cb29sZWFuKGphdmFzY3JpcHRSZXN1bHQpKTsKK30KKwogI2lmIFBMQVRGT1JNKEdUSykKIGNs
YXNzIFNuYXBzaG90V2ViVmlld1Rlc3Q6IHB1YmxpYyBXZWJWaWV3VGVzdCB7CiBwdWJsaWM6CkBA
IC0xNzA5LDYgKzE3NDUsNyBAQCB2b2lkIGJlZm9yZUFsbCgpCiAgICAgU25hcHNob3RXZWJWaWV3
VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgInNuYXBzaG90IiwgdGVzdFdlYlZpZXdTbmFwc2hv
dCk7CiAjZW5kaWYKICAgICBXZWJWaWV3VGVzdDo6YWRkKCJXZWJLaXRXZWJWaWV3IiwgInBhZ2Ut
dmlzaWJpbGl0eSIsIHRlc3RXZWJWaWV3UGFnZVZpc2liaWxpdHkpOworICAgIFdlYlZpZXdUZXN0
OjphZGQoIldlYktpdFdlYlZpZXciLCAiZG9jdW1lbnQtZm9jdXMiLCB0ZXN0V2ViVmlld0RvY3Vt
ZW50Rm9jdXMpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogICAgIE5vdGlmaWNhdGlvbldl
YlZpZXdUZXN0OjphZGQoIldlYktpdFdlYlZpZXciLCAibm90aWZpY2F0aW9uIiwgdGVzdFdlYlZp
ZXdOb3RpZmljYXRpb24pOwogICAgIE5vdGlmaWNhdGlvbldlYlZpZXdUZXN0OjphZGQoIldlYktp
dFdlYlZpZXciLCAibm90aWZpY2F0aW9uLWluaXRpYWwtcGVybWlzc2lvbi1hbGxvd2VkIiwgdGVz
dFdlYlZpZXdOb3RpZmljYXRpb25Jbml0aWFsUGVybWlzc2lvbkFsbG93ZWQpOwpkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3LmggYi9Ub29scy9UZXN0
V2ViS2l0QVBJL2NvY29hL1Rlc3RXS1dlYlZpZXcuaAppbmRleCA4NGFhZjY5ODVhMzAuLjEwYTc2
YjFkM2FkNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJW
aWV3LmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3LmgKQEAg
LTEwMSw2ICsxMDEsNyBAQAogLSAoQk9PTClzZWxlY3Rpb25SYW5nZUhhc1N0YXJ0T2Zmc2V0Oihp
bnQpc3RhcnQgZW5kT2Zmc2V0OihpbnQpZW5kOwogLSAodm9pZCljbGlja09uRWxlbWVudElEOihO
U1N0cmluZyAqKWVsZW1lbnRJRDsKIC0gKHZvaWQpd2FpdEZvclBlbmRpbmdNb3VzZUV2ZW50czsK
Ky0gKHZvaWQpZm9jdXM7CiBAZW5kCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3Lm1tIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3Lm1tCmluZGV4IDIyZDAwMjY5MjRkYi4u
NGI0YzYxOGI1NzE2IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL2NvY29hL1Rlc3RX
S1dlYlZpZXcubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9jb2NvYS9UZXN0V0tXZWJWaWV3
Lm1tCkBAIC02NTQsNiArNjU0LDE1IEBAIHN0YXRpYyBVSUNhbGxvdXRCYXIgKnN1cHByZXNzVUlD
YWxsb3V0QmFyKCkKICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmVQcm9jZXNzaW5n
TW91c2VFdmVudHMpOwogfQogCistICh2b2lkKWZvY3VzCit7CisjaWYgUExBVEZPUk0oTUFDKQor
ICAgIFtfaG9zdFdpbmRvdyBtYWtlRmlyc3RSZXNwb25kZXI6c2VsZl07CisjZWxzZQorICAgIFtz
dXBlciBiZWNvbWVGaXJzdFJlc3BvbmRlcl07CisjZW5kaWYKK30KKwogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCiAKIC0gKHZvaWQpZGlkU3RhcnRGb3JtQ29udHJvbEludGVyYWN0aW9uCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>