<?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>232820</bug_id>
          
          <creation_ts>2021-11-08 09:57:19 -0800</creation_ts>
          <short_desc>Convert some tests that use eventSender.eventSender.mouseScrollByWithWheelAndMomentumPhases() to sendEventStream()</short_desc>
          <delta_ts>2021-11-08 14:43:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1812664</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-11-08 09:57:19 -0800</bug_when>
    <thetext>Convert some tests that use eventSender.eventSender.mouseScrollByWithWheelAndMomentumPhases() to sendEventStream()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812667</commentid>
    <comment_count>1</comment_count>
      <attachid>443564</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-11-08 09:58:36 -0800</bug_when>
    <thetext>Created attachment 443564
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812671</commentid>
    <comment_count>2</comment_count>
      <attachid>443564</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-11-08 10:02:52 -0800</bug_when>
    <thetext>Comment on attachment 443564
Patch

r=mews</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812844</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-11-08 14:42:29 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/285430/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1812845</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-08 14:43:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/85173648&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443564</attachid>
            <date>2021-11-08 09:58:36 -0800</date>
            <delta_ts>2021-11-08 12:04:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232820-20211108095835.patch</filename>
            <type>text/plain</type>
            <size>90868</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NDA5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWI0ZGE2YjAxOGU5NzExYWRjMDU4
YTMyNGQ3MTdkNDA5OWQ3ZGExMi4uZTFmZTE1NmY0YWMxMmFmYmQxODVkOTFmYzVmMDQ0NTJjZTBk
YzAwZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTExLTA4ICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIENvbnZlcnQgc29tZSB0ZXN0cyB0aGF0
IHVzZSBldmVudFNlbmRlci5ldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoKSB0byBzZW5kRXZlbnRTdHJlYW0oKQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyODIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBUaGVzZSB0ZXN0cyB3ZXJlIHVzaW5n
IHJlcGVhdGVkIGNhbGxzIHRvCisgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygpIHRvIGRpc3BhdGNoIHdoZWVsIGV2ZW50cywgaW5jbHVk
aW5nCisgICAgICAgIGV2ZW50cyBpbiB0aGUgbW9tZW50dW0gcGhhc2UuIENvbnZlcnQgdGhlbSB0
byBVSVNjcmlwdENvbnRyb2xsZXIuc2VuZEV2ZW50U3RyZWFtKCkgdmlhIGEKKyAgICAgICAgVUlI
ZWxwZXIgZnVuY3Rpb24uCisKKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9tYWMvbW9tZW50dW0t
ZXZlbnQtc2VxdWVuY2UuaHRtbDoKKyAgICAgICAgKiBmYXN0L3Njcm9sbGluZy9tb21lbnR1bS1z
Y3JvbGwtd2l0aC1ib3JkZXJzLmh0bWw6CisgICAgICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3Iv
bWFjL211bHRpcGxlLWZpeGVkLmh0bWw6CisgICAgICAgICogc2Nyb2xsaW5nY29vcmRpbmF0b3Iv
bWFjL25lc3RlZC1zdGlja3ktZXhwZWN0ZWQuaHRtbDoKKyAgICAgICAgKiBzY3JvbGxpbmdjb29y
ZGluYXRvci9tYWMvbmVzdGVkLXN0aWNreS5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdpbmcv
c2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWRpdi1sYXRjaGVkLWRpdi13aXRoLWhhbmRsZXIuaHRtbDoK
KyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1kaXYtbGF0Y2hl
ZC1kaXYuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9s
bC1kaXYtbGF0Y2hlZC1tYWluZnJhbWUtd2l0aC1oYW5kbGVyLmh0bWw6CisgICAgICAgICogdGls
ZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtbWFpbmZyYW1lLmh0
bWw6CisgICAgICAgICogdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtaWZyYW1l
LWxhdGNoZWQtaWZyYW1lLXdpdGgtaGFuZGxlci5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdp
bmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFtZS1sYXRjaGVkLWlmcmFtZS5odG1sOgorICAg
ICAgICAqIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFtZS1sYXRjaGVk
LW1haW5mcmFtZS13aXRoLWhhbmRsZXIuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Nj
cm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1tYWluZnJhbWUuaHRtbDoKKyAgICAg
ICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1z
ZWxlY3QuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9s
bC1tYWluZnJhbWUtem9vbS5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5n
L2Zhc3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVkLW1haW5mcmFtZS13aXRoLWhhbmRsZXIuaHRtbDoK
KyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1zZWxlY3QtbGF0
Y2hlZC1tYWluZnJhbWUuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9m
YXN0LXNjcm9sbC1zZWxlY3QtbGF0Y2hlZC1zZWxlY3Qtd2l0aC1oYW5kbGVyLmh0bWw6CisgICAg
ICAgICogdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtc2VsZWN0LWxhdGNoZWQt
c2VsZWN0Lmh0bWw6CisgICAgICAgICogdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvaWZyYW1lX2lu
X2lmcmFtZS5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2xhdGNoZWQt
ZGl2LXdpdGgtc2Nyb2xsLXNuYXAuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9s
bGluZy9sYXRjaGVkLXRvLWRlbGV0ZWQtbm9kZS5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdp
bmcvc2Nyb2xsaW5nL292ZXJmbG93LXNjcm9sbC1yZWR1Y2VkLWNvbnRlbnQuaHRtbDoKKyAgICAg
ICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9vdmVyZmxvdy1zY3JvbGwtemVyby1kZWx0YS13
aGVlbC1ldmVudHMuaHRtbDoKKyAgICAgICAgKiB0aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9yb290
LW92ZXJmbG93LXdpdGgtbW91c2V3aGVlbC5odG1sOgorICAgICAgICAqIHRpbGVkLWRyYXdpbmcv
c2Nyb2xsaW5nL3Njcm9sbC1pZnJhbWUtbGF0Y2hlZC1zZWxlY3RzLmh0bWw6CisgICAgICAgICog
dGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvc2Nyb2xsaW5nLW5vLWlmcmFtZS1sYXRjaGluZy5odG1s
OgorICAgICAgICAqIHRpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL3doZWVsLWV2ZW50cy13aXRoLW5v
LWRlbHRhLmh0bWw6CisKIDIwMjEtMTEtMDggIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtDU1MgQ2FzY2FkZSBMYXllcnNdIFN1cHBvcnQgJ3JldmVydC1sYXll
cicgdmFsdWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL21hYy9tb21l
bnR1bS1ldmVudC1zZXF1ZW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvbWFj
L21vbWVudHVtLWV2ZW50LXNlcXVlbmNlLmh0bWwKaW5kZXggN2QyODVhNjM0MWI0MGY2NzdmMDNl
ZjM5NzExZDYwOWMzOTE3Yzc5ZS4uNjY0NWZjM2MxMTczNDBkYjZiNDI4MTk1YTEzMDYyYzU1MGZi
NDNlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvbWFjL21vbWVudHVt
LWV2ZW50LXNlcXVlbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvbWFj
L21vbWVudHVtLWV2ZW50LXNlcXVlbmNlLmh0bWwKQEAgLTE3LDUyICsxNyw0NCBAQAogICAgICAg
ICAgICAgY29uc3Qgd2hlZWxFdmVudFNxdWVuY2UgPSB7CiAgICAgICAgICAgICAgICAgImV2ZW50
cyIgOiBbCiAgICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICJ0
eXBlIiA6ICJ3aGVlbCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAidmlld1giIDogMTAwLAot
ICAgICAgICAgICAgICAgICAgICAgICAgInZpZXdZIiA6IDEwMCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICJkZWx0YVgiIDogMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICJkZWx0YVkiIDog
LTEwLCAvLyBOb3RlIHRoYXQgdGhpcyBkZWx0YSBpcyBjdXJyZW50bHkgaWdub3JlZC4KLSAgICAg
ICAgICAgICAgICAgICAgICAgICJwaGFzZSIgOiAiYmVnYW4iCisgICAgICAgICAgICAgICAgICAg
ICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdYIDogMTAw
LAorICAgICAgICAgICAgICAgICAgICAgICAgdmlld1kgOiAxMDAsCisgICAgICAgICAgICAgICAg
ICAgICAgICBkZWx0YVkgOiAtMTAsIC8vIE5vdGUgdGhhdCB0aGlzIGRlbHRhIGlzIGN1cnJlbnRs
eSBpZ25vcmVkLgorICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiYmVnYW4iCiAgICAg
ICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICJ0eXBlIiA6ICJ3aGVlbCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAiZGVs
dGFYIiA6IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAiZGVsdGFZIiA6IC0xMCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICJwaGFzZSIgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFZIDog
LTEwLAorICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKICAgICAgICAg
ICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAg
ICAgICAgInR5cGUiIDogIndoZWVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICJkZWx0YVgi
IDogMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICJkZWx0YVkiIDogLTgsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAicGhhc2UiIDogImNoYW5nZWQiCisgICAgICAgICAgICAgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhWSA6IC04LAor
ICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKICAgICAgICAgICAgICAg
ICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgICAgICAg
InR5cGUiIDogIndoZWVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICJkZWx0YVgiIDogMCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICJkZWx0YVkiIDogMCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICJwaGFzZSIgOiAiZW5kZWQiCisgICAgICAgICAgICAgICAgICAgICAgICB0eXBlIDog
IndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgogICAgICAg
ICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAidHlwZSIgOiAid2hlZWwiLAotICAgICAgICAgICAgICAgICAgICAgICAgImRlbHRh
WCIgOiAwLAotICAgICAgICAgICAgICAgICAgICAgICAgImRlbHRhWSIgOiAtMTAsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAibW9tZW50dW1QaGFzZSIgOiAiYmVnYW4iCisgICAgICAgICAgICAg
ICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRh
WSA6IC0xMCwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4i
CiAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJ3aGVlbCIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAiZGVsdGFYIiA6IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAiZGVsdGFZIiA6IC0xMiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICJtb21lbnR1bVBoYXNlIiA6ICJjaGFuZ2VkIgorICAg
ICAgICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAg
ICAgICBkZWx0YVkgOiAtMTIsCisgICAgICAgICAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNl
IDogImNoYW5nZWQiCiAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgICJ0eXBlIiA6ICJ3aGVlbCIsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAiZGVsdGFYIiA6IDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAiZGVs
dGFZIiA6IC02LAotICAgICAgICAgICAgICAgICAgICAgICAgIm1vbWVudHVtUGhhc2UiIDogImNo
YW5nZWQiCisgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAid2hlZWwiLAorICAgICAgICAg
ICAgICAgICAgICAgICAgZGVsdGFZOiAtNiwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1vbWVu
dHVtUGhhc2U6ICJjaGFuZ2VkIgogICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAg
ICAgICAgICB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAidHlwZSIgOiAid2hlZWwiLAotICAg
ICAgICAgICAgICAgICAgICAgICAgIm1vbWVudHVtUGhhc2UiIDogImVuZGVkIgorICAgICAgICAg
ICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAgICAgICBt
b21lbnR1bVBoYXNlIDogImVuZGVkIgogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICAgXQogICAgICAgICAgICAgfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL21vbWVudHVtLXNjcm9sbC13aXRoLWJvcmRlcnMuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3Qvc2Nyb2xsaW5nL21vbWVudHVtLXNjcm9sbC13aXRoLWJvcmRlcnMuaHRtbAppbmRleCA0NWE1
ZTkxNzY2MDQ5YzBmNDUwOTE5Mjg2NjdkM2I5ZmMzODliNmZjLi5iMDdmYThjYzNlZjUxOTE4NTAw
NTMyMjVjYjU4MWM1N2FkN2M3NzhhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Njcm9s
bGluZy9tb21lbnR1bS1zY3JvbGwtd2l0aC1ib3JkZXJzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9zY3JvbGxpbmcvbW9tZW50dW0tc2Nyb2xsLXdpdGgtYm9yZGVycy5odG1sCkBAIC0xOCw2
ICsxOCw3IEBACiAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFy
LWdyYWRpZW50KHNpbHZlciwgd2hpdGUgMjAwcHgpOwogICAgICAgICB9CiAgICAgPC9zdHlsZT4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gY2hlY2tGb3JTY3JvbGwoKQogICAgICAg
ICB7CkBAIC0zMSwzOSArMzIsNzAgQEAKIAogICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlE
b25lKCk7CiAgICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIGZ1bmN0aW9uIHNjcm9sbFRlc3Qo
KQotICAgICAgICB7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbygxMDAsIDEy
MCk7CiAKLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRN
b21lbnR1bVBoYXNlcygwLCAtMSwgJ2JlZ2FuJywgJ25vbmUnKTsKLSAgICAgICAgICAgIGV2ZW50
U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2No
YW5nZWQnLCAnbm9uZScpOwotICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAg
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgMCwgJ2VuZGVkJywgJ25vbmUnKTsKLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMywgJ25vbmUnLCAnYmVnaW4n
KTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgbGV0IHJlbWFpbmluZ1Njcm9sbHMgPSAxNTsK
LSAgICAgICAgICAgIGxldCBzZW5kTW9tZW50dW1TY3JvbGwgPSBmdW5jdGlvbigpIHsKLSAgICAg
ICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1Q
aGFzZXMoMCwgLTUsICdub25lJywgJ2NvbnRpbnVlJyk7Ci0gICAgICAgICAgICAgICAgaWYgKCEt
LXJlbWFpbmluZ1Njcm9sbHMpIHsKLSAgICAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdub25lJywgJ2VuZCcp
OwotICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21w
bGV0ZXMoY2hlY2tGb3JTY3JvbGwpOwotICAgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIGFzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQorICAgICAgICB7CisgICAgICAgICAgICBj
b25zdCBldmVudHMgPSBbCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0
eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgdmlld1ggOiAxMDAsCisgICAgICAg
ICAgICAgICAgICAgIHZpZXdZIDogMTIwLAorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgOiAt
MTAsCisgICAgICAgICAgICAgICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICAgICAgICAg
IH0sCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVs
IiwKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgICAg
ICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAg
ICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgor
ICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisg
ICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMzAsCisgICAg
ICAgICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCiAgICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShzZW5kTW9tZW50dW1TY3Jv
bGwpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHNl
bmRNb21lbnR1bVNjcm9sbCk7CisgICAgICAgICAgICBdOworICAgICAgICAgICAgCisgICAgICAg
ICAgICBjb25zdCBtb21lbnR1bUV2ZW50ID0geworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC01MCwKKyAgICAgICAgICAgICAgICBtb21l
bnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgICAgICB9OworICAgICAgICAgICAgCisgICAg
ICAgICAgICBjb25zdCBtb21lbnR1bUV2ZW50Q291bnQgPSAxNTsKKyAgICAgICAgICAgIGNvbnN0
IG1vbWVudHVtRXZlbnRzID0gQXJyYXkobW9tZW50dW1FdmVudENvdW50KS5maWxsKG1vbWVudHVt
RXZlbnQpOworCisgICAgICAgICAgICBldmVudHMucHVzaCguLi5tb21lbnR1bUV2ZW50cyk7CisK
KyAgICAgICAgICAgIGNvbnN0IGVuZEV2ZW50ID0geworICAgICAgICAgICAgICAgIHR5cGUgOiAi
d2hlZWwiLAorICAgICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiZW5kZWQiCisgICAgICAg
ICAgICB9OworICAgICAgICAgICAgZXZlbnRzLnB1c2goZW5kRXZlbnQpOworCisgICAgICAgICAg
ICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsK
KyAgICAgICAgICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiAgICAgICAgIH0KIAogICAgICAgICBmdW5j
dGlvbiBzdGFydFRlc3QoKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAod2luZG93LmV2ZW50
U2VuZGVyKSB7Ci0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0KLSAgICAgICAgICAgICAg
ICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKKyAgICAgICAgICAgIGlmICghd2lu
ZG93LmV2ZW50U2VuZGVyKSB7CiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChzY3JvbGxUZXN0
LCAwKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7CisKKyAgICAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xsVGVzdCwgMCk7CiAg
ICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2Fk
Jywgc3RhcnRUZXN0LCBmYWxzZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zY3JvbGxpbmdj
b29yZGluYXRvci9tYWMvbXVsdGlwbGUtZml4ZWQuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGlu
Z2Nvb3JkaW5hdG9yL21hYy9tdWx0aXBsZS1maXhlZC5odG1sCmluZGV4IDkxNTkxYWYxMDM1YTI2
ODUxNjljNzBhMGI2YmYzMDkyYzY5NjYwNjUuLmMyOTRmNzQ1ZWRhODc1N2RhNjk2OTMyMDdmMjJj
ZjQ3OTEyOGI3MWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9y
L21hYy9tdWx0aXBsZS1maXhlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3Jk
aW5hdG9yL21hYy9tdWx0aXBsZS1maXhlZC5odG1sCkBAIC0xOSwyNiArMTksNTEgQEAKICAgICAg
ICAgICAgIGJvdHRvbTogMDsKICAgICAgICAgfQogICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+
Ci0gICAgICAgIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQorICAgICAgICBhc3luYyBmdW5jdGlvbiBz
Y3JvbGxUZXN0KCkKICAgICAgICAgewotICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3Zl
VG8oMjAsIDIwKTsKLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hl
ZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgImJlZ2FuIiwgIm5vbmUiKTsKLSAgICAgICAgICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MTAwLCAiY2hhbmdlZCIsICJub25lIik7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNj
cm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwMCwgIm5vbmUiLCAiY29udGlu
dWUiKTsKLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRN
b21lbnR1bVBoYXNlcygwLCAtMTAwLCAibm9uZSIsICJjb250aW51ZSIpOwotICAgICAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAs
ICJub25lIiwgImVuZCIpOwotICAgICAgICAgICAgZXZlbnRTZW5kZXIuY2FsbEFmdGVyU2Nyb2xs
aW5nQ29tcGxldGVzKCgpID0+IHsKLSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURv
bmUoKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAgY29uc3QgZXZlbnRzID0gWworICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAg
ICAgICAgICAgICAgICAgIHZpZXdYIDogMjAsCisgICAgICAgICAgICAgICAgICAgIHZpZXdZIDog
MjAsCisgICAgICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICAg
ICAgcGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgICAg
ICBkZWx0YVkgOiAtMTAwMCwKKyAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIK
KyAgICAgICAgICAgICAgICB9LAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgor
ICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwMDAsCisg
ICAgICAgICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICAg
ICAgfSwKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAwMCwKKyAgICAgICAgICAgICAg
ICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgICAgIH0sCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICBdOworCisgICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVs
U2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOwogICAgICAgICB9CiAKICAgICAgICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkKICAg
ICAgICAgewogICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0gICAgICAgICAgICAgICAgZXZl
bnRTZW5kZXIubW9uaXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAgICAgICAgICAgc2V0VGltZW91
dChzY3JvbGxUZXN0LCAwKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL25lc3RlZC1zdGlja3ktZXhwZWN0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9uZXN0ZWQtc3Rp
Y2t5LWV4cGVjdGVkLmh0bWwKaW5kZXggMmQxOTk3YWNiMjBiMmJjMDM3YmNiNDdkMzY2NGRiODJj
OWNhNDUwZS4uYTA0Y2M4OTkzZTg2N2MxN2FhYjZlMGJmN2E0ZGMzOGM3OTM3M2NjYyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL25lc3RlZC1zdGlja3kt
ZXhwZWN0ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMv
bmVzdGVkLXN0aWNreS1leHBlY3RlZC5odG1sCkBAIC0xNSw3ICsxNSw2IEBACiAKICAgICAgICAg
LnN0aWNreSB7CiAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5OwotICAgICAgICAgICAgcG9z
aXRpb246IC13ZWJraXQtc3RpY2t5OwogICAgICAgICAgICAgdG9wOiAwcHg7CiAgICAgICAgIH0K
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL25lc3Rl
ZC1zdGlja3kuaHRtbCBiL0xheW91dFRlc3RzL3Njcm9sbGluZ2Nvb3JkaW5hdG9yL21hYy9uZXN0
ZWQtc3RpY2t5Lmh0bWwKaW5kZXggYzlkNGVkMjYxZjlkY2ViZDU4OWQzNTg5NTVmYTlhMTU4NDcy
Y2QzNy4uMDFiMGRlMThlN2JiZGRmZTM4MjNkMDczMTEwMGQ1ZTQ2MjM4M2YyOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvc2Nyb2xsaW5nY29vcmRpbmF0b3IvbWFjL25lc3RlZC1zdGlja3kuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9zY3JvbGxpbmdjb29yZGluYXRvci9tYWMvbmVzdGVkLXN0aWNr
eS5odG1sCkBAIC0yNiwyNiArMjYsNTEgQEAKICAgICAgICAgICAgIGhlaWdodDogODBweDsKICAg
ICAgICAgfQogICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy91
aS1oZWxwZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+Ci0gICAgICAgIGZ1bmN0aW9uIHNj
cm9sbFRlc3QoKQorICAgICAgICBhc3luYyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAgICAgICAg
ewotICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMjAsIDIwKTsKLSAgICAgICAg
ICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygw
LCAtMSwgImJlZ2FuIiwgIm5vbmUiKTsKLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Ny
b2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAwLCAiY2hhbmdlZCIsICJub25l
Iik7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoMCwgLTEwMCwgIm5vbmUiLCAiY29udGludWUiKTsKLSAgICAgICAgICAgIGV2
ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAw
LCAibm9uZSIsICJjb250aW51ZSIpOwotICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3Jv
bGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICJub25lIiwgImVuZCIpOwotICAg
ICAgICAgICAgZXZlbnRTZW5kZXIuY2FsbEFmdGVyU2Nyb2xsaW5nQ29tcGxldGVzKCgpID0+IHsK
LSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgICAgIH0p
OworICAgICAgICAgICAgY29uc3QgZXZlbnRzID0gWworICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAgIHZpZXdY
IDogMjAsCisgICAgICAgICAgICAgICAgICAgIHZpZXdZIDogMjAsCisgICAgICAgICAgICAgICAg
ICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiYmVnYW4iCisg
ICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAwMCwKKyAg
ICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgICAgICB9LAor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisg
ICAgICAgICAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwMDAsCisgICAgICAgICAgICAgICAgICAgIG1v
bWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAg
ICAgICBkZWx0YVkgOiAtMTAwMCwKKyAgICAgICAgICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6
ICJjaGFuZ2VkIgorICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgbW9tZW50
dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBdOworCisg
ICAgICAgICAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2
ZW50cyB9KTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogICAgICAgICB9
CiAKICAgICAgICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkKICAgICAgICAgewogICAgICAgICAgICAg
aWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotCi0gICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW9uaXRvcldoZWVs
RXZlbnRzKCk7CiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChzY3JvbGxUZXN0LCAwKTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJh
d2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtZGl2LXdpdGgtaGFuZGxlci5o
dG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2
LWxhdGNoZWQtZGl2LXdpdGgtaGFuZGxlci5odG1sCmluZGV4IGZjMWY2M2FkZGNhNGJjODkyYjFm
OWNiOWY5ZjJiZmM3Mjk2MjEyYTIuLmNjNGI1OGM4ZTU5ZGJiZmM4OWUyNGVjZTA0Y2NhZDI4ZGRl
YmFmMTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zh
c3Qtc2Nyb2xsLWRpdi1sYXRjaGVkLWRpdi13aXRoLWhhbmRsZXIuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1kaXYtbGF0Y2hlZC1kaXYt
d2l0aC1oYW5kbGVyLmh0bWwKQEAgLTEzLDYgKzEzLDcgQEAKIH0KIDwvc3R5bGU+CiA8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiAg
ICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogCkBAIC00Niw3ICs0Nyw3IEBACiAgICAg
ICAgIGZpbmlzaEpTVGVzdCgpOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQor
ICAgIGFzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogICAgIHsKICAgICAgICAgcGFnZVNjcm9s
bFBvc2l0aW9uQmVmb3JlID0gZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A7CiAK
QEAgLTU2LDIzICs1Nyw1NCBAQAogICAgICAgICBkaXZTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IGRp
dlRhcmdldC5zY3JvbGxUb3A7CiAKICAgICAgICAgLy8gU2Nyb2xsIHRoZSAjc291cmNlIHVudGls
IHdlIHJlYWNoIHRoZSAjdGFyZ2V0LgotICAgICAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3Vu
ZChkaXZUYXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsKLSAgICAgICAgdmFyIHN0YXJ0UG9zWSA9IE1h
dGgucm91bmQoZGl2VGFyZ2V0Lm9mZnNldFRvcCkgKyAxMDA7IC8vIE9uZSB3aGVlbCB0dXJuIGJl
Zm9yZSBlbmQuCi0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0YXJ0UG9zWCwgc3Rh
cnRQb3NZKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1v
bWVudHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAnbm9uZScpOwotICAgICAgICBldmVudFNlbmRl
ci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2Vk
JywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgICAgIGV2ZW50
U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5k
ZWQnLCAnbm9uZScpOwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVs
QW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdub25lJywgJ2JlZ2luJyk7Ci0gICAgICAgIGV2ZW50
U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25v
bmUnLCAnY29udGludWUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdub25lJywgJ2VuZCcpOwotICAgICAgICBldmVu
dFNlbmRlci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21wbGV0ZXMoY2hlY2tGb3JTY3JvbGwpOworICAg
ICAgICBjb25zdCBzdGFydFBvc1ggPSBNYXRoLnJvdW5kKGRpdlRhcmdldC5vZmZzZXRMZWZ0KSAr
IDIwOworICAgICAgICBjb25zdCBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGRpdlRhcmdldC5vZmZz
ZXRUb3ApICsgMTAwOyAvLyBPbmUgd2hlZWwgdHVybiBiZWZvcmUgZW5kLgorCisgICAgICAgIGNv
bnN0IGV2ZW50cyA9IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndo
ZWVsIiwKKyAgICAgICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgICAg
ICB2aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAg
ICAgICAgICAgICAgcGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRh
WSA6IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAg
fSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdl
ZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICB9
LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAg
ICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDog
ImJlZ2FuIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0
eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAg
ICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBt
b21lbnR1bVBoYXNlIDogImVuZGVkIgorICAgICAgICAgICAgfQorICAgICAgICBdOworCisgICAg
ICAgIGF3YWl0IFVJSGVscGVyLm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRzIH0p
OworICAgICAgICBjaGVja0ZvclNjcm9sbCgpOwogICAgIH0KIAogICAgIGZ1bmN0aW9uIHNldHVw
VG9wTGV2ZWwoKQogICAgIHsKICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewotICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW9uaXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAgICAgICBz
ZXRUaW1lb3V0KHNjcm9sbFRlc3QsIDApOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
dmFyIG1lc3NhZ2VMb2NhdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYXJlbnQnKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Ny
b2xsLWRpdi1sYXRjaGVkLWRpdi5odG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3Jv
bGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtZGl2Lmh0bWwKaW5kZXggNmRkZmJkZjRlMGI4
NWQ0ZDY0MDkzZjk5M2Q2YjhkNjkzMzIyODI5MC4uMGM2NzYzYzQ4NWRkYmQ1YWEwNzYxNDJjZjA3
MTA5Y2Y4ZWJiNDYxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3Jv
bGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtZGl2Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
dGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtZGl2Lmh0bWwK
QEAgLTEzLDYgKzEzLDcgQEAKIH0KIDwvc3R5bGU+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgd2luZG93LmpzVGVzdElz
QXN5bmMgPSB0cnVlOwogCkBAIC00MCw3ICs0MSw3IEBACiAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OwogICAgIH0KIAotICAgIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQorICAgIGFzeW5jIGZ1bmN0aW9u
IHNjcm9sbFRlc3QoKQogICAgIHsKICAgICAgICAgcGFnZVNjcm9sbFBvc2l0aW9uQmVmb3JlID0g
ZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A7CiAKQEAgLTUwLDIzICs1MSw1NCBA
QAogICAgICAgICBkaXZTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IGRpdlRhcmdldC5zY3JvbGxUb3A7
CiAKICAgICAgICAgLy8gU2Nyb2xsIHRoZSAjc291cmNlIHVudGlsIHdlIHJlYWNoIHRoZSAjdGFy
Z2V0LgotICAgICAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChkaXZUYXJnZXQub2Zmc2V0
TGVmdCkgKyAyMDsKLSAgICAgICAgdmFyIHN0YXJ0UG9zWSA9IE1hdGgucm91bmQoZGl2VGFyZ2V0
Lm9mZnNldFRvcCkgKyAxMDA7IC8vIE9uZSB3aGVlbCB0dXJuIGJlZm9yZSBlbmQuCi0gICAgICAg
IGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0x
LCAnYmVnYW4nLCAnbm9uZScpOwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0
aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAg
ICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAs
IC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xs
QnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9uZScpOwotICAg
ICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgLTEsICdub25lJywgJ2JlZ2luJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xs
QnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25vbmUnLCAnY29udGludWUnKTsK
LSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhh
c2VzKDAsIDAsICdub25lJywgJ2VuZCcpOwotICAgICAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJT
Y3JvbGxpbmdDb21wbGV0ZXMoY2hlY2tGb3JTY3JvbGwpOworICAgICAgICBjb25zdCBzdGFydFBv
c1ggPSBNYXRoLnJvdW5kKGRpdlRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOworICAgICAgICBjb25z
dCBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGRpdlRhcmdldC5vZmZzZXRUb3ApICsgMTAwOyAvLyBP
bmUgd2hlZWwgdHVybiBiZWZvcmUgZW5kLgorCisgICAgICAgIGNvbnN0IGV2ZW50cyA9IFsKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAg
ICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgICAgICB2aWV3WSA6IHN0YXJ0UG9z
WSwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgcGhhc2Ug
OiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAg
ICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBkZWx0YVkg
OiAtMTAsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgIH0s
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAg
ICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2FuIgorICAgICAgICAg
ICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgbW9tZW50dW1QaGFz
ZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImVu
ZGVkIgorICAgICAgICAgICAgfQorICAgICAgICBdOworCisgICAgICAgIGF3YWl0IFVJSGVscGVy
Lm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRzIH0pOworICAgICAgICBjaGVja0Zv
clNjcm9sbCgpOwogICAgIH0KIAogICAgIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwoKQogICAgIHsK
ICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewotICAgICAgICAgICAgZXZlbnRTZW5k
ZXIubW9uaXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRl
c3QsIDApOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgdmFyIG1lc3NhZ2VMb2NhdGlv
biA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYXJlbnQnKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWRpdi1sYXRjaGVkLW1h
aW5mcmFtZS13aXRoLWhhbmRsZXIuaHRtbCBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Ny
b2xsaW5nL2Zhc3Qtc2Nyb2xsLWRpdi1sYXRjaGVkLW1haW5mcmFtZS13aXRoLWhhbmRsZXIuaHRt
bAppbmRleCA0NmNmZTUwZTkwMmUyMWZlNTk2MzgxNDI4OTY1YjAxOTRkMGM0MjQ2Li5kMmIyMmNi
ODM3NGEwYWYyMDA5NDYxNmRjZTA5MzBkNTUyNzQyNGQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1kaXYtbGF0Y2hlZC1tYWluZnJh
bWUtd2l0aC1oYW5kbGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3Jv
bGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtbWFpbmZyYW1lLXdpdGgtaGFuZGxlci5odG1s
CkBAIC0xMyw2ICsxMyw3IEBACiB9CiA8L3N0eWxlPgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHdpbmRvdy5qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKIApAQCAtNTcsNyArNTgsNyBAQAogICAgICAgICBmaW5pc2hKU1Rlc3Qo
KTsKICAgICB9CiAKLSAgICBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKKyAgICBhc3luYyBmdW5jdGlv
biBzY3JvbGxUZXN0KCkKICAgICB7CiAgICAgICAgIHBhZ2VTY3JvbGxQb3NpdGlvbkJlZm9yZSA9
IGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wOwogCkBAIC02NiwyMCArNjcsNTEg
QEAKICAgICAgICAgZGl2U2Nyb2xsUG9zaXRpb25CZWZvcmUgPSBkaXZUYXJnZXQuc2Nyb2xsVG9w
OwogCiAgICAgICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRpbCB3ZSByZWFjaCB0aGUgI3Rh
cmdldC4KLSAgICAgICAgdmFyIHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoZGl2VGFyZ2V0Lm9mZnNl
dExlZnQpICsgMjA7Ci0gICAgICAgIHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGRpdlRhcmdl
dC5vZmZzZXRUb3ApIC0gNDI7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0YXJ0
UG9zWCwgc3RhcnRQb3NZKTsKKyAgICAgICAgY29uc3Qgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChk
aXZUYXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsKKyAgICAgICAgY29uc3Qgc3RhcnRQb3NZID0gTWF0
aC5yb3VuZChkaXZUYXJnZXQub2Zmc2V0VG9wKSAtIDQyOworCiAgICAgICAgIGRlYnVnKCJNb3Vz
ZSBtb3ZlZCB0byAoIiArIHN0YXJ0UG9zWCArICIsICIgKyBzdGFydFBvc1kgKyAiKSIpOwotICAg
ICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xs
QnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwot
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VT
Y3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7
Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBo
YXNlcygwLCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VT
Y3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC00LCAnbm9uZScsICdjb250aW51
ZScpOwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50
dW1QaGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmNhbGxB
ZnRlclNjcm9sbGluZ0NvbXBsZXRlcygoKSA9PiB7Ci0gICAgICAgICAgICByZXF1ZXN0QW5pbWF0
aW9uRnJhbWUoY2hlY2tGb3JTY3JvbGwpOwotICAgICAgICB9KTsKKworICAgICAgICBjb25zdCBl
dmVudHMgPSBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICAgICAgdmlld1ggOiBzdGFydFBvc1gsCisgICAgICAgICAgICAgICAgdmll
d1kgOiBzdGFydFBvc1ksCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAg
ICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAt
MTAsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAg
ICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisg
ICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICAgICAgfSwKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAg
ICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJiZWdh
biIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTQwLAorICAgICAgICAgICAgICAg
IG1vbWVudHVtUGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgbW9tZW50
dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgICAgIH0KKyAgICAgICAgXTsKKworICAgICAgICBh
d2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAg
ICAgICAgY2hlY2tGb3JTY3JvbGwoKTsKICAgICAgICAgLy8gV2Ugc2hvdWxkIGZpbmlzaCB2aWEg
dGhlIHNjcm9sbCBldmVudDsgdGhpcyB3aWxsIGZpcmUgaW4gdGhlIGNhc2Ugb2YgZmFpbHVyZSB3
aGVuIHRoZSBwYWdlIGRvZXNuJ3Qgc2Nyb2xsLgogICAgIH0KIApAQCAtODgsOCArMTIwLDYgQEAK
ICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CiAgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
LQotICAgICAgICAgICAgZXZlbnRTZW5kZXIubW9uaXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAg
ICAgICBzZXRUaW1lb3V0KHNjcm9sbFRlc3QsIDApOwogICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgdmFyIG1lc3NhZ2VMb2NhdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYXJl
bnQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zh
c3Qtc2Nyb2xsLWRpdi1sYXRjaGVkLW1haW5mcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQt
ZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtbWFpbmZyYW1lLmh0bWwK
aW5kZXggMTVhZmIwYmQ2ZTEzYWYyZjY3ZmQwMjE0ZGMwMzk2MmMzOTAyZDMzNS4uZDQ3ZThmNTk2
MmU2OGE2YjdkMWVmNjdmOTI0NGYyMThhZDk2NTA5ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
dGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtZGl2LWxhdGNoZWQtbWFpbmZyYW1l
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3Jv
bGwtZGl2LWxhdGNoZWQtbWFpbmZyYW1lLmh0bWwKQEAgLTEzLDYgKzEzLDcgQEAKIH0KIDwvc3R5
bGU+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4K
IDxzY3JpcHQ+CiAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogCkBAIC00Niw3ICs0
Nyw3IEBACiAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIHNj
cm9sbFRlc3QoKQorICAgIGFzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogICAgIHsKICAgICAg
ICAgcGFnZVNjcm9sbFBvc2l0aW9uQmVmb3JlID0gZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5z
Y3JvbGxUb3A7CiAKQEAgLTU1LDE3ICs1Niw0OSBAQAogICAgICAgICBkaXZTY3JvbGxQb3NpdGlv
bkJlZm9yZSA9IGRpdlRhcmdldC5zY3JvbGxUb3A7CiAKICAgICAgICAgLy8gU2Nyb2xsIHRoZSAj
c291cmNlIHVudGlsIHdlIHJlYWNoIHRoZSAjdGFyZ2V0LgotICAgICAgICB2YXIgc3RhcnRQb3NY
ID0gTWF0aC5yb3VuZChkaXZUYXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsKLSAgICAgICAgdmFyIHN0
YXJ0UG9zWSA9IE1hdGgucm91bmQoZGl2VGFyZ2V0Lm9mZnNldFRvcCkgLSA0MjsKLSAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAgICAgICBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEs
ICdiZWdhbicsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgICAg
ICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwg
LTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxC
eVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7Ci0gICAg
ICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygw
LCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxC
eVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC00LCAnbm9uZScsICdjb250aW51ZScpOwot
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmNhbGxBZnRlclNj
cm9sbGluZ0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisgICAgICAgIGNvbnN0IHN0YXJ0UG9z
WCA9IE1hdGgucm91bmQoZGl2VGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7CisgICAgICAgIGNvbnN0
IHN0YXJ0UG9zWSA9IE1hdGgucm91bmQoZGl2VGFyZ2V0Lm9mZnNldFRvcCkgLSA0MjsKKworICAg
ICAgICBjb25zdCBldmVudHMgPSBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlw
ZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgdmlld1ggOiBzdGFydFBvc1gsCisgICAgICAg
ICAgICAgICAgdmlld1kgOiBzdGFydFBvc1ksCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEw
LAorICAgICAgICAgICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICAgICAgfSwKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAg
ICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAg
ICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIHBoYXNlIDog
ImNoYW5nZWQiCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAg
ICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwK
KyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgbW9tZW50dW1Q
aGFzZSA6ICJiZWdhbiIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTQwLAorICAg
ICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAg
ICAgICAgbW9tZW50dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgICAgIH0KKyAgICAgICAgXTsK
KworICAgICAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2
ZW50cyB9KTsKKyAgICAgICAgY2hlY2tGb3JTY3JvbGwoKTsKICAgICAgICAgLy8gV2Ugc2hvdWxk
IGZpbmlzaCB2aWEgdGhlIHNjcm9sbCBldmVudDsgdGhpcyB3aWxsIGZpcmUgaW4gdGhlIGNhc2Ug
b2YgZmFpbHVyZSB3aGVuIHRoZSBwYWdlIGRvZXNuJ3Qgc2Nyb2xsLgogICAgIH0KIApAQCAtNzQs
MTEgKzEwNyw3IEBACiAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0KLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vbml0b3JXaGVlbEV2ZW50
cygpOwotICAgICAgICAgICAgcmVxdWVzdElkbGVDYWxsYmFjaygoKSA9PiB7Ci0gICAgICAgICAg
ICAgICAgc2V0VGltZW91dChzY3JvbGxUZXN0LCAwKTsKLSAgICAgICAgICAgIH0pOworICAgICAg
ICAgICAgc2V0VGltZW91dChzY3JvbGxUZXN0LCAwKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgIHZhciBtZXNzYWdlTG9jYXRpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFy
ZW50Jyk7CiAgICAgICAgICAgICB2YXIgbWVzc2FnZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2RpdicpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcv
ZmFzdC1zY3JvbGwtaWZyYW1lLWxhdGNoZWQtaWZyYW1lLXdpdGgtaGFuZGxlci5odG1sIGIvTGF5
b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtaWZyYW1lLWxhdGNo
ZWQtaWZyYW1lLXdpdGgtaGFuZGxlci5odG1sCmluZGV4IGU2ZDFiNDhmZGVmY2Q1ZDc3OWQyOTdl
ZjAxMTRlMmI3ZjZlY2FjZDYuLjA1ZGI4YTFhMjJiMzJkZDgyNTRjNDkwYTgzZGFhZWYzNjY2ZGMx
M2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qt
c2Nyb2xsLWlmcmFtZS1sYXRjaGVkLWlmcmFtZS13aXRoLWhhbmRsZXIuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hl
ZC1pZnJhbWUtd2l0aC1oYW5kbGVyLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8IURPQ1RZUEUgaHRt
bD4KIDxodG1sPgogPGhlYWQ+Ci08bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMu
b3JnL1RSL0RPTS1MZXZlbC0zLUV2ZW50cy8jZXZlbnRzLVdoZWVsRXZlbnQiPgogPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAg
IHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIApAQCAtMzYsNyArMzYsNyBAQAogICAgICAg
ICBmaW5pc2hKU1Rlc3QoKTsKICAgICB9CiAKLSAgICBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKKyAg
ICBhc3luYyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAgICB7CiAgICAgICAgIHBhZ2VTY3JvbGxQ
b3NpdGlvbkJlZm9yZSA9IGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wOwogCkBA
IC00OCwyMyArNDgsNTQgQEAKICAgICAgICAgaUZyYW1lU2Nyb2xsUG9zaXRpb25CZWZvcmUgPSBp
ZnJhbWVCb2R5LnNjcm9sbFRvcDsKIAogICAgICAgICAvLyBTY3JvbGwgdGhlICNzb3VyY2UgdW50
aWwgd2UgcmVhY2ggdGhlICN0YXJnZXQuCi0gICAgICAgIHZhciBzdGFydFBvc1ggPSBNYXRoLnJv
dW5kKGlmcmFtZVRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOwotICAgICAgICB2YXIgc3RhcnRQb3NZ
ID0gTWF0aC5yb3VuZChpZnJhbWVUYXJnZXQub2Zmc2V0VG9wKSArIDEwMDsKLSAgICAgICAgZXZl
bnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAgICAgICBldmVu
dFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdi
ZWdhbicsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hl
ZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgICAgICBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEs
ICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7Ci0gICAgICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdjb250aW51ZScpOwotICAg
ICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmNhbGxBZnRlclNjcm9s
bGluZ0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisgICAgICAgIGNvbnN0IHN0YXJ0UG9zWCA9
IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7CisgICAgICAgIGNvbnN0
IHN0YXJ0UG9zWSA9IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9mZnNldFRvcCkgKyAxMDA7CisK
KyAgICAgICAgY29uc3QgZXZlbnRzID0gWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIHZpZXdYIDogc3RhcnRQb3NYLAorICAg
ICAgICAgICAgICAgIHZpZXdZIDogc3RhcnRQb3NZLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJiZWdhbiIKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAg
ICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisg
ICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFz
ZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAg
ICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVl
bCIsCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIG1vbWVu
dHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwK
KyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgICAgICB9
LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAg
ICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICB9CisgICAgICAg
IF07CisKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIubW91c2VXaGVlbFNlcXVlbmNlKHsgZXZlbnRz
OiBldmVudHMgfSk7CisgICAgICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiAgICAgfQogCiAgICAgZnVu
Y3Rpb24gc2V0dXBUb3BMZXZlbCgpCiAgICAgewogICAgICAgICBpZiAod2luZG93LmV2ZW50U2Vu
ZGVyKSB7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKICAg
ICAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xsVGVzdCwgMCk7CiAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICB2YXIgbWVzc2FnZUxvY2F0aW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3BhcmVudCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxp
bmcvZmFzdC1zY3JvbGwtaWZyYW1lLWxhdGNoZWQtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy90
aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1pZnJhbWUu
aHRtbAppbmRleCBhNTI2ODg1Y2NlODI2MTYxNTExYzU4ODQ2MGRjODIwZTE5YmY4ZGJkLi4yOWE4
M2FmMjA4ODQzYTM0NzJiNjM5NGQwMjIxYmJmNGFlZTA3N2MyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1p
ZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0
LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1pZnJhbWUuaHRtbApAQCAtMSw4ICsxLDggQEAKIDwhRE9D
VFlQRSBodG1sPgogPGh0bWw+CiA8aGVhZD4KLTxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDov
L3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtRXZlbnRzLyNldmVudHMtV2hlZWxFdmVudCI+CiA8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQ+CiAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogICAgIApAQCAtMzAsNyArMzAs
NyBAQAogICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICB9CiAKLSAgICBmdW5jdGlvbiBzY3Jv
bGxUZXN0KCkKKyAgICBhc3luYyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAgICB7CiAgICAgICAg
IHBhZ2VTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Ny
b2xsVG9wOwogCkBAIC00MiwyMyArNDIsNTQgQEAKICAgICAgICAgaUZyYW1lU2Nyb2xsUG9zaXRp
b25CZWZvcmUgPSBpRnJhbWVCb2R5LnNjcm9sbFRvcDsKIAogICAgICAgICAvLyBTY3JvbGwgdGhl
ICNzb3VyY2UgdW50aWwgd2UgcmVhY2ggdGhlICN0YXJnZXQuCi0gICAgICAgIHZhciBzdGFydFBv
c1ggPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOwotICAgICAgICB2
YXIgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChpZnJhbWVUYXJnZXQub2Zmc2V0VG9wKSArIDEwMDsK
LSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwot
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Ny
b2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScp
OwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1Q
aGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25l
Jyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1
bVBoYXNlcygwLCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdjb250
aW51ZScpOwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmNh
bGxBZnRlclNjcm9sbGluZ0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisgICAgICAgIGNvbnN0
IHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7Cisg
ICAgICAgIGNvbnN0IHN0YXJ0UG9zWSA9IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9mZnNldFRv
cCkgKyAxMDA7CisKKyAgICAgICAgY29uc3QgZXZlbnRzID0gWworICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIHZpZXdYIDogc3Rh
cnRQb3NYLAorICAgICAgICAgICAgICAgIHZpZXdZIDogc3RhcnRQb3NZLAorICAgICAgICAgICAg
ICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJiZWdhbiIKKyAgICAg
ICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIHBoYXNlIDog
ImNoYW5nZWQiCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAg
ICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBwaGFzZSA6
ICJlbmRlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
dHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAg
ICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRl
bHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisg
ICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAg
ICB9CisgICAgICAgIF07CisKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIubW91c2VXaGVlbFNlcXVl
bmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CisgICAgICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiAgICAg
fQogCiAgICAgZnVuY3Rpb24gc2V0dXBUb3BMZXZlbCgpCiAgICAgewogICAgICAgICBpZiAod2lu
ZG93LmV2ZW50U2VuZGVyKSB7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxF
dmVudHMoKTsKICAgICAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xsVGVzdCwgMCk7CiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICB2YXIgbWVzc2FnZUxvY2F0aW9uID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ3BhcmVudCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJh
d2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtaWZyYW1lLWxhdGNoZWQtbWFpbmZyYW1lLXdpdGgt
aGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1z
Y3JvbGwtaWZyYW1lLWxhdGNoZWQtbWFpbmZyYW1lLXdpdGgtaGFuZGxlci5odG1sCmluZGV4IDE3
ZDI2YjQzMzhlYjZmZGNkNDg3NzEyMDkxNzhkNmU1OTM4MWZiN2MuLmY2Nzc2MjNiZmI3NzRhMDg2
NTRmY2MyODE2NWEyNmRkNGQ2ZDUwNjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRy
YXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFtZS1sYXRjaGVkLW1haW5mcmFtZS13aXRo
LWhhbmRsZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9m
YXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1tYWluZnJhbWUtd2l0aC1oYW5kbGVyLmh0bWwKQEAg
LTEsOCArMSw4IEBACiA8IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+Ci08bGluayByZWw9
ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUV2ZW50cy8jZXZl
bnRzLVdoZWVsRXZlbnQiPgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogdmFyIHdoZWVsQ291bnQgPSAwOwogZnVuY3Rpb24gb25T
Y3JvbGxXaGVlbChldnQpIHsKQEAgLTQ4LDcgKzQ4LDcgQEAgZnVuY3Rpb24gY2hlY2tGb3JTY3Jv
bGwoKQogICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogfQogCi1mdW5jdGlvbiBzY3JvbGxU
ZXN0KCkKK2FzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogewogICAgIHBhZ2VTY3JvbGxQb3Np
dGlvbkJlZm9yZSA9IGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wOwogICAgIGlG
cmFtZVNjcm9sbFBvc2l0aW9uQmVmb3JlID0gd2luZG93LmZyYW1lc1sndGFyZ2V0J10uZG9jdW1l
bnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A7CkBAIC01NiwxOSArNTYsNDkgQEAgZnVuY3Rp
b24gc2Nyb2xsVGVzdCgpCiAgICAgaWZyYW1lVGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3RhcmdldCcpOwogCiAgICAgLy8gU2Nyb2xsIHRoZSAjc291cmNlIHVudGlsIHdlIHJlYWNo
IHRoZSAjdGFyZ2V0LgotICAgIHZhciBzdGFydFBvc1ggPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdl
dC5vZmZzZXRMZWZ0KSArIDIwOwotICAgIHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGlmcmFt
ZVRhcmdldC5vZmZzZXRUb3ApIC0gNDI7IC8vIFNsaWdodGx5IG1vcmUgdGhhbiBvbmUgd2hlZWwg
c2Nyb2xsIGF3YXkgZnJvbSB0aGUgSUZyYW1lCi0gICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
c3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAgIC8vZGVidWcoIk1vdXNlIG1vdmVkIHRvICgiICsg
c3RhcnRQb3NYICsgIiwgIiArIHN0YXJ0UG9zWSArICIpIik7Ci0gICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAnbm9u
ZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBo
YXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Ny
b2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScp
OwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNl
cygwLCAwLCAnZW5kZWQnLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTQs
ICdub25lJywgJ2NvbnRpbnVlJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdub25lJywgJ2VuZCcpOwotICAgIGV2ZW50U2Vu
ZGVyLmNhbGxBZnRlclNjcm9sbGluZ0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisgICAgY29u
c3Qgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChpZnJhbWVUYXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsK
KyAgICBjb25zdCBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdldC5vZmZzZXRUb3Ap
IC0gNDI7IC8vIFNsaWdodGx5IG1vcmUgdGhhbiBvbmUgd2hlZWwgc2Nyb2xsIGF3YXkgZnJvbSB0
aGUgSUZyYW1lCiAKKyAgICBjb25zdCBldmVudHMgPSBbCisgICAgICAgIHsKKyAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgdmlld1ggOiBzdGFydFBvc1gsCisgICAgICAg
ICAgICB2aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAg
ICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAg
IHBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5
cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhh
c2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfSwKKyAgICAg
ICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAt
MTAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAg
ICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6
IC00MCwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwK
KyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBtb21l
bnR1bVBoYXNlIDogImVuZGVkIgorICAgICAgICB9CisgICAgXTsKKworICAgIGF3YWl0IFVJSGVs
cGVyLm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRzIH0pOworICAgIGNoZWNrRm9y
U2Nyb2xsKCk7CiAgICAgLy8gV2Ugc2hvdWxkIGZpbmlzaCB2aWEgdGhlIHNjcm9sbCBldmVudDsg
dGhpcyB3aWxsIGZpcmUgaW4gdGhlIGNhc2Ugb2YgZmFpbHVyZSB3aGVuIHRoZSBwYWdlIGRvZXNu
J3Qgc2Nyb2xsLgogfQogCkBAIC03Nyw4ICsxMDcsNiBAQCBmdW5jdGlvbiBzZXR1cFRvcExldmVs
KCkKICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOwogICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLQotICAgICAg
ICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKICAgICAgICAgc2V0VGltZW91dChz
Y3JvbGxUZXN0LCAwKTsKICAgICB9IGVsc2UgewogICAgICAgICB2YXIgbWVzc2FnZUxvY2F0aW9u
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhcmVudCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtaWZyYW1lLWxhdGNoZWQt
bWFpbmZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0
LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1tYWluZnJhbWUuaHRtbAppbmRleCA1NjgwNTk5ZmY5MjE0
NTEyODgxOWFhNjk3MDc3ODg5YTJmZjY4ZDhiLi4xOWNjNmZjMTM5MjUwYmY2ZDJjNDJhM2I4NjNh
MDdiNzNjM2JlYTcxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9s
bGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1tYWluZnJhbWUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hl
ZC1tYWluZnJhbWUuaHRtbApAQCAtMSw4ICsxLDggQEAKIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+
CiA8aGVhZD4KLTxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvRE9N
LUxldmVsLTMtRXZlbnRzLyNldmVudHMtV2hlZWxFdmVudCI+CiA8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5IG9ubG9hZD0i
b25Mb2FkKCk7Ij4KIDxzY3JpcHQ+CkBAIC00Miw3ICs0Miw3IEBAIGZ1bmN0aW9uIGNoZWNrRm9y
U2Nyb2xsKCkKICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gc2Ny
b2xsVGVzdCgpCithc3luYyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKIHsKICAgICBwYWdlU2Nyb2xs
UG9zaXRpb25CZWZvcmUgPSBkb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50LnNjcm9sbFRvcDsKICAg
ICBpRnJhbWVTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IHdpbmRvdy5mcmFtZXNbJ3RhcmdldCddLmRv
Y3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wOwpAQCAtNTAsMTggKzUwLDQ5IEBAIGZ1
bmN0aW9uIHNjcm9sbFRlc3QoKQogICAgIGlmcmFtZVRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0YXJnZXQnKTsKIAogICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRpbCB3ZSBy
ZWFjaCB0aGUgI3RhcmdldC4KLSAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChpZnJhbWVU
YXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsKLSAgICB2YXIgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChp
ZnJhbWVUYXJnZXQub2Zmc2V0VG9wKSAtIDQyOyAvLyBTbGlnaHRseSBtb3JlIHRoYW4gb25lIHdo
ZWVsIHNjcm9sbCBhd2F5IGZyb20gdGhlIElGcmFtZQotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92
ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5
V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0gICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0x
LCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdl
bmRlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdiZWdpbicpOwotICAgIGV2ZW50U2VuZGVy
Lm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtNCwgJ25vbmUnLCAn
Y29udGludWUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgZXZlbnRTZW5kZXIuY2FsbEFm
dGVyU2Nyb2xsaW5nQ29tcGxldGVzKGNoZWNrRm9yU2Nyb2xsKTsKKyAgICBjb25zdCBzdGFydFBv
c1ggPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOworICAgIGNvbnN0
IHN0YXJ0UG9zWSA9IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9mZnNldFRvcCkgLSA0MjsgLy8g
U2xpZ2h0bHkgbW9yZSB0aGFuIG9uZSB3aGVlbCBzY3JvbGwgYXdheSBmcm9tIHRoZSBJRnJhbWUK
IAorICAgIGNvbnN0IGV2ZW50cyA9IFsKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3
aGVlbCIsCisgICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgIHZpZXdZ
IDogc3RhcnRQb3NZLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhh
c2UgOiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAi
d2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAi
Y2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVl
bCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJjaGFu
Z2VkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwK
KyAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAg
ICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAg
ICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAg
ICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTQwLAorICAg
ICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAorICAgICAgICB7
CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2Ug
OiAiZW5kZWQiCisgICAgICAgIH0KKyAgICBdOworCisgICAgYXdhaXQgVUlIZWxwZXIubW91c2VX
aGVlbFNlcXVlbmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CisgICAgY2hlY2tGb3JTY3JvbGwoKTsK
ICAgICAvLyBXZSBzaG91bGQgZmluaXNoIHZpYSB0aGUgc2Nyb2xsIGV2ZW50OyB0aGlzIHdpbGwg
ZmlyZSBpbiB0aGUgY2FzZSBvZiBmYWlsdXJlIHdoZW4gdGhlIHBhZ2UgZG9lc24ndCBzY3JvbGwu
CiB9CiAKQEAgLTcwLDggKzEwMSw2IEBAIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwoKQogICAgIGlm
ICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0gICAgICAgIGV2ZW50U2Vu
ZGVyLm1vbml0b3JXaGVlbEV2ZW50cygpOwogICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRlc3Qs
IDApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHZhciBtZXNzYWdlTG9jYXRpb24gPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgncGFyZW50Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90aWxl
ZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1pZnJhbWUtbGF0Y2hlZC1zZWxlY3QuaHRt
bCBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFt
ZS1sYXRjaGVkLXNlbGVjdC5odG1sCmluZGV4IGI0NTdkNTliZjBkMDBhNzE0OTdjMDY3NGE5MTE1
MjU1MzVlNGQwNTYuLmQ3NTBkOTQ4NmM0ODEyNDBkMDY5NTVlNmRhY2I1YWExODllN2FlYzkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xs
LWlmcmFtZS1sYXRjaGVkLXNlbGVjdC5odG1sCisrKyBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdp
bmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLWlmcmFtZS1sYXRjaGVkLXNlbGVjdC5odG1sCkBAIC0x
LDggKzEsOCBAQAogPCFET0NUWVBFIGh0bWw+CiA8aHRtbD4KIDxoZWFkPgotPGxpbmsgcmVsPSJo
ZWxwIiBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1FdmVudHMvI2V2ZW50
cy1XaGVlbEV2ZW50Ij4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMi
Pjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJzZXR1cFRvcExldmVsKCk7Ij4KIDxz
Y3JpcHQ+CkBAIC0zNyw3ICszNyw3IEBAIGZ1bmN0aW9uIGNoZWNrRm9yU2Nyb2xsKCkKICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCithc3lu
YyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKIHsKICAgICBwYWdlU2Nyb2xsUG9zaXRpb25CZWZvcmUg
PSBkb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50LnNjcm9sbFRvcDsKICAgICBpRnJhbWVTY3JvbGxQ
b3NpdGlvbkJlZm9yZSA9IHdpbmRvdy5mcmFtZXNbJ3RhcmdldCddLmRvY3VtZW50LnNjcm9sbGlu
Z0VsZW1lbnQuc2Nyb2xsVG9wOwpAQCAtNDgsMTggKzQ4LDQ5IEBAIGZ1bmN0aW9uIHNjcm9sbFRl
c3QoKQogICAgIHNlbGVjdFRhcmdldFNjcm9sbFBvc2l0aW9uQmVmb3JlID0gc2VsZWN0VGFyZ2V0
LnNjcm9sbFRvcDsKIAogICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRpbCB3ZSByZWFjaCB0
aGUgI3RhcmdldC4KLSAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChzZWxlY3RUYXJnZXQu
b2Zmc2V0TGVmdCkgKyAxMDsKLSAgICB2YXIgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChzZWxlY3RU
YXJnZXQub2Zmc2V0VG9wKSArIDEwOyAvLyBTbGlnaHRseSBtb3JlIHRoYW4gb25lIHdoZWVsIHNj
cm9sbCBhd2F5IGZyb20gdGhlIElGcmFtZQotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0
YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdo
ZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0gICAgZXZlbnRT
ZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hh
bmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5k
ZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcs
ICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVu
dHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdiZWdpbicpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25vbmUnLCAnY29udGlu
dWUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1Q
aGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgZXZlbnRTZW5kZXIuY2FsbEFmdGVyU2Ny
b2xsaW5nQ29tcGxldGVzKGNoZWNrRm9yU2Nyb2xsKTsKKyAgICBjb25zdCBzdGFydFBvc1ggPSBN
YXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRMZWZ0KSArIDEwOworICAgIGNvbnN0IHN0YXJ0
UG9zWSA9IE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0Lm9mZnNldFRvcCkgKyAxMDsgLy8gU2xpZ2h0
bHkgbW9yZSB0aGFuIG9uZSB3aGVlbCBzY3JvbGwgYXdheSBmcm9tIHRoZSBJRnJhbWUKIAorICAg
IGNvbnN0IGV2ZW50cyA9IFsKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgIHZpZXdZIDogc3Rh
cnRQb3NZLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAi
YmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwi
LAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdl
ZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisg
ICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgor
ICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAg
IG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAg
ICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAg
ICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiZW5k
ZWQiCisgICAgICAgIH0KKyAgICBdOworCisgICAgYXdhaXQgVUlIZWxwZXIubW91c2VXaGVlbFNl
cXVlbmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CisgICAgY2hlY2tGb3JTY3JvbGwoKTsKICAgICAv
LyBXZSBzaG91bGQgZmluaXNoIHZpYSB0aGUgc2Nyb2xsIGV2ZW50OyB0aGlzIHdpbGwgZmlyZSBp
biB0aGUgY2FzZSBvZiBmYWlsdXJlIHdoZW4gdGhlIHBhZ2UgZG9lc24ndCBzY3JvbGwuCiB9CiAK
QEAgLTY4LDggKzk5LDYgQEAgZnVuY3Rpb24gc2V0dXBUb3BMZXZlbCgpCiAgICAgaWYgKHdpbmRv
dy5ldmVudFNlbmRlcikgewogICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICAg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0KLSAgICAgICAgZXZlbnRTZW5kZXIubW9u
aXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xsVGVzdCwgMCk7CiAg
ICAgfSBlbHNlIHsKICAgICAgICAgdmFyIG1lc3NhZ2VMb2NhdGlvbiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdwYXJlbnQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdp
bmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLW1haW5mcmFtZS16b29tLmh0bWwgYi9MYXlvdXRUZXN0
cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1tYWluZnJhbWUtem9vbS5odG1s
CmluZGV4IGYzZTNlNDA2Yjk0MzlkZjViM2JlNzJjZTE3NTBkMjY5ZWRkNDkwNGMuLjM2ZDQzYzMw
MTUyMzYxMGVmYjAzOTY0ZjA5OGRjNjljMTE1MDMxNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLW1haW5mcmFtZS16b29tLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtbWFp
bmZyYW1lLXpvb20uaHRtbApAQCAtMSw3ICsxLDggQEAKIDwhRE9DVFlQRSBodG1sPgogPGh0bWw+
CiA8aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiIHR5
cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzdHlsZT4KICAgICAjcGFyZW50IHsKICAgICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsKQEAgLTQ2LDE5ICs0NywzOSBAQAogICAgICAgICAg
ICAgc2V0VGltZW91dCh6b29tUGFnZU91dCwgMTAwKTsKICAgICB9CiAKLSAgICBmdW5jdGlvbiBz
Y3JvbGxEb3duKCkKKyAgICBhc3luYyBmdW5jdGlvbiBzY3JvbGxEb3duKCkKICAgICB7CiAgICAg
ICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRpbCB3ZSByZWFjaCB0aGUgI3RhcmdldC4KLSAg
ICAgICAgdmFyIHNlbGVjdFRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0YXJnZXQn
KTsKLSAgICAgICAgdmFyIHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0Lm9mZnNl
dExlZnQpICsgMjA7Ci0gICAgICAgIHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKHNlbGVjdFRh
cmdldC5vZmZzZXRUb3ApIC0gNDI7IC8vIFNsaWdodGx5IG1vcmUgdGhhbiBvbmUgd2hlZWwgc2Ny
b2xsIGF3YXkgZnJvbSB0aGUgdGFyZ2V0IGRpdgotICAgICAgICBldmVudFNlbmRlci5tb3VzZU1v
dmVUbyhzdGFydFBvc1gsIHN0YXJ0UG9zWSk7IC8vIE1ha2Ugc3VyZSB3ZSBhcmUganVzdCBvdXRz
aWRlIHRoZSB0YXJnZXQgZGl2Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2JlZ2FuJywgJ25vbmUnKTsKLSAgICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCA0MDsgKytpKSB7Ci0gICAgICAgICAgICBldmVudFNlbmRlci5t
b3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcs
ICdub25lJyk7Ci0gICAgICAgIH0KLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7Ci0gICAgICAg
ICAKKyAgICAgICAgY29uc3Qgc2VsZWN0VGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J3RhcmdldCcpOworICAgICAgICBjb25zdCBzdGFydFBvc1ggPSBNYXRoLnJvdW5kKHNlbGVjdFRh
cmdldC5vZmZzZXRMZWZ0KSArIDIwOworICAgICAgICBjb25zdCBzdGFydFBvc1kgPSBNYXRoLnJv
dW5kKHNlbGVjdFRhcmdldC5vZmZzZXRUb3ApIC0gNDI7IC8vIFNsaWdodGx5IG1vcmUgdGhhbiBv
bmUgd2hlZWwgc2Nyb2xsIGF3YXkgZnJvbSB0aGUgdGFyZ2V0IGRpdgorCisgICAgICAgIGxldCBl
dmVudHMgPSBbCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICAgICAgdmlld1ggOiBzdGFydFBvc1gsCisgICAgICAgICAgICAgICAgdmll
d1kgOiBzdGFydFBvc1ksCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAg
ICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICAgICAgfQorICAgICAgICBdOworCisgICAg
ICAgIGNvbnN0IGNoYW5nZWRFdmVudCA9IHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAor
ICAgICAgICAgICAgZGVsdGFZIDogLTEwMCwKKyAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQi
CisgICAgICAgIH07CisKKyAgICAgICAgY29uc3QgY2hhbmdlZEV2ZW50Q291bnQgPSA0MDsKKyAg
ICAgICAgY29uc3QgY2hhbmdlZEV2ZW50cyA9IEFycmF5KGNoYW5nZWRFdmVudENvdW50KS5maWxs
KGNoYW5nZWRFdmVudCk7CisgICAgICAgIGV2ZW50cy5wdXNoKC4uLmNoYW5nZWRFdmVudHMpOwor
ICAgICAgICBldmVudHMucHVzaCh7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICB9KTsKKworICAgICAgICBhd2FpdCBVSUhl
bHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKwogICAgICAgICBz
ZXRUaW1lb3V0KHpvb21QYWdlT3V0LCA3MDApOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtc2VsZWN0LWxhdGNoZWQt
bWFpbmZyYW1lLXdpdGgtaGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9z
Y3JvbGxpbmcvZmFzdC1zY3JvbGwtc2VsZWN0LWxhdGNoZWQtbWFpbmZyYW1lLXdpdGgtaGFuZGxl
ci5odG1sCmluZGV4IGQ2ODBjZDExNWJkMGY2MDIyNDFmNTQwNjdlNzkyYzYzNDQ1MWQ4NmEuLjg1
YzkyMzIyNzYxMWU0YmE5ZGJmMzFkOTdlNWJlMGI2YmJmMWU5ODAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVk
LW1haW5mcmFtZS13aXRoLWhhbmRsZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3
aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1zZWxlY3QtbGF0Y2hlZC1tYWluZnJhbWUtd2l0aC1o
YW5kbGVyLmh0bWwKQEAgLTE2LDYgKzE2LDcgQEAgcHJlIHsKIH0KIDwvc3R5bGU+CiA8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiAg
ICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogCkBAIC00OCw3ICs0OSw3IEBAIHByZSB7
CiAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIHNjcm9sbFRl
c3QoKQorICAgIGFzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogICAgIHsKICAgICAgICAgc2Vs
ZWN0VGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RhcmdldCcpOwogCkBAIC01Niwx
OCArNTcsNDkgQEAgcHJlIHsKICAgICAgICAgc2VsZWN0U2Nyb2xsUG9zaXRpb25CZWZvcmUgPSBz
ZWxlY3RUYXJnZXQuc2Nyb2xsVG9wOwogCiAgICAgICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1
bnRpbCB3ZSByZWFjaCB0aGUgI3RhcmdldC4KLSAgICAgICAgdmFyIHN0YXJ0UG9zWCA9IE1hdGgu
cm91bmQoc2VsZWN0VGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7Ci0gICAgICAgIHZhciBzdGFydFBv
c1kgPSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRUb3ApIC0gNDI7Ci0gICAgICAgIGV2
ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICAgICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAn
YmVnYW4nLCAnbm9uZScpOwotICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdo
ZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0x
LCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9uZScpOwotICAgICAg
ICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwg
LTEsICdub25lJywgJ2JlZ2luJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtNCwgJ25vbmUnLCAnY29udGludWUnKTsKLSAg
ICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIDAsICdub25lJywgJ2VuZCcpOwotICAgICAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJTY3Jv
bGxpbmdDb21wbGV0ZXMoY2hlY2tGb3JTY3JvbGwpOworICAgICAgICBjb25zdCBzdGFydFBvc1gg
PSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOworICAgICAgICBjb25z
dCBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRUb3ApIC0gNDI7CiAK
KyAgICAgICAgY29uc3QgZXZlbnRzID0gWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIHZpZXdYIDogc3RhcnRQb3NYLAorICAg
ICAgICAgICAgICAgIHZpZXdZIDogc3RhcnRQb3NZLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJiZWdhbiIKKyAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAg
ICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisg
ICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFz
ZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAg
ICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVl
bCIsCisgICAgICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgICAgIG1vbWVu
dHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6IC00MCwK
KyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgICAgICB9
LAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAg
ICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICB9CisgICAgICAg
IF07CisKKyAgICAgICAgYXdhaXQgVUlIZWxwZXIubW91c2VXaGVlbFNlcXVlbmNlKHsgZXZlbnRz
OiBldmVudHMgfSk7CisgICAgICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiAgICAgICAgIC8vIFdlIHNo
b3VsZCBmaW5pc2ggdmlhIHRoZSBzY3JvbGwgZXZlbnQ7IHRoaXMgd2lsbCBmaXJlIGluIHRoZSBj
YXNlIG9mIGZhaWx1cmUgd2hlbiB0aGUgcGFnZSBkb2Vzbid0IHNjcm9sbC4KICAgICB9CiAKQEAg
LTc4LDggKzExMCw2IEBAIHByZSB7CiAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsK
ICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgICAgICAgdGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7Ci0KLSAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vbml0b3JX
aGVlbEV2ZW50cygpOwogICAgICAgICAgICAgc2V0VGltZW91dChzY3JvbGxUZXN0LCAwKTsKICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHZhciBtZXNzYWdlTG9jYXRpb24gPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgncGFyZW50Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90aWxl
ZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1zZWxlY3QtbGF0Y2hlZC1tYWluZnJhbWUu
aHRtbCBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLXNl
bGVjdC1sYXRjaGVkLW1haW5mcmFtZS5odG1sCmluZGV4IGQ0Zjc4MGYwNTQyYmZjNGUxZmY3MGFj
Y2Q3N2E1MzYxZjVhMzFkZTIuLmZhYTQ1OWUzOTYxZmNlMTVmYWU4NjhmY2Y4MjMxNDNjZjBjZjg5
YjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qt
c2Nyb2xsLXNlbGVjdC1sYXRjaGVkLW1haW5mcmFtZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3Rp
bGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVkLW1haW5mcmFt
ZS5odG1sCkBAIC0yNiw2ICsyNiw3IEBACiAKIDwvc3R5bGU+CiA8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBvbkxv
YWQoKSB7CiAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIG9uUGFnZVNjcm9s
bCk7CkBAIC03MSw3ICs3Miw3IEBAIGZ1bmN0aW9uIGNoZWNrRm9yU2Nyb2xsKCkKICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCithc3luYyBm
dW5jdGlvbiBzY3JvbGxUZXN0KCkKIHsKICAgICBwYWdlU2Nyb2xsUG9zaXRpb25CZWZvcmUgPSBk
b2N1bWVudC5zY3JvbGxpbmdFbGVtZW50LnNjcm9sbFRvcDsKIApAQCAtODAsMjAgKzgxLDQ5IEBA
IGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogICAgIHNlbGVjdFNjcm9sbFBvc2l0aW9uQmVmb3JlID0g
c2VsZWN0VGFyZ2V0LnNjcm9sbFRvcDsKIAogICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRp
bCB3ZSByZWFjaCB0aGUgI3RhcmdldC4KLSAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChz
ZWxlY3RUYXJnZXQub2Zmc2V0TGVmdCkgKyAyMDsKLSAgICB2YXIgc3RhcnRQb3NZID0gTWF0aC5y
b3VuZChzZWxlY3RUYXJnZXQub2Zmc2V0VG9wKSAtIDQyOwotICAgIGV2ZW50U2VuZGVyLm1vdXNl
TW92ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9s
bEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0g
ICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAs
IC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAs
ICdlbmRlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVl
bEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdiZWdpbicpOwotICAgIGV2ZW50U2Vu
ZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtNCwgJ25vbmUn
LCAnY29udGludWUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5k
TW9tZW50dW1QaGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgZXZlbnRTZW5kZXIuY2Fs
bEFmdGVyU2Nyb2xsaW5nQ29tcGxldGVzKCgpID0+IHsKLSAgICAgICAgcmVxdWVzdEFuaW1hdGlv
bkZyYW1lKGNoZWNrRm9yU2Nyb2xsKTsKLSAgICB9KTsKLQorICAgIGNvbnN0IHN0YXJ0UG9zWCA9
IE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7CisgICAgY29uc3Qgc3Rh
cnRQb3NZID0gTWF0aC5yb3VuZChzZWxlY3RUYXJnZXQub2Zmc2V0VG9wKSAtIDQyOworCisgICAg
Y29uc3QgZXZlbnRzID0gWworICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwK
KyAgICAgICAgICAgIHZpZXdYIDogc3RhcnRQb3NYLAorICAgICAgICAgICAgdmlld1kgOiBzdGFy
dFBvc1ksCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJi
ZWdhbiIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2Vk
IgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisg
ICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAg
ICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAg
bW9tZW50dW1QaGFzZSA6ICJiZWdhbiIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAg
ICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtNDAsCisgICAgICAgICAg
ICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJlbmRl
ZCIKKyAgICAgICAgfQorICAgIF07CisKKyAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2Vx
dWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICBjaGVja0ZvclNjcm9sbCgpOwogICAgIC8v
IFdlIHNob3VsZCBmaW5pc2ggdmlhIHRoZSBzY3JvbGwgZXZlbnQ7IHRoaXMgd2lsbCBmaXJlIGlu
IHRoZSBjYXNlIG9mIGZhaWx1cmUgd2hlbiB0aGUgcGFnZSBkb2Vzbid0IHNjcm9sbC4KIH0KIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3Jv
bGwtc2VsZWN0LWxhdGNoZWQtc2VsZWN0LXdpdGgtaGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMv
dGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtc2VsZWN0LWxhdGNoZWQtc2VsZWN0
LXdpdGgtaGFuZGxlci5odG1sCmluZGV4IDUwNzJkYTQxNDFhYjRlYzAxOGRjNjJmMDRjZWFhNzIy
MDY4ZGI4MjguLjNiMTYwZmRjZTMwNGRmZTU0OTk1MmU3Y2JlNmUyOWEzNjlmZWFkZTMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLXNl
bGVjdC1sYXRjaGVkLXNlbGVjdC13aXRoLWhhbmRsZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy90
aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1zZWxlY3QtbGF0Y2hlZC1zZWxlY3Qt
d2l0aC1oYW5kbGVyLmh0bWwKQEAgLTI2LDYgKzI2LDcgQEAKIAogPC9zdHlsZT4KIDxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIHZh
ciB3aGVlbENvdW50ID0gMDsKIGZ1bmN0aW9uIG9uU2Nyb2xsV2hlZWwoZXZ0KSB7CkBAIC02NSw3
ICs2Niw3IEBAIGZ1bmN0aW9uIGNoZWNrRm9yU2Nyb2xsKCkKICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKIH0KIAotZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCithc3luYyBmdW5jdGlvbiBzY3Jv
bGxUZXN0KCkKIHsKICAgICBwYWdlU2Nyb2xsUG9zaXRpb25CZWZvcmUgPSBkb2N1bWVudC5zY3Jv
bGxpbmdFbGVtZW50LnNjcm9sbFRvcDsKIApAQCAtNzUsMTkgKzc2LDUzIEBAIGZ1bmN0aW9uIHNj
cm9sbFRlc3QoKQogICAgIHNlbGVjdFNjcm9sbFBvc2l0aW9uQmVmb3JlID0gc2VsZWN0VGFyZ2V0
LnNjcm9sbFRvcDsKIAogICAgIC8vIFNjcm9sbCB0aGUgI3NvdXJjZSB1bnRpbCB3ZSByZWFjaCB0
aGUgI3RhcmdldC4KLSAgICB2YXIgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChzZWxlY3RUYXJnZXQu
b2Zmc2V0TGVmdCkgKyAyMDsKICAgICBkZWJ1ZygiZGl2IGRpc3BsYXkgaGVpZ2h0ID0gIiArIE1h
dGgucm91bmQoc2VsZWN0VGFyZ2V0LmNsaWVudEhlaWdodCkpOwotICAgIHZhciBzdGFydFBvc1kg
PSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRUb3ApICsgTWF0aC5yb3VuZChzZWxlY3RU
YXJnZXQuY2xpZW50SGVpZ2h0KSAtIDQyOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0
YXJ0UG9zWCwgc3RhcnRQb3NZKTsKKworICAgIGNvbnN0IHN0YXJ0UG9zWCA9IE1hdGgucm91bmQo
c2VsZWN0VGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7CisgICAgY29uc3Qgc3RhcnRQb3NZID0gTWF0
aC5yb3VuZChzZWxlY3RUYXJnZXQub2Zmc2V0VG9wKSArIE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0
LmNsaWVudEhlaWdodCkgLSA0MjsKKwogICAgIGRlYnVnKCJNb3VzZSBtb3ZlZCB0byAoIiArIHN0
YXJ0UG9zWCArICIsICIgKyBzdGFydFBvc1kgKyAiKSIpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2JlZ2FuJywgJ25vbmUn
KTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9s
bEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsK
LSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgMCwgJ2VuZGVkJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0
aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdub25lJywgJ2JlZ2luJyk7Ci0gICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAn
bm9uZScsICdjb250aW51ZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hl
ZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnbm9uZScsICdlbmQnKTsKLSAgICBldmVudFNlbmRl
ci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21wbGV0ZXMoY2hlY2tGb3JTY3JvbGwpOworCisgICAgY29u
c3QgZXZlbnRzID0gWworICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgIHZpZXdYIDogc3RhcnRQb3NYLAorICAgICAgICAgICAgdmlld1kgOiBzdGFydFBv
c1ksCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJiZWdh
biIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisg
ICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgor
ICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisgICAg
ICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAg
ICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5
cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgbW9t
ZW50dW1QaGFzZSA6ICJiZWdhbiIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAg
dHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBt
b21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAg
ICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJlbmRlZCIK
KyAgICAgICAgfQorICAgIF07CisKKyAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVu
Y2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICBjaGVja0ZvclNjcm9sbCgpOwogfQogCiBmdW5j
dGlvbiBzZXR1cFRvcExldmVsKCkKQEAgLTk1LDggKzEzMCw2IEBAIGZ1bmN0aW9uIHNldHVwVG9w
TGV2ZWwoKQogICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0g
ICAgICAgIGV2ZW50U2VuZGVyLm1vbml0b3JXaGVlbEV2ZW50cygpOwogICAgICAgICBzZXRUaW1l
b3V0KHNjcm9sbFRlc3QsIDApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHZhciBtZXNzYWdlTG9j
YXRpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFyZW50Jyk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1zZWxlY3QtbGF0
Y2hlZC1zZWxlY3QuaHRtbCBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zh
c3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVkLXNlbGVjdC5odG1sCmluZGV4IGQyOTdlNjg2MzI2MWQy
YjA3MDA5ZjdmNzU4MmI1YTY1NWY2MTE0ZTMuLmJiNDVlYzU5OGFjMDlkM2M0OTI0MjIwN2UxYTg2
YmI2Y2YyYTU5NzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xs
aW5nL2Zhc3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVkLXNlbGVjdC5odG1sCisrKyBiL0xheW91dFRl
c3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLXNlbGVjdC1sYXRjaGVkLXNl
bGVjdC5odG1sCkBAIC0yNiw2ICsyNiw3IEBACiAKIDwvc3R5bGU+CiA8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBv
bkxvYWQoKSB7CiAgICAgc2V0dXBUb3BMZXZlbCgpOwpAQCAtNTksNyArNjAsNyBAQCBmdW5jdGlv
biBjaGVja0ZvclNjcm9sbCgpCiAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiB9CiAKLWZ1
bmN0aW9uIHNjcm9sbFRlc3QoKQorYXN5bmMgZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCiB7CiAgICAg
cGFnZVNjcm9sbFBvc2l0aW9uQmVmb3JlID0gZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3Jv
bGxUb3A7CiAKQEAgLTY5LDE5ICs3MCw1MiBAQCBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAgICBz
ZWxlY3RTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IHNlbGVjdFRhcmdldC5zY3JvbGxUb3A7CiAKICAg
ICAvLyBTY3JvbGwgdGhlICNzb3VyY2UgdW50aWwgd2UgcmVhY2ggdGhlICN0YXJnZXQuCi0gICAg
dmFyIHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0Lm9mZnNldExlZnQpICsgMjA7
CisgICAgY29uc3Qgc3RhcnRQb3NYID0gTWF0aC5yb3VuZChzZWxlY3RUYXJnZXQub2Zmc2V0TGVm
dCkgKyAyMDsKKyAgICBjb25zdCBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5v
ZmZzZXRUb3ApICsgTWF0aC5yb3VuZChzZWxlY3RUYXJnZXQuY2xpZW50SGVpZ2h0KSAtIDQyOwor
CiAgICAgZGVidWcoImRpdiBkaXNwbGF5IGhlaWdodCA9ICIgKyBNYXRoLnJvdW5kKHNlbGVjdFRh
cmdldC5jbGllbnRIZWlnaHQpKTsKLSAgICB2YXIgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChzZWxl
Y3RUYXJnZXQub2Zmc2V0VG9wKSArIE1hdGgucm91bmQoc2VsZWN0VGFyZ2V0LmNsaWVudEhlaWdo
dCkgLSA0MjsKLSAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyhzdGFydFBvc1gsIHN0YXJ0UG9z
WSk7CiAgICAgZGVidWcoIk1vdXNlIG1vdmVkIHRvICgiICsgc3RhcnRQb3NYICsgIiwgIiArIHN0
YXJ0UG9zWSArICIpIik7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVy
Lm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQn
LCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21l
bnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1v
dXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9u
ZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBo
YXNlcygwLCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9s
bEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdub25lJywgJ2NvbnRpbnVlJyk7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIDAsICdub25lJywgJ2VuZCcpOwotICAgIGV2ZW50U2VuZGVyLmNhbGxBZnRlclNjcm9sbGlu
Z0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisKKyAgICBjb25zdCBldmVudHMgPSBbCisgICAg
ICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgdmlld1ggOiBz
dGFydFBvc1gsCisgICAgICAgICAgICB2aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgIGRl
bHRhWSA6IC0xMCwKKyAgICAgICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAg
ICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAg
IHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEw
LAorICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgewor
ICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIK
KyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAg
ICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2Fu
IgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiY2hh
bmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIs
CisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImVuZGVkIgorICAgICAgICB9CisgICAgXTsK
KworICAgIGF3YWl0IFVJSGVscGVyLm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRz
IH0pOworICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiB9CiAKIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwo
KQpAQCAtODksOCArMTIzLDYgQEAgZnVuY3Rpb24gc2V0dXBUb3BMZXZlbCgpCiAgICAgaWYgKHdp
bmRvdy5ldmVudFNlbmRlcikgewogICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0KLSAgICAgICAgZXZlbnRTZW5kZXIu
bW9uaXRvcldoZWVsRXZlbnRzKCk7CiAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xsVGVzdCwgMCk7
CiAgICAgfSBlbHNlIHsKICAgICAgICAgdmFyIG1lc3NhZ2VMb2NhdGlvbiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdwYXJlbnQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRy
YXdpbmcvc2Nyb2xsaW5nL2lmcmFtZV9pbl9pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3RpbGVk
LWRyYXdpbmcvc2Nyb2xsaW5nL2lmcmFtZV9pbl9pZnJhbWUuaHRtbAppbmRleCAwZTA4ODE3Njdl
ODI1OTFmOGE4YjA0OTEyMGU0YWRkNzU5N2MxZTA5Li4xMTQ3MWYzOTk4YjUyNzJjOWU2MDg0YzI4
OGZhNjU4OGU5ZGJhYWVmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Nj
cm9sbGluZy9pZnJhbWVfaW5faWZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJh
d2luZy9zY3JvbGxpbmcvaWZyYW1lX2luX2lmcmFtZS5odG1sCkBAIC0xOSw2ICsxOSw3IEBACiAg
ICAgICAgIH0KICAgICAgICAgPC9zdHlsZT4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KICAgICA8L2hlYWQ+CiAgICAg
PGJvZHk+CiA8c2NyaXB0PgpAQCAtNTUsNyArNTYsNyBAQCBmdW5jdGlvbiBjaGVja0ZvclNjcm9s
bCgpCiAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiB9CiAKLWZ1bmN0aW9uIHNjcm9sbFRl
c3QoKQorYXN5bmMgZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCiB7CiAgICAgcGFnZVNjcm9sbFBvc2l0
aW9uQmVmb3JlID0gZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A7CiAKQEAgLTY4
LDE3ICs2OSw0OSBAQCBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAgICBpbm5lcklGcmFtZVNjcm9s
bFBvc2l0aW9uQmVmb3JlID0gaW5uZXJJRnJhbWVUYXJnZXQuc2Nyb2xsVG9wOwogCiAgICAgLy8g
U2Nyb2xsIHRoZSAjc291cmNlIHVudGlsIHdlIHJlYWNoIHRoZSAjdGFyZ2V0LgotICAgIHZhciBz
dGFydFBvc1ggPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdldC5vZmZzZXRMZWZ0KSArIDIwOwotICAg
IHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKGlmcmFtZVRhcmdldC5vZmZzZXRUb3ApICsgODA7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MSwgJ2JlZ2FuJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdo
ZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICBldmVu
dFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdj
aGFuZ2VkJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVs
QW5kTW9tZW50dW1QaGFzZXMoMCwgMCwgJ2VuZGVkJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRl
ci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdub25lJywg
J2JlZ2luJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVu
dHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdjb250aW51ZScpOwotICAgIGV2ZW50U2VuZGVyLm1v
dXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnbm9uZScsICdlbmQn
KTsKLSAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21wbGV0ZXMoY2hlY2tGb3JT
Y3JvbGwpOworICAgIGNvbnN0IHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoaWZyYW1lVGFyZ2V0Lm9m
ZnNldExlZnQpICsgMjA7CisgICAgY29uc3Qgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChpZnJhbWVU
YXJnZXQub2Zmc2V0VG9wKSArIDgwOworCisgICAgY29uc3QgZXZlbnRzID0gWworICAgICAgICB7
CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIHZpZXdYIDogc3RhcnRQ
b3NYLAorICAgICAgICAgICAgdmlld1kgOiBzdGFydFBvc1ksCisgICAgICAgICAgICBkZWx0YVkg
OiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJiZWdhbiIKKyAgICAgICAgfSwKKyAgICAgICAg
eworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAs
CisgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAorICAgICAgICB7Cisg
ICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAg
ICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAg
ICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAg
ICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJiZWdhbiIKKyAg
ICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAg
ICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQi
CisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAg
ICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfQorICAgIF07CisKKyAg
ICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsK
KyAgICBjaGVja0ZvclNjcm9sbCgpOwogfQogCiBmdW5jdGlvbiBzZXR1cFRvcExldmVsKCkKQEAg
LTg2LDggKzExOSw2IEBAIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwoKQogICAgIGlmICh3aW5kb3cu
ZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0gICAgICAgIGV2ZW50U2VuZGVyLm1vbml0
b3JXaGVlbEV2ZW50cygpOwogICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRlc3QsIDApOwogICAg
IH0KIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL2xh
dGNoZWQtZGl2LXdpdGgtc2Nyb2xsLXNuYXAuaHRtbCBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdp
bmcvc2Nyb2xsaW5nL2xhdGNoZWQtZGl2LXdpdGgtc2Nyb2xsLXNuYXAuaHRtbAppbmRleCBkOWFm
N2U1MmQ0MzI3NTdhM2EyNjYzNTQwZGZhZDM3ZGNlMzBlMzA5Li5kYTg4MTgzNTQyM2ZiZTkzMDZm
NGJkYjRiMjJhYzM3ODgwMGE2Y2FjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3
aW5nL3Njcm9sbGluZy9sYXRjaGVkLWRpdi13aXRoLXNjcm9sbC1zbmFwLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvbGF0Y2hlZC1kaXYtd2l0aC1zY3JvbGwt
c25hcC5odG1sCkBAIC00OCw2ICs0OCw3IEBACiAgICAgICAgICAgICAjaXRlbUg0LCAjaXRlbVY0
IHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OyB9CiAgICAgICAgICAgICAjaXRlbUg1LCAjaXRl
bVY1IHsgYmFja2dyb3VuZC1jb2xvcjogZnVjaHNpYTsgfQogICAgICAgICA8L3N0eWxlPgorICAg
ICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+
CiAgICAgICAgIDxzY3JpcHQ+CiAgICAgICAgIGZ1bmN0aW9uIGxvY2F0aW9uSW5XaW5kb3dDb29y
ZGluYXRlcyhlbGVtZW50KQogICAgICAgICB7CkBAIC02OSwzMCArNzAsNjIgQEAKIAogICAgICAg
ICBsZXQgc3dpcGVXaXRoTW9tZW50dW0gPSAoZWxlbWVudCkgPT4gc3dpcGVJbkVsZW1lbnQoZWxl
bWVudCwgdHJ1ZSk7CiAgICAgICAgIGxldCBzd2lwZVdpdGhvdXRNb21lbnR1bSA9IChlbGVtZW50
KSA9PiBzd2lwZUluRWxlbWVudChlbGVtZW50LCBmYWxzZSk7Ci0gICAgICAgIGZ1bmN0aW9uIHN3
aXBlSW5FbGVtZW50KGVsZW1lbnQsIG1vbWVudHVtKQorICAgICAgICAKKyAgICAgICAgYXN5bmMg
ZnVuY3Rpb24gc3dpcGVJbkVsZW1lbnQoZWxlbWVudCwgbW9tZW50dW0pCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKLSAgICAgICAgICAgICAg
ICB3cml0ZShgKiBTd2lwaW5nICR7bW9tZW50dW0gPyAid2l0aCIgOiAid2l0aG91dCJ9IG1vbWVu
dHVtIGluICR7ZWxlbWVudC5pZH0gd2l0aCBzY3JvbGwgb2Zmc2V0ICR7ZWxlbWVudC5zY3JvbGxM
ZWZ0fWApOwotICAgICAgICAgICAgICAgIGxldCBsb2NhdGlvbiA9IGxvY2F0aW9uSW5XaW5kb3dD
b29yZGluYXRlcyhlbGVtZW50KTsKLSAgICAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0UGxhdGZv
cm1Nb21lbnR1bVNjcm9sbGluZ1ByZWRpY3Rpb25FbmFibGVkKGZhbHNlKTsKLSAgICAgICAgICAg
ICAgICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKLSAgICAgICAgICAgICAgICBl
dmVudFNlbmRlci5tb3VzZU1vdmVUbyhsb2NhdGlvbi54LCBsb2NhdGlvbi55KTsKLSAgICAgICAg
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoLTEsIDAsICJiZWdhbiIsICJub25lIik7Ci0gICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIu
bW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKC0xLCAwLCAiY2hhbmdlZCIs
ICJub25lIik7Ci0gICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKC0xLCAwLCAiY2hhbmdlZCIsICJub25lIik7Ci0gICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhh
c2VzKDAsIDAsICJlbmRlZCIsICJub25lIik7Ci0gICAgICAgICAgICAgICAgaWYgKG1vbWVudHVt
KSB7Ci0gICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hl
ZWxBbmRNb21lbnR1bVBoYXNlcygtMSwgMCwgIm5vbmUiLCAiYmVnaW4iKTsKLSAgICAgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhh
c2VzKC0xLCAwLCAibm9uZSIsICJjb250aW51ZSIpOwotICAgICAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgMCwgIm5v
bmUiLCAiZW5kIik7CisgICAgICAgICAgICB3cml0ZShgKiBTd2lwaW5nICR7bW9tZW50dW0gPyAi
d2l0aCIgOiAid2l0aG91dCJ9IG1vbWVudHVtIGluICR7ZWxlbWVudC5pZH0gd2l0aCBzY3JvbGwg
b2Zmc2V0ICR7ZWxlbWVudC5zY3JvbGxMZWZ0fWApOworCisgICAgICAgICAgICBpbnRlcm5hbHMu
c2V0UGxhdGZvcm1Nb21lbnR1bVNjcm9sbGluZ1ByZWRpY3Rpb25FbmFibGVkKGZhbHNlKTsKKyAg
ICAgICAgICAgIGNvbnN0IGxvY2F0aW9uID0gbG9jYXRpb25JbldpbmRvd0Nvb3JkaW5hdGVzKGVs
ZW1lbnQpOworCisgICAgICAgICAgICBsZXQgZXZlbnRzID0gWworICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAg
IHZpZXdYIDogbG9jYXRpb24ueCwKKyAgICAgICAgICAgICAgICAgICAgdmlld1kgOiBsb2NhdGlv
bi55LAorICAgICAgICAgICAgICAgICAgICBkZWx0YVggOiAtMTAsCisgICAgICAgICAgICAgICAg
ICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAg
ICAgZGVsdGFYIDogLTEwLAorICAgICAgICAgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgor
ICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFYIDogLTEwLAorICAg
ICAgICAgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgICAgIH0sCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAg
ICAgICAgICAgICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgXTsKKyAgICAgICAgICAgIGNvbnN0IG1vbWVudHVtRXZlbnRzID0gWworICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAg
ICAgICAgICAgICAgIGRlbHRhWCA6IC0xMCwKKyAgICAgICAgICAgICAgICAgICAgbW9tZW50dW1Q
aGFzZSA6ICJiZWdhbiIKKyAgICAgICAgICAgICAgICB9LAorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgICAgIGRl
bHRhWCA6IC0xMCwKKyAgICAgICAgICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2Vk
IgorICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6
ICJlbmRlZCIKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIu
Y2FsbEFmdGVyU2Nyb2xsaW5nQ29tcGxldGVzKCgpID0+IHsKLSAgICAgICAgICAgICAgICAgICAg
d3JpdGUoYCAgdG9wVGFyZ2V0IG5vdyBoYXMgc2Nyb2xsIG9mZnNldCAke3RvcFRhcmdldC5zY3Jv
bGxMZWZ0fWApOwotICAgICAgICAgICAgICAgICAgICB3cml0ZShgICBib3R0b21UYXJnZXQgbm93
IGhhcyBzY3JvbGwgb2Zmc2V0ICR7Ym90dG9tVGFyZ2V0LnNjcm9sbExlZnR9YCk7Ci0gICAgICAg
ICAgICAgICAgICAgIHdyaXRlKCIiKTsKLSAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwot
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBdOworICAg
ICAgICAgICAgCisgICAgICAgICAgICBpZiAobW9tZW50dW0pIAorICAgICAgICAgICAgICAgIGV2
ZW50cy5wdXNoKC4uLm1vbWVudHVtRXZlbnRzKTsKKworICAgICAgICAgICAgYXdhaXQgVUlIZWxw
ZXIubW91c2VXaGVlbFNlcXVlbmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CisKKyAgICAgICAgICAg
IHdyaXRlKGAgIHRvcFRhcmdldCBub3cgaGFzIHNjcm9sbCBvZmZzZXQgJHt0b3BUYXJnZXQuc2Ny
b2xsTGVmdH1gKTsKKyAgICAgICAgICAgIHdyaXRlKGAgIGJvdHRvbVRhcmdldCBub3cgaGFzIHNj
cm9sbCBvZmZzZXQgJHtib3R0b21UYXJnZXQuc2Nyb2xsTGVmdH1gKTsKKyAgICAgICAgICAgIHdy
aXRlKCIiKTsKICAgICAgICAgfQogCiAgICAgICAgIGZ1bmN0aW9uIHJ1bigpCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9sYXRjaGVkLXRvLWRlbGV0ZWQt
bm9kZS5odG1sIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvbGF0Y2hlZC10
by1kZWxldGVkLW5vZGUuaHRtbAppbmRleCBmYzlmNGZkMWVlNGE5NDU1NjEzMzBiYjZlOWEyZDUw
YTQwYjJhMjQwLi43ZmVhNDQ0NzZjNWE3ZDhkODQzMjhhYTE1N2YxMGNkY2NkMjAxNDM3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9sYXRjaGVkLXRvLWRl
bGV0ZWQtbm9kZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5n
L2xhdGNoZWQtdG8tZGVsZXRlZC1ub2RlLmh0bWwKQEAgLTM5LDYgKzM5LDcgQEAKIAl9CiAJPC9z
dHlsZT4KIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0
PgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJzZXR1cFRvcExldmVsKCk7Ij4KIDxzY3JpcHQ+CkBA
IC0xMTgsNyArMTE5LDcgQEAgZnVuY3Rpb24gY2hlY2tGb3JTY3JvbGwoKQogICAgIGZpbmlzaEpT
VGVzdCgpOwogfQogCi1mdW5jdGlvbiBzY3JvbGxUZXN0KCkKK2FzeW5jIGZ1bmN0aW9uIHNjcm9s
bFRlc3QoKQogewogICAgIHBhZ2VTY3JvbGxQb3NpdGlvbkJlZm9yZUdlc3R1cmUgPSBkb2N1bWVu
dC5zY3JvbGxpbmdFbGVtZW50LnNjcm9sbFRvcDsKIApAQCAtMTI2LDIwICsxMjcsNTAgQEAgZnVu
Y3Rpb24gc2Nyb2xsVGVzdCgpCiAKICAgICBkaXZTY3JvbGxQb3NpdGlvbkJlZm9yZUdlc3R1cmUg
PSBkaXZFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDsKIAotICAgIHZhciB3aW5k
b3dQb3NpdGlvbiA9IGxvY2F0aW9uSW5XaW5kb3dDb29yZGluYXRlcyhkaXZFbGVtZW50KTsKLQot
ICAgIHZhciBzdGFydFBvc1ggPSB3aW5kb3dQb3NpdGlvbi54ICsgMC41ICogZGl2RWxlbWVudC5j
bGllbnRXaWR0aDsKLSAgICB2YXIgc3RhcnRQb3NZID0gd2luZG93UG9zaXRpb24ueSArIDAuNSAq
IGRpdkVsZW1lbnQuY2xpZW50SGVpZ2h0OwotICAgIAotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92
ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQb3NZKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5
V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdiZWdhbicsICdub25lJyk7Ci0gICAg
ZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC01
LCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC01LCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdl
bmRlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdiZWdpbicpOwotICAgIGV2ZW50U2VuZGVy
Lm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25vbmUnLCAn
Y29udGludWUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgZXZlbnRTZW5kZXIuY2FsbEFm
dGVyU2Nyb2xsaW5nQ29tcGxldGVzKGNoZWNrRm9yU2Nyb2xsKTsKKyAgICBjb25zdCB3aW5kb3dQ
b3NpdGlvbiA9IGxvY2F0aW9uSW5XaW5kb3dDb29yZGluYXRlcyhkaXZFbGVtZW50KTsKKyAgICBj
b25zdCBzdGFydFBvc1ggPSB3aW5kb3dQb3NpdGlvbi54ICsgMC41ICogZGl2RWxlbWVudC5jbGll
bnRXaWR0aDsKKyAgICBjb25zdCBzdGFydFBvc1kgPSB3aW5kb3dQb3NpdGlvbi55ICsgMC41ICog
ZGl2RWxlbWVudC5jbGllbnRIZWlnaHQ7CisKKyAgICBjb25zdCBldmVudHMgPSBbCisgICAgICAg
IHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgdmlld1ggOiBzdGFy
dFBvc1gsCisgICAgICAgICAgICB2aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgIGRlbHRh
WSA6IC0xMCwKKyAgICAgICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAgICAg
ICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0x
MCwKKyAgICAgICAgICAgIHBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsK
KyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAor
ICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAg
ICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAg
ICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAg
ICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2FuIgor
ICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAg
ICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiY2hhbmdl
ZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisg
ICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImVuZGVkIgorICAgICAgICB9CisgICAgXTsKKwor
ICAgIGF3YWl0IFVJSGVscGVyLm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRzIH0p
OworICAgIGNoZWNrRm9yU2Nyb2xsKCk7CiB9CiAKIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwoKQpA
QCAtMTQ3LDggKzE3OCw2IEBAIGZ1bmN0aW9uIHNldHVwVG9wTGV2ZWwoKQogICAgIGlmICh3aW5k
b3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAg
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0gICAgICAgIGV2ZW50U2VuZGVyLm1v
bml0b3JXaGVlbEV2ZW50cygpOwogICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRlc3QsIDApOwog
ICAgIH0gZWxzZSB7CiAgICAgICAgIHZhciBtZXNzYWdlTG9jYXRpb24gPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgncGFyZW50Jyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3
aW5nL3Njcm9sbGluZy9vdmVyZmxvdy1zY3JvbGwtcmVkdWNlZC1jb250ZW50Lmh0bWwgYi9MYXlv
dXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9vdmVyZmxvdy1zY3JvbGwtcmVkdWNlZC1j
b250ZW50Lmh0bWwKaW5kZXggMjAzMmM0NGFhODE0OGRmOGI4YTk0MDdlZmQ1NGZhYTk1ODRmNTM0
OS4uNmZjYjQ5ZDEzNzYxZGVjZjdlNjkxOTA3M2FiYjEzM2M4OTBiZTQzZiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvb3ZlcmZsb3ctc2Nyb2xsLXJlZHVj
ZWQtY29udGVudC5odG1sCisrKyBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5n
L292ZXJmbG93LXNjcm9sbC1yZWR1Y2VkLWNvbnRlbnQuaHRtbApAQCAtMjYsNiArMjYsNyBAQAog
PC9zdHlsZT4KIAogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgogCiBmdW5jdGlvbiBkZWNyZWFzZUNvbnRlbnRTaXplKCkKQEAgLTQ0
LDI3ICs0NSw1NyBAQCBmdW5jdGlvbiBkZWNyZWFzZUNvbnRlbnRTaXplKCkKICAgICB0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gc2Nyb2xsVGVzdCgpCithc3luYyBmdW5j
dGlvbiBzY3JvbGxUZXN0KCkKIHsKLSAgICB2YXIgc3RhcnRQb3NYID0gMTUwOwotICAgIHZhciBz
dGFydFBvc1kgPSAxNTA7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBz
dGFydFBvc1kpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21l
bnR1bVBoYXNlcygwLCAtMSwgJ2JlZ2FuJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3Vz
ZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25v
bmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1Q
aGFzZXMoMCwgLTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNj
cm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgMCwgJ2VuZGVkJywgJ25vbmUnKTsK
LSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgLTEsICdub25lJywgJ2JlZ2luJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdjb250aW51ZScpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAw
LCAnbm9uZScsICdlbmQnKTsKKyAgICBjb25zdCBzdGFydFBvc1ggPSAxNTA7CisgICAgY29uc3Qg
c3RhcnRQb3NZID0gMTUwOwogCi0gICAgc2V0VGltZW91dChkZWNyZWFzZUNvbnRlbnRTaXplLCAx
MDApOworICAgIGNvbnN0IGV2ZW50cyA9IFsKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgIHZp
ZXdZIDogc3RhcnRQb3NZLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAg
cGhhc2UgOiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUg
OiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2Ug
OiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3
aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBwaGFzZSA6ICJj
aGFuZ2VkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVs
IiwKKyAgICAgICAgICAgIHBoYXNlIDogImVuZGVkIgorICAgICAgICB9LAorICAgICAgICB7Cisg
ICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAg
ICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsK
KyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAor
ICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAorICAgICAg
ICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIG1vbWVudHVtUGhh
c2UgOiAiZW5kZWQiCisgICAgICAgIH0KKyAgICBdOworCisgICAgYXdhaXQgVUlIZWxwZXIubW91
c2VXaGVlbFNlcXVlbmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CisgICAgZGVjcmVhc2VDb250ZW50
U2l6ZSgpOwogfQogCiBmdW5jdGlvbiBzZXRVcCgpIHsKICAgICBpZiAod2luZG93LmV2ZW50U2Vu
ZGVyKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKLQogICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRlc3QsIDAp
OwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xs
aW5nL292ZXJmbG93LXNjcm9sbC16ZXJvLWRlbHRhLXdoZWVsLWV2ZW50cy5odG1sIGIvTGF5b3V0
VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvb3ZlcmZsb3ctc2Nyb2xsLXplcm8tZGVsdGEt
d2hlZWwtZXZlbnRzLmh0bWwKaW5kZXggYjkyODIxM2NjZmZlNWM2MzAzMWMwOWIwODViMzM5MTFj
ODdhYjg2Zi4uYTE4ZWU0MTU3YzliYmY4OTgwNmJmZGFhNWVmNzA1M2M2ZjQ4YjQ1YiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvb3ZlcmZsb3ctc2Nyb2xs
LXplcm8tZGVsdGEtd2hlZWwtZXZlbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJh
d2luZy9zY3JvbGxpbmcvb3ZlcmZsb3ctc2Nyb2xsLXplcm8tZGVsdGEtd2hlZWwtZXZlbnRzLmh0
bWwKQEAgLTE2LDYgKzE2LDcgQEAKIDwvc3R5bGU+CiAKIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy91aS1oZWxwZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdD4KIAogdmFyIGRlbHRhT2ZaZXJv
ID0gZmFsc2U7CkBAIC0zMCwzNSArMzEsNjcgQEAgZnVuY3Rpb24gY2hlY2tGb3JaZXJvKCkKICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKIH0KIAotZnVuY3Rpb24gZGlkU2Nyb2xsKGV2ZW50
KSB7CitmdW5jdGlvbiBkaWRTY3JvbGwoZXZlbnQpCit7CiAgICAgaWYgKGV2ZW50LndoZWVsRGVs
dGFYID09IDAgJiYgZXZlbnQud2hlZWxEZWx0YVkgPT0gMCkKICAgICAgICAgZGVsdGFPZlplcm8g
PSB0cnVlOwogfQogCi1mdW5jdGlvbiBzY3JvbGxUZXN0KCkKK2FzeW5jIGZ1bmN0aW9uIHNjcm9s
bFRlc3QoKQogewotICAgIHZhciBzdGFydFBvc1ggPSAxMDA7Ci0gICAgdmFyIHN0YXJ0UG9zWSA9
IDEwMDsKLSAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyhzdGFydFBvc1gsIHN0YXJ0UG9zWSk7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIC0xLCAnYmVnYW4nLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9uZScpOwotICAgIGV2ZW50
U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ25v
bmUnLCAnYmVnaW4nKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5k
TW9tZW50dW1QaGFzZXMoMCwgLTEsICdub25lJywgJ2NvbnRpbnVlJyk7Ci0gICAgZXZlbnRTZW5k
ZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdub25lJywg
J2VuZCcpOwotICAgIGV2ZW50U2VuZGVyLmNhbGxBZnRlclNjcm9sbGluZ0NvbXBsZXRlcyhjaGVj
a0Zvclplcm8pOworICAgIGNvbnN0IHN0YXJ0UG9zWCA9IDEwMDsKKyAgICBjb25zdCBzdGFydFBv
c1kgPSAxMDA7CisKKyAgICBjb25zdCBldmVudHMgPSBbCisgICAgICAgIHsKKyAgICAgICAgICAg
IHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgdmlld1ggOiBzdGFydFBvc1gsCisgICAgICAg
ICAgICB2aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAg
ICAgICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAg
ICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAg
IHBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5
cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhh
c2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfSwKKyAgICAg
ICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAt
MTAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAg
ICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwK
KyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBtb21l
bnR1bVBoYXNlIDogImVuZGVkIgorICAgICAgICB9CisgICAgXTsKKworICAgIGF3YWl0IFVJSGVs
cGVyLm1vdXNlV2hlZWxTZXF1ZW5jZSh7IGV2ZW50czogZXZlbnRzIH0pOworICAgIGNoZWNrRm9y
WmVybygpOwogfQogCi1mdW5jdGlvbiBzZXRVcCgpIHsKK2Z1bmN0aW9uIHNldFVwKCkKK3sKICAg
ICB2YXIgc2Nyb2xseSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3JvbGx5Iik7CiAgICAg
c2Nyb2xseS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXdoZWVsIiwgZGlkU2Nyb2xsKTsKIAogICAg
IGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotCi0gICAgICAgIGV2ZW50
U2VuZGVyLm1vbml0b3JXaGVlbEV2ZW50cygpOwogICAgICAgICBzZXRUaW1lb3V0KHNjcm9sbFRl
c3QsIDApOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcv
c2Nyb2xsaW5nL3Jvb3Qtb3ZlcmZsb3ctd2l0aC1tb3VzZXdoZWVsLmh0bWwgYi9MYXlvdXRUZXN0
cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9yb290LW92ZXJmbG93LXdpdGgtbW91c2V3aGVlbC5o
dG1sCmluZGV4IGZjMGViNDA4NGZiMWY1YzRhOTRhOTQ3NGMxOTA5N2U5MDMxODM3MTAuLmE4OGQ0
MmU2ZmY0OTk2MDZkNjk3YjBiM2QyZGFmNmRiYzI2OTRhOTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xsaW5nL3Jvb3Qtb3ZlcmZsb3ctd2l0aC1tb3VzZXdoZWVs
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvcm9vdC1vdmVy
Zmxvdy13aXRoLW1vdXNld2hlZWwuaHRtbApAQCAtNiw3ICs2LDggQEAgaHRtbCB7CiAgICAgb3Zl
cmZsb3c6IHNjcm9sbDsKIH0KIDwvc3R5bGU+Ci0KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
dWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBjaGVja0ZvclNjcm9s
bCgpCiB7CkBAIC0xOSwyNiArMjAsNTcgQEAgZnVuY3Rpb24gY2hlY2tGb3JTY3JvbGwoKQogICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwogfQogCi1mdW5jdGlvbiBzY3JvbGxUZXN0KCkKK2Fz
eW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQogewotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRv
KDUwLCA1MCk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVu
dHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9u
ZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBo
YXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Ny
b2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9uZScpOwot
ICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygw
LCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0
aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnbm9uZScsICdjb250aW51ZScpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAw
LCAnbm9uZScsICdlbmQnKTsKLSAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21w
bGV0ZXMoY2hlY2tGb3JTY3JvbGwpOworICAgIGNvbnN0IGV2ZW50cyA9IFsKKyAgICAgICAgewor
ICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICB2aWV3WCA6IDUwLAorICAg
ICAgICAgICAgdmlld1kgOiA1MCwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAg
ICAgIHBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0
eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIHBo
YXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUg
OiAid2hlZWwiLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2Ug
OiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3
aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfSwKKyAgICAgICAg
eworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAs
CisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJlZ2FuIgorICAgICAgICB9LAorICAgICAg
ICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0x
MDAsCisgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImNoYW5nZWQiCisgICAgICAgIH0sCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgbW9tZW50
dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfQorICAgIF07CisKKyAgICBhd2FpdCBVSUhlbHBl
ci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICBjaGVja0ZvclNj
cm9sbCgpOwogfQogCi1mdW5jdGlvbiBvbkxvYWQoKSB7CitmdW5jdGlvbiBvbkxvYWQoKQorewog
ICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXdoZWVsJywgZnVuY3Rpb24oKSB7IH0s
IGZhbHNlKTsKIAogICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwot
ICAgICAgICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKICAgICAgICAgc2V0VGlt
ZW91dChzY3JvbGxUZXN0LCAwKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy90
aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9zY3JvbGwtaWZyYW1lLWxhdGNoZWQtc2VsZWN0cy5odG1s
IGIvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvc2Nyb2xsLWlmcmFtZS1sYXRj
aGVkLXNlbGVjdHMuaHRtbAppbmRleCBkYjNlN2YxMTcxYTUzMWQ5ZDI4OTJkNzFjMDRhYWUwYWMy
ODc5NDE5Li43MjU4NmY1NTJjMzRiZTkxMzIyMDJhOWJhNDFhOWQ3MTNmMzBhMTNmIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9zY3JvbGwtaWZyYW1lLWxh
dGNoZWQtc2VsZWN0cy5odG1sCisrKyBiL0xheW91dFRlc3RzL3RpbGVkLWRyYXdpbmcvc2Nyb2xs
aW5nL3Njcm9sbC1pZnJhbWUtbGF0Y2hlZC1zZWxlY3RzLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8
IURPQ1RZUEUgaHRtbD4KIDxodG1sPgogPGhlYWQ+Ci08bGluayByZWw9ImhlbHAiIGhyZWY9Imh0
dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUV2ZW50cy8jZXZlbnRzLVdoZWVsRXZlbnQi
PgogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8
L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InNldHVwVG9wTGV2ZWwoKTsiPgogPHNjcmlwdD4KQEAgLTI3
LDcgKzI3LDggQEAgZnVuY3Rpb24gY2hlY2tGb3JTY3JvbGwoKQogCiAgICAgZmluaXNoSlNUZXN0
KCk7CiB9Ci1mdW5jdGlvbiBzY3JvbGxSaWdodE1vc3RTZWxlY3QoKQorCithc3luYyBmdW5jdGlv
biBzY3JvbGxSaWdodE1vc3RTZWxlY3QoKQogewogICAgIGlmIChzZWxlY3RMZWZ0LnNjcm9sbFRv
cCA+IDApCiAgICAgICAgIHRlc3RQYXNzZWQoIkxlZnRtb3N0IDxzZWxlY3Q+IHdhcyBzY3JvbGxl
ZCIpOwpAQCAtMzUsMjYgKzM2LDU4IEBAIGZ1bmN0aW9uIHNjcm9sbFJpZ2h0TW9zdFNlbGVjdCgp
CiAgICAgICAgIHRlc3RGYWlsZWQoIkxlZnRtb3N0IDxzZWxlY3Q+IHdhcyBub3Qgc2Nyb2xsZWQi
KTsKICAgICBwcmV2aW91c1NlbGVjdExlZnRTY3JvbGxQb3NpdGlvbiA9IHNlbGVjdExlZnQuc2Ny
b2xsVG9wOwogCi0gICAgdmFyIHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoc2VsZWN0UmlnaHQub2Zm
c2V0TGVmdCkgKyAxMDsKLSAgICB2YXIgc3RhcnRQb3NZID0gTWF0aC5yb3VuZChzZWxlY3RSaWdo
dC5vZmZzZXRUb3ApICsgMTA7Ci0gICAgZXZlbnRTZW5kZXIubW9uaXRvcldoZWVsRXZlbnRzKCk7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MSwgImJlZ2FuIiwgIm5vbmUiKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdo
ZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEsICJjaGFuZ2VkIiwgIm5vbmUiKTsKLSAgICBldmVu
dFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgMCwgImVu
ZGVkIiwgIm5vbmUiKTsKLSAgICBldmVudFNlbmRlci5jYWxsQWZ0ZXJTY3JvbGxpbmdDb21wbGV0
ZXMoY2hlY2tGb3JTY3JvbGwpOworICAgIGNvbnN0IHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoc2Vs
ZWN0UmlnaHQub2Zmc2V0TGVmdCkgKyAxMDsKKyAgICBjb25zdCBzdGFydFBvc1kgPSBNYXRoLnJv
dW5kKHNlbGVjdFJpZ2h0Lm9mZnNldFRvcCkgKyAxMDsKKworICAgIGNvbnN0IGV2ZW50cyA9IFsK
KyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICB2aWV3
WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgIHZpZXdZIDogc3RhcnRQb3NZLAorICAgICAgICAg
ICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAiYmVnYW4iCisgICAgICAgIH0s
CisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgZGVs
dGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgfSwKKyAg
ICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6
ICJlbmRlZCIKKyAgICAgICAgfQorICAgIF07CisKKyAgICBhd2FpdCBVSUhlbHBlci5tb3VzZVdo
ZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICBjaGVja0ZvclNjcm9sbCgpOwog
fQogCi1mdW5jdGlvbiBzY3JvbGxMZWZ0TW9zdFNlbGVjdCgpCithc3luYyBmdW5jdGlvbiBzY3Jv
bGxMZWZ0TW9zdFNlbGVjdCgpCiB7Ci0gICAgdmFyIHN0YXJ0UG9zWCA9IE1hdGgucm91bmQoc2Vs
ZWN0TGVmdC5vZmZzZXRMZWZ0KSArIDEwOwotICAgIHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5k
KHNlbGVjdExlZnQub2Zmc2V0VG9wKSArIDEwOwotICAgIGV2ZW50U2VuZGVyLm1vbml0b3JXaGVl
bEV2ZW50cygpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHN0YXJ0UG9zWCwgc3RhcnRQ
b3NZKTsKLSAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1Q
aGFzZXMoMCwgLTEsICJiZWdhbiIsICJub25lIik7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3Jv
bGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAiY2hhbmdlZCIsICJub25lIik7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIDAsICJlbmRlZCIsICJub25lIik7Ci0gICAgZXZlbnRTZW5kZXIuY2FsbEFmdGVyU2Nyb2xs
aW5nQ29tcGxldGVzKHNjcm9sbFJpZ2h0TW9zdFNlbGVjdCk7CisgICAgY29uc3Qgc3RhcnRQb3NY
ID0gTWF0aC5yb3VuZChzZWxlY3RMZWZ0Lm9mZnNldExlZnQpICsgMTA7CisgICAgY29uc3Qgc3Rh
cnRQb3NZID0gTWF0aC5yb3VuZChzZWxlY3RMZWZ0Lm9mZnNldFRvcCkgKyAxMDsKKworICAgIGNv
bnN0IGV2ZW50cyA9IFsKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisg
ICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgIHZpZXdZIDogc3RhcnRQ
b3NZLAorICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAiYmVn
YW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAor
ICAgICAgICAgICAgZGVsdGFZIDogLTEwLAorICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIK
KyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAg
ICAgICAgICBwaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgfQorICAgIF07CisKKyAgICBhd2FpdCBV
SUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsKKyAgICBzY3Jv
bGxSaWdodE1vc3RTZWxlY3QoKTsKIH0KIAogZnVuY3Rpb24gc2V0dXBUb3BMZXZlbCgpCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9zY3JvbGxpbmctbm8t
aWZyYW1lLWxhdGNoaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGlu
Zy9zY3JvbGxpbmctbm8taWZyYW1lLWxhdGNoaW5nLmh0bWwKaW5kZXggZjZiZTFjOTY4MTQ4OTQ4
MzFmZWIyYjNjZjQ1NWU0OGNlYmM3ZjdmYy4uMzU1OTA5NzAwNjdjNDFhNjQ1YmVlYzhiZjY2ZDg0
ODliMTNjOTZlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9zY3JvbGxp
bmcvc2Nyb2xsaW5nLW5vLWlmcmFtZS1sYXRjaGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL3Rp
bGVkLWRyYXdpbmcvc2Nyb2xsaW5nL3Njcm9sbGluZy1uby1pZnJhbWUtbGF0Y2hpbmcuaHRtbApA
QCAtMiw2ICsyLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5PgogPHNjcmlwdD4KQEAg
LTIxLDI5ICsyMiw2MCBAQAogICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKICAgICB9CiAKLSAgICBm
dW5jdGlvbiBzY3JvbGxUZXN0KCkKKyAgICBhc3luYyBmdW5jdGlvbiBzY3JvbGxUZXN0KCkKICAg
ICB7CiAgICAgICAgIC8vIFNlbmQgYSBzY3JvbGwgd2hpbGUgb3ZlciB0aGUgaW5uZXIgaWZyYW1l
LgotICAgICAgICB2YXIgc3RhcnRQb3NYID0gMTUwOwotICAgICAgICB2YXIgc3RhcnRQb3NZID0g
MTUwOwotICAgICAgICBldmVudFNlbmRlci5tb25pdG9yV2hlZWxFdmVudHMoKTsKLSAgICAgICAg
ZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOwotICAgICAgICBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEs
ICdiZWdhbicsICdub25lJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMSwgJ2NoYW5nZWQnLCAnbm9uZScpOwotICAgICAg
ICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwg
LTEsICdjaGFuZ2VkJywgJ25vbmUnKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxC
eVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7Ci0gICAg
ICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygw
LCAtMSwgJ25vbmUnLCAnYmVnaW4nKTsKLSAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxC
eVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnbm9uZScsICdjb250aW51ZScpOwot
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgMCwgJ25vbmUnLCAnZW5kJyk7Ci0gICAgICAgIGV2ZW50U2VuZGVyLmNhbGxBZnRlclNj
cm9sbGluZ0NvbXBsZXRlcyhjaGVja0ZvclNjcm9sbCk7CisgICAgICAgIGNvbnN0IHN0YXJ0UG9z
WCA9IDE1MDsKKyAgICAgICAgY29uc3Qgc3RhcnRQb3NZID0gMTUwOworCisgICAgICAgIGNvbnN0
IGV2ZW50cyA9IFsKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVs
IiwKKyAgICAgICAgICAgICAgICB2aWV3WCA6IHN0YXJ0UG9zWCwKKyAgICAgICAgICAgICAgICB2
aWV3WSA6IHN0YXJ0UG9zWSwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAg
ICAgICAgICAgcGhhc2UgOiAiYmVnYW4iCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgICAgIGRlbHRhWSA6
IC0xMCwKKyAgICAgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICAgICAgfSwK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAg
ICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiY2hhbmdlZCIK
KyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3
aGVlbCIsCisgICAgICAgICAgICAgICAgcGhhc2UgOiAiZW5kZWQiCisgICAgICAgICAgICB9LAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAg
ICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgICAgICBtb21lbnR1bVBoYXNlIDogImJl
Z2FuIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB0eXBl
IDogIndoZWVsIiwKKyAgICAgICAgICAgICAgICBkZWx0YVkgOiAtMTAwLAorICAgICAgICAgICAg
ICAgIG1vbWVudHVtUGhhc2UgOiAiY2hhbmdlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgdHlwZSA6ICJ3aGVlbCIsCisgICAgICAgICAgICAgICAgbW9t
ZW50dW1QaGFzZSA6ICJlbmRlZCIKKyAgICAgICAgICAgIH0KKyAgICAgICAgXTsKKworICAgICAg
ICBhd2FpdCBVSUhlbHBlci5tb3VzZVdoZWVsU2VxdWVuY2UoeyBldmVudHM6IGV2ZW50cyB9KTsK
KyAgICAgICAgY2hlY2tGb3JTY3JvbGwoKTsKICAgICB9CiAKICAgICBmdW5jdGlvbiBzZXR1cFRv
cExldmVsKCkKICAgICB7Ci0gICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpCisgICAgICAg
IGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKICAgICAgICAgICAgIHNldFRpbWVvdXQoc2Nyb2xs
VGVzdCwgMCk7Ci0gICAgCi0gICAgICAgIHNldFRpbWVvdXQoY2hlY2tGb3JTY3JvbGwsIDEwMDAp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgfQogPC9zY3JpcHQ+CiAgICAg
PGlmcmFtZSBpZD0idGFyZ2V0IiBzY3JvbGxpbmc9InllcyIgc3R5bGU9ImhlaWdodDogNDAwcHg7
IHdpZHRoOiA1MDBweDsiIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdGlsZWQtZHJhd2luZy9z
Y3JvbGxpbmcvd2hlZWwtZXZlbnRzLXdpdGgtbm8tZGVsdGEuaHRtbCBiL0xheW91dFRlc3RzL3Rp
bGVkLWRyYXdpbmcvc2Nyb2xsaW5nL3doZWVsLWV2ZW50cy13aXRoLW5vLWRlbHRhLmh0bWwKaW5k
ZXggNGUyMGU0YTIzYTNjZjg5YjZlN2E4MmMyOTkyOTk5MGI5NTliMjk1YS4uMmZkMjVlMDkxZWRh
NmNhYjBjZDk1ZDkzYTUxYzYwOGYzNzQ1MThiNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvdGls
ZWQtZHJhd2luZy9zY3JvbGxpbmcvd2hlZWwtZXZlbnRzLXdpdGgtbm8tZGVsdGEuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy93aGVlbC1ldmVudHMtd2l0aC1u
by1kZWx0YS5odG1sCkBAIC02LDkgKzYsMTEgQEAgYm9keSB7CiB9CiA8L3N0eWxlPgogCis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
PgogCi1mdW5jdGlvbiBtb3VzZVdoZWVsRmlyZWQoZSkgeworZnVuY3Rpb24gbW91c2VXaGVlbEZp
cmVkKGUpCit7CiAgICAgaWYgKGUud2hlZWxEZWx0YSA9PSAwKQogICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnbG9nJykudGV4dENvbnRlbnQgPSAiRkFJTC4gV2UgZ290IGEgd2hlZWwg
ZXZlbnQgd2l0aCBhIGRlbHRhIG9mIDAuIjsKIApAQCAtMTYsMTUgKzE4LDQwIEBAIGZ1bmN0aW9u
IG1vdXNlV2hlZWxGaXJlZChlKSB7CiAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwog
fQogCi1mdW5jdGlvbiBzY3JvbGxUZXN0KCkKK2FzeW5jIGZ1bmN0aW9uIHNjcm9sbFRlc3QoKQog
ewotICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKDIwLCAyMCk7Ci0gICAgZXZlbnRTZW5kZXIu
bW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAn
bm9uZScpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1
bVBoYXNlcygwLCAwLCAnY2hhbmdlZCcsICdub25lJyk7Ci0gICAgZXZlbnRTZW5kZXIubW91c2VT
Y3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIDAsICdlbmRlZCcsICdub25lJyk7
Ci0gICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIC0xLCAnbm9uZScsICdiZWdpbicpOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAwLCAnbm9uZScsICdjb250aW51ZScpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAw
LCAnbm9uZScsICdlbmQnKTsKKyAgICBjb25zdCBldmVudHMgPSBbCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHR5cGUgOiAid2hlZWwiLAorICAgICAgICAgICAgdmlld1ggOiAyMCwKKyAgICAgICAg
ICAgIHZpZXdZIDogMjAsCisgICAgICAgICAgICBkZWx0YVkgOiAtMTAsCisgICAgICAgICAgICBw
aGFzZSA6ICJiZWdhbiIKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZSA6
ICJ3aGVlbCIsCisgICAgICAgICAgICBwaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAorICAg
ICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIHBoYXNlIDog
ImVuZGVkIgorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVs
IiwKKyAgICAgICAgICAgIGRlbHRhWSA6IC0xMCwKKyAgICAgICAgICAgIG1vbWVudHVtUGhhc2Ug
OiAiYmVnYW4iCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGUgOiAid2hl
ZWwiLAorICAgICAgICAgICAgbW9tZW50dW1QaGFzZSA6ICJjaGFuZ2VkIgorICAgICAgICB9LAor
ICAgICAgICB7CisgICAgICAgICAgICB0eXBlIDogIndoZWVsIiwKKyAgICAgICAgICAgIG1vbWVu
dHVtUGhhc2UgOiAiZW5kZWQiCisgICAgICAgIH0KKyAgICBdOworCisgICAgYXdhaXQgVUlIZWxw
ZXIubW91c2VXaGVlbFNlcXVlbmNlKHsgZXZlbnRzOiBldmVudHMgfSk7CiB9CiAKIGZ1bmN0aW9u
IGxvYWRlZCgpCg==
</data>
<flag name="review"
          id="468316"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
    <flag name="commit-queue"
          id="468341"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>