<?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>215417</bug_id>
          
          <creation_ts>2020-08-12 10:43:08 -0700</creation_ts>
          <short_desc>Add support for suspending / resuming an OfflineAudioContext</short_desc>
          <delta_ts>2020-08-14 13:28:23 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=215481</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>212611</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>clark_wang</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1679762</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-12 10:43:08 -0700</bug_when>
    <thetext>Add support for suspending / resuming an OfflineAudioContext.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679763</commentid>
    <comment_count>1</comment_count>
      <attachid>406464</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-12 10:44:02 -0700</bug_when>
    <thetext>Created attachment 406464
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680102</commentid>
    <comment_count>2</comment_count>
      <attachid>406547</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-13 15:26:49 -0700</bug_when>
    <thetext>Created attachment 406547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680127</commentid>
    <comment_count>3</comment_count>
      <attachid>406551</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-13 16:01:56 -0700</bug_when>
    <thetext>Created attachment 406551
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680141</commentid>
    <comment_count>4</comment_count>
      <attachid>406552</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-13 16:10:04 -0700</bug_when>
    <thetext>Created attachment 406552
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680376</commentid>
    <comment_count>5</comment_count>
      <attachid>406552</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-08-14 11:31:55 -0700</bug_when>
    <thetext>Comment on attachment 406552
Patch

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

&gt; Source/WebCore/Modules/webaudio/BaseAudioContext.cpp:659
&gt;      // Don&apos;t allow regular lock in real-time audio thread.

This comment is not accurate when shouldAllowLockingOnAudioThread == ShouldAllowLockingOnAudioThread::Yes

&gt; Source/WebCore/Modules/webaudio/BaseAudioContext.h:208
&gt; +    enum class ShouldAllowLockingOnAudioThread { No, Yes };

It seems like there should be a comment here with a stern warning about using this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680409</commentid>
    <comment_count>6</comment_count>
      <attachid>406615</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-08-14 12:41:10 -0700</bug_when>
    <thetext>Created attachment 406615
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680414</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-14 13:27:12 -0700</bug_when>
    <thetext>Committed r265701: &lt;https://trac.webkit.org/changeset/265701&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 406615.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680415</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-14 13:28:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/67093628&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406464</attachid>
            <date>2020-08-12 10:44:02 -0700</date>
            <delta_ts>2020-08-13 15:26:48 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>215417_wip.patch</filename>
            <type>text/plain</type>
            <size>22662</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0
dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggZWFmOWIwZTFkMDEuLjMzNTExZDhkNWU3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMTE0LDcgKzExNCw3IEBAIFBBU1MgT2ZmbGlu
ZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRl
cmZhY2UgcHJvdG90CiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBleGlzdGVu
Y2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2Nv
cGFibGVzIHByb3BlcnR5IAogUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3Bl
cmF0aW9uIHN0YXJ0UmVuZGVyaW5nKCkgCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBvcGVyYXRpb24gcmVzdW1lKCkgCi1GQUlMIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJm
YWNlOiBvcGVyYXRpb24gc3VzcGVuZChkb3VibGUpIGFzc2VydF9lcXVhbHM6IHByb3BlcnR5IGhh
cyB3cm9uZyAubGVuZ3RoIGV4cGVjdGVkIDEgYnV0IGdvdCAwCitQQVNTIE9mZmxpbmVBdWRpb0Nv
bnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gc3VzcGVuZChkb3VibGUpIAogUEFTUyBPZmZsaW5l
QXVkaW9Db250ZXh0IGludGVyZmFjZTogYXR0cmlidXRlIGxlbmd0aCAKIFBBU1MgT2ZmbGluZUF1
ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBvbmNvbXBsZXRlIAogUEFTUyBPZmZsaW5l
QXVkaW9Db250ZXh0IG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IE9mZmxpbmVBdWRp
b0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvYXVkaW9jb250ZXh0
LXN1c3BlbmQtcmVzdW1lLWV4cGVjdGVkLnR4dAppbmRleCA4OGE2MDA4MjQwZS4uNTJkOTU4YzBm
MDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRp
b2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
YXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0
ZWQudHh0CkBAIC0xMCwxOSArMTAsMTkgQEAgUEFTUyAgIG9mZmxpbmVDb250ZXh0ID0gbmV3IE9m
ZmxpbmVBdWRpb0NvbnRleHQoMSwgNDQxMDAsIDQ0MTAwKSBkaWQgbm90IHRocm93IGEKIFBBU1Mg
ICBvZmZsaW5lQ29udGV4dC5zdGF0ZSBpcyBlcXVhbCB0byBzdXNwZW5kZWQuIAogUEFTUyAgIHAx
ID0gb2ZmbGluZUNvbnRleHQuc3VzcGVuZCgpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAK
IFBBU1MgICBwMSBpbnN0YW5jZW9mIFByb21pc2UgaXMgdHJ1ZS4gCi1QQVNTICAgcDEgcmVqZWN0
ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4uIAorUEFTUyAgIHAxIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIFR5cGVF
cnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuIAogUEFTUyA8IFt0ZXN0LXN1c3BlbmRdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QtcmVz
dW1lXSBUZXN0IHJlc3VtZSgpIGZvciBvZmZsaW5lIGNvbnRleHQgCiBQQVNTICAgcDIgPSBvZmZs
aW5lQ29udGV4dC5yZXN1bWUoKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAg
cDIgaW5zdGFuY2VvZiBQcm9taXNlIGlzIHRydWUuIAogUEFTUyAgIEFmdGVyIHJlc3VtZSwgb2Zm
bGluZUNvbnRleHQuc3RhdGUgaXMgZXF1YWwgdG8gc3VzcGVuZGVkLiAKLVBBU1MgICBwMiByZWpl
Y3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLi4gCitQQVNTICAgcDIgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52
YWxpZFN0YXRlRXJyb3I6IENhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRo
YXQgaGFzIG5vdCBzdGFydGVkLiAKIFBBU1MgPCBbdGVzdC1yZXN1bWVdIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QtYWZ0ZXItY2xvc2Vd
IFRlc3Qgc3RhdGUgYWZ0ZXIgY29udGV4dCBjbG9zZWQgCiBQQVNTICAgcDMgPSBvZmZsaW5lQ29u
dGV4dC5zdGFydFJlbmRlcmluZygpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1Mg
ICBBZnRlciBjbG9zZSwgb2ZmbGluZUNvbnRleHQuc3RhdGUgaXMgZXF1YWwgdG8gY2xvc2VkLiAK
LVBBU1MgICBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGgg
SW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uIAot
UEFTUyAgIG9mZmxpbmVDb250ZXh0LnJlc3VtZSgpIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIElu
dmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLiAKK1BB
U1MgICBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4gCitQQVNTICAgb2ZmbGluZUNvbnRleHQucmVz
dW1lKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IENhbm5vdCBy
ZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQgaGFzIG5vdCBzdGFydGVkLiAKIFBB
U1MgPCBbdGVzdC1hZnRlci1jbG9zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBh
c3NlcnRpb25zKSAKIFBBU1MgPiBbcmVzdW1lLXJ1bm5pbmctY29udGV4dF0gVGVzdCByZXN1bWlu
ZyBhIHJ1bm5pbmcgY29udGV4dCAKIFBBU1MgICBDcmVhdGUgb25saW5lIGNvbnRleHQgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25v
ZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25vZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0
LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0CmluZGV4IDg3N2E3MDI3M2VjLi5kZDU2YzQ0ZDkyOCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25vZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1k
aXNjb25uZWN0LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVk
aW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29ubmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVk
LnR4dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBV
bmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0K
IFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJkaXNj
b25uZWN0KEF1ZGlvUGFyYW0pIiAKIFBBU1MgRXhlY3V0aW5nICJkaXNjb25uZWN0KEF1ZGlvUGFy
YW0sIG91dHB1dCkiIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9k
ZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVy
Z2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0CmluZGV4IDk5Mjg5MDM3NWE1Li40ZDY5M2NlMWQx
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2Uv
YXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtY2hhbm5lbG1lcmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5lbG1lcmdlci1kaXNj
b25uZWN0LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJ
TCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGlu
dmFsaWQgc3RhdGUuCi0KIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1Mg
RXhlY3V0aW5nICJzaWxlbnQtZGlzY29ubmVjdCIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9sdmVyLXJl
c3BvbnNlLTQtY2hhbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUt
aW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0ZWQudHh0CmluZGV4IDFk
NzJjOTU0YTdkLi4zZGQ3YjZkNTVjMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2
ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNw
b25zZS00LWNoYW4tZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdF
OiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2Jq
ZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNz
YWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLgogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGlu
ZyAiaW5pdGlhbGl6ZSIgCkBAIC0yMywxMCArMjAsMTAgQEAgUEFTUyA+IFszLWNoYW5uZWwgaW5w
dXRdIDMtPjIgZG93bm1peCBwcm9kdWNpbmcgMi1jaGFubmVsIG91dHB1dAogUEFTUyA+IFs0LWNo
YW5uZWwgaW5wdXRdIDQtPjIgZG93bm1peCBwcm9kdWNpbmcgMi1jaGFubmVsIG91dHB1dCAKIFBB
U1MgPiBbNS4xLWNoYW5uZWwgaW5wdXRdIDUuMS0+MiBkb3dubWl4IHByb2R1Y2luZyAyLWNoYW5u
ZWwgb3V0cHV0IAogUEFTUyA+IFtkZWxheWVkIGJ1ZmZlciBzZXRdIERlbGF5ZWQgc2V0IG9mIDQt
Y2hhbm5lbCByZXNwb25zZSAKLUZBSUwgWCBPdXRwdXQgd2l0aCBkZWxheWVkIHNldHRpbmcgb2Yg
Y29udm9sdmVyIGJ1ZmZlciBzaG91bGQgaGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBk
aWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgPCBbZGVsYXllZCBidWZmZXIgc2V0XSAxIG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCB3
aXRoIGRlbGF5ZWQgc2V0dGluZyBvZiBjb252b2x2ZXIgYnVmZmVyIGlzIG5vdCBjb25zdGFudGx5
IDAgKGNvbnRhaW5zIDc2NyBkaWZmZXJlbnQgdmFsdWVzKS4gCitQQVNTIDwgW2RlbGF5ZWQgYnVm
ZmVyIHNldF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbY291bnQgMSwgMi1jaGFubmVsIGluXSAyLT4xIGRvd25taXggYmVjYXVzZSBjaGFubmVs
IGNvdW50IGlzIDEgCiBQQVNTID4gW2NvdW50IDEsIDQtY2hhbm5lbCBpbl0gNC0+MSBkb3dubWl4
IGJlY2F1c2UgY2hhbm5lbCBjb3VudCBpcyAxIAogUEFTUyA+IFtjb3VudCAxLCA1LjEtY2hhbm5l
bCBpbl0gNS4xLT4xIGRvd25taXggYmVjYXVzZSBjaGFubmVsIGNvdW50IGlzIDEgCi1GQUlMICMg
QVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEwIHRhc2tzIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgIyBBVURJVCBUQVNL
IFJVTk5FUiBGSU5JU0hFRDogMTAgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24t
YmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9w
YW5uZXItYXV0b21hdGlvbi1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggMDkyZjQzYTlkYjMuLmM4
MzIxZDY1OGEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNl
L3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4
dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhh
bmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KIFBB
U1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJTdGVyZW8g
cGFubmVyLnBvc2l0aW9uWCIgCiBQQVNTIEV4ZWN1dGluZyAiTW9ubyBwYW5uZXIucG9zaXRpb25Y
IiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlv
Q29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0Nv
bnRleHQuY3BwCmluZGV4IDVjYjhhZTZlNjUyLi43ZWM1ZjM2NTcwNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCkBAIC0x
MTQzLDYgKzExNDMsMTEgQEAgdm9pZCBCYXNlQXVkaW9Db250ZXh0OjpzdXNwZW5kUmVuZGVyaW5n
KERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiAgICAgfSk7CiB9CiAKK3ZvaWQg
QmFzZUF1ZGlvQ29udGV4dDo6ZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QpCit7CisgICAgc2V0
U3RhdGUoU3RhdGU6OlN1c3BlbmRlZCk7Cit9CisKIHZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6cmVz
dW1lUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7CiAgICAg
aWYgKGlzT2ZmbGluZUNvbnRleHQoKSB8fCBtX2lzU3RvcFNjaGVkdWxlZCkgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaAppbmRleCAw
NzllODY2YTc1NC4uOThhYTYxOTI4ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCkBAIC0xMjIsNiArMTIyLDggQEAgcHVibGlj
OgogCiAgICAgdm9pZCBpbmNyZW1lbnRBY3RpdmVTb3VyY2VDb3VudCgpOwogICAgIHZvaWQgZGVj
cmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsKKworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRTdXNw
ZW5kKCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICAKICAgICBFeGNlcHRpb25PcjxSZWY8QXVkaW9C
dWZmZXI+PiBjcmVhdGVCdWZmZXIodW5zaWduZWQgbnVtYmVyT2ZDaGFubmVscywgdW5zaWduZWQg
bGVuZ3RoLCBmbG9hdCBzYW1wbGVSYXRlKTsKIApAQCAtMTMzLDYgKzEzNSw4IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHN1c3BlbmRSZW5kZXJpbmcoRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwog
ICAgIHZvaWQgcmVzdW1lUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmKTsKIAor
ICAgIHZpcnR1YWwgdm9pZCBkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSk7CisKICAg
ICBBdWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJUYXJn
ZXQuZ2V0KCk7IH0KIAogICAgIHVzaW5nIFN0YXRlID0gQXVkaW9Db250ZXh0U3RhdGU7CkBAIC0z
MDksNyArMzEzLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgYm9vbCB3aWxsQmVnaW5QbGF5YmFjaygp
OwogCi0gICAgdm9pZCB1bmluaXRpYWxpemUoKTsKKyAgICB2aXJ0dWFsIHZvaWQgdW5pbml0aWFs
aXplKCk7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAgICBjb25zdCBjaGFyKiBsb2dD
bGFzc05hbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAiQmFzZUF1ZGlvQ29udGV4dCI7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29u
dGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Nv
bnRleHQuY3BwCmluZGV4IGEwN2M1ZTUxYzk2Li5lZTlkODVlYjBhNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuY3Bw
CkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiT2ZmbGluZUF1ZGlvQ29udGV4dC5oIgogCiAj
aW5jbHVkZSAiQXVkaW9CdWZmZXIuaCIKKyNpbmNsdWRlICJBdWRpb1V0aWxpdGllcy5oIgogI2lu
Y2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSlNBdWRpb0J1ZmZlci5oIgogI2luY2x1ZGUg
PHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC02NywxMCArNjgsNDEgQEAgRXhjZXB0aW9uT3I8
UmVmPE9mZmxpbmVBdWRpb0NvbnRleHQ+PiBPZmZsaW5lQXVkaW9Db250ZXh0OjpjcmVhdGUoU2Ny
aXB0RXhlY3V0aW8KICAgICByZXR1cm4gY3JlYXRlKGNvbnRleHQsIGNvbnRleHRPcHRpb25zLm51
bWJlck9mQ2hhbm5lbHMsIGNvbnRleHRPcHRpb25zLmxlbmd0aCwgY29udGV4dE9wdGlvbnMuc2Ft
cGxlUmF0ZSk7CiB9CiAKK3ZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6dW5pbml0aWFsaXplKCkK
K3sKKyAgICBCYXNlQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxpemUoKTsKKworICAgIFZlY3RvcjxS
ZWZQdHI8RGVmZXJyZWRQcm9taXNlPj4gcHJvbWlzZXNUb1JlamVjdDsKKworICAgIHsKKyAgICAg
ICAgQXV0b0xvY2tlciBsb2NrZXIoKnRoaXMpOworICAgICAgICBwcm9taXNlc1RvUmVqZWN0LnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkobV9zdXNwZW5kUmVxdWVzdHMuc2l6ZSgpKTsKKyAgICAgICAg
Zm9yIChhdXRvJiBwcm9taXNlIDogbV9zdXNwZW5kUmVxdWVzdHMudmFsdWVzKCkpCisgICAgICAg
ICAgICBwcm9taXNlc1RvUmVqZWN0LnVuY2hlY2tlZEFwcGVuZChwcm9taXNlKTsKKyAgICAgICAg
bV9zdXNwZW5kUmVxdWVzdHMuY2xlYXIoKTsKKyAgICB9CisKKyAgICBpZiAobV9wZW5kaW5nT2Zm
bGluZVJlbmRlcmluZ1Byb21pc2UpCisgICAgICAgIHByb21pc2VzVG9SZWplY3QuYXBwZW5kKHN0
ZDo6ZXhjaGFuZ2UobV9wZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2UsIG51bGxwdHIpKTsK
KworICAgIGZvciAoYXV0byYgcHJvbWlzZSA6IHByb21pc2VzVG9SZWplY3QpCisgICAgICAgIHBy
b21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMg
Z29pbmcgYXdheSJfcyB9KTsKK30KKwogdm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpzdGFydE9m
ZmxpbmVSZW5kZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQogewotICAgIGlm
IChpc1N0b3BwZWQoKSB8fCAhd2lsbEJlZ2luUGxheWJhY2soKSkgewotICAgICAgICBwcm9taXNl
LT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IgfSk7CisgICAgaWYgKGlzU3Rv
cHBlZCgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIkNvbnRleHQgaXMgc3RvcHBlZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIGlmIChtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZykgeworICAgICAgICBwcm9t
aXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJSZW5kZXJpbmcgd2Fz
IGFscmVhZHkgc3RhcnRlZCJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlm
ICghd2lsbEJlZ2luUGxheWJhY2soKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0
aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJSZWZ1c2luZyB0byBzdGFydCByZW5kZXJpbmcgZm9y
IHNlY3VyaXR5IHJlYXNvbnMiIH0pOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC04Miwx
MSArMTE0LDk0IEBAIHZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6c3RhcnRPZmZsaW5lUmVuZGVy
aW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKIAogICAgIG1ha2VQZW5kaW5nQWN0
aXZpdHkoKTsKICAgICBtX3BlbmRpbmdPZmZsaW5lUmVuZGVyaW5nUHJvbWlzZSA9IFdURk1vdmUo
cHJvbWlzZSk7CisgICAgbV9kaWRTdGFydE9mZmxpbmVSZW5kZXJpbmcgPSB0cnVlOworICAgIHNl
dFN0YXRlKFN0YXRlOjpSdW5uaW5nKTsKK30KKwordm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0Ojpz
dXNwZW5kT2ZmbGluZVJlbmRlcmluZyhkb3VibGUgc3VzcGVuZFRpbWUsIFJlZjxEZWZlcnJlZFBy
b21pc2U+JiYgcHJvbWlzZSkKK3sKKyAgICBpZiAoaXNTdG9wcGVkKCkpIHsKKyAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29udGV4dCBpcyBz
dG9wcGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKHN1c3BlbmRU
aW1lIDwgMCkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0
YXRlRXJyb3IsICJzdXNwZW5kVGltZSBjYW5ub3QgYmUgbmVnYXRpdmUiX3MgfSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBkb3VibGUgdG90YWxSZW5kZXJEdXJhdGlvbiA9IHJlbmRl
clRhcmdldCgpLT5sZW5ndGgoKSAvIHNhbXBsZVJhdGUoKTsKKyAgICBpZiAodG90YWxSZW5kZXJE
dXJhdGlvbiA8PSBzdXNwZW5kVGltZSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0
aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJzdXNwZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0
aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbiJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIHNpemVfdCBmcmFtZSA9IEF1ZGlvVXRpbGl0aWVzOjp0aW1lVG9TYW1wbGVGcmFt
ZShzdXNwZW5kVGltZSwgc2FtcGxlUmF0ZSgpKTsKKyAgICBpZiAoZnJhbWUgPCBjdXJyZW50U2Ft
cGxlRnJhbWUoKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxp
ZFN0YXRlRXJyb3IsICJTdXNwZW5zaW9uIGZyYW1lIGlzIGVhcmxpZXIgdGhhbiBjdXJyZW50IGZy
YW1lIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQXV0b0xvY2tlciBsb2Nr
ZXIoKnRoaXMpOworICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9zdXNwZW5kUmVxdWVzdHMuYWRkKGZy
YW1lLCBwcm9taXNlLnB0cigpKTsKKyAgICBpZiAoIWFkZFJlc3VsdC5pc05ld0VudHJ5KSB7Cisg
ICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRo
ZXJlIGlzIGFscmVhZHkgYSBwZW5kaW5nIHN1c3BlbmQgcmVxdWVzdCBhdCB0aGlzIGZyYW1lIl9z
IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorfQorCit2b2lkIE9mZmxpbmVBdWRpb0NvbnRl
eHQ6OnJlc3VtZU9mZmxpbmVSZW5kZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNl
KQoreworICAgIGlmICghbV9kaWRTdGFydE9mZmxpbmVSZW5kZXJpbmcpIHsKKyAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ2Fubm90IHJlc3Vt
ZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90IHN0YXJ0ZWQiX3MgfSk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisgICAgaWYgKGlzQ2xvc2VkKCkpIHsKKyAgICAgICAgcHJv
bWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ2Fubm90IHJlc3Vt
ZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBpcyBjbG9zZWQiX3MgfSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisgICAgaWYgKHN0YXRlKCkgPT0gQXVkaW9Db250ZXh0U3RhdGU6OlJ1
bm5pbmcpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZSgpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorICAgIEFTU0VSVChzdGF0ZSgpID09IEF1ZGlvQ29udGV4dFN0YXRlOjpTdXNwZW5kZWQp
OworCisgICAgYXV0byByZXN1bHQgPSBkZXN0aW5hdGlvbigpLT5zdGFydFJlbmRlcmluZygpOwor
ICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0
KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgbWFrZVBlbmRpbmdBY3Rpdml0eSgpOwogICAgIHNldFN0YXRlKFN0YXRlOjpSdW5uaW5nKTsK
KyAgICBwcm9taXNlLT5yZXNvbHZlKCk7Cit9CisKK2Jvb2wgT2ZmbGluZUF1ZGlvQ29udGV4dDo6
c2hvdWxkU3VzcGVuZCgpCit7CisgICAgQVNTRVJUKGlzQXVkaW9UaHJlYWQoKSk7CisgICAgQXV0
b0xvY2tlciBsb2NrZXIoKnRoaXMpOworICAgIHJldHVybiBtX3N1c3BlbmRSZXF1ZXN0cy5jb250
YWlucyhjdXJyZW50U2FtcGxlRnJhbWUoKSk7Cit9CisKK3ZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4
dDo6ZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QgZnJhbWUpCit7CisgICAgQmFzZUF1ZGlvQ29u
dGV4dDo6ZGlkU3VzcGVuZFJlbmRlcmluZyhmcmFtZSk7CisKKyAgICBSZWZQdHI8RGVmZXJyZWRQ
cm9taXNlPiBwcm9taXNlOworICAgIHsKKyAgICAgICAgQXV0b0xvY2tlciBsb2NrZXIoKnRoaXMp
OworICAgICAgICBwcm9taXNlID0gbV9zdXNwZW5kUmVxdWVzdHMudGFrZShmcmFtZSk7CisgICAg
fQorICAgIEFTU0VSVChwcm9taXNlKTsKKyAgICBpZiAocHJvbWlzZSkKKyAgICAgICAgcHJvbWlz
ZS0+cmVzb2x2ZSgpOwogfQogCiB2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OmRpZEZpbmlzaE9m
ZmxpbmVSZW5kZXJpbmcoRXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVmZmVyPj4mJiByZXN1bHQpCiB7
CisgICAgbV9kaWRTdGFydE9mZmxpbmVSZW5kZXJpbmcgPSBmYWxzZTsKKwogICAgIGlmICghbV9w
ZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2UpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQu
aAppbmRleCA4YmYwYTNkMDJhOC4uMTk2ZWE1NzE2NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCkBAIC0yNyw2ICsy
Nyw5IEBACiAjaW5jbHVkZSAiQmFzZUF1ZGlvQ29udGV4dC5oIgogI2luY2x1ZGUgIkpTRE9NUHJv
bWlzZURlZmVycmVkLmgiCiAjaW5jbHVkZSAiT2ZmbGluZUF1ZGlvQ29udGV4dE9wdGlvbnMuaCIK
KyNpbmNsdWRlICJPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCIKKyNpbmNsdWRlIDx3dGYv
SGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IApAQCAtMzgsMTUgKzQxLDI0IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVm
PE9mZmxpbmVBdWRpb0NvbnRleHQ+PiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIGNv
bnN0IE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zJik7CiAKICAgICB2b2lkIHN0YXJ0T2ZmbGlu
ZVJlbmRlcmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsKKyAgICB2b2lkIHN1c3BlbmRPZmZs
aW5lUmVuZGVyaW5nKGRvdWJsZSBzdXNwZW5kVGltZSwgUmVmPERlZmVycmVkUHJvbWlzZT4mJik7
CisgICAgdm9pZCByZXN1bWVPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYp
OwogCiAgICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7CisgICAgYm9vbCBzaG91bGRTdXNwZW5k
KCkgZmluYWw7CisKKyAgICBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUqIGRlc3RpbmF0aW9u
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKj4oQmFz
ZUF1ZGlvQ29udGV4dDo6ZGVzdGluYXRpb24oKSk7IH0KIAogcHJpdmF0ZToKICAgICBPZmZsaW5l
QXVkaW9Db250ZXh0KERvY3VtZW50JiwgQXVkaW9CdWZmZXIqIHJlbmRlclRhcmdldCk7CiAKICAg
ICB2b2lkIGRpZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmcoRXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVm
ZmVyPj4mJikgZmluYWw7CisgICAgdm9pZCBkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFt
ZSkgZmluYWw7CisgICAgdm9pZCB1bmluaXRpYWxpemUoKSBmaW5hbDsKIAogICAgIFJlZlB0cjxE
ZWZlcnJlZFByb21pc2U+IG1fcGVuZGluZ09mZmxpbmVSZW5kZXJpbmdQcm9taXNlOworICAgIEhh
c2hNYXA8dW5zaWduZWQgLyogZnJhbWUgKi8sIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+LCBXVEY6
OkludEhhc2g8dW5zaWduZWQ+LCBXVEY6OlVuc2lnbmVkV2l0aFplcm9LZXlIYXNoVHJhaXRzPHVu
c2lnbmVkPj4gbV9zdXNwZW5kUmVxdWVzdHM7CisgICAgYm9vbCBtX2RpZFN0YXJ0T2ZmbGluZVJl
bmRlcmluZyB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0
LmlkbAppbmRleCA2ZWQwNGY3MzQwOC4uNTY4YzhjMWY3OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbApAQCAt
MzIsOCArMzIsOCBAQAogICAgIAogICAgIFtJbXBsZW1lbnRlZEFzPXN0YXJ0T2ZmbGluZVJlbmRl
cmluZ10gUHJvbWlzZTxBdWRpb0J1ZmZlcj4gc3RhcnRSZW5kZXJpbmcoKTsKIAotICAgIFtJbXBs
ZW1lbnRlZEFzPXJlc3VtZVJlbmRlcmluZ10gUHJvbWlzZTx2b2lkPiByZXN1bWUoKTsKLSAgICBb
SW1wbGVtZW50ZWRBcz1zdXNwZW5kUmVuZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHN1c3BlbmQoKTsg
Ly8gRklYTUU6IE1pc3Npbmcgc3VzcGVuZFRpbWUgcGFyYW1ldGVyLgorICAgIFtJbXBsZW1lbnRl
ZEFzPXJlc3VtZU9mZmxpbmVSZW5kZXJpbmddIFByb21pc2U8dm9pZD4gcmVzdW1lKCk7CisgICAg
W0ltcGxlbWVudGVkQXM9c3VzcGVuZE9mZmxpbmVSZW5kZXJpbmddIFByb21pc2U8dm9pZD4gc3Vz
cGVuZChkb3VibGUgc3VzcGVuZFRpbWUpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgbGVuZ3RoOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKaW5kZXggNTNj
OWM2OTFkYjYuLmIwZWFhZTBhZmU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCkBA
IC00NCw3ICs0NCw3IEBAIGNvbnN0IHNpemVfdCByZW5kZXJRdWFudHVtU2l6ZSA9IDEyODsKIE9m
ZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKEJh
c2VBdWRpb0NvbnRleHQmIGNvbnRleHQsIEF1ZGlvQnVmZmVyKiByZW5kZXJUYXJnZXQpCiAgICAg
OiBBdWRpb0Rlc3RpbmF0aW9uTm9kZShjb250ZXh0KQogICAgICwgbV9yZW5kZXJUYXJnZXQocmVu
ZGVyVGFyZ2V0KQotICAgICwgbV9zdGFydGVkUmVuZGVyaW5nKGZhbHNlKQorICAgICwgbV9mcmFt
ZXNUb1Byb2Nlc3MocmVuZGVyVGFyZ2V0LT5sZW5ndGgoKSkKIHsKICAgICBtX3JlbmRlckJ1cyA9
IEF1ZGlvQnVzOjpjcmVhdGUocmVuZGVyVGFyZ2V0LT5udW1iZXJPZkNoYW5uZWxzKCksIHJlbmRl
clF1YW50dW1TaXplKTsKIH0KQEAgLTkyLDQ5ICs5Miw2MyBAQCBFeGNlcHRpb25Pcjx2b2lkPiBP
ZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6OnN0YXJ0UmVuZGVyaW5nKCkKICAgICAvLyBGSVhN
RTogU2hvdWxkIHdlIGNhbGwgbGF6eUluaXRpYWxpemUgaGVyZT8KICAgICAvLyBGSVhNRTogV2Ug
c2hvdWxkIHByb2JhYmx5IGxpbWl0IHRoZSBudW1iZXIgb2YgdGhyZWFkcyB3ZSBjcmVhdGUgZm9y
IG9mZmxpbmUgYXVkaW8uCiAgICAgbV9yZW5kZXJUaHJlYWQgPSBUaHJlYWQ6OmNyZWF0ZSgib2Zm
bGluZSByZW5kZXJlciIsIFt0aGlzXSB7Ci0gICAgICAgIGJvb2wgZGlkUmVuZGVyID0gb2ZmbGlu
ZVJlbmRlcigpOwotICAgICAgICBjYWxsT25NYWluVGhyZWFkKFt0aGlzLCBkaWRSZW5kZXJdIHsK
LSAgICAgICAgICAgIGNvbnRleHQoKS5maW5pc2hlZFJlbmRlcmluZyhkaWRSZW5kZXIpOworICAg
ICAgICBhdXRvIHJlc3VsdCA9IG9mZmxpbmVSZW5kZXIoKTsKKyAgICAgICAgY2FsbE9uTWFpblRo
cmVhZChbdGhpcywgcmVzdWx0LCBjdXJyZW50U2FtcGxlRnJhbWUgPSBtX2N1cnJlbnRTYW1wbGVG
cmFtZV0geworICAgICAgICAgICAgbV9zdGFydGVkUmVuZGVyaW5nID0gZmFsc2U7CisgICAgICAg
ICAgICBzd2l0Y2ggKHJlc3VsdCkgeworICAgICAgICAgICAgY2FzZSBPZmZsaW5lUmVuZGVyUmVz
dWx0OjpGYWlsdXJlOgorICAgICAgICAgICAgICAgIGNvbnRleHQoKS5maW5pc2hlZFJlbmRlcmlu
ZyhmYWxzZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIE9mZmxp
bmVSZW5kZXJSZXN1bHQ6OkNvbXBsZXRlOgorICAgICAgICAgICAgICAgIGNvbnRleHQoKS5maW5p
c2hlZFJlbmRlcmluZyh0cnVlKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
IGNhc2UgT2ZmbGluZVJlbmRlclJlc3VsdDo6U3VzcGVuZGVkOgorICAgICAgICAgICAgICAgIGNv
bnRleHQoKS5kaWRTdXNwZW5kUmVuZGVyaW5nKGN1cnJlbnRTYW1wbGVGcmFtZSk7CisgICAgICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBkZXJlZigpOwogICAg
ICAgICB9KTsKICAgICB9LCBUaHJlYWRUeXBlOjpBdWRpbyk7CiAgICAgcmV0dXJuIHsgfTsKIH0K
IAotYm9vbCBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIoKQorYXV0
byBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIoKSAtPiBPZmZsaW5l
UmVuZGVyUmVzdWx0CiB7CiAgICAgQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CiAgICAgQVNTRVJU
KG1fcmVuZGVyQnVzLmdldCgpKTsKKwogICAgIGlmICghbV9yZW5kZXJCdXMuZ2V0KCkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkZh
aWx1cmU7CiAKICAgICBib29sIGlzQXVkaW9Db250ZXh0SW5pdGlhbGl6ZWQgPSBjb250ZXh0KCku
aXNJbml0aWFsaXplZCgpOwogICAgIC8vIEZJWE1FOiBXZSB1c2VkIHRvIGFzc2VydCB0aGF0IGlz
QXVkaW9Db250ZXh0SW5pdGlhbGl6ZWQgaXMgdHJ1ZSBoZXJlLgogICAgIC8vIEJ1dCBpdCdzIHRy
aXZpYWxseSBmYWxzZSBpbiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLW9mZmxpbmVhdWRpb2NvbnRleHQtaW50ZXJmYWNlL2N1cnJlbnQt
dGltZS1ibG9jay1zaXplLmh0bWwgCiAgICAgaWYgKCFpc0F1ZGlvQ29udGV4dEluaXRpYWxpemVk
KQotICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiBPZmZsaW5lUmVuZGVyUmVz
dWx0OjpGYWlsdXJlOwogCiAgICAgYm9vbCBjaGFubmVsc01hdGNoID0gbV9yZW5kZXJCdXMtPm51
bWJlck9mQ2hhbm5lbHMoKSA9PSBtX3JlbmRlclRhcmdldC0+bnVtYmVyT2ZDaGFubmVscygpOwog
ICAgIEFTU0VSVChjaGFubmVsc01hdGNoKTsKICAgICBpZiAoIWNoYW5uZWxzTWF0Y2gpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkZh
aWx1cmU7CiAKICAgICBib29sIGlzUmVuZGVyQnVzQWxsb2NhdGVkID0gbV9yZW5kZXJCdXMtPmxl
bmd0aCgpID49IHJlbmRlclF1YW50dW1TaXplOwogICAgIEFTU0VSVChpc1JlbmRlckJ1c0FsbG9j
YXRlZCk7CiAgICAgaWYgKCFpc1JlbmRlckJ1c0FsbG9jYXRlZCkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVyZTsKIAogICAg
IC8vIEJyZWFrIHVwIHRoZSByZW5kZXIgdGFyZ2V0IGludG8gc21hbGxlciAicmVuZGVyIHF1YW50
aXplIiBzaXplZCBwaWVjZXMuCiAgICAgLy8gUmVuZGVyIHVudGlsIHdlJ3JlIGZpbmlzaGVkLgot
ICAgIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MgPSBtX3JlbmRlclRhcmdldC0+bGVuZ3RoKCk7CiAg
ICAgdW5zaWduZWQgbnVtYmVyT2ZDaGFubmVscyA9IG1fcmVuZGVyVGFyZ2V0LT5udW1iZXJPZkNo
YW5uZWxzKCk7CiAKICAgICB1bnNpZ25lZCBuID0gMDsKLSAgICB3aGlsZSAoZnJhbWVzVG9Qcm9j
ZXNzID4gMCkgeworICAgIHdoaWxlIChtX2ZyYW1lc1RvUHJvY2VzcyA+IDApIHsKKyAgICAgICAg
aWYgKGNvbnRleHQoKS5zaG91bGRTdXNwZW5kKCkpCisgICAgICAgICAgICByZXR1cm4gT2ZmbGlu
ZVJlbmRlclJlc3VsdDo6U3VzcGVuZGVkOworCiAgICAgICAgIC8vIFJlbmRlciBvbmUgcmVuZGVy
IHF1YW50dW0uCiAgICAgICAgIHJlbmRlcigwLCBtX3JlbmRlckJ1cy5nZXQoKSwgcmVuZGVyUXVh
bnR1bVNpemUpOwogICAgICAgICAKLSAgICAgICAgc2l6ZV90IGZyYW1lc0F2YWlsYWJsZVRvQ29w
eSA9IHN0ZDo6bWluKGZyYW1lc1RvUHJvY2VzcywgcmVuZGVyUXVhbnR1bVNpemUpOworICAgICAg
ICBzaXplX3QgZnJhbWVzQXZhaWxhYmxlVG9Db3B5ID0gc3RkOjptaW4obV9mcmFtZXNUb1Byb2Nl
c3MsIHJlbmRlclF1YW50dW1TaXplKTsKICAgICAgICAgCiAgICAgICAgIGZvciAodW5zaWduZWQg
Y2hhbm5lbEluZGV4ID0gMDsgY2hhbm5lbEluZGV4IDwgbnVtYmVyT2ZDaGFubmVsczsgKytjaGFu
bmVsSW5kZXgpIHsKICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBzb3VyY2UgPSBtX3JlbmRlckJ1
cy0+Y2hhbm5lbChjaGFubmVsSW5kZXgpLT5kYXRhKCk7CkBAIC0xNDMsMTAgKzE1NywxMCBAQCBi
b29sIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6b2ZmbGluZVJlbmRlcigpCiAgICAgICAg
IH0KICAgICAgICAgCiAgICAgICAgIG4gKz0gZnJhbWVzQXZhaWxhYmxlVG9Db3B5OwotICAgICAg
ICBmcmFtZXNUb1Byb2Nlc3MgLT0gZnJhbWVzQXZhaWxhYmxlVG9Db3B5OworICAgICAgICBtX2Zy
YW1lc1RvUHJvY2VzcyAtPSBmcmFtZXNBdmFpbGFibGVUb0NvcHk7CiAgICAgfQogCi0gICAgcmV0
dXJuIHRydWU7CisgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkNvbXBsZXRlOwogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaAppbmRleCA0
NmNmMzgwYTkxOS4uM2ZjOGZlNDIzMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaApAQCAt
NTAsMTMgKzUwLDE3IEBAIHB1YmxpYzoKIAogICAgIC8vIEF1ZGlvRGVzdGluYXRpb25Ob2RlCiAg
ICAgdm9pZCBlbmFibGVJbnB1dChjb25zdCBTdHJpbmcmKSBvdmVycmlkZSB7IH0KLSAgICBFeGNl
cHRpb25Pcjx2b2lkPiBzdGFydFJlbmRlcmluZygpIG92ZXJyaWRlOworICAgIEV4Y2VwdGlvbk9y
PHZvaWQ+IHN0YXJ0UmVuZGVyaW5nKCkgZmluYWw7CiAKICAgICBmbG9hdCBzYW1wbGVSYXRlKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gbV9yZW5kZXJUYXJnZXQtPnNhbXBsZVJhdGUoKTsgfQogCiBw
cml2YXRlOgogICAgIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZShCYXNlQXVkaW9Db250ZXh0
JiwgQXVkaW9CdWZmZXIqIHJlbmRlclRhcmdldCk7CiAKKyAgICBlbnVtIGNsYXNzIE9mZmxpbmVS
ZW5kZXJSZXN1bHQgeyBGYWlsdXJlLCBTdXNwZW5kZWQsIENvbXBsZXRlIH07CisgICAgT2ZmbGlu
ZVJlbmRlclJlc3VsdCBvZmZsaW5lUmVuZGVyKCk7CisgICAgdm9pZCBub3RpZnlPZmZsaW5lUmVu
ZGVyaW5nU3VzcGVuZGVkKCk7CisKICAgICAvLyBUaGlzIEF1ZGlvTm9kZSByZW5kZXJzIGludG8g
dGhpcyBBdWRpb0J1ZmZlci4KICAgICBSZWZQdHI8QXVkaW9CdWZmZXI+IG1fcmVuZGVyVGFyZ2V0
OwogICAgIApAQCAtNjUsOCArNjksOCBAQCBwcml2YXRlOgogICAgIAogICAgIC8vIFJlbmRlcmlu
ZyB0aHJlYWQuCiAgICAgUmVmUHRyPFRocmVhZD4gbV9yZW5kZXJUaHJlYWQ7Ci0gICAgYm9vbCBt
X3N0YXJ0ZWRSZW5kZXJpbmc7Ci0gICAgYm9vbCBvZmZsaW5lUmVuZGVyKCk7CisgICAgc2l6ZV90
IG1fZnJhbWVzVG9Qcm9jZXNzOworICAgIGJvb2wgbV9zdGFydGVkUmVuZGVyaW5nIHsgZmFsc2Ug
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406547</attachid>
            <date>2020-08-13 15:26:49 -0700</date>
            <delta_ts>2020-08-13 16:01:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215417-20200813152649.patch</filename>
            <type>text/plain</type>
            <size>187095</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYThlNjYyMmE1NGM3MDgw
NGQ1ODI2MDRlZmFiNGI2NWU5Mzk4OTBjMy4uMTE4YTRjZDM4MDExNGJlYjEyYmE3MGMxOGQzNGIw
Mzg0YmYzZmU3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA4LTEzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1
c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Igc3VzcGVu
ZGluZyAvIHJlc3VtaW5nIGFuIE9mZmxpbmVBdWRpb0NvbnRleHQsIGFzIHBlcjoKKyAgICAgICAg
LSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1vZmZsaW5lYXVkaW9jb250ZXh0
LXN1c3BlbmQKKyAgICAgICAgLSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1v
ZmZsaW5lYXVkaW9jb250ZXh0LXJlc3VtZQorCisgICAgICAgIFRlc3RzOiB3ZWJhdWRpby9vZmZs
aW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwKKyAgICAgICAgICAgICAg
IHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVy
Lmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCisgICAgICAg
ICAgICAgICB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVl
bmNlLmh0bWwKKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVy
aW5nKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkJhc2VBdWRpb0NvbnRleHQ6OnNob3VsZFN1c3BlbmQpOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxpemUpOgorICAgICAgICAoV2Vi
Q29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c3RhcnRPZmZsaW5lUmVuZGVyaW5nKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnN1c3BlbmRPZmZsaW5lUmVuZGVyaW5n
KToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnJlc3VtZU9mZmxpbmVS
ZW5kZXJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c2hvdWxk
U3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRTdXNw
ZW5kUmVuZGVyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OmRp
ZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmcpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2Zm
bGluZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1
ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvRGVzdGlu
YXRpb25Ob2RlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpzdGFydFJlbmRlcmluZyk6CisgICAgICAg
IChXZWJDb3JlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIpOgor
ICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmg6
CisKIDIwMjAtMDgtMTMgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAg
ICAgICAgIFttYWNPU10gWm9vbWVkLWluIHNlYXJjaCBmaWVsZCBpcyBjbGlwcGVkIG91dApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHAKaW5kZXggNWNiOGFlNmU2NTJlZWU2MzkyNzZkY2RiYTI0YzI1MTQ5NGE0YWJmZi4uN2VjNWYz
NjU3MDQ1NTk4ZTM5OWIxMDRhNDQ1MDllYmUzNThiMzkyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCkBAIC0xMTQzLDYg
KzExNDMsMTEgQEAgdm9pZCBCYXNlQXVkaW9Db250ZXh0OjpzdXNwZW5kUmVuZGVyaW5nKERPTVBy
b21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiAgICAgfSk7CiB9CiAKK3ZvaWQgQmFzZUF1
ZGlvQ29udGV4dDo6ZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QpCit7CisgICAgc2V0U3RhdGUo
U3RhdGU6OlN1c3BlbmRlZCk7Cit9CisKIHZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6cmVzdW1lUmVu
ZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7CiAgICAgaWYgKGlz
T2ZmbGluZUNvbnRleHQoKSB8fCBtX2lzU3RvcFNjaGVkdWxlZCkgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaAppbmRleCAwNzllODY2
YTc1NDUzNjE2NzM4OTkzYmQxYzYwODUxNjUyMDU0MDA2Li45OGFhNjE5MjhmMTUyMzJlYTk2ZjVj
ZDhlZmIyOTUwNjgxMTExNTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaApAQCAtMTIyLDYgKzEyMiw4IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgaW5jcmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsKICAgICB2b2lkIGRlY3JlbWVu
dEFjdGl2ZVNvdXJjZUNvdW50KCk7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkU3VzcGVuZCgp
IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgCiAgICAgRXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVmZmVy
Pj4gY3JlYXRlQnVmZmVyKHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMsIHVuc2lnbmVkIGxlbmd0
aCwgZmxvYXQgc2FtcGxlUmF0ZSk7CiAKQEAgLTEzMyw2ICsxMzUsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzdXNwZW5kUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmKTsKICAgICB2
b2lkIHJlc3VtZVJlbmRlcmluZyhET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CiAKKyAgICB2
aXJ0dWFsIHZvaWQgZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QgZnJhbWUpOworCiAgICAgQXVk
aW9CdWZmZXIqIHJlbmRlclRhcmdldCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVuZGVyVGFyZ2V0Lmdl
dCgpOyB9CiAKICAgICB1c2luZyBTdGF0ZSA9IEF1ZGlvQ29udGV4dFN0YXRlOwpAQCAtMzA5LDcg
KzMxMyw3IEBAIHByb3RlY3RlZDoKIAogICAgIGJvb2wgd2lsbEJlZ2luUGxheWJhY2soKTsKIAot
ICAgIHZvaWQgdW5pbml0aWFsaXplKCk7CisgICAgdmlydHVhbCB2b2lkIHVuaW5pdGlhbGl6ZSgp
OwogCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAgICAgY29uc3QgY2hhciogbG9nQ2xhc3NO
YW1lKCkgY29uc3QgZmluYWwgeyByZXR1cm4gIkJhc2VBdWRpb0NvbnRleHQiOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0
LmNwcAppbmRleCBhMDdjNWU1MWM5NjY3OGQzMWQxOTA2OTE2NDE0NWMyOGIyMzY2Y2JiLi5lYTkx
NmRlZDJkMzc4MTBhM2ZiYmYyZTVjNDZjMWExZDBjMzUzM2JlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHAKQEAg
LTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJPZmZsaW5lQXVkaW9Db250ZXh0LmgiCiAKICNpbmNs
dWRlICJBdWRpb0J1ZmZlci5oIgorI2luY2x1ZGUgIkF1ZGlvVXRpbGl0aWVzLmgiCiAjaW5jbHVk
ZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJKU0F1ZGlvQnVmZmVyLmgiCiAjaW5jbHVkZSA8d3Rm
L0lzb01hbGxvY0lubGluZXMuaD4KQEAgLTY3LDEzICs2OCw0NiBAQCBFeGNlcHRpb25PcjxSZWY8
T2ZmbGluZUF1ZGlvQ29udGV4dD4+IE9mZmxpbmVBdWRpb0NvbnRleHQ6OmNyZWF0ZShTY3JpcHRF
eGVjdXRpbwogICAgIHJldHVybiBjcmVhdGUoY29udGV4dCwgY29udGV4dE9wdGlvbnMubnVtYmVy
T2ZDaGFubmVscywgY29udGV4dE9wdGlvbnMubGVuZ3RoLCBjb250ZXh0T3B0aW9ucy5zYW1wbGVS
YXRlKTsKIH0KIAordm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxpemUoKQorewor
ICAgIEJhc2VBdWRpb0NvbnRleHQ6OnVuaW5pdGlhbGl6ZSgpOworCisgICAgVmVjdG9yPFJlZlB0
cjxEZWZlcnJlZFByb21pc2U+PiBwcm9taXNlc1RvUmVqZWN0OworCisgICAgeworICAgICAgICBB
dXRvTG9ja2VyIGxvY2tlcigqdGhpcyk7CisgICAgICAgIHByb21pc2VzVG9SZWplY3QucmVzZXJ2
ZUluaXRpYWxDYXBhY2l0eShtX3N1c3BlbmRSZXF1ZXN0cy5zaXplKCkpOworICAgICAgICBmb3Ig
KGF1dG8mIHByb21pc2UgOiBtX3N1c3BlbmRSZXF1ZXN0cy52YWx1ZXMoKSkKKyAgICAgICAgICAg
IHByb21pc2VzVG9SZWplY3QudW5jaGVja2VkQXBwZW5kKHByb21pc2UpOworICAgICAgICBtX3N1
c3BlbmRSZXF1ZXN0cy5jbGVhcigpOworICAgIH0KKworICAgIGlmIChtX3BlbmRpbmdPZmZsaW5l
UmVuZGVyaW5nUHJvbWlzZSkKKyAgICAgICAgcHJvbWlzZXNUb1JlamVjdC5hcHBlbmQoc3RkOjpl
eGNoYW5nZShtX3BlbmRpbmdPZmZsaW5lUmVuZGVyaW5nUHJvbWlzZSwgbnVsbHB0cikpOworCisg
ICAgZm9yIChhdXRvJiBwcm9taXNlIDogcHJvbWlzZXNUb1JlamVjdCkKKyAgICAgICAgcHJvbWlz
ZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ29udGV4dCBpcyBnb2lu
ZyBhd2F5Il9zIH0pOworfQorCiB2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OnN0YXJ0T2ZmbGlu
ZVJlbmRlcmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiB7Ci0gICAgaWYgKGlz
U3RvcHBlZCgpIHx8ICF3aWxsQmVnaW5QbGF5YmFjaygpKSB7Ci0gICAgICAgIHByb21pc2UtPnJl
amVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciB9KTsKKyAgICBpZiAoaXNTdG9wcGVk
KCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yLCAiQ29udGV4dCBpcyBzdG9wcGVkIl9zIH0pOwogICAgICAgICByZXR1cm47CiAgICAgfQog
CisgICAgaWYgKG1fZGlkU3RhcnRPZmZsaW5lUmVuZGVyaW5nKSB7CisgICAgICAgIHByb21pc2Ut
PnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlJlbmRlcmluZyB3YXMgYWxy
ZWFkeSBzdGFydGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCF3
aWxsQmVnaW5QbGF5YmFjaygpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24g
eyBJbnZhbGlkU3RhdGVFcnJvciwgIlJlZnVzaW5nIHRvIHN0YXJ0IHJlbmRlcmluZyBmb3Igc2Vj
dXJpdHkgcmVhc29ucyIgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBsYXp5SW5p
dGlhbGl6ZSgpOworCiAgICAgYXV0byByZXN1bHQgPSBkZXN0aW5hdGlvbigpLT5zdGFydFJlbmRl
cmluZygpOwogICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpIHsKICAgICAgICAgcHJvbWlz
ZS0+cmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOwpAQCAtODIsMTEgKzExNiw5NSBA
QCB2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OnN0YXJ0T2ZmbGluZVJlbmRlcmluZyhSZWY8RGVm
ZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiAKICAgICBtYWtlUGVuZGluZ0FjdGl2aXR5KCk7CiAg
ICAgbV9wZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpOwor
ICAgIG1fZGlkU3RhcnRPZmZsaW5lUmVuZGVyaW5nID0gdHJ1ZTsKICAgICBzZXRTdGF0ZShTdGF0
ZTo6UnVubmluZyk7CiB9CiAKK3ZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6c3VzcGVuZE9mZmxp
bmVSZW5kZXJpbmcoZG91YmxlIHN1c3BlbmRUaW1lLCBSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHBy
b21pc2UpCit7CisgICAgaWYgKGlzU3RvcHBlZCgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVj
dChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgc3RvcHBlZCJfcyB9
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChzdXNwZW5kVGltZSA8IDApIHsK
KyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAi
c3VzcGVuZFRpbWUgY2Fubm90IGJlIG5lZ2F0aXZlIl9zIH0pOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgZG91YmxlIHRvdGFsUmVuZGVyRHVyYXRpb24gPSByZW5kZXJUYXJnZXQoKS0+
bGVuZ3RoKCkgLyBzYW1wbGVSYXRlKCk7CisgICAgaWYgKHRvdGFsUmVuZGVyRHVyYXRpb24gPD0g
c3VzcGVuZFRpbWUpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFs
aWRTdGF0ZUVycm9yLCAic3VzcGVuZFRpbWUgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiB0b3RhbCBy
ZW5kZXJpbmcgZHVyYXRpb24iX3MgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBz
aXplX3QgZnJhbWUgPSBBdWRpb1V0aWxpdGllczo6dGltZVRvU2FtcGxlRnJhbWUoc3VzcGVuZFRp
bWUsIHNhbXBsZVJhdGUoKSk7CisgICAgZnJhbWUgPSBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5v
ZGU6OnJlbmRlclF1YW50dW1TaXplICogKChmcmFtZSArIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZTo6cmVuZGVyUXVhbnR1bVNpemUgLSAxKSAvIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9k
ZTo6cmVuZGVyUXVhbnR1bVNpemUpOworICAgIGlmIChmcmFtZSA8IGN1cnJlbnRTYW1wbGVGcmFt
ZSgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVF
cnJvciwgIlN1c3BlbnNpb24gZnJhbWUgaXMgZWFybGllciB0aGFuIGN1cnJlbnQgZnJhbWUiX3Mg
fSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBBdXRvTG9ja2VyIGxvY2tlcigqdGhp
cyk7CisgICAgYXV0byBhZGRSZXN1bHQgPSBtX3N1c3BlbmRSZXF1ZXN0cy5hZGQoZnJhbWUsIHBy
b21pc2UucHRyKCkpOworICAgIGlmICghYWRkUmVzdWx0LmlzTmV3RW50cnkpIHsKKyAgICAgICAg
cHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiVGhlcmUgaXMg
YWxyZWFkeSBhIHBlbmRpbmcgc3VzcGVuZCByZXF1ZXN0IGF0IHRoaXMgZnJhbWUiX3MgfSk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9Cit9CisKK3ZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6cmVz
dW1lT2ZmbGluZVJlbmRlcmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCit7Cisg
ICAgaWYgKCFtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZykgeworICAgICAgICBwcm9taXNlLT5y
ZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJDYW5ub3QgcmVzdW1lIGFuIG9m
ZmxpbmUgYXVkaW8gY29udGV4dCB0aGF0IGhhcyBub3Qgc3RhcnRlZCJfcyB9KTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKyAgICBpZiAoaXNDbG9zZWQoKSkgeworICAgICAgICBwcm9taXNlLT5y
ZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJDYW5ub3QgcmVzdW1lIGFuIG9m
ZmxpbmUgYXVkaW8gY29udGV4dCB0aGF0IGlzIGNsb3NlZCJfcyB9KTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKyAgICBpZiAoc3RhdGUoKSA9PSBBdWRpb0NvbnRleHRTdGF0ZTo6UnVubmluZykg
eworICAgICAgICBwcm9taXNlLT5yZXNvbHZlKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9Cisg
ICAgQVNTRVJUKHN0YXRlKCkgPT0gQXVkaW9Db250ZXh0U3RhdGU6OlN1c3BlbmRlZCk7CisKKyAg
ICBhdXRvIHJlc3VsdCA9IGRlc3RpbmF0aW9uKCktPnN0YXJ0UmVuZGVyaW5nKCk7CisgICAgaWYg
KHJlc3VsdC5oYXNFeGNlcHRpb24oKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QocmVzdWx0
LnJlbGVhc2VFeGNlcHRpb24oKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtYWtl
UGVuZGluZ0FjdGl2aXR5KCk7CisgICAgc2V0U3RhdGUoU3RhdGU6OlJ1bm5pbmcpOworICAgIHBy
b21pc2UtPnJlc29sdmUoKTsKK30KKworYm9vbCBPZmZsaW5lQXVkaW9Db250ZXh0OjpzaG91bGRT
dXNwZW5kKCkKK3sKKyAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKKyAgICBBdXRvTG9ja2Vy
IGxvY2tlcigqdGhpcyk7CisgICAgcmV0dXJuIG1fc3VzcGVuZFJlcXVlc3RzLmNvbnRhaW5zKGN1
cnJlbnRTYW1wbGVGcmFtZSgpKTsKK30KKwordm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRT
dXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSkKK3sKKyAgICBCYXNlQXVkaW9Db250ZXh0Ojpk
aWRTdXNwZW5kUmVuZGVyaW5nKGZyYW1lKTsKKworICAgIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+
IHByb21pc2U7CisgICAgeworICAgICAgICBBdXRvTG9ja2VyIGxvY2tlcigqdGhpcyk7CisgICAg
ICAgIHByb21pc2UgPSBtX3N1c3BlbmRSZXF1ZXN0cy50YWtlKGZyYW1lKTsKKyAgICB9CisgICAg
QVNTRVJUKHByb21pc2UpOworICAgIGlmIChwcm9taXNlKQorICAgICAgICBwcm9taXNlLT5yZXNv
bHZlKCk7Cit9CisKIHZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6ZGlkRmluaXNoT2ZmbGluZVJl
bmRlcmluZyhFeGNlcHRpb25PcjxSZWY8QXVkaW9CdWZmZXI+PiYmIHJlc3VsdCkKIHsKKyAgICBt
X2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZyA9IGZhbHNlOworCiAgICAgaWYgKCFtX3BlbmRpbmdP
ZmZsaW5lUmVuZGVyaW5nUHJvbWlzZSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCmluZGV4
IDhiZjBhM2QwMmE4MzAyMmM2M2QxMTZlMTJlMjhhMjgwZGYzYWU1Y2YuLjE5NmVhNTcxNjc2NjFm
N2U3YTFjZDRkMjMyYzg4ZGUwMjZhMGNiMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCkBAIC0yNyw2ICsyNyw5IEBA
CiAjaW5jbHVkZSAiQmFzZUF1ZGlvQ29udGV4dC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURl
ZmVycmVkLmgiCiAjaW5jbHVkZSAiT2ZmbGluZUF1ZGlvQ29udGV4dE9wdGlvbnMuaCIKKyNpbmNs
dWRlICJPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaE1h
cC5oPgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAt
MzgsMTUgKzQxLDI0IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPE9mZmxp
bmVBdWRpb0NvbnRleHQ+PiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IE9m
ZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zJik7CiAKICAgICB2b2lkIHN0YXJ0T2ZmbGluZVJlbmRl
cmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsKKyAgICB2b2lkIHN1c3BlbmRPZmZsaW5lUmVu
ZGVyaW5nKGRvdWJsZSBzdXNwZW5kVGltZSwgUmVmPERlZmVycmVkUHJvbWlzZT4mJik7CisgICAg
dm9pZCByZXN1bWVPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYpOwogCiAg
ICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7CisgICAgYm9vbCBzaG91bGRTdXNwZW5kKCkgZmlu
YWw7CisKKyAgICBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUqIGRlc3RpbmF0aW9uKCkgeyBy
ZXR1cm4gc3RhdGljX2Nhc3Q8T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKj4oQmFzZUF1ZGlv
Q29udGV4dDo6ZGVzdGluYXRpb24oKSk7IH0KIAogcHJpdmF0ZToKICAgICBPZmZsaW5lQXVkaW9D
b250ZXh0KERvY3VtZW50JiwgQXVkaW9CdWZmZXIqIHJlbmRlclRhcmdldCk7CiAKICAgICB2b2lk
IGRpZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmcoRXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVmZmVyPj4m
JikgZmluYWw7CisgICAgdm9pZCBkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSkgZmlu
YWw7CisgICAgdm9pZCB1bmluaXRpYWxpemUoKSBmaW5hbDsKIAogICAgIFJlZlB0cjxEZWZlcnJl
ZFByb21pc2U+IG1fcGVuZGluZ09mZmxpbmVSZW5kZXJpbmdQcm9taXNlOworICAgIEhhc2hNYXA8
dW5zaWduZWQgLyogZnJhbWUgKi8sIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+LCBXVEY6OkludEhh
c2g8dW5zaWduZWQ+LCBXVEY6OlVuc2lnbmVkV2l0aFplcm9LZXlIYXNoVHJhaXRzPHVuc2lnbmVk
Pj4gbV9zdXNwZW5kUmVxdWVzdHM7CisgICAgYm9vbCBtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmlu
ZyB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbApp
bmRleCA2ZWQwNGY3MzQwODRjNjNiMWQzM2VmODZlYmNkYmI4ODcyZmVmN2JmLi41NjhjOGMxZjc5
OTEyNDk4MWZiYjNhZWY1YTRmZjdlNjg3MTViMWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTMyLDgg
KzMyLDggQEAKICAgICAKICAgICBbSW1wbGVtZW50ZWRBcz1zdGFydE9mZmxpbmVSZW5kZXJpbmdd
IFByb21pc2U8QXVkaW9CdWZmZXI+IHN0YXJ0UmVuZGVyaW5nKCk7CiAKLSAgICBbSW1wbGVtZW50
ZWRBcz1yZXN1bWVSZW5kZXJpbmddIFByb21pc2U8dm9pZD4gcmVzdW1lKCk7Ci0gICAgW0ltcGxl
bWVudGVkQXM9c3VzcGVuZFJlbmRlcmluZ10gUHJvbWlzZTx2b2lkPiBzdXNwZW5kKCk7IC8vIEZJ
WE1FOiBNaXNzaW5nIHN1c3BlbmRUaW1lIHBhcmFtZXRlci4KKyAgICBbSW1wbGVtZW50ZWRBcz1y
ZXN1bWVPZmZsaW5lUmVuZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHJlc3VtZSgpOworICAgIFtJbXBs
ZW1lbnRlZEFzPXN1c3BlbmRPZmZsaW5lUmVuZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHN1c3BlbmQo
ZG91YmxlIHN1c3BlbmRUaW1lKTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxlbmd0aDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCmluZGV4IDUzYzljNjkx
ZGI2MjlhOTlmYjFjMTg1ZTQ0MmU1ZWY3ODEwNDJkYzkuLjAwNGQxZDVjODQwNGM5Y2U4MTVhNTc5
ODRmODlmNTcxYjgyN2E1NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKQEAgLTM5
LDEyICszOSwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUpOwogICAgIAotY29uc3Qgc2l6ZV90
IHJlbmRlclF1YW50dW1TaXplID0gMTI4OyAgICAKK2NvbnN0IHNpemVfdCBPZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGU6OnJlbmRlclF1YW50dW1TaXplID0gMTI4OwogCiBPZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGU6Ok9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZShCYXNlQXVkaW9Db250
ZXh0JiBjb250ZXh0LCBBdWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KQogICAgIDogQXVkaW9EZXN0
aW5hdGlvbk5vZGUoY29udGV4dCkKICAgICAsIG1fcmVuZGVyVGFyZ2V0KHJlbmRlclRhcmdldCkK
LSAgICAsIG1fc3RhcnRlZFJlbmRlcmluZyhmYWxzZSkKKyAgICAsIG1fZnJhbWVzVG9Qcm9jZXNz
KHJlbmRlclRhcmdldC0+bGVuZ3RoKCkpCiB7CiAgICAgbV9yZW5kZXJCdXMgPSBBdWRpb0J1czo6
Y3JlYXRlKHJlbmRlclRhcmdldC0+bnVtYmVyT2ZDaGFubmVscygpLCByZW5kZXJRdWFudHVtU2l6
ZSk7CiB9CkBAIC05Miw0OSArOTIsNTkgQEAgRXhjZXB0aW9uT3I8dm9pZD4gT2ZmbGluZUF1ZGlv
RGVzdGluYXRpb25Ob2RlOjpzdGFydFJlbmRlcmluZygpCiAgICAgLy8gRklYTUU6IFNob3VsZCB3
ZSBjYWxsIGxhenlJbml0aWFsaXplIGhlcmU/CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBwcm9i
YWJseSBsaW1pdCB0aGUgbnVtYmVyIG9mIHRocmVhZHMgd2UgY3JlYXRlIGZvciBvZmZsaW5lIGF1
ZGlvLgogICAgIG1fcmVuZGVyVGhyZWFkID0gVGhyZWFkOjpjcmVhdGUoIm9mZmxpbmUgcmVuZGVy
ZXIiLCBbdGhpc10gewotICAgICAgICBib29sIGRpZFJlbmRlciA9IG9mZmxpbmVSZW5kZXIoKTsK
LSAgICAgICAgY2FsbE9uTWFpblRocmVhZChbdGhpcywgZGlkUmVuZGVyXSB7Ci0gICAgICAgICAg
ICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJpbmcoZGlkUmVuZGVyKTsKKyAgICAgICAgYXV0byBy
ZXN1bHQgPSBvZmZsaW5lUmVuZGVyKCk7CisgICAgICAgIGNhbGxPbk1haW5UaHJlYWQoW3RoaXMs
IHJlc3VsdCwgY3VycmVudFNhbXBsZUZyYW1lID0gbV9jdXJyZW50U2FtcGxlRnJhbWVdIHsKKyAg
ICAgICAgICAgIG1fc3RhcnRlZFJlbmRlcmluZyA9IGZhbHNlOworICAgICAgICAgICAgc3dpdGNo
IChyZXN1bHQpIHsKKyAgICAgICAgICAgIGNhc2UgT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVy
ZToKKyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJpbmcoZmFsc2UpOwor
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBPZmZsaW5lUmVuZGVyUmVz
dWx0OjpDb21wbGV0ZToKKyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJp
bmcodHJ1ZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIE9mZmxp
bmVSZW5kZXJSZXN1bHQ6OlN1c3BlbmRlZDoKKyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZGlk
U3VzcGVuZFJlbmRlcmluZyhjdXJyZW50U2FtcGxlRnJhbWUpOworICAgICAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICAgICAgfQogICAgICAgICAgICAgZGVyZWYoKTsKICAgICAgICAgfSk7CiAg
ICAgfSwgVGhyZWFkVHlwZTo6QXVkaW8pOwogICAgIHJldHVybiB7IH07CiB9CiAKLWJvb2wgT2Zm
bGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpvZmZsaW5lUmVuZGVyKCkKK2F1dG8gT2ZmbGluZUF1
ZGlvRGVzdGluYXRpb25Ob2RlOjpvZmZsaW5lUmVuZGVyKCkgLT4gT2ZmbGluZVJlbmRlclJlc3Vs
dAogewogICAgIEFTU0VSVCghaXNNYWluVGhyZWFkKCkpOwogICAgIEFTU0VSVChtX3JlbmRlckJ1
cy5nZXQoKSk7CisKICAgICBpZiAoIW1fcmVuZGVyQnVzLmdldCgpKQotICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIHJldHVybiBPZmZsaW5lUmVuZGVyUmVzdWx0OjpGYWlsdXJlOwogCi0g
ICAgYm9vbCBpc0F1ZGlvQ29udGV4dEluaXRpYWxpemVkID0gY29udGV4dCgpLmlzSW5pdGlhbGl6
ZWQoKTsKLSAgICAvLyBGSVhNRTogV2UgdXNlZCB0byBhc3NlcnQgdGhhdCBpc0F1ZGlvQ29udGV4
dEluaXRpYWxpemVkIGlzIHRydWUgaGVyZS4KLSAgICAvLyBCdXQgaXQncyB0cml2aWFsbHkgZmFs
c2UgaW4gaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1vZmZsaW5lYXVkaW9jb250ZXh0LWludGVyZmFjZS9jdXJyZW50LXRpbWUtYmxvY2st
c2l6ZS5odG1sIAotICAgIGlmICghaXNBdWRpb0NvbnRleHRJbml0aWFsaXplZCkKLSAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIFJFTEVBU0VfQVNTRVJUKGNvbnRleHQoKS5pc0luaXRpYWxpemVk
KCkpOwogCiAgICAgYm9vbCBjaGFubmVsc01hdGNoID0gbV9yZW5kZXJCdXMtPm51bWJlck9mQ2hh
bm5lbHMoKSA9PSBtX3JlbmRlclRhcmdldC0+bnVtYmVyT2ZDaGFubmVscygpOwogICAgIEFTU0VS
VChjaGFubmVsc01hdGNoKTsKICAgICBpZiAoIWNoYW5uZWxzTWF0Y2gpCi0gICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkZhaWx1cmU7CiAK
ICAgICBib29sIGlzUmVuZGVyQnVzQWxsb2NhdGVkID0gbV9yZW5kZXJCdXMtPmxlbmd0aCgpID49
IHJlbmRlclF1YW50dW1TaXplOwogICAgIEFTU0VSVChpc1JlbmRlckJ1c0FsbG9jYXRlZCk7CiAg
ICAgaWYgKCFpc1JlbmRlckJ1c0FsbG9jYXRlZCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
ICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVyZTsKIAogICAgIC8vIEJyZWFr
IHVwIHRoZSByZW5kZXIgdGFyZ2V0IGludG8gc21hbGxlciAicmVuZGVyIHF1YW50aXplIiBzaXpl
ZCBwaWVjZXMuCiAgICAgLy8gUmVuZGVyIHVudGlsIHdlJ3JlIGZpbmlzaGVkLgotICAgIHNpemVf
dCBmcmFtZXNUb1Byb2Nlc3MgPSBtX3JlbmRlclRhcmdldC0+bGVuZ3RoKCk7CiAgICAgdW5zaWdu
ZWQgbnVtYmVyT2ZDaGFubmVscyA9IG1fcmVuZGVyVGFyZ2V0LT5udW1iZXJPZkNoYW5uZWxzKCk7
CiAKICAgICB1bnNpZ25lZCBuID0gMDsKLSAgICB3aGlsZSAoZnJhbWVzVG9Qcm9jZXNzID4gMCkg
eworICAgIHdoaWxlIChtX2ZyYW1lc1RvUHJvY2VzcyA+IDApIHsKKyAgICAgICAgaWYgKGNvbnRl
eHQoKS5zaG91bGRTdXNwZW5kKCkpCisgICAgICAgICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJl
c3VsdDo6U3VzcGVuZGVkOworCiAgICAgICAgIC8vIFJlbmRlciBvbmUgcmVuZGVyIHF1YW50dW0u
CiAgICAgICAgIHJlbmRlcigwLCBtX3JlbmRlckJ1cy5nZXQoKSwgcmVuZGVyUXVhbnR1bVNpemUp
OwogICAgICAgICAKLSAgICAgICAgc2l6ZV90IGZyYW1lc0F2YWlsYWJsZVRvQ29weSA9IHN0ZDo6
bWluKGZyYW1lc1RvUHJvY2VzcywgcmVuZGVyUXVhbnR1bVNpemUpOworICAgICAgICBzaXplX3Qg
ZnJhbWVzQXZhaWxhYmxlVG9Db3B5ID0gc3RkOjptaW4obV9mcmFtZXNUb1Byb2Nlc3MsIHJlbmRl
clF1YW50dW1TaXplKTsKICAgICAgICAgCiAgICAgICAgIGZvciAodW5zaWduZWQgY2hhbm5lbElu
ZGV4ID0gMDsgY2hhbm5lbEluZGV4IDwgbnVtYmVyT2ZDaGFubmVsczsgKytjaGFubmVsSW5kZXgp
IHsKICAgICAgICAgICAgIGNvbnN0IGZsb2F0KiBzb3VyY2UgPSBtX3JlbmRlckJ1cy0+Y2hhbm5l
bChjaGFubmVsSW5kZXgpLT5kYXRhKCk7CkBAIC0xNDMsMTAgKzE1MywxMCBAQCBib29sIE9mZmxp
bmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6b2ZmbGluZVJlbmRlcigpCiAgICAgICAgIH0KICAgICAg
ICAgCiAgICAgICAgIG4gKz0gZnJhbWVzQXZhaWxhYmxlVG9Db3B5OwotICAgICAgICBmcmFtZXNU
b1Byb2Nlc3MgLT0gZnJhbWVzQXZhaWxhYmxlVG9Db3B5OworICAgICAgICBtX2ZyYW1lc1RvUHJv
Y2VzcyAtPSBmcmFtZXNBdmFpbGFibGVUb0NvcHk7CiAgICAgfQogCi0gICAgcmV0dXJuIHRydWU7
CisgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkNvbXBsZXRlOwogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaAppbmRleCA0NmNmMzgwYTkx
OTMzYTM3OTEzMzQ3NjJjZjU3MWY2ZTU5OWQ4ZjY2Li40ZWJiYjgwNGQzNDFmMGE2YjJmOTY5Y2U1
OGFjMDk5NzBmNmRiNTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmgKQEAgLTUwLDEzICs1
MCwxOSBAQCBwdWJsaWM6CiAKICAgICAvLyBBdWRpb0Rlc3RpbmF0aW9uTm9kZQogICAgIHZvaWQg
ZW5hYmxlSW5wdXQoY29uc3QgU3RyaW5nJikgb3ZlcnJpZGUgeyB9Ci0gICAgRXhjZXB0aW9uT3I8
dm9pZD4gc3RhcnRSZW5kZXJpbmcoKSBvdmVycmlkZTsKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBz
dGFydFJlbmRlcmluZygpIGZpbmFsOwogCiAgICAgZmxvYXQgc2FtcGxlUmF0ZSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuIG1fcmVuZGVyVGFyZ2V0LT5zYW1wbGVSYXRlKCk7IH0KIAorICAgIHN0YXRp
YyBjb25zdCBzaXplX3QgcmVuZGVyUXVhbnR1bVNpemU7CisKIHByaXZhdGU6CiAgICAgT2ZmbGlu
ZUF1ZGlvRGVzdGluYXRpb25Ob2RlKEJhc2VBdWRpb0NvbnRleHQmLCBBdWRpb0J1ZmZlciogcmVu
ZGVyVGFyZ2V0KTsKIAorICAgIGVudW0gY2xhc3MgT2ZmbGluZVJlbmRlclJlc3VsdCB7IEZhaWx1
cmUsIFN1c3BlbmRlZCwgQ29tcGxldGUgfTsKKyAgICBPZmZsaW5lUmVuZGVyUmVzdWx0IG9mZmxp
bmVSZW5kZXIoKTsKKyAgICB2b2lkIG5vdGlmeU9mZmxpbmVSZW5kZXJpbmdTdXNwZW5kZWQoKTsK
KwogICAgIC8vIFRoaXMgQXVkaW9Ob2RlIHJlbmRlcnMgaW50byB0aGlzIEF1ZGlvQnVmZmVyLgog
ICAgIFJlZlB0cjxBdWRpb0J1ZmZlcj4gbV9yZW5kZXJUYXJnZXQ7CiAgICAgCkBAIC02NSw4ICs3
MSw4IEBAIHByaXZhdGU6CiAgICAgCiAgICAgLy8gUmVuZGVyaW5nIHRocmVhZC4KICAgICBSZWZQ
dHI8VGhyZWFkPiBtX3JlbmRlclRocmVhZDsKLSAgICBib29sIG1fc3RhcnRlZFJlbmRlcmluZzsK
LSAgICBib29sIG9mZmxpbmVSZW5kZXIoKTsKKyAgICBzaXplX3QgbV9mcmFtZXNUb1Byb2Nlc3M7
CisgICAgYm9vbCBtX3N0YXJ0ZWRSZW5kZXJpbmcgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDcyZTFkNDllODNjNGMxZWExNWU2ZTQ5ZTgzZGNhNDhjNWEy
MmIwN2IuLjAwYmQ5NTJkYTE0ZDNiMTQwMmIwN2NiYmI5YmEzMDUzN2NhZmRjNmUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSw5MiBAQAorMjAyMC0wOC0xMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBzdXNwZW5kaW5nIC8gcmVzdW1pbmcgYW4gT2Zm
bGluZUF1ZGlvQ29udGV4dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE1NDE3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW1wb3J0IHRlc3RzIGZvciB0aGlzIGZlYXR1cmUgZnJvbSBCbGluayBzaW5jZSB0
aGUgV1BUIGNvdmVyYWdlIGlzIG5vdCBncmVhdC4KKworICAgICAgICAqIHdlYmF1ZGlvL29mZmxp
bmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJh
c2ljLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQt
c3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRs
ZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1z
dXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVsYXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBo
LW1hbmlwdWxhdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21p
c2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1z
dXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtc2VxdWVuY2UuaHRtbDog
QWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGl0LXV0aWwuanM6IEFkZGVk
LgorICAgICAgICAoY29tcGFyZUJ1ZmZlcnNXaXRoQ29uc3RyYWludHMpOgorICAgICAgICAoY3Jl
YXRlSW1wdWxzZUJ1ZmZlcik6CisgICAgICAgIChjcmVhdGVMaW5lYXJSYW1wQnVmZmVyKToKKyAg
ICAgICAgKGNyZWF0ZUNvbnN0YW50QnVmZmVyKToKKyAgICAgICAgKGNyZWF0ZVN0ZXJlb0ltcHVs
c2VCdWZmZXIpOgorICAgICAgICAodGltZVRvU2FtcGxlRnJhbWUpOgorICAgICAgICAoZ3JhaW5M
ZW5ndGhJblNhbXBsZUZyYW1lcyk6CisgICAgICAgIChpc1ZhbGlkTnVtYmVyKToKKyAgICAgICAg
KiB3ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanM6IEFkZGVkLgorICAgICAgICAoX2xvZ0Vycm9y
KToKKyAgICAgICAgKF9sb2dQYXNzZWQpOgorICAgICAgICAoX2xvZ0ZhaWxlZCk6CisgICAgICAg
IChfdGhyb3dFeGNlcHRpb24pOgorICAgICAgICAoX2dlbmVyYXRlRGVzY3JpcHRpb24pOgorICAg
ICAgICAoX2Zvcm1hdEZhaWx1cmVFbnRyeSk6CisgICAgICAgIChfY2xvc2VUb1RocmVzaG9sZCk6
CisgICAgICAgIChTaG91bGQpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5fcHJvY2Vzc0Fy
Z3VtZW50cyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLl9idWlsZFJlc3VsdFRleHQpOgor
ICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5fZmluYWxpemUpOgorICAgICAgICAoU2hvdWxkLnBy
b3RvdHlwZS5fYXNzZXJ0KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuZ2V0IHJlc3VsdCk6
CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmdldCBkZXRhaWwpOgorICAgICAgICAoU2hvdWxk
LnByb3RvdHlwZS5leGlzdCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLnRocm93KToKKyAg
ICAgICAgKFNob3VsZC5wcm90b3R5cGUubm90VGhyb3cpOgorICAgICAgICAoU2hvdWxkLnByb3Rv
dHlwZS5iZVJlc29sdmVkKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVSZWplY3RlZCk6
CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlUmVqZWN0ZWRXaXRoKToKKyAgICAgICAgKFNo
b3VsZC5wcm90b3R5cGUuYmVUcnVlKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVGYWxz
ZSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlRXF1YWxUbyk6CisgICAgICAgIChTaG91
bGQucHJvdG90eXBlLm5vdEJlRXF1YWxUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJl
TmFOKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUubm90QmVOYU4pOgorICAgICAgICAoU2hv
dWxkLnByb3RvdHlwZS5iZUdyZWF0ZXJUaGFuKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUu
YmVHcmVhdGVyVGhhbk9yRXF1YWxUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlTGVz
c1RoYW4pOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZUxlc3NUaGFuT3JFcXVhbFRvKToK
KyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVDb25zdGFudFZhbHVlT2YpOgorICAgICAgICAo
U2hvdWxkLnByb3RvdHlwZS5ub3RCZUNvbnN0YW50VmFsdWVPZik6CisgICAgICAgIChTaG91bGQu
cHJvdG90eXBlLmJlRXF1YWxUb0FycmF5KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuY29u
dGFpblZhbHVlcyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLm5vdEdsaXRjaCk6CisgICAg
ICAgIChTaG91bGQucHJvdG90eXBlLmJlQ2xvc2VUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90
eXBlLmJlQ2xvc2VUb0FycmF5KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUubWVzc2FnZSk6
CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmhhdmVPd25Qcm9wZXJ0eSk6CisgICAgICAgIChT
aG91bGQucHJvdG90eXBlLm5vdEhhdmVPd25Qcm9wZXJ0eSk6CisgICAgICAgIChTaG91bGQucHJv
dG90eXBlLmluaGVyaXRGcm9tKToKKyAgICAgICAgKFRhc2spOgorICAgICAgICAoVGFzay5wcm90
b3R5cGUuZ2V0IGxhYmVsKToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLmdldCBzdGF0ZSk6Cisg
ICAgICAgIChUYXNrLnByb3RvdHlwZS5nZXQgcmVzdWx0KToKKyAgICAgICAgKFRhc2sucHJvdG90
eXBlLnNob3VsZCk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5ydW4pOgorICAgICAgICAoVGFz
ay5wcm90b3R5cGUudXBkYXRlKToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLmRvbmUpOgorICAg
ICAgICAoVGFzay5wcm90b3R5cGUudGltZW91dCk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5p
c1Bhc3NlZCk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChU
YXNrUnVubmVyKToKKyAgICAgICAgKFRhc2tSdW5uZXIucHJvdG90eXBlLl9maW5pc2gpOgorICAg
ICAgICAoVGFza1J1bm5lci5wcm90b3R5cGUuZGVmaW5lKToKKyAgICAgICAgKFRhc2tSdW5uZXIu
cHJvdG90eXBlLnJ1bik6CisgICAgICAgIChsb2FkRmlsZUZyb21VcmwpOgorICAgICAgICAocmV0
dXJuLmNyZWF0ZVRhc2tSdW5uZXIpOgorICAgICAgICAod2luZG93LkF1ZGl0KToKKwogMjAyMC0w
OC0xMyAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW21h
Y09TXSBab29tZWQtaW4gc2VhcmNoIGZpZWxkIGlzIGNsaXBwZWQgb3V0CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCBmZGMxN2QyZTlmZTM4Y2M5MDhhYWI0MWE1MzczNTk1MzRjNTk1
OTllLi5jNWM2MGJjN2Q4YTg0ZmE5YmEwNDkyNjEzZDAyN2Q2OGFjOGQ4MGMyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAyMC0wOC0xMyAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBzdXNw
ZW5kaW5nIC8gcmVzdW1pbmcgYW4gT2ZmbGluZUF1ZGlvQ29udGV4dAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDE3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmViYXNlbGluZSBXUFQgdGVzdHMgbm93
IHRoYXQgbW9yZSBjaGVja3MgYXJlIHBhc3NpbmcuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRp
b2J1ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNlL2FjdGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL3N1c3BlbmQtYWZ0ZXItY29u
c3RydWN0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29u
bmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9hdWRp
b3dvcmtsZXRub2RlLWNoYW5uZWwtY291bnQuaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmts
ZXQtaW50ZXJmYWNlL3N1c3BlbmRlZC1jb250ZXh0LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nv
bm5lY3QtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVz
cG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2RlLWludGVyZmFjZS9uby1kZXppcHBl
cmluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLW9mZmxpbmVhdWRpb2NvbnRleHQtaW50ZXJmYWNlL2N1cnJlbnQtdGltZS1ibG9j
ay1zaXplLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL29zYy1iYXNpYy13
YXZlZm9ybS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hh
bmdlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5lci1hdXRvbWF0aW9u
LWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtd2F2ZXNoYXBlcm5vZGUtaW50ZXJmYWNlL3dhdmVzaGFwZXIt
Y29weS1jdXJ2ZS1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDgtMTMgIENocmlzIER1bWV6ICA8Y2R1
bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZWJhc2VsaW5lIFdQVCB0ZXN0
cyB0aGF0IGFyZSBjdXJyZW50bHkgbWFya2VkIGFzIGZsYWt5LgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNz
Lmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVk
LnR4dAppbmRleCBlYWY5YjBlMWQwMTM5NDI5OGNkMGIzZTcyOThjNDdjZjdmZjJmYzRmLi4zMzUx
MWQ4ZDVlNzBiODhhYWZjNmE3ZWQ5MmI5Mjk5N2E3MDZlOGY4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3Mu
aHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dApAQCAtMTE0LDcgKzExNCw3IEBAIFBBU1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRl
cmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90CiBQQVNT
IE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMg
b2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IAog
UEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIHN0YXJ0UmVuZGVy
aW5nKCkgCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gcmVz
dW1lKCkgCi1GQUlMIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gc3Vz
cGVuZChkb3VibGUpIGFzc2VydF9lcXVhbHM6IHByb3BlcnR5IGhhcyB3cm9uZyAubGVuZ3RoIGV4
cGVjdGVkIDEgYnV0IGdvdCAwCitQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBv
cGVyYXRpb24gc3VzcGVuZChkb3VibGUpIAogUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogYXR0cmlidXRlIGxlbmd0aCAKIFBBU1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZh
Y2U6IGF0dHJpYnV0ZSBvbmNvbXBsZXRlIAogUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IG11c3Qg
YmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2Ft
cGxlX3JhdGUpIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2J1ZmZlcnNvdXJjZW5v
ZGUtaW50ZXJmYWNlL2FjdGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9idWZmZXJzb3VyY2Vub2RlLWludGVyZmFjZS9hY3RpdmUtcHJvY2Vzc2lu
Zy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggYTY0Y2JlOTAxNWJiNGQxZGNiM2U4ZjEzYWJkNzlj
YWQ2YTM3YTk0OC4uMDg3Njk1YWNiM2M5NDBhZDg0ZWVhMmE2ZGYxNDM1OTgwZDg1MGYzNyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2J1ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNlL2Fj
dGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1
ZGlvYnVmZmVyc291cmNlbm9kZS1pbnRlcmZhY2UvYWN0aXZlLXByb2Nlc3NpbmcuaHR0cHMtZXhw
ZWN0ZWQudHh0CkBAIC0xLDExICsxLDIyIEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQ
cm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRs
ZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAKIFBBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIEZBSUwgRXhlY3V0aW5nICJTZXR1cCBncmFw
aCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAi
VHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnY29udGV4
dC5hdWRpb1dvcmtsZXQuYWRkTW9kdWxlJykiCi1USU1FT1VUIEV4ZWN1dGluZyAidmVyaWZ5IGNv
dW50IGNoYW5nZSIgVGVzdCB0aW1lZCBvdXQKLU5PVFJVTiBBdWRpdCByZXBvcnQgCitQQVNTIEV4
ZWN1dGluZyAidmVyaWZ5IGNvdW50IGNoYW5nZSIgCitQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1Mg
PiBbU2V0dXAgZ3JhcGhdICAKIFBBU1MgPiBbdmVyaWZ5IGNvdW50IGNoYW5nZV0gIAorRkFJTCBY
IE51bWJlciBvZiBjaGFubmVscyBjaGFuZ2VkIGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEluZGV4IHdoZXJlIGlucHV0
IGNoYW5uZWwgY291bnQgY2hhbmdlZCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMTI4MC4gCitG
QUlMIFggTnVtYmVyIG9mIGNoYW5uZWxzIGluIGlucHV0WzA6LTJdOiBFeHBlY3RlZCA3IGZvciBh
bGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjc5IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1
YWwKKwlbMF0JMAorCVsxXQkwCisJWzJdCTAKKwlbM10JMAorCS4uLmFuZCAxMjc1IG1vcmUgZXJy
b3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBOdW1iZXIg
b2YgY2hhbm5lbHMgaW4gaW5wdXRbLTE6XTogRXhwZWN0ZWQgMSBmb3IgYWxsIHZhbHVlcyBidXQg
Zm91bmQgMSB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAgYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIDwgW3ZlcmlmeSBjb3VudCBjaGFu
Z2VdIDMgb3V0IG9mIDQgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEg
b3V0IG9mIDIgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZh
Y2UvYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhw
ZWN0ZWQudHh0CmluZGV4IDg4YTYwMDgyNDBlY2U5YTQwYzVjMTIzYzc1Y2FlNTRhODhhNmNhNjgu
LjUyZDk1OGMwZjAyYWEzOTkyNWFjZDJmMWRhMTdlNDhkOWZmMjAxM2MgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1y
ZXN1bWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVy
ZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0CkBAIC0xMCwxOSAr
MTAsMTkgQEAgUEFTUyAgIG9mZmxpbmVDb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQo
MSwgNDQxMDAsIDQ0MTAwKSBkaWQgbm90IHRocm93IGEKIFBBU1MgICBvZmZsaW5lQ29udGV4dC5z
dGF0ZSBpcyBlcXVhbCB0byBzdXNwZW5kZWQuIAogUEFTUyAgIHAxID0gb2ZmbGluZUNvbnRleHQu
c3VzcGVuZCgpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBwMSBpbnN0YW5j
ZW9mIFByb21pc2UgaXMgdHJ1ZS4gCi1QQVNTICAgcDEgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGgg
SW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uIAor
UEFTUyAgIHAxIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIFR5cGVFcnJvcjogTm90IGVub3VnaCBh
cmd1bWVudHMuIAogUEFTUyA8IFt0ZXN0LXN1c3BlbmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QtcmVzdW1lXSBUZXN0IHJlc3VtZSgp
IGZvciBvZmZsaW5lIGNvbnRleHQgCiBQQVNTICAgcDIgPSBvZmZsaW5lQ29udGV4dC5yZXN1bWUo
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgcDIgaW5zdGFuY2VvZiBQcm9t
aXNlIGlzIHRydWUuIAogUEFTUyAgIEFmdGVyIHJlc3VtZSwgb2ZmbGluZUNvbnRleHQuc3RhdGUg
aXMgZXF1YWwgdG8gc3VzcGVuZGVkLiAKLVBBU1MgICBwMiByZWplY3RlZCBjb3JyZWN0bHkgd2l0
aCBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4g
CitQQVNTICAgcDIgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IENh
bm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQgaGFzIG5vdCBzdGFydGVk
LiAKIFBBU1MgPCBbdGVzdC1yZXN1bWVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDQg
YXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QtYWZ0ZXItY2xvc2VdIFRlc3Qgc3RhdGUgYWZ0ZXIg
Y29udGV4dCBjbG9zZWQgCiBQQVNTICAgcDMgPSBvZmZsaW5lQ29udGV4dC5zdGFydFJlbmRlcmlu
ZygpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBBZnRlciBjbG9zZSwgb2Zm
bGluZUNvbnRleHQuc3RhdGUgaXMgZXF1YWwgdG8gY2xvc2VkLiAKLVBBU1MgICBvZmZsaW5lQ29u
dGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uIAotUEFTUyAgIG9mZmxpbmVDb250
ZXh0LnJlc3VtZSgpIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLiAKK1BBU1MgICBvZmZsaW5lQ29udGV4
dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggVHlwZUVycm9yOiBOb3QgZW5vdWdo
IGFyZ3VtZW50cy4gCitQQVNTICAgb2ZmbGluZUNvbnRleHQucmVzdW1lKCkgcmVqZWN0ZWQgY29y
cmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IENhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBh
dWRpbyBjb250ZXh0IHRoYXQgaGFzIG5vdCBzdGFydGVkLiAKIFBBU1MgPCBbdGVzdC1hZnRlci1j
bG9zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbcmVzdW1lLXJ1bm5pbmctY29udGV4dF0gVGVzdCByZXN1bWluZyBhIHJ1bm5pbmcgY29udGV4
dCAKIFBBU1MgICBDcmVhdGUgb25saW5lIGNvbnRleHQgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL3N1
c3BlbmQtYWZ0ZXItY29uc3RydWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9j
b250ZXh0LWludGVyZmFjZS9zdXNwZW5kLWFmdGVyLWNvbnN0cnVjdC1leHBlY3RlZC50eHQKaW5k
ZXggMzE3NDQyY2MxNmExMGY0Mzc3OWMwZWM5NGQ5ZjQ2MTQ0YTUwMWMxYy4uMTYxMmViZGFhZjRk
NmEzYzNmNjhkM2RhM2JhZmEzZDQ5ZTk2MjcxYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb2NvbnRleHQtaW50ZXJmYWNlL3N1c3BlbmQtYWZ0ZXItY29uc3RydWN0LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2Uvc3VzcGVuZC1hZnRl
ci1jb25zdHJ1Y3QtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIFN0YXRlIGNo
YW5nZSBjb3VudGluZyBhc3NlcnRfbGVzc190aGFuX2VxdWFsOiBjdHggMSBzdGF0ZSBjaGFuZ2Ug
Y291bnQuIGV4cGVjdGVkIGEgbnVtYmVyIGxlc3MgdGhhbiBvciBlcXVhbCB0byAxIGJ1dCBnb3Qg
MgorUEFTUyBTdGF0ZSBjaGFuZ2UgY291bnRpbmcgCiBQQVNTIEl0ZXJhdGlvbiAxIAogUEFTUyBJ
dGVyYXRpb24gMiAKIFBBU1MgSXRlcmF0aW9uIDMgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWRpc2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWRp
c2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50eHQKaW5kZXggODc3YTcwMjczZWM3ODlkZTBi
ODdmYTg2YTBiM2UxZjBlNzcxNGVkNS4uZGQ1NmM0NGQ5Mjg0YjA1NTdhMTExYmY2NGJkNmI3ZGNl
ZmFmMzA5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25vZGUtaW50ZXJmYWNlL2F1
ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29ubmVjdC1hdWRpb3BhcmFt
LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1l
c3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQg
c3RhdGUuCi0KIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0
aW5nICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIiAKIFBBU1MgRXhlY3V0aW5nICJkaXNjb25uZWN0
KEF1ZGlvUGFyYW0sIG91dHB1dCkiIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dv
cmtsZXQtaW50ZXJmYWNlL2F1ZGlvd29ya2xldG5vZGUtY2hhbm5lbC1jb3VudC5odHRwcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZhY2UvYXVkaW93b3Jr
bGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA5ZDAxZGI2ZDIy
Y2Y4ZTQ2M2QzNzBiMzJmNDYxYjhlZjBjZTIxNGUzLi5lMDE3ODA4NzAwYjg2ZmRkMDIzMTNlYWY4
Mjk3NWExNzg5N2IzZjU5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1p
bnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZhY2UvYXVkaW93b3JrbGV0
bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSwzNCBAQAot
Q09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0
ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJy
b3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBp
biBhbiBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4g
CiBGQUlMIEV4ZWN1dGluZyAic2V0dXAtYnVmZmVyLWFuZC13b3JrbGV0IiBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdjb250ZXh0LmF1ZGlvV29ya2xldC5h
ZGRNb2R1bGUnKSIKLVRJTUVPVVQgRXhlY3V0aW5nICJ2ZXJpZnktcmVuZGVyZWQtYnVmZmVyIiBU
ZXN0IHRpbWVkIG91dAotTk9UUlVOIEF1ZGl0IHJlcG9ydCAKK1BBU1MgRXhlY3V0aW5nICJ2ZXJp
ZnktcmVuZGVyZWQtYnVmZmVyIiAKK1BBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtzZXR1cC1i
dWZmZXItYW5kLXdvcmtsZXRdICAKIFBBU1MgPiBbdmVyaWZ5LXJlbmRlcmVkLWJ1ZmZlcl0gIAor
UEFTUyAgIEZpcnN0IGhhbGYgb2YgQ2hhbm5lbCAjMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFu
dCAwLiAKK0ZBSUwgWCBTZWNvbmQgaGFsZiBvZiBDaGFubmVsICMwOiBFeHBlY3RlZCAxIGZvciBh
bGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVh
bAorCVswXQkwCisJWzFdCTAKKwlbMl0JMAorCVszXQkwCisJLi4uYW5kIDEyNCBtb3JlIGVycm9y
cy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgRmlyc3QgaGFs
ZiBvZiBDaGFubmVsICMxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorRkFJTCBYIFNl
Y29uZCBoYWxmIG9mIENoYW5uZWwgIzE6IEV4cGVjdGVkIDIgZm9yIGFsbCB2YWx1ZXMgYnV0IGZv
dW5kIDEyOCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAKKwlbMV0J
MAorCVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBGaXJzdCBoYWxmIG9mIENoYW5uZWwgIzIg
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitGQUlMIFggU2Vjb25kIGhhbGYgb2YgQ2hh
bm5lbCAjMjogRXhwZWN0ZWQgMyBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgMTI4IHVuZXhwZWN0
ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JMAorCVsxXQkwCisJWzJdCTAKKwlbM10J
MAorCS4uLmFuZCAxMjQgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorRkFJTCA8IFt2ZXJpZnktcmVuZGVyZWQtYnVmZmVyXSAzIG91dCBvZiA2IGFzc2Vy
dGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQor
RkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiAyIHRhc2tzIHdlcmUg
ZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNlL3N1c3BlbmRlZC1jb250ZXh0
LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW93b3Jr
bGV0LWludGVyZmFjZS9zdXNwZW5kZWQtY29udGV4dC1tZXNzYWdlcG9ydC5odHRwcy1leHBlY3Rl
ZC50eHQKaW5kZXggMzNjNWE5Y2Q3MDIyY2FjZDVjMDIwY2YxODk4NzBmMGZkMjNlZGJjMi4uNTkw
ZTBkNzFmMmQ3ZjY0YjU4Yzg1ZmFkNjMyNjMxNTI4MDk3ZWMyYyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNlL3N1c3BlbmRlZC1jb250ZXh0LW1lc3NhZ2Vw
b3J0Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1p
bnRlcmZhY2Uvc3VzcGVuZGVkLWNvbnRleHQtbWVzc2FnZXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNSBAQAogCiBGQUlMIHJlYWx0aW1lIHN1c3BlbmRlZCBwcm9taXNlX3Rlc3Q6
IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVm
aW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdyZWFsdGltZS5hdWRpb1dvcmtsZXQu
YWRkTW9kdWxlJykiCiBGQUlMIG9mZmxpbmUgYmVmb3JlIHN0YXJ0IHByb21pc2VfdGVzdDogVW5o
YW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVk
IGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ29mZmxpbmUuYXVkaW9Xb3JrbGV0LmFkZE1v
ZHVsZScpIgotRkFJTCBvZmZsaW5lIG9uIGNvbXBsZXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVk
IHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIkludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2Jq
ZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIgorRkFJTCBvZmZsaW5lIG9uIGNvbXBsZXRlIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVy
ZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBBdWRpb1dvcmtsZXROb2RlIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlw
cGVyaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRl
cmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CmluZGV4IDUyODgyZDI4MzVjNTJjMGUz
ODM3MGY0ZWRmZTA0NDgwMTNhZGNjM2IuLjBlNTk2NDE5NzAyYzEyZTI0Mjg4MjY2MTNlNjkxNzAy
NmI0ZjUxMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRl
cmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlx
dWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CkBAIC0x
LDE2ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9u
OiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgot
Q09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0
ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NB
R0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBv
YmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVk
IFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWpl
Y3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxp
ZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUg
TUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjog
VGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhh
bmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlz
IGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNl
IFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxp
ZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJ
bnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09O
U09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3Ig
KEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQ
QVNTIEV4ZWN1dGluZyAiVGVzdCAwIiAKQEAgLTI0LDE4ICsxMSwxOCBAQCBQQVNTID4gW1Rlc3Qg
MF0gTm8gZGV6aXBwZXJpbmcgZm9yIGZyZXF1ZW5jeQogUEFTUyAgIEF0IHRpbWUgMCwgZnJlcXVl
bmN5IGlzIGVxdWFsIHRvIDM1MC4gCiBQQVNTICAgQXQgdGltZSAwLjAxNTYyNSwgZnJlcXVlbmN5
IGlzIGVxdWFsIHRvIDgwMC4gCiBQQVNTICAgQXQgdGltZSAwLjA1NDY4NzUsIGZyZXF1ZW5jeSBp
cyBlcXVhbCB0byAyMDAuIAotRkFJTCBYIE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgZG9l
cyBub3QgZXF1YWwgWzAsMC4xNzQxODMwNzA2NTk2Mzc0NSwwLjM1NTIwNDMxMzk5MzQ1NCwwLjUz
NjQ4Njc0NDg4MDY3NjMsMC43MTE0MDU4NzMyOTg2NDUsMC44NzM1MDY2NjUyMjk3OTc0LDEuMDE2
NzEzODU3NjUwNzU2OCwxLjEzNTUyODMyNjAzNDU0NiwxLjIyNTIwMjc5ODg0MzM4MzgsMS4yODE4
OTYyMzM1NTg2NTQ4LDEuMzAyNzk3MTk4Mjk1NTkzMywxLjI4NjIxMzk5NDAyNjE4NCwxLjIzMTYz
MzkwMTU5NjA2OTMsMS4xMzk3NDE3NzgzNzM3MTgzLDEuMDEyNDA1Mjc2Mjk4NTIzLDAuODUyNjIy
MTUxMzc0ODE2OS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1
dGVUaHJlc2hvbGQiOjAuMDAwMDAzMDM5OSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJTCBY
IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAuNzg2MzU2MjEw
NzA4NjE4MiwwLjk2NzY2MTg1NzYwNDk4MDUsMS4xMzU3NzI0NjY2NTk1NDYsMS4yODU4MjQ3NzU2
OTU4MDA4LDEuNDEzMzkyNzgyMjExMzAzNywxLjUxNDYxNzY4MTUwMzI5NiwxLjU4NjMyMzE0MjA1
MTY5NjgsMS42MjYxMTEyNjg5OTcxOTI0LDEuNjMyNDM1Njc5NDM1NzMsMS42MDQ2NTA4NTUwNjQz
OTIsMS41NDMwMzY1ODAwODU3NTQ0LDEuNDQ4Nzk0MTI2NTEwNjIwMSwxLjMyNDAxODk1NTIzMDcx
MywxLjE3MTY0NTA0NTI4MDQ1NjUsMC45OTUzNjc2NDYyMTczNDYyLDAuNzk5NTQyMTI5MDM5NzY0
NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hv
bGQiOjAuMDAwMDAzMDM5OSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJ
CUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzI1Nl0JLTEu
MzUxNDM1MTg0NDc4NzU5OGUrMAktMS4yOTg5MTUyNjY5OTA2NjE2ZSswCTUuMjUxOTkxNzQ4ODA5
ODE0NWUtMgk0LjA0MzM2NzQ3OTIxODAwNjBlLTIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JWzI1
N10JLTEuMTg3OTQ5NDE5MDIxNjA2NGUrMAktMS4wNDY3ODI4NTEyMTkxNzcyZSswCTEuNDExNjY1
Njc4MDI0MjkyMGUtMQkxLjM0ODU3NTQ3MjM0MzgwMDRlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02
Ci0JWzI1OF0JLTkuOTA3MjAwMzM2NDU2Mjk4OGUtMQktNy40MjMyMzY5NjYxMzMxMTc3ZS0xCTIu
NDgzOTYzMzcwMzIzMTgxMmUtMQkzLjM0NjE5OTc1MzA5Mzg1NDJlLTEJMy4wMzk4OTk5OTk5OTk5
OTk5ZS02Ci0JWzI1OV0JLTcuNjUzNDkyNjg5MTMyNjkwNGUtMQktNC4wODA1MDA5MDA3NDUzOTE4
ZS0xCTMuNTcyOTkxNzg4Mzg3Mjk4NmUtMQk4Ljc1NjI1NzgxMDczNzQzNzhlLTEJMy4wMzk4OTk5
OTk5OTk5OTk5ZS02Ci0JWzI2MF0JLTUuMTgyMzg2NjM2NzM0MDA4OGUtMQktNi41MjMyODg3ODY0
MTEyODU0ZS0yCTQuNTMwMDU3NzU4MDkyODgwMmUtMQk2Ljk0NDQzODQ2NzE4NzcxNjBlKzAJMy4w
Mzk4OTk5OTk5OTk5OTk5ZS02Ci0JLi4uYW5kIDE3ODcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vy
cm9yIG9mIDguMzA4MDcwNjc0NTM4NjEyNGUtMSBhdCBpbmRleCBvZiAyNzcuCi0JWzI3N10JOS4w
NzY1NzQ0NDQ3NzA4MTMwZS0xCTcuNjg1MDM3NzAyMzIyMDA2MmUtMgk4LjMwODA3MDY3NDUzODYx
MjRlLTEJMS4wODEwNzA5MDYzOTYyNTA5ZSsxCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgotCU1heCBS
ZWxFcnJvciBvZiAyLjM2MzE5MzA0NzY0NDAyNzVlKzMgYXQgaW5kZXggb2YgNjUwLgotCVs2NTBd
CTcuNjEwMjk0MjIyODMxNzI2MWUtMQkzLjIxODk4MTcyODQyMzM4NjhlLTQJNy42MDcwNzUyNDEx
MDMzMDI3ZS0xCTIuMzYzMTkzMDQ3NjQ0MDI3NWUrMwkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlb
MF0JNy4zMDEwMDU3MjEwOTIyMjQxZS0xCTcuODYzNTYyMTA3MDg2MTgxNmUtMQk1LjYyNTU2Mzg1
OTkzOTU3NTJlLTIJNy4xNTM5NjM3OTMxNjQ2MDk3ZS0yCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgor
CVsxXQk5LjkyMzIxMjUyODIyODc1OThlLTEJOS42NzY2MTg1NzYwNDk4MDQ3ZS0xCTIuNDY1OTM5
NTIxNzg5NTUwOGUtMgkyLjU0ODM0ODM3NDM5Mjc4MDllLTIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02
CisJWzJdCTEuMjI2OTUxNTk5MTIxMDkzOGUrMAkxLjEzNTc3MjQ2NjY1OTU0NTllKzAJOS4xMTc5
MTMyNDYxNTQ3ODUyZS0yCTguMDI3OTQwMDI2NTU0NTcxMWUtMgkzLjAzOTg5OTk5OTk5OTk5OTll
LTYKKwlbM10JMS40Mjc0MTA4NDA5ODgxNTkyZSswCTEuMjg1ODI0Nzc1Njk1ODAwOGUrMAkxLjQx
NTg2MDY1MjkyMzU4NDBlLTEJMS4xMDExMzAzMjQ4MjAwNDkyZS0xCTMuMDM5ODk5OTk5OTk5OTk5
OWUtNgorCVs0XQkxLjU4ODA2MTMzMjcwMjYzNjdlKzAJMS40MTMzOTI3ODIyMTEzMDM3ZSswCTEu
NzQ2Njg1NTA0OTEzMzMwMWUtMQkxLjIzNTgxMDQwMzgwMDU0NzFlLTEJMy4wMzk4OTk5OTk5OTk5
OTk5ZS02CisJLi4uYW5kIDExNDcgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDguOTI2
NTM4ODI1MDM1MDk1MmUtMSBhdCBpbmRleCBvZiA0Mi4KKwlbNDJdCTEuNjU3MzMzMzc0MDIzNDM3
NWUrMAk3LjY0Njc5NDkxNTE5OTI3OThlLTEJOC45MjY1Mzg4MjUwMzUwOTUyZS0xCTEuMTY3MzU2
OTAyMzM5ODQzMWUrMAkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlNYXggUmVsRXJyb3Igb2YgMS43
Njc3ODkxMTM0NjU1Njc4ZSsyIGF0IGluZGV4IG9mIDY4OC4KKwlbNjg4XQktMS42OTY0NDExNzM1
NTM0NjY4ZS0xCTkuNjUwOTkzNzQyOTgwMDYzMGUtNAkxLjcwNjA5MjE2NzI5NjQ0NjllLTEJMS43
Njc3ODkxMTM0NjU1Njc4ZSsyCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgogIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBYIE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0
ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW1Rlc3QgMF0gMiBv
dXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKQEAgLTQzLDE4ICszMCwxOCBAQCBQQVNTID4gW1Rlc3QgMV0gTm8gZGV6aXBw
ZXJpbmcgZm9yIGRldHVuZQogUEFTUyAgIEF0IHRpbWUgMCwgZGV0dW5lIGlzIGVxdWFsIHRvIDMz
LiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBkZXR1bmUgaXMgZXF1YWwgdG8gMTAwMC4gCiBQ
QVNTICAgQXQgdGltZSAwLjAzOTA2MjUsIGRldHVuZSBpcyBlcXVhbCB0byAtNDAwLiAKLUZBSUwg
WCBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLDAuMTczMTYxNjEw
OTYwOTYwNCwwLjM1MTU3NTI4NTE5NjMwNDMsMC41Mjk1MTA0OTgwNDY4NzUsMC43MDEwNDA2ODUx
NzY4NDk0LDAuODYwMjM4NjcxMzAyNzk1NCwxLjAwMTM3NTY3NTIwMTQxNiwxLjExOTExNzYxNzYw
NzExNjcsMS4yMDg3MTEwMjgwOTkwNiwxLjI2NjE1NTQ4MTMzODUwMSwxLjI4ODM1MzQ0MzE0NTc1
MiwxLjI3MzIzMjQ2MDAyMTk3MjcsMS4yMTk4NDAxNjg5NTI5NDIsMS4xMjg0MDA1NjQxOTM3MjU2
LDEuMDAwMzM4MTk2NzU0NDU1NiwwLjgzODI2MDU5MTAzMDEyMDguLi5dIHdpdGggYW4gZWxlbWVu
dC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDA1MzIsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGRv
ZXMgbm90IGVxdWFsIFsxLjE0NzY2MDk3MDY4Nzg2NjIsMS4xNTYxOTU0MDIxNDUzODU3LDEuMTM3
MTU2NzI0OTI5ODA5NiwxLjA4OTEzMzYyMDI2MjE0NiwxLjAxMTUzMzk3NTYwMTE5NjMsMC45MDQ2
Mjk3MDczMzY0MjU4LDAuNzY5NTc2Nzg3OTQ4NjA4NCwwLjYwODQwODgwODcwODE5MDksMC40MjQw
MDQ4MjI5Njk0MzY2NSwwLjIyMDAyODc1ODA0OTAxMTIzLDAuMDAwODQ2MTQyODgwNjE4NTcyMiwt
MC4yMjg1ODI0NDE4MDY3OTMyLC0wLjQ2MjgyNjgxODIyNzc2Nzk0LC0wLjY5NjEzMDMzNTMzMDk2
MzEsLTAuOTIyNTY0MDg5Mjk4MjQ4MywtMS4xMzYxODk4MTgzODIyNjMyLi4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMy
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vy
cm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMjU2XQktMi40MTIzNjY4NjcwNjU0Mjk3
ZSswCS0yLjMyNDQ2NTc1MTY0Nzk0OTJlKzAJOC43OTAxMTE1NDE3NDgwNDY5ZS0yCTMuNzgxNTYy
MDc5NTk0NTE1MWUtMgk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlbMjU3XQktMi4yMzE0Njc5NjIy
NjUwMTQ2ZSswCS0xLjk3ODY4NjgwOTUzOTc5NDllKzAJMi41Mjc4MTE1MjcyNTIxOTczZS0xCTEu
Mjc3NTE5Nzc0NzY0MjEyNWUtMQk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlbMjU4XQktMS45ODcz
NjkwNjA1MTYzNTc0ZSswCS0xLjUxMTE2ODAwMzA4MjI3NTRlKzAJNC43NjIwMTA1NzQzNDA4MjAz
ZS0xCTMuMTUxMjExODg2ODUwMzgxM2UtMQk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlbMjU5XQkt
MS42ODcwMjQ3MTI1NjI1NjEwZSswCS05LjUzMDM2MzA4Mjg4NTc0MjJlLTEJNy4zMzk4ODQwNDI3
Mzk4NjgyZS0xCTcuNzAxNTc4NjA2MDg3NDcyNWUtMQk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlb
MjYwXQktMS4zMzg5ODEyNzA3OTAxMDAxZSswCS0zLjQwNTY1MDg1NDExMDcxNzhlLTEJOS45ODQx
NjE4NTM3OTAyODMyZS0xCTIuOTMxNjQ1NzUwMzk3MjAwOWUrMAk0LjA1MzE5OTk5OTk5OTk5OTZl
LTYKLQkuLi5hbmQgMTc4NyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMi44MDYzMDA0
NjEyOTIyNjY4ZSswIGF0IGluZGV4IG9mIDI3Ny4KLQlbMjc3XQkxLjg3MTA5MDI5MjkzMDYwMzBl
KzAJLTkuMzUyMTAxNjgzNjE2NjM4MmUtMQkyLjgwNjMwMDQ2MTI5MjI2NjhlKzAJMy4wMDA3MTYz
Njk2NzgxMTEwZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCU1heCBSZWxFcnJvciBvZiAxLjk0
MzUyMjY3NjUxNjkxMzRlKzMgYXQgaW5kZXggb2YgNjUwLgotCVs2NTBdCTEuNjQ1MzQ0MDE4OTM2
MTU3MmUrMAk4LjQ2MTQyODgwNjE4NTcyMjRlLTQJMS42NDQ0OTc4NzYwNTU1Mzg3ZSswCTEuOTQz
NTIyNjc2NTE2OTEzNGUrMwk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwlbMF0JMi45MDAxNzgxOTQw
NDYwMjA1ZSswCTEuMTQ3NjYwOTcwNjg3ODY2MmUrMAkxLjc1MjUxNzIyMzM1ODE1NDNlKzAJMS41
MjcwMzM5MTM0MjgwNzM5ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCVsxXQkzLjA2MzA1ODM3
NjMxMjI1NTllKzAJMS4xNTYxOTU0MDIxNDUzODU3ZSswCTEuOTA2ODYyOTc0MTY2ODcwMWUrMAkx
LjY0OTI1NjY2NTk4MjczODFlKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJWzJdCTMuMTQwMzky
MzAzNDY2Nzk2OWUrMAkxLjEzNzE1NjcyNDkyOTgwOTZlKzAJMi4wMDMyMzU1Nzg1MzY5ODczZSsw
CTEuNzYxNjE3ODQ0NDE4NjE4OGUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwlbM10JMy4xMjk5
NjEwMTM3OTM5NDUzZSswCTEuMDg5MTMzNjIwMjYyMTQ2MGUrMAkyLjA0MDgyNzM5MzUzMTc5OTNl
KzAJMS44NzM4MDgwOTQ0MDEyOTg1ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCVs0XQkzLjAz
MjAwMDU0MTY4NzAxMTdlKzAJMS4wMTE1MzM5NzU2MDExOTYzZSswCTIuMDIwNDY2NTY2MDg1ODE1
NGUrMAkxLjk5NzQyODI3NzA3MjkxNjhlKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJLi4uYW5k
IDE0MDMgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDIuNDA0NDAyMzE1NjE2NjA3N2Ur
MCBhdCBpbmRleCBvZiA5NC4KKwlbOTRdCS0yLjk5ODM3NDQ2MjEyNzY4NTVlKzAJLTUuOTM5NzIx
NDY1MTEwNzc4OGUtMQkyLjQwNDQwMjMxNTYxNjYwNzdlKzAJNC4wNDgwMDUxNjI3NjY5NDU2ZSsw
CTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCU1heCBSZWxFcnJvciBvZiAxLjA3ODU5OTI3NzUyMTM4
MzNlKzMgYXQgaW5kZXggb2YgMTAuCisJWzEwXQk5LjEzNDk1MjQyNTk1NjcyNjFlLTEJOC40NjE0
Mjg4MDYxODU3MjI0ZS00CTkuMTI2NDkwOTk3MTUwNTQwNGUtMQkxLjA3ODU5OTI3NzUyMTM4MzNl
KzMJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCiBGQUlMIFggT3V0cHV0IGZyb20gZGV0dW5lIHNldHRlciBtYXRjaGVzIHNldFZhbHVl
QXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVzdCAxXSAyIG91dCBvZiA1IGFzc2VydGlvbnMg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQpAQCAtNjIs
MTEgKzQ5LDExIEBAIFBBU1MgPiBbVGVzdCAyXSBObyBkZXppcHBlcmluZyBmb3IgUQogUEFTUyAg
IEF0IHRpbWUgMCwgUSBpcyBlcXVhbCB0byA1LiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBR
IGlzIGVxdWFsIHRvIDEwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDYyNSwgUSBpcyBlcXVhbCB0byAt
MTAuIAotRkFJTCBYIE91dHB1dCBmcm9tIFEgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLDAuMTY3
OTM4MzA2OTI3NjgwOTcsMC4zMzExMDYzMDUxMjIzNzU1LDAuNDg0ODY5MjQxNzE0NDc3NTQsMC42
MjQ4NTk1MTE4NTIyNjQ0LDAuNzQ3MTAwNTkxNjU5NTQ1OSwwLjg0ODEyMDMzMTc2NDIyMTIsMC45
MjUwNDkzNjQ1NjY4MDMsMC45NzU3MDIyMjYxNjE5NTY4LDAuOTk4NjQwMTc5NjM0MDk0MiwwLjk5
MzIxMjA0NDIzOTA0NDIsMC45NTk1NzE0MjExNDYzOTI4LDAuODk4Njc0NDg4MDY3NjI3LDAuODEy
MjUwNTU0NTYxNjE1LDAuNzAyNzU0Nzk1NTUxMywwLjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdpdGgg
YW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggT3V0cHV0IGZyb20gUSBzZXR0ZXIgZG9lcyBub3Qg
ZXF1YWwgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcsLTAuMzMxMTA2MzA1MTIyMzc1NSwtMC40ODQ4
NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIyNjQ0LC0wLjc0NzEwMDU5MTY1OTU0NTksLTAu
ODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1NjY4MDMsLTAuOTc1NzAyMjI2MTYxOTU2OCwt
MC45OTg2NDAxNzk2MzQwOTQyLC0wLjk5MzIxMjA0NDIzOTA0NDIsLTAuOTU5NTcxNDIxMTQ2Mzky
OCwtMC44OTg2NzQ0ODgwNjc2MjcsLTAuODEyMjUwNTU0NTYxNjE1LC0wLjcwMjc1NDc5NTU1MTMs
LTAuNTczMjk3MTQyOTgyNDgyOS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlB
Y3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsx
MDI0XQk2Ljg4MzM4Mjc1MjY3NTk3MDZlLTE1CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAk2Ljg4MzM4
Mjc1MjY3NTk3MDZlLTE1CUluZmluaXR5CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBBYnNF
cnJvciBvZiA2Ljg4MzM4Mjc1MjY3NTk3MDZlLTE1IGF0IGluZGV4IG9mIDEwMjQuCi0JTWF4IFJl
bEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDEwMjQuCisJWzBdCTIuNzc1NTU3NTYxNTYy
ODkxNGUtMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTIuNzc1NTU3NTYxNTYyODkxNGUtMTYJSW5m
aW5pdHkJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJTWF4IEFic0Vycm9yIG9mIDIuNzc1NTU3NTYx
NTYyODkxNGUtMTYgYXQgaW5kZXggb2YgMC4KKwlNYXggUmVsRXJyb3Igb2YgSW5maW5pdHkgYXQg
aW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwg
WCBPdXRwdXQgZnJvbSBRIHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBu
b3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
IEZBSUwgPCBbVGVzdCAyXSAyIG91dCBvZiA1IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQpAQCAtNzQsNDMgKzYxLDQzIEBAIFBBU1Mg
PiBbVGVzdCAzXSBObyBkZXppcHBlcmluZyBmb3IgZ2FpbgogUEFTUyAgIEF0IHRpbWUgMCwgZ2Fp
biBpcyBlcXVhbCB0byAxLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBnYWluIGlzIGVxdWFs
IHRvIDUuIAogUEFTUyAgIEF0IHRpbWUgMC4wNDY4NzUsIGdhaW4gaXMgZXF1YWwgdG8gLTAuMy4g
Ci1GQUlMIFggT3V0cHV0IGZyb20gZ2FpbiBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNjkx
NTU4MDYzMDMwMjQzLDAuMzM1Nzc2NDE4NDQ3NDk0NSwwLjQ5NDgwMDMyOTIwODM3NCwwLjY0MTM4
Nzk5OTA1Nzc2OTgsMC43NzEwNjM5MjM4MzU3NTQ0LDAuODc5ODQ4MTIyNTk2NzQwNywwLjk2NDM3
MjI3NzI1OTgyNjcsMS4wMjE5NzczMDU0MTIyOTI1LDEuMDUwNzkxNzQwNDE3NDgwNSwxLjA0OTc4
NjQ0ODQ3ODY5ODcsMS4wMTg4MDI1MjM2MTI5NzYsMC45NTg1NTkwOTU4NTk1Mjc2LDAuODcwNjI5
NzI3ODQwNDIzNiwwLjc1NzM5OTI2MDk5Nzc3MjIsMC42MjE5OTM4Mzk3NDA3NTMyLi4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAw
MDE5MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggT3V0cHV0IGZyb20gZ2FpbiBz
ZXR0ZXIgZG9lcyBub3QgZXF1YWwgWy0wLjg0NDg2NzIyOTQ2MTY2OTksLTEuMDM0NTM1NjQ2NDM4
NTk4NiwtMS4xODY2MDYxNjg3NDY5NDgyLC0xLjI5OTQ3MzI4NTY3NTA0ODgsLTEuMzcyMzkxMTA0
Njk4MTgxMiwtMS40MDU0ODYzNDUyOTExMzc3LC0xLjM5OTc1MDU5MDMyNDQwMTksLTEuMzU3MDEz
OTQwODExMTU3MiwtMS4yNzk4OTg2NDM0OTM2NTIzLC0xLjE3MTc1MzY0NDk0MzIzNzMsLTEuMDM2
NTcyMDk4NzMxOTk0NiwtMC44Nzg4OTE2NDY4NjIwMywtMC43MDM2ODQzODk1OTEyMTcsLTAuNTE2
MjMxMjM4ODQyMDEwNSwtMC4zMjE5OTIwMDk4NzgxNTg1NywtMC4xMjY0NjkzMjg5OTk1MTkzNS4u
Ll0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQi
OjAuMDAwMDAxOTA3NCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4
cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzI1Nl0JLTguMTA3
NjE5Mjg1NTgzNDk2MWUtMQktOC4wNDg5MjAwMzUzNjIyNDM3ZS0xCTUuODY5OTI1MDIyMTI1MjQ0
MWUtMwk3LjI5MjgxMDcwNzk0MTIyNTllLTMJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JWzI1N10J
LTYuNzQ1NTMyMTU1MDM2OTI2M2UtMQktNi41NjIzOTUwOTU4MjUxOTUzZS0xCTEuODMxMzcwNTky
MTE3MzA5NmUtMgkyLjc5MDcwNDU2MDQxNjMyNDZlLTIJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0J
WzI1OF0JLTUuMTkxODM5MzM3MzQ4OTM4MGUtMQktNC44MTUzMzczNTk5MDUyNDI5ZS0xCTMuNzY1
MDE5Nzc0NDM2OTUwN2UtMgk3LjgxODgwNzg5MDM1OTM5ODVlLTIJMS45MDc0MDAwMDAwMDAwMDAy
ZS02Ci0JWzI1OV0JLTMuNDkwNjcyNDA5NTM0NDU0M2UtMQktMi44NTI1NjQxNTYwNTU0NTA0ZS0x
CTYuMzgxMDgyNTM0NzkwMDM5MWUtMgkyLjIzNjk2MzcyMzA1NzQ1MjFlLTEJMS45MDc0MDAwMDAw
MDAwMDAyZS02Ci0JWzI2MF0JLTEuNjkwMzUyMTEyMDU0ODI0OGUtMQktNy4yNjgyODc5ODY1MTY5
NTI1ZS0yCTkuNjM1MjMzMTM0MDMxMjk1OGUtMgkxLjMyNTY1MzczNzQyODI4NDJlKzAJMS45MDc0
MDAwMDAwMDAwMDAyZS02Ci0JLi4uYW5kIDE3ODcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9y
IG9mIDYuMDAxMzA2NzcyMjMyMDU1N2UtMSBhdCBpbmRleCBvZiAyOTEuCi0JWzI5MV0JLTEuMDI3
MzAzMjE4ODQxNTUyN2UrMAktMS42Mjc0MzM4OTYwNjQ3NTgzZSswCTYuMDAxMzA2NzcyMjMyMDU1
N2UtMQkzLjY4NzU4ODY1NTIwOTY1NzZlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JTWF4IFJl
bEVycm9yIG9mIDcuMTE2Mjk1Mzc0Mzk3MDY0N2UrMSBhdCBpbmRleCBvZiAxNTA4LgotCVsxNTA4
XQk2LjE3NDQ0NzM4NzQ1Njg5MzllLTIJLTguODAwMTUzMTU0ODc5ODA4NGUtNAk2LjI2MjQ0ODkx
OTAwNTY5MjBlLTIJNy4xMTYyOTUzNzQzOTcwNjQ3ZSsxCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgor
CVswXQktNy42NzUzMTIxNjE0NDU2MTc3ZS0xCS04LjQ0ODY3MjI5NDYxNjY5OTJlLTEJNy43MzM2
MDEzMzE3MTA4MTU0ZS0yCTkuMTUzNjI5MTg4MTQ4ODc2M2UtMgkxLjkwNzQwMDAwMDAwMDAwMDJl
LTYKKwlbMV0JLTkuMDY1NzIyODIzMTQzMDA1NGUtMQktMS4wMzQ1MzU2NDY0Mzg1OTg2ZSswCTEu
Mjc5NjMzNjQxMjQyOTgxMGUtMQkxLjIzNjkxNTk0OTM0MjIzNDBlLTEJMS45MDc0MDAwMDAwMDAw
MDAyZS02CisJWzJdCS0xLjAxOTczNTgxMzE0MDg2OTFlKzAJLTEuMTg2NjA2MTY4NzQ2OTQ4MmUr
MAkxLjY2ODcwMzU1NjA2MDc5MTBlLTEJMS40MDYyODI1NTYwOTI2NzIwZS0xCTEuOTA3NDAwMDAw
MDAwMDAwMmUtNgorCVszXQktMS4xMDM4NTI2Mjk2NjE1NjAxZSswCS0xLjI5OTQ3MzI4NTY3NTA0
ODhlKzAJMS45NTYyMDY1NjAxMzQ4ODc3ZS0xCTEuNTA1Mzg0MjA1ODE1ODgxN2UtMQkxLjkwNzQw
MDAwMDAwMDAwMDJlLTYKKwlbNF0JLTEuMTU2NTc0NzI2MTA0NzM2M2UrMAktMS4zNzIzOTExMDQ2
OTgxODEyZSswCTIuMTU4MTYzNzg1OTM0NDQ4MmUtMQkxLjU3MjU1NzM5ODk0MTM3MjFlLTEJMS45
MDc0MDAwMDAwMDAwMDAyZS02CisJLi4uYW5kIDEyNzUgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vy
cm9yIG9mIDIuNTM1MDIwMTEyOTkxMzMzMGUtMSBhdCBpbmRleCBvZiAyMC4KKwlbMjBdCTkuNDUy
MzE0OTcyODc3NTAyNGUtMQk2LjkxNzI5NDg1OTg4NjE2OTRlLTEJMi41MzUwMjAxMTI5OTEzMzMw
ZS0xCTMuNjY0NzU2NDc1Mzg0NzI3M2UtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlNYXggUmVs
RXJyb3Igb2YgOC4zNzI0MTc2OTUxMzg0NDc5ZSsxIGF0IGluZGV4IG9mIDc0MC4KKwlbNzQwXQk3
LjI3OTg1NDI2NzgzNTYxNzFlLTIJLTguODAwMTUzMTU0ODc5ODA4NGUtNAk3LjM2Nzg1NTc5OTM4
NDQxNTFlLTIJOC4zNzI0MTc2OTUxMzg0NDc5ZSsxCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgogIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBYIE91dHB1dCBmcm9tIGdh
aW4gc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3Qg
ZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0
IDNdIDIgb3V0IG9mIDUgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW1Rlc3QgNF0gTm8gZGV6aXBwZXJpbmcgb2YgZnJl
cXVlbmN5IHZzIEpTIGZpbHRlciAKLVBBU1MgICBPdXRwdXQgZnJvbSBsb3dwYXNzIGZpbHRlciBl
cXVhbHMgWzAsMC4wMDA3MTI3NTA4ODcwMzI1OTgzLDAuMDA0MTYzOTM1MzE0ODYzOTIsMC4wMTI3
MzcwODc5MDU0MDY5NTIsMC4wMjgzMDE5Nzg0ODM3OTYxMiwwLjA1MjE2NzA3NjYxNzQ3OTMyNCww
LjA4NTA1MzQ4ODYxMjE3NDk5LDAuMTI3MDkwMzA1MDg5OTUwNTYsMC4xNzc4MzA2NjYzMDM2MzQ2
NCwwLjIzNjI4NzM1NTQyMjk3MzYzLDAuMzAwOTg2MTExMTY0MDkzLDAuMzcwMDM0NDg2MDU1Mzc0
MTUsMC40NDEyMDM2NTM4MTI0MDg0NSwwLjUxMjAyMDIzMDI5MzI3MzksMC41Nzk4NjQ5MTkxODU2
Mzg0LDAuNjQyMDc0ODIzMzc5NTE2Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjUuOTYwN2UtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9
LiAKLVBBU1MgICBPdXRwdXQgbWF0Y2hlcyBKUyBmaWx0ZXIgcmVzdWx0cyBpcyB0cnVlLiAKLVBB
U1MgPCBbVGVzdCA0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMp
IAorRkFJTCBYIE91dHB1dCBmcm9tIGxvd3Bhc3MgZmlsdGVyIGRvZXMgbm90IGVxdWFsIFstMC4w
MDMwMDEwNDg0NjI0NjU0MDU1LC0wLjAxNDA2OTg5NjE5MTM1ODU2NiwtMC4wMzM0MDIwNDgwNTEz
NTcyNywtMC4wNTcyOTE0MTA4NjMzOTk1MDYsLTAuMDgyMTY0MzAyNDY4Mjk5ODcsLTAuMTA0NzAw
NjQ3Mjk0NTIxMzMsLTAuMTIxOTQwOTU1NTE5Njc2MjEsLTAuMTMxMzc2NjM5MDA4NTIyMDMsLTAu
MTMxMDIxNzM4MDUyMzY4MTYsLTAuMTE5NDY0NjA2MDQ2Njc2NjQsLTAuMDk1ODk4ODE0NDk5Mzc4
MiwtMC4wNjAxMzMwMjEzMjQ4NzI5NywtMC4wMTI1ODAxNzQwMjE0MjI4NjMsMC4wNDU3NzI5OTU3
OTk3Nzk4OSwwLjExMzQxNDcxOTcwMDgxMzMsMC4xODgzNzMyMjI5NDcxMjA2Ny4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjUuOTYwN2Ut
NywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNF
cnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCisJWzBdCS0yLjM4Nzc0OTg1MDc0OTk2OTVl
LTEJLTMuMDAxMDQ4NDYyNDY1NDA1NWUtMwkyLjM1NzczOTM2NjEyNTMxNTRlLTEJNy44NTYzODU1
MTE5NzY2OTcwZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCVsxXQktMy42MjY4MzQ3NTAxNzU0
NzYxZS0xCS0xLjQwNjk4OTYxOTEzNTg1NjZlLTIJMy40ODYxMzU3ODgyNjE4OTA0ZS0xCTIuNDc3
NzI2NzMwMDY4NTU2OWUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwlbMl0JLTQuNzU5MDAxNDMz
ODQ5MzM0N2UtMQktMy4zNDAyMDQ4MDUxMzU3MjY5ZS0yCTQuNDI0OTgwOTUzMzM1NzYyMGUtMQkx
LjMyNDc2MzM2Mzc3MTAyOTZlKzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzNdCS01Ljc0ODI1
NTI1MjgzODEzNDhlLTEJLTUuNzI5MTQxMDg2MzM5OTUwNmUtMgk1LjE3NTM0MTE0NDIwNDEzOTdl
LTEJOS4wMzMzNjMwNTc3NjA1MzkwZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCVs0XQktNi41
NjMyNjI5Mzk0NTMxMjUwZS0xCS04LjIxNjQzMDI0NjgyOTk4NjZlLTIJNS43NDE2MTk5MTQ3NzAx
MjYzZS0xCTYuOTg3OTczNzgyMTQ4NjY4N2UrMAk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwkuLi5h
bmQgMTg5MyBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMS4xNDc1MjI0MTk2OTEwODU4
ZSswIGF0IGluZGV4IG9mIDI5Mi4KKwlbMjkyXQkzLjczODM0OTk3NDE1NTQyNjBlLTEJLTcuNzM2
ODc0MjIyNzU1NDMyMWUtMQkxLjE0NzUyMjQxOTY5MTA4NThlKzAJMS40ODMxODYwODYwNzU5OTE2
ZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCU1heCBSZWxFcnJvciBvZiAyLjQwODQ3MTE0OTUz
MjM1MzFlKzMgYXQgaW5kZXggb2YgMTAxNC4KKwlbMTAxNF0JLTcuNjYyMDU2Njg0NDk0MDE4NmUt
MQkzLjE4MjYxNjIwMTIyOTM5MzVlLTQJNy42NjUyMzkzMDA2OTUyNDc5ZS0xCTIuNDA4NDcxMTQ5
NTMyMzUzMWUrMwk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKyBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBPdXRwdXQgbWF0Y2hlcyBKUyBmaWx0ZXIgcmVzdWx0cyBp
cyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK0ZBSUwgPCBbVGVzdCA0XSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtUZXN0IDVdIFRlc3Qg
d2l0aCBtb2R1bGF0aW9uIAogUEFTUyAgIE1vZHVsYXRpb246IEF0IHRpbWUgMCwgZnJlcXVlbmN5
IGlzIGVxdWFsIHRvIDM1MC4gCiBQQVNTICAgTW9kdWxhdGlvbjogQXQgdGltZSAwLjAxNTYyNSwg
ZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDEwLiAKIFBBU1MgICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAu
MDYyNSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIC0xMC4gCi1GQUlMIFggTW9kdWxhdGlvbjogT3V0
cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMCwwLjE2OTIzNjg5ODQy
MjI0MTIsMC4zMzYyMTQ4NDA0MTIxMzk5LDAuNDk2MDcxNzI2MDgzNzU1NSwwLjY0NDEwNjgwNTMy
NDU1NDQsMC43NzU5MTc3MDg4NzM3NDg4LDAuODg3NTMwMjY3MjM4NjE2OSwwLjk3NTUxNTcyMzIy
ODQ1NDYsMS4wMzcwOTMwNDMzMjczMzE1LDEuMDcwMjE0MDMzMTI2ODMxLDEuMDczNjI3MjMzNTA1
MjQ5LDEuMDQ2OTE4MDM0NTUzNTI3OCwwLjk5MDUyODA0NzA4NDgwODMsMC45MDU3NDY0MDAzNTYy
OTI3LDAuNzk0NjgwMTc4MTY1NDM1OCwwLjY2MDE5ODM5MDQ4Mzg1NjIuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJv
cgkJVGVzdCB0aHJlc2hvbGQKLQlbMjU2XQktOC43NDM3MTU4ODIzMDEzMzA2ZS0xCS03LjA3MTA2
NzY5MDg0OTMwNDJlLTEJMS42NzI2NDgxOTE0NTIwMjY0ZS0xCTIuMzY1NDgxNzk3OTEzNzgxNWUt
MQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMjU3XQktNy42MzI4MDMzMjA4ODQ3MDQ2ZS0xCS01
Ljc4MzEzNzY3OTEwMDAzNjZlLTEJMS44NDk2NjU2NDE3ODQ2NjgwZS0xCTMuMTk4Mzc3MzI0NTk1
Mzc0NWUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMjU4XQktNi4zMTY4NDc4MDEyMDg0OTYx
ZS0xCS00LjMzMDkzODE2MDQxOTQ2NDFlLTEJMS45ODU5MDk2NDA3ODkwMzIwZS0xCTQuNTg1NDAy
OTAxNzA0NTM2N2UtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMjU5XQktNC44MzQ0MjQyNTcy
Nzg0NDI0ZS0xCS0yLjc1NTcxODgyNzI0NzYxOTZlLTEJMi4wNzg3MDU0MzAwMzA4MjI4ZS0xCTcu
NTQzMjQyMTA5NzQzODY2MmUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMjYwXQktMy4yMjg2
NjU4ODgzMDk0Nzg4ZS0xCS0xLjEwMjIyMjQyNzcyNTc5MTllLTEJMi4xMjY0NDM0NjA1ODM2ODY4
ZS0xCTEuOTI5MjMyNjE4NjU2ODAxNmUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQkuLi5hbmQg
MTc4NyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgOC41NTA2MjI0NjMyMjYzMTg0ZS0x
IGF0IGluZGV4IG9mIDU3MS4KLQlbNTcxXQkxLjU1NTU5OTIxMjY0NjQ4NDRlKzAJNy4wMDUzNjk2
NjMyMzg1MjU0ZS0xCTguNTUwNjIyNDYzMjI2MzE4NGUtMQkxLjIyMDU4MTE5MzMyMzI3MDZlKzAJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4
IG9mIDEwMjQuCi0JWzEwMjRdCTEuNDU2MjM3NTg0MzUyNDkzM2UtMQkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAJMS40NTYyMzc1ODQzNTI0OTMzZS0xCUluZmluaXR5CTAuMDAwMDAwMDAwMDAwMDAwMGUr
MAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIE1vZHVsYXRp
b246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBv
dXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgNV0gMiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBNb2R1bGF0
aW9uOiBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGVxdWFscyBbMCwtMC4xNjc5MzgzMDY5
Mjc2ODA5NywtMC4zMzExMDYzMDUxMjIzNzU1LC0wLjQ4NDg2OTI0MTcxNDQ3NzU0LC0wLjYyNDg1
OTUxMTg1MjI2NDQsLTAuNzQ3MTAwNTkxNjU5NTQ1OSwtMC44NDgxMjAzMzE3NjQyMjEyLC0wLjky
NTA0OTM2NDU2NjgwMywtMC45NzU3MDIyMjYxNjE5NTY4LC0wLjk5ODY0MDE3OTYzNDA5NDIsLTAu
OTkzMjEyMDQ0MjM5MDQ0MiwtMC45NTk1NzE0MjExNDYzOTI4LC0wLjg5ODY3NDQ4ODA2NzYyNywt
MC44MTIyNTA1NTQ1NjE2MTUsLTAuNzAyNzU0Nzk1NTUxMywtMC41NzMyOTcxNDI5ODI0ODI5Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBNb2R1bGF0aW9uOiBPdXRwdXQgZnJv
bSBmcmVxdWVuY3kgc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUu
IAorUEFTUyA8IFtUZXN0IDVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0
aW9ucykgCiBGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDUgb3V0IG9mIDYgdGFz
a3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5uZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRp
b2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNo
YW5uZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRpb2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1l
eHBlY3RlZC50eHQKaW5kZXggOTkyODkwMzc1YTU2YTc3OGMzNDEyYTg5MWZjNmY3NjE5ZjliODBh
Yy4uNGQ2OTNjZTFkMThkYjg0YTlkOWRmZjIzNmM1OTNjZDNjNzdmMzA4ZiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVy
Z2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY2hhbm5lbG1l
cmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5lbG1lcmdlci1kaXNjb25uZWN0LWV4cGVjdGVk
LnR4dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBV
bmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0K
IFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJzaWxl
bnQtZGlzY29ubmVjdCIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9sdmVyLXJlc3BvbnNlLTQtY2hhbi1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZv
bHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0ZWQudHh0CmluZGV4IDFkNzJjOTU0YTdkYzU4MTYx
ZjgxYjJhNjM2MDA5NjI0NGE2NTQ0MmYuLjNkZDdiNmQ1NWMwMDNjNmVmOWQ0Y2IzMDAyZmMwODU0
ODllYTUwZjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZh
Y2UvY29udm9sdmVyLXJlc3BvbnNlLTQtY2hhbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4
cGVjdGVkLnR4dApAQCAtMSw2ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFBy
b21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBp
bnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxl
ZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAj
IEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUi
IApAQCAtMjMsMTAgKzIwLDEwIEBAIFBBU1MgPiBbMy1jaGFubmVsIGlucHV0XSAzLT4yIGRvd25t
aXggcHJvZHVjaW5nIDItY2hhbm5lbCBvdXRwdXQKIFBBU1MgPiBbNC1jaGFubmVsIGlucHV0XSA0
LT4yIGRvd25taXggcHJvZHVjaW5nIDItY2hhbm5lbCBvdXRwdXQgCiBQQVNTID4gWzUuMS1jaGFu
bmVsIGlucHV0XSA1LjEtPjIgZG93bm1peCBwcm9kdWNpbmcgMi1jaGFubmVsIG91dHB1dCAKIFBB
U1MgPiBbZGVsYXllZCBidWZmZXIgc2V0XSBEZWxheWVkIHNldCBvZiA0LWNoYW5uZWwgcmVzcG9u
c2UgCi1GQUlMIFggT3V0cHV0IHdpdGggZGVsYXllZCBzZXR0aW5nIG9mIGNvbnZvbHZlciBidWZm
ZXIgc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgZGlmZmVyZW50IGZyb20g
MC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2RlbGF5ZWQg
YnVmZmVyIHNldF0gMSBvdXQgb2YgMSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBPdXRwdXQgd2l0aCBkZWxheWVkIHNl
dHRpbmcgb2YgY29udm9sdmVyIGJ1ZmZlciBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA3
NjcgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8IFtkZWxheWVkIGJ1ZmZlciBzZXRdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCiBQQVNTID4gW2NvdW50IDEs
IDItY2hhbm5lbCBpbl0gMi0+MSBkb3dubWl4IGJlY2F1c2UgY2hhbm5lbCBjb3VudCBpcyAxIAog
UEFTUyA+IFtjb3VudCAxLCA0LWNoYW5uZWwgaW5dIDQtPjEgZG93bm1peCBiZWNhdXNlIGNoYW5u
ZWwgY291bnQgaXMgMSAKIFBBU1MgPiBbY291bnQgMSwgNS4xLWNoYW5uZWwgaW5dIDUuMS0+MSBk
b3dubWl4IGJlY2F1c2UgY2hhbm5lbCBjb3VudCBpcyAxIAotRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAxIG91dCBvZiAxMCB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNI
RUQ6IDEwIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWRlbGF5bm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4
dAppbmRleCA4ZmQ3OWEyOGZjOGExZGUxY2UzZjA4MWZkODQ5ODQxODQxNDZmOWRhLi4wZDJkMGVm
MmU4YjljZjM3OGM3OGExZGEyMmIxZmJlMTI0YjQ2ZjhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWRlbGF5bm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtZGVsYXlub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3Rl
ZC50eHQKQEAgLTEsOCArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNl
IFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxp
ZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJ
bnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09O
U09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3Ig
KEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQ
QVNTIEV4ZWN1dGluZyAidGVzdDAiIApAQCAtMTAsNDcgKzUsNDcgQEAgUEFTUyBFeGVjdXRpbmcg
InRlc3QxIgogUEFTUyBFeGVjdXRpbmcgInRlc3QyIiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFT
UyA+IFt0ZXN0MF0gVGVzdCBEZWxheU5vZGUgaGFzIG5vIGRlemlwcGVyaW5nIAotUEFTUyAgIG91
dHB1dFswOjYzXSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKLVBBU1MgICBvdXRwdXRb
NjQ6MTI3XSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwx
MSwxMiwxMywxNCwxNSwxNi4uLl0uIAorRkFJTCBYIG91dHB1dFswOjYzXTogRXhwZWN0ZWQgMCBm
b3IgYWxsIHZhbHVlcyBidXQgZm91bmQgNjQgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFj
dHVhbAorCVswXQk2NS4xNDYyNjMxMjI1NTg2CisJWzFdCTY2LjI5MjA3NjExMDgzOTg0CisJWzJd
CTY3LjQzNzQ0NjU5NDIzODI4CisJWzNdCTY4LjU4MjM3NDU3Mjc1MzkKKwkuLi5hbmQgNjAgbW9y
ZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIG91
dHB1dFs2NDoxMjddIGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMSwyLDMsNCw1
LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsMTYuLi5dIGJ1dCBkaWZmZXJzIGluIDY0IHBsYWNl
czoKKwlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAorCVswXQkxLjM3NjM2NTgxNDIwODk4NDRlKzIJ
MS4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzFdCTEuMzg3NTY1MzA3NjE3MTg3NWUrMgkyLjAwMDAw
MDAwMDAwMDAwMDBlKzAKKwlbMl0JMS4zOTg3NjExMzg5MTYwMTU2ZSsyCTMuMDAwMDAwMDAwMDAw
MDAwMGUrMAorCVszXQkxLjQwOTk1MzMwODEwNTQ2ODhlKzIJNC4wMDAwMDAwMDAwMDAwMDAwZSsw
CisJLi4uYW5kIDYwIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKIEZBSUwgWCBvdXRwdXRbMTI4Ol0gZXhwZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFy
cmF5IFsxMTMsMTE0LDExNSwxMTYsMTE3LDExOCwxMTksMTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUs
MTI2LDEyNywxMjguLi5dIGJ1dCBkaWZmZXJzIGluIDE2MjU2IHBsYWNlczoKIAlJbmRleAlBY3R1
YWwJCQlFeHBlY3RlZAotCVswXQk2LjUwMDAwMDAwMDAwMDAwMDBlKzEJMS4xMzAwMDAwMDAwMDAw
MDAwZSsyCi0JWzFdCTYuNjAwMDAwMDAwMDAwMDAwMGUrMQkxLjE0MDAwMDAwMDAwMDAwMDBlKzIK
LQlbMl0JNi43MDAwMDAwMDAwMDAwMDAwZSsxCTEuMTUwMDAwMDAwMDAwMDAwMGUrMgotCVszXQk2
LjgwMDAwMDAwMDAwMDAwMDBlKzEJMS4xNjAwMDAwMDAwMDAwMDAwZSsyCisJWzBdCTIuMDg2MjA1
NDQ0MzM1OTM3NWUrMgkxLjEzMDAwMDAwMDAwMDAwMDBlKzIKKwlbMV0JMi4wOTcxOTIwNzc2MzY3
MTg4ZSsyCTEuMTQwMDAwMDAwMDAwMDAwMGUrMgorCVsyXQkyLjEwODE3NTY1OTE3OTY4NzVlKzIJ
MS4xNTAwMDAwMDAwMDAwMDAwZSsyCisJWzNdCTIuMTE5MTU2MzQxNTUyNzM0NGUrMgkxLjE2MDAw
MDAwMDAwMDAwMDBlKzIKIAkuLi5hbmQgMTYyNTIgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFt0ZXN0MF0gMSBvdXQgb2YgMyBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZB
SUwgPCBbdGVzdDBdIDMgb3V0IG9mIDMgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW3Rlc3QxXSBUZXN0IHZhbHVlIHNl
dHRlciBhbmQgc2V0VmFsdWVBdFRpbWUgCi1GQUlMIFggLnZhbHVlIHNldHRlciBvdXRwdXQgZG9l
cyBub3QgZXF1YWwgWzAsMCwwLDAsMC4wNTE4MDc2MzgyNTc3NDE5MywwLjEwOTE5OTg2NjY1MjQ4
ODcxLDAuMTY2MjI5ODczODk1NjQ1MTQsMC4yMjI3MDg2NzIyODUwNzk5NiwwLjI3ODQ0ODc5MDMx
MTgxMzM1LDAuMzMzMjY1NjAyNTg4NjUzNTYsMC4zODY5NzcwNDY3MjgxMzQxNiwwLjQzOTQwNTE3
MzA2MzI3ODIsMC40OTAzNzYyNjM4NTY4ODc4LDAuNTM5NzIwNzczNjk2ODk5NCwwLjU4NzI3NTYy
NDI3NTIwNzUsMC42MzI4ODI3MTQyNzE1NDU0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwNjU4MTksInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4KK0ZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBkb2VzIG5vdCBlcXVhbCBbMC41
MjE0Njg4MTgxODc3MTM2LDAuNTY5NzAzODE3MzY3NTUzNywwLjYxNjA0OTU4NzcyNjU5MywwLjY2
MDM1MjM0OTI4MTMxMSwwLjcwMjQ2NDkzODE2Mzc1NzMsMC43NDIyNDgwNTgzMTkwOTE4LDAuNzc5
NTY5NDQ3MDQwNTU3OSwwLjgxNDMwNTg0MTkyMjc2LDAuODQ2MzQxMzcxNTM2MjU0OSwwLjg3NTU3
MDE3ODAzMTkyMTQsMC45MDE4OTU0MDM4NjE5OTk1LDAuOTI1MjI5NDg5ODAzMzE0MiwwLjk0NTQ5
NTI0Nzg0MDg4MTMsMC45NjI2MjUyNjUxMjE0NiwwLjk3NjU2Mjk3NjgzNzE1ODIsMC45ODcyNjE5
NTA5Njk2OTYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLjAwMDA2NTgxOSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFj
dHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzM4
NF0JNS4yODQ5NDgyNzQ0OTMyMTc1ZS0yCTUuMjE0Njg4MTgxODc3MTM2MmUtMQk0LjY4NjE5MzM1
NDQyNzgxNDVlLTEJOC45ODY1MjY1MDE2NDk2NTU0ZS0xCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQot
CVszODVdCS00LjcxMzIwMzI5MjM0MDA0MDJlLTMJNS42OTcwMzgxNzM2NzU1MzcxZS0xCTUuNzQ0
MTcwMjA2NTk4OTM3NWUtMQkxLjAwODI3MzA3NjU1MDc1NjZlKzAJNi41ODE5MDAwMDAwMDAwMDAx
ZS01Ci0JWzM4Nl0JLTYuMjI2MDEwNjIwNTk0MDI0N2UtMgk2LjE2MDQ5NTg3NzI2NTkzMDJlLTEJ
Ni43ODMwOTY5MzkzMjUzMzI2ZS0xCTEuMTAxMDYzNDY1NDE5NTU5MmUrMAk2LjU4MTkwMDAwMDAw
MDAwMDFlLTUKLQlbMzg3XQktMS4xOTYwMDYwODk0NDg5Mjg4ZS0xCTYuNjAzNTIzNDkyODEzMTEw
NGUtMQk3Ljc5OTUyOTU4MjI2MjAzOTJlLTEJMS4xODExMTYzNTI2MTg1MDYyZSswCTYuNTgxOTAw
MDAwMDAwMDAwMWUtNQotCVszODhdCS0xLjc2NTQ0MzA4NjYyNDE0NTVlLTEJNy4wMjQ2NDkzODE2
Mzc1NzMyZS0xCTguNzkwMDkyNDY4MjYxNzE4OGUtMQkxLjI1MTMyMTE2Nzg5MTg4MjVlKzAJNi41
ODE5MDAwMDAwMDAwMDAxZS01Ci0JLi4uYW5kIDE1OTk1IG1vcmUgZXJyb3JzLgotCU1heCBBYnNF
cnJvciBvZiAxLjkwOTc5NTU4MjI5NDQ2NDFlKzAgYXQgaW5kZXggb2YgMTMwMDcuCi0JWzEzMDA3
XQk5LjU1NDg4MjA0OTU2MDU0NjllLTEJLTkuNTQzMDczNzczMzg0MDk0MmUtMQkxLjkwOTc5NTU4
MjI5NDQ2NDFlKzAJMi4wMDEyMzczNjYxMjA5MDE4ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQot
CU1heCBSZWxFcnJvciBvZiA1LjQzNTEzMTAxOTc4NTQzNzdlKzIgYXQgaW5kZXggb2YgNDI5Lgot
CVs0MjldCS01LjY2NzUxODM3NzMwNDA3NzFlLTEJMS4wNDQ2Nzg2MTgyMDAxMjMzZS0zCTUuNjc3
OTY1MTYzNDg2MDc4NGUtMQk1LjQzNTEzMTAxOTc4NTQzNzdlKzIJNi41ODE5MDAwMDAwMDAwMDAx
ZS01CisJWzBdCTYuMDU2NTY5NTE2NjU4NzgzMGUtMgk1LjIxNDY4ODE4MTg3NzEzNjJlLTEJNC42
MDkwMzEyMzAyMTEyNTc5ZS0xCTguODM4NTU1NzY2ODIyNzQ1NWUtMQk2LjU4MTkwMDAwMDAwMDAw
MDFlLTUKKwlbMV0JMS4wNzM3NjY4NzIyODY3OTY2ZS0yCTUuNjk3MDM4MTczNjc1NTM3MWUtMQk1
LjU4OTY2MTQ4NjQ0Njg1NzVlLTEJOS44MTE1MjE5MTAyMzYwMjc0ZS0xCTYuNTgxOTAwMDAwMDAw
MDAwMWUtNQorCVsyXQktMy45MTMzMTI0MDUzNDc4MjQxZS0yCTYuMTYwNDk1ODc3MjY1OTMwMmUt
MQk2LjU1MTgyNzExNzgwMDcxMjZlLTEJMS4wNjM1MjI2ODUyNDAxNDYzZSswCTYuNTgxOTAwMDAw
MDAwMDAwMWUtNQorCVszXQktOC44OTMyMTkzODE1NzA4MTYwZS0yCTYuNjAzNTIzNDkyODEzMTEw
NGUtMQk3LjQ5Mjg0NTQzMDk3MDE5MjBlLTEJMS4xMzQ2NzM4NTA4ODA1MTM2ZSswCTYuNTgxOTAw
MDAwMDAwMDAwMWUtNQorCVs0XQktMS4zODU0NDgxMjc5ODUwMDA2ZS0xCTcuMDI0NjQ5MzgxNjM3
NTczMmUtMQk4LjQxMDA5NzUwOTYyMjU3MzllLTEJMS4xOTcyMjY2NTg5NzEyNzM0ZSswCTYuNTgx
OTAwMDAwMDAwMDAwMWUtNQorCS4uLmFuZCAzMjI3IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJv
ciBvZiAxLjg0NTA0MjM0NzkwODAyMDBlKzAgYXQgaW5kZXggb2YgMjQuCisJWzI0XQktOS4wOTQ3
ODAwODc0NzEwMDgzZS0xCTkuMzU1NjQzMzkxNjA5MTkxOWUtMQkxLjg0NTA0MjM0NzkwODAyMDBl
KzAJMS45NzIxMTcwMTA3NDc1Mjk3ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCU1heCBSZWxF
cnJvciBvZiA3LjcxMjM4NjU3NTIwMTA3ODRlKzIgYXQgaW5kZXggb2YgNDUuCisJWzQ1XQktOC4w
NDY1MTg1NjQyMjQyNDMyZS0xCTEuMDQ0Njc4NjE4MjAwMTIzM2UtMwk4LjA1Njk2NTM1MDQwNjI0
NDRlLTEJNy43MTIzODY1NzUyMDEwNzg0ZSsyCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQogIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBYIC52YWx1ZSBzZXR0ZXIgb3V0
cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2Uu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFt0ZXN0MV0gMiBv
dXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKIFBBU1MgPiBbdGVzdDJdIFRlc3QgdmFsdWUgc2V0dGVyIGFuZCBtb2R1bGF0
aW9uIAotRkFJTCBYIFdpdGggbW9kdWxhdGlvbjogLnZhbHVlIHNldHRlciBvdXRwdXQgZG9lcyBu
b3QgZXF1YWwgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJv
cgkJVGVzdCB0aHJlc2hvbGQKLQlbMzg0XQk1LjI4NjM1NzE3OTI4NDA5NThlLTIJNS4yMTQ1NjY1
ODg0MDE3OTQ0ZS0xCTQuNjg1OTMwODcwNDczMzg0OWUtMQk4Ljk4NjIzMjY4MzA2ODYyMjNlLTEJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzM4NV0JOS40MTA5NjEyNzAzMzIzMzY0ZS0xCS01Ljg1
MTg1ODg1NDI5MzgyMzJlLTEJMS41MjYyODIwMTI0NjI2MTYwZSswCTIuNjA4MjAwMzE3OTk0MTcy
MGUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMzg2XQk2Ljg5NzUwNTUyMTc3NDI5MjBlLTEJ
LTkuNzgxMzE1OTIyNzM3MTIxNmUtMQkxLjY2Nzg4MjE0NDQ1MTE0MTRlKzAJMS43MDUxNzE1MzA3
MjgzNjc3ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszODddCS0zLjQyNTM4NTk1MTk5NTg0
OTZlLTEJLTIuNDkyMDgwMTgxODM3MDgxOWUtMQk5LjMzMzA1NzcwMTU4NzY3NzBlLTIJMy43NDUw
ODcyNDQ2Mjc3NTcyZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszODhdCS05Ljg1Mjc1OTgz
ODEwNDI0ODBlLTEJNy4xNTUyNDYxMzg1NzI2OTI5ZS0xCTEuNzAwODAwNTk3NjY3Njk0MWUrMAky
LjM3Njk5ODAzMDE1NzE2MzRlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JLi4uYW5kIDk2Njgg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEuOTA5ODg2MjQwOTU5MTY3NWUrMCBhdCBp
bmRleCBvZiAxNjA0MC4KLQlbMTYwNDBdCS05LjU4ODg3NjM2NjYxNTI5NTRlLTEJOS41MDk5ODYw
NDI5NzYzNzk0ZS0xCTEuOTA5ODg2MjQwOTU5MTY3NWUrMAkyLjAwODI5NTUyNDY0OTgxNjBlKzAJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDYuODY2ODAxNzI1ODU0MzU5
NGUrNCBhdCBpbmRleCBvZiA0MjgwLgotCVs0MjgwXQktNS42NTk3NTQ4NzIzMjIwODI1ZS0xCTgu
MjQyMzE5MzgxNjc5NDA4M2UtNgk1LjY1OTgzNzI5NTUxNTg5OTNlLTEJNi44NjY4MDE3MjU4NTQz
NTk0ZSs0CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCBYIFdpdGggbW9kdWxhdGlvbjogLnZhbHVlIHNldHRlciBvdXRwdXQg
bWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW3Rlc3QyXSAyIG91dCBv
ZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAzIG91dCBvZiAzIHRh
c2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IGVxdWFscyBbMC41MjE0
NTY2NTg4NDAxNzk0LC0wLjU4NTE4NTg4NTQyOTM4MjMsLTAuOTc4MTMxNTkyMjczNzEyMiwtMC4y
NDkyMDgwMTgxODM3MDgyLDAuNzE1NTI0NjEzODU3MjY5MywwLjk4MDg1OTMzOTIzNzIxMzEsMC40
ODM2NDkzMTM0NDk4NTk2LC0wLjI0ODY5ODM1Mzc2NzM5NTAyLC0wLjc3MDM2MjkxMzYwODU1MSwt
MC45NzkwOTI3NzY3NzUzNjAxLC0wLjk5MDMxODQxNzU0OTEzMzMsLTAuOTQ5MDI1NjMwOTUwOTI3
NywtMC45NDE4MTAyNTAyODIyODc2LC0wLjk3ODgyNTI3MTEyOTYwODIsLTAuOTk1MTY2MjQyMTIy
NjUwMSwtMC44NTI5ODA3MzI5MTc3ODU2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFu
Y2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFs
dWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFTUyA8IFt0ZXN0Ml0gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBG
SU5JU0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUt
aW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZ2Fp
bm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCA3YmRlNTgy
NWQ4ZWIzNzhlYTUwOWZmNjFiYzk5ODI3YzM3ODQzZjc0Li4zMjY1NTFiZjdjZjVkYjZmNGJmZTE2
ZWQwZDViOTMyOWZiZjg5NWQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWlu
dGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1n
YWlubm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEs
MyBAQAotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFs
aWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xF
IE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJ
TCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGlu
dmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIEZBSUwg
RXhlY3V0aW5nICJ0ZXN0MCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGgg
dmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IENvbnN0
YW50U291cmNlTm9kZSIKQEAgLTEwLDI0ICs2LDE4IEBAIFBBU1MgRXhlY3V0aW5nICJ0ZXN0MyIK
IFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFt0ZXN0MF0gRGV6aXBwZXJpbmcgb2YgR2Fpbk5v
ZGUgcmVtb3ZlZCAKIFBBU1MgPiBbdGVzdDJdIENvbXBhcmUgdmFsdWUgc2V0dGVyIGFuZCBzZXRW
YWx1ZUF0VGltZSAKLUZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0byBiZSBl
cXVhbCB0byB0aGUgYXJyYXkgWzAsMC4xNjc5MzgzMDY5Mjc2ODA5NywwLjMzMTEwNjMwNTEyMjM3
NTUsMC40ODQ4NjkyNDE3MTQ0Nzc1NCwwLjYyNDg1OTUxMTg1MjI2NDQsMC43NDcxMDA1OTE2NTk1
NDU5LDAuODQ4MTIwMzMxNzY0MjIxMiwwLjkyNTA0OTM2NDU2NjgwMywwLjk3NTcwMjIyNjE2MTk1
NjgsMC45OTg2NDAxNzk2MzQwOTQyLDAuOTkzMjEyMDQ0MjM5MDQ0MiwwLjk1OTU3MTQyMTE0NjM5
MjgsMC44OTg2NzQ0ODgwNjc2MjcsMC44MTIyNTA1NTQ1NjE2MTUsMC43MDI3NTQ3OTU1NTEzLDAu
NTczMjk3MTQyOTgyNDgyOS4uLl0gYnV0IGRpZmZlcnMgaW4gNjQwIHBsYWNlczoKK0ZBSUwgWCAu
dmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAu
Mjc3MTYzODYzMTgyMDY3ODcsMC4yNTM5NDczMTc2MDAyNTAyNCwwLjIyMzUxNzM0MzQwMTkwODg3
LDAuMTg2NzM4NDAxNjUxMzgyNDUsMC4xNDQ2NTUxNTMxNTUzMjY4NCwwLjA5ODQ2Mjk2MTYxNDEz
MTkzLDAuMDQ5NDczOTU5OTUyNTkyODUsLTAuMDAwOTIwNDE0Mjg0MzM3MzEyLC0wLjA1MTI4ODU3
ODY1OTI5NjAzNiwtMC4xMDAxOTk5MTU0Njg2OTI3OCwtMC4xNDYyNjUwNDQ4MDgzODc3NiwtMC4x
ODgxNzU1MjkyNDE1NjE5LC0wLjIyNDc0MDkyMjQ1MTAxOTMsLTAuMjU0OTIyNTA5MTkzNDIwNCwt
MC4yNzc4NjMwODUyNjk5MjgsLTAuMjkyOTEwOTMzNDk0NTY3ODcuLi5dIGJ1dCBkaWZmZXJzIGlu
IDY0MCBwbGFjZXM6CiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKLQlbMzg0XQk5LjIzODc5NTA0
MjAzNzk2MzllLTEJMi43NzE2Mzg2MzE4MjA2Nzg3ZS0xCi0JWzM4NV0JOC40NjQ5MTAzODc5OTI4
NTg5ZS0xCTIuNTM5NDczMTc2MDAyNTAyNGUtMQotCVszODZdCTcuNDUwNTc3NjE2NjkxNTg5NGUt
MQkyLjIzNTE3MzQzNDAxOTA4ODdlLTEKLQlbMzg3XQk2LjIyNDYxMzE4OTY5NzI2NTZlLTEJMS44
NjczODQwMTY1MTM4MjQ1ZS0xCisJWzBdCTkuMjA2NDU5NTIyMjQ3MzE0NWUtMQkyLjc3MTYzODYz
MTgyMDY3ODdlLTEKKwlbMV0JOC40MDU4MDQwMzgwNDc3OTA1ZS0xCTIuNTM5NDczMTc2MDAyNTAy
NGUtMQorCVsyXQk3LjM3MjczNjkzMDg0NzE2ODBlLTEJMi4yMzUxNzM0MzQwMTkwODg3ZS0xCisJ
WzNdCTYuMTM4MTE5Njk3NTcwODAwOGUtMQkxLjg2NzM4NDAxNjUxMzgyNDVlLTEKIAkuLi5hbmQg
NjM2IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZB
SUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBp
cyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKIEZBSUwgPCBbdGVzdDJdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW3Rlc3QzXSBBdXRvbWF0
aW9uIGVmZmVjdHMgCi1GQUlMIFggV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1
dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAsMC4yMzA3NzQ3NzUxNDc0Mzgw
NSwwLjU2MDg4NDU5NDkxNzI5NzQsMC45Mjc1MzY1NDcxODM5OTA1LDEuMjQ5Mjk1NTkyMzA4MDQ0
NCwxLjQ0OTc1MzE2NTI0NTA1NjIsMS40ODAwMTg5NzMzNTA1MjUsMS4zMzMzMzk1NzE5NTI4MTk4
LDEuMDQ3NDc5MjcxODg4NzMzLDAuNjk0MTI1NjUyMzEzMjMyNCwwLjM1ODQyNjAwNDY0ODIwODYs
MC4xMTQ2OTY3MzM2NTM1NDUzOCwwLjAwNTQ3NTY0NjM1MDUzMjc3LDAuMDMwMDkxMTMxMTA2MDE5
MDIsMC4xNDYwOTgwMTc2OTI1NjU5MiwwLjI4MzEwMTg1NjcwODUyNjYuLi5dIGJ1dCBkaWZmZXJz
IGluIDY0MCBwbGFjZXM6Ci0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKLQlbMzg0XQkxLjI3NzQz
Mjc5OTMzOTI5NDRlKzAJNi4zMDcxNzIxNzkyMjIxMDY5ZS0xCi0JWzM4NV0JOC41NDI4MTk2MTkx
Nzg3NzIwZS0xCTIuNjE3MzgyNDA3MTg4NDE1NWUtMQotCVszODZdCTQuNzI2NTQ5Njg1MDAxMzcz
M2UtMQktNC44ODg1NDMxMTQwNjYxMjQwZS0yCi0JWzM4N10JMS45NDYzNDEzOTUzNzgxMTI4ZS0x
CS0yLjQxMDg4Nzc3NzgwNTMyODRlLTEKLQkuLi5hbmQgNjM2IG1vcmUgZXJyb3JzLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBXaXRoIG1vZHVsYXRpb246IC52
YWx1ZSBzZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0
cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCA8IFt0ZXN0M10gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5J
U0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTICAgV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91
dHB1dCBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLjYzMDcxNzIxNzkyMjIxMDcsMC4yNjE3
MzgyNDA3MTg4NDE1NSwtMC4wNDg4ODU0MzExNDA2NjEyNCwtMC4yNDEwODg3Nzc3ODA1MzI4NCwt
MC4yOTM3MzA5MTQ1OTI3NDI5LC0wLjIyOTM5OTQxMjg3MDQwNzEsLTAuMTA2MTM3MDQ0NzI3ODAy
MjgsMC4wMDEzODQxOTU1MjI0MDUyMDcyLDAuMDI1NTc3ODQ4Nzc3MTc0OTUsLTAuMDcyNTY0Njgz
ODU0NTc5OTMsLTAuMjkwNjUzMzc3NzcxMzc3NTYsLTAuNTg0NjEwMzQyOTc5NDMxMiwtMC44ODEw
MzY4Nzc2MzIxNDExLC0xLjA5ODU4ODk0MzQ4MTQ0NTMsLTEuMTcyMDIxMzg5MDA3NTY4NCwtMS4w
NzE3NTIwNzEzODA2MTUyLi4uXS4gCitQQVNTICAgV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0
dGVyIG91dHB1dCBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyB0cnVlLiAKK1BBU1Mg
PCBbdGVzdDNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitG
QUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDMgdGFza3Mgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLW9mZmxpbmVhdWRpb2NvbnRleHQtaW50ZXJmYWNlL2N1cnJlbnQtdGlt
ZS1ibG9jay1zaXplLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb2ZmbGluZWF1ZGlvY29u
dGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJsb2NrLXNpemUtZXhwZWN0ZWQudHh0CmluZGV4
IGRmMTI2OTJmMTlkNjlhODVkZGM2ZWRiNTkxNjEyMjcyNWQ2YmM1NDQuLmM3MjdiNjU0MGY3ZGNj
YWUwOWY5MzI0Y2I4NWFhMWNlNWE4MDE3MDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb2Zm
bGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJsb2NrLXNpemUtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb2ZmbGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2Uv
Y3VycmVudC10aW1lLWJsb2NrLXNpemUtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1G
QUlMIFRlc3QgY3VycmVudFRpbWUgYXQgY29tcGxldGlvbiBvZiBPZmZsaW5lQXVkaW9Db250ZXh0
IHJlbmRlcmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTog
b2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLiIKK1BBU1MgVGVzdCBjdXJyZW50VGltZSBhdCBjb21wbGV0aW9uIG9mIE9mZmxpbmVBdWRp
b0NvbnRleHQgcmVuZGVyaW5nIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0
b3Jub2RlLWludGVyZmFjZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2Uvb3NjLWJhc2ljLXdhdmVmb3JtLWV4cGVj
dGVkLnR4dAppbmRleCBmZGNmOTZjYjdiZDFjOWI2MWQ0ZTJjZjc1ODg3YjIxYjFlZGZlOThiLi4x
Njk4MmM3NDdkY2EzMWM5YTIzMzBjZGJlYWY2YTk2YTZlMjc2MzJlIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVyZmFjZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL29z
Yy1iYXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQKQEAgLTgsNjkgKzgsMjEgQEAgUEFTUyBFeGVj
dXRpbmcgIlRlc3QgNCIKIFBBU1MgRXhlY3V0aW5nICJUZXN0IDUiIAogUEFTUyBBdWRpdCByZXBv
cnQgCiBQQVNTID4gW1Rlc3QgMF0gU2luZSB3YXZlOiAxMDAgSHogCi1GQUlMIFggU2luZTogMTAw
IEh6IGRvZXMgbm90IGVxdWFsIFswLDAuMDE0MjQ3MTAzNTk0MjQzNTI2LDAuMDI4NDkxMzE0NTAw
NTcwMjk3LDAuMDQyNzI5NzQyODI1MDMxMjgsMC4wNTY5NTk0OTg2NzM2Nzc0NDQsMC4wNzExNzc2
OTEyMjEyMzcxOCwwLjA4NTM4MTQzMzM2NzcyOTE5LDAuMDk5NTY3ODQ1NDYzNzUyNzUsMC4xMTM3
MzQwNDQxMzQ2MTY4NSwwLjEyNzg3NzE2MDkwNjc5MTcsMC4xNDE5OTQzMTI0MDU1ODYyNCwwLjE1
NjA4MjY0NTA1ODYzMTksMC4xNzAxMzkyOTc4NDI5Nzk0MywwLjE4NDE2MTQwOTczNTY3OTYzLDAu
MTk4MTQ2MTQ5NTE2MTA1NjUsMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE4MDQ1LCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlS
ZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMV0JMi42MTc2OTY4NTg5NDI1MDg3ZS0yCTEuNDI0
NzEwMzU5NDI0MzUyNmUtMgkxLjE5Mjk4NjQ5OTUxODE1NjFlLTIJOC4zNzM1MzcwNjA1NDQ1NDgw
ZS0xCTEuODA0NTAwMDAwMDAwMDAwMGUtNgotCVsyXQk1LjIzMzU5ODUwMDQ5MDE4ODZlLTIJMi44
NDkxMzE0NTAwNTcwMjk3ZS0yCTIuMzg0NDY3MDUwNDMzMTU4OWUtMgk4LjM2OTEwMTU3NDM5NTM0
NzllLTEJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0JWzNdCTcuODQ1OTE1MTA4OTE5MTQzN2UtMgk0
LjI3Mjk3NDI4MjUwMzEyODFlLTIJMy41NzI5NDA4MjY0MTYwMTU2ZS0yCTguMzYxNzE4NTM2NTM4
ODQwMmUtMQkxLjgwNDUwMDAwMDAwMDAwMDBlLTYKLQlbNF0JMS4wNDUyODQ1NjkyNjM0NTgzZS0x
CTUuNjk1OTQ5ODY3MzY3NzQ0NGUtMgk0Ljc1Njg5NTgyNTI2NjgzODFlLTIJOC4zNTEzNjUzMzE1
NjUyMDAzZS0xCTEuODA0NTAwMDAwMDAwMDAwMGUtNgotCVs1XQkxLjMwNTI2MTg1MDM1NzA1NTdl
LTEJNy4xMTc3NjkxMjIxMjM3MTgzZS0yCTUuOTM0ODQ5MzgxNDQ2ODM4NGUtMgk4LjMzODA3NTE0
NjMyNjI3ODFlLTEJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0JLi4uYW5kIDI1MCBtb3JlIGVycm9y
cy4KLQlNYXggQWJzRXJyb3Igb2YgMS42MzQ3NTM4ODI4ODQ5NzkyZSswIGF0IGluZGV4IG9mIDE2
NS4KLQlbMTY1XQktOS4yMzg3OTI2NTc4NTIxNzI5ZS0xCTcuMTA4NzQ2MTcwOTk3NjE5NmUtMQkx
LjYzNDc1Mzg4Mjg4NDk3OTJlKzAJMi4yOTk2Mzc0Mzc1NDc2NzIwZSswCTEuODA0NTAwMDAwMDAw
MDAwMGUtNgotCU1heCBSZWxFcnJvciBvZiA3LjExODc5MzMyODUwNDQxMTBlKzEgYXQgaW5kZXgg
b2YgMjIwLgotCVsyMjBdCS01LjAwMDAwMDU5NjA0NjQ0NzhlLTEJNy4xMjM3MzI0NzM3MDEyMzg2
ZS0zCTUuMDcxMjM3OTIwNzgzNDYwMWUtMQk3LjExODc5MzMyODUwNDQxMTBlKzEJMS44MDQ1MDAw
MDAwMDAwMDAwZS02Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
IFggU2luZTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTguOTEu
IEdvdCAtMi42MjA0Mzc2MzI4MjE0My4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIDwgW1Rlc3QgMF0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBTaW5lOiAxMDAgSHog
ZXF1YWxzIFswLDAuMDE0MjQ3MTAzNTk0MjQzNTI2LDAuMDI4NDkxMzE0NTAwNTcwMjk3LDAuMDQy
NzI5NzQyODI1MDMxMjgsMC4wNTY5NTk0OTg2NzM2Nzc0NDQsMC4wNzExNzc2OTEyMjEyMzcxOCww
LjA4NTM4MTQzMzM2NzcyOTE5LDAuMDk5NTY3ODQ1NDYzNzUyNzUsMC4xMTM3MzQwNDQxMzQ2MTY4
NSwwLjEyNzg3NzE2MDkwNjc5MTcsMC4xNDE5OTQzMTI0MDU1ODYyNCwwLjE1NjA4MjY0NTA1ODYz
MTksMC4xNzAxMzkyOTc4NDI5Nzk0MywwLjE4NDE2MTQwOTczNTY3OTYzLDAuMTk4MTQ2MTQ5NTE2
MTA1NjUsMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFu
Y2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE4MDQ1LCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNOUiAoZGIpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byAxMTguOTEuIAorUEFTUyA8IFtUZXN0IDBdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgMV0gU2luZSB3YXZlOiAtMTAwIEh6IAotRkFJ
TCBYIFNpbmU6IC0xMDAgSHogZG9lcyBub3QgZXF1YWwgWzAsLTAuMDE0MjQ3MTAzNTk0MjQzNTI2
LC0wLjAyODQ5MTMxNDUwMDU3MDI5NywtMC4wNDI3Mjk3NDI4MjUwMzEyOCwtMC4wNTY5NTk0OTg2
NzM2Nzc0NDQsLTAuMDcxMTc3NjkxMjIxMjM3MTgsLTAuMDg1MzgxNDMzMzY3NzI5MTksLTAuMDk5
NTY3ODQ1NDYzNzUyNzUsLTAuMTEzNzM0MDQ0MTM0NjE2ODUsLTAuMTI3ODc3MTYwOTA2NzkxNywt
MC4xNDE5OTQzMTI0MDU1ODYyNCwtMC4xNTYwODI2NDUwNTg2MzE5LC0wLjE3MDEzOTI5Nzg0Mjk3
OTQzLC0wLjE4NDE2MTQwOTczNTY3OTYzLC0wLjE5ODE0NjE0OTUxNjEwNTY1LC0wLjIxMjA5MDY1
NjE2MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjo0Ljc2ODRlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1
YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQkt
Mi42MTc2OTY4NTg5NDI1MDg3ZS0yCS0xLjQyNDcxMDM1OTQyNDM1MjZlLTIJMS4xOTI5ODY0OTk1
MTgxNTYxZS0yCTguMzczNTM3MDYwNTQ0NTQ4MGUtMQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLQlb
Ml0JLTUuMjMzNTkzNjU3NjEyODAwNmUtMgktMi44NDkxMzE0NTAwNTcwMjk3ZS0yCTIuMzg0NDYy
MjA3NTU1NzcwOWUtMgk4LjM2OTA4NDU3NjY2Mjk3NjJlLTEJNC43NjgzOTk5OTk5OTk5OTk3ZS03
Ci0JWzNdCS03Ljg0NTg5MzUwMjIzNTQxMjZlLTIJLTQuMjcyOTc0MjgyNTAzMTI4MWUtMgkzLjU3
MjkxOTIxOTczMjI4NDVlLTIJOC4zNjE2Njc5NzA2Mjc4MzE4ZS0xCTQuNzY4Mzk5OTk5OTk5OTk5
N2UtNwotCVs0XQktMS4wNDUyODMyMjgxNTg5NTA4ZS0xCS01LjY5NTk0OTg2NzM2Nzc0NDRlLTIJ
NC43NTY4ODI0MTQyMjE3NjM2ZS0yCTguMzUxMzQxNzg2Njg2MTQyOGUtMQk0Ljc2ODM5OTk5OTk5
OTk5OTdlLTcKLQlbNV0JLTEuMzA1MjYwMjExMjI5MzI0M2UtMQktNy4xMTc3NjkxMjIxMjM3MTgz
ZS0yCTUuOTM0ODMyOTkwMTY5NTI1MWUtMgk4LjMzODA1MjExNzY1MzkwNTdlLTEJNC43NjgzOTk5
OTk5OTk5OTk3ZS03Ci0JLi4uYW5kIDI1MCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2Yg
MS42MzQ3NTQxMjEzMDM1NTgzZSswIGF0IGluZGV4IG9mIDE2NS4KLQlbMTY1XQk5LjIzODc5NTA0
MjAzNzk2MzllLTEJLTcuMTA4NzQ2MTcwOTk3NjE5NmUtMQkxLjYzNDc1NDEyMTMwMzU1ODNlKzAJ
Mi4yOTk2Mzc3NzI5MzUzMzkwZSswCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNwotCU1heCBSZWxFcnJv
ciBvZiA3LjExODc5NTAwMTkxNDk0NDBlKzEgYXQgaW5kZXggb2YgMjIwLgotCVsyMjBdCTUuMDAw
MDAxNzg4MTM5MzQzM2UtMQktNy4xMjM3MzI0NzM3MDEyMzg2ZS0zCTUuMDcxMjM5MTEyODc2MzU1
NmUtMQk3LjExODc5NTAwMTkxNDk0NDBlKzEJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggU2luZTogU05SIChkYikgaXMg
bm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMzAuOTUuIEdvdCAtMi42MjA0Mzc1MjcwMzgx
MzM1LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbVGVzdCAx
XSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFNpbmU6IC0xMDAgSHogZXF1YWxzIFswLC0wLjAxNDI0
NzEwMzU5NDI0MzUyNiwtMC4wMjg0OTEzMTQ1MDA1NzAyOTcsLTAuMDQyNzI5NzQyODI1MDMxMjgs
LTAuMDU2OTU5NDk4NjczNjc3NDQ0LC0wLjA3MTE3NzY5MTIyMTIzNzE4LC0wLjA4NTM4MTQzMzM2
NzcyOTE5LC0wLjA5OTU2Nzg0NTQ2Mzc1Mjc1LC0wLjExMzczNDA0NDEzNDYxNjg1LC0wLjEyNzg3
NzE2MDkwNjc5MTcsLTAuMTQxOTk0MzEyNDA1NTg2MjQsLTAuMTU2MDgyNjQ1MDU4NjMxOSwtMC4x
NzAxMzkyOTc4NDI5Nzk0MywtMC4xODQxNjE0MDk3MzU2Nzk2MywtMC4xOTgxNDYxNDk1MTYxMDU2
NSwtMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ug
b2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6NC43Njg0ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0u
IAorUEFTUyAgIFNpbmU6IFNOUiAoZGIpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMzAu
OTUuIAorUEFTUyA8IFtUZXN0IDFdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgMl0gU2luZSB3YXZlOiAyIEh6IAotRkFJTCBYIFNpbmU6
IDIgSHogZG9lcyBub3QgZXF1YWwgWzAsMC4wMDAyODQ5NTE3MDQwODg1OTg1LDAuMDAwNTY5OTAz
NDA4MTc3MTk3LDAuMDAwODU0ODU1MDU0MDU4MTM0NiwwLjAwMTEzOTgwNjU4MzUyMzc1MDMsMC4w
MDE0MjQ3NTgxMTI5ODkzNjYsMC4wMDE3MDk3MDk0MDk2MjQzMzgyLDAuMDAxOTk0NjYwNTg5ODQz
OTg4NCwwLjAwMjI3OTYxMTc3MDA2MzYzODcsMC4wMDI1NjQ1NjI3MTc0NTI2NDUzLDAuMDAyODQ5
NTEzMTk5MTgwMzY0NiwwLjAwMzEzNDQ2MzY4MDkwODA4NCwwLjAwMzQxOTQxMzkyOTgwNTE1OTYs
MC4wMDM3MDQzNjM3MTMwNDA5NDgsMC4wMDM5ODkzMTMyNjM0NDYwOTMsMC4wMDQyNzQyNjI1ODEw
MjA1OTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjoxLjQ1MTZlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJ
CQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQk1LjIz
NjAwMjYxNjU4NDMwMTBlLTQJMi44NDk1MTcwNDA4ODU5ODQ5ZS00CTIuMzg2NDg1NTc1Njk4MzE2
MWUtNAk4LjM3NTA1MjgyOTg1MTgyMzRlLTEJMS40NTE2MDAwMDAwMDAwMDAxZS03Ci0JWzJdCTEu
MDQ3MjAwNTIzMzE2ODYwMmUtMwk1LjY5OTAzNDA4MTc3MTk2OThlLTQJNC43NzI5NzExNTEzOTY2
MzIyZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQlbM10J
MS41NzA4MDI1MzEyMDUxMTc3ZS0zCTguNTQ4NTUwNTQwNTgxMzQ1NmUtNAk3LjE1OTQ3NDc3MTQ2
OTgzMTVlLTQJOC4zNzUwNzQ1MDgyMjUyODY0ZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUtNwotCVs0
XQkyLjA5NDQyOTIxOTE0MTYwMjVlLTMJMS4xMzk4MDY1ODM1MjM3NTAzZS0zCTkuNTQ2MjI2MzU2
MTc4NTIyMWUtNAk4LjM3NTMwMzc1MjU1OTUyODZlLTEJMS40NTE2MDAwMDAwMDAwMDAxZS03Ci0J
WzVdCTIuNjE4MDU2MDIzNDkzNDA5MmUtMwkxLjQyNDc1ODExMjk4OTM2NjFlLTMJMS4xOTMyOTc5
MTA1MDQwNDMxZS0zCTguMzc1NDQyMTE2Mjc4MzY4OGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcK
LQkuLi5hbmQgMjUwIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA2LjA1MjI0NzQzNDg1
NDUwNzRlLTIgYXQgaW5kZXggb2YgMjU1LgotCVsyNTVdCTEuMzMxMjEyMzcxNTg3NzUzM2UtMQk3
LjI1OTg3NjI4MTAyMzAyNTVlLTIJNi4wNTIyNDc0MzQ4NTQ1MDc0ZS0yCTguMzM2NTcxMDM4NjQ4
MTM0MGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQlNYXggUmVsRXJyb3Igb2YgOC4zNzU0OTMy
ODMxMjQxNTQ2ZS0xIGF0IGluZGV4IG9mIDYuCi0JWzZdCTMuMTQxNjc1Mzc3MjY0NjE4OWUtMwkx
LjcwOTcwOTQwOTYyNDMzODJlLTMJMS40MzE5NjU5Njc2NDAyODA3ZS0zCTguMzc1NDkzMjgzMTI0
MTU0NmUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgWCBTaW5lOiBTTlIgKGRiKSBpcyBub3QgZ3JlYXRlciB0aGFuIG9y
IGVxdWFsIHRvIDExOS45My4gR290IDEuNTY0MzI4NTg3NDA1MTMyNS4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgMl0gMiBvdXQgb2YgMiBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBTaW5lOiAyIEh6IGVxdWFscyBbMCwwLjAwMDI4NDk1MTcwNDA4ODU5ODUsMC4wMDA1Njk5
MDM0MDgxNzcxOTcsMC4wMDA4NTQ4NTUwNTQwNTgxMzQ2LDAuMDAxMTM5ODA2NTgzNTIzNzUwMyww
LjAwMTQyNDc1ODExMjk4OTM2NiwwLjAwMTcwOTcwOTQwOTYyNDMzODIsMC4wMDE5OTQ2NjA1ODk4
NDM5ODg0LDAuMDAyMjc5NjExNzcwMDYzNjM4NywwLjAwMjU2NDU2MjcxNzQ1MjY0NTMsMC4wMDI4
NDk1MTMxOTkxODAzNjQ2LDAuMDAzMTM0NDYzNjgwOTA4MDg0LDAuMDAzNDE5NDEzOTI5ODA1MTU5
NiwwLjAwMzcwNDM2MzcxMzA0MDk0OCwwLjAwMzk4OTMxMzI2MzQ0NjA5MywwLjAwNDI3NDI2MjU4
MTAyMDU5NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjEuNDUxNmUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBTaW5l
OiBTTlIgKGRiKSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTE5LjkzLiAKK1BBU1MgPCBb
VGVzdCAyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFT
UyA+IFtUZXN0IDNdIFNpbmUgd2F2ZTogMSBIeiAKLUZBSUwgWCBTaW5lOiAxIEh6IGRvZXMgbm90
IGVxdWFsIFswLDAuMDAwMTQyNDc1ODUyMDQ0Mjk5MjQsMC4wMDAyODQ5NTE3MDQwODg1OTg1LDAu
MDAwNDI3NDI3NTU2MTMyODk3NzMsMC4wMDA1Njk5MDM0MDgxNzcxOTcsMC4wMDA3MTIzNzkyMzEx
MTc2NjU4LDAuMDAwODU0ODU1MDU0MDU4MTM0NiwwLjAwMDk5NzMzMDg3Njk5ODYwMzMsMC4wMDEx
Mzk4MDY1ODM1MjM3NTAzLDAuMDAxMjgyMjgyNDA2NDY0MjE5LDAuMDAxNDI0NzU4MTEyOTg5MzY2
LDAuMDAxNTY3MjMzODE5NTE0NTEzLDAuMDAxNzA5NzA5NDA5NjI0MzM4MiwwLjAwMTg1MjE4NTEx
NjE0OTQ4NTEsMC4wMDE5OTQ2NjA1ODk4NDM5ODg0LDAuMDAyMTM3MTM2MTc5OTUzODEzNi4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEu
NDE1N2UtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVk
CQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFdCTIuNjE4MDAxMzA4Mjky
MTUwNWUtNAkxLjQyNDc1ODUyMDQ0Mjk5MjRlLTQJMS4xOTMyNDI3ODc4NDkxNTgwZS00CTguMzc1
MDUyODI5ODUxODIzNGUtMQkxLjQxNTY5OTk5OTk5OTk5OTllLTcKLQlbMl0JNS4yMzYwMDI2MTY1
ODQzMDEwZS00CTIuODQ5NTE3MDQwODg1OTg0OWUtNAkyLjM4NjQ4NTU3NTY5ODMxNjFlLTQJOC4z
NzUwNTI4Mjk4NTE4MjM0ZS0xCTEuNDE1Njk5OTk5OTk5OTk5OWUtNwotCVszXQk3Ljg1NDAwMzM0
Mjc5OTg0MjRlLTQJNC4yNzQyNzU1NjEzMjg5NzczZS00CTMuNTc5NzI3NzgxNDcwODY1MGUtNAk4
LjM3NTA1MTQ2ODAzODMzOTJlLTEJMS40MTU2OTk5OTk5OTk5OTk5ZS03Ci0JWzRdCTEuMDQ3MjAw
NTIzMzE2ODYwMmUtMwk1LjY5OTAzNDA4MTc3MTk2OThlLTQJNC43NzI5NzExNTEzOTY2MzIyZS00
CTguMzc1MDUyODI5ODUxODIzNGUtMQkxLjQxNTY5OTk5OTk5OTk5OTllLTcKLQlbNV0JMS4zMDkw
MDA2NTQxNDYwNzUyZS0zCTcuMTIzNzkyMzExMTc2NjU3N2UtNAk1Ljk2NjIxNDIzMDI4NDA5NDhl
LTQJOC4zNzUwNTM1ODA1NTM2OTUyZS0xCTEuNDE1Njk5OTk5OTk5OTk5OWUtNwotCS4uLmFuZCAy
NTAgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDMuMDM4NTg2MzAzNTkxNzI4MmUtMiBh
dCBpbmRleCBvZiAyNTUuCi0JWzI1NV0JNi42NzA5MjEyOTU4ODEyNzE0ZS0yCTMuNjMyMzM0OTky
Mjg5NTQzMmUtMgkzLjAzODU4NjMwMzU5MTcyODJlLTIJOC4zNjUzODAxNDgxNDY2MjgzZS0xCTEu
NDE1Njk5OTk5OTk5OTk5OWUtNwotCU1heCBSZWxFcnJvciBvZiA4LjM3NTQ5MzI4MzEyNDE1NDZl
LTEgYXQgaW5kZXggb2YgMTIuCi0JWzEyXQkzLjE0MTY3NTM3NzI2NDYxODllLTMJMS43MDk3MDk0
MDk2MjQzMzgyZS0zCTEuNDMxOTY1OTY3NjQwMjgwN2UtMwk4LjM3NTQ5MzI4MzEyNDE1NDZlLTEJ
MS40MTU2OTk5OTk5OTk5OTk5ZS03Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIFggU2luZTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byAxMTIuMjIuIEdvdCAxLjU0NjMwOTE4MzgwODgyNTQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtUZXN0IDNdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgU2lu
ZTogMSBIeiBlcXVhbHMgWzAsMC4wMDAxNDI0NzU4NTIwNDQyOTkyNCwwLjAwMDI4NDk1MTcwNDA4
ODU5ODUsMC4wMDA0Mjc0Mjc1NTYxMzI4OTc3MywwLjAwMDU2OTkwMzQwODE3NzE5NywwLjAwMDcx
MjM3OTIzMTExNzY2NTgsMC4wMDA4NTQ4NTUwNTQwNTgxMzQ2LDAuMDAwOTk3MzMwODc2OTk4NjAz
MywwLjAwMTEzOTgwNjU4MzUyMzc1MDMsMC4wMDEyODIyODI0MDY0NjQyMTksMC4wMDE0MjQ3NTgx
MTI5ODkzNjYsMC4wMDE1NjcyMzM4MTk1MTQ1MTMsMC4wMDE3MDk3MDk0MDk2MjQzMzgyLDAuMDAx
ODUyMTg1MTE2MTQ5NDg1MSwwLjAwMTk5NDY2MDU4OTg0Mzk4ODQsMC4wMDIxMzcxMzYxNzk5NTM4
MTM2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MS40MTU3ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNO
UiAoZGIpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTIuMjIuIAorUEFTUyA8IFtUZXN0
IDNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4g
W1Rlc3QgNF0gQ3VzdG9tIHdhdmU6IDEwMCBIeiAKIFBBU1MgICBDdXN0b206IDEwMCBIeiBlcXVh
bHMgWzEsMS4wMTQxNDU2MTI3MTY2NzQ4LDEuMDI4MDg1MzUwOTkwMjk1NCwxLjA0MTgxNjM1Mzc5
NzkxMjYsMS4wNTUzMzU5OTg1MzUxNTYyLDEuMDY4NjQxMzA0OTY5Nzg3NiwxLjA4MTcyOTc2OTcw
NjcyNiwxLjA5NDU5ODY1MDkzMjMxMiwxLjEwNzI0NTMyNjA0MjE3NTMsMS4xMTk2NjcxNzI0MzE5
NDU4LDEuMTMxODYxODA1OTE1ODMyNSwxLjE0MzgyNjYwMzg4OTQ2NTMsMS4xNTU1NTkzMDEzNzYz
NDI4LDEuMTY3MDU3Mzk0OTgxMzg0MywxLjE3ODMxODYxOTcyODA4ODQsMS4xODkzNDA1OTE0MzA2
NjQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLjAwMDAwMTg0NzgsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCiBQQVNTICAgQ3VzdG9t
OiBTTlIgKGRiKSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTIyLjQzLiAKQEAgLTg2LDUg
KzM4LDUgQEAgRkFJTCBYIEN1c3RvbTogMSBIeiBkb2VzIG5vdCBlcXVhbCBbMSwxLjAwMDE0MjQ1
NTEwMTAxMzIsMS4wMDAyODQ5MTAyMDIwMjY0LDEuMDAKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCBDdXN0b206IFNOUiAoZGIpIGlzIG5vdCBncmVhdGVyIHRo
YW4gb3IgZXF1YWwgdG8gMTM4Ljc2LiBHb3QgMTMxLjQ2NjA3NDUwNzc0MTY3LiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVzdCA1XSAyIG91dCBvZiAyIGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IG91dCBvZiA2IHRhc2tzIHdl
cmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgIyBB
VURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgNiB0YXNrcyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvYXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvYXV0b21hdGlvbi1jaGFu
Z2VzLWV4cGVjdGVkLnR4dAppbmRleCBjMzljYTk4NjdlNTM2Y2Y5YWRiYmU4OTliMjA5ZDcwZjIy
ZDMzNjM2Li5hZTVmMTUzYmJhNDA0NWY3NzU2OWI5MzE5N2ZlNDczMmQzZGUzZDYxIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hhbmdl
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9h
dXRvbWF0aW9uLWNoYW5nZXMtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsMyBAQAotQ09OU09MRSBN
RVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBV
bmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAK
IFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJTZXQg
TGlzdGVuZXIucG9zaXRpb25YLnZhbHVlIiAKQEAgLTksNTcgKzUsNzUgQEAgUEFTUyBFeGVjdXRp
bmcgIkxpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1ZSIKIFBBU1MgRXhlY3V0aW5nICJMaXN0ZW5l
ci5zZXRQb3NpdGlvbiIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbU2V0IExpc3RlbmVy
LnBvc2l0aW9uWC52YWx1ZV0gIAotUEFTUyAgIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRw
dXQwWzA6NTExXSBlcXVhbHMgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdp
dGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0x
NiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKLVBBU1MgICBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1
ZTogb3V0cHV0MVswOjUxMV0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNTExIGRpZmZl
cmVudCB2YWx1ZXMpLiAKLVBBU1MgICBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1ZTogb3V0cHV0MFs1
MTI6XSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyAxNTM2IGRpZmZlcmVudCB2YWx1ZXMp
LiAKLUZBSUwgWCBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1ZTogb3V0cHV0MVs1MTI6XSBkb2VzIG5v
dCBlcXVhbCBbLTEuOTEzNzAyMzY0OTEyMjUzM2UtMTcsLTEuOTUxNDk3MjM5NzE2NTM2MmUtMTcs
LTEuOTgyODIxMDgwNTg4ODE2OGUtMTcsLTIuMDA3NTY3ODQyOTc0NTY1N2UtMTcsLTIuMDI1NjU4
MjgyOTcxMTAwNGUtMTcsLTIuMDM3MDI5NTM0ODUxODY3ZS0xNywtMi4wNDE2NDYwMjk4NTA1MjUz
ZS0xNywtMi4wMzk0OTE1NTUyMjcwNjk3ZS0xNywtMi4wMzA1NzMzOTAxNzA4OTA1ZS0xNywtMi4w
MTQ5MjE0Nzg2MjAxNjJlLTE3LC0xLjk5MjU4NjYwOTQ2NDQ5NTNlLTE3LC0xLjk2MzY0NDA1NjEz
OTYzMjRlLTE3LC0xLjkyODE4ODc3ODk3OTg5NDVlLTE3LC0xLjg4NjMzOTU2MTEyMTI0NDJlLTE3
LC0xLjgzODIzMzg3OTk4MTQ4NzhlLTE3LC0xLjc4NDAzMzAzNTc4MDA3MzJlLTE3Li4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVs
YXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJTCBYIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRw
dXQwWzA6NTExXSBkb2VzIG5vdCBlcXVhbCBbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hv
bGQiOjFlLTE2LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0
ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMF0JLTMuMTI1MzEzMjIy
NDA4Mjk0N2UtMQktMS45MTM3MDIzNjQ5MTIyNTMzZS0xNwkzLjEyNTMxMzIyMjQwODI5NDdlLTEJ
MS42MzMxMjM5Nzk4MzY2NDMwZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMV0JLTMuMTg3
MDM3MTEwMzI4Njc0M2UtMQktMS45NTE0OTcyMzk3MTY1MzYyZS0xNwkzLjE4NzAzNzExMDMyODY3
NDNlLTEJMS42MzMxMjQwNjc3NDk5NTI4ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMl0J
LTMuMjM4MTkyNDk4NjgzOTI5NGUtMQktMS45ODI4MjEwODA1ODg4MTY4ZS0xNwkzLjIzODE5MjQ5
ODY4MzkyOTRlLTEJMS42MzMxMjM5MDEyODYzMDIwZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
LQlbM10JLTMuMjc4NjA3MTMwMDUwNjU5MmUtMQktMi4wMDc1Njc4NDI5NzQ1NjU3ZS0xNwkzLjI3
ODYwNzEzMDA1MDY1OTJlLTEJMS42MzMxMjM5NTIyMTExNjE0ZSsxNgkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAKLQlbNF0JLTMuMzA4MTUxMDY2MzAzMjUzMmUtMQktMi4wMjU2NTgyODI5NzExMDA0ZS0x
NwkzLjMwODE1MTA2NjMwMzI1MzJlLTEJMS42MzMxMjM5NTQ4NzExNDM0ZSsxNgkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKLQkuLi5hbmQgMTUzMSBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2Yg
My4zMzQ0NDQ3NjEyNzYyNDUxZS0xIGF0IGluZGV4IG9mIDM4OC4KLQlbMzg4XQkzLjMzNDQ0NDc2
MTI3NjI0NTFlLTEJMi4wNDE3NTg2OTE4NDk5NTUxZS0xNwkzLjMzNDQ0NDc2MTI3NjI0NTFlLTEJ
MS42MzMxMjM4MjMzOTEyMTU0ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlNYXggUmVsRXJy
b3Igb2YgMS42MzMxMjQxNDU3NzQxMTQ2ZSsxNiBhdCBpbmRleCBvZiAxMjIuCi0JWzEyMl0JLTMu
MDg3MjY1NDkxNDg1NTk1N2UtMQktMS44OTA0MDQ2NTc1MjM1NzQ4ZS0xNwkzLjA4NzI2NTQ5MTQ4
NTU5NTdlLTEJMS42MzMxMjQxNDU3NzQxMTQ2ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlb
MF0JMS44OTgzMDc4MTg5MTk0MjAyZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkxLjg5ODMwNzgx
ODkxOTQyMDJlLTQJSW5maW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCVsxXQkzLjI5NjA2
MTE4NjExOTkxNDFlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTMuMjk2MDYxMTg2MTE5OTE0MWUt
NAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzJdCTQuMTEyMTg5MzQ0NTk2MTE3
N2UtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJNC4xMTIxODkzNDQ1OTYxMTc3ZS00CUluZmluaXR5
CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwlbM10JNC4yNzkwODE0NzY4NTIyOTc4ZS00CTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAk0LjI3OTA4MTQ3Njg1MjI5NzhlLTQJSW5maW5pdHkJOS45OTk5OTk5
OTk5OTk5OTk4ZS0xNworCVs0XQkzLjc0NDU0NTk3NDc2ODY5ODJlLTQJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCTMuNzQ0NTQ1OTc0NzY4Njk4MmUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThl
LTE3CisJLi4uYW5kIDUwNyBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMy4xMTY0MTE1
NjY3MzQzMTQwZS0xIGF0IGluZGV4IG9mIDUxMS4KKwlbNTExXQktMy4xMTY0MTE1NjY3MzQzMTQw
ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkzLjExNjQxMTU2NjczNDMxNDBlLTEJSW5maW5pdHkJ
OS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCU1heCBSZWxFcnJvciBvZiBJbmZpbml0eSBhdCBpbmRl
eCBvZiAwLgorIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGxp
c3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQxWzA6NTExXSBpcyBub3QgY29uc3RhbnRseSAw
IChjb250YWlucyA1MTIgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyAgIGxpc3RlbnIucG9zaXRp
b25YLnZhbHVlOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDEw
MjQgZGlmZmVyZW50IHZhbHVlcykuIAorRkFJTCBYIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBv
dXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFsIFstMC4zMDg5NjcwODM2OTI1NTA2NiwtMC4zMDIx
Nzk1NDUxNjQxMDgzLC0wLjI5MTM1NTA3MzQ1MTk5NTg1LC0wLjI3NjYyNDI2MjMzMjkxNjI2LC0w
LjI1ODE2OTgwMDA0MzEwNjEsLTAuMjM2MjI0Njk2MDQwMTUzNSwtMC4yMTEwNjkxMDcwNTU2NjQw
NiwtMC4xODMwMjcxNDgyNDY3NjUxNCwtMC4xNTI0NjIwMDU2MTUyMzQzOCwtMC4xMTk3NzE1NTUw
NjYxMDg3LC0wLjA4NTM4Mzc3Mjg1MDAzNjYyLC0wLjA0OTc1MDA4MjE5NDgwNTE0NSwtMC4wMTMz
NDAxNDUzNDk1MDI1NjMsMC4wMjMzNjQ2MDM1MTk0Mzk2OTcsMC4wNTk4NzcxMDEzMzE5NDkyMzQs
MC4wOTU3MTE0OTk0NTI1OTA5NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KKwlJbmRleAlB
Y3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAorCVsw
XQktOC4xMDg5ODYwMjAwODgxOTU4ZS0xCS0zLjA4OTY3MDgzNjkyNTUwNjZlLTEJNS4wMTkzMTUx
ODMxNjI2ODkyZS0xCTEuNjI0NTQ2OTAwOTc1ODE2NGUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
KwlbMV0JLTcuOTE3OTk0MjYwNzg3OTYzOWUtMQktMy4wMjE3OTU0NTE2NDEwODI4ZS0xCTQuODk2
MTk4ODA5MTQ2ODgxMWUtMQkxLjYyMDI5NDU4NTYyMDU1OTllKzAJMC4wMDAwMDAwMDAwMDAwMDAw
ZSswCisJWzJdCS03LjYyMjAyMDI0NDU5ODM4ODdlLTEJLTIuOTEzNTUwNzM0NTE5OTU4NWUtMQk0
LjcwODQ2OTUxMDA3ODQzMDJlLTEJMS42MTYwNTg4NzA4MTA4NDQzZSswCTAuMDAwMDAwMDAwMDAw
MDAwMGUrMAorCVszXQktNy4yMjQ5ODQ3NjUwNTI3OTU0ZS0xCS0yLjc2NjI0MjYyMzMyOTE2MjZl
LTEJNC40NTg3NDIxNDE3MjM2MzI4ZS0xCTEuNjExODQwNTg5ODc0Nzc4N2UrMAkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKKwlbNF0JLTYuNzMyMTM1NDE1MDc3MjA5NWUtMQktMi41ODE2OTgwMDA0MzEw
NjA4ZS0xCTQuMTUwNDM3NDE0NjQ2MTQ4N2UtMQkxLjYwNzYzODYyMTU0MDIyNjFlKzAJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCisJLi4uYW5kIDEwMTkgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9y
IG9mIDUuMDE5MzE1MTgzMTYyNjg5MmUtMSBhdCBpbmRleCBvZiAwLgorCU1heCBSZWxFcnJvciBv
ZiAxLjYyNDU0NjkwMDk3NTgxNjRlKzAgYXQgaW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbU2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1
ZV0gMSBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbU2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0g
MiBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbTGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlXSAgCiBQ
QVNTICAgbGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBvdXRwdXQwWzA6NTExXSBl
cXVhbHMgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVu
dC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKIFBBU1MgICBsaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6
IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDUxMSBkaWZmZXJl
bnQgdmFsdWVzKS4gCiBQQVNTICAgbGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBv
dXRwdXQwWzUxMjpdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDE1MzYgZGlmZmVyZW50
IHZhbHVlcykuIAotRkFJTCBYIGxpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1ZUFUVGltZTogb3V0
cHV0MVs1MTI6XSBkb2VzIG5vdCBlcXVhbCBbLTAuMDAwMjcyMjk2OTUxMTUyMzg0MywtMC4wMDA1
NjA0NzU2Mjk3NTQzNjQ1LC0wLjAwMDg2MTk2OTE5NDM3NDk3ODUsLTAuMDAxMTc0MDQ0OTExNzQ5
NjYxLC0wLjAwMTQ5MzgyMjA4NDczOTgwNDMsLTAuMDAxODE4MjgzODEwMjgwMjYzNCwtMC4wMDIx
NDQyOTk0NDc1MzY0Njg1LC0wLjAwMjQ2ODYzODEyMjA4MTc1NjYsLTAuMDAyNzg3OTkxMTk0MDU0
NDg0NCwtMC4wMDMwOTg5ODk4MzY4NzE2MjQsLTAuMDAzMzk4MjI1ODc1NTcxMzcsLTAuMDAzNjgy
Mjc0ODM3MDQ2ODYxNiwtMC4wMDM5NDc3MTI5NDY2ODMxNjgsLTAuMDA0MTkxMTQ2MjMyMTg3NzQ4
LC0wLjAwNDQwOTIyMTQ2NjYzMDY5NywtMC4wMDQ1OTg2NjE3OTE1MzMyMzIuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2
ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggbGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1l
OiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFsIFswLjAwMDE4OTgzMDc4MTg5MTk0MjAyLDAu
MDAwMzI5NjA2MTE4NjExOTkxNCwwLjAwMDQxMTIxODkzNDQ1OTYxMTgsMC4wMDA0Mjc5MDgxNDc2
ODUyMjk4LDAuMDAwMzc0NDU0NTk3NDc2ODY5OCwwLjAwMDI0NzM0NjQxMTkyNDgwOTIsMC4wMDAw
NDQ5MTQ0MDk5NTQ3OTkzNCwtMC4wMDAyMzI1NzE3OTQxODU3ODc0NCwtMC4wMDA1ODI4NDIwMzk4
NzU2ODYyLC0wLjAwMTAwMTYxMDMwNDIyODk2MTUsLTAuMDAxNDgyNTkyMDgwNzE5NzY5LC0wLjAw
MjAxNzU3NzQxMTYwNjkwOCwtMC4wMDI1OTY1MzM2MjQ0NTUzMzI4LC0wLjAwMzIwNzc1NjIwNjM5
MzI0MiwtMC4wMDM4MzgwNTI3NDAzMjA1NjMzLC0wLjAwNDQ3Mjk3MzI5MDgzMDg1MS4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJ
CVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVswXQktMy4xNTU0MjI1MDg3MTY1ODMzZS0xCS0y
LjcyMjk2OTUxMTUyMzg0MjhlLTQJMy4xNTI2OTk1MzkyMDUwNTk0ZS0xCTEuMTU3ODE2Njg3MjA5
NTE5NmUrMwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMV0JLTMuMjQ4MjY0Nzg5NTgxMjk4OGUt
MQktNS42MDQ3NTYyOTc1NDM2NDQ5ZS00CTMuMjQyNjYwMDMzMjgzNzU1MmUtMQk1Ljc4NTU1MDQ1
MjM5ODYwMzFlKzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzJdCS0zLjMzMTIzNDQ1NTEwODY0
MjZlLTEJLTguNjE5NjkxOTQzNzQ5Nzg1NGUtNAkzLjMyMjYxNDc2MzE2NDg5MjhlLTEJMy44NTQ2
NzkyNDQ3NDI3ODkwZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszXQktMy40MDM4NDI3NDcy
MTE0NTYzZS0xCS0xLjE3NDA0NDkxMTc0OTY2MTBlLTMJMy4zOTIxMDIyOTgwOTM5NTk3ZS0xCTIu
ODg5MjQ0MDY5MDY5NTIzMGUrMgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbNF0JLTMuNDY1NjQy
OTI5MDc3MTQ4NGUtMQktMS40OTM4MjIwODQ3Mzk4MDQzZS0zCTMuNDUwNzA0NzA4MjI5NzUwNGUt
MQkyLjMwOTk4MzcyNzk2OTA0OTZlKzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzBdCTIuMTk5
NzkxMDczNzk5MTMzM2UtMQkxLjg5ODMwNzgxODkxOTQyMDJlLTQJMi4xOTc4OTI3NjU5ODAyMTM5
ZS0xCTEuMTU3ODE2ODQzMDE5MzQwOWUrMwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMV0JMS45
MTAyNDg5OTQ4MjcyNzA1ZS0xCTMuMjk2MDYxMTg2MTE5OTE0MWUtNAkxLjkwNjk1MjkzMzY0MTE1
MDZlLTEJNS43ODU1NTA3NzA5MzY5NzM4ZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsyXQkx
LjU4OTIyOTI1NTkxNDY4ODFlLTEJNC4xMTIxODkzNDQ1OTYxMTc3ZS00CTEuNTg1MTE3MDY2NTcw
MDkyMGUtMQkzLjg1NDY3OTE4MzYxNTY5NDVlKzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzNd
CTEuMjQwNjEwMjU2NzkxMTE0OGUtMQk0LjI3OTA4MTQ3Njg1MjI5NzhlLTQJMS4yMzYzMzExNzUz
MTQyNjI1ZS0xCTIuODg5MjQ0Mjk2OTQxMjkyOWUrMgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlb
NF0JOC42ODcyODYwNzg5Mjk5MDExZS0yCTMuNzQ0NTQ1OTc0NzY4Njk4MmUtNAk4LjY0OTg0MDYx
OTE4MjIxNDFlLTIJMi4zMDk5ODM4MjExMjcwNzczZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAog
CS4uLmFuZCAxNTMxIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA1Ljk1NzM3NTc2NDg0
NjgwMThlLTEgYXQgaW5kZXggb2YgMjI0LgotCVsyMjRdCS03LjI4ODg2NjA0MzA5MDgyMDNlLTEJ
LTEuMzMxNDkwMjc4MjQ0MDE4NmUtMQk1Ljk1NzM3NTc2NDg0NjgwMThlLTEJNC40NzQyMTY0OTQy
NDU0MTI4ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBSZWxFcnJvciBvZiAxLjE1Nzgx
NjY4NzIwOTUxOTZlKzMgYXQgaW5kZXggb2YgMC4KKwlNYXggQWJzRXJyb3Igb2YgNS45NjY5NTEy
NTEwMjk5NjgzZS0xIGF0IGluZGV4IG9mIDIzOC4KKwlbMjM4XQktNy4zOTYyOTU2NjY2OTQ2NDEx
ZS0xCS0xLjQyOTM0NDQxNTY2NDY3MjllLTEJNS45NjY5NTEyNTEwMjk5NjgzZS0xCTQuMTc0NjA3
MDMzNTcxNTU1M2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlNYXggUmVsRXJyb3Igb2YgMS4x
NTc4MTY4NDMwMTkzNDA5ZSszIGF0IGluZGV4IG9mIDAuCiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW0xpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1ZV0gMSBv
dXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKIFBBU1MgPiBbTGlzdGVuZXIuc2V0UG9zaXRpb25dICAKLVBBU1MgICBsaXN0
ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQwWzA6NTExXSBlcXVhbHMgWzAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKLVBBU1MgICBs
aXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQxWzA6NTExXSBpcyBub3QgY29uc3RhbnRseSAwIChj
b250YWlucyA1MTEgZGlmZmVyZW50IHZhbHVlcykuIAotUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rp
b246IG91dHB1dDBbNTEyOl0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTUzNiBkaWZm
ZXJlbnQgdmFsdWVzKS4gCi1GQUlMIFggbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MVs1MTI6
XSBkb2VzIG5vdCBlcXVhbCBbLTEuOTEzNzAyMzY0OTEyMjUzM2UtMTcsLTEuOTUxNDk3MjM5NzE2
NTM2MmUtMTcsLTEuOTgyODIxMDgwNTg4ODE2OGUtMTcsLTIuMDA3NTY3ODQyOTc0NTY1N2UtMTcs
LTIuMDI1NjU4MjgyOTcxMTAwNGUtMTcsLTIuMDM3MDI5NTM0ODUxODY3ZS0xNywtMi4wNDE2NDYw
Mjk4NTA1MjUzZS0xNywtMi4wMzk0OTE1NTUyMjcwNjk3ZS0xNywtMi4wMzA1NzMzOTAxNzA4OTA1
ZS0xNywtMi4wMTQ5MjE0Nzg2MjAxNjJlLTE3LC0xLjk5MjU4NjYwOTQ2NDQ5NTNlLTE3LC0xLjk2
MzY0NDA1NjEzOTYzMjRlLTE3LC0xLjkyODE4ODc3ODk3OTg5NDVlLTE3LC0xLjg4NjMzOTU2MTEy
MTI0NDJlLTE3LC0xLjgzODIzMzg3OTk4MTQ4NzhlLTE3LC0xLjc4NDAzMzAzNTc4MDA3MzJlLTE3
Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9s
ZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJTCBYIGxpc3RlbmVyLnNldFBvc3Rpb246
IG91dHB1dDBbMDo1MTFdIGRvZXMgbm90IGVxdWFsIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MWUtMTYsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlF
eHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVswXQktMy4xMjUz
MTMyMjI0MDgyOTQ3ZS0xCS0xLjkxMzcwMjM2NDkxMjI1MzNlLTE3CTMuMTI1MzEzMjIyNDA4Mjk0
N2UtMQkxLjYzMzEyMzk3OTgzNjY0MzBlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsxXQkt
My4xODcwMzcxMTAzMjg2NzQzZS0xCS0xLjk1MTQ5NzIzOTcxNjUzNjJlLTE3CTMuMTg3MDM3MTEw
MzI4Njc0M2UtMQkxLjYzMzEyNDA2Nzc0OTk1MjhlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
CVsyXQktMy4yMzgxOTI0OTg2ODM5Mjk0ZS0xCS0xLjk4MjgyMTA4MDU4ODgxNjhlLTE3CTMuMjM4
MTkyNDk4NjgzOTI5NGUtMQkxLjYzMzEyMzkwMTI4NjMwMjBlKzE2CTAuMDAwMDAwMDAwMDAwMDAw
MGUrMAotCVszXQktMy4yNzg2MDcxMzAwNTA2NTkyZS0xCS0yLjAwNzU2Nzg0Mjk3NDU2NTdlLTE3
CTMuMjc4NjA3MTMwMDUwNjU5MmUtMQkxLjYzMzEyMzk1MjIxMTE2MTRlKzE2CTAuMDAwMDAwMDAw
MDAwMDAwMGUrMAotCVs0XQktMy4zMDgxNTEwNjYzMDMyNTMyZS0xCS0yLjAyNTY1ODI4Mjk3MTEw
MDRlLTE3CTMuMzA4MTUxMDY2MzAzMjUzMmUtMQkxLjYzMzEyMzk1NDg3MTE0MzRlKzE2CTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAotCS4uLmFuZCAxNTMxIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJv
ciBvZiAzLjMzNDQ0NDc2MTI3NjI0NTFlLTEgYXQgaW5kZXggb2YgMzg4LgotCVszODhdCTMuMzM0
NDQ0NzYxMjc2MjQ1MWUtMQkyLjA0MTc1ODY5MTg0OTk1NTFlLTE3CTMuMzM0NDQ0NzYxMjc2MjQ1
MWUtMQkxLjYzMzEyMzgyMzM5MTIxNTRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBS
ZWxFcnJvciBvZiAxLjYzMzEyNDE0NTc3NDExNDZlKzE2IGF0IGluZGV4IG9mIDEyMi4KLQlbMTIy
XQktMy4wODcyNjU0OTE0ODU1OTU3ZS0xCS0xLjg5MDQwNDY1NzUyMzU3NDhlLTE3CTMuMDg3MjY1
NDkxNDg1NTk1N2UtMQkxLjYzMzEyNDE0NTc3NDExNDZlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUr
MAorCVswXQkxLjg5ODMwNzgxODkxOTQyMDJlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuODk4
MzA3ODE4OTE5NDIwMmUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzFdCTMu
Mjk2MDYxMTg2MTE5OTE0MWUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMy4yOTYwNjExODYxMTk5
MTQxZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwlbMl0JNC4xMTIxODkzNDQ1
OTYxMTc3ZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAk0LjExMjE4OTM0NDU5NjExNzdlLTQJSW5m
aW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCVszXQk0LjI3OTA4MTQ3Njg1MjI5NzhlLTQJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCTQuMjc5MDgxNDc2ODUyMjk3OGUtNAlJbmZpbml0eQk5Ljk5
OTk5OTk5OTk5OTk5OThlLTE3CisJWzRdCTMuNzQ0NTQ1OTc0NzY4Njk4MmUtNAkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAJMy43NDQ1NDU5NzQ3Njg2OTgyZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5
OTk5OGUtMTcKKwkuLi5hbmQgNTA3IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiAzLjEx
NjQxMTU2NjczNDMxNDBlLTEgYXQgaW5kZXggb2YgNTExLgorCVs1MTFdCS0zLjExNjQxMTU2Njcz
NDMxNDBlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTMuMTE2NDExNTY2NzM0MzE0MGUtMQlJbmZp
bml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0
IGluZGV4IG9mIDAuCisgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNT
ICAgbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MVswOjUxMV0gaXMgbm90IGNvbnN0YW50bHkg
MCAoY29udGFpbnMgNTEyIGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgICBsaXN0ZW5lci5zZXRQ
b3N0aW9uOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDEwMjQg
ZGlmZmVyZW50IHZhbHVlcykuIAorRkFJTCBYIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDFb
NTEyOl0gZG9lcyBub3QgZXF1YWwgWy0wLjMwODk2NzA4MzY5MjU1MDY2LC0wLjMwMjE3OTU0NTE2
NDEwODMsLTAuMjkxMzU1MDczNDUxOTk1ODUsLTAuMjc2NjI0MjYyMzMyOTE2MjYsLTAuMjU4MTY5
ODAwMDQzMTA2MSwtMC4yMzYyMjQ2OTYwNDAxNTM1LC0wLjIxMTA2OTEwNzA1NTY2NDA2LC0wLjE4
MzAyNzE0ODI0Njc2NTE0LC0wLjE1MjQ2MjAwNTYxNTIzNDM4LC0wLjExOTc3MTU1NTA2NjEwODcs
LTAuMDg1MzgzNzcyODUwMDM2NjIsLTAuMDQ5NzUwMDgyMTk0ODA1MTQ1LC0wLjAxMzM0MDE0NTM0
OTUwMjU2MywwLjAyMzM2NDYwMzUxOTQzOTY5NywwLjA1OTg3NzEwMTMzMTk0OTIzNCwwLjA5NTcx
MTQ5OTQ1MjU5MDk0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorCUluZGV4CUFjdHVhbAkJ
CUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCisJWzBdCS04LjEw
ODk4NjAyMDA4ODE5NThlLTEJLTMuMDg5NjcwODM2OTI1NTA2NmUtMQk1LjAxOTMxNTE4MzE2MjY4
OTJlLTEJMS42MjQ1NDY5MDA5NzU4MTY0ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQkt
Ny45MTc5OTQyNjA3ODc5NjM5ZS0xCS0zLjAyMTc5NTQ1MTY0MTA4MjhlLTEJNC44OTYxOTg4MDkx
NDY4ODExZS0xCTEuNjIwMjk0NTg1NjIwNTU5OWUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlb
Ml0JLTcuNjIyMDIwMjQ0NTk4Mzg4N2UtMQktMi45MTM1NTA3MzQ1MTk5NTg1ZS0xCTQuNzA4NDY5
NTEwMDc4NDMwMmUtMQkxLjYxNjA1ODg3MDgxMDg0NDNlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CisJWzNdCS03LjIyNDk4NDc2NTA1Mjc5NTRlLTEJLTIuNzY2MjQyNjIzMzI5MTYyNmUtMQk0LjQ1
ODc0MjE0MTcyMzYzMjhlLTEJMS42MTE4NDA1ODk4NzQ3Nzg3ZSswCTAuMDAwMDAwMDAwMDAwMDAw
MGUrMAorCVs0XQktNi43MzIxMzU0MTUwNzcyMDk1ZS0xCS0yLjU4MTY5ODAwMDQzMTA2MDhlLTEJ
NC4xNTA0Mzc0MTQ2NDYxNDg3ZS0xCTEuNjA3NjM4NjIxNTQwMjI2MWUrMAkwLjAwMDAwMDAwMDAw
MDAwMDBlKzAKKwkuLi5hbmQgMTAxOSBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgNS4w
MTkzMTUxODMxNjI2ODkyZS0xIGF0IGluZGV4IG9mIDAuCisJTWF4IFJlbEVycm9yIG9mIDEuNjI0
NTQ2OTAwOTc1ODE2NGUrMCBhdCBpbmRleCBvZiAwLgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtMaXN0ZW5lci5zZXRQb3NpdGlvbl0gMSBvdXQgb2YgNCBh
c3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK0ZBSUwgPCBbTGlzdGVuZXIuc2V0UG9zaXRpb25dIDIgb3V0IG9mIDQgYXNzZXJ0aW9ucyB3
ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMICMg
QVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDMgb3V0IG9mIDMgdGFza3Mgd2VyZSBmYWlsZWQu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1
dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0CmluZGV4IDA5MmY0M2E5ZGIzNDcwZWNkYzFmMjEy
NzgyOTEyOGYzYTQxYzA2N2QuLmM4MzIxZDY1OGEwY2ZlYjZkYWY1NzQ2NDFhMzAzN2RhYTlhMmJh
ZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVy
LWF1dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVy
bm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC0x
LDYgKzEsNCBAQAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCBy
ZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQogUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgIlN0ZXJlbyBwYW5uZXIu
cG9zaXRpb25YIiAKIFBBU1MgRXhlY3V0aW5nICJNb25vIHBhbm5lci5wb3NpdGlvblgiIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBl
ci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtd2F2ZXNoYXBlcm5vZGUt
aW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2ZS1leHBlY3RlZC50eHQKaW5kZXggMmFiNGUz
YmYwNGQ4ZDA5YTViZmRiZDNkZTBhMzQ0NTU4NWMxZDM0MC4uNzY5YmJhMTVmNmNjMTM0M2EyNzQ5
ZjMyYTdkZTIwNDkxZGRiZTM3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVy
bm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWludGVyZmFjZS93YXZlc2hhcGVyLWNvcHktY3Vy
dmUtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDE2IEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBV
bmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAK
IFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJ0ZXN0
IGNvcHlpbmciIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3QgY29weWluZ10gTW9k
aWZ5aW5nIGN1cnZlIHNob3VsZCBub3QgbW9kaWZ5IFdhdmVTaGFwZXIgCi1QQVNTICAgT3V0cHV0
IG9mIFdhdmVTaGFwZXIgd2l0aCBtb2RpZmllZCBjdXJ2ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFy
cmF5IFswLC0wLjAzNjA2NjE3NDUwNzE0MTExLC0wLjEwNzQwNDgyODA3MTU5NDI0LC0wLjEzMDg0
NTE4OTA5NDU0MzQ2LC0wLjE4ODMyNTA0NzQ5Mjk4MDk2LC0wLjIzMzkxNDAxNzY3NzMwNzEzLC0w
LjI4NTgzMjA0NzQ2MjQ2MzQsLTAuMzEwNTIzODY3NjA3MTE2NywtMC4zOTQ1ODk3ODE3NjExNjk0
MywtMC40MDU0MTEwMDUwMjAxNDE2LC0wLjQ2NTM5MzU0MzI0MzQwODIsLTAuNTI5NTU0NDg2Mjc0
NzE5MiwtMC41NDA3Mzg1ODI2MTEwODQsLTAuNjE1NDUyNzY2NDE4NDU3LC0wLjY1Nzk5MTQwOTMw
MTc1NzgsLTAuNjk4NDQzNzcwNDA4NjMwNC4uLl0uIAotUEFTUyA8IFt0ZXN0IGNvcHlpbmddIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCi1QQVNTICMgQVVESVQg
VEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCitQQVNTICAg
TW9kaWZ5aW5nIGN1cnZlIGFycmF5IGF0IHRpbWUgMC4wMTYgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorRkFJTCBYIE91dHB1dCBvZiBXYXZlU2hhcGVyIHdpdGggbW9kaWZpZWQgY3VydmUg
ZXhwZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFycmF5IFstMC4wNzU2NTIzNjA5MTYxMzc3LC0w
LjExNjU5MTIxNTEzMzY2Njk5LC0wLjE1NTgzOTIwNDc4ODIwOCwtMC4yMDg2Njc1MTY3MDgzNzQw
MiwtMC4yNjA2MTcyNTYxNjQ1NTA4LC0wLjI5NDQ4Mzc4MDg2MDkwMDksLTAuMzQ1NDIwMzYwNTY1
MTg1NTUsLTAuNDExNTg0NDk2NDk4MTA3OSwtMC40MTQ1NDE2MDIxMzQ3MDQ2LC0wLjUxMTc0NTY5
MTI5OTQzODUsLTAuNTI0NTIwMjc3OTc2OTg5NywtMC41Nzc4NTI0ODc1NjQwODY5LC0wLjYzMTI2
NjM1NTUxNDUyNjQsLTAuNjg5NTQwNjI0NjE4NTMwMywtMC42Nzk2NDM4Njk0MDAwMjQ0LC0wLjgy
MjQ5MTc2NTAyMjI3NzguLi5dIGJ1dCBkaWZmZXJzIGluIDc2OCBwbGFjZXM6CisJSW5kZXgJQWN0
dWFsCQkJRXhwZWN0ZWQKKwlbMF0JMS43MjI4MjcyNTU3MjU4NjA2ZS0xCS03LjU2NTIzNjA5MTYx
Mzc2OTVlLTIKKwlbMV0JMS45Nzg2OTUwOTQ1ODU0MTg3ZS0xCS0xLjE2NTkxMjE1MTMzNjY2OTll
LTEKKwlbMl0JMi4yMjM5OTUwMjk5MjYzMDAwZS0xCS0xLjU1ODM5MjA0Nzg4MjA4MDFlLTEKKwlb
M10JMi41NTQxNzE5Nzk0MjczMzc2ZS0xCS0yLjA4NjY3NTE2NzA4Mzc0MDJlLTEKKwkuLi5hbmQg
NzY0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZB
SUwgPCBbdGVzdCBjb3B5aW5nXSAxIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAxIG91dCBvZiAxIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1l
LWJhc2ljLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZWFkYzVhNGRiNjY2N2FiNzI0M2QyMzc3
OWYzODE4MzZlOGY5NDU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
b2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwzNCBAQAorCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCitQQVNT
IEV4ZWN1dGluZyAic3VzcGVuZC1pbnZhbGlkLWFyZ3VtZW50IiAKK1BBU1MgRXhlY3V0aW5nICJz
dXNwZW5kLWluLXRoZS1wYXN0IiAKK1BBU1MgRXhlY3V0aW5nICJzdXNwZW5kLWFmdGVyLXJlbmRl
ci1jb21wbGV0aW9uIiAKK1BBU1MgRXhlY3V0aW5nICJpZGVudGljYWwtc3VzcGVuZC10aW1lIiAK
K1BBU1MgRXhlY3V0aW5nICJyZXN1bWUtYmVmb3JlLXN1c3BlbmQiIAorUEFTUyBFeGVjdXRpbmcg
InJlc3VtZS13aXRob3V0LXN1c3BlbmQiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3N1
c3BlbmQtaW52YWxpZC1hcmd1bWVudF0gIAorUEFTUyAgIGNvbnRleHQuc3VzcGVuZCgpIHJlamVj
dGVkIGNvcnJlY3RseSB3aXRoIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuIAorUEFT
UyAgIGNvbnRleHQuc3VzcGVuZCgtMS4wKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlk
U3RhdGVFcnJvcjogc3VzcGVuZFRpbWUgY2Fubm90IGJlIG5lZ2F0aXZlLiAKK1BBU1MgICBjb250
ZXh0LnN1c3BlbmQoMi4wKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJv
cjogc3VzcGVuZFRpbWUgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiB0b3RhbCByZW5kZXJpbmcgZHVy
YXRpb24uIAorUEFTUyA8IFtzdXNwZW5kLWludmFsaWQtYXJndW1lbnRdIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykgCitQQVNTID4gW3N1c3BlbmQtaW4tdGhlLXBh
c3RdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEgc3VzcGVuZCBpbiB0aGUgcGFzdCByZWplY3RlZCBj
b3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogU3VzcGVuc2lvbiBmcmFtZSBpcyBlYXJs
aWVyIHRoYW4gY3VycmVudCBmcmFtZS4gCitQQVNTICAgUHJvbWlzZSByZXNvbHZlZCBjb3JyZWN0
bHkuIAorUEFTUyA8IFtzdXNwZW5kLWluLXRoZS1wYXN0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAyIGFzc2VydGlvbnMpIAorUEFTUyA+IFtzdXNwZW5kLWFmdGVyLXJlbmRlci1jb21w
bGV0aW9uXSAgCitQQVNTICAgU2NoZWR1bGluZyBhIHN1c3BlbmQgYWZ0ZXIgdGhlIHJlbmRlciBj
b21wbGV0aW9uIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNw
ZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4g
CitQQVNTIDwgW3N1c3BlbmQtYWZ0ZXItcmVuZGVyLWNvbXBsZXRpb25dIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCitQQVNTID4gW2lkZW50aWNhbC1zdXNwZW5k
LXRpbWVdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCBmcmFtZSAxNjAgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgYW5vdGhlciBzdXNwZW5k
IGF0IHRoZSBzYW1lIHJlbmRlcmluZyBxdWFudHVtIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIElu
dmFsaWRTdGF0ZUVycm9yOiBUaGVyZSBpcyBhbHJlYWR5IGEgcGVuZGluZyBzdXNwZW5kIHJlcXVl
c3QgYXQgdGhpcyBmcmFtZS4gCitQQVNTIDwgW2lkZW50aWNhbC1zdXNwZW5kLXRpbWVdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTID4gW3Jlc3VtZS1i
ZWZvcmUtc3VzcGVuZF0gIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBzdXNwZW5kIGF0IDQuNSBzZWNv
bmRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBSZXN1bWluZyBhIHJ1bm5p
bmcgY29udGV4dCByZXNvbHZlZCBjb3JyZWN0bHkuIAorUEFTUyA8IFtyZXN1bWUtYmVmb3JlLXN1
c3BlbmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNT
ID4gW3Jlc3VtZS13aXRob3V0LXN1c3BlbmRdICAKK1BBU1MgICBSZXN1bWluZyBhIGNvbnRleHQg
d2l0aG91dCBzdGFydGluZyBpdCByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVF
cnJvcjogQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90
IHN0YXJ0ZWQuIAorUEFTUyA8IFtyZXN1bWUtd2l0aG91dC1zdXNwZW5kXSBBbGwgYXNzZXJ0aW9u
cyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVS
IEZJTklTSEVEOiA2IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2lj
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQt
cmVzdW1lLWJhc2ljLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOThkN2Q2M2JiODljZjU0Y2IwMzg5MTcyNmZi
NzBhOTE5NzZiY2MxNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29m
ZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMuaHRtbApAQCAtMCwwICsxLDE1
MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPgorICAg
ICAgb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy5odG1sCisgICAgPC90
aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIu
Li9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAg
PHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgc2FtcGxlUmF0ZSA9IDQ0
MTAwOworICAgICAgbGV0IHJlbmRlckR1cmF0aW9uID0gMTsKKyAgICAgIGxldCByZW5kZXJRdWFu
dHVtID0gMTI4OworCisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7
CisKKyAgICAgIC8vIFRhc2s6IENhbGxpbmcgc3VzcGVuZCB3aXRoIG5vIGFyZ3VtZW50LCBuZWdh
dGl2ZSB0aW1lIG9yIHRoZSB0aW1lCisgICAgICAvLyBiZXlvbmQgdGhlIG1heGltdW0gcmVuZGVy
IGR1cmF0aW9uIHJlamVjdCB0aGUgcHJvbWlzZS4KKyAgICAgIGF1ZGl0LmRlZmluZSgnc3VzcGVu
ZC1pbnZhbGlkLWFyZ3VtZW50JywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29u
dGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRl
ICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgIHNob3VsZChjb250ZXh0
LnN1c3BlbmQoKSwgJ2NvbnRleHQuc3VzcGVuZCgpJykuYmVSZWplY3RlZCgpOworICAgICAgICBz
aG91bGQoY29udGV4dC5zdXNwZW5kKC0xLjApLCAnY29udGV4dC5zdXNwZW5kKC0xLjApJykuYmVS
ZWplY3RlZCgpOworICAgICAgICBzaG91bGQoY29udGV4dC5zdXNwZW5kKDIuMCksICdjb250ZXh0
LnN1c3BlbmQoMi4wKScpLmJlUmVqZWN0ZWQoKTsKKworICAgICAgICBjb250ZXh0LnN0YXJ0UmVu
ZGVyaW5nKCkudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICB9KTsKKworICAgICAgLy8g
VGFzazogU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4gdGhlIHBhc3Qgc2hvdWxkIGJlIHJlamVjdGVk
LgorICAgICAgYXVkaXQuZGVmaW5lKCdzdXNwZW5kLWluLXRoZS1wYXN0JywgKHRhc2ssIHNob3Vs
ZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1
ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOwor
CisgICAgICAgIGNvbnRleHQuc3VzcGVuZCgwLjUpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgc2hvdWxkKAorICAgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoY29udGV4dC5jdXJyZW50
VGltZSAtIDAuMSksCisgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBpbiB0aGUg
cGFzdCcpCisgICAgICAgICAgICAgIC5iZVJlamVjdGVkKCk7CisKKyAgICAgICAgICBzaG91bGQo
Y29udGV4dAorICAgICAgICAgICAgICAgICAgICAgLnN1c3BlbmQoCisgICAgICAgICAgICAgICAg
ICAgICAgICAgY29udGV4dC5jdXJyZW50VGltZSArIDAuMSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAnU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4gdGhlIGZ1dHVyZScpCisgICAgICAgICAgICAg
ICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgY29udGV4
dC5yZXN1bWUoKTsKKyAgICAgICAgICAgICAgICAgICAgIH0pKQorICAgICAgICAgICAgICAuYmVS
ZXNvbHZlZCgpOworCisgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsKKyAgICAgICAgfSk7CisK
KyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkp
OworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IHN1c3BlbmRpbmcgYWZ0ZXIgcmVuZGVyaW5n
IGlzIGZpbmlzaGVkIG11c3QgYmUgcmVqZWN0ZWQgd2l0aCB0aGUKKyAgICAgIC8vIHByb3Blcmx5
IGNsYW1wZWQgZnJhbWUvdGltZSBpbmZvcm1hdGlvbi4KKyAgICAgIGF1ZGl0LmRlZmluZSgnc3Vz
cGVuZC1hZnRlci1yZW5kZXItY29tcGxldGlvbicsICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAg
ICAgbGV0IGNvbnRleHQgPQorICAgICAgICAgICAgbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwg
c2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKyAgICAgICAgY29udGV4
dC5zdGFydFJlbmRlcmluZygpCisgICAgICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAg
ICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgY29udGV4dC5zdXNwZW5kKHJlbmRl
ckR1cmF0aW9uKSwKKyAgICAgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhZnRl
ciB0aGUgcmVuZGVyIGNvbXBsZXRpb24nKQorICAgICAgICAgICAgICAgICAgLmJlUmVqZWN0ZWQo
KTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAgICAudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7
CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazogQ2FsbGluZyBtdWx0aXBsZSBzdXNwZW5kcyBh
dCB0aGUgc2FtZSByZW5kZXJpbmcgcXVhbnR1bSBzaG91bGQKKyAgICAgIC8vIHJlamVjdCB0aGUg
cHJvbWlzZS4KKyAgICAgIGF1ZGl0LmRlZmluZSgnaWRlbnRpY2FsLXN1c3BlbmQtdGltZScsICh0
YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgbGV0IGNvbnRleHQgPQorICAgICAgICAgICAgbmV3
IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgc2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1w
bGVSYXRlKTsKKworICAgICAgICAvLyB8c3VzcGVuZFRpbWUxfCBhbmQgfHN1c3BlbmRUaW1lMnwg
YXJlIGlkZW50aWNhbCB3aGVuIHF1YW50aXplZCB0byB0aGUKKyAgICAgICAgLy8gcmVuZGVyIHF1
YW50dW0gc2l6ZS4gIFRoZSBmYWN0b3JzIGFyZSBhcmJpdHJhcnkgZXhjZXB0IHRoZXkgc2hvdWxk
IGJlCisgICAgICAgIC8vIGJldHdlZW4gMSAoZXhjbHVzaXZlKSBhbmQgMiAoaW5jbHVzaXZlKS4g
IFVzaW5nIGEgZmFjdG9yIG9mIDIgYWxzbworICAgICAgICAvLyB0ZXN0cyB0aGF0IHRpbWVzIGFy
ZSByb3VuZGVkIHVwLgorICAgICAgICBsZXQgc3VzcGVuZFRpbWUxID0gMS4yNSAqIHJlbmRlclF1
YW50dW0gLyBzYW1wbGVSYXRlOworICAgICAgICBsZXQgc3VzcGVuZFRpbWUyID0gMiAqIHJlbmRl
clF1YW50dW0gLyBzYW1wbGVSYXRlOworCisgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICgp
ID0+IGNvbnRleHQuc3VzcGVuZChzdXNwZW5kVGltZTEpLnRoZW4oKCkgPT4gY29udGV4dC5yZXN1
bWUoKSksCisgICAgICAgICAgICAnU2NoZWR1bGluZyBhIHN1c3BlbmQgYXQgZnJhbWUgJyArIHN1
c3BlbmRUaW1lMSAqIHNhbXBsZVJhdGUpCisgICAgICAgICAgICAubm90VGhyb3coKTsKKworICAg
ICAgICBzaG91bGQoCisgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoc3VzcGVuZFRpbWUyKS50
aGVuKCgpID0+IGNvbnRleHQucmVzdW1lKCkpLAorICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYW5v
dGhlciBzdXNwZW5kIGF0IHRoZSBzYW1lIHJlbmRlcmluZyBxdWFudHVtJykKKyAgICAgICAgICAg
IC5iZVJlamVjdGVkKCk7CisKKyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpLnRoZW4o
KCkgPT4gdGFzay5kb25lKCkpOworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IFJlc3VtaW5n
IGEgcnVubmluZyBjb250ZXh0IHNob3VsZCBiZSByZXNvbHZlZC4KKyAgICAgIGF1ZGl0LmRlZmlu
ZSgncmVzdW1lLWJlZm9yZS1zdXNwZW5kJywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICAv
LyBNYWtlIHRoZSByZW5kZXIgbGVuZ3RoIDUgdGltZXMgbG9uZ2VyIHRvIG1pbmltaXplIHRoZSBm
bGFraW5lc3MuCisgICAgICAgIGxldCBsb25nUmVuZGVyRHVyYXRpb24gPSByZW5kZXJEdXJhdGlv
biAqIDU7CisgICAgICAgIGxldCBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoCisg
ICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogbG9uZ1JlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRl
KTsKKworICAgICAgICAvLyBDcmVhdGUgZHVtbXkgYXVkaW8gZ3JhcGggdG8gc2xvdyB0aGUgcmVu
ZGVyaW5nLgorICAgICAgICBsZXQgb3NjID0gY29udGV4dC5jcmVhdGVPc2NpbGxhdG9yKCk7Cisg
ICAgICAgIGxldCBscGYgPSBjb250ZXh0LmNyZWF0ZUJpcXVhZEZpbHRlcigpOworICAgICAgICBv
c2MudHlwZSA9ICdzYXd0b290aCc7CisgICAgICAgIG9zYy5mcmVxdWVuY3kuc2V0VmFsdWVBdFRp
bWUoMC4xLCAwLjApOworICAgICAgICBvc2MuZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRU
aW1lKDEwMDAsIGxvbmdSZW5kZXJEdXJhdGlvbiAqIDAuNSk7CisgICAgICAgIG9zYy5mcmVxdWVu
Y3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMC4xLCBsb25nUmVuZGVyRHVyYXRpb24pOworICAg
ICAgICBscGYuZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1lKDAuMSwgMC4wKTsKKyAgICAgICAgbHBm
LmZyZXF1ZW5jeS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgxMDAwLCBsb25nUmVuZGVyRHVyYXRp
b24gKiAwLjUpOworICAgICAgICBscGYuZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1l
KDAuMSwgbG9uZ1JlbmRlckR1cmF0aW9uKTsKKyAgICAgICAgb3NjLmNvbm5lY3QobHBmKTsKKyAg
ICAgICAgbHBmLmNvbm5lY3QoY29udGV4dC5kZXN0aW5hdGlvbik7CisgICAgICAgIG9zYy5zdGFy
dCgpOworCisgICAgICAgIC8vIEEgc3VzcGVuZCBpcyBzY2hlZHVsZWQgYXQgdGhlIDkwJSBvZiB0
aGUgcmVuZGVyIGR1cmF0aW9uLgorICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAoKSA9PiB7
CisgICAgICAgICAgICAgIC8vIFRlc3QgaXMgZmluaXNoZWQgd2hlbiB0aGlzIHN1c3BlbmQgcmVz
b2x2ZXMuCisgICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChsb25nUmVuZGVyRHVyYXRpb24g
KiAwLjkpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgICAgICAgfSwKKyAgICAgICAg
ICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCAnICsgbG9uZ1JlbmRlckR1cmF0aW9uICogMC45
ICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgIC8vIFdl
IGhhdmUgdG8gc3RhcnQgcmVuZGVyaW5nIHRvIGdldCB0aGUgdGltZSBydW5uaW5nLgorICAgICAg
ICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCk7CisKKyAgICAgICAgLy8gVGhlbiBjYWxsIHJlc3Vt
ZSgpIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSByZW5kZXJpbmcgc3RhcnRzLiBSZXN1bWluZworICAg
ICAgICAvLyBhIGNvbnRleHQgdGhhdCBpcyBhbHJlYWR5IHJ1bm5pbmcgc2hvdWxkIGJlIHJlc29s
dmVkLgorICAgICAgICBzaG91bGQoY29udGV4dC5yZXN1bWUoKSwgJ1Jlc3VtaW5nIGEgcnVubmlu
ZyBjb250ZXh0JykuYmVSZXNvbHZlZCgpOworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IENh
bGxpbmcgcmVzdW1lIG9uIGEgY29udGV4dCB0aGF0IGlzIG5vdCBzdGFydGVkIHNob3VsZCByZWpl
Y3QgdGhlCisgICAgICAvLyBwcm9taXNlLgorICAgICAgYXVkaXQuZGVmaW5lKCdyZXN1bWUtd2l0
aG91dC1zdXNwZW5kJywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9
CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVu
ZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgIHNob3VsZChjb250ZXh0LnJlc3Vt
ZSgpLCAnUmVzdW1pbmcgYSBjb250ZXh0IHdpdGhvdXQgc3RhcnRpbmcgaXQnKQorICAgICAgICAg
ICAgLmJlUmVqZWN0ZWQoKQorICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOwor
ICAgICAgfSk7CisKKyAgICAgIGF1ZGl0LnJ1bigpOworICAgIDwvc2NyaXB0PgorICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFu
ZGxlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWYxNzI3NDBhMzcyMDQ0MzUwNjMyNGRkNDNi
NmFhZGQ2Y2NhZTZjMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29m
ZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDI2IEBACisKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAK
K1BBU1MgRXhlY3V0aW5nICJ0ZXN0IiAKK1BBU1MgQXVkaXQgcmVwb3J0IAorUEFTUyA+IFt0ZXN0
XSBUZXN0IGV2ZW50IGhhbmRsZXIgZnJvbSByZXN1bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFTUyAg
IEEgbmV3IHN1c3BlbmQgaGFzIGJlZW4gc2NoZWR1bGVkIGF0IDAgc2Vjb25kKHMpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6
IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDAgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNj
aGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwLjI1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0
IGlzIHN1c3BlbmRlZCBhdCAwLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVs
aW5nIGEgbmV3IHN1c3BlbmQgYXQgMC41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1
c3BlbmRlZCBhdCAwLjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBu
ZXcgc3VzcGVuZCBhdCAwLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRl
ZCBhdCAwLjc1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1
c3BlbmQgYXQgMSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgMSBz
ZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEu
MjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRl
Y2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuMjUgc2Vjb25k
KHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxLjUgc2Vj
b25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdl
IGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuNSBzZWNvbmQocykgaXMg
dHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEuNzUgc2Vjb25kKHMp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50
IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUu
IAorUEFTUyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNvbmRzIHJlamVjdGVkIGNvcnJlY3RseSB3aXRo
IEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRv
dGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNTICAgb25jb21wbGV0ZSBldmVudCBoYW5kbGVy
OiBjb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRvIGNsb3NlZC4gCitQQVNTIDwgW3Rlc3RdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDE4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRB
U0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLWV2ZW50aGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlv
Y29udGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZDhm
MmJhOTM1NDMwM2U3NGMxNGY4NzY2NTQ2NTIyZjNjYTgxNmJiCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1l
dmVudGhhbmRsZXIuaHRtbApAQCAtMCwwICsxLDk2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3Bl
bmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQt
dXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRl
c3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisK
KyAgICAgIGxldCBjb250ZXh0OworICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisKKyAg
ICAgIC8vIFRoZSBzYW1wbGUgcmF0ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVyaW5nIHF1YW50
dW0sIHNvIHN1c3BlbnNpb24KKyAgICAgIC8vIHRpbWVzIGluIHRoZSB0ZXN0IHdpbGwgZmFsbCBv
biB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnkuIEFsdGhvdWdoCisgICAgICAvLyB0aGlzIGlz
IG5vdCBuZWNlc3NhcnksIGl0IGlzIGVhc2llciB0byB1bmRlcnN0YW5kIHRoZSB0ZXN0LgorICAg
ICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworCisgICAgICBsZXQgcmVu
ZGVyRHVyYXRpb24gPSAyOworICAgICAgbGV0IHNjaGVkdWxlZFN1c3BlbmRUaW1lID0gMDsKKwor
ICAgICAgLy8gV2l0aCB0aGUgc2FtcGxlIHJhdGUgc2V0dGluZyBhYm92ZSwgdGhpcyBlbnN1cmVz
IHN1c3BlbnNpb24gdGltZSBmYWxsCisgICAgICAvLyBpbiB0byB0aGUgcmVuZGVyIHF1YW50dW0g
Ym91bmRhcnkuCisgICAgICBsZXQgc3VzcGVuZEludGVydmFsID0gMC4yNTsKKworICAgICAgYXVk
aXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVsOiAndGVzdCcsCisgICAg
ICAgICAgICBkZXNjcmlwdGlvbjogJ1Rlc3QgZXZlbnQgaGFuZGxlciBmcm9tIHJlc3VtZSgpIGFu
ZCBzdXNwZW5kKCknCisgICAgICAgICAgfSwKKyAgICAgICAgICAodGFzaywgc2hvdWxkKSA9PiB7
CisgICAgICAgICAgICBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoCisgICAgICAg
ICAgICAgICAgMSwgc2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKwor
ICAgICAgICAgICAgY29udGV4dC5vbnN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICAgIGlmIChjb250ZXh0LnN0YXRlID09PSAnc3VzcGVuZGVkJyAmJgorICAgICAgICAgICAg
ICAgICAgY29udGV4dC5jdXJyZW50VGltZSA9PT0gc2NoZWR1bGVkU3VzcGVuZFRpbWUpIHsKKyAg
ICAgICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuc3RhdGUg
PT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmN1cnJl
bnRUaW1lID09PSBzY2hlZHVsZWRTdXNwZW5kVGltZSwKKyAgICAgICAgICAgICAgICAgICAgJ29u
c3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgJyArCisg
ICAgICAgICAgICAgICAgICAgICAgICBzY2hlZHVsZWRTdXNwZW5kVGltZSArICcgc2Vjb25kKHMp
JykKKyAgICAgICAgICAgICAgICAgICAgLmJlVHJ1ZSgpOworICAgICAgICAgICAgICAgIHNjaGVk
dWxlZFN1c3BlbmRUaW1lID0gY29udGV4dC5jdXJyZW50VGltZSArIHN1c3BlbmRJbnRlcnZhbDsK
KworICAgICAgICAgICAgICAgIC8vIFNjaGVkdWxpbmcgYSBzdXNwZW5kIGJlZm9yZSB0aGUgcmVu
ZGVyIGR1cmF0aW9uIHNob3VsZCBwYXNzLgorICAgICAgICAgICAgICAgIGlmIChzY2hlZHVsZWRT
dXNwZW5kVGltZSA8IHJlbmRlckR1cmF0aW9uKSB7CisgICAgICAgICAgICAgICAgICBzaG91bGQo
CisgICAgICAgICAgICAgICAgICAgICAgKCkgPT4gY29udGV4dC5zdXNwZW5kKHNjaGVkdWxlZFN1
c3BlbmRUaW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAnU2NoZWR1bGluZyBhIG5ldyBzdXNw
ZW5kIGF0ICcgKyBzY2hlZHVsZWRTdXNwZW5kVGltZSArCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICcgc2Vjb25kKHMpJykKKyAgICAgICAgICAgICAgICAgICAgICAubm90VGhyb3coKTsKKyAg
ICAgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAv
LyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBleGFjdGx5IGF0IHRoZSByZW5kZXIgZHVyYXRpb24gc2hv
dWxkIGJlCisgICAgICAgICAgICAgICAgLy8gcmVqZWN0ZWQuCisgICAgICAgICAgICAgICAgaWYg
KHNjaGVkdWxlZFN1c3BlbmRUaW1lID09PSByZW5kZXJEdXJhdGlvbikgeworICAgICAgICAgICAg
ICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChzY2hl
ZHVsZWRTdXNwZW5kVGltZSksCisgICAgICAgICAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYXQg
JyArIHJlbmRlckR1cmF0aW9uICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgICAgICAgICAgICAu
YmVSZWplY3RlZCgpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGNvbnRl
eHQucmVzdW1lKCk7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH07CisKKyAgICAgICAg
ICAgIC8vIFRoaXMgdGVzdCBpcyBmb3IgdmVyaWZ5aW5nIGFsbCB0aGUgZXZlbnQgaGFuZGxlcnMg
b24gT0FDIGFuZCB0aGF0CisgICAgICAgICAgICAvLyBpcyB3aHkgJ29uY29tcGxldGUnIGlzIHVz
ZWQgaGVyZS4KKyAgICAgICAgICAgIGNvbnRleHQub25jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgICBzaG91bGQoY29udGV4dC5zdGF0ZSwgJ29uY29tcGxldGUgZXZlbnQgaGFu
ZGxlcjogY29udGV4dC5zdGF0ZScpCisgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9z
ZWQnKTsKKyAgICAgICAgICAgICAgdGFzay5kb25lKCk7CisgICAgICAgICAgICB9OworCisgICAg
ICAgICAgICAvLyBTY2hlZHVsZSB0aGUgZmlyc3Qgc3VzcGVuc2lvbi4KKyAgICAgICAgICAgIHNo
b3VsZCgKKyAgICAgICAgICAgICAgICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3Vz
cGVuZFRpbWUpLAorICAgICAgICAgICAgICAgICdBIG5ldyBzdXNwZW5kIGhhcyBiZWVuIHNjaGVk
dWxlZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUgKworICAgICAgICAgICAgICAgICAgICAn
IHNlY29uZChzKScpCisgICAgICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICAgICAgICA7
CisKKyAgICAgICAgICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKTsKKyAgICAgICAgICB9KTsK
KworICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3Vz
cGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1
bGF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YmJkZGRhYTJjNTE0YmU0NzdiZDJkOTM4
YzIyYTMwYTcyMTVkZDAzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
b2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVsYXRpb24tZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNU
QVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNT
ID4gW3Rlc3RdIFN5bmNocm9ub3VzIGdyYXBoIG1hbmlwdWxhdGlvbiB3aXRoIHN1c3BlbmQoKSBh
bmQgcmVzdW1lKCkgCitQQVNTICAgRnJhbWUgYXQgd2hpY2ggY29udGV4dCBpcyBzdXNwZW5kZWQg
aXMgZXF1YWwgdG8gMTI4MDAuIAorUEFTUyAgIENvbm5lY3RpbmcgYSBjb25zdGFudCBidWZmZXIg
dG8gZGVzdGluYXRpb24gYW5kIHN0YXJ0aW5nIGF0IDEyODAwIGZyYW1lIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IGlzIHN1c3BlbmRlZCBpcyBlcXVhbCB0byAy
NTYwMC4gCitQQVNTICAgRGlzY29ubmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciBhdCAyNTYwMCBm
cmFtZSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQnVmZmVyIGZyYW1lIFsw
LCAxMjgwMCkgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitGQUlMIFggQnVmZmVyIGZy
YW1lIFsxMjgwMCwgMjU2MDApOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAx
MjgwMCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAKKwlbMV0JMAor
CVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI3OTYgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEJ1ZmZlciBmcmFtZSBbMjU2MDAsIDM4NDAw
KSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK0ZBSUwgPCBbdGVzdF0gMSBvdXQgb2Yg
NyBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMSB0YXNr
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9v
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjAzYzk4ZGM0MWU5MWFmYTcwODFkNzljYWY5YmNkMTgyNzgzMmExNjAKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0
LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sCkBAIC0wLDAgKzEsMTIyIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBv
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1s
CisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNj
cmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJv
ZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQg
PSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisKKyAgICAgIGxldCBjb250ZXh0OworICAgICAg
bGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisgICAgICBsZXQgcmVuZGVyRHVyYXRpb24gPSAzOwor
CisgICAgICAvLyBUaGUgc2FtcGxlIHJhdGUgaXMgbXVsdGlwbGUgb2YgdGhlIHJlbmRlcmluZyBx
dWFudHVtLCBzbyBzdXNwZW5zaW9uCisgICAgICAvLyB0aW1lcyBmYWxsIGluIHRvIHRoZSByZW5k
ZXIgcXVhbnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCBzYW1wbGVSYXRlID0gcmVuZGVyUXVhbnR1
bSAqIDEwMDsKKworICAgICAgLy8gU3VzcGVuZCBhdCAxIHNlY29uZCBhbmQgYWN0aXZhdGUgdGhl
IHNvdXJjZSBub2RlLiBUaGUgYXVkaW8gb3V0cHV0CisgICAgICAvLyBzaG91bGQgYmUgMS4wIGZy
b20gfHN1c3BlbmRUaW1lMXwgdG8gdGhlIG5leHQgc3VzcGVuc2lvbi4KKyAgICAgIGxldCBzdXNw
ZW5kVGltZTEgPSAxOworCisgICAgICAvLyBTdXNwZW5kIGF0IDIgc2Vjb25kcyBhbmQgZGlzY29u
bmVjdCB0aGUgbm9kZS4gVGhlIGF1ZGlvIG91dHB1dCBzaG91bGQKKyAgICAgIC8vIGJlIDAuMCBm
cm9tIHxzdXNwZW5kVGltZTJ8IHRvIHRoZSBlbmQuCisgICAgICBsZXQgc3VzcGVuZFRpbWUyID0g
MjsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVs
OiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjoKKyAgICAgICAgICAgICAgICAnU3lu
Y2hyb25vdXMgZ3JhcGggbWFuaXB1bGF0aW9uIHdpdGggc3VzcGVuZCgpIGFuZCByZXN1bWUoKScK
KyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAg
IGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBz
YW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICAv
LyBDcmVhdGUgYSBjb25zdGFudCBidWZmZXIgb2YgMS4wLgorICAgICAgICAgICAgbGV0IGNvbnN0
YW50QnVmZmVyID0gY3JlYXRlQ29uc3RhbnRCdWZmZXIoY29udGV4dCwgMSwgMS4wKTsKKyAgICAg
ICAgICAgIGxldCBjb25zdGFudFNvdXJjZSA9IGNvbnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCk7
CisgICAgICAgICAgICBjb25zdGFudFNvdXJjZS5idWZmZXIgPSBjb25zdGFudEJ1ZmZlcjsKKyAg
ICAgICAgICAgIGNvbnN0YW50U291cmNlLmxvb3AgPSB0cnVlOworCisgICAgICAgICAgICAvLyBU
aGUgYXVkaW8gb3V0cHV0IGZyb20gdGhlIGJlZ2lubmluZyAoMC4wIHNlY29uZCkgdG8gdGhlIGZp
cnN0CisgICAgICAgICAgICAvLyBzdXNwZW5kIHRpbWUgc2hvdWxkIGJlIDAuMCBiZWNhdXNlIHRo
ZXJlIGlzIG5vIGNvbm5lY3Rpb24gdG8gdGhlCisgICAgICAgICAgICAvLyBkZXN0aW5hdGlvbi4K
KworICAgICAgICAgICAgY29udGV4dC5zdXNwZW5kKHN1c3BlbmRUaW1lMSkudGhlbihmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgICAgaWYgKGNvbnRleHQuY3VycmVudFRpbWUgPT09IHN1c3BlbmRU
aW1lMSkgeworICAgICAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICAgICAgY29u
dGV4dC5jdXJyZW50VGltZSAqIHNhbXBsZVJhdGUsCisgICAgICAgICAgICAgICAgICAgICdGcmFt
ZSBhdCB3aGljaCBjb250ZXh0IGlzIHN1c3BlbmRlZCcpCisgICAgICAgICAgICAgICAgICAgIC5i
ZUVxdWFsVG8oc3VzcGVuZFRpbWUxICogc2FtcGxlUmF0ZSkKKyAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgICAoKSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIGNvbnN0YW50U291cmNlLmNvbm5lY3QoY29udGV4dC5kZXN0aW5hdGlvbik7Cisg
ICAgICAgICAgICAgICAgICAgIGNvbnN0YW50U291cmNlLnN0YXJ0KCkKKyAgICAgICAgICAgICAg
ICAgIH0sCisgICAgICAgICAgICAgICAgICAnQ29ubmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciB0
byBkZXN0aW5hdGlvbiBhbmQgc3RhcnRpbmcgYXQgJyArCisgICAgICAgICAgICAgICAgICAgICAg
c3VzcGVuZFRpbWUxICogc2FtcGxlUmF0ZSArICcgZnJhbWUnKQorICAgICAgICAgICAgICAgICAg
Lm5vdFRocm93KCk7CisgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgICAgY29udGV4dC5yZXN1
bWUoKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoc3Vz
cGVuZFRpbWUyKS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICBpZiAoY29udGV4dC5j
dXJyZW50VGltZSA9PT0gc3VzcGVuZFRpbWUyKSB7CisgICAgICAgICAgICAgICAgc2hvdWxkKGNv
bnRleHQuY3VycmVudFRpbWUgKiBzYW1wbGVSYXRlLCAnQ29udGV4dCBpcyBzdXNwZW5kZWQnKQor
ICAgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRvKHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGUp
OworICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAg
ICAgICgpID0+IGNvbnN0YW50U291cmNlLmRpc2Nvbm5lY3QoKSwKKyAgICAgICAgICAgICAgICAg
ICdEaXNjb25uZWN0aW5nIGEgY29uc3RhbnQgYnVmZmVyIGF0ICcgKworICAgICAgICAgICAgICAg
ICAgICAgIHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGUgKyAnIGZyYW1lJykKKyAgICAgICAgICAg
ICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgICAgICAgIGNvbnRleHQucmVzdW1lKCk7Cisg
ICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpCisg
ICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24oYnVmZmVyKSB7CisgICAgICAgICAgICAgICAg
ICB2ZXJpZnlSZXN1bHQoc2hvdWxkLCBidWZmZXIpOworICAgICAgICAgICAgICAgIH0pCisgICAg
ICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgICAgIH0pOworCisg
ICAgICBmdW5jdGlvbiB2ZXJpZnlSZXN1bHQoc2hvdWxkLCBidWZmZXIpIHsKKyAgICAgICAgbGV0
IGRhdGEgPSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgICAgICAgbGV0IHN1c3BlbmRJ
bmRleDEgPSBzdXNwZW5kVGltZTEgKiBzYW1wbGVSYXRlOworICAgICAgICBsZXQgc3VzcGVuZElu
ZGV4MiA9IHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGU7CisgICAgICAgIGxldCBlbmRJbmRleCA9
IHJlbmRlckR1cmF0aW9uICogc2FtcGxlUmF0ZTsKKworICAgICAgICAvLyBTcGxpdCB0aGUgcmVu
ZGVyZWQgYnVmZmVyIGludG8gMyBzZWdtZW50czoKKyAgICAgICAgLy8gWzAsIHN1c3BlbmRJbmRl
eDEpLCBbc3VzcGVuZEluZGV4MSwgc3VzcGVuZEluZGV4MiksIFtzdXNwZW5kSW5kZXgyLAorICAg
ICAgICAvLyBlbmRJbmRleCkuCisgICAgICAgIGxldCBzdWJhcnJheTAgPSBkYXRhLnN1YmFycmF5
KDAsIHN1c3BlbmRJbmRleDEpOworICAgICAgICBsZXQgc3ViYXJyYXkxID0gZGF0YS5zdWJhcnJh
eShzdXNwZW5kSW5kZXgxLCBzdXNwZW5kSW5kZXgyKTsKKyAgICAgICAgbGV0IHN1YmFycmF5MiA9
IGRhdGEuc3ViYXJyYXkoc3VzcGVuZEluZGV4MiwgZW5kSW5kZXgpOworCisgICAgICAgIC8vIEVh
Y2ggc2VnbWVudCBzaG91bGQgY29udGFpbiBhIGNvbnN0YW50IHZhbHVlIG9mIDAsIDEgYW5kIDAK
KyAgICAgICAgLy8gcmVzcGVjdGl2ZWx5LgorICAgICAgICBzaG91bGQoc3ViYXJyYXkwLCAnQnVm
ZmVyIGZyYW1lIFswLCAnICsgc3VzcGVuZEluZGV4MSArICcpJykKKyAgICAgICAgICAgIC5iZUNv
bnN0YW50VmFsdWVPZigwKTsKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgc3ViYXJyYXkx
LAorICAgICAgICAgICAgJ0J1ZmZlciBmcmFtZSBbJyArIHN1c3BlbmRJbmRleDEgKyAnLCAnICsg
c3VzcGVuZEluZGV4MiArICcpJykKKyAgICAgICAgICAgIC5iZUNvbnN0YW50VmFsdWVPZigxKTsK
KyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgc3ViYXJyYXkyLCAnQnVmZmVyIGZyYW1lIFsn
ICsgc3VzcGVuZEluZGV4MiArICcsICcgKyBlbmRJbmRleCArICcpJykKKyAgICAgICAgICAgIC5i
ZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgIH0KKworICAgICAgYXVkaXQucnVuKCk7CisgICAg
PC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQt
cmVzdW1lLXByb21pc2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkYTkwMmUxNTFhZTFlYjNm
YjllZGU0OTMyNzI0YjA1NTUyNGVlNjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMjYgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJU
RUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4g
W3Rlc3RdIFByb21pc2UgcmVzb2x1dGlvbiBvZiByZXN1bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFT
UyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwIHNlY29uZChzKSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMCBzZWNvbmQocykg
aXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDAuMjUgc2Vjb25k
KHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRl
ZCBhdCAwLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1
c3BlbmQgYXQgMC41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNT
ICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMC41IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBT
Y2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC43NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0IDAuNzUgc2Vjb25kKHMp
IGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxIHNlY29uZChz
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQg
YXQgMSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5k
IGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBD
b250ZXh0IHN1c3BlbmRlZCBhdCAxLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hl
ZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMS41IHNlY29uZChzKSBpcyB0
cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS43NSBzZWNvbmQocykg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0
IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNvbmRz
IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBj
YW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNTICAg
UHJvbWlzZSBjb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRvIGNsb3NlZC4gCitQQVNTIDwgW3Rlc3Rd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDE4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3Bl
bmQtcmVzdW1lLXByb21pc2UuaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRp
b2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkzY2I3NjM4
OTNkYzhlYWNhMjlhYzY3OTRhNDZiMGEwZDQ3MTU0ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21p
c2UuaHRtbApAQCAtMCwwICsxLDkxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVh
ZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1l
LXByb21pc2UuaHRtbAorICAgIDwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4uL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F1ZGl0LXV0aWwuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQuanMiPjwvc2NyaXB0PgorICA8
L2hlYWQ+CisgIDxib2R5PgorICAgIDxzY3JpcHQgaWQ9ImxheW91dC10ZXN0LWNvZGUiPgorICAg
ICAgbGV0IGF1ZGl0ID0gQXVkaXQuY3JlYXRlVGFza1J1bm5lcigpOworICAgICAgbGV0IGNvbnRl
eHQ7CisKKyAgICAgIC8vIFRoZSBzYW1wbGUgcmF0ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVy
aW5nIHF1YW50dW0sIHNvIHN1c3BlbnNpb24KKyAgICAgIC8vIHRpbWVzIGZhbGwgaW4gdG8gdGhl
IHJlbmRlciBxdWFudHVtIGJvdW5kYXJ5LgorICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7
CisKKyAgICAgIGxldCBzYW1wbGVSYXRlID0gcmVuZGVyUXVhbnR1bSAqIDEwMDsKKyAgICAgIGxl
dCByZW5kZXJEdXJhdGlvbiA9IDI7CisgICAgICBsZXQgc2NoZWR1bGVkU3VzcGVuZFRpbWUgPSAw
OworCisgICAgICAvLyBXaXRoIHRoZSBzYW1wbGUgcmF0ZSBzZXR0aW5nIGFib3ZlLCB0aGlzIGVu
c3VyZXMgc3VzcGVuc2lvbiB0aW1lIGZhbGwKKyAgICAgIC8vIGluIHRvIHRoZSByZW5kZXIgcXVh
bnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCBzdXNwZW5kSW50ZXJ2YWwgPSAwLjI1OworCisgICAg
ICBmdW5jdGlvbiBvblN1c3BlbmRlZChzaG91bGQpIHsKKyAgICAgICAgaWYgKGNvbnRleHQuc3Rh
dGUgPT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAgICBjb250ZXh0LmN1cnJlbnRUaW1lID09
PSBzY2hlZHVsZWRTdXNwZW5kVGltZSkgeworICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAg
ICAgY29udGV4dC5zdGF0ZSA9PT0gJ3N1c3BlbmRlZCcgJiYKKyAgICAgICAgICAgICAgICAgIGNv
bnRleHQuY3VycmVudFRpbWUgPT09IHNjaGVkdWxlZFN1c3BlbmRUaW1lLAorICAgICAgICAgICAg
ICAnQ29udGV4dCBzdXNwZW5kZWQgYXQgJyArIHNjaGVkdWxlZFN1c3BlbmRUaW1lICsgJyBzZWNv
bmQocyknKQorICAgICAgICAgICAgICAuYmVUcnVlKCk7CisKKyAgICAgICAgICBzY2hlZHVsZWRT
dXNwZW5kVGltZSA9IGNvbnRleHQuY3VycmVudFRpbWUgKyBzdXNwZW5kSW50ZXJ2YWw7CisKKyAg
ICAgICAgICAvLyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBiZWZvcmUgdGhlIHJlbmRlciBkdXJhdGlv
biBzaG91bGQgcGFzcy4KKyAgICAgICAgICBpZiAoc2NoZWR1bGVkU3VzcGVuZFRpbWUgPCByZW5k
ZXJEdXJhdGlvbikgeworICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICgpID0+
IGNvbnRleHQuc3VzcGVuZChzY2hlZHVsZWRTdXNwZW5kVGltZSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgLnRoZW4oKCkgPT4gb25TdXNwZW5kZWQoc2hvdWxkKSksCisgICAgICAgICAgICAg
ICAgJ1NjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUg
KworICAgICAgICAgICAgICAgICAgICAnIHNlY29uZChzKScpCisgICAgICAgICAgICAgICAgLm5v
dFRocm93KCk7CisgICAgICAgICAgfQorCisgICAgICAgICAgLy8gU2NoZWR1bGluZyBhIHN1c3Bl
bmQgZXhhY3RseSBhdCB0aGUgcmVuZGVyIGR1cmF0aW9uIHNob3VsZCBiZQorICAgICAgICAgIC8v
IHJlamVjdGVkLgorICAgICAgICAgIGlmIChzY2hlZHVsZWRTdXNwZW5kVGltZSA9PT0gcmVuZGVy
RHVyYXRpb24pIHsKKyAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICBjb250ZXh0
LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpLAorICAgICAgICAgICAgICAgICdTY2hlZHVs
aW5nIGF0ICcgKyByZW5kZXJEdXJhdGlvbiArICcgc2Vjb25kcycpCisgICAgICAgICAgICAgICAg
LmJlUmVqZWN0ZWQoKTsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBjb250ZXh0LnJlc3VtZSgp
OworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIGF1ZGl0LmRlZmluZSgKKyAgICAgICAgICB7
CisgICAgICAgICAgICBsYWJlbDogJ3Rlc3QnLAorICAgICAgICAgICAgZGVzY3JpcHRpb246ICdQ
cm9taXNlIHJlc29sdXRpb24gb2YgcmVzdW1lKCkgYW5kIHN1c3BlbmQoKScKKyAgICAgICAgICB9
LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBu
ZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICog
cmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICAvLyBTY2hlZHVsZSB0
aGUgZmlyc3Qgc3VzcGVuc2lvbi4KKyAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAg
ICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IG9uU3VzcGVuZGVkKHNob3VsZCkpLAorICAgICAg
ICAgICAgICAgICdTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgJyArIHNjaGVkdWxlZFN1c3Bl
bmRUaW1lICsKKyAgICAgICAgICAgICAgICAgICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAg
ICAgIC5ub3RUaHJvdygpOworCisgICAgICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkK
KyAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgIHNo
b3VsZChjb250ZXh0LnN0YXRlLCAnUHJvbWlzZSBjb250ZXh0LnN0YXRlJykKKyAgICAgICAgICAg
ICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9zZWQnKTsKKyAgICAgICAgICAgICAgICB9KQorICAg
ICAgICAgICAgICAgIC50aGVuKCgpID0+IHRhc2suZG9uZSgpKTsKKyAgICAgICAgICB9KTsKKwor
ICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2Zm
bGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYmVjYWM3M2Y1ZjJiMTkxN2UxZmVhOGJhYWZlMWQ5MzQ3ZmNkNWRiNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3Vz
cGVuZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjIgQEAKKworUEFT
UyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAor
UEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rlc3RdIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCkg
d2l0aCB0aW1lZCBzZXF1ZW5jZSAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzAgYXQgMC4y
NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxp
bmcgc3VzcGVuZCAjMSBhdCAwLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5kICMyIGF0IDEgc2Vjb25kKHMpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzMgYXQgMC41
IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGlu
ZyBzdXNwZW5kICM0IGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzUgYXQgMCBzZWNvbmQocykgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgc3VzcGVuZCAjNiBhdCAxLjc1
IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgVGhlIHJlc29s
dXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjNSBpcyAwIGF0IDAuMDAgc2Vjb25kKHMpIGlzIGVxdWFs
IHRvIDAuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9mIHN1c3BlbmQgIzAgaXMgMSBh
dCAwLjI1IHNlY29uZChzKSBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBv
cmRlciBvZiBzdXNwZW5kICMzIGlzIDIgYXQgMC41MCBzZWNvbmQocykgaXMgZXF1YWwgdG8gMi4g
CitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjMSBpcyAzIGF0IDAuNzUg
c2Vjb25kKHMpIGlzIGVxdWFsIHRvIDMuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9m
IHN1c3BlbmQgIzIgaXMgNCBhdCAxLjAwIHNlY29uZChzKSBpcyBlcXVhbCB0byA0LiAKK1BBU1Mg
ICBUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBzdXNwZW5kICM0IGlzIDUgYXQgMS4yNSBzZWNvbmQo
cykgaXMgZXF1YWwgdG8gNS4gCitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVu
ZCAjNiBpcyA2IGF0IDEuNzUgc2Vjb25kKHMpIGlzIGVxdWFsIHRvIDYuIAorUEFTUyA8IFt0ZXN0
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxNCBhc3NlcnRpb25zKSAKK1BBU1MgIyBB
VURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNw
ZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1
ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFlOWIz
NWIzNDQ1ODY5Y2E0NGI2NDhiNjc1YWZmMGE5N2M4NWFlMTQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNl
cXVlbmNlLmh0bWwKQEAgLTAsMCArMSw5MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPgorICAgICAgb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJl
c3VtZS1zZXF1ZW5jZS5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+
CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+
CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisgICAgICBsZXQg
Y29udGV4dDsKKworICAgICAgLy8gVGhlIHNhbXBsZSByYXRlIGlzIG11bHRpcGxlIG9mIHRoZSBy
ZW5kZXJpbmcgcXVhbnR1bSwgc28gc3VzcGVuc2lvbgorICAgICAgLy8gdGltZXMgZmFsbCBpbiB0
byB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnkuCisgICAgICBsZXQgcmVuZGVyUXVhbnR1bSA9
IDEyODsKKworICAgICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworICAg
ICAgbGV0IHJlbmRlckR1cmF0aW9uID0gMjsKKworICAgICAgLy8gVGhlc2UgbnVtYmVycyBhcmUg
aW4gYW4gYXJiaXRyYXJ5IG9yZGVyLCBidXQgbm90IHJhbmRvbWx5IGdlbmVyYXRlZCBpbgorICAg
ICAgLy8gcnVudGltZSB0byBhdm9pZCBtb3ZpbmcgcGllY2VzLiBIb3dldmVyLCBpdCBpcyBzYWZl
IHRvIGFycmFuZ2UgdGhlbQorICAgICAgLy8gaW4gYSByYW5kb20gb3JkZXIgaW4gcnVudGltZS4K
KyAgICAgIC8vCisgICAgICAvLyBBbHNvIHRoZXNlIG51bWJlcnMgYXJlIG11bHRpcGxlIG9mIDAu
MjUsIHNvIHRoZXkgYXJlIHN1cHBvc2VkIHRvIGZhbGwKKyAgICAgIC8vIGluIHRoZSByZW5kZXIg
cXVhbnR1bSBib3VuZGFyeSBmb3IgZWFzaWVyIGFuZCBtb3JlIGludHVpdGl2ZQorICAgICAgLy8g
dmVyaWZpY2F0aW9uLgorICAgICAgbGV0IHN1c3BlbmRUaW1lcyA9IFswLjI1LCAwLjc1LCAxLjAs
IDAuNSwgMS4yNSwgMC4wLCAxLjc1XTsKKworICAgICAgLy8gU29ydGVkIGFzY2VuZGluZyBzdXNw
ZW5kIHRpbWUgaXMgb3VyIGV4cGVjdGVkIHJlc3VsdC4KKyAgICAgIGxldCBleHBlY3RlZFN1c3Bl
bmRUaW1lcyA9IHN1c3BlbmRUaW1lcy5zbGljZSgwKS5zb3J0KGZ1bmN0aW9uKGEsIGIpIHsKKyAg
ICAgICAgcmV0dXJuIGEgLSBiOworICAgICAgfSk7CisKKyAgICAgIGxldCBhY3R1YWxTdXNwZW5k
VGltZXMgPSBbXTsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAg
ICAgIGxhYmVsOiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ3Jlc3VtZSgpIGFu
ZCBzdXNwZW5kKCkgd2l0aCB0aW1lZCBzZXF1ZW5jZScKKyAgICAgICAgICB9LAorICAgICAgICAg
ICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1
ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRp
b24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN1c3Bl
bmRUaW1lcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAvLyBTY2hlZHVsZSBzdXNwZW5k
cyBpbiBhIHJhbmRvbSB0aW1lIG9yZGVyLCBidXQgdGhlIGFjdHVhbAorICAgICAgICAgICAgICAv
LyBzdXNwZW5kIG11c3QgaGFwcGVuIGluIGFzY2VuZGluZyB0aW1lIG9yZGVyLgorICAgICAgICAg
ICAgICBzY2hlZHVsZVN1c3BlbmQoaSwgc3VzcGVuZFRpbWVzW2ldLCBzaG91bGQpOworICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkKKyAgICAgICAg
ICAgICAgICAudGhlbihidWZmZXIgPT4gdmVyaWZ5UmVzdWx0KHNob3VsZCkpCisgICAgICAgICAg
ICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworCisgICAgICAgICAgfSk7CisKKyAgICAg
IGF1ZGl0LnJ1bigpOworCisgICAgICBmdW5jdGlvbiBzY2hlZHVsZVN1c3BlbmQoaW5kZXgsIHN1
c3BlbmRUaW1lLCBzaG91bGQpIHsKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgKCkgPT4g
Y29udGV4dC5zdXNwZW5kKHN1c3BlbmRUaW1lKS50aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAg
YWN0dWFsU3VzcGVuZFRpbWVzLnB1c2goc3VzcGVuZFRpbWUpOworICAgICAgICAgICAgICBjb250
ZXh0LnJlc3VtZSgpOworICAgICAgICAgICAgfSksCisgICAgICAgICAgICAnU2NoZWR1bGluZyBz
dXNwZW5kICMnICsgaW5kZXggKyAnIGF0ICcgKyBzdXNwZW5kVGltZSArCisgICAgICAgICAgICAg
ICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICB9CisKKyAg
ICAgIGZ1bmN0aW9uIHZlcmlmeVJlc3VsdChzaG91bGQpIHsKKyAgICAgICAgZm9yIChsZXQgaSA9
IDA7IGkgPCBhY3R1YWxTdXNwZW5kVGltZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICBsZXQg
c2NoZWR1bGVkT3JkZXIgPSBzdXNwZW5kVGltZXMuaW5kZXhPZihhY3R1YWxTdXNwZW5kVGltZXNb
aV0pOworICAgICAgICAgIGxldCBleHBlY3RlZE9yZGVyID0KKyAgICAgICAgICAgICAgZXhwZWN0
ZWRTdXNwZW5kVGltZXMuaW5kZXhPZihhY3R1YWxTdXNwZW5kVGltZXNbaV0pOworCisgICAgICAg
ICAgc2hvdWxkKAorICAgICAgICAgICAgICBpLAorICAgICAgICAgICAgICAnVGhlIHJlc29sdXRp
b24gb3JkZXIgb2Ygc3VzcGVuZCAjJyArIHNjaGVkdWxlZE9yZGVyICsgJyBpcyAnICsKKyAgICAg
ICAgICAgICAgICAgIGkgKyAnIGF0ICcgKyBzdXNwZW5kVGltZXNbc2NoZWR1bGVkT3JkZXJdLnRv
Rml4ZWQoMikgKworICAgICAgICAgICAgICAgICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAg
ICAuYmVFcXVhbFRvKGV4cGVjdGVkT3JkZXIpOworICAgICAgICB9CisgICAgICB9CisgICAgPC9z
Y3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL3Jlc291cmNlcy9hdWRpdC11dGlsLmpzIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3Vy
Y2VzL2F1ZGl0LXV0aWwuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDIxM2ZkYTUwOWJmYjczMDQ0ZjFjNzdlMTkx
OWY1OGM5NTIwYTU0ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jl
c291cmNlcy9hdWRpdC11dGlsLmpzCkBAIC0wLDAgKzEsMTk1IEBACisvLyBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0
aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBj
YW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKworLyoqCisgKiBAZmlsZU92
ZXJ2aWV3ICBUaGlzIGZpbGUgaW5jbHVkZXMgbGVnYWN5IHV0aWxpdHkgZnVuY3Rpb25zIGZvciB0
aGUgbGF5b3V0CisgKiAgICAgICAgICAgICAgICB0ZXN0LgorICovCisKKy8vIEhvdyBtYW55IGZy
YW1lcyBpbiBhIFdlYkF1ZGlvIHJlbmRlciBxdWFudHVtLgorbGV0IFJFTkRFUl9RVUFOVFVNX0ZS
QU1FUyA9IDEyODsKKworLy8gQ29tcGFyZSB0d28gYXJyYXlzIChjb21tb25seSBleHRyYWN0ZWQg
ZnJvbSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEoKSkgd2l0aAorLy8gY29uc3RyYWludHM6CisvLyAg
IG9wdGlvbnMudGhyZXNob2xkU05SOiBNaW5pbXVtIGFsbG93ZWQgU05SIGJldHdlZW4gdGhlIGFj
dHVhbCBhbmQgZXhwZWN0ZWQKKy8vICAgICBzaWduYWwuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDEw
MDAwLgorLy8gICBvcHRpb25zLnRocmVzaG9sZERpZmZVTFA6IE1heGltdW0gYWxsb3dlZCBkaWZm
ZXJlbmNlIGJldHdlZW4gdGhlIGFjdHVhbAorLy8gICAgIGFuZCBleHBlY3RlZCBzaWduYWwgaW4g
VUxQKFVuaXQgaW4gdGhlIGxhc3QgcGxhY2UpLiBUaGUgZGVmYXVsdCBpcyAwLgorLy8gICBvcHRp
b25zLnRocmVzaG9sZERpZmZDb3VudDogTWF4aW11bSBhbGxvd2VkIG51bWJlciBvZiBzYW1wbGUg
ZGlmZmVyZW5jZXMKKy8vICAgICB3aGljaCBleGNlZWRzIHRoZSB0aHJlc2hvbGQuIFRoZSBkZWZh
dWx0IGlzIDAuCisvLyAgIG9wdGlvbnMuYml0RGVwdGg6IFRoZSBleHBlY3RlZCByZXN1bHQgaXMg
YXNzdW1lZCB0byBjb21lIGZyb20gYW4gYXVkaW8KKy8vICAgICBmaWxlIHdpdGggdGhpcyBudW1i
ZXIgb2YgYml0cyBvZiBwcmVjaXNpb24uIFRoZSBkZWZhdWx0IGlzIDE2LgorZnVuY3Rpb24gY29t
cGFyZUJ1ZmZlcnNXaXRoQ29uc3RyYWludHMoc2hvdWxkLCBhY3R1YWwsIGV4cGVjdGVkLCBvcHRp
b25zKSB7CisgIGlmICghb3B0aW9ucykKKyAgICBvcHRpb25zID0ge307CisKKyAgLy8gT25seSBw
cmludCBvdXQgdGhlIG1lc3NhZ2UgaWYgdGhlIGxlbmd0aHMgYXJlIGRpZmZlcmVudDsgdGhlCisg
IC8vIGV4cGVjdGF0aW9uIGlzIHRoYXQgdGhleSBhcmUgdGhlIHNhbWUsIHNvIGRvbid0IGNsdXR0
ZXIgdXAgdGhlCisgIC8vIG91dHB1dC4KKyAgaWYgKGFjdHVhbC5sZW5ndGggIT09IGV4cGVjdGVk
Lmxlbmd0aCkgeworICAgIHNob3VsZCgKKyAgICAgICAgYWN0dWFsLmxlbmd0aCA9PT0gZXhwZWN0
ZWQubGVuZ3RoLAorICAgICAgICAnTGVuZ3RoIG9mIGFjdHVhbCBhbmQgZXhwZWN0ZWQgYnVmZmVy
cyBzaG91bGQgbWF0Y2gnKQorICAgICAgICAuYmVUcnVlKCk7CisgIH0KKworICBsZXQgbWF4RXJy
b3IgPSAtMTsKKyAgbGV0IGRpZmZDb3VudCA9IDA7CisgIGxldCBlcnJvclBvc2l0aW9uID0gLTE7
CisgIGxldCB0aHJlc2hvbGRTTlIgPSAob3B0aW9ucy50aHJlc2hvbGRTTlIgfHwgMTAwMDApOwor
CisgIGxldCB0aHJlc2hvbGREaWZmVUxQID0gKG9wdGlvbnMudGhyZXNob2xkRGlmZlVMUCB8fCAw
KTsKKyAgbGV0IHRocmVzaG9sZERpZmZDb3VudCA9IChvcHRpb25zLnRocmVzaG9sZERpZmZDb3Vu
dCB8fCAwKTsKKworICAvLyBCeSBkZWZhdWx0LCB0aGUgYml0IGRlcHRoIGlzIDE2LgorICBsZXQg
Yml0RGVwdGggPSAob3B0aW9ucy5iaXREZXB0aCB8fCAxNik7CisgIGxldCBzY2FsZUZhY3RvciA9
IE1hdGgucG93KDIsIGJpdERlcHRoIC0gMSk7CisKKyAgbGV0IG5vaXNlUG93ZXIgPSAwLCBzaWdu
YWxQb3dlciA9IDA7CisKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY3R1YWwubGVuZ3RoOyBpKysp
IHsKKyAgICBsZXQgZGlmZiA9IGFjdHVhbFtpXSAtIGV4cGVjdGVkW2ldOworICAgIG5vaXNlUG93
ZXIgKz0gZGlmZiAqIGRpZmY7CisgICAgc2lnbmFsUG93ZXIgKz0gZXhwZWN0ZWRbaV0gKiBleHBl
Y3RlZFtpXTsKKworICAgIGlmIChNYXRoLmFicyhkaWZmKSA+IG1heEVycm9yKSB7CisgICAgICBt
YXhFcnJvciA9IE1hdGguYWJzKGRpZmYpOworICAgICAgZXJyb3JQb3NpdGlvbiA9IGk7CisgICAg
fQorCisgICAgLy8gVGhlIHJlZmVyZW5jZSBmaWxlIGlzIGEgMTYtYml0IFdBViBmaWxlLCBzbyB3
ZSB3aWxsIGFsbW9zdCBuZXZlciBnZXQKKyAgICAvLyBhbiBleGFjdCBtYXRjaCBiZXR3ZWVuIGl0
IGFuZCB0aGUgYWN0dWFsIGZsb2F0aW5nLXBvaW50IHJlc3VsdC4KKyAgICBpZiAoTWF0aC5hYnMo
ZGlmZikgPiBzY2FsZUZhY3RvcikKKyAgICAgIGRpZmZDb3VudCsrOworICB9CisKKyAgbGV0IHNu
ciA9IDEwICogTWF0aC5sb2cxMChzaWduYWxQb3dlciAvIG5vaXNlUG93ZXIpOworICBsZXQgbWF4
RXJyb3JVTFAgPSBtYXhFcnJvciAqIHNjYWxlRmFjdG9yOworCisgIHNob3VsZChzbnIsICdTTlIn
KS5iZUdyZWF0ZXJUaGFuT3JFcXVhbFRvKHRocmVzaG9sZFNOUik7CisKKyAgc2hvdWxkKAorICAg
ICAgbWF4RXJyb3JVTFAsCisgICAgICBvcHRpb25zLnByZWZpeCArICc6IE1heGltdW0gZGlmZmVy
ZW5jZSAoaW4gdWxwIHVuaXRzICgnICsgYml0RGVwdGggKworICAgICAgICAgICctYml0cykpJykK
KyAgICAgIC5iZUxlc3NUaGFuT3JFcXVhbFRvKHRocmVzaG9sZERpZmZVTFApOworCisgIHNob3Vs
ZChkaWZmQ291bnQsIG9wdGlvbnMucHJlZml4ICsgJzogTnVtYmVyIG9mIGRpZmZlcmVuY2VzIGJl
dHdlZW4gcmVzdWx0cycpCisgICAgICAuYmVMZXNzVGhhbk9yRXF1YWxUbyh0aHJlc2hvbGREaWZm
Q291bnQpOworfQorCisvLyBDcmVhdGUgYW4gaW1wdWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5ndGgg
c2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0aW9uIGNyZWF0ZUltcHVsc2VCdWZmZXIoY29udGV4dCwg
c2FtcGxlRnJhbWVMZW5ndGgpIHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQu
Y3JlYXRlQnVmZmVyKDEsIHNhbXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0LnNhbXBsZVJhdGUpOwor
ICBsZXQgbiA9IGF1ZGlvQnVmZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFMID0gYXVkaW9CdWZmZXIu
Z2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgZm9yIChsZXQgayA9IDA7IGsgPCBuOyArK2spIHsKKyAg
ICBkYXRhTFtrXSA9IDA7CisgIH0KKyAgZGF0YUxbMF0gPSAxOworCisgIHJldHVybiBhdWRpb0J1
ZmZlcjsKK30KKworLy8gQ3JlYXRlIGEgYnVmZmVyIG9mIHRoZSBnaXZlbiBsZW5ndGggd2l0aCBh
IGxpbmVhciByYW1wIGhhdmluZyB2YWx1ZXMgMCA8PSB4IDwKKy8vIDEuCitmdW5jdGlvbiBjcmVh
dGVMaW5lYXJSYW1wQnVmZmVyKGNvbnRleHQsIHNhbXBsZUZyYW1lTGVuZ3RoKSB7CisgIGxldCBh
dWRpb0J1ZmZlciA9CisgICAgICBjb250ZXh0LmNyZWF0ZUJ1ZmZlcigxLCBzYW1wbGVGcmFtZUxl
bmd0aCwgY29udGV4dC5zYW1wbGVSYXRlKTsKKyAgbGV0IG4gPSBhdWRpb0J1ZmZlci5sZW5ndGg7
CisgIGxldCBkYXRhTCA9IGF1ZGlvQnVmZmVyLmdldENoYW5uZWxEYXRhKDApOworCisgIGZvciAo
bGV0IGkgPSAwOyBpIDwgbjsgKytpKQorICAgIGRhdGFMW2ldID0gaSAvIG47CisKKyAgcmV0dXJu
IGF1ZGlvQnVmZmVyOworfQorCisvLyBDcmVhdGUgYW4gQXVkaW9CdWZmZXIgb2YgbGVuZ3RoIHxz
YW1wbGVGcmFtZUxlbmd0aHwgaGF2aW5nIGEgY29uc3RhbnQgdmFsdWUKKy8vIHxjb25zdGFudFZh
bHVlfC4gSWYgfGNvbnN0YW50VmFsdWV8IGlzIGEgbnVtYmVyLCB0aGUgYnVmZmVyIGhhcyBvbmUg
Y2hhbm5lbAorLy8gZmlsbGVkIHdpdGggdGhhdCB2YWx1ZS4gSWYgfGNvbnN0YW50VmFsdWV8IGlz
IGFuIGFycmF5LCB0aGUgYnVmZmVyIGlzIGNyZWF0ZWQKKy8vIHdpdCBhIG51bWJlciBvZiBjaGFu
bmVscyBlcXVhbCB0byB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSwgYW5kIGNoYW5uZWwgayBpcwor
Ly8gZmlsbGVkIHdpdGggdGhlIGsndGggZWxlbWVudCBvZiB0aGUgfGNvbnN0YW50VmFsdWV8IGFy
cmF5LgorZnVuY3Rpb24gY3JlYXRlQ29uc3RhbnRCdWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVM
ZW5ndGgsIGNvbnN0YW50VmFsdWUpIHsKKyAgbGV0IGNoYW5uZWxzOworICBsZXQgdmFsdWVzOwor
CisgIGlmICh0eXBlb2YgY29uc3RhbnRWYWx1ZSA9PT0gJ251bWJlcicpIHsKKyAgICBjaGFubmVs
cyA9IDE7CisgICAgdmFsdWVzID0gW2NvbnN0YW50VmFsdWVdOworICB9IGVsc2UgeworICAgIGNo
YW5uZWxzID0gY29uc3RhbnRWYWx1ZS5sZW5ndGg7CisgICAgdmFsdWVzID0gY29uc3RhbnRWYWx1
ZTsKKyAgfQorCisgIGxldCBhdWRpb0J1ZmZlciA9CisgICAgICBjb250ZXh0LmNyZWF0ZUJ1ZmZl
cihjaGFubmVscywgc2FtcGxlRnJhbWVMZW5ndGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7CisgIGxl
dCBuID0gYXVkaW9CdWZmZXIubGVuZ3RoOworCisgIGZvciAobGV0IGMgPSAwOyBjIDwgY2hhbm5l
bHM7ICsrYykgeworICAgIGxldCBkYXRhID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoYyk7
CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyArK2kpCisgICAgICBkYXRhW2ldID0gdmFsdWVz
W2NdOworICB9CisKKyAgcmV0dXJuIGF1ZGlvQnVmZmVyOworfQorCisvLyBDcmVhdGUgYSBzdGVy
ZW8gaW1wdWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5ndGggc2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0
aW9uIGNyZWF0ZVN0ZXJlb0ltcHVsc2VCdWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgp
IHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQuY3JlYXRlQnVmZmVyKDIsIHNh
bXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0LnNhbXBsZVJhdGUpOworICBsZXQgbiA9IGF1ZGlvQnVm
ZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFMID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7
CisgIGxldCBkYXRhUiA9IGF1ZGlvQnVmZmVyLmdldENoYW5uZWxEYXRhKDEpOworCisgIGZvciAo
bGV0IGsgPSAwOyBrIDwgbjsgKytrKSB7CisgICAgZGF0YUxba10gPSAwOworICAgIGRhdGFSW2td
ID0gMDsKKyAgfQorICBkYXRhTFswXSA9IDE7CisgIGRhdGFSWzBdID0gMTsKKworICByZXR1cm4g
YXVkaW9CdWZmZXI7Cit9CisKKy8vIENvbnZlcnQgdGltZSAoaW4gc2Vjb25kcykgdG8gc2FtcGxl
IGZyYW1lcy4KK2Z1bmN0aW9uIHRpbWVUb1NhbXBsZUZyYW1lKHRpbWUsIHNhbXBsZVJhdGUpIHsK
KyAgcmV0dXJuIE1hdGguZmxvb3IoMC41ICsgdGltZSAqIHNhbXBsZVJhdGUpOworfQorCisvLyBD
b21wdXRlIHRoZSBudW1iZXIgb2Ygc2FtcGxlIGZyYW1lcyBjb25zdW1lZCBieSBub3RlR3JhaW5P
biB3aXRoCisvLyB0aGUgc3BlY2lmaWVkIHxncmFpbk9mZnNldHwsIHxkdXJhdGlvbnwsIGFuZCB8
c2FtcGxlUmF0ZXwuCitmdW5jdGlvbiBncmFpbkxlbmd0aEluU2FtcGxlRnJhbWVzKGdyYWluT2Zm
c2V0LCBkdXJhdGlvbiwgc2FtcGxlUmF0ZSkgeworICBsZXQgc3RhcnRGcmFtZSA9IHRpbWVUb1Nh
bXBsZUZyYW1lKGdyYWluT2Zmc2V0LCBzYW1wbGVSYXRlKTsKKyAgbGV0IGVuZEZyYW1lID0gdGlt
ZVRvU2FtcGxlRnJhbWUoZ3JhaW5PZmZzZXQgKyBkdXJhdGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAg
cmV0dXJuIGVuZEZyYW1lIC0gc3RhcnRGcmFtZTsKK30KKworLy8gVHJ1ZSBpZiB0aGUgbnVtYmVy
IGlzIG5vdCBhbiBpbmZpbml0eSBvciBOYU4KK2Z1bmN0aW9uIGlzVmFsaWROdW1iZXIoeCkgewor
ICByZXR1cm4gIWlzTmFOKHgpICYmICh4ICE9IEluZmluaXR5KSAmJiAoeCAhPSAtSW5maW5pdHkp
OworfQorCisvLyBDb21wdXRlIHRoZSAobGluZWFyKSBzaWduYWwtdG8tbm9pc2UgcmF0aW8gYmV0
d2VlbiB8YWN0dWFsfCBhbmQKKy8vIHxleHBlY3RlZHwuICBUaGUgcmVzdWx0IGlzIE5PVCBpbiBk
QiEgIElmIHRoZSB8YWN0dWFsfCBhbmQKKy8vIHxleHBlY3RlZHwgaGF2ZSBkaWZmZXJlbnQgbGVu
Z3RocywgdGhlIHNob3J0ZXIgbGVuZ3RoIGlzIHVzZWQuCitmdW5jdGlvbiBjb21wdXRlU05SKGFj
dHVhbCwgZXhwZWN0ZWQpIHsKKyAgbGV0IHNpZ25hbFBvd2VyID0gMDsKKyAgbGV0IG5vaXNlUG93
ZXIgPSAwOworCisgIGxldCBsZW5ndGggPSBNYXRoLm1pbihhY3R1YWwubGVuZ3RoLCBleHBlY3Rl
ZC5sZW5ndGgpOworCisgIGZvciAobGV0IGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICBs
ZXQgZGlmZiA9IGFjdHVhbFtrXSAtIGV4cGVjdGVkW2tdOworICAgIHNpZ25hbFBvd2VyICs9IGV4
cGVjdGVkW2tdICogZXhwZWN0ZWRba107CisgICAgbm9pc2VQb3dlciArPSBkaWZmICogZGlmZjsK
KyAgfQorCisgIHJldHVybiBzaWduYWxQb3dlciAvIG5vaXNlUG93ZXI7Cit9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanMgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk2YjlkNWJhZGI1YzIzOWVl
YzVlNzQ2NDZiNGJmMjJhYTU4MzVmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dl
YmF1ZGlvL3Jlc291cmNlcy9hdWRpdC5qcwpAQCAtMCwwICsxLDE0NDIgQEAKKy8vIENvcHlyaWdo
dCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0
aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gU2VlIGh0dHBz
Oi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L2lzc3Vlcy8xMjc4MSBmb3IgaW5m
b3JtYXRpb24gb24KKy8vIHRoZSBwdXJwb3NlIG9mIGF1ZGl0LmpzLCBhbmQgd2h5IHRlc3RoYXJu
ZXNzLmpzIGRvZXMgbm90IHN1ZmZpY2UuCisKKy8qKgorICogQGZpbGVPdmVydmlldyAgV2ViQXVk
aW8gbGF5b3V0IHRlc3QgdXRpbGl0eSBsaWJyYXJ5LiBCdWlsdCBhcm91bmQgVzNDJ3MKKyAqICAg
ICAgICAgICAgICAgIHRlc3RoYXJuZXNzLmpzLiBJbmNsdWRlcyBhc3luY2hyb25vdXMgdGVzdCB0
YXNrIG1hbmFnZXIsCisgKiAgICAgICAgICAgICAgICBhc3NlcnRpb24gdXRpbGl0aWVzLgorICog
QGRlcGVuZGVuY3kgICAgdGVzdGhhcm5lc3MuanMKKyAqLworCisKKyhmdW5jdGlvbigpIHsKKwor
ICAndXNlIHN0cmljdCc7CisKKyAgLy8gU2VsZWN0ZWQgbWV0aG9kcyBmcm9tIHRlc3RoYXJuZXNz
LmpzLgorICBsZXQgdGVzdGhhcm5lc3NQcm9wZXJ0aWVzID0gWworICAgICd0ZXN0JywgJ2FzeW5j
X3Rlc3QnLCAncHJvbWlzZV90ZXN0JywgJ3Byb21pc2VfcmVqZWN0c19qcycsICdnZW5lcmF0ZV90
ZXN0cycsCisgICAgJ3NldHVwJywgJ2RvbmUnLCAnYXNzZXJ0X3RydWUnLCAnYXNzZXJ0X2ZhbHNl
JworICBdOworCisgIC8vIENoZWNrIGlmIHRlc3RoYXJuZXNzLmpzIGlzIHByb3Blcmx5IGxvYWRl
ZC4gVGhyb3cgb3RoZXJ3aXNlLgorICBmb3IgKGxldCBuYW1lIGluIHRlc3RoYXJuZXNzUHJvcGVy
dGllcykgeworICAgIGlmICghc2VsZi5oYXNPd25Qcm9wZXJ0eSh0ZXN0aGFybmVzc1Byb3BlcnRp
ZXNbbmFtZV0pKQorICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcHJvY2VlZC4gdGVzdGhh
cm5lc3MuanMgaXMgbm90IGxvYWRlZC4nKTsKKyAgfQorfSkoKTsKKworCit3aW5kb3cuQXVkaXQg
PSAoZnVuY3Rpb24oKSB7CisKKyAgJ3VzZSBzdHJpY3QnOworCisgIC8vIE5PVEU6IE1vdmluZyB0
aGlzIG1ldGhvZCAob3IgYW55IG90aGVyIGNvZGUgYWJvdmUpIHdpbGwgY2hhbmdlIHRoZSBsb2Nh
dGlvbgorICAvLyBvZiAnQ09OU09MRSBFUlJPUi4uLicgbWVzc2FnZSBpbiB0aGUgZXhwZWN0ZWQg
dGV4dCBmaWxlcy4KKyAgZnVuY3Rpb24gX2xvZ0Vycm9yKG1lc3NhZ2UpIHsKKyAgICBjb25zb2xl
LmVycm9yKCdbYXVkaXQuanNdICcgKyBtZXNzYWdlKTsKKyAgfQorCisgIGZ1bmN0aW9uIF9sb2dQ
YXNzZWQobWVzc2FnZSkgeworICAgIHRlc3QoZnVuY3Rpb24oYXJnKSB7CisgICAgICBhc3NlcnRf
dHJ1ZSh0cnVlKTsKKyAgICB9LCBtZXNzYWdlKTsKKyAgfQorCisgIGZ1bmN0aW9uIF9sb2dGYWls
ZWQobWVzc2FnZSwgZGV0YWlsKSB7CisgICAgdGVzdChmdW5jdGlvbigpIHsKKyAgICAgIGFzc2Vy
dF90cnVlKGZhbHNlLCBkZXRhaWwpOworICAgIH0sIG1lc3NhZ2UpOworICB9CisKKyAgZnVuY3Rp
b24gX3Rocm93RXhjZXB0aW9uKG1lc3NhZ2UpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2Fn
ZSk7CisgIH0KKworICAvLyBUT0RPKGhvbmdjaGFuKTogcmVtb3ZlIHRoaXMgaGFjayBhZnRlciBj
b25maXJtaW5nIGFsbCB0aGUgdGVzdHMgYXJlCisgIC8vIGZpbmlzaGVkIGNvcnJlY3RseS4gKGNy
YnVnLmNvbS83MDg4MTcpCisgIGNvbnN0IF90ZXN0aGFybmVzc0RvbmUgPSB3aW5kb3cuZG9uZTsK
KyAgd2luZG93LmRvbmUgPSAoKSA9PiB7CisgICAgX3Rocm93RXhjZXB0aW9uKCdEbyBOT1QgY2Fs
bCBkb25lKCkgbWV0aG9kIGZyb20gdGhlIHRlc3QgY29kZS4nKTsKKyAgfTsKKworICAvLyBHZW5l
cmF0ZSBhIGRlc2NyaXB0aXZlIHN0cmluZyBmcm9tIGEgdGFyZ2V0IHZhbHVlIGluIHZhcmlvdXMg
dHlwZXMuCisgIGZ1bmN0aW9uIF9nZW5lcmF0ZURlc2NyaXB0aW9uKHRhcmdldCwgb3B0aW9ucykg
eworICAgIGxldCB0YXJnZXRTdHJpbmc7CisKKyAgICBzd2l0Y2ggKHR5cGVvZiB0YXJnZXQpIHsK
KyAgICAgIGNhc2UgJ29iamVjdCc6CisgICAgICAgIC8vIEhhbmRsZSBBcnJheXMuCisgICAgICAg
IGlmICh0YXJnZXQgaW5zdGFuY2VvZiBBcnJheSB8fCB0YXJnZXQgaW5zdGFuY2VvZiBGbG9hdDMy
QXJyYXkgfHwKKyAgICAgICAgICAgIHRhcmdldCBpbnN0YW5jZW9mIEZsb2F0NjRBcnJheSB8fCB0
YXJnZXQgaW5zdGFuY2VvZiBVaW50OEFycmF5KSB7CisgICAgICAgICAgbGV0IGFycmF5RWxlbWVu
dHMgPSB0YXJnZXQubGVuZ3RoIDwgb3B0aW9ucy5udW1iZXJPZkFycmF5RWxlbWVudHMgPworICAg
ICAgICAgICAgICBTdHJpbmcodGFyZ2V0KSA6CisgICAgICAgICAgICAgIFN0cmluZyh0YXJnZXQu
c2xpY2UoMCwgb3B0aW9ucy5udW1iZXJPZkFycmF5RWxlbWVudHMpKSArICcuLi4nOworICAgICAg
ICAgIHRhcmdldFN0cmluZyA9ICdbJyArIGFycmF5RWxlbWVudHMgKyAnXSc7CisgICAgICAgIH0g
ZWxzZSBpZiAodGFyZ2V0ID09PSBudWxsKSB7CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0gU3Ry
aW5nKHRhcmdldCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0g
JycgKyBTdHJpbmcodGFyZ2V0KS5zcGxpdCgvW1xzXF1dLylbMV07CisgICAgICAgIH0KKyAgICAg
ICAgYnJlYWs7CisgICAgICBjYXNlICdmdW5jdGlvbic6CisgICAgICAgIGlmIChFcnJvci5pc1By
b3RvdHlwZU9mKHRhcmdldCkpIHsKKyAgICAgICAgICB0YXJnZXRTdHJpbmcgPSAiRWNtYVNjcmlw
dCBlcnJvciAiICsgdGFyZ2V0Lm5hbWU7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFy
Z2V0U3RyaW5nID0gU3RyaW5nKHRhcmdldCk7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7Cisg
ICAgICBkZWZhdWx0OgorICAgICAgICB0YXJnZXRTdHJpbmcgPSBTdHJpbmcodGFyZ2V0KTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIHRhcmdldFN0cmluZzsKKyAgfQorCisg
IC8vIFJldHVybiBhIHN0cmluZyBzdWl0YWJsZSBmb3IgcHJpbnRpbmcgb25lIGZhaWxlZCBlbGVt
ZW50IGluCisgIC8vIHxiZUNsb3NlVG9BcnJheXwuCisgIGZ1bmN0aW9uIF9mb3JtYXRGYWlsdXJl
RW50cnkoaW5kZXgsIGFjdHVhbCwgZXhwZWN0ZWQsIGFic2VyciwgdGhyZXNob2xkKSB7CisgICAg
cmV0dXJuICdcdFsnICsgaW5kZXggKyAnXVx0JyArIGFjdHVhbC50b0V4cG9uZW50aWFsKDE2KSAr
ICdcdCcgKworICAgICAgICBleHBlY3RlZC50b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKyBhYnNl
cnIudG9FeHBvbmVudGlhbCgxNikgKyAnXHQnICsKKyAgICAgICAgKGFic2VyciAvIE1hdGguYWJz
KGV4cGVjdGVkKSkudG9FeHBvbmVudGlhbCgxNikgKyAnXHQnICsKKyAgICAgICAgdGhyZXNob2xk
LnRvRXhwb25lbnRpYWwoMTYpOworICB9CisKKyAgLy8gQ29tcHV0ZSB0aGUgZXJyb3IgdGhyZXNo
b2xkIGNyaXRlcmlvbiBmb3IgfGJlQ2xvc2VUb0FycmF5fAorICBmdW5jdGlvbiBfY2xvc2VUb1Ro
cmVzaG9sZChhYnNlcnIsIHJlbGVyciwgZXhwZWN0ZWQpIHsKKyAgICByZXR1cm4gTWF0aC5tYXgo
YWJzZXJyLCByZWxlcnIgKiBNYXRoLmFicyhleHBlY3RlZCkpOworICB9CisKKyAgLyoqCisgICAq
IEBjbGFzcyBTaG91bGQKKyAgICogQGRlc2NyaXB0aW9uIEFzc2VydGlvbiBzdWJ0YXNrIGZvciB0
aGUgQXVkaXQgdGFzay4KKyAgICogQHBhcmFtIHtUYXNrfSBwYXJlbnRUYXNrICAgICAgICAgICBB
c3NvY2lhdGVkIFRhc2sgb2JqZWN0LgorICAgKiBAcGFyYW0ge0FueX0gYWN0dWFsICAgICAgICAg
ICAgICAgIFRhcmdldCB2YWx1ZSB0byBiZSB0ZXN0ZWQuCisgICAqIEBwYXJhbSB7U3RyaW5nfSBh
Y3R1YWxEZXNjcmlwdGlvbiAgU3RyaW5nIGRlc2NyaXB0aW9uIG9mIHRoZSB0ZXN0IHRhcmdldC4K
KyAgICovCisgIGNsYXNzIFNob3VsZCB7CisgICAgY29uc3RydWN0b3IocGFyZW50VGFzaywgYWN0
dWFsLCBhY3R1YWxEZXNjcmlwdGlvbikgeworICAgICAgdGhpcy5fdGFzayA9IHBhcmVudFRhc2s7
CisKKyAgICAgIHRoaXMuX2FjdHVhbCA9IGFjdHVhbDsKKyAgICAgIHRoaXMuX2FjdHVhbERlc2Ny
aXB0aW9uID0gKGFjdHVhbERlc2NyaXB0aW9uIHx8IG51bGwpOworICAgICAgdGhpcy5fZXhwZWN0
ZWQgPSBudWxsOworICAgICAgdGhpcy5fZXhwZWN0ZWREZXNjcmlwdGlvbiA9IG51bGw7CisKKyAg
ICAgIHRoaXMuX2RldGFpbCA9ICcnOworICAgICAgLy8gSWYgdHJ1ZSBhbmQgdGhlIHRlc3QgZmFp
bGVkLCBwcmludCB0aGUgYWN0dWFsIHZhbHVlIGF0IHRoZQorICAgICAgLy8gZW5kIG9mIHRoZSBt
ZXNzYWdlLgorICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gdHJ1ZTsKKworICAg
ICAgdGhpcy5fcmVzdWx0ID0gbnVsbDsKKworICAgICAgLyoqCisgICAgICAgKiBAcGFyYW0ge051
bWJlcn0gbnVtYmVyT2ZFcnJvcnMgICBOdW1iZXIgb2YgZXJyb3JzIHRvIGJlIHByaW50ZWQuCisg
ICAgICAgKiBAcGFyYW0ge051bWJlcn0gbnVtYmVyT2ZBcnJheUVsZW1lbnRzICBOdW1iZXIgb2Yg
YXJyYXkgZWxlbWVudHMgdG8gYmUKKyAgICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHByaW50ZWQgaW4gdGhlIHRlc3QgbG9nLgorICAgICAgICogQHBhcmFtIHtC
b29sZWFufSB2ZXJib3NlICAgICAgICAgVmVyYm9zZSBvdXRwdXQgZnJvbSB0aGUgYXNzZXJ0aW9u
LgorICAgICAgICovCisgICAgICB0aGlzLl9vcHRpb25zID0geworICAgICAgICBudW1iZXJPZkVy
cm9yczogNCwKKyAgICAgICAgbnVtYmVyT2ZBcnJheUVsZW1lbnRzOiAxNiwKKyAgICAgICAgdmVy
Ym9zZTogZmFsc2UKKyAgICAgIH07CisgICAgfQorCisgICAgX3Byb2Nlc3NBcmd1bWVudHMoYXJn
cykgeworICAgICAgaWYgKGFyZ3MubGVuZ3RoID09PSAwKQorICAgICAgICByZXR1cm47CisKKyAg
ICAgIGlmIChhcmdzLmxlbmd0aCA+IDApCisgICAgICAgIHRoaXMuX2V4cGVjdGVkID0gYXJnc1sw
XTsKKworICAgICAgaWYgKHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJykgeworICAgICAgICAv
LyBjYXNlIDE6IChleHBlY3RlZCwgZGVzY3JpcHRpb24sIG9wdGlvbnMpCisgICAgICAgIHRoaXMu
X2V4cGVjdGVkRGVzY3JpcHRpb24gPSBhcmdzWzFdOworICAgICAgICBPYmplY3QuYXNzaWduKHRo
aXMuX29wdGlvbnMsIGFyZ3NbMl0pOworICAgICAgfSBlbHNlIGlmICh0eXBlb2YgYXJnc1sxXSA9
PT0gJ29iamVjdCcpIHsKKyAgICAgICAgLy8gY2FzZSAyOiAoZXhwZWN0ZWQsIG9wdGlvbnMpCisg
ICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fb3B0aW9ucywgYXJnc1sxXSk7CisgICAgICB9Cisg
ICAgfQorCisgICAgX2J1aWxkUmVzdWx0VGV4dCgpIHsKKyAgICAgIGlmICh0aGlzLl9yZXN1bHQg
PT09IG51bGwpCisgICAgICAgIF90aHJvd0V4Y2VwdGlvbignSWxsZWdhbCBpbnZvY2F0aW9uOiB0
aGUgYXNzZXJ0aW9uIGlzIG5vdCBmaW5pc2hlZC4nKTsKKworICAgICAgbGV0IGFjdHVhbFN0cmlu
ZyA9IF9nZW5lcmF0ZURlc2NyaXB0aW9uKHRoaXMuX2FjdHVhbCwgdGhpcy5fb3B0aW9ucyk7CisK
KyAgICAgIC8vIFVzZSBnZW5lcmF0ZWQgdGV4dCB3aGVuIHRoZSBkZXNjcmlwdGlvbiBpcyBub3Qg
cHJvdmlkZWQuCisgICAgICBpZiAoIXRoaXMuX2FjdHVhbERlc2NyaXB0aW9uKQorICAgICAgICB0
aGlzLl9hY3R1YWxEZXNjcmlwdGlvbiA9IGFjdHVhbFN0cmluZzsKKworICAgICAgaWYgKCF0aGlz
Ll9leHBlY3RlZERlc2NyaXB0aW9uKSB7CisgICAgICAgIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRp
b24gPQorICAgICAgICAgICAgX2dlbmVyYXRlRGVzY3JpcHRpb24odGhpcy5fZXhwZWN0ZWQsIHRo
aXMuX29wdGlvbnMpOworICAgICAgfQorCisgICAgICAvLyBGb3IgdGhlIGFzc2VydGlvbiB3aXRo
IGEgc2luZ2xlIG9wZXJhbmQuCisgICAgICB0aGlzLl9kZXRhaWwgPQorICAgICAgICAgIHRoaXMu
X2RldGFpbC5yZXBsYWNlKC9cJFx7YWN0dWFsXH0vZywgdGhpcy5fYWN0dWFsRGVzY3JpcHRpb24p
OworCisgICAgICAvLyBJZiB0aGVyZSBpcyBhIHNlY29uZCBvcGVyYW5kIChpLmUuIGV4cGVjdGVk
IHZhbHVlKSwgd2UgaGF2ZSB0byBidWlsZAorICAgICAgLy8gdGhlIHN0cmluZyBmb3IgaXQgYXMg
d2VsbC4KKyAgICAgIHRoaXMuX2RldGFpbCA9CisgICAgICAgICAgdGhpcy5fZGV0YWlsLnJlcGxh
Y2UoL1wkXHtleHBlY3RlZFx9L2csIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24pOworCisgICAg
ICAvLyBJZiB0aGVyZSBpcyBhbnkgcHJvcGVydHkgaW4gfF9vcHRpb25zfCwgcmVwbGFjZSB0aGUg
cHJvcGVydHkgbmFtZQorICAgICAgLy8gd2l0aCB0aGUgdmFsdWUuCisgICAgICBmb3IgKGxldCBu
YW1lIGluIHRoaXMuX29wdGlvbnMpIHsKKyAgICAgICAgaWYgKG5hbWUgPT09ICdudW1iZXJPZkVy
cm9ycycgfHwgbmFtZSA9PT0gJ251bWJlck9mQXJyYXlFbGVtZW50cycgfHwKKyAgICAgICAgICAg
IG5hbWUgPT09ICd2ZXJib3NlJykgeworICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisK
KyAgICAgICAgLy8gVGhlIFJlZ0V4cCBrZXkgc3RyaW5nIGNvbnRhaW5zIHNwZWNpYWwgY2hhcmFj
dGVyLiBUYWtlIGNhcmUgb2YgaXQuCisgICAgICAgIGxldCByZSA9ICdcJFx7JyArIG5hbWUgKyAn
XH0nOworICAgICAgICByZSA9IHJlLnJlcGxhY2UoLyhbLiorP149IToke30oKXxcW1xdXC9cXF0p
L2csICdcXCQxJyk7CisgICAgICAgIHRoaXMuX2RldGFpbCA9IHRoaXMuX2RldGFpbC5yZXBsYWNl
KAorICAgICAgICAgICAgbmV3IFJlZ0V4cChyZSwgJ2cnKSwgX2dlbmVyYXRlRGVzY3JpcHRpb24o
dGhpcy5fb3B0aW9uc1tuYW1lXSkpOworICAgICAgfQorCisgICAgICAvLyBJZiB0aGUgdGVzdCBm
YWlsZWQsIGFkZCB0aGUgYWN0dWFsIHZhbHVlIGF0IHRoZSBlbmQuCisgICAgICBpZiAodGhpcy5f
cmVzdWx0ID09PSBmYWxzZSAmJiB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPT09IHRydWUp
IHsKKyAgICAgICAgdGhpcy5fZGV0YWlsICs9ICcgR290ICcgKyBhY3R1YWxTdHJpbmcgKyAnLic7
CisgICAgICB9CisgICAgfQorCisgICAgX2ZpbmFsaXplKCkgeworICAgICAgaWYgKHRoaXMuX3Jl
c3VsdCkgeworICAgICAgICBfbG9nUGFzc2VkKCcgICcgKyB0aGlzLl9kZXRhaWwpOworICAgICAg
fSBlbHNlIHsKKyAgICAgICAgX2xvZ0ZhaWxlZCgnWCAnICsgdGhpcy5fZGV0YWlsKTsKKyAgICAg
IH0KKworICAgICAgLy8gVGhpcyBhc3NlcnRpb24gaXMgZmluaXNoZWQsIHNvIHVwZGF0ZSB0aGUg
cGFyZW50IHRhc2sgYWNjb3JkaW5nbHkuCisgICAgICB0aGlzLl90YXNrLnVwZGF0ZSh0aGlzKTsK
KworICAgICAgLy8gVE9ETyhob25nY2hhbik6IGNvbmZpZ3VyYWJsZSAnZGV0YWlsJyBtZXNzYWdl
LgorICAgIH0KKworICAgIF9hc3NlcnQoY29uZGl0aW9uLCBwYXNzRGV0YWlsLCBmYWlsRGV0YWls
KSB7CisgICAgICB0aGlzLl9yZXN1bHQgPSBCb29sZWFuKGNvbmRpdGlvbik7CisgICAgICB0aGlz
Ll9kZXRhaWwgPSB0aGlzLl9yZXN1bHQgPyBwYXNzRGV0YWlsIDogZmFpbERldGFpbDsKKyAgICAg
IHRoaXMuX2J1aWxkUmVzdWx0VGV4dCgpOworICAgICAgdGhpcy5fZmluYWxpemUoKTsKKworICAg
ICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAg
ICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9CisKKyAgICBnZXQgZGV0YWlsKCkgeworICAg
ICAgcmV0dXJuIHRoaXMuX2RldGFpbDsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBzaG91bGQo
KSBhc3NlcnRpb25zLgorICAgICAqCisgICAgICogQGV4YW1wbGUgQWxsIHRoZSBhc3NlcnRpb25z
IGNhbiBoYXZlIDEsIDIgb3IgMyBhcmd1bWVudHM6CisgICAgICogICBzaG91bGQoKS5kb0Fzc2Vy
dChleHBlY3RlZCk7CisgICAgICogICBzaG91bGQoKS5kb0Fzc2VydChleHBlY3RlZCwgb3B0aW9u
cyk7CisgICAgICogICBzaG91bGQoKS5kb0Fzc2VydChleHBlY3RlZCwgZXhwZWN0ZWREZXNjcmlw
dGlvbiwgb3B0aW9ucyk7CisgICAgICoKKyAgICAgKiBAcGFyYW0ge0FueX0gZXhwZWN0ZWQgICAg
ICAgICAgICAgICAgICBFeHBlY3RlZCB2YWx1ZSBvZiB0aGUgYXNzZXJ0aW9uLgorICAgICAqIEBw
YXJhbSB7U3RyaW5nfSBleHBlY3RlZERlc2NyaXB0aW9uICAgIERlc2NyaXB0aW9uIG9mIGV4cGVj
dGVkIHZhbHVlLgorICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zICAgICAgICAgICAgICAg
IE9wdGlvbnMgZm9yIGFzc2VydGlvbi4KKyAgICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5u
dW1iZXJPZkVycm9ycyBOdW1iZXIgb2YgZXJyb3JzIHRvIGJlIHByaW50ZWQuCisgICAgICogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGFwcGxpY2FibGUpCisgICAg
ICogQHBhcmFtIHtOdW1iZXJ9IG9wdGlvbnMubnVtYmVyT2ZBcnJheUVsZW1lbnRzICBOdW1iZXIg
b2YgYXJyYXkgZWxlbWVudHMKKyAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRvIGJlIHByaW50ZWQuIChpZgorICAgICAqICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYWJsZSkKKyAgICAgKiBAbm90
ZXMgU29tZSBhc3NlcnRpb25zIGNhbiBoYXZlIGFkZGl0aW9uYWwgb3B0aW9ucyBmb3IgdGhlaXIg
c3BlY2lmaWMKKyAgICAgKiAgICAgICAgdGVzdGluZy4KKyAgICAgKi8KKworICAgIC8qKgorICAg
ICAqIENoZWNrIGlmIHxhY3R1YWx8IGV4aXN0cy4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisg
ICAgICogICBzaG91bGQoe30sICdBbiBlbXB0eSBvYmplY3QnKS5leGlzdCgpOworICAgICAqIEBy
ZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQW4gZW1wdHkgb2JqZWN0IGRvZXMgZXhpc3QuIgorICAg
ICAqLworICAgIGV4aXN0KCkgeworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAg
ICB0aGlzLl9hY3R1YWwgIT09IG51bGwgJiYgdGhpcy5fYWN0dWFsICE9PSB1bmRlZmluZWQsCisg
ICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIGV4aXN0LicsICcke2FjdHVhbH0gZG9lcyBub3QgZXhp
c3QuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgb3BlcmF0
aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiB0aHJvd3MgYW4gZXhjZXB0aW9uCisgICAgICogd2l0
aCBhIGV4cGVjdGVkIGVycm9yIHR5cGUgY29ycmVjdGx5LiB8ZXhwZWN0ZWR8IGlzIG9wdGlvbmFs
LiBJZiBpdCBpcyBhbgorICAgICAqIGluc3RhbmNlIG9mIERPTUV4Y2VwdGlvbiwgdGhlbiB0aGUg
ZGVzY3JpcHRpb24gKHNlY29uZCBhcmd1bWVudCkgY2FuIGJlCisgICAgICogcHJvdmlkZWQgdG8g
YmUgbW9yZSBzdHJpY3QgYWJvdXQgdGhlIGV4cGVjdGVkIGV4Y2VwdGlvbiB0eXBlLiB8ZXhwZWN0
ZWR8CisgICAgICogYWxzbyBjYW4gYmUgb3RoZXIgZ2VuZXJpYyBlcnJvciB0eXBlcyBzdWNoIGFz
IFR5cGVFcnJvciwgUmFuZ2VFcnJvciBvcgorICAgICAqIGV0Yy4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQoKCkgPT4geyBsZXQgYSA9IGI7IH0sICdBIGJhZCBjb2Rl
JykudGhyb3coKTsKKyAgICAgKiAgIHNob3VsZCgoKSA9PiB7IG5ldyBTb21lQ29uc3RydWN0b3Io
KTsgfSwgJ0EgYmFkIGNvbnN0cnVjdGlvbicpCisgICAgICogICAgICAgLnRocm93KERPTUV4Y2Vw
dGlvbiwgJ05vdFN1cHBvcnRlZEVycm9yJyk7CisgICAgICogICBzaG91bGQoKCkgPT4geyBsZXQg
YyA9IGQ7IH0sICdBc3NpZ25pbmcgZCB0byBjJykKKyAgICAgKiAgICAgICAudGhyb3coUmVmZXJl
bmNlRXJyb3IpOworICAgICAqICAgc2hvdWxkKCgpID0+IHsgbGV0IGUgPSBmOyB9LCAnQXNzaWdu
aW5nIGUgdG8gZicpCisgICAgICogICAgICAgLnRocm93KFJlZmVyZW5jZUVycm9yLCB7IG9taXRF
cnJvck1lc3NhZ2U6IHRydWUgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAi
UEFTUyAgIEEgYmFkIGNvZGUgdGhyZXcgYW4gZXhjZXB0aW9uIG9mIFJlZmVyZW5jZUVycm9yOiBi
IGlzIG5vdAorICAgICAqICAgICAgIGRlZmluZWQuIgorICAgICAqICAgIlBBU1MgICBBIGJhZCBj
b25zdHJ1Y3Rpb24gdGhyZXcgRE9NRXhjZXB0aW9uOk5vdFN1cHBvcnRlZEVycm9yLiIKKyAgICAg
KiAgICJQQVNTICAgQXNzaWduaW5nIGQgdG8gYyB0aHJldyBSZWZlcmVuY2VFcnJvcjogZCBpcyBu
b3QgZGVmaW5lZC4iCisgICAgICogICAiUEFTUyAgIEFzc2lnbmluZyBlIHRvIGYgdGhyZXcgUmVm
ZXJlbmNlRXJyb3I6IFtlcnJvciBtZXNzYWdlCisgICAgICogICAgICAgb21pdHRlZF0uIgorICAg
ICAqLworICAgIHRocm93KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVu
dHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAg
IGxldCBkaWRUaHJvd0NvcnJlY3RseSA9IGZhbHNlOworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZh
aWxEZXRhaWw7CisKKyAgICAgIHRyeSB7CisgICAgICAgIC8vIFRoaXMgc2hvdWxkIHRocm93Lgor
ICAgICAgICB0aGlzLl9hY3R1YWwoKTsKKyAgICAgICAgLy8gQ2F0Y2ggZGlkIG5vdCBoYXBwZW4s
IHNvIHRoZSB0ZXN0IGlzIGZhaWxlZC4KKyAgICAgICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0g
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uJzsKKyAgICAgIH0gY2F0Y2ggKGVycm9yKSB7Cisg
ICAgICAgIGxldCBlcnJvck1lc3NhZ2UgPSB0aGlzLl9vcHRpb25zLm9taXRFcnJvck1lc3NhZ2Ug
PworICAgICAgICAgICAgJzogW2Vycm9yIG1lc3NhZ2Ugb21pdHRlZF0nIDoKKyAgICAgICAgICAg
ICc6ICInICsgZXJyb3IubWVzc2FnZSArICciJzsKKyAgICAgICAgaWYgKHRoaXMuX2V4cGVjdGVk
ID09PSBudWxsIHx8IHRoaXMuX2V4cGVjdGVkID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAv
LyBUaGUgZXhwZWN0ZWQgZXJyb3IgdHlwZSB3YXMgbm90IGdpdmVuLgorICAgICAgICAgIGRpZFRo
cm93Q29ycmVjdGx5ID0gdHJ1ZTsKKyAgICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSB0
aHJldyAnICsgZXJyb3IubmFtZSArIGVycm9yTWVzc2FnZSArICcuJzsKKyAgICAgICAgfSBlbHNl
IGlmICh0aGlzLl9leHBlY3RlZCA9PT0gRE9NRXhjZXB0aW9uICYmCisgICAgICAgICAgICAgICAg
ICAgKHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fAorICAgICAgICAg
ICAgICAgICAgICB0aGlzLl9leHBlY3RlZERlc2NyaXB0aW9uID09PSBlcnJvci5uYW1lKSkgewor
ICAgICAgICAgIC8vIEhhbmRsZXMgRE9NRXhjZXB0aW9uIHdpdGggdGhlIGFzc29jaWF0ZWQgbmFt
ZS4KKyAgICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAgICAgICAgcGFzc0Rl
dGFpbCA9ICcke2FjdHVhbH0gdGhyZXcgJHtleHBlY3RlZH0nICsgZXJyb3JNZXNzYWdlICsgJy4n
OworICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2V4cGVjdGVkID09IGVycm9yLmNvbnN0cnVjdG9y
KSB7CisgICAgICAgICAgLy8gSGFuZGxlciBvdGhlciBlcnJvciB0eXBlcy4KKyAgICAgICAgICBk
aWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAgICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVh
bH0gdGhyZXcgJyArIGVycm9yLm5hbWUgKyBlcnJvck1lc3NhZ2UgKyAnLic7CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgZGlkVGhyb3dDb3JyZWN0bHkgPSBmYWxzZTsKKyAgICAgICAgICBm
YWlsRGV0YWlsID0KKyAgICAgICAgICAgICAgJyR7YWN0dWFsfSB0aHJldyAiJyArIGVycm9yLm5h
bWUgKyAnIiBpbnN0ZWFkIG9mICR7ZXhwZWN0ZWR9Lic7CisgICAgICAgIH0KKyAgICAgIH0KKwor
ICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChkaWRUaHJvd0NvcnJlY3RseSwgcGFzc0RldGFpbCwg
ZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwg
b3BlcmF0aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiBkb2VzIG5vdCB0aHJvd3MgYW4KKyAgICAg
KiBleGNlcHRpb24gY29ycmVjdGx5LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAg
IHNob3VsZCgoKSA9PiB7IGxldCBmb28gPSAnYmFyJzsgfSwgJ2xldCBmb28gPSAiYmFyIicpLm5v
dFRocm93KCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIGxldCBm
b28gPSAiYmFyIiBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4iCisgICAgICovCisgICAgbm90
VGhyb3coKSB7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKwor
ICAgICAgbGV0IGRpZFRocm93Q29ycmVjdGx5ID0gZmFsc2U7CisgICAgICBsZXQgcGFzc0RldGFp
bCwgZmFpbERldGFpbDsKKworICAgICAgdHJ5IHsKKyAgICAgICAgdGhpcy5fYWN0dWFsKCk7Cisg
ICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
Lic7CisgICAgICB9IGNhdGNoIChlcnJvcikgeworICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9
IHRydWU7CisgICAgICAgIGZhaWxEZXRhaWwgPSAnJHthY3R1YWx9IGluY29ycmVjdGx5IHRocmV3
ICcgKyBlcnJvci5uYW1lICsgJzogIicgKworICAgICAgICAgICAgZXJyb3IubWVzc2FnZSArICci
Lic7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoIWRpZFRocm93Q29ycmVj
dGx5LCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBD
aGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJlc29sdmVkIGNvcnJlY3RseS4gTm90ZSB0aGF0
IHRoZSByZXR1cm5lZAorICAgICAqIHJlc3VsdCBmcm9tIHByb21pc2Ugb2JqZWN0IHdpbGwgYmUg
cGFzc2VkIHRvIHRoZSBmb2xsb3dpbmcgdGhlbigpCisgICAgICogZnVuY3Rpb24uCisgICAgICoK
KyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKCdNeSBwcm9taXNlJywgcHJvbWlzZSku
YmVSZXNvbHZlKCkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICogICAgIGxvZyhyZXN1bHQpOwor
ICAgICAqICAgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIE15
IHByb21pc2UgcmVzb2x2ZWQgY29ycmVjdGx5LiIKKyAgICAgKiAgICJGQUlMIFggTXkgcHJvbWlz
ZSByZWplY3RlZCAqSU5DT1JSRUNUTFkqIHdpdGggX0VSUk9SXy4iCisgICAgICovCisgICAgYmVS
ZXNvbHZlZCgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBm
dW5jdGlvbihyZXN1bHQpIHsKKyAgICAgICAgICAgIHRoaXMuX2Fzc2VydCh0cnVlLCAnJHthY3R1
YWx9IHJlc29sdmVkIGNvcnJlY3RseS4nLCBudWxsKTsKKyAgICAgICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgICAgICAgfS5iaW5kKHRoaXMpLAorICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7
CisgICAgICAgICAgICB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgICAgICAgZmFsc2UsIG51bGws
CisgICAgICAgICAgICAgICAgJyR7YWN0dWFsfSByZWplY3RlZCBpbmNvcnJlY3RseSB3aXRoICcg
KyBlcnJvciArICcuJyk7CisgICAgICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJlamVjdGVkIGNvcnJlY3Rs
eS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoJ015IHByb21pc2Un
LCBwcm9taXNlKS5iZVJlamVjdGVkKCkudGhlbihuZXh0U3R1ZmYpOworICAgICAqCisgICAgICog
QHJlc3VsdAorICAgICAqICAgIlBBU1MgICBNeSBwcm9taXNlIHJlamVjdGVkIGNvcnJlY3RseSAo
d2l0aCBfRVJST1JfKS4iCisgICAgICogICAiRkFJTCBYIE15IHByb21pc2UgcmVzb2x2ZWQgKklO
Q09SUkVDVExZKi4iCisgICAgICovCisgICAgYmVSZWplY3RlZCgpIHsKKyAgICAgIHJldHVybiB0
aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHRo
aXMuX2Fzc2VydChmYWxzZSwgbnVsbCwgJyR7YWN0dWFsfSByZXNvbHZlZCBpbmNvcnJlY3RseS4n
KTsKKyAgICAgICAgICB9LmJpbmQodGhpcyksCisgICAgICAgICAgZnVuY3Rpb24oZXJyb3IpIHsK
KyAgICAgICAgICAgIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAgICAgICB0cnVlLCAnJHthY3R1
YWx9IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoICcgKyBlcnJvciArICcuJywgbnVsbCk7CisgICAg
ICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8
YWN0dWFsfCBwcm9taXNlIGlzIHJlamVjdGVkIGNvcnJlY3RseS4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQocHJvbWlzZSwgJ015IHByb21pc2UnKS5iZVJlamVjdGVk
V2l0aCgnX0VSUk9SXycpLnRoZW4oKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAg
ICJQQVNTICAgTXkgcHJvbWlzZSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBfRVJST1JfLiIKKyAg
ICAgKiAgICJGQUlMIFggTXkgcHJvbWlzZSByZWplY3RlZCBjb3JyZWN0bHkgYnV0IGdvdCBfQUNU
VUFMX0VSUk9SIGluc3RlYWQgb2YKKyAgICAgKiAgICAgICAgICAgX0VYUEVDVEVEX0VSUk9SXy4i
CisgICAgICogICAiRkFJTCBYIE15IHByb21pc2UgcmVzb2x2ZWQgaW5jb3JyZWN0bHkuIgorICAg
ICAqLworICAgIGJlUmVqZWN0ZWRXaXRoKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50
cyhhcmd1bWVudHMpOworCisgICAgICByZXR1cm4gdGhpcy5fYWN0dWFsLnRoZW4oCisgICAgICAg
ICAgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICB0aGlzLl9hc3NlcnQoZmFsc2UsIG51bGwsICck
e2FjdHVhbH0gcmVzb2x2ZWQgaW5jb3JyZWN0bHkuJyk7CisgICAgICAgICAgfS5iaW5kKHRoaXMp
LAorICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgICAgICAgICBpZiAodGhpcy5fZXhw
ZWN0ZWQgIT09IGVycm9yLm5hbWUpIHsKKyAgICAgICAgICAgICAgdGhpcy5fYXNzZXJ0KAorICAg
ICAgICAgICAgICAgICAgZmFsc2UsIG51bGwsCisgICAgICAgICAgICAgICAgICAnJHthY3R1YWx9
IHJlamVjdGVkIGNvcnJlY3RseSBidXQgZ290ICcgKyBlcnJvci5uYW1lICsKKyAgICAgICAgICAg
ICAgICAgICAgICAnIGluc3RlYWQgb2YgJyArIHRoaXMuX2V4cGVjdGVkICsgJy4nKTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAg
ICAgICAgIHRydWUsCisgICAgICAgICAgICAgICAgICAnJHthY3R1YWx9IHJlamVjdGVkIGNvcnJl
Y3RseSB3aXRoICcgKyB0aGlzLl9leHBlY3RlZCArICcuJywKKyAgICAgICAgICAgICAgICAgIG51
bGwpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0uYmluZCh0aGlzKSk7CisgICAgfQorCisg
ICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgYSBib29sZWFuIHRydWUuCisgICAg
ICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDMgPCA1LCAnMyA8IDUnKS5iZVRy
dWUoKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMyA8IDUgaXMg
dHJ1ZS4iCisgICAgICovCisgICAgYmVUcnVlKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2Vy
dCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPT09IHRydWUsICcke2FjdHVhbH0gaXMgdHJ1ZS4n
LAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IHRydWUuJyk7CisgICAgfQorCisgICAgLyoq
CisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgYSBib29sZWFuIGZhbHNlLgorICAgICAqCisg
ICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgzID4gNSwgJzMgPiA1JykuYmVGYWxzZSgp
OworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAzID4gNSBpcyBmYWxz
ZS4iCisgICAgICovCisgICAgYmVGYWxzZSgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQo
CisgICAgICAgICAgdGhpcy5fYWN0dWFsID09PSBmYWxzZSwgJyR7YWN0dWFsfSBpcyBmYWxzZS4n
LAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGZhbHNlLicpOworICAgIH0KKworICAgIC8q
KgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlzIHN0cmljdGx5IGVxdWFsIHRvIHxleHBlY3Rl
ZHwuIChubyB0eXBlIGNvZXJjaW9uKQorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAg
IHNob3VsZCgxKS5iZUVxdWFsVG8oMSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICog
ICAiUEFTUyAgIDEgaXMgZXF1YWwgdG8gMS4iCisgICAgICovCisgICAgYmVFcXVhbFRvKCkgewor
ICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRo
aXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPT09IHRoaXMuX2V4cGVjdGVkLCAn
JHthY3R1YWx9IGlzIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFs
fSBpcyBub3QgZXF1YWwgdG8gJHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAg
ICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgbm90IGVxdWFsIHRvIHxleHBlY3RlZHwuCisgICAgICoK
KyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDEpLm5vdEJlRXF1YWxUbygyKTsKKyAg
ICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMSBpcyBub3QgZXF1YWwgdG8g
Mi4iCisgICAgICovCisgICAgbm90QmVFcXVhbFRvKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0Fy
Z3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAg
ICB0aGlzLl9hY3R1YWwgIT09IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0g
aXMgbm90IGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBzaG91
bGQgbm90IGJlIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAg
ICAqIGNoZWNrIGlmIHxhY3R1YWx8IGlzIE5hTgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAg
ICAgKiAgIHNob3VsZChOYU4pLmJlTmFOKCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAg
ICogICAiUEFTUyAgIE5hTiBpcyBOYU4iCisgICAgICoKKyAgICAgKi8KKyAgICBiZU5hTigpIHsK
KyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0
aGlzLl9hc3NlcnQoCisgICAgICAgICAgaXNOYU4odGhpcy5fYWN0dWFsKSwKKyAgICAgICAgICAn
JHthY3R1YWx9IGlzIE5hTi4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IE5hTiBidXQg
c2hvdWxkIGJlLicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIGNoZWNrIGlmIHxhY3R1YWx8
IGlzIE5PVCBOYU4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoNDIp
Lm5vdEJlTmFOKCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDQy
IGlzIG5vdCBOYU4iCisgICAgICoKKyAgICAgKi8KKyAgICBub3RCZU5hTigpIHsKKyAgICAgIHRo
aXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3Nl
cnQoCisgICAgICAgICAgIWlzTmFOKHRoaXMuX2FjdHVhbCksCisgICAgICAgICAgJyR7YWN0dWFs
fSBpcyBub3QgTmFOLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBOYU4gYnV0IHNob3VsZCBu
b3QgYmUuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMg
Z3JlYXRlciB0aGFuIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAq
ICAgc2hvdWxkKDIpLmJlR3JlYXRlclRoYW5PckVxdWFsVG8oMik7CisgICAgICoKKyAgICAgKiBA
cmVzdWx0CisgICAgICogICAiUEFTUyAgIDIgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDIu
IgorICAgICAqLworICAgIGJlR3JlYXRlclRoYW4oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJn
dW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAg
IHRoaXMuX2FjdHVhbCA+IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMg
Z3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3Qg
Z3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB8ZXhwZWN0ZWR8Lgor
ICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgyKS5iZUdyZWF0ZXJUaGFu
KDEpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAyIGlzIGdyZWF0
ZXIgdGhhbiAxLiIKKyAgICAgKi8KKyAgICBiZUdyZWF0ZXJUaGFuT3JFcXVhbFRvKCkgeworICAg
ICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPj0gdGhpcy5fZXhwZWN0ZWQsCisgICAg
ICAgICAgJyR7YWN0dWFsfSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJHtleHBlY3RlZH0u
JywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8g
JHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVh
bHwgaXMgbGVzcyB0aGFuIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAg
ICAqICAgc2hvdWxkKDEpLmJlTGVzc1RoYW4oMik7CisgICAgICoKKyAgICAgKiBAcmVzdWx0Cisg
ICAgICogICAiUEFTUyAgIDEgaXMgbGVzcyB0aGFuIDIuIgorICAgICAqLworICAgIGJlTGVzc1Ro
YW4oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICBy
ZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHRoaXMuX2FjdHVhbCA8IHRoaXMuX2V4cGVj
dGVkLCAnJHthY3R1YWx9IGlzIGxlc3MgdGhhbiAke2V4cGVjdGVkfS4nLAorICAgICAgICAgICck
e2FjdHVhbH0gaXMgbm90IGxlc3MgdGhhbiAke2V4cGVjdGVkfS4nKTsKKyAgICB9CisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gfGV4
cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoMSkuYmVM
ZXNzVGhhbk9yRXF1YWxUbygxKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQ
QVNTICAgMSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMS4iCisgICAgICovCisgICAgYmVMZXNz
VGhhbk9yRXF1YWxUbygpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRz
KTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFsIDw9
IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbGVzcyB0aGFuIG9yIGVx
dWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgbGVzcyB0
aGFuIG9yIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAgICAq
IENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIGZpbGxlZCB3aXRoIGEgY29uc3RhbnQgfGV4cGVj
dGVkfCB2YWx1ZS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoWzEs
IDEsIDFdKS5iZUNvbnN0YW50VmFsdWVPZigxKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAg
ICAgKiAgICJQQVNTICAgWzEsMSwxXSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiIKKyAg
ICAgKi8KKyAgICBiZUNvbnN0YW50VmFsdWVPZigpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1
bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZh
bHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBm
YWlsRGV0YWlsOworICAgICAgbGV0IGVycm9ycyA9IHt9OworCisgICAgICBsZXQgYWN0dWFsID0g
dGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAg
ICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0aDsgKytpbmRleCkgewor
ICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWQpCisgICAgICAgICAgZXJyb3Jz
W2luZGV4XSA9IGFjdHVhbFtpbmRleF07CisgICAgICB9CisKKyAgICAgIGxldCBudW1iZXJPZkVy
cm9ycyA9IE9iamVjdC5rZXlzKGVycm9ycykubGVuZ3RoOworICAgICAgcGFzc2VkID0gbnVtYmVy
T2ZFcnJvcnMgPT09IDA7CisKKyAgICAgIGlmIChwYXNzZWQpIHsKKyAgICAgICAgcGFzc0RldGFp
bCA9ICcke2FjdHVhbH0gY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgJHtleHBlY3RlZH0uJzsK
KyAgICAgIH0gZWxzZSB7CisgICAgICAgIGxldCBjb3VudGVyID0gMDsKKyAgICAgICAgZmFpbERl
dGFpbCA9CisgICAgICAgICAgICAnJHthY3R1YWx9OiBFeHBlY3RlZCAke2V4cGVjdGVkfSBmb3Ig
YWxsIHZhbHVlcyBidXQgZm91bmQgJyArCisgICAgICAgICAgICBudW1iZXJPZkVycm9ycyArICcg
dW5leHBlY3RlZCB2YWx1ZXM6ICc7CisgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1xuXHRJbmRleFx0
QWN0dWFsJzsKKyAgICAgICAgZm9yIChsZXQgZXJyb3JJbmRleCBpbiBlcnJvcnMpIHsKKyAgICAg
ICAgICBmYWlsRGV0YWlsICs9ICdcblx0WycgKyBlcnJvckluZGV4ICsgJ10nICsKKyAgICAgICAg
ICAgICAgJ1x0JyArIGVycm9yc1tlcnJvckluZGV4XTsKKyAgICAgICAgICBpZiAoKytjb3VudGVy
ID49IHRoaXMuX29wdGlvbnMubnVtYmVyT2ZFcnJvcnMpIHsKKyAgICAgICAgICAgIGZhaWxEZXRh
aWwgKz0KKyAgICAgICAgICAgICAgICAnXG5cdC4uLmFuZCAnICsgKG51bWJlck9mRXJyb3JzIC0g
Y291bnRlcikgKyAnIG1vcmUgZXJyb3JzLic7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICB9CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNz
ZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIG5vdCBmaWxsZWQgd2l0aCBhIGNvbnN0YW50IHxleHBl
Y3RlZHwgdmFsdWUuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKFsx
LCAwLCAxXSkubm90QmVDb25zdGFudFZhbHVlT2YoMSk7CisgICAgICogICBzaG91bGQoWzAsIDAs
IDBdKS5ub3RCZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAg
ICAgKiAgICJQQVNTICAgWzEsMCwxXSBpcyBub3QgY29uc3RhbnRseSAxIChjb250YWlucyAxIGRp
ZmZlcmVudCB2YWx1ZSkuIgorICAgICAqICAgIkZBSUwgWCBbMCwwLDBdIHNob3VsZCBoYXZlIGNv
bnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRpZmZlcmVudAorICAgICAqICAgICBmcm9tIDAuIgor
ICAgICAqLworICAgIG5vdEJlQ29uc3RhbnRWYWx1ZU9mKCkgeworICAgICAgdGhpcy5fcHJvY2Vz
c0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJl
ID0gZmFsc2U7CisKKyAgICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRh
aWw7CisgICAgICBsZXQgZmFpbERldGFpbDsKKyAgICAgIGxldCBkaWZmZXJlbmNlcyA9IHt9Owor
CisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0g
dGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFs
Lmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0
ZWQpCisgICAgICAgICAgZGlmZmVyZW5jZXNbaW5kZXhdID0gYWN0dWFsW2luZGV4XTsKKyAgICAg
IH0KKworICAgICAgbGV0IG51bWJlck9mRGlmZmVyZW5jZXMgPSBPYmplY3Qua2V5cyhkaWZmZXJl
bmNlcykubGVuZ3RoOworICAgICAgcGFzc2VkID0gbnVtYmVyT2ZEaWZmZXJlbmNlcyA+IDA7CisK
KyAgICAgIGlmIChwYXNzZWQpIHsKKyAgICAgICAgbGV0IHZhbHVlU3RyaW5nID0gbnVtYmVyT2ZE
aWZmZXJlbmNlcyA+IDEgPyAndmFsdWVzJyA6ICd2YWx1ZSc7CisgICAgICAgIHBhc3NEZXRhaWwg
PSAnJHthY3R1YWx9IGlzIG5vdCBjb25zdGFudGx5ICR7ZXhwZWN0ZWR9IChjb250YWlucyAnICsK
KyAgICAgICAgICAgIG51bWJlck9mRGlmZmVyZW5jZXMgKyAnIGRpZmZlcmVudCAnICsgdmFsdWVT
dHJpbmcgKyAnKS4nOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZmFpbERldGFpbCA9ICcke2Fj
dHVhbH0gc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgJyArCisgICAgICAg
ICAgICAnZGlmZmVyZW50IGZyb20gJHtleHBlY3RlZH0uJzsKKyAgICAgIH0KKworICAgICAgcmV0
dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0K
KworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIGlkZW50aWNhbCB0
byB8ZXhwZWN0ZWR8IGFycmF5IGVsZW1lbnQtd2lzZS4KKyAgICAgKgorICAgICAqIEBleGFtcGxl
CisgICAgICogICBzaG91bGQoWzEsIDIsIDNdKS5iZUVxdWFsVG9BcnJheShbMSwgMiwgM10pOwor
ICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlsxLDIsM10gaXMgaWRlbnRpY2FsIHRv
IHRoZSBhcnJheSBbMSwyLDNdLiIKKyAgICAgKi8KKyAgICBiZUVxdWFsVG9BcnJheSgpIHsKKyAg
ICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50
QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAg
ICAgIGxldCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsOworICAgICAgbGV0IGVycm9ySW5kaWNlcyA9
IFtdOworCisgICAgICBpZiAodGhpcy5fYWN0dWFsLmxlbmd0aCAhPT0gdGhpcy5fZXhwZWN0ZWQu
bGVuZ3RoKSB7CisgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICBmYWlsRGV0YWlsID0g
J1RoZSBhcnJheSBsZW5ndGggZG9lcyBub3QgbWF0Y2guJzsKKyAgICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgICAgfQorCisgICAg
ICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5f
ZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0
aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWRbaW5k
ZXhdKQorICAgICAgICAgIGVycm9ySW5kaWNlcy5wdXNoKGluZGV4KTsKKyAgICAgIH0KKworICAg
ICAgcGFzc2VkID0gZXJyb3JJbmRpY2VzLmxlbmd0aCA9PT0gMDsKKworICAgICAgaWYgKHBhc3Nl
ZCkgeworICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSBpcyBpZGVudGljYWwgdG8gdGhl
IGFycmF5ICR7ZXhwZWN0ZWR9Lic7CisgICAgICB9IGVsc2UgeworICAgICAgICBsZXQgY291bnRl
ciA9IDA7CisgICAgICAgIGZhaWxEZXRhaWwgPQorICAgICAgICAgICAgJyR7YWN0dWFsfSBleHBl
Y3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgJHtleHBlY3RlZH0gJyArCisgICAgICAgICAg
ICAnYnV0IGRpZmZlcnMgaW4gJyArIGVycm9ySW5kaWNlcy5sZW5ndGggKyAnIHBsYWNlczonICsK
KyAgICAgICAgICAgICdcblx0SW5kZXhcdEFjdHVhbFx0XHRcdEV4cGVjdGVkJzsKKyAgICAgICAg
Zm9yIChsZXQgaW5kZXggb2YgZXJyb3JJbmRpY2VzKSB7CisgICAgICAgICAgZmFpbERldGFpbCAr
PSAnXG5cdFsnICsgaW5kZXggKyAnXScgKworICAgICAgICAgICAgICAnXHQnICsgdGhpcy5fYWN0
dWFsW2luZGV4XS50b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKworICAgICAgICAgICAgICB0aGlz
Ll9leHBlY3RlZFtpbmRleF0udG9FeHBvbmVudGlhbCgxNik7CisgICAgICAgICAgaWYgKCsrY291
bnRlciA+PSB0aGlzLl9vcHRpb25zLm51bWJlck9mRXJyb3JzKSB7CisgICAgICAgICAgICBmYWls
RGV0YWlsICs9ICdcblx0Li4uYW5kICcgKyAoZXJyb3JJbmRpY2VzLmxlbmd0aCAtIGNvdW50ZXIp
ICsKKyAgICAgICAgICAgICAgICAnIG1vcmUgZXJyb3JzLic7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fz
c2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgor
ICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGNvbnRhaW5zIG9ubHkgdGhlIHZhbHVlcyBp
biB8ZXhwZWN0ZWR8IGluIHRoZQorICAgICAqIG9yZGVyIG9mIHZhbHVlcyBpbiB8ZXhwZWN0ZWR8
LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIFNob3VsZChbMSwgMSwgMywgMywg
Ml0sICdNeSByYW5kb20gYXJyYXknKS5jb250YWluVmFsdWVzKFsxLCAzLCAyXSk7CisgICAgICoK
KyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFsxLDEsMywzLDJdIGNvbnRhaW5zIGFs
bCB0aGUgZXhwZWN0ZWQgdmFsdWVzIGluIHRoZSBjb3JyZWN0CisgICAgICogICAgICAgICAgIG9y
ZGVyOiBbMSwzLDJdLgorICAgICAqLworICAgIGNvbnRhaW5WYWx1ZXMoKSB7CisgICAgICB0aGlz
Ll9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZv
ckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQg
aW5kZXhlZEFjdHVhbCA9IFtdOworICAgICAgbGV0IGZpcnN0RXJyb3JJbmRleCA9IG51bGw7CisK
KyAgICAgIC8vIENvbGxlY3QgdGhlIHVuaXF1ZSB2YWx1ZSBzZXF1ZW5jZSBmcm9tIHRoZSBhY3R1
YWwuCisgICAgICBmb3IgKGxldCBpID0gMCwgcHJldiA9IG51bGw7IGkgPCB0aGlzLl9hY3R1YWwu
bGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKHRoaXMuX2FjdHVhbFtpXSAhPT0gcHJldikgewor
ICAgICAgICAgIGluZGV4ZWRBY3R1YWwucHVzaCh7aW5kZXg6IGksIHZhbHVlOiB0aGlzLl9hY3R1
YWxbaV19KTsKKyAgICAgICAgICBwcmV2ID0gdGhpcy5fYWN0dWFsW2ldOworICAgICAgICB9Cisg
ICAgICB9CisKKyAgICAgIC8vIENvbXBhcmUgYWdhaW5zdCB0aGUgZXhwZWN0ZWQgc2VxdWVuY2Uu
CisgICAgICBsZXQgZmFpbE1lc3NhZ2UgPQorICAgICAgICAgICcke2FjdHVhbH0gZXhwZWN0ZWQg
dG8gaGF2ZSB0aGUgdmFsdWUgc2VxdWVuY2Ugb2YgJHtleHBlY3RlZH0gYnV0ICcgKworICAgICAg
ICAgICdnb3QgJzsKKyAgICAgIGlmICh0aGlzLl9leHBlY3RlZC5sZW5ndGggPT09IGluZGV4ZWRB
Y3R1YWwubGVuZ3RoKSB7CisgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdGhpcy5fZXhwZWN0
ZWQubGVuZ3RoOyBqKyspIHsKKyAgICAgICAgICBpZiAodGhpcy5fZXhwZWN0ZWRbal0gIT09IGlu
ZGV4ZWRBY3R1YWxbal0udmFsdWUpIHsKKyAgICAgICAgICAgIGZpcnN0RXJyb3JJbmRleCA9IGlu
ZGV4ZWRBY3R1YWxbal0uaW5kZXg7CisgICAgICAgICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAg
ICAgICAgIGZhaWxNZXNzYWdlICs9IHRoaXMuX2FjdHVhbFtmaXJzdEVycm9ySW5kZXhdICsgJyBh
dCBpbmRleCAnICsKKyAgICAgICAgICAgICAgICBmaXJzdEVycm9ySW5kZXggKyAnLic7CisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0gZWxzZSB7Cisg
ICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICBsZXQgaW5kZXhlZFZhbHVlcyA9IGluZGV4
ZWRBY3R1YWwubWFwKHggPT4geC52YWx1ZSk7CisgICAgICAgIGZhaWxNZXNzYWdlICs9IGAke2lu
ZGV4ZWRBY3R1YWwubGVuZ3RofSB2YWx1ZXMsIFskeworICAgICAgICAgICAgaW5kZXhlZFZhbHVl
c31dLCBpbnN0ZWFkIG9mICR7dGhpcy5fZXhwZWN0ZWQubGVuZ3RofS5gOworICAgICAgfQorCisg
ICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHBhc3NlZCwKKyAgICAgICAgICAn
JHthY3R1YWx9IGNvbnRhaW5zIGFsbCB0aGUgZXhwZWN0ZWQgdmFsdWVzIGluIHRoZSBjb3JyZWN0
IG9yZGVyOiAnICsKKyAgICAgICAgICAgICAgJyR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgZmFp
bE1lc3NhZ2UpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFy
cmF5IGRvZXMgbm90IGhhdmUgYW55IGdsaXRjaGVzLiBOb3RlIHRoYXQgfHRocmVzaG9sZHwKKyAg
ICAgKiBpcyBub3Qgb3B0aW9uYWwgYW5kIGlzIHRvIGRlZmluZSB0aGUgZGVzaXJlZCB0aHJlc2hv
bGQgdmFsdWUuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKFswLjUs
IDAuNSwgMC41NSwgMC41LCAwLjQ1LCAwLjVdKS5ub3RHbGl0Y2goMC4wNik7CisgICAgICoKKyAg
ICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFswLjUsMC41LDAuNTUsMC41LDAuNDUsMC41
XSBoYXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJlc2hvbGQKKyAgICAgKiAgICAgICAgICAgb2Yg
MC4wNi4iCisgICAgICoKKyAgICAgKi8KKyAgICBub3RHbGl0Y2goKSB7CisgICAgICB0aGlzLl9w
cm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZh
aWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQgcGFz
c0RldGFpbCwgZmFpbERldGFpbDsKKworICAgICAgbGV0IGFjdHVhbCA9IHRoaXMuX2FjdHVhbDsK
KyAgICAgIGxldCBleHBlY3RlZCA9IHRoaXMuX2V4cGVjdGVkOworICAgICAgZm9yIChsZXQgaW5k
ZXggPSAwOyBpbmRleCA8IGFjdHVhbC5sZW5ndGg7ICsraW5kZXgpIHsKKyAgICAgICAgbGV0IGRp
ZmYgPSBNYXRoLmFicyhhY3R1YWxbaW5kZXggLSAxXSAtIGFjdHVhbFtpbmRleF0pOworICAgICAg
ICBpZiAoZGlmZiA+PSBleHBlY3RlZCkgeworICAgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAg
ICAgICAgIGZhaWxEZXRhaWwgPSAnJHthY3R1YWx9IGhhcyBhIGdsaXRjaCBhdCBpbmRleCAnICsg
aW5kZXggKworICAgICAgICAgICAgICAnIG9mIHNpemUgJyArIGRpZmYgKyAnLic7CisgICAgICAg
IH0KKyAgICAgIH0KKworICAgICAgcGFzc0RldGFpbCA9CisgICAgICAgICAgJyR7YWN0dWFsfSBo
YXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJlc2hvbGQgb2YgJHtleHBlY3RlZH0uJzsKKworICAg
ICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOwor
ICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlzIGNsb3NlIHRvIHxl
eHBlY3RlZHwgdXNpbmcgdGhlIGdpdmVuIHJlbGF0aXZlIGVycm9yCisgICAgICogfHRocmVzaG9s
ZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDIuMykuYmVDbG9z
ZVRvKDIsIHsgdGhyZXNob2xkOiAwLjMgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAg
ICogICAiUEFTUyAgICAyLjMgaXMgMiB3aXRoaW4gYW4gZXJyb3Igb2YgMC4zLiIKKyAgICAgKiBA
cGFyYW0ge09iamVjdH0gb3B0aW9ucyAgICAgICAgICAgICAgT3B0aW9ucyBmb3IgYXNzZXJ0aW9u
LgorICAgICAqIEBwYXJhbSB7TnVtYmVyfSBvcHRpb25zLnRocmVzaG9sZCAgICBUaHJlc2hvbGQg
dmFsdWUgZm9yIHRoZSBjb21wYXJpc29uLgorICAgICAqLworICAgIGJlQ2xvc2VUbygpIHsKKyAg
ICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAgICAgLy8gVGhlIHRo
cmVzaG9sZCBpcyByZWxhdGl2ZSBleGNlcHQgd2hlbiB8ZXhwZWN0ZWR8IGlzIHplcm8sIGluIHdo
aWNoIGNhc2UKKyAgICAgIC8vIGl0IGlzIGFic29sdXRlLgorICAgICAgbGV0IGFic0V4cGVjdGVk
ID0gdGhpcy5fZXhwZWN0ZWQgPyBNYXRoLmFicyh0aGlzLl9leHBlY3RlZCkgOiAxOworICAgICAg
bGV0IGVycm9yID0gTWF0aC5hYnModGhpcy5fYWN0dWFsIC0gdGhpcy5fZXhwZWN0ZWQpIC8gYWJz
RXhwZWN0ZWQ7CisKKyAgICAgIC8vIGRlYnVnZ2VyOworCisgICAgICByZXR1cm4gdGhpcy5fYXNz
ZXJ0KAorICAgICAgICAgIGVycm9yIDw9IHRoaXMuX29wdGlvbnMudGhyZXNob2xkLAorICAgICAg
ICAgICcke2FjdHVhbH0gaXMgJHtleHBlY3RlZH0gd2l0aGluIGFuIGVycm9yIG9mICR7dGhyZXNo
b2xkfS4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGNsb3NlIHRvICR7ZXhwZWN0ZWR9
IHdpdGhpbiBhIHJlbGF0aXZlIGVycm9yIG9mICcgKworICAgICAgICAgICAgICAnJHt0aHJlc2hv
bGR9IChSZWxFcnI9JyArIGVycm9yICsgJykuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICog
Q2hlY2sgaWYgfHRhcmdldHwgYXJyYXkgaXMgY2xvc2UgdG8gfGV4cGVjdGVkfCBhcnJheSBlbGVt
ZW50LXdpc2Ugd2l0aGluCisgICAgICogYSBjZXJ0YWluIGVycm9yIGJvdW5kIGdpdmVuIGJ5IHRo
ZSB8b3B0aW9uc3wuCisgICAgICoKKyAgICAgKiBUaGUgZXJyb3IgY3JpdGVyaW9uIGlzOgorICAg
ICAqICAgYWJzKGFjdHVhbFtrXSAtIGV4cGVjdGVkW2tdKSA8IG1heChhYnNFcnIsIHJlbEVyciAq
IGFicyhleHBlY3RlZCkpCisgICAgICoKKyAgICAgKiBJZiBub3RoaW5nIGlzIGdpdmVuIGZvciB8
b3B0aW9uc3wsIHRoZW4gYWJzRXJyID0gcmVsRXJyID0gMC4gSWYKKyAgICAgKiBhYnNFcnIgPSAw
LCB0aGVuIHRoZSBlcnJvciBjcml0ZXJpb24gaXMgYSByZWxhdGl2ZSBlcnJvci4gQSBub24temVy
bworICAgICAqIGFic0VyciB2YWx1ZSBwcm9kdWNlcyBhIG1peCBpbnRlbmRlZCB0byBoYW5kbGUg
dGhlIGNhc2Ugd2hlcmUgdGhlCisgICAgICogZXhwZWN0ZWQgdmFsdWUgaXMgMCwgYWxsb3dpbmcg
dGhlIHRhcmdldCB2YWx1ZSB0byBkaWZmZXIgYnkgYWJzRXJyIGZyb20KKyAgICAgKiB0aGUgZXhw
ZWN0ZWQuCisgICAgICoKKyAgICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5hYnNvbHV0ZVRo
cmVzaG9sZCAgICBBYnNvbHV0ZSB0aHJlc2hvbGQuCisgICAgICogQHBhcmFtIHtOdW1iZXJ9IG9w
dGlvbnMucmVsYXRpdmVUaHJlc2hvbGQgICAgUmVsYXRpdmUgdGhyZXNob2xkLgorICAgICAqLwor
ICAgIGJlQ2xvc2VUb0FycmF5KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1
bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAg
ICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWw7
CisKKyAgICAgIC8vIFBhcnNpbmcgb3B0aW9ucy4KKyAgICAgIGxldCBhYnNFcnJvclRocmVzaG9s
ZCA9ICh0aGlzLl9vcHRpb25zLmFic29sdXRlVGhyZXNob2xkIHx8IDApOworICAgICAgbGV0IHJl
bEVycm9yVGhyZXNob2xkID0gKHRoaXMuX29wdGlvbnMucmVsYXRpdmVUaHJlc2hvbGQgfHwgMCk7
CisKKyAgICAgIC8vIEEgY29sbGVjdGlvbiBvZiBhbGwgb2YgdGhlIHZhbHVlcyB0aGF0IHNhdGlz
ZnkgdGhlIGVycm9yIGNyaXRlcmlvbi4KKyAgICAgIC8vIFRoaXMgaG9sZHMgdGhlIGFic29sdXRl
IGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgdGFyZ2V0IGVsZW1lbnQgYW5kIHRoZQorICAgICAgLy8g
ZXhwZWN0ZWQgZWxlbWVudC4KKyAgICAgIGxldCBlcnJvcnMgPSB7fTsKKworICAgICAgLy8gS2Vl
cCB0cmFjayBvZiB0aGUgbWF4IGFic29sdXRlIGVycm9yIGZvdW5kLgorICAgICAgbGV0IG1heEFi
c0Vycm9yID0gLUluZmluaXR5LCBtYXhBYnNFcnJvckluZGV4ID0gLTE7CisKKyAgICAgIC8vIEtl
ZXAgdHJhY2sgb2YgdGhlIG1heCByZWxhdGl2ZSBlcnJvciBmb3VuZCwgaWdub3JpbmcgY2FzZXMg
d2hlcmUgdGhlCisgICAgICAvLyByZWxhdGl2ZSBlcnJvciBpcyBJbmZpbml0eSBiZWNhdXNlIHRo
ZSBleHBlY3RlZCB2YWx1ZSBpcyAwLgorICAgICAgbGV0IG1heFJlbEVycm9yID0gLUluZmluaXR5
LCBtYXhSZWxFcnJvckluZGV4ID0gLTE7CisKKyAgICAgIGxldCBhY3R1YWwgPSB0aGlzLl9hY3R1
YWw7CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlzLl9leHBlY3RlZDsKKworICAgICAgZm9yIChs
ZXQgaW5kZXggPSAwOyBpbmRleCA8IGV4cGVjdGVkLmxlbmd0aDsgKytpbmRleCkgeworICAgICAg
ICBsZXQgZGlmZiA9IE1hdGguYWJzKGFjdHVhbFtpbmRleF0gLSBleHBlY3RlZFtpbmRleF0pOwor
ICAgICAgICBsZXQgYWJzRXhwZWN0ZWQgPSBNYXRoLmFicyhleHBlY3RlZFtpbmRleF0pOworICAg
ICAgICBsZXQgcmVsRXJyb3IgPSBkaWZmIC8gYWJzRXhwZWN0ZWQ7CisKKyAgICAgICAgaWYgKGRp
ZmYgPgorICAgICAgICAgICAgTWF0aC5tYXgoYWJzRXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhy
ZXNob2xkICogYWJzRXhwZWN0ZWQpKSB7CisgICAgICAgICAgaWYgKGRpZmYgPiBtYXhBYnNFcnJv
cikgeworICAgICAgICAgICAgbWF4QWJzRXJyb3JJbmRleCA9IGluZGV4OworICAgICAgICAgICAg
bWF4QWJzRXJyb3IgPSBkaWZmOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmICghaXNOYU4o
cmVsRXJyb3IpICYmIHJlbEVycm9yID4gbWF4UmVsRXJyb3IpIHsKKyAgICAgICAgICAgIG1heFJl
bEVycm9ySW5kZXggPSBpbmRleDsKKyAgICAgICAgICAgIG1heFJlbEVycm9yID0gcmVsRXJyb3I7
CisgICAgICAgICAgfQorCisgICAgICAgICAgZXJyb3JzW2luZGV4XSA9IGRpZmY7CisgICAgICAg
IH0KKyAgICAgIH0KKworICAgICAgbGV0IG51bWJlck9mRXJyb3JzID0gT2JqZWN0LmtleXMoZXJy
b3JzKS5sZW5ndGg7CisgICAgICBsZXQgbWF4QWxsb3dlZEVycm9yRGV0YWlsID0gSlNPTi5zdHJp
bmdpZnkoeworICAgICAgICBhYnNvbHV0ZVRocmVzaG9sZDogYWJzRXJyb3JUaHJlc2hvbGQsCisg
ICAgICAgIHJlbGF0aXZlVGhyZXNob2xkOiByZWxFcnJvclRocmVzaG9sZAorICAgICAgfSk7CisK
KyAgICAgIGlmIChudW1iZXJPZkVycm9ycyA9PT0gMCkgeworICAgICAgICAvLyBUaGUgYXNzZXJ0
aW9uIHdhcyBzdWNjZXNzZnVsLgorICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSBlcXVh
bHMgJHtleHBlY3RlZH0gd2l0aCBhbiBlbGVtZW50LXdpc2UgJyArCisgICAgICAgICAgICAndG9s
ZXJhbmNlIG9mICcgKyBtYXhBbGxvd2VkRXJyb3JEZXRhaWwgKyAnLic7CisgICAgICB9IGVsc2Ug
eworICAgICAgICAvLyBGYWlsZWQuIFByZXBhcmUgdGhlIGRldGFpbGVkIGZhaWx1cmUgbG9nLgor
ICAgICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAgICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0g
ZG9lcyBub3QgZXF1YWwgJHtleHBlY3RlZH0gd2l0aCBhbiAnICsKKyAgICAgICAgICAgICdlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mICcgKyBtYXhBbGxvd2VkRXJyb3JEZXRhaWwgKyAnLlxuJzsK
KworICAgICAgICAvLyBQcmludCBvdXQgYWN0dWFsLCBleHBlY3RlZCwgYWJzb2x1dGUgZXJyb3Is
IGFuZCByZWxhdGl2ZSBlcnJvci4KKyAgICAgICAgbGV0IGNvdW50ZXIgPSAwOworICAgICAgICBm
YWlsRGV0YWlsICs9ICdcdEluZGV4XHRBY3R1YWxcdFx0XHRFeHBlY3RlZFx0XHRBYnNFcnJvcicg
KworICAgICAgICAgICAgJ1x0XHRSZWxFcnJvclx0XHRUZXN0IHRocmVzaG9sZCc7CisgICAgICAg
IGxldCBwcmludGVkSW5kaWNlcyA9IFtdOworICAgICAgICBmb3IgKGxldCBpbmRleCBpbiBlcnJv
cnMpIHsKKyAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAgICAgICAgICAgICdcbicgKworICAg
ICAgICAgICAgICBfZm9ybWF0RmFpbHVyZUVudHJ5KAorICAgICAgICAgICAgICAgICAgaW5kZXgs
IGFjdHVhbFtpbmRleF0sIGV4cGVjdGVkW2luZGV4XSwgZXJyb3JzW2luZGV4XSwKKyAgICAgICAg
ICAgICAgICAgIF9jbG9zZVRvVGhyZXNob2xkKAorICAgICAgICAgICAgICAgICAgICAgIGFic0Vy
cm9yVGhyZXNob2xkLCByZWxFcnJvclRocmVzaG9sZCwgZXhwZWN0ZWRbaW5kZXhdKSk7CisKKyAg
ICAgICAgICBwcmludGVkSW5kaWNlcy5wdXNoKGluZGV4KTsKKyAgICAgICAgICBpZiAoKytjb3Vu
dGVyID4gdGhpcy5fb3B0aW9ucy5udW1iZXJPZkVycm9ycykgeworICAgICAgICAgICAgZmFpbERl
dGFpbCArPQorICAgICAgICAgICAgICAgICdcblx0Li4uYW5kICcgKyAobnVtYmVyT2ZFcnJvcnMg
LSBjb3VudGVyKSArICcgbW9yZSBlcnJvcnMuJzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8vIEZpbmFsaXplIHRoZSBlcnJvciBsb2c6IHBy
aW50IG91dCB0aGUgbG9jYXRpb24gb2YgYm90aCB0aGUgbWF4QWJzCisgICAgICAgIC8vIGVycm9y
IGFuZCB0aGUgbWF4UmVsIGVycm9yIHNvIHdlIGNhbiBhZGp1c3QgdGhyZXNob2xkcyBhcHByb3By
aWF0ZWx5CisgICAgICAgIC8vIGluIHRoZSB0ZXN0LgorICAgICAgICBmYWlsRGV0YWlsICs9ICdc
bicgKworICAgICAgICAgICAgJ1x0TWF4IEFic0Vycm9yIG9mICcgKyBtYXhBYnNFcnJvci50b0V4
cG9uZW50aWFsKDE2KSArCisgICAgICAgICAgICAnIGF0IGluZGV4IG9mICcgKyBtYXhBYnNFcnJv
ckluZGV4ICsgJy5cbic7CisgICAgICAgIGlmIChwcmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQg
PT4geworICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudCA9PSBtYXhBYnNFcnJvckluZGV4Owor
ICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5lZCkgeworICAgICAgICAgIC8vIFByaW50IGFuIGVu
dHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhhdmVuJ3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWls
RGV0YWlsICs9CisgICAgICAgICAgICAgIF9mb3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAg
ICAgICAgICBtYXhBYnNFcnJvckluZGV4LCBhY3R1YWxbbWF4QWJzRXJyb3JJbmRleF0sCisgICAg
ICAgICAgICAgICAgICBleHBlY3RlZFttYXhBYnNFcnJvckluZGV4XSwgZXJyb3JzW21heEFic0Vy
cm9ySW5kZXhdLAorICAgICAgICAgICAgICAgICAgX2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAg
ICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAg
ICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkW21heEFic0Vycm9ySW5kZXhdKSkgKworICAgICAg
ICAgICAgICAnXG4nOworICAgICAgICB9CisgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1x0TWF4IFJl
bEVycm9yIG9mICcgKyBtYXhSZWxFcnJvci50b0V4cG9uZW50aWFsKDE2KSArCisgICAgICAgICAg
ICAnIGF0IGluZGV4IG9mICcgKyBtYXhSZWxFcnJvckluZGV4ICsgJy5cbic7CisgICAgICAgIGlm
IChwcmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQgPT4geworICAgICAgICAgICAgICByZXR1cm4g
ZWxlbWVudCA9PSBtYXhSZWxFcnJvckluZGV4OworICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5l
ZCkgeworICAgICAgICAgIC8vIFByaW50IGFuIGVudHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhh
dmVuJ3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAgICAgICAgICAgIF9m
b3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAgICAgICAgICBtYXhSZWxFcnJvckluZGV4LCBh
Y3R1YWxbbWF4UmVsRXJyb3JJbmRleF0sCisgICAgICAgICAgICAgICAgICBleHBlY3RlZFttYXhS
ZWxFcnJvckluZGV4XSwgZXJyb3JzW21heFJlbEVycm9ySW5kZXhdLAorICAgICAgICAgICAgICAg
ICAgX2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAgICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJl
c2hvbGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVk
W21heFJlbEVycm9ySW5kZXhdKSkgKworICAgICAgICAgICAgICAnXG4nOworICAgICAgICB9Cisg
ICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQocGFzc2VkLCBwYXNzRGV0YWlsLCBm
YWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBBIHRlbXBvcmFyeSBlc2NhcGUg
aGF0IGZvciBwcmludGluZyBhbiBpbi10YXNrIG1lc3NhZ2UuIFRoZSBkZXNjcmlwdGlvbgorICAg
ICAqIGZvciB0aGUgfGFjdHVhbHwgaXMgcmVxdWlyZWQgdG8gZ2V0IHRoZSBtZXNzYWdlIHByaW50
ZWQgcHJvcGVybHkuCisgICAgICoKKyAgICAgKiBUT0RPKGhvbmdjaGFuKTogcmVtb3ZlIHRoaXMg
bWV0aG9kIHdoZW4gdGhlIHRyYW5zaXRpb24gZnJvbSB0aGUgb2xkIEF1ZGl0CisgICAgICogdG8g
dGhlIG5ldyBBdWRpdCBpcyBjb21wbGV0ZWQuCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNo
b3VsZCh0cnVlLCAnVGhlIG1lc3NhZ2UgaXMnKS5tZXNzYWdlKCd0cnV0aGZ1bCEnLCAnZmFsc2Uh
Jyk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFRoZSBtZXNzYWdl
IGlzIHRydXRoZnVsISIKKyAgICAgKi8KKyAgICBtZXNzYWdlKHBhc3NEZXRhaWwsIGZhaWxEZXRh
aWwpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFs
LCAnJHthY3R1YWx9ICcgKyBwYXNzRGV0YWlsLCAnJHthY3R1YWx9ICcgKyBmYWlsRGV0YWlsKTsK
KyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlz
IHRydWx5IG93bmVkIGJ5IHxhY3R1YWx8IG9iamVjdC4KKyAgICAgKgorICAgICAqIEBleGFtcGxl
CisgICAgICogICBzaG91bGQoQmFzZUF1ZGlvQ29udGV4dC5wcm90b3R5cGUsCisgICAgICogICAg
ICAgICAgJ0Jhc2VBdWRpb0NvbnRleHQucHJvdG90eXBlJykuaGF2ZU93blByb3BlcnR5KCdjcmVh
dGVHYWluJyk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIEJhc2VB
dWRpb0NvbnRleHQucHJvdG90eXBlIGhhcyBhbiBvd24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAg
ICAnY3JlYXRlR2FpbicuIgorICAgICAqLworICAgIGhhdmVPd25Qcm9wZXJ0eSgpIHsKKyAgICAg
IHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwuaGFzT3duUHJvcGVydHkodGhpcy5fZXhw
ZWN0ZWQpLAorICAgICAgICAgICcke2FjdHVhbH0gaGFzIGFuIG93biBwcm9wZXJ0eSBvZiAiJHtl
eHBlY3RlZH0iLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIG5vdCBvd24gdGhlIHByb3Bl
cnR5IG9mICIke2V4cGVjdGVkfSIuJyk7CisgICAgfQorCisKKyAgICAvKioKKyAgICAgKiBDaGVj
ayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlzIG5vdCBvd25lZCBieSB8YWN0dWFsfCBvYmplY3Qu
CisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKEJhc2VBdWRpb0NvbnRl
eHQucHJvdG90eXBlLAorICAgICAqICAgICAgICAgICdCYXNlQXVkaW9Db250ZXh0LnByb3RvdHlw
ZScpCisgICAgICogICAgICAgLm5vdEhhdmVPd25Qcm9wZXJ0eSgnc3RhcnRSZW5kZXJpbmcnKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQmFzZUF1ZGlvQ29udGV4
dC5wcm90b3R5cGUgZG9lcyBub3QgaGF2ZSBhbiBvd24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAg
ICAnc3RhcnRSZW5kZXJpbmcnLiIKKyAgICAgKi8KKyAgICBub3RIYXZlT3duUHJvcGVydHkoKSB7
CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisKKyAgICAgIHJldHVy
biB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgIXRoaXMuX2FjdHVhbC5oYXNPd25Qcm9wZXJ0eSh0
aGlzLl9leHBlY3RlZCksCisgICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIG5vdCBoYXZlIGFuIG93
biBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBoYXMg
YW4gb3duIHRoZSBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLicpCisgICAgfQorCisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiBhbiBvYmplY3QgaXMgaW5oZXJpdGVkIGZyb20gYSBjbGFzcy4g
VGhpcyBsb29rcyB1cCB0aGUgZW50aXJlCisgICAgICogcHJvdG90eXBlIGNoYWluIG9mIGEgZ2l2
ZW4gb2JqZWN0IGFuZCB0cmllcyB0byBmaW5kIGEgbWF0Y2guCisgICAgICoKKyAgICAgKiBAZXhh
bXBsZQorICAgICAqICAgc2hvdWxkKHNvdXJjZU5vZGUsICdBIGJ1ZmZlciBzb3VyY2Ugbm9kZScp
CisgICAgICogICAgICAgLmluaGVyaXRGcm9tKCdBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUnKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQSBidWZmZXIgc291cmNl
IG5vZGUgaW5oZXJpdHMgZnJvbSAnQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlJy4iCisgICAgICov
CisgICAgaW5oZXJpdEZyb20oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3Vt
ZW50cyk7CisKKyAgICAgIGxldCBwcm90b3R5cGVzID0gW107CisgICAgICBsZXQgY3VycmVudFBy
b3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzLl9hY3R1YWwpOworICAgICAgd2hp
bGUgKGN1cnJlbnRQcm90b3R5cGUpIHsKKyAgICAgICAgcHJvdG90eXBlcy5wdXNoKGN1cnJlbnRQ
cm90b3R5cGUuY29uc3RydWN0b3IubmFtZSk7CisgICAgICAgIGN1cnJlbnRQcm90b3R5cGUgPSBP
YmplY3QuZ2V0UHJvdG90eXBlT2YoY3VycmVudFByb3RvdHlwZSk7CisgICAgICB9CisKKyAgICAg
IHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgcHJvdG90eXBlcy5pbmNsdWRlcyh0aGlz
Ll9leHBlY3RlZCksCisgICAgICAgICAgJyR7YWN0dWFsfSBpbmhlcml0cyBmcm9tICIke2V4cGVj
dGVkfSIuJywKKyAgICAgICAgICAnJHthY3R1YWx9IGRvZXMgbm90IGluaGVyaXQgZnJvbSAiJHtl
eHBlY3RlZH0iLicpOworICAgIH0KKyAgfQorCisKKyAgLy8gVGFzayBDbGFzcyBzdGF0ZSBlbnVt
LgorICBjb25zdCBUYXNrU3RhdGUgPSB7UEVORElORzogMCwgU1RBUlRFRDogMSwgRklOSVNIRUQ6
IDJ9OworCisKKyAgLyoqCisgICAqIEBjbGFzcyBUYXNrCisgICAqIEBkZXNjcmlwdGlvbiBXZWJB
dWRpbyB0ZXN0aW5nIHRhc2suIE1hbmFnZWQgYnkgVGFza1J1bm5lci4KKyAgICovCisgIGNsYXNz
IFRhc2sgeworICAgIC8qKgorICAgICAqIFRhc2sgY29uc3RydWN0b3IuCisgICAgICogQHBhcmFt
ICB7T2JqZWN0fSB0YXNrUnVubmVyIFJlZmVyZW5jZSBvZiBhc3NvY2lhdGVkIHRhc2sgcnVubmVy
LgorICAgICAqIEBwYXJhbSAge1N0cmluZ3x8T2JqZWN0fSB0YXNrTGFiZWwgVGFzayBsYWJlbCBp
ZiBhIHN0cmluZyBpcyBnaXZlbi4gVGhpcworICAgICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcGFyYW1ldGVyIGNhbiBiZSBhIGRpY3Rpb25hcnkgd2l0aCB0aGUKKyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbGxvd2luZyBmaWVsZHMuCisg
ICAgICogQHBhcmFtICB7U3RyaW5nfSB0YXNrTGFiZWwubGFiZWwgVGFzayBsYWJlbC4KKyAgICAg
KiBAcGFyYW0gIHtTdHJpbmd9IHRhc2tMYWJlbC5kZXNjcmlwdGlvbiBEZXNjcmlwdGlvbiBvZiB0
YXNrLgorICAgICAqIEBwYXJhbSAge0Z1bmN0aW9ufSB0YXNrRnVuY3Rpb24gVGFzayBmdW5jdGlv
biB0byBiZSBwZXJmb3JtZWQuCisgICAgICogQHJldHVybiB7T2JqZWN0fSBUYXNrIG9iamVjdC4K
KyAgICAgKi8KKyAgICBjb25zdHJ1Y3Rvcih0YXNrUnVubmVyLCB0YXNrTGFiZWwsIHRhc2tGdW5j
dGlvbikgeworICAgICAgdGhpcy5fdGFza1J1bm5lciA9IHRhc2tSdW5uZXI7CisgICAgICB0aGlz
Ll90YXNrRnVuY3Rpb24gPSB0YXNrRnVuY3Rpb247CisKKyAgICAgIGlmICh0eXBlb2YgdGFza0xh
YmVsID09PSAnc3RyaW5nJykgeworICAgICAgICB0aGlzLl9sYWJlbCA9IHRhc2tMYWJlbDsKKyAg
ICAgICAgdGhpcy5fZGVzY3JpcHRpb24gPSBudWxsOworICAgICAgfSBlbHNlIGlmICh0eXBlb2Yg
dGFza0xhYmVsID09PSAnb2JqZWN0JykgeworICAgICAgICBpZiAodHlwZW9mIHRhc2tMYWJlbC5s
YWJlbCAhPT0gJ3N0cmluZycpIHsKKyAgICAgICAgICBfdGhyb3dFeGNlcHRpb24oJ1Rhc2suY29u
c3RydWN0b3I6OiB0YXNrIGxhYmVsIG11c3QgYmUgc3RyaW5nLicpOworICAgICAgICB9CisgICAg
ICAgIHRoaXMuX2xhYmVsID0gdGFza0xhYmVsLmxhYmVsOworICAgICAgICB0aGlzLl9kZXNjcmlw
dGlvbiA9ICh0eXBlb2YgdGFza0xhYmVsLmRlc2NyaXB0aW9uID09PSAnc3RyaW5nJykgPworICAg
ICAgICAgICAgdGFza0xhYmVsLmRlc2NyaXB0aW9uIDoKKyAgICAgICAgICAgIG51bGw7CisgICAg
ICB9IGVsc2UgeworICAgICAgICBfdGhyb3dFeGNlcHRpb24oCisgICAgICAgICAgICAnVGFzay5j
b25zdHJ1Y3Rvcjo6IHRhc2sgbGFiZWwgbXVzdCBiZSBhIHN0cmluZyBvciAnICsKKyAgICAgICAg
ICAgICdhIGRpY3Rpb25hcnkuJyk7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFz
a1N0YXRlLlBFTkRJTkc7CisgICAgICB0aGlzLl9yZXN1bHQgPSB0cnVlOworCisgICAgICB0aGlz
Ll90b3RhbEFzc2VydGlvbnMgPSAwOworICAgICAgdGhpcy5fZmFpbGVkQXNzZXJ0aW9ucyA9IDA7
CisgICAgfQorCisgICAgZ2V0IGxhYmVsKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsOwor
ICAgIH0KKworICAgIGdldCBzdGF0ZSgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9zdGF0ZTsKKyAg
ICB9CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAgICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAg
ICB9CisKKyAgICAvLyBTdGFydCB0aGUgYXNzZXJ0aW9uIGNoYWluLgorICAgIHNob3VsZChhY3R1
YWwsIGFjdHVhbERlc2NyaXB0aW9uKSB7CisgICAgICAvLyBJZiBubyBhcmd1bWVudCBpcyBnaXZl
biwgd2UgY2Fubm90IHByb2NlZWQuIEhhbHQuCisgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9
PT0gMCkKKyAgICAgICAgX3Rocm93RXhjZXB0aW9uKCdUYXNrLnNob3VsZDo6IHJlcXVpcmVzIGF0
IGxlYXN0IDEgYXJndW1lbnQuJyk7CisKKyAgICAgIHJldHVybiBuZXcgU2hvdWxkKHRoaXMsIGFj
dHVhbCwgYWN0dWFsRGVzY3JpcHRpb24pOworICAgIH0KKworICAgIC8vIFJ1biB0aGlzIHRhc2su
IHx0aGlzfCB0YXNrIHdpbGwgYmUgcGFzc2VkIGludG8gdGhlIHVzZXItc3VwcGxpZWQgdGVzdAor
ICAgIC8vIHRhc2sgZnVuY3Rpb24uCisgICAgcnVuKGhhcm5lc3NUZXN0KSB7CisgICAgICB0aGlz
Ll9zdGF0ZSA9IFRhc2tTdGF0ZS5TVEFSVEVEOworICAgICAgdGhpcy5faGFybmVzc1Rlc3QgPSBo
YXJuZXNzVGVzdDsKKyAgICAgIC8vIFByaW50IG91dCB0aGUgdGFzayBlbnRyeSB3aXRoIGxhYmVs
IGFuZCBkZXNjcmlwdGlvbi4KKyAgICAgIF9sb2dQYXNzZWQoCisgICAgICAgICAgJz4gWycgKyB0
aGlzLl9sYWJlbCArICddICcgKworICAgICAgICAgICh0aGlzLl9kZXNjcmlwdGlvbiA/IHRoaXMu
X2Rlc2NyaXB0aW9uIDogJycpKTsKKworICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZl
LCByZWplY3QpID0+IHsKKyAgICAgICAgdGhpcy5fcmVzb2x2ZSA9IHJlc29sdmU7CisgICAgICAg
IHRoaXMuX3JlamVjdCA9IHJlamVjdDsKKyAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMuX3Rhc2tG
dW5jdGlvbih0aGlzLCB0aGlzLnNob3VsZC5iaW5kKHRoaXMpKTsKKyAgICAgICAgaWYgKHJlc3Vs
dCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJmdW5jdGlvbiIpIHsKKyAgICAgICAgICByZXN1
bHQudGhlbigoKSA9PiB0aGlzLmRvbmUoKSkuY2F0Y2gocmVqZWN0KTsKKyAgICAgICAgfQorICAg
ICAgfSk7CisgICAgfQorCisgICAgLy8gVXBkYXRlIHRoZSB0YXNrIHN1Y2Nlc3MgYmFzZWQgb24g
dGhlIGluZGl2aWR1YWwgYXNzZXJ0aW9uL3Rlc3QgaW5zaWRlLgorICAgIHVwZGF0ZShzdWJUYXNr
KSB7CisgICAgICAvLyBBZnRlciBvbmUgb2YgdGVzdHMgZmFpbHMgd2l0aGluIGEgdGFzaywgdGhl
IHJlc3VsdCBpcyBpcnJldmVyc2libGUuCisgICAgICBpZiAoc3ViVGFzay5yZXN1bHQgPT09IGZh
bHNlKSB7CisgICAgICAgIHRoaXMuX3Jlc3VsdCA9IGZhbHNlOworICAgICAgICB0aGlzLl9mYWls
ZWRBc3NlcnRpb25zKys7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3RvdGFsQXNzZXJ0aW9ucysr
OworICAgIH0KKworICAgIC8vIEZpbmlzaCB0aGUgY3VycmVudCB0YXNrIGFuZCBzdGFydCB0aGUg
bmV4dCBvbmUgaWYgYXZhaWxhYmxlLgorICAgIGRvbmUoKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KHRoaXMuX3N0YXRlLCBUYXNrU3RhdGUuU1RBUlRFRCkKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFz
a1N0YXRlLkZJTklTSEVEOworCisgICAgICBsZXQgbWVzc2FnZSA9ICc8IFsnICsgdGhpcy5fbGFi
ZWwgKyAnXSAnOworCisgICAgICBpZiAodGhpcy5fcmVzdWx0KSB7CisgICAgICAgIG1lc3NhZ2Ug
Kz0gJ0FsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsICcgKyB0aGlzLl90b3RhbEFzc2VydGlv
bnMgKworICAgICAgICAgICAgJyBhc3NlcnRpb25zKSc7CisgICAgICAgIF9sb2dQYXNzZWQobWVz
c2FnZSk7CisgICAgICB9IGVsc2UgeworICAgICAgICBtZXNzYWdlICs9IHRoaXMuX2ZhaWxlZEFz
c2VydGlvbnMgKyAnIG91dCBvZiAnICsgdGhpcy5fdG90YWxBc3NlcnRpb25zICsKKyAgICAgICAg
ICAgICcgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4nCisgICAgICAgIF9sb2dGYWlsZWQobWVzc2Fn
ZSk7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3Jlc29sdmUoKTsKKyAgICB9CisKKyAgICAvLyBS
dW5zIHxzdWJUYXNrfCB8dGltZXwgbWlsbGlzZWNvbmRzIGxhdGVyLiB8c2V0VGltZW91dHwgaXMg
bm90IGFsbG93ZWQgaW4KKyAgICAvLyBXUFQgbGludGVyLCBzbyBhIHRoaW4gd3JhcHBlciBhcm91
bmQgdGhlIGhhcm5lc3MncyB8c3RlcF90aW1lb3V0fCBpcworICAgIC8vIHVzZWQgaGVyZS4gIFJl
dHVybnMgYSBQcm9taXNlIHdoaWNoIGlzIHJlc29sdmVkIGFmdGVyIHxzdWJUYXNrfCBydW5zLgor
ICAgIHRpbWVvdXQoc3ViVGFzaywgdGltZSkgeworICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJl
c29sdmUgPT4geworICAgICAgICB0aGlzLl9oYXJuZXNzVGVzdC5zdGVwX3RpbWVvdXQoKCkgPT4g
eworICAgICAgICAgIGxldCByZXN1bHQgPSBzdWJUYXNrKCk7CisgICAgICAgICAgaWYgKHJlc3Vs
dCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJmdW5jdGlvbiIpIHsKKyAgICAgICAgICAgIC8v
IENoYWluIHJlamVjdGlvbiBkaXJlY3RseSB0byB0aGUgaGFybmVzcyB0ZXN0IFByb21pc2UsIHRv
IHJlcG9ydAorICAgICAgICAgICAgLy8gdGhlIHJlamVjdGlvbiBhZ2FpbnN0IHRoZSBzdWJ0ZXN0
IGV2ZW4gd2hlbiB0aGUgY2FsbGVyIG9mCisgICAgICAgICAgICAvLyB0aW1lb3V0IGRvZXMgbm90
IGhhbmRsZSB0aGUgcmVqZWN0aW9uLgorICAgICAgICAgICAgcmVzdWx0LnRoZW4ocmVzb2x2ZSwg
dGhpcy5fcmVqZWN0KCkpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXNvbHZl
KCk7CisgICAgICAgICAgfQorICAgICAgICB9LCB0aW1lKTsKKyAgICAgIH0pOworICAgIH0KKwor
ICAgIGlzUGFzc2VkKCkgeworICAgICAgcmV0dXJuIHRoaXMuX3N0YXRlID09PSBUYXNrU3RhdGUu
RklOSVNIRUQgJiYgdGhpcy5fcmVzdWx0OworICAgIH0KKworICAgIHRvU3RyaW5nKCkgeworICAg
ICAgcmV0dXJuICciJyArIHRoaXMuX2xhYmVsICsgJyI6ICcgKyB0aGlzLl9kZXNjcmlwdGlvbjsK
KyAgICB9CisgIH0KKworCisgIC8qKgorICAgKiBAY2xhc3MgVGFza1J1bm5lcgorICAgKiBAZGVz
Y3JpcHRpb24gV2ViQXVkaW8gdGVzdGluZyB0YXNrIHJ1bm5lci4gTWFuYWdlcyB0YXNrcy4KKyAg
ICovCisgIGNsYXNzIFRhc2tSdW5uZXIgeworICAgIGNvbnN0cnVjdG9yKCkgeworICAgICAgdGhp
cy5fdGFza3MgPSB7fTsKKyAgICAgIHRoaXMuX3Rhc2tTZXF1ZW5jZSA9IFtdOworCisgICAgICAv
LyBDb25maWd1cmUgdGVzdGhhcm5lc3MuanMgZm9yIHRoZSBhc3luYyBvcGVyYXRpb24uCisgICAg
ICBzZXR1cChuZXcgRnVuY3Rpb24oKSwge2V4cGxpY2l0X2RvbmU6IHRydWV9KTsKKyAgICB9CisK
KyAgICBfZmluaXNoKCkgeworICAgICAgbGV0IG51bWJlck9mRmFpbHVyZXMgPSAwOworICAgICAg
Zm9yIChsZXQgdGFza0luZGV4IGluIHRoaXMuX3Rhc2tTZXF1ZW5jZSkgeworICAgICAgICBsZXQg
dGFzayA9IHRoaXMuX3Rhc2tzW3RoaXMuX3Rhc2tTZXF1ZW5jZVt0YXNrSW5kZXhdXTsKKyAgICAg
ICAgbnVtYmVyT2ZGYWlsdXJlcyArPSB0YXNrLnJlc3VsdCA/IDAgOiAxOworICAgICAgfQorCisg
ICAgICBsZXQgcHJlZml4ID0gJyMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6ICc7CisgICAg
ICBpZiAobnVtYmVyT2ZGYWlsdXJlcyA+IDApIHsKKyAgICAgICAgX2xvZ0ZhaWxlZCgKKyAgICAg
ICAgICAgIHByZWZpeCArIG51bWJlck9mRmFpbHVyZXMgKyAnIG91dCBvZiAnICsgdGhpcy5fdGFz
a1NlcXVlbmNlLmxlbmd0aCArCisgICAgICAgICAgICAnIHRhc2tzIHdlcmUgZmFpbGVkLicpOwor
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgX2xvZ1Bhc3NlZCgKKyAgICAgICAgICAgIHByZWZpeCAr
IHRoaXMuX3Rhc2tTZXF1ZW5jZS5sZW5ndGggKyAnIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuJyk7
CisgICAgICB9CisKKyAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTsKKyAgICB9CisKKyAg
ICAvLyB8dGFza0xhYmVsfCBjYW4gYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGEgZGljdGlvbmFyeS4g
U2VlIFRhc2sgY29uc3RydWN0b3IKKyAgICAvLyBmb3IgdGhlIGRldGFpbC4gIElmIHx0YXNrRnVu
Y3Rpb258IHJldHVybnMgYSB0aGVuYWJsZSwgdGhlbiB0aGUgdGFzaworICAgIC8vIGlzIGNvbnNp
ZGVyZWQgY29tcGxldGUgd2hlbiB0aGUgdGhlbmFibGUgaXMgZnVsZmlsbGVkOyBvdGhlcndpc2Ug
dGhlCisgICAgLy8gdGFzayBtdXN0IGJlIGNvbXBsZXRlZCB3aXRoIGFuIGV4cGxpY2l0IGNhbGwg
dG8gfHRhc2suZG9uZSgpfC4KKyAgICBkZWZpbmUodGFza0xhYmVsLCB0YXNrRnVuY3Rpb24pIHsK
KyAgICAgIGxldCB0YXNrID0gbmV3IFRhc2sodGhpcywgdGFza0xhYmVsLCB0YXNrRnVuY3Rpb24p
OworICAgICAgaWYgKHRoaXMuX3Rhc2tzLmhhc093blByb3BlcnR5KHRhc2subGFiZWwpKSB7Cisg
ICAgICAgIF90aHJvd0V4Y2VwdGlvbignQXVkaXQuZGVmaW5lOjogRHVwbGljYXRlIHRhc2sgZGVm
aW5pdGlvbi4nKTsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQorICAgICAgdGhpcy5fdGFza3Nb
dGFzay5sYWJlbF0gPSB0YXNrOworICAgICAgdGhpcy5fdGFza1NlcXVlbmNlLnB1c2godGFzay5s
YWJlbCk7CisgICAgfQorCisgICAgLy8gU3RhcnQgcnVubmluZyBhbGwgdGhlIHRhc2tzIHNjaGVk
dWxlZC4gTXVsdGlwbGUgdGFzayBuYW1lcyBjYW4gYmUgcGFzc2VkCisgICAgLy8gdG8gZXhlY3V0
ZSB0aGVtIHNlcXVlbnRpYWxseS4gWmVybyBhcmd1bWVudCB3aWxsIHBlcmZvcm0gYWxsIGRlZmlu
ZWQKKyAgICAvLyB0YXNrcyBpbiB0aGUgb3JkZXIgb2YgZGVmaW5pdGlvbi4KKyAgICBydW4oKSB7
CisgICAgICAvLyBEaXNwbGF5IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRlc3Qgc3VpdGUuCisgICAg
ICBfbG9nUGFzc2VkKCcjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuJyk7CisKKyAgICAgIC8v
IElmIHRoZSBhcmd1bWVudCBpcyBzcGVjaWZpZWQsIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHRhc2sg
c2VxdWVuY2Ugd2l0aAorICAgICAgLy8gdGhlIHNwZWNpZmllZCBvbmUuCisgICAgICBpZiAoYXJn
dW1lbnRzLmxlbmd0aCA+IDApIHsKKyAgICAgICAgdGhpcy5fdGFza1NlcXVlbmNlID0gW107Cisg
ICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7CisgICAg
ICAgICAgbGV0IHRhc2tMYWJlbCA9IGFyZ3VtZW50c1tpXTsKKyAgICAgICAgICBpZiAoIXRoaXMu
X3Rhc2tzLmhhc093blByb3BlcnR5KHRhc2tMYWJlbCkpIHsKKyAgICAgICAgICAgIF90aHJvd0V4
Y2VwdGlvbignQXVkaXQucnVuOjogdW5kZWZpbmVkIHRhc2suJyk7CisgICAgICAgICAgfSBlbHNl
IGlmICh0aGlzLl90YXNrU2VxdWVuY2UuaW5jbHVkZXModGFza0xhYmVsKSkgeworICAgICAgICAg
ICAgX3Rocm93RXhjZXB0aW9uKCdBdWRpdC5ydW46OiBkdXBsaWNhdGUgdGFzayByZXF1ZXN0Licp
OworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB0aGlzLl90YXNrU2VxdWVuY2UucHVz
aCh0YXNrTGFiZWwpOworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfQorCisgICAgICBp
ZiAodGhpcy5fdGFza1NlcXVlbmNlLmxlbmd0aCA9PT0gMCkgeworICAgICAgICBfdGhyb3dFeGNl
cHRpb24oJ0F1ZGl0LnJ1bjo6IG5vIHRhc2sgdG8gcnVuLicpOworICAgICAgICByZXR1cm47Cisg
ICAgICB9CisKKyAgICAgIGZvciAobGV0IHRhc2tJbmRleCBpbiB0aGlzLl90YXNrU2VxdWVuY2Up
IHsKKyAgICAgICAgbGV0IHRhc2sgPSB0aGlzLl90YXNrc1t0aGlzLl90YXNrU2VxdWVuY2VbdGFz
a0luZGV4XV07CisgICAgICAgIC8vIFNvbWUgdGVzdHMgYXNzdW1lIHRoYXQgdGFza3MgcnVuIGlu
IHNlcXVlbmNlLCB3aGljaCBpcyBwcm92aWRlZCBieQorICAgICAgICAvLyBwcm9taXNlX3Rlc3Qo
KS4KKyAgICAgICAgcHJvbWlzZV90ZXN0KCh0KSA9PiB0YXNrLnJ1bih0KSwgYEV4ZWN1dGluZyAi
JHt0YXNrLmxhYmVsfSJgKTsKKyAgICAgIH0KKworICAgICAgLy8gU2NoZWR1bGUgYSBzdW1tYXJ5
IHJlcG9ydCBvbiBjb21wbGV0aW9uLgorICAgICAgcHJvbWlzZV90ZXN0KCgpID0+IHRoaXMuX2Zp
bmlzaCgpLCAiQXVkaXQgcmVwb3J0Iik7CisKKyAgICAgIC8vIEZyb20gdGVzdGhhcm5lc3MuanMu
IFRoZSBoYXJuZXNzIG5vdyBuZWVkIG5vdCB3YWl0IGZvciBtb3JlIHN1YnRlc3RzCisgICAgICAv
LyB0byBiZSBhZGRlZC4KKyAgICAgIF90ZXN0aGFybmVzc0RvbmUoKTsKKyAgICB9CisgIH0KKwor
ICAvKioKKyAgICogTG9hZCBmaWxlIGZyb20gYSBnaXZlbiBVUkwgYW5kIHBhc3MgQXJyYXlCdWZm
ZXIgdG8gdGhlIGZvbGxvd2luZyBwcm9taXNlLgorICAgKiBAcGFyYW0gIHtTdHJpbmd9IGZpbGVV
cmwgZmlsZSBVUkwuCisgICAqIEByZXR1cm4ge1Byb21pc2V9CisgICAqCisgICAqIEBleGFtcGxl
CisgICAqICAgQXVkaXQubG9hZEZpbGVGcm9tVXJsKCdyZXNvdXJjZXMvbXktc291bmQub2dnJyku
dGhlbigocmVzcG9uc2UpID0+IHsKKyAgICogICAgICAgYXVkaW9Db250ZXh0LmRlY29kZUF1ZGlv
RGF0YShyZXNwb25zZSkudGhlbigoYXVkaW9CdWZmZXIpID0+IHsKKyAgICogICAgICAgICAgIC8v
IERvIHNvbWV0aGluZyB3aXRoIEF1ZGlvQnVmZmVyLgorICAgKiAgICAgICB9KTsKKyAgICogICB9
KTsKKyAgICovCisgIGZ1bmN0aW9uIGxvYWRGaWxlRnJvbVVybChmaWxlVXJsKSB7CisgICAgcmV0
dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgIGxldCB4aHIgPSBu
ZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgICAgIHhoci5vcGVuKCdHRVQnLCBmaWxlVXJsLCB0cnVl
KTsKKyAgICAgIHhoci5yZXNwb25zZVR5cGUgPSAnYXJyYXlidWZmZXInOworCisgICAgICB4aHIu
b25sb2FkID0gKCkgPT4geworICAgICAgICAvLyB8c3RhdHVzID0gMHwgaXMgYSB3b3JrYXJvdW5k
IGZvciB0aGUgcnVuX3dlYl90ZXN0LnB5IHNlcnZlci4gV2UgYXJlCisgICAgICAgIC8vIHNwZWN1
bGF0aW5nIHRoZSBzZXJ2ZXIgcXVpdHMgdGhlIHRyYW5zYWN0aW9uIHByZW1hdHVyZWx5IHdpdGhv
dXQKKyAgICAgICAgLy8gY29tcGxldGluZyB0aGUgcmVxdWVzdC4KKyAgICAgICAgaWYgKHhoci5z
dGF0dXMgPT09IDIwMCB8fCB4aHIuc3RhdHVzID09PSAwKSB7CisgICAgICAgICAgcmVzb2x2ZSh4
aHIucmVzcG9uc2UpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGxldCBlcnJvck1lc3Nh
Z2UgPSAnbG9hZEZpbGU6IFJlcXVlc3QgZmFpbGVkIHdoZW4gbG9hZGluZyAnICsKKyAgICAgICAg
ICAgICAgZmlsZVVybCArICcuICcgKyB4aHIuc3RhdHVzVGV4dCArICcuIChzdGF0dXMgPSAnICsg
eGhyLnN0YXR1cyArCisgICAgICAgICAgICAgICcpJzsKKyAgICAgICAgICBpZiAocmVqZWN0KSB7
CisgICAgICAgICAgICByZWplY3QoZXJyb3JNZXNzYWdlKTsKKyAgICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgbmV3IEVycm9yKGVycm9yTWVzc2FnZSk7CisgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgICB9OworCisgICAgICB4aHIub25lcnJvciA9IChldmVudCkgPT4geworICAgICAg
ICBsZXQgZXJyb3JNZXNzYWdlID0KKyAgICAgICAgICAgICdsb2FkRmlsZTogTmV0d29yayBmYWls
dXJlIHdoZW4gbG9hZGluZyAnICsgZmlsZVVybCArICcuJzsKKyAgICAgICAgaWYgKHJlamVjdCkg
eworICAgICAgICAgIHJlamVjdChlcnJvck1lc3NhZ2UpOworICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgIG5ldyBFcnJvcihlcnJvck1lc3NhZ2UpOworICAgICAgICB9CisgICAgICB9OworCisg
ICAgICB4aHIuc2VuZCgpOworICAgIH0pOworICB9CisKKyAgLyoqCisgICAqIEBjbGFzcyBBdWRp
dAorICAgKiBAZGVzY3JpcHRpb24gQSBXZWJBdWRpbyBsYXlvdXQgdGVzdCB0YXNrIG1hbmFnZXIu
CisgICAqIEBleGFtcGxlCisgICAqICAgbGV0IGF1ZGl0ID0gQXVkaXQuY3JlYXRlVGFza1J1bm5l
cigpOworICAgKiAgIGF1ZGl0LmRlZmluZSgnZmlyc3QtdGFzaycsIGZ1bmN0aW9uICh0YXNrLCBz
aG91bGQpIHsKKyAgICogICAgIHNob3VsZChzb21lVmFsdWUpLmJlRXF1YWxUbyhzb21lVmFsdWUp
OworICAgKiAgICAgdGFzay5kb25lKCk7CisgICAqICAgfSk7CisgICAqICAgYXVkaXQucnVuKCk7
CisgICAqLworICByZXR1cm4geworCisgICAgLyoqCisgICAgICogQ3JlYXRlcyBhbiBpbnN0YW5j
ZSBvZiBBdWRpdCB0YXNrIHJ1bm5lci4KKyAgICAgKiBAcGFyYW0ge09iamVjdH0gIG9wdGlvbnMg
ICAgICAgICAgICAgICAgICAgICBPcHRpb25zIGZvciB0YXNrIHJ1bm5lci4KKyAgICAgKiBAcGFy
YW0ge0Jvb2xlYW59IG9wdGlvbnMucmVxdWlyZVJlc3VsdEZpbGUgICBUcnVlIGlmIHRoZSB0ZXN0
IHN1aXRlCisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmVxdWlyZXMgZXhwbGljaXQgdGV4dAorICAgICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbXBhcmlzb24gd2l0aCB0aGUgZXhwZWN0ZWQKKyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQgZmls
ZS4KKyAgICAgKi8KKyAgICBjcmVhdGVUYXNrUnVubmVyOiBmdW5jdGlvbihvcHRpb25zKSB7Cisg
ICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnJlcXVpcmVSZXN1bHRGaWxlID09IHRydWUpIHsK
KyAgICAgICAgX2xvZ0Vycm9yKAorICAgICAgICAgICAgJ3RoaXMgdGVzdCByZXF1aXJlcyB0aGUg
ZXhwbGljaXQgY29tcGFyaXNvbiB3aXRoIHRoZSAnICsKKyAgICAgICAgICAgICdleHBlY3RlZCBy
ZXN1bHQgd2hlbiBpdCBydW5zIHdpdGggcnVuX3dlYl90ZXN0cy5weS4nKTsKKyAgICAgIH0KKwor
ICAgICAgcmV0dXJuIG5ldyBUYXNrUnVubmVyKCk7CisgICAgfSwKKworICAgIC8qKgorICAgICAq
IExvYWQgZmlsZSBmcm9tIGEgZ2l2ZW4gVVJMIGFuZCBwYXNzIEFycmF5QnVmZmVyIHRvIHRoZSBm
b2xsb3dpbmcgcHJvbWlzZS4KKyAgICAgKiBTZWUgfGxvYWRGaWxlRnJvbVVybHwgbWV0aG9kIGZv
ciB0aGUgZGV0YWlsLgorICAgICAqLworICAgIGxvYWRGaWxlRnJvbVVybDogbG9hZEZpbGVGcm9t
VXJsCisKKyAgfTsKKworfSkoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406551</attachid>
            <date>2020-08-13 16:01:56 -0700</date>
            <delta_ts>2020-08-13 16:10:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215417-20200813160155.patch</filename>
            <type>text/plain</type>
            <size>190103</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYThlNjYyMmE1NGM3MDgw
NGQ1ODI2MDRlZmFiNGI2NWU5Mzk4OTBjMy4uMTE4YTRjZDM4MDExNGJlYjEyYmE3MGMxOGQzNGIw
Mzg0YmYzZmU3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA4LTEzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1
c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Igc3VzcGVu
ZGluZyAvIHJlc3VtaW5nIGFuIE9mZmxpbmVBdWRpb0NvbnRleHQsIGFzIHBlcjoKKyAgICAgICAg
LSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1vZmZsaW5lYXVkaW9jb250ZXh0
LXN1c3BlbmQKKyAgICAgICAgLSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1v
ZmZsaW5lYXVkaW9jb250ZXh0LXJlc3VtZQorCisgICAgICAgIFRlc3RzOiB3ZWJhdWRpby9vZmZs
aW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwKKyAgICAgICAgICAgICAg
IHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVy
Lmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCisgICAgICAg
ICAgICAgICB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVl
bmNlLmh0bWwKKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVy
aW5nKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkJhc2VBdWRpb0NvbnRleHQ6OnNob3VsZFN1c3BlbmQpOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxpemUpOgorICAgICAgICAoV2Vi
Q29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c3RhcnRPZmZsaW5lUmVuZGVyaW5nKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnN1c3BlbmRPZmZsaW5lUmVuZGVyaW5n
KToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnJlc3VtZU9mZmxpbmVS
ZW5kZXJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c2hvdWxk
U3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRTdXNw
ZW5kUmVuZGVyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OmRp
ZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmcpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2Zm
bGluZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1
ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvRGVzdGlu
YXRpb25Ob2RlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpzdGFydFJlbmRlcmluZyk6CisgICAgICAg
IChXZWJDb3JlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIpOgor
ICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmg6
CisKIDIwMjAtMDgtMTMgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAg
ICAgICAgIFttYWNPU10gWm9vbWVkLWluIHNlYXJjaCBmaWVsZCBpcyBjbGlwcGVkIG91dApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHAKaW5kZXggNWNiOGFlNmU2NTJlZWU2MzkyNzZkY2RiYTI0YzI1MTQ5NGE0YWJmZi4uMWI4NDMw
NjlhYjI3NDk0ZmY0YTYzN2I5MmQ3YjQ0YzM4MzYyYWExMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCkBAIC02NTQsMTAg
KzY1NCwxMCBAQCB2b2lkIEJhc2VBdWRpb0NvbnRleHQ6OmRlcmVmVW5maW5pc2hlZFNvdXJjZU5v
ZGVzKCkKICAgICBtX3JlZmVyZW5jZWROb2Rlcy5jbGVhcigpOwogfQogCi12b2lkIEJhc2VBdWRp
b0NvbnRleHQ6OmxvY2soYm9vbCYgbXVzdFJlbGVhc2VMb2NrKQordm9pZCBCYXNlQXVkaW9Db250
ZXh0Ojpsb2NrKGJvb2wmIG11c3RSZWxlYXNlTG9jaywgU2hvdWxkQWxsb3dMb2NraW5nT25BdWRp
b1RocmVhZCBzaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkKQogewogICAgIC8vIERvbid0
IGFsbG93IHJlZ3VsYXIgbG9jayBpbiByZWFsLXRpbWUgYXVkaW8gdGhyZWFkLgotICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpIHx8IHNob3VsZEFs
bG93TG9ja2luZ09uQXVkaW9UaHJlYWQgPT0gU2hvdWxkQWxsb3dMb2NraW5nT25BdWRpb1RocmVh
ZDo6WWVzKTsKIAogICAgIFRocmVhZCYgdGhpc1RocmVhZCA9IFRocmVhZDo6Y3VycmVudCgpOwog
CkBAIC0xMTQzLDYgKzExNDMsMTEgQEAgdm9pZCBCYXNlQXVkaW9Db250ZXh0OjpzdXNwZW5kUmVu
ZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiAgICAgfSk7CiB9CiAK
K3ZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6ZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QpCit7Cisg
ICAgc2V0U3RhdGUoU3RhdGU6OlN1c3BlbmRlZCk7Cit9CisKIHZvaWQgQmFzZUF1ZGlvQ29udGV4
dDo6cmVzdW1lUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
CiAgICAgaWYgKGlzT2ZmbGluZUNvbnRleHQoKSB8fCBtX2lzU3RvcFNjaGVkdWxlZCkgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaApp
bmRleCAwNzllODY2YTc1NDUzNjE2NzM4OTkzYmQxYzYwODUxNjUyMDU0MDA2Li4wYjc5OGE1MTQy
NGZmOGZlMjkzNWEzYTExMjQyOGJmNmQ5NjlmNTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaApAQCAtMTIyLDYgKzEyMiw4IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgaW5jcmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsKICAgICB2
b2lkIGRlY3JlbWVudEFjdGl2ZVNvdXJjZUNvdW50KCk7CisKKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkU3VzcGVuZCgpIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgCiAgICAgRXhjZXB0aW9uT3I8UmVm
PEF1ZGlvQnVmZmVyPj4gY3JlYXRlQnVmZmVyKHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMsIHVu
c2lnbmVkIGxlbmd0aCwgZmxvYXQgc2FtcGxlUmF0ZSk7CiAKQEAgLTEzMyw2ICsxMzUsOCBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzdXNwZW5kUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lk
PiYmKTsKICAgICB2b2lkIHJlc3VtZVJlbmRlcmluZyhET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4m
Jik7CiAKKyAgICB2aXJ0dWFsIHZvaWQgZGlkU3VzcGVuZFJlbmRlcmluZyhzaXplX3QgZnJhbWUp
OworCiAgICAgQXVkaW9CdWZmZXIqIHJlbmRlclRhcmdldCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVu
ZGVyVGFyZ2V0LmdldCgpOyB9CiAKICAgICB1c2luZyBTdGF0ZSA9IEF1ZGlvQ29udGV4dFN0YXRl
OwpAQCAtMjAxLDggKzIwNSw5IEBAIHB1YmxpYzoKICAgICAvLyBSZXR1cm5zIHRydWUgb25seSBh
ZnRlciB0aGUgYXVkaW8gdGhyZWFkIGhhcyBiZWVuIHN0YXJ0ZWQgYW5kIHRoZW4gc2h1dGRvd24u
CiAgICAgYm9vbCBpc0F1ZGlvVGhyZWFkRmluaXNoZWQoKSB7IHJldHVybiBtX2lzQXVkaW9UaHJl
YWRGaW5pc2hlZDsgfQogICAgIAorICAgIGVudW0gY2xhc3MgU2hvdWxkQWxsb3dMb2NraW5nT25B
dWRpb1RocmVhZCB7IE5vLCBZZXMgfTsKICAgICAvLyBtdXN0UmVsZWFzZUxvY2sgaXMgc2V0IHRv
IHRydWUgaWYgd2UgYWNxdWlyZWQgdGhlIGxvY2sgaW4gdGhpcyBtZXRob2QgY2FsbCBhbmQgY2Fs
bGVyIG11c3QgdW5sb2NrKCksIGZhbHNlIGlmIGl0IHdhcyBwcmV2aW91c2x5IGFjcXVpcmVkLgot
ICAgIHZvaWQgbG9jayhib29sJiBtdXN0UmVsZWFzZUxvY2spOworICAgIHZvaWQgbG9jayhib29s
JiBtdXN0UmVsZWFzZUxvY2ssIFNob3VsZEFsbG93TG9ja2luZ09uQXVkaW9UaHJlYWQgPSBTaG91
bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkOjpObyk7CiAKICAgICAvLyBSZXR1cm5zIHRydWUg
aWYgd2Ugb3duIHRoZSBsb2NrLgogICAgIC8vIG11c3RSZWxlYXNlTG9jayBpcyBzZXQgdG8gdHJ1
ZSBpZiB3ZSBhY3F1aXJlZCB0aGUgbG9jayBpbiB0aGlzIG1ldGhvZCBjYWxsIGFuZCBjYWxsZXIg
bXVzdCB1bmxvY2soKSwgZmFsc2UgaWYgaXQgd2FzIHByZXZpb3VzbHkgYWNxdWlyZWQuCkBAIC0y
NzAsMTAgKzI3NSwxMCBAQCBwdWJsaWM6CiAKICAgICBjbGFzcyBBdXRvTG9ja2VyIHsKICAgICBw
dWJsaWM6Ci0gICAgICAgIGV4cGxpY2l0IEF1dG9Mb2NrZXIoQmFzZUF1ZGlvQ29udGV4dCYgY29u
dGV4dCkKKyAgICAgICAgZXhwbGljaXQgQXV0b0xvY2tlcihCYXNlQXVkaW9Db250ZXh0JiBjb250
ZXh0LCBTaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkIHNob3VsZEFsbG93TG9ja2luZ09u
QXVkaW9UaHJlYWQgPSBTaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkOjpObykKICAgICAg
ICAgICAgIDogbV9jb250ZXh0KGNvbnRleHQpCiAgICAgICAgIHsKLSAgICAgICAgICAgIG1fY29u
dGV4dC5sb2NrKG1fbXVzdFJlbGVhc2VMb2NrKTsKKyAgICAgICAgICAgIG1fY29udGV4dC5sb2Nr
KG1fbXVzdFJlbGVhc2VMb2NrLCBzaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkKTsKICAg
ICAgICAgfQogCiAgICAgICAgIH5BdXRvTG9ja2VyKCkKQEAgLTMwOSw3ICszMTQsNyBAQCBwcm90
ZWN0ZWQ6CiAKICAgICBib29sIHdpbGxCZWdpblBsYXliYWNrKCk7CiAKLSAgICB2b2lkIHVuaW5p
dGlhbGl6ZSgpOworICAgIHZpcnR1YWwgdm9pZCB1bmluaXRpYWxpemUoKTsKIAogI2lmICFSRUxF
QVNFX0xPR19ESVNBQkxFRAogICAgIGNvbnN0IGNoYXIqIGxvZ0NsYXNzTmFtZSgpIGNvbnN0IGZp
bmFsIHsgcmV0dXJuICJCYXNlQXVkaW9Db250ZXh0IjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHAKaW5kZXggYTA3
YzVlNTFjOTY2NzhkMzFkMTkwNjkxNjQxNDVjMjhiMjM2NmNiYi4uYTYyOWFjZmJkZDNlMWFkOGIx
YzZiOGY1ZTc5ZTBiYzM4NTcyYmMyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuY3BwCkBAIC0yOSw2ICsyOSw3IEBA
CiAjaW5jbHVkZSAiT2ZmbGluZUF1ZGlvQ29udGV4dC5oIgogCiAjaW5jbHVkZSAiQXVkaW9CdWZm
ZXIuaCIKKyNpbmNsdWRlICJBdWRpb1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIkRvY3VtZW50Lmgi
CiAjaW5jbHVkZSAiSlNBdWRpb0J1ZmZlci5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxp
bmVzLmg+CkBAIC02NywxMyArNjgsNDYgQEAgRXhjZXB0aW9uT3I8UmVmPE9mZmxpbmVBdWRpb0Nv
bnRleHQ+PiBPZmZsaW5lQXVkaW9Db250ZXh0OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW8KICAgICBy
ZXR1cm4gY3JlYXRlKGNvbnRleHQsIGNvbnRleHRPcHRpb25zLm51bWJlck9mQ2hhbm5lbHMsIGNv
bnRleHRPcHRpb25zLmxlbmd0aCwgY29udGV4dE9wdGlvbnMuc2FtcGxlUmF0ZSk7CiB9CiAKK3Zv
aWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6dW5pbml0aWFsaXplKCkKK3sKKyAgICBCYXNlQXVkaW9D
b250ZXh0Ojp1bmluaXRpYWxpemUoKTsKKworICAgIFZlY3RvcjxSZWZQdHI8RGVmZXJyZWRQcm9t
aXNlPj4gcHJvbWlzZXNUb1JlamVjdDsKKworICAgIHsKKyAgICAgICAgQXV0b0xvY2tlciBsb2Nr
ZXIoKnRoaXMpOworICAgICAgICBwcm9taXNlc1RvUmVqZWN0LnJlc2VydmVJbml0aWFsQ2FwYWNp
dHkobV9zdXNwZW5kUmVxdWVzdHMuc2l6ZSgpKTsKKyAgICAgICAgZm9yIChhdXRvJiBwcm9taXNl
IDogbV9zdXNwZW5kUmVxdWVzdHMudmFsdWVzKCkpCisgICAgICAgICAgICBwcm9taXNlc1RvUmVq
ZWN0LnVuY2hlY2tlZEFwcGVuZChwcm9taXNlKTsKKyAgICAgICAgbV9zdXNwZW5kUmVxdWVzdHMu
Y2xlYXIoKTsKKyAgICB9CisKKyAgICBpZiAobV9wZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21p
c2UpCisgICAgICAgIHByb21pc2VzVG9SZWplY3QuYXBwZW5kKHN0ZDo6ZXhjaGFuZ2UobV9wZW5k
aW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2UsIG51bGxwdHIpKTsKKworICAgIGZvciAoYXV0byYg
cHJvbWlzZSA6IHByb21pc2VzVG9SZWplY3QpCisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNl
cHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgZ29pbmcgYXdheSJfcyB9KTsK
K30KKwogdm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpzdGFydE9mZmxpbmVSZW5kZXJpbmcoUmVm
PERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQogewotICAgIGlmIChpc1N0b3BwZWQoKSB8fCAh
d2lsbEJlZ2luUGxheWJhY2soKSkgewotICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IgfSk7CisgICAgaWYgKGlzU3RvcHBlZCgpKSB7CisgICAgICAg
IHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQg
aXMgc3RvcHBlZCJfcyB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChtX2Rp
ZFN0YXJ0T2ZmbGluZVJlbmRlcmluZykgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0
aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJSZW5kZXJpbmcgd2FzIGFscmVhZHkgc3RhcnRlZCJf
cyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghd2lsbEJlZ2luUGxheWJh
Y2soKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRl
RXJyb3IsICJSZWZ1c2luZyB0byBzdGFydCByZW5kZXJpbmcgZm9yIHNlY3VyaXR5IHJlYXNvbnMi
IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbGF6eUluaXRpYWxpemUoKTsKKwog
ICAgIGF1dG8gcmVzdWx0ID0gZGVzdGluYXRpb24oKS0+c3RhcnRSZW5kZXJpbmcoKTsKICAgICBp
ZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgIHByb21pc2UtPnJlamVjdChyZXN1
bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKQEAgLTgyLDExICsxMTYsOTcgQEAgdm9pZCBPZmZsaW5l
QXVkaW9Db250ZXh0OjpzdGFydE9mZmxpbmVSZW5kZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4m
JiBwcm9taXNlKQogCiAgICAgbWFrZVBlbmRpbmdBY3Rpdml0eSgpOwogICAgIG1fcGVuZGluZ09m
ZmxpbmVSZW5kZXJpbmdQcm9taXNlID0gV1RGTW92ZShwcm9taXNlKTsKKyAgICBtX2RpZFN0YXJ0
T2ZmbGluZVJlbmRlcmluZyA9IHRydWU7CiAgICAgc2V0U3RhdGUoU3RhdGU6OlJ1bm5pbmcpOwog
fQogCit2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OnN1c3BlbmRPZmZsaW5lUmVuZGVyaW5nKGRv
dWJsZSBzdXNwZW5kVGltZSwgUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQoreworICAg
IGlmIChpc1N0b3BwZWQoKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsg
SW52YWxpZFN0YXRlRXJyb3IsICJDb250ZXh0IGlzIHN0b3BwZWQiX3MgfSk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBpZiAoc3VzcGVuZFRpbWUgPCAwKSB7CisgICAgICAgIHByb21p
c2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgInN1c3BlbmRUaW1lIGNh
bm5vdCBiZSBuZWdhdGl2ZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGRv
dWJsZSB0b3RhbFJlbmRlckR1cmF0aW9uID0gcmVuZGVyVGFyZ2V0KCktPmxlbmd0aCgpIC8gc2Ft
cGxlUmF0ZSgpOworICAgIGlmICh0b3RhbFJlbmRlckR1cmF0aW9uIDw9IHN1c3BlbmRUaW1lKSB7
CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwg
InN1c3BlbmRUaW1lIGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gdG90YWwgcmVuZGVyaW5nIGR1cmF0
aW9uIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgc2l6ZV90IGZyYW1lID0g
QXVkaW9VdGlsaXRpZXM6OnRpbWVUb1NhbXBsZUZyYW1lKHN1c3BlbmRUaW1lLCBzYW1wbGVSYXRl
KCkpOworICAgIGZyYW1lID0gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpyZW5kZXJRdWFu
dHVtU2l6ZSAqICgoZnJhbWUgKyBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6OnJlbmRlclF1
YW50dW1TaXplIC0gMSkgLyBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6OnJlbmRlclF1YW50
dW1TaXplKTsKKyAgICBpZiAoZnJhbWUgPCBjdXJyZW50U2FtcGxlRnJhbWUoKSkgeworICAgICAg
ICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJTdXNwZW5z
aW9uIGZyYW1lIGlzIGVhcmxpZXIgdGhhbiBjdXJyZW50IGZyYW1lIl9zIH0pOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgQXV0b0xvY2tlciBsb2NrZXIoKnRoaXMpOworICAgIGF1dG8g
YWRkUmVzdWx0ID0gbV9zdXNwZW5kUmVxdWVzdHMuYWRkKGZyYW1lLCBwcm9taXNlLnB0cigpKTsK
KyAgICBpZiAoIWFkZFJlc3VsdC5pc05ld0VudHJ5KSB7CisgICAgICAgIHByb21pc2UtPnJlamVj
dChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIlRoZXJlIGlzIGFscmVhZHkgYSBwZW5k
aW5nIHN1c3BlbmQgcmVxdWVzdCBhdCB0aGlzIGZyYW1lIl9zIH0pOworICAgICAgICByZXR1cm47
CisgICAgfQorfQorCit2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OnJlc3VtZU9mZmxpbmVSZW5k
ZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQoreworICAgIGlmICghbV9kaWRT
dGFydE9mZmxpbmVSZW5kZXJpbmcpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlv
biB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNv
bnRleHQgdGhhdCBoYXMgbm90IHN0YXJ0ZWQiX3MgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisgICAgaWYgKGlzQ2xvc2VkKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlv
biB7IEludmFsaWRTdGF0ZUVycm9yLCAiQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNv
bnRleHQgdGhhdCBpcyBjbG9zZWQiX3MgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAg
aWYgKHN0YXRlKCkgPT0gQXVkaW9Db250ZXh0U3RhdGU6OlJ1bm5pbmcpIHsKKyAgICAgICAgcHJv
bWlzZS0+cmVzb2x2ZSgpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIEFTU0VSVChzdGF0
ZSgpID09IEF1ZGlvQ29udGV4dFN0YXRlOjpTdXNwZW5kZWQpOworCisgICAgYXV0byByZXN1bHQg
PSBkZXN0aW5hdGlvbigpLT5zdGFydFJlbmRlcmluZygpOworICAgIGlmIChyZXN1bHQuaGFzRXhj
ZXB0aW9uKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0
aW9uKCkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbWFrZVBlbmRpbmdBY3Rpdml0
eSgpOworICAgIHNldFN0YXRlKFN0YXRlOjpSdW5uaW5nKTsKKyAgICBwcm9taXNlLT5yZXNvbHZl
KCk7Cit9CisKK2Jvb2wgT2ZmbGluZUF1ZGlvQ29udGV4dDo6c2hvdWxkU3VzcGVuZCgpCit7Cisg
ICAgQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgLy8gTm90ZSB0aGF0IEF1dG9Mb2NrZXIg
dXNlcyBsb2NrKCkgaW5zdGVhZCBvZiB0cnlMb2NrKCkuIFdlIHVzdWFsbHkgYXZvaWQgYmxvY2tp
bmcgdGhlIEF1ZGlvVGhyZWFkCisgICAgLy8gb24gbG9jaygpIGJ1dCB3ZSBkb24ndCBoYXZlIGEg
Y2hvaWNlIGhlcmUgc2luY2UgdGhlIHN1c3BlbnNpb24gbmVlZCB0byBiZSBleGFjdC4KKyAgICBB
dXRvTG9ja2VyIGxvY2tlcigqdGhpcywgU2hvdWxkQWxsb3dMb2NraW5nT25BdWRpb1RocmVhZDo6
WWVzKTsKKyAgICByZXR1cm4gbV9zdXNwZW5kUmVxdWVzdHMuY29udGFpbnMoY3VycmVudFNhbXBs
ZUZyYW1lKCkpOworfQorCit2b2lkIE9mZmxpbmVBdWRpb0NvbnRleHQ6OmRpZFN1c3BlbmRSZW5k
ZXJpbmcoc2l6ZV90IGZyYW1lKQoreworICAgIEJhc2VBdWRpb0NvbnRleHQ6OmRpZFN1c3BlbmRS
ZW5kZXJpbmcoZnJhbWUpOworCisgICAgUmVmUHRyPERlZmVycmVkUHJvbWlzZT4gcHJvbWlzZTsK
KyAgICB7CisgICAgICAgIEF1dG9Mb2NrZXIgbG9ja2VyKCp0aGlzKTsKKyAgICAgICAgcHJvbWlz
ZSA9IG1fc3VzcGVuZFJlcXVlc3RzLnRha2UoZnJhbWUpOworICAgIH0KKyAgICBBU1NFUlQocHJv
bWlzZSk7CisgICAgaWYgKHByb21pc2UpCisgICAgICAgIHByb21pc2UtPnJlc29sdmUoKTsKK30K
Kwogdm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRGaW5pc2hPZmZsaW5lUmVuZGVyaW5nKEV4
Y2VwdGlvbk9yPFJlZjxBdWRpb0J1ZmZlcj4+JiYgcmVzdWx0KQogeworICAgIG1fZGlkU3RhcnRP
ZmZsaW5lUmVuZGVyaW5nID0gZmFsc2U7CisKICAgICBpZiAoIW1fcGVuZGluZ09mZmxpbmVSZW5k
ZXJpbmdQcm9taXNlKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmgKaW5kZXggOGJmMGEzZDAy
YTgzMDIyYzYzZDExNmUxMmUyOGEyODBkZjNhZTVjZi4uMTk2ZWE1NzE2NzY2MWY3ZTdhMWNkNGQy
MzJjODhkZTAyNmEwY2IyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmgKQEAgLTI3LDYgKzI3LDkgQEAKICNpbmNsdWRl
ICJCYXNlQXVkaW9Db250ZXh0LmgiCiAjaW5jbHVkZSAiSlNET01Qcm9taXNlRGVmZXJyZWQuaCIK
ICNpbmNsdWRlICJPZmZsaW5lQXVkaW9Db250ZXh0T3B0aW9ucy5oIgorI2luY2x1ZGUgIk9mZmxp
bmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5j
bHVkZSA8d3RmL0xvY2suaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0zOCwxNSArNDEs
MjQgQEAgcHVibGljOgogICAgIHN0YXRpYyBFeGNlcHRpb25PcjxSZWY8T2ZmbGluZUF1ZGlvQ29u
dGV4dD4+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgY29uc3QgT2ZmbGluZUF1ZGlv
Q29udGV4dE9wdGlvbnMmKTsKIAogICAgIHZvaWQgc3RhcnRPZmZsaW5lUmVuZGVyaW5nKFJlZjxE
ZWZlcnJlZFByb21pc2U+JiYpOworICAgIHZvaWQgc3VzcGVuZE9mZmxpbmVSZW5kZXJpbmcoZG91
YmxlIHN1c3BlbmRUaW1lLCBSZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsKKyAgICB2b2lkIHJlc3Vt
ZU9mZmxpbmVSZW5kZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4mJik7CiAKICAgICB1bnNpZ25l
ZCBsZW5ndGgoKSBjb25zdDsKKyAgICBib29sIHNob3VsZFN1c3BlbmQoKSBmaW5hbDsKKworICAg
IE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZSogZGVzdGluYXRpb24oKSB7IHJldHVybiBzdGF0
aWNfY2FzdDxPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUqPihCYXNlQXVkaW9Db250ZXh0Ojpk
ZXN0aW5hdGlvbigpKTsgfQogCiBwcml2YXRlOgogICAgIE9mZmxpbmVBdWRpb0NvbnRleHQoRG9j
dW1lbnQmLCBBdWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KTsKIAogICAgIHZvaWQgZGlkRmluaXNo
T2ZmbGluZVJlbmRlcmluZyhFeGNlcHRpb25PcjxSZWY8QXVkaW9CdWZmZXI+PiYmKSBmaW5hbDsK
KyAgICB2b2lkIGRpZFN1c3BlbmRSZW5kZXJpbmcoc2l6ZV90IGZyYW1lKSBmaW5hbDsKKyAgICB2
b2lkIHVuaW5pdGlhbGl6ZSgpIGZpbmFsOwogCiAgICAgUmVmUHRyPERlZmVycmVkUHJvbWlzZT4g
bV9wZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2U7CisgICAgSGFzaE1hcDx1bnNpZ25lZCAv
KiBmcmFtZSAqLywgUmVmUHRyPERlZmVycmVkUHJvbWlzZT4sIFdURjo6SW50SGFzaDx1bnNpZ25l
ZD4sIFdURjo6VW5zaWduZWRXaXRoWmVyb0tleUhhc2hUcmFpdHM8dW5zaWduZWQ+PiBtX3N1c3Bl
bmRSZXF1ZXN0czsKKyAgICBib29sIG1fZGlkU3RhcnRPZmZsaW5lUmVuZGVyaW5nIHsgZmFsc2Ug
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsCmluZGV4IDZlZDA0
ZjczNDA4NGM2M2IxZDMzZWY4NmViY2RiYjg4NzJmZWY3YmYuLjU2OGM4YzFmNzk5MTI0OTgxZmJi
M2FlZjVhNGZmN2U2ODcxNWIxYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbApAQCAtMzIsOCArMzIsOCBAQAog
ICAgIAogICAgIFtJbXBsZW1lbnRlZEFzPXN0YXJ0T2ZmbGluZVJlbmRlcmluZ10gUHJvbWlzZTxB
dWRpb0J1ZmZlcj4gc3RhcnRSZW5kZXJpbmcoKTsKIAotICAgIFtJbXBsZW1lbnRlZEFzPXJlc3Vt
ZVJlbmRlcmluZ10gUHJvbWlzZTx2b2lkPiByZXN1bWUoKTsKLSAgICBbSW1wbGVtZW50ZWRBcz1z
dXNwZW5kUmVuZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHN1c3BlbmQoKTsgLy8gRklYTUU6IE1pc3Np
bmcgc3VzcGVuZFRpbWUgcGFyYW1ldGVyLgorICAgIFtJbXBsZW1lbnRlZEFzPXJlc3VtZU9mZmxp
bmVSZW5kZXJpbmddIFByb21pc2U8dm9pZD4gcmVzdW1lKCk7CisgICAgW0ltcGxlbWVudGVkQXM9
c3VzcGVuZE9mZmxpbmVSZW5kZXJpbmddIFByb21pc2U8dm9pZD4gc3VzcGVuZChkb3VibGUgc3Vz
cGVuZFRpbWUpOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3Ro
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVB
dWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKaW5kZXggNTNjOWM2OTFkYjYyOWE5OWZi
MWMxODVlNDQyZTVlZjc4MTA0MmRjOS4uMDA0ZDFkNWM4NDA0YzljZTgxNWE1Nzk4NGY4OWY1NzFi
ODI3YTU1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZs
aW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcApAQCAtMzksMTIgKzM5LDEy
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9JTVBMKE9m
ZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZSk7CiAgICAgCi1jb25zdCBzaXplX3QgcmVuZGVyUXVh
bnR1bVNpemUgPSAxMjg7ICAgIAorY29uc3Qgc2l6ZV90IE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZTo6cmVuZGVyUXVhbnR1bVNpemUgPSAxMjg7CiAKIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKEJhc2VBdWRpb0NvbnRleHQmIGNvbnRl
eHQsIEF1ZGlvQnVmZmVyKiByZW5kZXJUYXJnZXQpCiAgICAgOiBBdWRpb0Rlc3RpbmF0aW9uTm9k
ZShjb250ZXh0KQogICAgICwgbV9yZW5kZXJUYXJnZXQocmVuZGVyVGFyZ2V0KQotICAgICwgbV9z
dGFydGVkUmVuZGVyaW5nKGZhbHNlKQorICAgICwgbV9mcmFtZXNUb1Byb2Nlc3MocmVuZGVyVGFy
Z2V0LT5sZW5ndGgoKSkKIHsKICAgICBtX3JlbmRlckJ1cyA9IEF1ZGlvQnVzOjpjcmVhdGUocmVu
ZGVyVGFyZ2V0LT5udW1iZXJPZkNoYW5uZWxzKCksIHJlbmRlclF1YW50dW1TaXplKTsKIH0KQEAg
LTkyLDQ5ICs5Miw1OSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlv
bk5vZGU6OnN0YXJ0UmVuZGVyaW5nKCkKICAgICAvLyBGSVhNRTogU2hvdWxkIHdlIGNhbGwgbGF6
eUluaXRpYWxpemUgaGVyZT8KICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHByb2JhYmx5IGxpbWl0
IHRoZSBudW1iZXIgb2YgdGhyZWFkcyB3ZSBjcmVhdGUgZm9yIG9mZmxpbmUgYXVkaW8uCiAgICAg
bV9yZW5kZXJUaHJlYWQgPSBUaHJlYWQ6OmNyZWF0ZSgib2ZmbGluZSByZW5kZXJlciIsIFt0aGlz
XSB7Ci0gICAgICAgIGJvb2wgZGlkUmVuZGVyID0gb2ZmbGluZVJlbmRlcigpOwotICAgICAgICBj
YWxsT25NYWluVGhyZWFkKFt0aGlzLCBkaWRSZW5kZXJdIHsKLSAgICAgICAgICAgIGNvbnRleHQo
KS5maW5pc2hlZFJlbmRlcmluZyhkaWRSZW5kZXIpOworICAgICAgICBhdXRvIHJlc3VsdCA9IG9m
ZmxpbmVSZW5kZXIoKTsKKyAgICAgICAgY2FsbE9uTWFpblRocmVhZChbdGhpcywgcmVzdWx0LCBj
dXJyZW50U2FtcGxlRnJhbWUgPSBtX2N1cnJlbnRTYW1wbGVGcmFtZV0geworICAgICAgICAgICAg
bV9zdGFydGVkUmVuZGVyaW5nID0gZmFsc2U7CisgICAgICAgICAgICBzd2l0Y2ggKHJlc3VsdCkg
eworICAgICAgICAgICAgY2FzZSBPZmZsaW5lUmVuZGVyUmVzdWx0OjpGYWlsdXJlOgorICAgICAg
ICAgICAgICAgIGNvbnRleHQoKS5maW5pc2hlZFJlbmRlcmluZyhmYWxzZSk7CisgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkNvbXBs
ZXRlOgorICAgICAgICAgICAgICAgIGNvbnRleHQoKS5maW5pc2hlZFJlbmRlcmluZyh0cnVlKTsK
KyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgT2ZmbGluZVJlbmRlclJl
c3VsdDo6U3VzcGVuZGVkOgorICAgICAgICAgICAgICAgIGNvbnRleHQoKS5kaWRTdXNwZW5kUmVu
ZGVyaW5nKGN1cnJlbnRTYW1wbGVGcmFtZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBkZXJlZigpOwogICAgICAgICB9KTsKICAgICB9LCBUaHJl
YWRUeXBlOjpBdWRpbyk7CiAgICAgcmV0dXJuIHsgfTsKIH0KIAotYm9vbCBPZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIoKQorYXV0byBPZmZsaW5lQXVkaW9EZXN0aW5h
dGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIoKSAtPiBPZmZsaW5lUmVuZGVyUmVzdWx0CiB7CiAgICAg
QVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CiAgICAgQVNTRVJUKG1fcmVuZGVyQnVzLmdldCgpKTsK
KwogICAgIGlmICghbV9yZW5kZXJCdXMuZ2V0KCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICAgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OkZhaWx1cmU7CiAKLSAgICBib29sIGlz
QXVkaW9Db250ZXh0SW5pdGlhbGl6ZWQgPSBjb250ZXh0KCkuaXNJbml0aWFsaXplZCgpOwotICAg
IC8vIEZJWE1FOiBXZSB1c2VkIHRvIGFzc2VydCB0aGF0IGlzQXVkaW9Db250ZXh0SW5pdGlhbGl6
ZWQgaXMgdHJ1ZSBoZXJlLgotICAgIC8vIEJ1dCBpdCdzIHRyaXZpYWxseSBmYWxzZSBpbiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9m
ZmxpbmVhdWRpb2NvbnRleHQtaW50ZXJmYWNlL2N1cnJlbnQtdGltZS1ibG9jay1zaXplLmh0bWwg
Ci0gICAgaWYgKCFpc0F1ZGlvQ29udGV4dEluaXRpYWxpemVkKQotICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgUkVMRUFTRV9BU1NFUlQoY29udGV4dCgpLmlzSW5pdGlhbGl6ZWQoKSk7CiAKICAg
ICBib29sIGNoYW5uZWxzTWF0Y2ggPSBtX3JlbmRlckJ1cy0+bnVtYmVyT2ZDaGFubmVscygpID09
IG1fcmVuZGVyVGFyZ2V0LT5udW1iZXJPZkNoYW5uZWxzKCk7CiAgICAgQVNTRVJUKGNoYW5uZWxz
TWF0Y2gpOwogICAgIGlmICghY2hhbm5lbHNNYXRjaCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVyZTsKIAogICAgIGJvb2wg
aXNSZW5kZXJCdXNBbGxvY2F0ZWQgPSBtX3JlbmRlckJ1cy0+bGVuZ3RoKCkgPj0gcmVuZGVyUXVh
bnR1bVNpemU7CiAgICAgQVNTRVJUKGlzUmVuZGVyQnVzQWxsb2NhdGVkKTsKICAgICBpZiAoIWlz
UmVuZGVyQnVzQWxsb2NhdGVkKQotICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVy
biBPZmZsaW5lUmVuZGVyUmVzdWx0OjpGYWlsdXJlOwogCiAgICAgLy8gQnJlYWsgdXAgdGhlIHJl
bmRlciB0YXJnZXQgaW50byBzbWFsbGVyICJyZW5kZXIgcXVhbnRpemUiIHNpemVkIHBpZWNlcy4K
ICAgICAvLyBSZW5kZXIgdW50aWwgd2UncmUgZmluaXNoZWQuCi0gICAgc2l6ZV90IGZyYW1lc1Rv
UHJvY2VzcyA9IG1fcmVuZGVyVGFyZ2V0LT5sZW5ndGgoKTsKICAgICB1bnNpZ25lZCBudW1iZXJP
ZkNoYW5uZWxzID0gbV9yZW5kZXJUYXJnZXQtPm51bWJlck9mQ2hhbm5lbHMoKTsKIAogICAgIHVu
c2lnbmVkIG4gPSAwOwotICAgIHdoaWxlIChmcmFtZXNUb1Byb2Nlc3MgPiAwKSB7CisgICAgd2hp
bGUgKG1fZnJhbWVzVG9Qcm9jZXNzID4gMCkgeworICAgICAgICBpZiAoY29udGV4dCgpLnNob3Vs
ZFN1c3BlbmQoKSkKKyAgICAgICAgICAgIHJldHVybiBPZmZsaW5lUmVuZGVyUmVzdWx0OjpTdXNw
ZW5kZWQ7CisKICAgICAgICAgLy8gUmVuZGVyIG9uZSByZW5kZXIgcXVhbnR1bS4KICAgICAgICAg
cmVuZGVyKDAsIG1fcmVuZGVyQnVzLmdldCgpLCByZW5kZXJRdWFudHVtU2l6ZSk7CiAgICAgICAg
IAotICAgICAgICBzaXplX3QgZnJhbWVzQXZhaWxhYmxlVG9Db3B5ID0gc3RkOjptaW4oZnJhbWVz
VG9Qcm9jZXNzLCByZW5kZXJRdWFudHVtU2l6ZSk7CisgICAgICAgIHNpemVfdCBmcmFtZXNBdmFp
bGFibGVUb0NvcHkgPSBzdGQ6Om1pbihtX2ZyYW1lc1RvUHJvY2VzcywgcmVuZGVyUXVhbnR1bVNp
emUpOwogICAgICAgICAKICAgICAgICAgZm9yICh1bnNpZ25lZCBjaGFubmVsSW5kZXggPSAwOyBj
aGFubmVsSW5kZXggPCBudW1iZXJPZkNoYW5uZWxzOyArK2NoYW5uZWxJbmRleCkgewogICAgICAg
ICAgICAgY29uc3QgZmxvYXQqIHNvdXJjZSA9IG1fcmVuZGVyQnVzLT5jaGFubmVsKGNoYW5uZWxJ
bmRleCktPmRhdGEoKTsKQEAgLTE0MywxMCArMTUzLDEwIEBAIGJvb2wgT2ZmbGluZUF1ZGlvRGVz
dGluYXRpb25Ob2RlOjpvZmZsaW5lUmVuZGVyKCkKICAgICAgICAgfQogICAgICAgICAKICAgICAg
ICAgbiArPSBmcmFtZXNBdmFpbGFibGVUb0NvcHk7Ci0gICAgICAgIGZyYW1lc1RvUHJvY2VzcyAt
PSBmcmFtZXNBdmFpbGFibGVUb0NvcHk7CisgICAgICAgIG1fZnJhbWVzVG9Qcm9jZXNzIC09IGZy
YW1lc0F2YWlsYWJsZVRvQ29weTsKICAgICB9CiAKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1
cm4gT2ZmbGluZVJlbmRlclJlc3VsdDo6Q29tcGxldGU7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGlu
ZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oCmluZGV4IDQ2Y2YzODBhOTE5MzNhMzc5MTMz
NDc2MmNmNTcxZjZlNTk5ZDhmNjYuLjRlYmJiODA0ZDM0MWYwYTZiMmY5NjljZTU4YWMwOTk3MGY2
ZGI1ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGlu
ZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaApAQCAtNTAsMTMgKzUwLDE5IEBAIHB1
YmxpYzoKIAogICAgIC8vIEF1ZGlvRGVzdGluYXRpb25Ob2RlCiAgICAgdm9pZCBlbmFibGVJbnB1
dChjb25zdCBTdHJpbmcmKSBvdmVycmlkZSB7IH0KLSAgICBFeGNlcHRpb25Pcjx2b2lkPiBzdGFy
dFJlbmRlcmluZygpIG92ZXJyaWRlOworICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHN0YXJ0UmVuZGVy
aW5nKCkgZmluYWw7CiAKICAgICBmbG9hdCBzYW1wbGVSYXRlKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gbV9yZW5kZXJUYXJnZXQtPnNhbXBsZVJhdGUoKTsgfQogCisgICAgc3RhdGljIGNvbnN0IHNp
emVfdCByZW5kZXJRdWFudHVtU2l6ZTsKKwogcHJpdmF0ZToKICAgICBPZmZsaW5lQXVkaW9EZXN0
aW5hdGlvbk5vZGUoQmFzZUF1ZGlvQ29udGV4dCYsIEF1ZGlvQnVmZmVyKiByZW5kZXJUYXJnZXQp
OwogCisgICAgZW51bSBjbGFzcyBPZmZsaW5lUmVuZGVyUmVzdWx0IHsgRmFpbHVyZSwgU3VzcGVu
ZGVkLCBDb21wbGV0ZSB9OworICAgIE9mZmxpbmVSZW5kZXJSZXN1bHQgb2ZmbGluZVJlbmRlcigp
OworICAgIHZvaWQgbm90aWZ5T2ZmbGluZVJlbmRlcmluZ1N1c3BlbmRlZCgpOworCiAgICAgLy8g
VGhpcyBBdWRpb05vZGUgcmVuZGVycyBpbnRvIHRoaXMgQXVkaW9CdWZmZXIuCiAgICAgUmVmUHRy
PEF1ZGlvQnVmZmVyPiBtX3JlbmRlclRhcmdldDsKICAgICAKQEAgLTY1LDggKzcxLDggQEAgcHJp
dmF0ZToKICAgICAKICAgICAvLyBSZW5kZXJpbmcgdGhyZWFkLgogICAgIFJlZlB0cjxUaHJlYWQ+
IG1fcmVuZGVyVGhyZWFkOwotICAgIGJvb2wgbV9zdGFydGVkUmVuZGVyaW5nOwotICAgIGJvb2wg
b2ZmbGluZVJlbmRlcigpOworICAgIHNpemVfdCBtX2ZyYW1lc1RvUHJvY2VzczsKKyAgICBib29s
IG1fc3RhcnRlZFJlbmRlcmluZyB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggNzJlMWQ0OWU4M2M0YzFlYTE1ZTZlNDllODNkY2E0OGM1YTIyYjA3Yi4uMDBi
ZDk1MmRhMTRkM2IxNDAyYjA3Y2JiYjliYTMwNTM3Y2FmZGM2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDky
IEBACisyMDIwLTA4LTEzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWRkIHN1cHBvcnQgZm9yIHN1c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9D
b250ZXh0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTU0MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJ
bXBvcnQgdGVzdHMgZm9yIHRoaXMgZmVhdHVyZSBmcm9tIEJsaW5rIHNpbmNlIHRoZSBXUFQgY292
ZXJhZ2UgaXMgbm90IGdyZWF0LgorCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29u
dGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMuaHRtbDog
QWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJl
c3VtZS1ldmVudGhhbmRsZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRp
by9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLWdyYXBoLW1hbmlwdWxhdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0
aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQt
c3VzcGVuZC1yZXN1bWUtcHJvbWlzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLXNlcXVlbmNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2Zm
bGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQtdXRpbC5qczogQWRkZWQuCisgICAgICAg
IChjb21wYXJlQnVmZmVyc1dpdGhDb25zdHJhaW50cyk6CisgICAgICAgIChjcmVhdGVJbXB1bHNl
QnVmZmVyKToKKyAgICAgICAgKGNyZWF0ZUxpbmVhclJhbXBCdWZmZXIpOgorICAgICAgICAoY3Jl
YXRlQ29uc3RhbnRCdWZmZXIpOgorICAgICAgICAoY3JlYXRlU3RlcmVvSW1wdWxzZUJ1ZmZlcik6
CisgICAgICAgICh0aW1lVG9TYW1wbGVGcmFtZSk6CisgICAgICAgIChncmFpbkxlbmd0aEluU2Ft
cGxlRnJhbWVzKToKKyAgICAgICAgKGlzVmFsaWROdW1iZXIpOgorICAgICAgICAqIHdlYmF1ZGlv
L3Jlc291cmNlcy9hdWRpdC5qczogQWRkZWQuCisgICAgICAgIChfbG9nRXJyb3IpOgorICAgICAg
ICAoX2xvZ1Bhc3NlZCk6CisgICAgICAgIChfbG9nRmFpbGVkKToKKyAgICAgICAgKF90aHJvd0V4
Y2VwdGlvbik6CisgICAgICAgIChfZ2VuZXJhdGVEZXNjcmlwdGlvbik6CisgICAgICAgIChfZm9y
bWF0RmFpbHVyZUVudHJ5KToKKyAgICAgICAgKF9jbG9zZVRvVGhyZXNob2xkKToKKyAgICAgICAg
KFNob3VsZCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLl9wcm9jZXNzQXJndW1lbnRzKToK
KyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuX2J1aWxkUmVzdWx0VGV4dCk6CisgICAgICAgIChT
aG91bGQucHJvdG90eXBlLl9maW5hbGl6ZSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLl9h
c3NlcnQpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5nZXQgcmVzdWx0KToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuZ2V0IGRldGFpbCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBl
LmV4aXN0KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUudGhyb3cpOgorICAgICAgICAoU2hv
dWxkLnByb3RvdHlwZS5ub3RUaHJvdyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlUmVz
b2x2ZWQpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZVJlamVjdGVkKToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuYmVSZWplY3RlZFdpdGgpOgorICAgICAgICAoU2hvdWxkLnByb3Rv
dHlwZS5iZVRydWUpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZUZhbHNlKToKKyAgICAg
ICAgKFNob3VsZC5wcm90b3R5cGUuYmVFcXVhbFRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5
cGUubm90QmVFcXVhbFRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVOYU4pOgorICAg
ICAgICAoU2hvdWxkLnByb3RvdHlwZS5ub3RCZU5hTik6CisgICAgICAgIChTaG91bGQucHJvdG90
eXBlLmJlR3JlYXRlclRoYW4pOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZUdyZWF0ZXJU
aGFuT3JFcXVhbFRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVMZXNzVGhhbik6Cisg
ICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlTGVzc1RoYW5PckVxdWFsVG8pOgorICAgICAgICAo
U2hvdWxkLnByb3RvdHlwZS5iZUNvbnN0YW50VmFsdWVPZik6CisgICAgICAgIChTaG91bGQucHJv
dG90eXBlLm5vdEJlQ29uc3RhbnRWYWx1ZU9mKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUu
YmVFcXVhbFRvQXJyYXkpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5jb250YWluVmFsdWVz
KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUubm90R2xpdGNoKToKKyAgICAgICAgKFNob3Vs
ZC5wcm90b3R5cGUuYmVDbG9zZVRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVDbG9z
ZVRvQXJyYXkpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5tZXNzYWdlKToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuaGF2ZU93blByb3BlcnR5KToKKyAgICAgICAgKFNob3VsZC5wcm90
b3R5cGUubm90SGF2ZU93blByb3BlcnR5KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuaW5o
ZXJpdEZyb20pOgorICAgICAgICAoVGFzayk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5nZXQg
bGFiZWwpOgorICAgICAgICAoVGFzay5wcm90b3R5cGUuZ2V0IHN0YXRlKToKKyAgICAgICAgKFRh
c2sucHJvdG90eXBlLmdldCByZXN1bHQpOgorICAgICAgICAoVGFzay5wcm90b3R5cGUuc2hvdWxk
KToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLnJ1bik6CisgICAgICAgIChUYXNrLnByb3RvdHlw
ZS51cGRhdGUpOgorICAgICAgICAoVGFzay5wcm90b3R5cGUuZG9uZSk6CisgICAgICAgIChUYXNr
LnByb3RvdHlwZS50aW1lb3V0KToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLmlzUGFzc2VkKToK
KyAgICAgICAgKFRhc2sucHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKFRhc2tSdW5uZXIp
OgorICAgICAgICAoVGFza1J1bm5lci5wcm90b3R5cGUuX2ZpbmlzaCk6CisgICAgICAgIChUYXNr
UnVubmVyLnByb3RvdHlwZS5kZWZpbmUpOgorICAgICAgICAoVGFza1J1bm5lci5wcm90b3R5cGUu
cnVuKToKKyAgICAgICAgKGxvYWRGaWxlRnJvbVVybCk6CisgICAgICAgIChyZXR1cm4uY3JlYXRl
VGFza1J1bm5lcik6CisgICAgICAgICh3aW5kb3cuQXVkaXQpOgorCiAyMDIwLTA4LTEzICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbbWFjT1NdIFpvb21l
ZC1pbiBzZWFyY2ggZmllbGQgaXMgY2xpcHBlZCBvdXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IGZkYzE3ZDJlOWZlMzhjYzkwOGFhYjQxYTUzNzM1OTUzNGM1OTU5OWUuLmM1YzYw
YmM3ZDhhODRmYTliYTA0OTI2MTNkMDI3ZDY4YWM4ZDgwYzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTA4LTEzICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1c3BlbmRpbmcgLyBy
ZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyBub3cgdGhhdCBtb3Jl
IGNoZWNrcyBhcmUgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvYnVmZmVyc291
cmNlbm9kZS1pbnRlcmZhY2UvYWN0aXZlLXByb2Nlc3NpbmcuaHR0cHMtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2Uvc3VzcGVuZC1hZnRlci1jb25zdHJ1Y3QtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1hdWRpb25vZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlv
cGFyYW0tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNlL2F1ZGlvd29ya2xldG5v
ZGUtY2hhbm5lbC1jb3VudC5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZh
Y2Uvc3VzcGVuZGVkLWNvbnRleHQtbWVzc2FnZXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1
YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5u
ZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRpb2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNo
YW4tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
b2ZmbGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJsb2NrLXNpemUtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2Uvb3NjLWJhc2ljLXdhdmVmb3JtLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvYXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24tYmFzaWMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5LWN1cnZl
LWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wOC0xMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJlYmFzZWxpbmUgV1BUIHRlc3RzIHRoYXQgYXJl
IGN1cnJlbnRseSBtYXJrZWQgYXMgZmxha3kuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0
RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAwYmM3ZWFl
ZTVmNDIxMGIxMWQ0MTE0MDgzNWI2OGQyMDQ1N2FhZGEzLi44NDFmMTlkODg2MjMwZGRhNzk5OTJi
OGM0M2VlNGJmYTM2ZWIwYjUwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRp
b25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTMyNSw2ICszMjUsOSBA
QCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252
b2x2ZXItdXBtaXhpbmctMS1jaGFubmVsLXJlc3BvbnNlLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5LWN1cnZlLmh0bWwgWyBQ
YXNzIEZhaWx1cmUgXQogCisjIFRoaXMgdGVzdCBwYXNzZXMgYnV0IHByaW50cyBhIGRpZmZlcmVu
dCB2YWx1ZSBhbG1vc3QgZXZlcnkgdGltZS4KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29u
dm9sdmVyLXJlc3BvbnNlLTQtY2hhbi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KKwogCiAjIFNvbWUg
b2YgdGhlIHN1YmNoZWNrcyBhcmUgZmFpbGluZyBhbmQgcHJpbnQgb3V0IGEgZGlmZmVyZW50IHZh
bHVlIGV2ZXJ5IHRpbWUuCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVyZmFjZS9kZXR1bmUtbGltaXRp
bmcuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGVh
ZjliMGUxZDAxMzk0Mjk4Y2QwYjNlNzI5OGM0N2NmN2ZmMmZjNGYuLjMzNTExZDhkNWU3MGI4OGFh
ZmM2YTdlZDkyYjkyOTk3YTcwNmU4ZjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
MTQsNyArMTE0LDcgQEAgUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogZXhpc3Rl
bmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3QKIFBBU1MgT2ZmbGluZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ug
cHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCiBQQVNTIE9mZmxpbmVB
dWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gc3RhcnRSZW5kZXJpbmcoKSAKIFBBU1Mg
T2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiByZXN1bWUoKSAKLUZBSUwg
T2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBzdXNwZW5kKGRvdWJsZSkg
YXNzZXJ0X2VxdWFsczogcHJvcGVydHkgaGFzIHdyb25nIC5sZW5ndGggZXhwZWN0ZWQgMSBidXQg
Z290IDAKK1BBU1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBzdXNw
ZW5kKGRvdWJsZSkgCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBhdHRyaWJ1
dGUgbGVuZ3RoIAogUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogYXR0cmlidXRl
IG9uY29tcGxldGUgCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgbXVzdCBiZSBwcmltYXJ5IGlu
dGVyZmFjZSBvZiBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCAxLCBzYW1wbGVfcmF0ZSkgCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvYnVmZmVyc291cmNlbm9kZS1pbnRlcmZhY2Uv
YWN0aXZlLXByb2Nlc3NpbmcuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRp
b2J1ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNlL2FjdGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCBhNjRjYmU5MDE1YmI0ZDFkY2IzZThmMTNhYmQ3OWNhZDZhMzdhOTQ4Li4w
ODc2OTVhY2IzYzk0MGFkODRlZWEyYTZkZjE0MzU5ODBkODUwZjM3IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWF1ZGlvYnVmZmVyc291cmNlbm9kZS1pbnRlcmZhY2UvYWN0aXZlLXByb2Nlc3Np
bmcuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9idWZmZXJzb3Vy
Y2Vub2RlLWludGVyZmFjZS9hY3RpdmUtcHJvY2Vzc2luZy5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTEsMTEgKzEsMjIgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0
aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRl
LgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rpb246
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElUIFRBU0sg
UlVOTkVSIFNUQVJURUQuIAogRkFJTCBFeGVjdXRpbmcgIlNldHVwIGdyYXBoIiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdjb250ZXh0LmF1ZGlvV29ya2xl
dC5hZGRNb2R1bGUnKSIKLVRJTUVPVVQgRXhlY3V0aW5nICJ2ZXJpZnkgY291bnQgY2hhbmdlIiBU
ZXN0IHRpbWVkIG91dAotTk9UUlVOIEF1ZGl0IHJlcG9ydCAKK1BBU1MgRXhlY3V0aW5nICJ2ZXJp
ZnkgY291bnQgY2hhbmdlIiAKK1BBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtTZXR1cCBncmFw
aF0gIAogUEFTUyA+IFt2ZXJpZnkgY291bnQgY2hhbmdlXSAgCitGQUlMIFggTnVtYmVyIG9mIGNo
YW5uZWxzIGNoYW5nZWQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgSW5kZXggd2hlcmUgaW5wdXQgY2hhbm5lbCBjb3Vu
dCBjaGFuZ2VkIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAxMjgwLiAKK0ZBSUwgWCBOdW1iZXIg
b2YgY2hhbm5lbHMgaW4gaW5wdXRbMDotMl06IEV4cGVjdGVkIDcgZm9yIGFsbCB2YWx1ZXMgYnV0
IGZvdW5kIDEyNzkgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQkwCisJ
WzFdCTAKKwlbMl0JMAorCVszXQkwCisJLi4uYW5kIDEyNzUgbW9yZSBlcnJvcnMuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIE51bWJlciBvZiBjaGFubmVscyBp
biBpbnB1dFstMTpdOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxIHVuZXhw
ZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JMCBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbdmVyaWZ5IGNvdW50IGNoYW5nZV0gMyBvdXQgb2Yg
NCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMiB0YXNr
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRl
eHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRl
eHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3RlZC50eHQKaW5k
ZXggODhhNjAwODI0MGVjZTlhNDBjNWMxMjNjNzVjYWU1NGE4OGE2Y2E2OC4uNTJkOTU4YzBmMDJh
YTM5OTI1YWNkMmYxZGExN2U0OGQ5ZmYyMDEzYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29u
dGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3RlZC50eHQKQEAgLTEwLDE5ICsxMCwxOSBAQCBQQVNT
ICAgb2ZmbGluZUNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCA0NDEwMCwgNDQx
MDApIGRpZCBub3QgdGhyb3cgYQogUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN0YXRlIGlzIGVxdWFs
IHRvIHN1c3BlbmRlZC4gCiBQQVNTICAgcDEgPSBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgZGlk
IG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIHAxIGluc3RhbmNlb2YgUHJvbWlzZSBp
cyB0cnVlLiAKLVBBU1MgICBwMSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVF
cnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4gCitQQVNTICAgcDEgcmVq
ZWN0ZWQgY29ycmVjdGx5IHdpdGggVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4gCiBQ
QVNTIDwgW3Rlc3Qtc3VzcGVuZF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3Nl
cnRpb25zKSAKIFBBU1MgPiBbdGVzdC1yZXN1bWVdIFRlc3QgcmVzdW1lKCkgZm9yIG9mZmxpbmUg
Y29udGV4dCAKIFBBU1MgICBwMiA9IG9mZmxpbmVDb250ZXh0LnJlc3VtZSgpIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBwMiBpbnN0YW5jZW9mIFByb21pc2UgaXMgdHJ1ZS4g
CiBQQVNTICAgQWZ0ZXIgcmVzdW1lLCBvZmZsaW5lQ29udGV4dC5zdGF0ZSBpcyBlcXVhbCB0byBz
dXNwZW5kZWQuIAotUEFTUyAgIHAyIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0
ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLiAKK1BBU1MgICBwMiBy
ZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogQ2Fubm90IHJlc3VtZSBh
biBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90IHN0YXJ0ZWQuIAogUEFTUyA8IFt0
ZXN0LXJlc3VtZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbdGVzdC1hZnRlci1jbG9zZV0gVGVzdCBzdGF0ZSBhZnRlciBjb250ZXh0IGNsb3Nl
ZCAKIFBBU1MgICBwMyA9IG9mZmxpbmVDb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEFmdGVyIGNsb3NlLCBvZmZsaW5lQ29udGV4dC5z
dGF0ZSBpcyBlcXVhbCB0byBjbG9zZWQuIAotUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN1c3BlbmQo
KSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4gCi1QQVNTICAgb2ZmbGluZUNvbnRleHQucmVzdW1lKCkg
cmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4uIAorUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN1c3BlbmQoKSBy
ZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLiAK
K1BBU1MgICBvZmZsaW5lQ29udGV4dC5yZXN1bWUoKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJ
bnZhbGlkU3RhdGVFcnJvcjogQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQg
dGhhdCBoYXMgbm90IHN0YXJ0ZWQuIAogUEFTUyA8IFt0ZXN0LWFmdGVyLWNsb3NlXSBBbGwgYXNz
ZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyA+IFtyZXN1bWUtcnVu
bmluZy1jb250ZXh0XSBUZXN0IHJlc3VtaW5nIGEgcnVubmluZyBjb250ZXh0IAogUEFTUyAgIENy
ZWF0ZSBvbmxpbmUgY29udGV4dCBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2Uvc3VzcGVuZC1hZnRlci1j
b25zdHJ1Y3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJm
YWNlL3N1c3BlbmQtYWZ0ZXItY29uc3RydWN0LWV4cGVjdGVkLnR4dAppbmRleCAzMTc0NDJjYzE2
YTEwZjQzNzc5YzBlYzk0ZDlmNDYxNDRhNTAxYzFjLi4xNjEyZWJkYWFmNGQ2YTNjM2Y2OGQzZGEz
YmFmYTNkNDllOTYyNzFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1p
bnRlcmZhY2Uvc3VzcGVuZC1hZnRlci1jb25zdHJ1Y3QtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9zdXNwZW5kLWFmdGVyLWNvbnN0cnVjdC1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgU3RhdGUgY2hhbmdlIGNvdW50aW5n
IGFzc2VydF9sZXNzX3RoYW5fZXF1YWw6IGN0eCAxIHN0YXRlIGNoYW5nZSBjb3VudC4gZXhwZWN0
ZWQgYSBudW1iZXIgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDEgYnV0IGdvdCAyCitQQVNTIFN0YXRl
IGNoYW5nZSBjb3VudGluZyAKIFBBU1MgSXRlcmF0aW9uIDEgCiBQQVNTIEl0ZXJhdGlvbiAyIAog
UEFTUyBJdGVyYXRpb24gMyAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWlu
dGVyZmFjZS9hdWRpb25vZGUtZGlzY29ubmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29ubmVjdC1hdWRp
b3BhcmFtLWV4cGVjdGVkLnR4dAppbmRleCA4NzdhNzAyNzNlYzc4OWRlMGI4N2ZhODZhMGIzZTFm
MGU3NzE0ZWQ1Li5kZDU2YzQ0ZDkyODRiMDU1N2ExMTFiZjY0YmQ2YjdkY2VmYWYzMDk4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWRpc2Nv
bm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25v
ZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0
CkBAIC0xLDYgKzEsNCBAQAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFu
ZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQogUEFT
UyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgImRpc2Nvbm5l
Y3QoQXVkaW9QYXJhbSkiIAogUEFTUyBFeGVjdXRpbmcgImRpc2Nvbm5lY3QoQXVkaW9QYXJhbSwg
b3V0cHV0KSIgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZh
Y2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9hdWRpb3dvcmtsZXRub2RlLWNoYW5u
ZWwtY291bnQuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDlkMDFkYjZkMjJjZjhlNDYzZDM3MGIz
MmY0NjFiOGVmMGNlMjE0ZTMuLmUwMTc4MDg3MDBiODZmZGQwMjMxM2VhZjgyOTc1YTE3ODk3YjNm
NTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9hdWRp
b3dvcmtsZXRub2RlLWNoYW5uZWwtY291bnQuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9hdWRpb3dvcmtsZXRub2RlLWNoYW5uZWwt
Y291bnQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDM0IEBACi1DT05TT0xFIE1FU1NB
R0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBv
YmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1l
c3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQg
c3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIEZBSUwgRXhlY3V0
aW5nICJzZXR1cC1idWZmZXItYW5kLXdvcmtsZXQiIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ2NvbnRleHQuYXVkaW9Xb3JrbGV0LmFkZE1vZHVsZScpIgot
VElNRU9VVCBFeGVjdXRpbmcgInZlcmlmeS1yZW5kZXJlZC1idWZmZXIiIFRlc3QgdGltZWQgb3V0
Ci1OT1RSVU4gQXVkaXQgcmVwb3J0IAorUEFTUyBFeGVjdXRpbmcgInZlcmlmeS1yZW5kZXJlZC1i
dWZmZXIiIAorUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3NldHVwLWJ1ZmZlci1hbmQtd29y
a2xldF0gIAogUEFTUyA+IFt2ZXJpZnktcmVuZGVyZWQtYnVmZmVyXSAgCitQQVNTICAgRmlyc3Qg
aGFsZiBvZiBDaGFubmVsICMwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorRkFJTCBY
IFNlY29uZCBoYWxmIG9mIENoYW5uZWwgIzA6IEV4cGVjdGVkIDEgZm9yIGFsbCB2YWx1ZXMgYnV0
IGZvdW5kIDEyOCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAKKwlb
MV0JMAorCVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBGaXJzdCBoYWxmIG9mIENoYW5uZWwg
IzEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitGQUlMIFggU2Vjb25kIGhhbGYgb2Yg
Q2hhbm5lbCAjMTogRXhwZWN0ZWQgMiBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgMTI4IHVuZXhw
ZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JMAorCVsxXQkwCisJWzJdCTAKKwlb
M10JMAorCS4uLmFuZCAxMjQgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQorUEFTUyAgIEZpcnN0IGhhbGYgb2YgQ2hhbm5lbCAjMiBjb250YWlucyBvbmx5
IHRoZSBjb25zdGFudCAwLiAKK0ZBSUwgWCBTZWNvbmQgaGFsZiBvZiBDaGFubmVsICMyOiBFeHBl
Y3RlZCAzIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBlY3RlZCB2YWx1ZXM6IAor
CUluZGV4CUFjdHVhbAorCVswXQkwCisJWzFdCTAKKwlbMl0JMAorCVszXQkwCisJLi4uYW5kIDEy
NCBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlM
IDwgW3ZlcmlmeS1yZW5kZXJlZC1idWZmZXJdIDMgb3V0IG9mIDYgYXNzZXJ0aW9ucyB3ZXJlIGZh
aWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMICMgQVVESVQg
VEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDIgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWF1ZGlvd29ya2xldC1pbnRlcmZhY2Uvc3VzcGVuZGVkLWNvbnRleHQtbWVzc2FnZXBvcnQu
aHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNl
L3N1c3BlbmRlZC1jb250ZXh0LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCAz
M2M1YTljZDcwMjJjYWNkNWMwMjBjZjE4OTg3MGYwZmQyM2VkYmMyLi41OTBlMGQ3MWYyZDdmNjRi
NThjODVmYWQ2MzI2MzE1MjgwOTdlYzJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlv
d29ya2xldC1pbnRlcmZhY2Uvc3VzcGVuZGVkLWNvbnRleHQtbWVzc2FnZXBvcnQuaHR0cHMtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9zdXNw
ZW5kZWQtY29udGV4dC1tZXNzYWdlcG9ydC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1
IEBACiAKIEZBSUwgcmVhbHRpbWUgc3VzcGVuZGVkIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJl
amVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBh
biBvYmplY3QgKGV2YWx1YXRpbmcgJ3JlYWx0aW1lLmF1ZGlvV29ya2xldC5hZGRNb2R1bGUnKSIK
IEZBSUwgb2ZmbGluZSBiZWZvcmUgc3RhcnQgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0
aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9i
amVjdCAoZXZhbHVhdGluZyAnb2ZmbGluZS5hdWRpb1dvcmtsZXQuYWRkTW9kdWxlJykiCi1GQUlM
IG9mZmxpbmUgb24gY29tcGxldGUgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdp
dGggdmFsdWU6IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4iCitGQUlMIG9mZmxpbmUgb24gY29tcGxldGUgcHJvbWlzZV90ZXN0OiBV
bmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENh
bid0IGZpbmQgdmFyaWFibGU6IEF1ZGlvV29ya2xldE5vZGUiCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXpp
cHBlcmluZy1leHBlY3RlZC50eHQKaW5kZXggNTI4ODJkMjgzNWM1MmMwZTM4MzcwZjRlZGZlMDQ0
ODAxM2FkY2MzYi4uMGU1OTY0MTk3MDJjMTJlMjQyODgyNjYxM2U2OTE3MDI2YjRmNTEyOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXpp
cHBlcmluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1iaXF1YWRmaWx0ZXJub2Rl
LWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQKQEAgLTEsMTYgKzEsMyBAQAot
Q09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0
ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NB
R0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBv
YmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVk
IFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWpl
Y3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxp
ZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUg
TUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjog
VGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhh
bmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlz
IGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNl
IFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxp
ZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJ
bnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09O
U09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6
IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmpl
Y3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3Nh
Z2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5n
ICJUZXN0IDAiIApAQCAtMjQsMTggKzExLDE4IEBAIFBBU1MgPiBbVGVzdCAwXSBObyBkZXppcHBl
cmluZyBmb3IgZnJlcXVlbmN5CiBQQVNTICAgQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwg
dG8gMzUwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8g
ODAwLiAKIFBBU1MgICBBdCB0aW1lIDAuMDU0Njg3NSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDIw
MC4gCi1GQUlMIFggT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBkb2VzIG5vdCBlcXVhbCBb
MCwwLjE3NDE4MzA3MDY1OTYzNzQ1LDAuMzU1MjA0MzEzOTkzNDU0LDAuNTM2NDg2NzQ0ODgwNjc2
MywwLjcxMTQwNTg3MzI5ODY0NSwwLjg3MzUwNjY2NTIyOTc5NzQsMS4wMTY3MTM4NTc2NTA3NTY4
LDEuMTM1NTI4MzI2MDM0NTQ2LDEuMjI1MjAyNzk4ODQzMzgzOCwxLjI4MTg5NjIzMzU1ODY1NDgs
MS4zMDI3OTcxOTgyOTU1OTMzLDEuMjg2MjEzOTk0MDI2MTg0LDEuMjMxNjMzOTAxNTk2MDY5Mywx
LjEzOTc0MTc3ODM3MzcxODMsMS4wMTI0MDUyNzYyOTg1MjMsMC44NTI2MjIxNTEzNzQ4MTY5Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwMDMwMzk5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggT3V0cHV0IGZyb20g
ZnJlcXVlbmN5IHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMC43ODYzNTYyMTA3MDg2MTgyLDAuOTY3
NjYxODU3NjA0OTgwNSwxLjEzNTc3MjQ2NjY1OTU0NiwxLjI4NTgyNDc3NTY5NTgwMDgsMS40MTMz
OTI3ODIyMTEzMDM3LDEuNTE0NjE3NjgxNTAzMjk2LDEuNTg2MzIzMTQyMDUxNjk2OCwxLjYyNjEx
MTI2ODk5NzE5MjQsMS42MzI0MzU2Nzk0MzU3MywxLjYwNDY1MDg1NTA2NDM5MiwxLjU0MzAzNjU4
MDA4NTc1NDQsMS40NDg3OTQxMjY1MTA2MjAxLDEuMzI0MDE4OTU1MjMwNzEzLDEuMTcxNjQ1MDQ1
MjgwNDU2NSwwLjk5NTM2NzY0NjIxNzM0NjIsMC43OTk1NDIxMjkwMzk3NjQ0Li4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDMw
Mzk5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFi
c0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMjU2XQktMS4zNTE0MzUxODQ0Nzg3
NTk4ZSswCS0xLjI5ODkxNTI2Njk5MDY2MTZlKzAJNS4yNTE5OTE3NDg4MDk4MTQ1ZS0yCTQuMDQz
MzY3NDc5MjE4MDA2MGUtMgkzLjAzOTg5OTk5OTk5OTk5OTllLTYKLQlbMjU3XQktMS4xODc5NDk0
MTkwMjE2MDY0ZSswCS0xLjA0Njc4Mjg1MTIxOTE3NzJlKzAJMS40MTE2NjU2NzgwMjQyOTIwZS0x
CTEuMzQ4NTc1NDcyMzQzODAwNGUtMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYKLQlbMjU4XQktOS45
MDcyMDAzMzY0NTYyOTg4ZS0xCS03LjQyMzIzNjk2NjEzMzExNzdlLTEJMi40ODM5NjMzNzAzMjMx
ODEyZS0xCTMuMzQ2MTk5NzUzMDkzODU0MmUtMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYKLQlbMjU5
XQktNy42NTM0OTI2ODkxMzI2OTA0ZS0xCS00LjA4MDUwMDkwMDc0NTM5MThlLTEJMy41NzI5OTE3
ODgzODcyOTg2ZS0xCTguNzU2MjU3ODEwNzM3NDM3OGUtMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYK
LQlbMjYwXQktNS4xODIzODY2MzY3MzQwMDg4ZS0xCS02LjUyMzI4ODc4NjQxMTI4NTRlLTIJNC41
MzAwNTc3NTgwOTI4ODAyZS0xCTYuOTQ0NDM4NDY3MTg3NzE2MGUrMAkzLjAzOTg5OTk5OTk5OTk5
OTllLTYKLQkuLi5hbmQgMTc4NyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgOC4zMDgw
NzA2NzQ1Mzg2MTI0ZS0xIGF0IGluZGV4IG9mIDI3Ny4KLQlbMjc3XQk5LjA3NjU3NDQ0NDc3MDgx
MzBlLTEJNy42ODUwMzc3MDIzMjIwMDYyZS0yCTguMzA4MDcwNjc0NTM4NjEyNGUtMQkxLjA4MTA3
MDkwNjM5NjI1MDllKzEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JTWF4IFJlbEVycm9yIG9mIDIu
MzYzMTkzMDQ3NjQ0MDI3NWUrMyBhdCBpbmRleCBvZiA2NTAuCi0JWzY1MF0JNy42MTAyOTQyMjI4
MzE3MjYxZS0xCTMuMjE4OTgxNzI4NDIzMzg2OGUtNAk3LjYwNzA3NTI0MTEwMzMwMjdlLTEJMi4z
NjMxOTMwNDc2NDQwMjc1ZSszCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCVswXQk3LjMwMTAwNTcy
MTA5MjIyNDFlLTEJNy44NjM1NjIxMDcwODYxODE2ZS0xCTUuNjI1NTYzODU5OTM5NTc1MmUtMgk3
LjE1Mzk2Mzc5MzE2NDYwOTdlLTIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJWzFdCTkuOTIzMjEy
NTI4MjI4NzU5OGUtMQk5LjY3NjYxODU3NjA0OTgwNDdlLTEJMi40NjU5Mzk1MjE3ODk1NTA4ZS0y
CTIuNTQ4MzQ4Mzc0MzkyNzgwOWUtMgkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlbMl0JMS4yMjY5
NTE1OTkxMjEwOTM4ZSswCTEuMTM1NzcyNDY2NjU5NTQ1OWUrMAk5LjExNzkxMzI0NjE1NDc4NTJl
LTIJOC4wMjc5NDAwMjY1NTQ1NzExZS0yCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCVszXQkxLjQy
NzQxMDg0MDk4ODE1OTJlKzAJMS4yODU4MjQ3NzU2OTU4MDA4ZSswCTEuNDE1ODYwNjUyOTIzNTg0
MGUtMQkxLjEwMTEzMDMyNDgyMDA0OTJlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJWzRdCTEu
NTg4MDYxMzMyNzAyNjM2N2UrMAkxLjQxMzM5Mjc4MjIxMTMwMzdlKzAJMS43NDY2ODU1MDQ5MTMz
MzAxZS0xCTEuMjM1ODEwNDAzODAwNTQ3MWUtMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwkuLi5h
bmQgMTE0NyBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgOC45MjY1Mzg4MjUwMzUwOTUy
ZS0xIGF0IGluZGV4IG9mIDQyLgorCVs0Ml0JMS42NTczMzMzNzQwMjM0Mzc1ZSswCTcuNjQ2Nzk0
OTE1MTk5Mjc5OGUtMQk4LjkyNjUzODgyNTAzNTA5NTJlLTEJMS4xNjczNTY5MDIzMzk4NDMxZSsw
CTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCU1heCBSZWxFcnJvciBvZiAxLjc2Nzc4OTExMzQ2NTU2
NzhlKzIgYXQgaW5kZXggb2YgNjg4LgorCVs2ODhdCS0xLjY5NjQ0MTE3MzU1MzQ2NjhlLTEJOS42
NTA5OTM3NDI5ODAwNjMwZS00CTEuNzA2MDkyMTY3Mjk2NDQ2OWUtMQkxLjc2Nzc4OTExMzQ2NTU2
NzhlKzIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCiBGQUlMIFggT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVzIHNl
dFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVzdCAwXSAyIG91dCBvZiA1IGFzc2Vy
dGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQpA
QCAtNDMsMTggKzMwLDE4IEBAIFBBU1MgPiBbVGVzdCAxXSBObyBkZXppcHBlcmluZyBmb3IgZGV0
dW5lCiBQQVNTICAgQXQgdGltZSAwLCBkZXR1bmUgaXMgZXF1YWwgdG8gMzMuIAogUEFTUyAgIEF0
IHRpbWUgMC4wMTU2MjUsIGRldHVuZSBpcyBlcXVhbCB0byAxMDAwLiAKIFBBU1MgICBBdCB0aW1l
IDAuMDM5MDYyNSwgZGV0dW5lIGlzIGVxdWFsIHRvIC00MDAuIAotRkFJTCBYIE91dHB1dCBmcm9t
IGRldHVuZSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNzMxNjE2MTA5NjA5NjA0LDAuMzUx
NTc1Mjg1MTk2MzA0MywwLjUyOTUxMDQ5ODA0Njg3NSwwLjcwMTA0MDY4NTE3Njg0OTQsMC44NjAy
Mzg2NzEzMDI3OTU0LDEuMDAxMzc1Njc1MjAxNDE2LDEuMTE5MTE3NjE3NjA3MTE2NywxLjIwODcx
MTAyODA5OTA2LDEuMjY2MTU1NDgxMzM4NTAxLDEuMjg4MzUzNDQzMTQ1NzUyLDEuMjczMjMyNDYw
MDIxOTcyNywxLjIxOTg0MDE2ODk1Mjk0MiwxLjEyODQwMDU2NDE5MzcyNTYsMS4wMDAzMzgxOTY3
NTQ0NTU2LDAuODM4MjYwNTkxMDMwMTIwOC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDA0MDUzMiwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LgorRkFJTCBYIE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwg
WzEuMTQ3NjYwOTcwNjg3ODY2MiwxLjE1NjE5NTQwMjE0NTM4NTcsMS4xMzcxNTY3MjQ5Mjk4MDk2
LDEuMDg5MTMzNjIwMjYyMTQ2LDEuMDExNTMzOTc1NjAxMTk2MywwLjkwNDYyOTcwNzMzNjQyNTgs
MC43Njk1NzY3ODc5NDg2MDg0LDAuNjA4NDA4ODA4NzA4MTkwOSwwLjQyNDAwNDgyMjk2OTQzNjY1
LDAuMjIwMDI4NzU4MDQ5MDExMjMsMC4wMDA4NDYxNDI4ODA2MTg1NzIyLC0wLjIyODU4MjQ0MTgw
Njc5MzIsLTAuNDYyODI2ODE4MjI3NzY3OTQsLTAuNjk2MTMwMzM1MzMwOTYzMSwtMC45MjI1NjQw
ODkyOTgyNDgzLC0xLjEzNjE4OTgxODM4MjI2MzIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwNDA1MzIsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9y
CQlUZXN0IHRocmVzaG9sZAotCVsyNTZdCS0yLjQxMjM2Njg2NzA2NTQyOTdlKzAJLTIuMzI0NDY1
NzUxNjQ3OTQ5MmUrMAk4Ljc5MDExMTU0MTc0ODA0NjllLTIJMy43ODE1NjIwNzk1OTQ1MTUxZS0y
CTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCVsyNTddCS0yLjIzMTQ2Nzk2MjI2NTAxNDZlKzAJLTEu
OTc4Njg2ODA5NTM5Nzk0OWUrMAkyLjUyNzgxMTUyNzI1MjE5NzNlLTEJMS4yNzc1MTk3NzQ3NjQy
MTI1ZS0xCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCVsyNThdCS0xLjk4NzM2OTA2MDUxNjM1NzRl
KzAJLTEuNTExMTY4MDAzMDgyMjc1NGUrMAk0Ljc2MjAxMDU3NDM0MDgyMDNlLTEJMy4xNTEyMTE4
ODY4NTAzODEzZS0xCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCVsyNTldCS0xLjY4NzAyNDcxMjU2
MjU2MTBlKzAJLTkuNTMwMzYzMDgyODg1NzQyMmUtMQk3LjMzOTg4NDA0MjczOTg2ODJlLTEJNy43
MDE1Nzg2MDYwODc0NzI1ZS0xCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCVsyNjBdCS0xLjMzODk4
MTI3MDc5MDEwMDFlKzAJLTMuNDA1NjUwODU0MTEwNzE3OGUtMQk5Ljk4NDE2MTg1Mzc5MDI4MzJl
LTEJMi45MzE2NDU3NTAzOTcyMDA5ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgotCS4uLmFuZCAx
Nzg3IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAyLjgwNjMwMDQ2MTI5MjI2NjhlKzAg
YXQgaW5kZXggb2YgMjc3LgotCVsyNzddCTEuODcxMDkwMjkyOTMwNjAzMGUrMAktOS4zNTIxMDE2
ODM2MTY2MzgyZS0xCTIuODA2MzAwNDYxMjkyMjY2OGUrMAkzLjAwMDcxNjM2OTY3ODExMTBlKzAJ
NC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JTWF4IFJlbEVycm9yIG9mIDEuOTQzNTIyNjc2NTE2OTEz
NGUrMyBhdCBpbmRleCBvZiA2NTAuCi0JWzY1MF0JMS42NDUzNDQwMTg5MzYxNTcyZSswCTguNDYx
NDI4ODA2MTg1NzIyNGUtNAkxLjY0NDQ5Nzg3NjA1NTUzODdlKzAJMS45NDM1MjI2NzY1MTY5MTM0
ZSszCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCVswXQkyLjkwMDE3ODE5NDA0NjAyMDVlKzAJMS4x
NDc2NjA5NzA2ODc4NjYyZSswCTEuNzUyNTE3MjIzMzU4MTU0M2UrMAkxLjUyNzAzMzkxMzQyODA3
MzllKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJWzFdCTMuMDYzMDU4Mzc2MzEyMjU1OWUrMAkx
LjE1NjE5NTQwMjE0NTM4NTdlKzAJMS45MDY4NjI5NzQxNjY4NzAxZSswCTEuNjQ5MjU2NjY1OTgy
NzM4MWUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwlbMl0JMy4xNDAzOTIzMDM0NjY3OTY5ZSsw
CTEuMTM3MTU2NzI0OTI5ODA5NmUrMAkyLjAwMzIzNTU3ODUzNjk4NzNlKzAJMS43NjE2MTc4NDQ0
MTg2MTg4ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCVszXQkzLjEyOTk2MTAxMzc5Mzk0NTNl
KzAJMS4wODkxMzM2MjAyNjIxNDYwZSswCTIuMDQwODI3MzkzNTMxNzk5M2UrMAkxLjg3MzgwODA5
NDQwMTI5ODVlKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJWzRdCTMuMDMyMDAwNTQxNjg3MDEx
N2UrMAkxLjAxMTUzMzk3NTYwMTE5NjNlKzAJMi4wMjA0NjY1NjYwODU4MTU0ZSswCTEuOTk3NDI4
Mjc3MDcyOTE2OGUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwkuLi5hbmQgMTQwMyBtb3JlIGVy
cm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMi40MDQ0MDIzMTU2MTY2MDc3ZSswIGF0IGluZGV4IG9m
IDk0LgorCVs5NF0JLTIuOTk4Mzc0NDYyMTI3Njg1NWUrMAktNS45Mzk3MjE0NjUxMTA3Nzg4ZS0x
CTIuNDA0NDAyMzE1NjE2NjA3N2UrMAk0LjA0ODAwNTE2Mjc2Njk0NTZlKzAJNC4wNTMxOTk5OTk5
OTk5OTk2ZS02CisJTWF4IFJlbEVycm9yIG9mIDEuMDc4NTk5Mjc3NTIxMzgzM2UrMyBhdCBpbmRl
eCBvZiAxMC4KKwlbMTBdCTkuMTM0OTUyNDI1OTU2NzI2MWUtMQk4LjQ2MTQyODgwNjE4NTcyMjRl
LTQJOS4xMjY0OTA5OTcxNTA1NDA0ZS0xCTEuMDc4NTk5Mjc3NTIxMzgzM2UrMwk0LjA1MzE5OTk5
OTk5OTk5OTZlLTYKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwg
WCBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0
IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogRkFJTCA8IFtUZXN0IDFdIDIgb3V0IG9mIDUgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCkBAIC02MiwxMSArNDksMTEgQEAg
UEFTUyA+IFtUZXN0IDJdIE5vIGRlemlwcGVyaW5nIGZvciBRCiBQQVNTICAgQXQgdGltZSAwLCBR
IGlzIGVxdWFsIHRvIDUuIAogUEFTUyAgIEF0IHRpbWUgMC4wMTU2MjUsIFEgaXMgZXF1YWwgdG8g
MTAuIAogUEFTUyAgIEF0IHRpbWUgMC4wNjI1LCBRIGlzIGVxdWFsIHRvIC0xMC4gCi1GQUlMIFgg
T3V0cHV0IGZyb20gUSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNjc5MzgzMDY5Mjc2ODA5
NywwLjMzMTEwNjMwNTEyMjM3NTUsMC40ODQ4NjkyNDE3MTQ0Nzc1NCwwLjYyNDg1OTUxMTg1MjI2
NDQsMC43NDcxMDA1OTE2NTk1NDU5LDAuODQ4MTIwMzMxNzY0MjIxMiwwLjkyNTA0OTM2NDU2Njgw
MywwLjk3NTcwMjIyNjE2MTk1NjgsMC45OTg2NDAxNzk2MzQwOTQyLDAuOTkzMjEyMDQ0MjM5MDQ0
MiwwLjk1OTU3MTQyMTE0NjM5MjgsMC44OTg2NzQ0ODgwNjc2MjcsMC44MTIyNTA1NTQ1NjE2MTUs
MC43MDI3NTQ3OTU1NTEzLDAuNTczMjk3MTQyOTgyNDgyOS4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xk
IjowfS4KK0ZBSUwgWCBPdXRwdXQgZnJvbSBRIHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMCwtMC4x
Njc5MzgzMDY5Mjc2ODA5NywtMC4zMzExMDYzMDUxMjIzNzU1LC0wLjQ4NDg2OTI0MTcxNDQ3NzU0
LC0wLjYyNDg1OTUxMTg1MjI2NDQsLTAuNzQ3MTAwNTkxNjU5NTQ1OSwtMC44NDgxMjAzMzE3NjQy
MjEyLC0wLjkyNTA0OTM2NDU2NjgwMywtMC45NzU3MDIyMjYxNjE5NTY4LC0wLjk5ODY0MDE3OTYz
NDA5NDIsLTAuOTkzMjEyMDQ0MjM5MDQ0MiwtMC45NTk1NzE0MjExNDYzOTI4LC0wLjg5ODY3NDQ4
ODA2NzYyNywtMC44MTIyNTA1NTQ1NjE2MTUsLTAuNzAyNzU0Nzk1NTUxMywtMC41NzMyOTcxNDI5
ODI0ODI5Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVj
dGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzEwMjRdCTYuODgzMzgy
NzUyNjc1OTcwNmUtMTUJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTYuODgzMzgyNzUyNjc1OTcwNmUt
MTUJSW5maW5pdHkJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IEFic0Vycm9yIG9mIDYuODgz
MzgyNzUyNjc1OTcwNmUtMTUgYXQgaW5kZXggb2YgMTAyNC4KLQlNYXggUmVsRXJyb3Igb2YgSW5m
aW5pdHkgYXQgaW5kZXggb2YgMTAyNC4KKwlbMF0JMi43NzU1NTc1NjE1NjI4OTE0ZS0xNgkwLjAw
MDAwMDAwMDAwMDAwMDBlKzAJMi43NzU1NTc1NjE1NjI4OTE0ZS0xNglJbmZpbml0eQkwLjAwMDAw
MDAwMDAwMDAwMDBlKzAKKwlNYXggQWJzRXJyb3Igb2YgMi43NzU1NTc1NjE1NjI4OTE0ZS0xNiBh
dCBpbmRleCBvZiAwLgorCU1heCBSZWxFcnJvciBvZiBJbmZpbml0eSBhdCBpbmRleCBvZiAwLgog
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBYIE91dHB1dCBmcm9t
IFEgc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3Qg
ZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0
IDJdIDIgb3V0IG9mIDUgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCkBAIC03NCw0MyArNjEsNDMgQEAgUEFTUyA+IFtUZXN0IDNdIE5v
IGRlemlwcGVyaW5nIGZvciBnYWluCiBQQVNTICAgQXQgdGltZSAwLCBnYWluIGlzIGVxdWFsIHRv
IDEuIAogUEFTUyAgIEF0IHRpbWUgMC4wMTU2MjUsIGdhaW4gaXMgZXF1YWwgdG8gNS4gCiBQQVNT
ICAgQXQgdGltZSAwLjA0Njg3NSwgZ2FpbiBpcyBlcXVhbCB0byAtMC4zLiAKLUZBSUwgWCBPdXRw
dXQgZnJvbSBnYWluIHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMCwwLjE2OTE1NTgwNjMwMzAyNDMs
MC4zMzU3NzY0MTg0NDc0OTQ1LDAuNDk0ODAwMzI5MjA4Mzc0LDAuNjQxMzg3OTk5MDU3NzY5OCww
Ljc3MTA2MzkyMzgzNTc1NDQsMC44Nzk4NDgxMjI1OTY3NDA3LDAuOTY0MzcyMjc3MjU5ODI2Nywx
LjAyMTk3NzMwNTQxMjI5MjUsMS4wNTA3OTE3NDA0MTc0ODA1LDEuMDQ5Nzg2NDQ4NDc4Njk4Nywx
LjAxODgwMjUyMzYxMjk3NiwwLjk1ODU1OTA5NTg1OTUyNzYsMC44NzA2Mjk3Mjc4NDA0MjM2LDAu
NzU3Mzk5MjYwOTk3NzcyMiwwLjYyMTk5MzgzOTc0MDc1MzIuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTkwNzQsInJlbGF0
aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCBPdXRwdXQgZnJvbSBnYWluIHNldHRlciBkb2VzIG5v
dCBlcXVhbCBbLTAuODQ0ODY3MjI5NDYxNjY5OSwtMS4wMzQ1MzU2NDY0Mzg1OTg2LC0xLjE4NjYw
NjE2ODc0Njk0ODIsLTEuMjk5NDczMjg1Njc1MDQ4OCwtMS4zNzIzOTExMDQ2OTgxODEyLC0xLjQw
NTQ4NjM0NTI5MTEzNzcsLTEuMzk5NzUwNTkwMzI0NDAxOSwtMS4zNTcwMTM5NDA4MTExNTcyLC0x
LjI3OTg5ODY0MzQ5MzY1MjMsLTEuMTcxNzUzNjQ0OTQzMjM3MywtMS4wMzY1NzIwOTg3MzE5OTQ2
LC0wLjg3ODg5MTY0Njg2MjAzLC0wLjcwMzY4NDM4OTU5MTIxNywtMC41MTYyMzEyMzg4NDIwMTA1
LC0wLjMyMTk5MjAwOTg3ODE1ODU3LC0wLjEyNjQ2OTMyODk5OTUxOTM1Li4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0
LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vy
cm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMjU2XQktOC4xMDc2MTkyODU1ODM0OTYx
ZS0xCS04LjA0ODkyMDAzNTM2MjI0MzdlLTEJNS44Njk5MjUwMjIxMjUyNDQxZS0zCTcuMjkyODEw
NzA3OTQxMjI1OWUtMwkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKLQlbMjU3XQktNi43NDU1MzIxNTUw
MzY5MjYzZS0xCS02LjU2MjM5NTA5NTgyNTE5NTNlLTEJMS44MzEzNzA1OTIxMTczMDk2ZS0yCTIu
NzkwNzA0NTYwNDE2MzI0NmUtMgkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKLQlbMjU4XQktNS4xOTE4
MzkzMzczNDg5MzgwZS0xCS00LjgxNTMzNzM1OTkwNTI0MjllLTEJMy43NjUwMTk3NzQ0MzY5NTA3
ZS0yCTcuODE4ODA3ODkwMzU5Mzk4NWUtMgkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKLQlbMjU5XQkt
My40OTA2NzI0MDk1MzQ0NTQzZS0xCS0yLjg1MjU2NDE1NjA1NTQ1MDRlLTEJNi4zODEwODI1MzQ3
OTAwMzkxZS0yCTIuMjM2OTYzNzIzMDU3NDUyMWUtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKLQlb
MjYwXQktMS42OTAzNTIxMTIwNTQ4MjQ4ZS0xCS03LjI2ODI4Nzk4NjUxNjk1MjVlLTIJOS42MzUy
MzMxMzQwMzEyOTU4ZS0yCTEuMzI1NjUzNzM3NDI4Mjg0MmUrMAkxLjkwNzQwMDAwMDAwMDAwMDJl
LTYKLQkuLi5hbmQgMTc4NyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgNi4wMDEzMDY3
NzIyMzIwNTU3ZS0xIGF0IGluZGV4IG9mIDI5MS4KLQlbMjkxXQktMS4wMjczMDMyMTg4NDE1NTI3
ZSswCS0xLjYyNzQzMzg5NjA2NDc1ODNlKzAJNi4wMDEzMDY3NzIyMzIwNTU3ZS0xCTMuNjg3NTg4
NjU1MjA5NjU3NmUtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKLQlNYXggUmVsRXJyb3Igb2YgNy4x
MTYyOTUzNzQzOTcwNjQ3ZSsxIGF0IGluZGV4IG9mIDE1MDguCi0JWzE1MDhdCTYuMTc0NDQ3Mzg3
NDU2ODkzOWUtMgktOC44MDAxNTMxNTQ4Nzk4MDg0ZS00CTYuMjYyNDQ4OTE5MDA1NjkyMGUtMgk3
LjExNjI5NTM3NDM5NzA2NDdlKzEJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJWzBdCS03LjY3NTMx
MjE2MTQ0NTYxNzdlLTEJLTguNDQ4NjcyMjk0NjE2Njk5MmUtMQk3LjczMzYwMTMzMTcxMDgxNTRl
LTIJOS4xNTM2MjkxODgxNDg4NzYzZS0yCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgorCVsxXQktOS4w
NjU3MjI4MjMxNDMwMDU0ZS0xCS0xLjAzNDUzNTY0NjQzODU5ODZlKzAJMS4yNzk2MzM2NDEyNDI5
ODEwZS0xCTEuMjM2OTE1OTQ5MzQyMjM0MGUtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlbMl0J
LTEuMDE5NzM1ODEzMTQwODY5MWUrMAktMS4xODY2MDYxNjg3NDY5NDgyZSswCTEuNjY4NzAzNTU2
MDYwNzkxMGUtMQkxLjQwNjI4MjU1NjA5MjY3MjBlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJ
WzNdCS0xLjEwMzg1MjYyOTY2MTU2MDFlKzAJLTEuMjk5NDczMjg1Njc1MDQ4OGUrMAkxLjk1NjIw
NjU2MDEzNDg4NzdlLTEJMS41MDUzODQyMDU4MTU4ODE3ZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUt
NgorCVs0XQktMS4xNTY1NzQ3MjYxMDQ3MzYzZSswCS0xLjM3MjM5MTEwNDY5ODE4MTJlKzAJMi4x
NTgxNjM3ODU5MzQ0NDgyZS0xCTEuNTcyNTU3Mzk4OTQxMzcyMWUtMQkxLjkwNzQwMDAwMDAwMDAw
MDJlLTYKKwkuLi5hbmQgMTI3NSBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMi41MzUw
MjAxMTI5OTEzMzMwZS0xIGF0IGluZGV4IG9mIDIwLgorCVsyMF0JOS40NTIzMTQ5NzI4Nzc1MDI0
ZS0xCTYuOTE3Mjk0ODU5ODg2MTY5NGUtMQkyLjUzNTAyMDExMjk5MTMzMzBlLTEJMy42NjQ3NTY0
NzUzODQ3MjczZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgorCU1heCBSZWxFcnJvciBvZiA4LjM3
MjQxNzY5NTEzODQ0NzllKzEgYXQgaW5kZXggb2YgNzQwLgorCVs3NDBdCTcuMjc5ODU0MjY3ODM1
NjE3MWUtMgktOC44MDAxNTMxNTQ4Nzk4MDg0ZS00CTcuMzY3ODU1Nzk5Mzg0NDE1MWUtMgk4LjM3
MjQxNzY5NTEzODQ0NzllKzEJMS45MDc0MDAwMDAwMDAwMDAyZS02CiAgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggT3V0cHV0IGZyb20gZ2FpbiBzZXR0ZXIgbWF0
Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW1Rlc3QgM10gMiBvdXQgb2Yg
NSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKIFBBU1MgPiBbVGVzdCA0XSBObyBkZXppcHBlcmluZyBvZiBmcmVxdWVuY3kgdnMgSlMg
ZmlsdGVyIAotUEFTUyAgIE91dHB1dCBmcm9tIGxvd3Bhc3MgZmlsdGVyIGVxdWFscyBbMCwwLjAw
MDcxMjc1MDg4NzAzMjU5ODMsMC4wMDQxNjM5MzUzMTQ4NjM5MiwwLjAxMjczNzA4NzkwNTQwNjk1
MiwwLjAyODMwMTk3ODQ4Mzc5NjEyLDAuMDUyMTY3MDc2NjE3NDc5MzI0LDAuMDg1MDUzNDg4NjEy
MTc0OTksMC4xMjcwOTAzMDUwODk5NTA1NiwwLjE3NzgzMDY2NjMwMzYzNDY0LDAuMjM2Mjg3MzU1
NDIyOTczNjMsMC4zMDA5ODYxMTExNjQwOTMsMC4zNzAwMzQ0ODYwNTUzNzQxNSwwLjQ0MTIwMzY1
MzgxMjQwODQ1LDAuNTEyMDIwMjMwMjkzMjczOSwwLjU3OTg2NDkxOTE4NTYzODQsMC42NDIwNzQ4
MjMzNzk1MTY2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6NS45NjA3ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAotUEFTUyAgIE91
dHB1dCBtYXRjaGVzIEpTIGZpbHRlciByZXN1bHRzIGlzIHRydWUuIAotUEFTUyA8IFtUZXN0IDRd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitGQUlMIFggT3V0
cHV0IGZyb20gbG93cGFzcyBmaWx0ZXIgZG9lcyBub3QgZXF1YWwgWy0wLjAwMzAwMTA0ODQ2MjQ2
NTQwNTUsLTAuMDE0MDY5ODk2MTkxMzU4NTY2LC0wLjAzMzQwMjA0ODA1MTM1NzI3LC0wLjA1NzI5
MTQxMDg2MzM5OTUwNiwtMC4wODIxNjQzMDI0NjgyOTk4NywtMC4xMDQ3MDA2NDcyOTQ1MjEzMywt
MC4xMjE5NDA5NTU1MTk2NzYyMSwtMC4xMzEzNzY2MzkwMDg1MjIwMywtMC4xMzEwMjE3MzgwNTIz
NjgxNiwtMC4xMTk0NjQ2MDYwNDY2NzY2NCwtMC4wOTU4OTg4MTQ0OTkzNzgyLC0wLjA2MDEzMzAy
MTMyNDg3Mjk3LC0wLjAxMjU4MDE3NDAyMTQyMjg2MywwLjA0NTc3Mjk5NTc5OTc3OTg5LDAuMTEz
NDE0NzE5NzAwODEzMywwLjE4ODM3MzIyMjk0NzEyMDY3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6NS45NjA3ZS03LCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uCisJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJv
cgkJVGVzdCB0aHJlc2hvbGQKKwlbMF0JLTIuMzg3NzQ5ODUwNzQ5OTY5NWUtMQktMy4wMDEwNDg0
NjI0NjU0MDU1ZS0zCTIuMzU3NzM5MzY2MTI1MzE1NGUtMQk3Ljg1NjM4NTUxMTk3NjY5NzBlKzEJ
NS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzFdCS0zLjYyNjgzNDc1MDE3NTQ3NjFlLTEJLTEuNDA2
OTg5NjE5MTM1ODU2NmUtMgkzLjQ4NjEzNTc4ODI2MTg5MDRlLTEJMi40Nzc3MjY3MzAwNjg1NTY5
ZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCVsyXQktNC43NTkwMDE0MzM4NDkzMzQ3ZS0xCS0z
LjM0MDIwNDgwNTEzNTcyNjllLTIJNC40MjQ5ODA5NTMzMzU3NjIwZS0xCTEuMzI0NzYzMzYzNzcx
MDI5NmUrMQk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwlbM10JLTUuNzQ4MjU1MjUyODM4MTM0OGUt
MQktNS43MjkxNDEwODYzMzk5NTA2ZS0yCTUuMTc1MzQxMTQ0MjA0MTM5N2UtMQk5LjAzMzM2MzA1
Nzc2MDUzOTBlKzAJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzRdCS02LjU2MzI2MjkzOTQ1MzEy
NTBlLTEJLTguMjE2NDMwMjQ2ODI5OTg2NmUtMgk1Ljc0MTYxOTkxNDc3MDEyNjNlLTEJNi45ODc5
NzM3ODIxNDg2Njg3ZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCS4uLmFuZCAxODkzIG1vcmUg
ZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiAxLjE0NzUyMjQxOTY5MTA4NThlKzAgYXQgaW5kZXgg
b2YgMjkyLgorCVsyOTJdCTMuNzM4MzQ5OTc0MTU1NDI2MGUtMQktNy43MzY4NzQyMjI3NTU0MzIx
ZS0xCTEuMTQ3NTIyNDE5NjkxMDg1OGUrMAkxLjQ4MzE4NjA4NjA3NTk5MTZlKzAJNS45NjA3MDAw
MDAwMDAwMDAyZS03CisJTWF4IFJlbEVycm9yIG9mIDIuNDA4NDcxMTQ5NTMyMzUzMWUrMyBhdCBp
bmRleCBvZiAxMDE0LgorCVsxMDE0XQktNy42NjIwNTY2ODQ0OTQwMTg2ZS0xCTMuMTgyNjE2MjAx
MjI5MzkzNWUtNAk3LjY2NTIzOTMwMDY5NTI0NzllLTEJMi40MDg0NzExNDk1MzIzNTMxZSszCTUu
OTYwNzAwMDAwMDAwMDAwMmUtNworIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorRkFJTCBYIE91dHB1dCBtYXRjaGVzIEpTIGZpbHRlciByZXN1bHRzIGlzIG5vdCB0cnVlLiBH
b3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFtU
ZXN0IDRdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW1Rlc3QgNV0gVGVzdCB3aXRoIG1vZHVsYXRp
b24gCiBQQVNTICAgTW9kdWxhdGlvbjogQXQgdGltZSAwLCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8g
MzUwLiAKIFBBU1MgICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAuMDE1NjI1LCBmcmVxdWVuY3kgaXMg
ZXF1YWwgdG8gMTAuIAogUEFTUyAgIE1vZHVsYXRpb246IEF0IHRpbWUgMC4wNjI1LCBmcmVxdWVu
Y3kgaXMgZXF1YWwgdG8gLTEwLiAKLUZBSUwgWCBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBmcmVx
dWVuY3kgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLDAuMTY5MjM2ODk4NDIyMjQxMiwwLjMzNjIx
NDg0MDQxMjEzOTksMC40OTYwNzE3MjYwODM3NTU1LDAuNjQ0MTA2ODA1MzI0NTU0NCwwLjc3NTkx
NzcwODg3Mzc0ODgsMC44ODc1MzAyNjcyMzg2MTY5LDAuOTc1NTE1NzIzMjI4NDU0NiwxLjAzNzA5
MzA0MzMyNzMzMTUsMS4wNzAyMTQwMzMxMjY4MzEsMS4wNzM2MjcyMzM1MDUyNDksMS4wNDY5MTgw
MzQ1NTM1Mjc4LDAuOTkwNTI4MDQ3MDg0ODA4MywwLjkwNTc0NjQwMDM1NjI5MjcsMC43OTQ2ODAx
NzgxNjU0MzU4LDAuNjYwMTk4MzkwNDgzODU2Mi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4K
LQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVz
aG9sZAotCVsyNTZdCS04Ljc0MzcxNTg4MjMwMTMzMDZlLTEJLTcuMDcxMDY3NjkwODQ5MzA0MmUt
MQkxLjY3MjY0ODE5MTQ1MjAyNjRlLTEJMi4zNjU0ODE3OTc5MTM3ODE1ZS0xCTAuMDAwMDAwMDAw
MDAwMDAwMGUrMAotCVsyNTddCS03LjYzMjgwMzMyMDg4NDcwNDZlLTEJLTUuNzgzMTM3Njc5MTAw
MDM2NmUtMQkxLjg0OTY2NTY0MTc4NDY2ODBlLTEJMy4xOTgzNzczMjQ1OTUzNzQ1ZS0xCTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAotCVsyNThdCS02LjMxNjg0NzgwMTIwODQ5NjFlLTEJLTQuMzMwOTM4
MTYwNDE5NDY0MWUtMQkxLjk4NTkwOTY0MDc4OTAzMjBlLTEJNC41ODU0MDI5MDE3MDQ1MzY3ZS0x
CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsyNTldCS00LjgzNDQyNDI1NzI3ODQ0MjRlLTEJLTIu
NzU1NzE4ODI3MjQ3NjE5NmUtMQkyLjA3ODcwNTQzMDAzMDgyMjhlLTEJNy41NDMyNDIxMDk3NDM4
NjYyZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsyNjBdCS0zLjIyODY2NTg4ODMwOTQ3ODhl
LTEJLTEuMTAyMjIyNDI3NzI1NzkxOWUtMQkyLjEyNjQ0MzQ2MDU4MzY4NjhlLTEJMS45MjkyMzI2
MTg2NTY4MDE2ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCS4uLmFuZCAxNzg3IG1vcmUgZXJy
b3JzLgotCU1heCBBYnNFcnJvciBvZiA4LjU1MDYyMjQ2MzIyNjMxODRlLTEgYXQgaW5kZXggb2Yg
NTcxLgotCVs1NzFdCTEuNTU1NTk5MjEyNjQ2NDg0NGUrMAk3LjAwNTM2OTY2MzIzODUyNTRlLTEJ
OC41NTA2MjI0NjMyMjYzMTg0ZS0xCTEuMjIwNTgxMTkzMzIzMjcwNmUrMAkwLjAwMDAwMDAwMDAw
MDAwMDBlKzAKLQlNYXggUmVsRXJyb3Igb2YgSW5maW5pdHkgYXQgaW5kZXggb2YgMTAyNC4KLQlb
MTAyNF0JMS40NTYyMzc1ODQzNTI0OTMzZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkxLjQ1NjIz
NzU4NDM1MjQ5MzNlLTEJSW5maW5pdHkJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggTW9kdWxhdGlvbjogT3V0cHV0IGZy
b20gZnJlcXVlbmN5IHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3Qg
dHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgPCBbVGVzdCA1XSAyIG91dCBvZiA1IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE1vZHVsYXRpb246IE91dHB1dCBm
cm9tIGZyZXF1ZW5jeSBzZXR0ZXIgZXF1YWxzIFswLC0wLjE2NzkzODMwNjkyNzY4MDk3LC0wLjMz
MTEwNjMwNTEyMjM3NTUsLTAuNDg0ODY5MjQxNzE0NDc3NTQsLTAuNjI0ODU5NTExODUyMjY0NCwt
MC43NDcxMDA1OTE2NTk1NDU5LC0wLjg0ODEyMDMzMTc2NDIyMTIsLTAuOTI1MDQ5MzY0NTY2ODAz
LC0wLjk3NTcwMjIyNjE2MTk1NjgsLTAuOTk4NjQwMTc5NjM0MDk0MiwtMC45OTMyMTIwNDQyMzkw
NDQyLC0wLjk1OTU3MTQyMTE0NjM5MjgsLTAuODk4Njc0NDg4MDY3NjI3LC0wLjgxMjI1MDU1NDU2
MTYxNSwtMC43MDI3NTQ3OTU1NTEzLC0wLjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAorUEFTUyAgIE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBz
ZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgdHJ1ZS4gCitQQVNTIDwgW1Rl
c3QgNV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRpb25zKSAKIEZBSUwg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogNSBvdXQgb2YgNiB0YXNrcyB3ZXJlIGZhaWxl
ZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtY2hhbm5lbG1lcmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5lbG1lcmdl
ci1kaXNjb25uZWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY2hhbm5lbG1lcmdlcm5v
ZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5lbG1lcmdlci1kaXNjb25uZWN0LWV4cGVjdGVkLnR4dApp
bmRleCA5OTI4OTAzNzVhNTZhNzc4YzM0MTJhODkxZmM2Zjc2MTlmOWI4MGFjLi40ZDY5M2NlMWQx
OGRiODRhOWQ5ZGZmMjM2YzU5M2NkM2M3N2YzMDhmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWNoYW5uZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRpb2NoYW5uZWxtZXJnZXItZGlzY29ubmVj
dC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRl
cmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0CkBAIC0xLDYg
KzEsNCBAQAogCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWpl
Y3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQogUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInNpbGVudC1kaXNjb25uZWN0
IiAKIFBBU1MgQXVkaXQgcmVwb3J0IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2
ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9sdmVyLXJlc3BvbnNl
LTQtY2hhbi1leHBlY3RlZC50eHQKaW5kZXggMWQ3MmM5NTRhN2RjNTgxNjFmODFiMmE2MzYwMDk2
MjQ0YTY1NDQyZi4uM2RkN2I2ZDU1YzAwM2M2ZWY5ZDRjYjMwMDJmYzA4NTQ4OWVhNTBmNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXIt
cmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZl
cm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0ZWQudHh0CkBA
IC0xLDYgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rp
b246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUu
Ci0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjog
VGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVESVQgVEFTSyBS
VU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiaW5pdGlhbGl6ZSIgCkBAIC0yMywxMCAr
MjAsMTAgQEAgUEFTUyA+IFszLWNoYW5uZWwgaW5wdXRdIDMtPjIgZG93bm1peCBwcm9kdWNpbmcg
Mi1jaGFubmVsIG91dHB1dAogUEFTUyA+IFs0LWNoYW5uZWwgaW5wdXRdIDQtPjIgZG93bm1peCBw
cm9kdWNpbmcgMi1jaGFubmVsIG91dHB1dCAKIFBBU1MgPiBbNS4xLWNoYW5uZWwgaW5wdXRdIDUu
MS0+MiBkb3dubWl4IHByb2R1Y2luZyAyLWNoYW5uZWwgb3V0cHV0IAogUEFTUyA+IFtkZWxheWVk
IGJ1ZmZlciBzZXRdIERlbGF5ZWQgc2V0IG9mIDQtY2hhbm5lbCByZXNwb25zZSAKLUZBSUwgWCBP
dXRwdXQgd2l0aCBkZWxheWVkIHNldHRpbmcgb2YgY29udm9sdmVyIGJ1ZmZlciBzaG91bGQgaGF2
ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSBkaWZmZXJlbnQgZnJvbSAwLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbZGVsYXllZCBidWZmZXIgc2V0XSAx
IG91dCBvZiAxIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIE91dHB1dCB3aXRoIGRlbGF5ZWQgc2V0dGluZyBvZiBjb252
b2x2ZXIgYnVmZmVyIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDc2NyBkaWZmZXJlbnQg
dmFsdWVzKS4gCitQQVNTIDwgW2RlbGF5ZWQgYnVmZmVyIHNldF0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKIFBBU1MgPiBbY291bnQgMSwgMi1jaGFubmVsIGlu
XSAyLT4xIGRvd25taXggYmVjYXVzZSBjaGFubmVsIGNvdW50IGlzIDEgCiBQQVNTID4gW2NvdW50
IDEsIDQtY2hhbm5lbCBpbl0gNC0+MSBkb3dubWl4IGJlY2F1c2UgY2hhbm5lbCBjb3VudCBpcyAx
IAogUEFTUyA+IFtjb3VudCAxLCA1LjEtY2hhbm5lbCBpbl0gNS4xLT4xIGRvd25taXggYmVjYXVz
ZSBjaGFubmVsIGNvdW50IGlzIDEgCi1GQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6
IDEgb3V0IG9mIDEwIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTAgdGFza3Mg
cmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2Rl
LWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRl
bGF5bm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CmluZGV4IDhmZDc5
YTI4ZmM4YTFkZTFjZTNmMDgxZmQ4NDk4NDE4NDE0NmY5ZGEuLjBkMmQwZWYyZThiOWNmMzc4Yzc4
YTFkYTIyYjFmYmUxMjRiNDZmOGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2Rl
LWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1kZWxheW5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dApAQCAtMSw4
ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJ
bnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09O
U09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6
IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmpl
Y3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3Nh
Z2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5n
ICJ0ZXN0MCIgCkBAIC0xMCw0NyArNSw0NyBAQCBQQVNTIEV4ZWN1dGluZyAidGVzdDEiCiBQQVNT
IEV4ZWN1dGluZyAidGVzdDIiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3QwXSBU
ZXN0IERlbGF5Tm9kZSBoYXMgbm8gZGV6aXBwZXJpbmcgCi1QQVNTICAgb3V0cHV0WzA6NjNdIGNv
bnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAotUEFTUyAgIG91dHB1dFs2NDoxMjddIGlzIGlk
ZW50aWNhbCB0byB0aGUgYXJyYXkgWzEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1
LDE2Li4uXS4gCitGQUlMIFggb3V0cHV0WzA6NjNdOiBFeHBlY3RlZCAwIGZvciBhbGwgdmFsdWVz
IGJ1dCBmb3VuZCA2NCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTY1
LjE0NjI2MzEyMjU1ODYKKwlbMV0JNjYuMjkyMDc2MTEwODM5ODQKKwlbMl0JNjcuNDM3NDQ2NTk0
MjM4MjgKKwlbM10JNjguNTgyMzc0NTcyNzUzOQorCS4uLmFuZCA2MCBtb3JlIGVycm9ycy4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggb3V0cHV0WzY0OjEyN10g
ZXhwZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFycmF5IFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwx
MSwxMiwxMywxNCwxNSwxNi4uLl0gYnV0IGRpZmZlcnMgaW4gNjQgcGxhY2VzOgorCUluZGV4CUFj
dHVhbAkJCUV4cGVjdGVkCisJWzBdCTEuMzc2MzY1ODE0MjA4OTg0NGUrMgkxLjAwMDAwMDAwMDAw
MDAwMDBlKzAKKwlbMV0JMS4zODc1NjUzMDc2MTcxODc1ZSsyCTIuMDAwMDAwMDAwMDAwMDAwMGUr
MAorCVsyXQkxLjM5ODc2MTEzODkxNjAxNTZlKzIJMy4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzNd
CTEuNDA5OTUzMzA4MTA1NDY4OGUrMgk0LjAwMDAwMDAwMDAwMDAwMDBlKzAKKwkuLi5hbmQgNjAg
bW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBY
IG91dHB1dFsxMjg6XSBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzExMywxMTQs
MTE1LDExNiwxMTcsMTE4LDExOSwxMjAsMTIxLDEyMiwxMjMsMTI0LDEyNSwxMjYsMTI3LDEyOC4u
Ll0gYnV0IGRpZmZlcnMgaW4gMTYyNTYgcGxhY2VzOgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVk
Ci0JWzBdCTYuNTAwMDAwMDAwMDAwMDAwMGUrMQkxLjEzMDAwMDAwMDAwMDAwMDBlKzIKLQlbMV0J
Ni42MDAwMDAwMDAwMDAwMDAwZSsxCTEuMTQwMDAwMDAwMDAwMDAwMGUrMgotCVsyXQk2LjcwMDAw
MDAwMDAwMDAwMDBlKzEJMS4xNTAwMDAwMDAwMDAwMDAwZSsyCi0JWzNdCTYuODAwMDAwMDAwMDAw
MDAwMGUrMQkxLjE2MDAwMDAwMDAwMDAwMDBlKzIKKwlbMF0JMi4wODYyMDU0NDQzMzU5Mzc1ZSsy
CTEuMTMwMDAwMDAwMDAwMDAwMGUrMgorCVsxXQkyLjA5NzE5MjA3NzYzNjcxODhlKzIJMS4xNDAw
MDAwMDAwMDAwMDAwZSsyCisJWzJdCTIuMTA4MTc1NjU5MTc5Njg3NWUrMgkxLjE1MDAwMDAwMDAw
MDAwMDBlKzIKKwlbM10JMi4xMTkxNTYzNDE1NTI3MzQ0ZSsyCTEuMTYwMDAwMDAwMDAwMDAwMGUr
MgogCS4uLmFuZCAxNjI1MiBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIDwgW3Rlc3QwXSAxIG91dCBvZiAzIGFzc2VydGlvbnMgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFt0ZXN0MF0g
MyBvdXQgb2YgMyBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbdGVzdDFdIFRlc3QgdmFsdWUgc2V0dGVyIGFuZCBzZXRW
YWx1ZUF0VGltZSAKLUZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBkb2VzIG5vdCBlcXVhbCBb
MCwwLDAsMCwwLjA1MTgwNzYzODI1Nzc0MTkzLDAuMTA5MTk5ODY2NjUyNDg4NzEsMC4xNjYyMjk4
NzM4OTU2NDUxNCwwLjIyMjcwODY3MjI4NTA3OTk2LDAuMjc4NDQ4NzkwMzExODEzMzUsMC4zMzMy
NjU2MDI1ODg2NTM1NiwwLjM4Njk3NzA0NjcyODEzNDE2LDAuNDM5NDA1MTczMDYzMjc4MiwwLjQ5
MDM3NjI2Mzg1Njg4NzgsMC41Mzk3MjA3NzM2OTY4OTk0LDAuNTg3Mjc1NjI0Mjc1MjA3NSwwLjYz
Mjg4MjcxNDI3MTU0NTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLjAwMDA2NTgxOSwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJ
TCBYIC52YWx1ZSBzZXR0ZXIgb3V0cHV0IGRvZXMgbm90IGVxdWFsIFswLjUyMTQ2ODgxODE4Nzcx
MzYsMC41Njk3MDM4MTczNjc1NTM3LDAuNjE2MDQ5NTg3NzI2NTkzLDAuNjYwMzUyMzQ5MjgxMzEx
LDAuNzAyNDY0OTM4MTYzNzU3MywwLjc0MjI0ODA1ODMxOTA5MTgsMC43Nzk1Njk0NDcwNDA1NTc5
LDAuODE0MzA1ODQxOTIyNzYsMC44NDYzNDEzNzE1MzYyNTQ5LDAuODc1NTcwMTc4MDMxOTIxNCww
LjkwMTg5NTQwMzg2MTk5OTUsMC45MjUyMjk0ODk4MDMzMTQyLDAuOTQ1NDk1MjQ3ODQwODgxMyww
Ljk2MjYyNTI2NTEyMTQ2LDAuOTc2NTYyOTc2ODM3MTU4MiwwLjk4NzI2MTk1MDk2OTY5Ni4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAu
MDAwMDY1ODE5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0
ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMzg0XQk1LjI4NDk0ODI3
NDQ5MzIxNzVlLTIJNS4yMTQ2ODgxODE4NzcxMzYyZS0xCTQuNjg2MTkzMzU0NDI3ODE0NWUtMQk4
Ljk4NjUyNjUwMTY0OTY1NTRlLTEJNi41ODE5MDAwMDAwMDAwMDAxZS01Ci0JWzM4NV0JLTQuNzEz
MjAzMjkyMzQwMDQwMmUtMwk1LjY5NzAzODE3MzY3NTUzNzFlLTEJNS43NDQxNzAyMDY1OTg5Mzc1
ZS0xCTEuMDA4MjczMDc2NTUwNzU2NmUrMAk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKLQlbMzg2XQkt
Ni4yMjYwMTA2MjA1OTQwMjQ3ZS0yCTYuMTYwNDk1ODc3MjY1OTMwMmUtMQk2Ljc4MzA5NjkzOTMy
NTMzMjZlLTEJMS4xMDEwNjM0NjU0MTk1NTkyZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCVsz
ODddCS0xLjE5NjAwNjA4OTQ0ODkyODhlLTEJNi42MDM1MjM0OTI4MTMxMTA0ZS0xCTcuNzk5NTI5
NTgyMjYyMDM5MmUtMQkxLjE4MTExNjM1MjYxODUwNjJlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01
Ci0JWzM4OF0JLTEuNzY1NDQzMDg2NjI0MTQ1NWUtMQk3LjAyNDY0OTM4MTYzNzU3MzJlLTEJOC43
OTAwOTI0NjgyNjE3MTg4ZS0xCTEuMjUxMzIxMTY3ODkxODgyNWUrMAk2LjU4MTkwMDAwMDAwMDAw
MDFlLTUKLQkuLi5hbmQgMTU5OTUgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDEuOTA5
Nzk1NTgyMjk0NDY0MWUrMCBhdCBpbmRleCBvZiAxMzAwNy4KLQlbMTMwMDddCTkuNTU0ODgyMDQ5
NTYwNTQ2OWUtMQktOS41NDMwNzM3NzMzODQwOTQyZS0xCTEuOTA5Nzk1NTgyMjk0NDY0MWUrMAky
LjAwMTIzNzM2NjEyMDkwMThlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01Ci0JTWF4IFJlbEVycm9y
IG9mIDUuNDM1MTMxMDE5Nzg1NDM3N2UrMiBhdCBpbmRleCBvZiA0MjkuCi0JWzQyOV0JLTUuNjY3
NTE4Mzc3MzA0MDc3MWUtMQkxLjA0NDY3ODYxODIwMDEyMzNlLTMJNS42Nzc5NjUxNjM0ODYwNzg0
ZS0xCTUuNDM1MTMxMDE5Nzg1NDM3N2UrMgk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKKwlbMF0JNi4w
NTY1Njk1MTY2NTg3ODMwZS0yCTUuMjE0Njg4MTgxODc3MTM2MmUtMQk0LjYwOTAzMTIzMDIxMTI1
NzllLTEJOC44Mzg1NTU3NjY4MjI3NDU1ZS0xCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVsxXQkx
LjA3Mzc2Njg3MjI4Njc5NjZlLTIJNS42OTcwMzgxNzM2NzU1MzcxZS0xCTUuNTg5NjYxNDg2NDQ2
ODU3NWUtMQk5LjgxMTUyMTkxMDIzNjAyNzRlLTEJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJWzJd
CS0zLjkxMzMxMjQwNTM0NzgyNDFlLTIJNi4xNjA0OTU4NzcyNjU5MzAyZS0xCTYuNTUxODI3MTE3
ODAwNzEyNmUtMQkxLjA2MzUyMjY4NTI0MDE0NjNlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJ
WzNdCS04Ljg5MzIxOTM4MTU3MDgxNjBlLTIJNi42MDM1MjM0OTI4MTMxMTA0ZS0xCTcuNDkyODQ1
NDMwOTcwMTkyMGUtMQkxLjEzNDY3Mzg1MDg4MDUxMzZlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01
CisJWzRdCS0xLjM4NTQ0ODEyNzk4NTAwMDZlLTEJNy4wMjQ2NDkzODE2Mzc1NzMyZS0xCTguNDEw
MDk3NTA5NjIyNTczOWUtMQkxLjE5NzIyNjY1ODk3MTI3MzRlKzAJNi41ODE5MDAwMDAwMDAwMDAx
ZS01CisJLi4uYW5kIDMyMjcgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDEuODQ1MDQy
MzQ3OTA4MDIwMGUrMCBhdCBpbmRleCBvZiAyNC4KKwlbMjRdCS05LjA5NDc4MDA4NzQ3MTAwODNl
LTEJOS4zNTU2NDMzOTE2MDkxOTE5ZS0xCTEuODQ1MDQyMzQ3OTA4MDIwMGUrMAkxLjk3MjExNzAx
MDc0NzUyOTdlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJTWF4IFJlbEVycm9yIG9mIDcuNzEy
Mzg2NTc1MjAxMDc4NGUrMiBhdCBpbmRleCBvZiA0NS4KKwlbNDVdCS04LjA0NjUxODU2NDIyNDI0
MzJlLTEJMS4wNDQ2Nzg2MTgyMDAxMjMzZS0zCTguMDU2OTY1MzUwNDA2MjQ0NGUtMQk3LjcxMjM4
NjU3NTIwMTA3ODRlKzIJNi41ODE5MDAwMDAwMDAwMDAxZS01CiAgYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggLnZhbHVlIHNldHRlciBvdXRwdXQgbWF0Y2hlcyBz
ZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW3Rlc3QxXSAyIG91dCBvZiAyIGFzc2Vy
dGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQog
UEFTUyA+IFt0ZXN0Ml0gVGVzdCB2YWx1ZSBzZXR0ZXIgYW5kIG1vZHVsYXRpb24gCi1GQUlMIFgg
V2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBkb2VzIG5vdCBlcXVhbCBbMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4K
LQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVz
aG9sZAotCVszODRdCTUuMjg2MzU3MTc5Mjg0MDk1OGUtMgk1LjIxNDU2NjU4ODQwMTc5NDRlLTEJ
NC42ODU5MzA4NzA0NzMzODQ5ZS0xCTguOTg2MjMyNjgzMDY4NjIyM2UtMQkwLjAwMDAwMDAwMDAw
MDAwMDBlKzAKLQlbMzg1XQk5LjQxMDk2MTI3MDMzMjMzNjRlLTEJLTUuODUxODU4ODU0MjkzODIz
MmUtMQkxLjUyNjI4MjAxMjQ2MjYxNjBlKzAJMi42MDgyMDAzMTc5OTQxNzIwZSswCTAuMDAwMDAw
MDAwMDAwMDAwMGUrMAotCVszODZdCTYuODk3NTA1NTIxNzc0MjkyMGUtMQktOS43ODEzMTU5MjI3
MzcxMjE2ZS0xCTEuNjY3ODgyMTQ0NDUxMTQxNGUrMAkxLjcwNTE3MTUzMDcyODM2NzdlKzAJMC4w
MDAwMDAwMDAwMDAwMDAwZSswCi0JWzM4N10JLTMuNDI1Mzg1OTUxOTk1ODQ5NmUtMQktMi40OTIw
ODAxODE4MzcwODE5ZS0xCTkuMzMzMDU3NzAxNTg3Njc3MGUtMgkzLjc0NTA4NzI0NDYyNzc1NzJl
LTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzM4OF0JLTkuODUyNzU5ODM4MTA0MjQ4MGUtMQk3
LjE1NTI0NjEzODU3MjY5MjllLTEJMS43MDA4MDA1OTc2Njc2OTQxZSswCTIuMzc2OTk4MDMwMTU3
MTYzNGUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQkuLi5hbmQgOTY2OCBtb3JlIGVycm9ycy4K
LQlNYXggQWJzRXJyb3Igb2YgMS45MDk4ODYyNDA5NTkxNjc1ZSswIGF0IGluZGV4IG9mIDE2MDQw
LgotCVsxNjA0MF0JLTkuNTg4ODc2MzY2NjE1Mjk1NGUtMQk5LjUwOTk4NjA0Mjk3NjM3OTRlLTEJ
MS45MDk4ODYyNDA5NTkxNjc1ZSswCTIuMDA4Mjk1NTI0NjQ5ODE2MGUrMAkwLjAwMDAwMDAwMDAw
MDAwMDBlKzAKLQlNYXggUmVsRXJyb3Igb2YgNi44NjY4MDE3MjU4NTQzNTk0ZSs0IGF0IGluZGV4
IG9mIDQyODAuCi0JWzQyODBdCS01LjY1OTc1NDg3MjMyMjA4MjVlLTEJOC4yNDIzMTkzODE2Nzk0
MDgzZS02CTUuNjU5ODM3Mjk1NTE1ODk5M2UtMQk2Ljg2NjgwMTcyNTg1NDM1OTRlKzQJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCi0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1G
QUlMIFggV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBtYXRjaGVzIHNldFZh
bHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbdGVzdDJdIDIgb3V0IG9mIDIgYXNzZXJ0aW9u
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlM
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDMgb3V0IG9mIDMgdGFza3Mgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFdpdGggbW9k
dWxhdGlvbjogLnZhbHVlIHNldHRlciBvdXRwdXQgZXF1YWxzIFswLjUyMTQ1NjY1ODg0MDE3OTQs
LTAuNTg1MTg1ODg1NDI5MzgyMywtMC45NzgxMzE1OTIyNzM3MTIyLC0wLjI0OTIwODAxODE4Mzcw
ODIsMC43MTU1MjQ2MTM4NTcyNjkzLDAuOTgwODU5MzM5MjM3MjEzMSwwLjQ4MzY0OTMxMzQ0OTg1
OTYsLTAuMjQ4Njk4MzUzNzY3Mzk1MDIsLTAuNzcwMzYyOTEzNjA4NTUxLC0wLjk3OTA5Mjc3Njc3
NTM2MDEsLTAuOTkwMzE4NDE3NTQ5MTMzMywtMC45NDkwMjU2MzA5NTA5Mjc3LC0wLjk0MTgxMDI1
MDI4MjI4NzYsLTAuOTc4ODI1MjcxMTI5NjA4MiwtMC45OTUxNjYyNDIxMjI2NTAxLC0wLjg1Mjk4
MDczMjkxNzc4NTYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIFdpdGggbW9k
dWxhdGlvbjogLnZhbHVlIHNldHRlciBvdXRwdXQgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRw
dXQgaXMgdHJ1ZS4gCitQQVNTIDwgW3Rlc3QyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAyIGFzc2VydGlvbnMpIAorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAyIG91
dCBvZiAzIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZhY2Uvbm8t
ZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZh
Y2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CmluZGV4IDdiZGU1ODI1ZDhlYjM3OGVhNTA5
ZmY2MWJjOTk4MjdjMzc4NDNmNzQuLjMyNjU1MWJmN2NmNWRiNmY0YmZlMTZlZDBkNWI5MzI5ZmJm
ODk1ZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRl
emlwcGVyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVy
ZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQKQEAgLTEsNyArMSwzIEBACi1DT05TT0xF
IE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5o
YW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4K
IAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogRkFJTCBFeGVjdXRpbmcgInRl
c3QwIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0
ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogQ29uc3RhbnRTb3VyY2VOb2Rl
IgpAQCAtMTAsMjQgKzYsMTggQEAgUEFTUyBFeGVjdXRpbmcgInRlc3QzIgogUEFTUyBBdWRpdCBy
ZXBvcnQgCiBQQVNTID4gW3Rlc3QwXSBEZXppcHBlcmluZyBvZiBHYWluTm9kZSByZW1vdmVkIAog
UEFTUyA+IFt0ZXN0Ml0gQ29tcGFyZSB2YWx1ZSBzZXR0ZXIgYW5kIHNldFZhbHVlQXRUaW1lIAot
RkFJTCBYIC52YWx1ZSBzZXR0ZXIgb3V0cHV0IGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBh
cnJheSBbMCwwLjE2NzkzODMwNjkyNzY4MDk3LDAuMzMxMTA2MzA1MTIyMzc1NSwwLjQ4NDg2OTI0
MTcxNDQ3NzU0LDAuNjI0ODU5NTExODUyMjY0NCwwLjc0NzEwMDU5MTY1OTU0NTksMC44NDgxMjAz
MzE3NjQyMjEyLDAuOTI1MDQ5MzY0NTY2ODAzLDAuOTc1NzAyMjI2MTYxOTU2OCwwLjk5ODY0MDE3
OTYzNDA5NDIsMC45OTMyMTIwNDQyMzkwNDQyLDAuOTU5NTcxNDIxMTQ2MzkyOCwwLjg5ODY3NDQ4
ODA2NzYyNywwLjgxMjI1MDU1NDU2MTYxNSwwLjcwMjc1NDc5NTU1MTMsMC41NzMyOTcxNDI5ODI0
ODI5Li4uXSBidXQgZGlmZmVycyBpbiA2NDAgcGxhY2VzOgorRkFJTCBYIC52YWx1ZSBzZXR0ZXIg
b3V0cHV0IGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMC4yNzcxNjM4NjMxODIw
Njc4NywwLjI1Mzk0NzMxNzYwMDI1MDI0LDAuMjIzNTE3MzQzNDAxOTA4ODcsMC4xODY3Mzg0MDE2
NTEzODI0NSwwLjE0NDY1NTE1MzE1NTMyNjg0LDAuMDk4NDYyOTYxNjE0MTMxOTMsMC4wNDk0NzM5
NTk5NTI1OTI4NSwtMC4wMDA5MjA0MTQyODQzMzczMTIsLTAuMDUxMjg4NTc4NjU5Mjk2MDM2LC0w
LjEwMDE5OTkxNTQ2ODY5Mjc4LC0wLjE0NjI2NTA0NDgwODM4Nzc2LC0wLjE4ODE3NTUyOTI0MTU2
MTksLTAuMjI0NzQwOTIyNDUxMDE5MywtMC4yNTQ5MjI1MDkxOTM0MjA0LC0wLjI3Nzg2MzA4NTI2
OTkyOCwtMC4yOTI5MTA5MzM0OTQ1Njc4Ny4uLl0gYnV0IGRpZmZlcnMgaW4gNjQwIHBsYWNlczoK
IAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAotCVszODRdCTkuMjM4Nzk1MDQyMDM3OTYzOWUtMQky
Ljc3MTYzODYzMTgyMDY3ODdlLTEKLQlbMzg1XQk4LjQ2NDkxMDM4Nzk5Mjg1ODllLTEJMi41Mzk0
NzMxNzYwMDI1MDI0ZS0xCi0JWzM4Nl0JNy40NTA1Nzc2MTY2OTE1ODk0ZS0xCTIuMjM1MTczNDM0
MDE5MDg4N2UtMQotCVszODddCTYuMjI0NjEzMTg5Njk3MjY1NmUtMQkxLjg2NzM4NDAxNjUxMzgy
NDVlLTEKKwlbMF0JOS4yMDY0NTk1MjIyNDczMTQ1ZS0xCTIuNzcxNjM4NjMxODIwNjc4N2UtMQor
CVsxXQk4LjQwNTgwNDAzODA0Nzc5MDVlLTEJMi41Mzk0NzMxNzYwMDI1MDI0ZS0xCisJWzJdCTcu
MzcyNzM2OTMwODQ3MTY4MGUtMQkyLjIzNTE3MzQzNDAxOTA4ODdlLTEKKwlbM10JNi4xMzgxMTk2
OTc1NzA4MDA4ZS0xCTEuODY3Mzg0MDE2NTEzODI0NWUtMQogCS4uLmFuZCA2MzYgbW9yZSBlcnJv
cnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBYIC52YWx1ZSBz
ZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBH
b3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFt0
ZXN0Ml0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbdGVzdDNdIEF1dG9tYXRpb24gZWZmZWN0cyAK
LUZBSUwgWCBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IGV4cGVjdGVkIHRv
IGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMCwwLjIzMDc3NDc3NTE0NzQzODA1LDAuNTYwODg0NTk0
OTE3Mjk3NCwwLjkyNzUzNjU0NzE4Mzk5MDUsMS4yNDkyOTU1OTIzMDgwNDQ0LDEuNDQ5NzUzMTY1
MjQ1MDU2MiwxLjQ4MDAxODk3MzM1MDUyNSwxLjMzMzMzOTU3MTk1MjgxOTgsMS4wNDc0NzkyNzE4
ODg3MzMsMC42OTQxMjU2NTIzMTMyMzI0LDAuMzU4NDI2MDA0NjQ4MjA4NiwwLjExNDY5NjczMzY1
MzU0NTM4LDAuMDA1NDc1NjQ2MzUwNTMyNzcsMC4wMzAwOTExMzExMDYwMTkwMiwwLjE0NjA5ODAx
NzY5MjU2NTkyLDAuMjgzMTAxODU2NzA4NTI2Ni4uLl0gYnV0IGRpZmZlcnMgaW4gNjQwIHBsYWNl
czoKLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAotCVszODRdCTEuMjc3NDMyNzk5MzM5Mjk0NGUr
MAk2LjMwNzE3MjE3OTIyMjEwNjllLTEKLQlbMzg1XQk4LjU0MjgxOTYxOTE3ODc3MjBlLTEJMi42
MTczODI0MDcxODg0MTU1ZS0xCi0JWzM4Nl0JNC43MjY1NDk2ODUwMDEzNzMzZS0xCS00Ljg4ODU0
MzExNDA2NjEyNDBlLTIKLQlbMzg3XQkxLjk0NjM0MTM5NTM3ODExMjhlLTEJLTIuNDEwODg3Nzc3
ODA1MzI4NGUtMQotCS4uLmFuZCA2MzYgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIFdpdGggbW9kdWxhdGlvbjogLnZhbHVlIHNldHRlciBv
dXRwdXQgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxz
ZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW3Rlc3QzXSAy
IG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAyIG91dCBv
ZiAzIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IGlzIGlkZW50
aWNhbCB0byB0aGUgYXJyYXkgWzAuNjMwNzE3MjE3OTIyMjEwNywwLjI2MTczODI0MDcxODg0MTU1
LC0wLjA0ODg4NTQzMTE0MDY2MTI0LC0wLjI0MTA4ODc3Nzc4MDUzMjg0LC0wLjI5MzczMDkxNDU5
Mjc0MjksLTAuMjI5Mzk5NDEyODcwNDA3MSwtMC4xMDYxMzcwNDQ3Mjc4MDIyOCwwLjAwMTM4NDE5
NTUyMjQwNTIwNzIsMC4wMjU1Nzc4NDg3NzcxNzQ5NSwtMC4wNzI1NjQ2ODM4NTQ1Nzk5MywtMC4y
OTA2NTMzNzc3NzEzNzc1NiwtMC41ODQ2MTAzNDI5Nzk0MzEyLC0wLjg4MTAzNjg3NzYzMjE0MTEs
LTEuMDk4NTg4OTQzNDgxNDQ1MywtMS4xNzIwMjEzODkwMDc1Njg0LC0xLjA3MTc1MjA3MTM4MDYx
NTIuLi5dLiAKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IG1h
dGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFTUyA8IFt0ZXN0M10gQWxs
IGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK0ZBSUwgIyBBVURJVCBU
QVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtb2ZmbGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJsb2NrLXNpemUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vZmZsaW5lYXVkaW9jb250ZXh0LWludGVyZmFj
ZS9jdXJyZW50LXRpbWUtYmxvY2stc2l6ZS1leHBlY3RlZC50eHQKaW5kZXggZGYxMjY5MmYxOWQ2
OWE4NWRkYzZlZGI1OTE2MTIyNzI1ZDZiYzU0NC4uYzcyN2I2NTQwZjdkY2NhZTA5ZjkzMjRjYjg1
YWExY2U1YTgwMTcwMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vZmZsaW5lYXVkaW9jb250
ZXh0LWludGVyZmFjZS9jdXJyZW50LXRpbWUtYmxvY2stc2l6ZS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1vZmZsaW5lYXVkaW9jb250ZXh0LWludGVyZmFjZS9jdXJyZW50LXRpbWUt
YmxvY2stc2l6ZS1leHBlY3RlZC50eHQKQEAgLTEsMyArMSwzIEBACiAKLUZBSUwgVGVzdCBjdXJy
ZW50VGltZSBhdCBjb21wbGV0aW9uIG9mIE9mZmxpbmVBdWRpb0NvbnRleHQgcmVuZGVyaW5nIHBy
b21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIkludmFs
aWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIgorUEFTUyBU
ZXN0IGN1cnJlbnRUaW1lIGF0IGNvbXBsZXRpb24gb2YgT2ZmbGluZUF1ZGlvQ29udGV4dCByZW5k
ZXJpbmcgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJm
YWNlL29zYy1iYXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2ls
bGF0b3Jub2RlLWludGVyZmFjZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhwZWN0ZWQudHh0CmluZGV4
IGZkY2Y5NmNiN2JkMWM5YjYxZDRlMmNmNzU4ODdiMjFiMWVkZmU5OGIuLjE2OTgyYzc0N2RjYTMx
YzlhMjMzMGNkYmVhZjZhOTZhNmUyNzYzMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3Nj
aWxsYXRvcm5vZGUtaW50ZXJmYWNlL29zYy1iYXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2Uvb3NjLWJhc2ljLXdhdmVm
b3JtLWV4cGVjdGVkLnR4dApAQCAtOCw2OSArOCwyMSBAQCBQQVNTIEV4ZWN1dGluZyAiVGVzdCA0
IgogUEFTUyBFeGVjdXRpbmcgIlRlc3QgNSIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBb
VGVzdCAwXSBTaW5lIHdhdmU6IDEwMCBIeiAKLUZBSUwgWCBTaW5lOiAxMDAgSHogZG9lcyBub3Qg
ZXF1YWwgWzAsMC4wMTQyNDcxMDM1OTQyNDM1MjYsMC4wMjg0OTEzMTQ1MDA1NzAyOTcsMC4wNDI3
Mjk3NDI4MjUwMzEyOCwwLjA1Njk1OTQ5ODY3MzY3NzQ0NCwwLjA3MTE3NzY5MTIyMTIzNzE4LDAu
MDg1MzgxNDMzMzY3NzI5MTksMC4wOTk1Njc4NDU0NjM3NTI3NSwwLjExMzczNDA0NDEzNDYxNjg1
LDAuMTI3ODc3MTYwOTA2NzkxNywwLjE0MTk5NDMxMjQwNTU4NjI0LDAuMTU2MDgyNjQ1MDU4NjMx
OSwwLjE3MDEzOTI5Nzg0Mjk3OTQzLDAuMTg0MTYxNDA5NzM1Njc5NjMsMC4xOTgxNDYxNDk1MTYx
MDU2NSwwLjIxMjA5MDY1NjE2MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5j
ZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTgwNDUsInJlbGF0aXZlVGhyZXNob2xk
IjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0
IHRocmVzaG9sZAotCVsxXQkyLjYxNzY5Njg1ODk0MjUwODdlLTIJMS40MjQ3MTAzNTk0MjQzNTI2
ZS0yCTEuMTkyOTg2NDk5NTE4MTU2MWUtMgk4LjM3MzUzNzA2MDU0NDU0ODBlLTEJMS44MDQ1MDAw
MDAwMDAwMDAwZS02Ci0JWzJdCTUuMjMzNTk4NTAwNDkwMTg4NmUtMgkyLjg0OTEzMTQ1MDA1NzAy
OTdlLTIJMi4zODQ0NjcwNTA0MzMxNTg5ZS0yCTguMzY5MTAxNTc0Mzk1MzQ3OWUtMQkxLjgwNDUw
MDAwMDAwMDAwMDBlLTYKLQlbM10JNy44NDU5MTUxMDg5MTkxNDM3ZS0yCTQuMjcyOTc0MjgyNTAz
MTI4MWUtMgkzLjU3Mjk0MDgyNjQxNjAxNTZlLTIJOC4zNjE3MTg1MzY1Mzg4NDAyZS0xCTEuODA0
NTAwMDAwMDAwMDAwMGUtNgotCVs0XQkxLjA0NTI4NDU2OTI2MzQ1ODNlLTEJNS42OTU5NDk4Njcz
Njc3NDQ0ZS0yCTQuNzU2ODk1ODI1MjY2ODM4MWUtMgk4LjM1MTM2NTMzMTU2NTIwMDNlLTEJMS44
MDQ1MDAwMDAwMDAwMDAwZS02Ci0JWzVdCTEuMzA1MjYxODUwMzU3MDU1N2UtMQk3LjExNzc2OTEy
MjEyMzcxODNlLTIJNS45MzQ4NDkzODE0NDY4Mzg0ZS0yCTguMzM4MDc1MTQ2MzI2Mjc4MWUtMQkx
LjgwNDUwMDAwMDAwMDAwMDBlLTYKLQkuLi5hbmQgMjUwIG1vcmUgZXJyb3JzLgotCU1heCBBYnNF
cnJvciBvZiAxLjYzNDc1Mzg4Mjg4NDk3OTJlKzAgYXQgaW5kZXggb2YgMTY1LgotCVsxNjVdCS05
LjIzODc5MjY1Nzg1MjE3MjllLTEJNy4xMDg3NDYxNzA5OTc2MTk2ZS0xCTEuNjM0NzUzODgyODg0
OTc5MmUrMAkyLjI5OTYzNzQzNzU0NzY3MjBlKzAJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0JTWF4
IFJlbEVycm9yIG9mIDcuMTE4NzkzMzI4NTA0NDExMGUrMSBhdCBpbmRleCBvZiAyMjAuCi0JWzIy
MF0JLTUuMDAwMDAwNTk2MDQ2NDQ3OGUtMQk3LjEyMzczMjQ3MzcwMTIzODZlLTMJNS4wNzEyMzc5
MjA3ODM0NjAxZS0xCTcuMTE4NzkzMzI4NTA0NDExMGUrMQkxLjgwNDUwMDAwMDAwMDAwMDBlLTYK
LSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTaW5lOiBTTlIg
KGRiKSBpcyBub3QgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDExOC45MS4gR290IC0yLjYyMDQz
NzYzMjgyMTQzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBb
VGVzdCAwXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFNpbmU6IDEwMCBIeiBlcXVhbHMgWzAsMC4w
MTQyNDcxMDM1OTQyNDM1MjYsMC4wMjg0OTEzMTQ1MDA1NzAyOTcsMC4wNDI3Mjk3NDI4MjUwMzEy
OCwwLjA1Njk1OTQ5ODY3MzY3NzQ0NCwwLjA3MTE3NzY5MTIyMTIzNzE4LDAuMDg1MzgxNDMzMzY3
NzI5MTksMC4wOTk1Njc4NDU0NjM3NTI3NSwwLjExMzczNDA0NDEzNDYxNjg1LDAuMTI3ODc3MTYw
OTA2NzkxNywwLjE0MTk5NDMxMjQwNTU4NjI0LDAuMTU2MDgyNjQ1MDU4NjMxOSwwLjE3MDEzOTI5
Nzg0Mjk3OTQzLDAuMTg0MTYxNDA5NzM1Njc5NjMsMC4xOTgxNDYxNDk1MTYxMDU2NSwwLjIxMjA5
MDY1NjE2MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLjAwMDAwMTgwNDUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNT
ICAgU2luZTogU05SIChkYikgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDExOC45MS4gCitQ
QVNTIDwgW1Rlc3QgMF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25z
KSAKIFBBU1MgPiBbVGVzdCAxXSBTaW5lIHdhdmU6IC0xMDAgSHogCi1GQUlMIFggU2luZTogLTEw
MCBIeiBkb2VzIG5vdCBlcXVhbCBbMCwtMC4wMTQyNDcxMDM1OTQyNDM1MjYsLTAuMDI4NDkxMzE0
NTAwNTcwMjk3LC0wLjA0MjcyOTc0MjgyNTAzMTI4LC0wLjA1Njk1OTQ5ODY3MzY3NzQ0NCwtMC4w
NzExNzc2OTEyMjEyMzcxOCwtMC4wODUzODE0MzMzNjc3MjkxOSwtMC4wOTk1Njc4NDU0NjM3NTI3
NSwtMC4xMTM3MzQwNDQxMzQ2MTY4NSwtMC4xMjc4NzcxNjA5MDY3OTE3LC0wLjE0MTk5NDMxMjQw
NTU4NjI0LC0wLjE1NjA4MjY0NTA1ODYzMTksLTAuMTcwMTM5Mjk3ODQyOTc5NDMsLTAuMTg0MTYx
NDA5NzM1Njc5NjMsLTAuMTk4MTQ2MTQ5NTE2MTA1NjUsLTAuMjEyMDkwNjU2MTYxMzA4My4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjQu
NzY4NGUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVk
CQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFdCS0yLjYxNzY5Njg1ODk0
MjUwODdlLTIJLTEuNDI0NzEwMzU5NDI0MzUyNmUtMgkxLjE5Mjk4NjQ5OTUxODE1NjFlLTIJOC4z
NzM1MzcwNjA1NDQ1NDgwZS0xCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNwotCVsyXQktNS4yMzM1OTM2
NTc2MTI4MDA2ZS0yCS0yLjg0OTEzMTQ1MDA1NzAyOTdlLTIJMi4zODQ0NjIyMDc1NTU3NzA5ZS0y
CTguMzY5MDg0NTc2NjYyOTc2MmUtMQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLQlbM10JLTcuODQ1
ODkzNTAyMjM1NDEyNmUtMgktNC4yNzI5NzQyODI1MDMxMjgxZS0yCTMuNTcyOTE5MjE5NzMyMjg0
NWUtMgk4LjM2MTY2Nzk3MDYyNzgzMThlLTEJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0JWzRdCS0x
LjA0NTI4MzIyODE1ODk1MDhlLTEJLTUuNjk1OTQ5ODY3MzY3NzQ0NGUtMgk0Ljc1Njg4MjQxNDIy
MTc2MzZlLTIJOC4zNTEzNDE3ODY2ODYxNDI4ZS0xCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNwotCVs1
XQktMS4zMDUyNjAyMTEyMjkzMjQzZS0xCS03LjExNzc2OTEyMjEyMzcxODNlLTIJNS45MzQ4MzI5
OTAxNjk1MjUxZS0yCTguMzM4MDUyMTE3NjUzOTA1N2UtMQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcK
LQkuLi5hbmQgMjUwIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAxLjYzNDc1NDEyMTMw
MzU1ODNlKzAgYXQgaW5kZXggb2YgMTY1LgotCVsxNjVdCTkuMjM4Nzk1MDQyMDM3OTYzOWUtMQkt
Ny4xMDg3NDYxNzA5OTc2MTk2ZS0xCTEuNjM0NzU0MTIxMzAzNTU4M2UrMAkyLjI5OTYzNzc3Mjkz
NTMzOTBlKzAJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0JTWF4IFJlbEVycm9yIG9mIDcuMTE4Nzk1
MDAxOTE0OTQ0MGUrMSBhdCBpbmRleCBvZiAyMjAuCi0JWzIyMF0JNS4wMDAwMDE3ODgxMzkzNDMz
ZS0xCS03LjEyMzczMjQ3MzcwMTIzODZlLTMJNS4wNzEyMzkxMTI4NzYzNTU2ZS0xCTcuMTE4Nzk1
MDAxOTE0OTQ0MGUrMQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTaW5lOiBTTlIgKGRiKSBpcyBub3QgZ3JlYXRlciB0
aGFuIG9yIGVxdWFsIHRvIDEzMC45NS4gR290IC0yLjYyMDQzNzUyNzAzODEzMzUuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtUZXN0IDFdIDIgb3V0IG9mIDIg
YXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitQQVNTICAgU2luZTogLTEwMCBIeiBlcXVhbHMgWzAsLTAuMDE0MjQ3MTAzNTk0MjQzNTI2
LC0wLjAyODQ5MTMxNDUwMDU3MDI5NywtMC4wNDI3Mjk3NDI4MjUwMzEyOCwtMC4wNTY5NTk0OTg2
NzM2Nzc0NDQsLTAuMDcxMTc3NjkxMjIxMjM3MTgsLTAuMDg1MzgxNDMzMzY3NzI5MTksLTAuMDk5
NTY3ODQ1NDYzNzUyNzUsLTAuMTEzNzM0MDQ0MTM0NjE2ODUsLTAuMTI3ODc3MTYwOTA2NzkxNywt
MC4xNDE5OTQzMTI0MDU1ODYyNCwtMC4xNTYwODI2NDUwNTg2MzE5LC0wLjE3MDEzOTI5Nzg0Mjk3
OTQzLC0wLjE4NDE2MTQwOTczNTY3OTYzLC0wLjE5ODE0NjE0OTUxNjEwNTY1LC0wLjIxMjA5MDY1
NjE2MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjo0Ljc2ODRlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgU2lu
ZTogU05SIChkYikgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDEzMC45NS4gCitQQVNTIDwg
W1Rlc3QgMV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbVGVzdCAyXSBTaW5lIHdhdmU6IDIgSHogCi1GQUlMIFggU2luZTogMiBIeiBkb2VzIG5v
dCBlcXVhbCBbMCwwLjAwMDI4NDk1MTcwNDA4ODU5ODUsMC4wMDA1Njk5MDM0MDgxNzcxOTcsMC4w
MDA4NTQ4NTUwNTQwNTgxMzQ2LDAuMDAxMTM5ODA2NTgzNTIzNzUwMywwLjAwMTQyNDc1ODExMjk4
OTM2NiwwLjAwMTcwOTcwOTQwOTYyNDMzODIsMC4wMDE5OTQ2NjA1ODk4NDM5ODg0LDAuMDAyMjc5
NjExNzcwMDYzNjM4NywwLjAwMjU2NDU2MjcxNzQ1MjY0NTMsMC4wMDI4NDk1MTMxOTkxODAzNjQ2
LDAuMDAzMTM0NDYzNjgwOTA4MDg0LDAuMDAzNDE5NDEzOTI5ODA1MTU5NiwwLjAwMzcwNDM2Mzcx
MzA0MDk0OCwwLjAwMzk4OTMxMzI2MzQ0NjA5MywwLjAwNDI3NDI2MjU4MTAyMDU5NC4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNDUx
NmUtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlB
YnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzFdCTUuMjM2MDAyNjE2NTg0MzAx
MGUtNAkyLjg0OTUxNzA0MDg4NTk4NDllLTQJMi4zODY0ODU1NzU2OTgzMTYxZS00CTguMzc1MDUy
ODI5ODUxODIzNGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQlbMl0JMS4wNDcyMDA1MjMzMTY4
NjAyZS0zCTUuNjk5MDM0MDgxNzcxOTY5OGUtNAk0Ljc3Mjk3MTE1MTM5NjYzMjJlLTQJOC4zNzUw
NTI4Mjk4NTE4MjM0ZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUtNwotCVszXQkxLjU3MDgwMjUzMTIw
NTExNzdlLTMJOC41NDg1NTA1NDA1ODEzNDU2ZS00CTcuMTU5NDc0NzcxNDY5ODMxNWUtNAk4LjM3
NTA3NDUwODIyNTI4NjRlLTEJMS40NTE2MDAwMDAwMDAwMDAxZS03Ci0JWzRdCTIuMDk0NDI5MjE5
MTQxNjAyNWUtMwkxLjEzOTgwNjU4MzUyMzc1MDNlLTMJOS41NDYyMjYzNTYxNzg1MjIxZS00CTgu
Mzc1MzAzNzUyNTU5NTI4NmUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQlbNV0JMi42MTgwNTYw
MjM0OTM0MDkyZS0zCTEuNDI0NzU4MTEyOTg5MzY2MWUtMwkxLjE5MzI5NzkxMDUwNDA0MzFlLTMJ
OC4zNzU0NDIxMTYyNzgzNjg4ZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUtNwotCS4uLmFuZCAyNTAg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDYuMDUyMjQ3NDM0ODU0NTA3NGUtMiBhdCBp
bmRleCBvZiAyNTUuCi0JWzI1NV0JMS4zMzEyMTIzNzE1ODc3NTMzZS0xCTcuMjU5ODc2MjgxMDIz
MDI1NWUtMgk2LjA1MjI0NzQzNDg1NDUwNzRlLTIJOC4zMzY1NzEwMzg2NDgxMzQwZS0xCTEuNDUx
NjAwMDAwMDAwMDAwMWUtNwotCU1heCBSZWxFcnJvciBvZiA4LjM3NTQ5MzI4MzEyNDE1NDZlLTEg
YXQgaW5kZXggb2YgNi4KLQlbNl0JMy4xNDE2NzUzNzcyNjQ2MTg5ZS0zCTEuNzA5NzA5NDA5NjI0
MzM4MmUtMwkxLjQzMTk2NTk2NzY0MDI4MDdlLTMJOC4zNzU0OTMyODMxMjQxNTQ2ZS0xCTEuNDUx
NjAwMDAwMDAwMDAwMWUtNwotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQot
RkFJTCBYIFNpbmU6IFNOUiAoZGIpIGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTE5
LjkzLiBHb3QgMS41NjQzMjg1ODc0MDUxMzI1LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgPCBbVGVzdCAyXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFNpbmU6IDIg
SHogZXF1YWxzIFswLDAuMDAwMjg0OTUxNzA0MDg4NTk4NSwwLjAwMDU2OTkwMzQwODE3NzE5Nyww
LjAwMDg1NDg1NTA1NDA1ODEzNDYsMC4wMDExMzk4MDY1ODM1MjM3NTAzLDAuMDAxNDI0NzU4MTEy
OTg5MzY2LDAuMDAxNzA5NzA5NDA5NjI0MzM4MiwwLjAwMTk5NDY2MDU4OTg0Mzk4ODQsMC4wMDIy
Nzk2MTE3NzAwNjM2Mzg3LDAuMDAyNTY0NTYyNzE3NDUyNjQ1MywwLjAwMjg0OTUxMzE5OTE4MDM2
NDYsMC4wMDMxMzQ0NjM2ODA5MDgwODQsMC4wMDM0MTk0MTM5Mjk4MDUxNTk2LDAuMDAzNzA0MzYz
NzEzMDQwOTQ4LDAuMDAzOTg5MzEzMjYzNDQ2MDkzLDAuMDA0Mjc0MjYyNTgxMDIwNTk0Li4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS40
NTE2ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNOUiAoZGIpIGlz
IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTkuOTMuIAorUEFTUyA8IFtUZXN0IDJdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgM10g
U2luZSB3YXZlOiAxIEh6IAotRkFJTCBYIFNpbmU6IDEgSHogZG9lcyBub3QgZXF1YWwgWzAsMC4w
MDAxNDI0NzU4NTIwNDQyOTkyNCwwLjAwMDI4NDk1MTcwNDA4ODU5ODUsMC4wMDA0Mjc0Mjc1NTYx
MzI4OTc3MywwLjAwMDU2OTkwMzQwODE3NzE5NywwLjAwMDcxMjM3OTIzMTExNzY2NTgsMC4wMDA4
NTQ4NTUwNTQwNTgxMzQ2LDAuMDAwOTk3MzMwODc2OTk4NjAzMywwLjAwMTEzOTgwNjU4MzUyMzc1
MDMsMC4wMDEyODIyODI0MDY0NjQyMTksMC4wMDE0MjQ3NTgxMTI5ODkzNjYsMC4wMDE1NjcyMzM4
MTk1MTQ1MTMsMC4wMDE3MDk3MDk0MDk2MjQzMzgyLDAuMDAxODUyMTg1MTE2MTQ5NDg1MSwwLjAw
MTk5NDY2MDU4OTg0Mzk4ODQsMC4wMDIxMzcxMzYxNzk5NTM4MTM2Li4uXSB3aXRoIGFuIGVsZW1l
bnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS40MTU3ZS03LCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlS
ZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMV0JMi42MTgwMDEzMDgyOTIxNTA1ZS00CTEuNDI0
NzU4NTIwNDQyOTkyNGUtNAkxLjE5MzI0Mjc4Nzg0OTE1ODBlLTQJOC4zNzUwNTI4Mjk4NTE4MjM0
ZS0xCTEuNDE1Njk5OTk5OTk5OTk5OWUtNwotCVsyXQk1LjIzNjAwMjYxNjU4NDMwMTBlLTQJMi44
NDk1MTcwNDA4ODU5ODQ5ZS00CTIuMzg2NDg1NTc1Njk4MzE2MWUtNAk4LjM3NTA1MjgyOTg1MTgy
MzRlLTEJMS40MTU2OTk5OTk5OTk5OTk5ZS03Ci0JWzNdCTcuODU0MDAzMzQyNzk5ODQyNGUtNAk0
LjI3NDI3NTU2MTMyODk3NzNlLTQJMy41Nzk3Mjc3ODE0NzA4NjUwZS00CTguMzc1MDUxNDY4MDM4
MzM5MmUtMQkxLjQxNTY5OTk5OTk5OTk5OTllLTcKLQlbNF0JMS4wNDcyMDA1MjMzMTY4NjAyZS0z
CTUuNjk5MDM0MDgxNzcxOTY5OGUtNAk0Ljc3Mjk3MTE1MTM5NjYzMjJlLTQJOC4zNzUwNTI4Mjk4
NTE4MjM0ZS0xCTEuNDE1Njk5OTk5OTk5OTk5OWUtNwotCVs1XQkxLjMwOTAwMDY1NDE0NjA3NTJl
LTMJNy4xMjM3OTIzMTExNzY2NTc3ZS00CTUuOTY2MjE0MjMwMjg0MDk0OGUtNAk4LjM3NTA1MzU4
MDU1MzY5NTJlLTEJMS40MTU2OTk5OTk5OTk5OTk5ZS03Ci0JLi4uYW5kIDI1MCBtb3JlIGVycm9y
cy4KLQlNYXggQWJzRXJyb3Igb2YgMy4wMzg1ODYzMDM1OTE3MjgyZS0yIGF0IGluZGV4IG9mIDI1
NS4KLQlbMjU1XQk2LjY3MDkyMTI5NTg4MTI3MTRlLTIJMy42MzIzMzQ5OTIyODk1NDMyZS0yCTMu
MDM4NTg2MzAzNTkxNzI4MmUtMgk4LjM2NTM4MDE0ODE0NjYyODNlLTEJMS40MTU2OTk5OTk5OTk5
OTk5ZS03Ci0JTWF4IFJlbEVycm9yIG9mIDguMzc1NDkzMjgzMTI0MTU0NmUtMSBhdCBpbmRleCBv
ZiAxMi4KLQlbMTJdCTMuMTQxNjc1Mzc3MjY0NjE4OWUtMwkxLjcwOTcwOTQwOTYyNDMzODJlLTMJ
MS40MzE5NjU5Njc2NDAyODA3ZS0zCTguMzc1NDkzMjgzMTI0MTU0NmUtMQkxLjQxNTY5OTk5OTk5
OTk5OTllLTcKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBT
aW5lOiBTTlIgKGRiKSBpcyBub3QgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDExMi4yMi4gR290
IDEuNTQ2MzA5MTgzODA4ODI1NC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
Ci1GQUlMIDwgW1Rlc3QgM10gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBTaW5lOiAxIEh6IGVxdWFs
cyBbMCwwLjAwMDE0MjQ3NTg1MjA0NDI5OTI0LDAuMDAwMjg0OTUxNzA0MDg4NTk4NSwwLjAwMDQy
NzQyNzU1NjEzMjg5NzczLDAuMDAwNTY5OTAzNDA4MTc3MTk3LDAuMDAwNzEyMzc5MjMxMTE3NjY1
OCwwLjAwMDg1NDg1NTA1NDA1ODEzNDYsMC4wMDA5OTczMzA4NzY5OTg2MDMzLDAuMDAxMTM5ODA2
NTgzNTIzNzUwMywwLjAwMTI4MjI4MjQwNjQ2NDIxOSwwLjAwMTQyNDc1ODExMjk4OTM2NiwwLjAw
MTU2NzIzMzgxOTUxNDUxMywwLjAwMTcwOTcwOTQwOTYyNDMzODIsMC4wMDE4NTIxODUxMTYxNDk0
ODUxLDAuMDAxOTk0NjYwNTg5ODQzOTg4NCwwLjAwMjEzNzEzNjE3OTk1MzgxMzYuLi5dIHdpdGgg
YW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxLjQxNTdl
LTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgU2luZTogU05SIChkYikgaXMgZ3Jl
YXRlciB0aGFuIG9yIGVxdWFsIHRvIDExMi4yMi4gCitQQVNTIDwgW1Rlc3QgM10gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbVGVzdCA0XSBDdXN0
b20gd2F2ZTogMTAwIEh6IAogUEFTUyAgIEN1c3RvbTogMTAwIEh6IGVxdWFscyBbMSwxLjAxNDE0
NTYxMjcxNjY3NDgsMS4wMjgwODUzNTA5OTAyOTU0LDEuMDQxODE2MzUzNzk3OTEyNiwxLjA1NTMz
NTk5ODUzNTE1NjIsMS4wNjg2NDEzMDQ5Njk3ODc2LDEuMDgxNzI5NzY5NzA2NzI2LDEuMDk0NTk4
NjUwOTMyMzEyLDEuMTA3MjQ1MzI2MDQyMTc1MywxLjExOTY2NzE3MjQzMTk0NTgsMS4xMzE4NjE4
MDU5MTU4MzI1LDEuMTQzODI2NjAzODg5NDY1MywxLjE1NTU1OTMwMTM3NjM0MjgsMS4xNjcwNTcz
OTQ5ODEzODQzLDEuMTc4MzE4NjE5NzI4MDg4NCwxLjE4OTM0MDU5MTQzMDY2NC4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAx
ODQ3OCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgICBDdXN0b206IFNOUiAoZGIpIGlz
IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMjIuNDMuIApAQCAtODYsNSArMzgsNSBAQCBGQUlM
IFggQ3VzdG9tOiAxIEh6IGRvZXMgbm90IGVxdWFsIFsxLDEuMDAwMTQyNDU1MTAxMDEzMiwxLjAw
MDI4NDkxMDIwMjAyNjQsMS4wMAogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQogRkFJTCBYIEN1c3RvbTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byAxMzguNzYuIEdvdCAxMzEuNDY2MDc0NTA3NzQxNjcuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0IDVdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMICMgQVVE
SVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDUgb3V0IG9mIDYgdGFza3Mgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAxIG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5u
ZXJub2RlLWludGVyZmFjZS9hdXRvbWF0aW9uLWNoYW5nZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9hdXRvbWF0aW9uLWNoYW5nZXMtZXhwZWN0ZWQu
dHh0CmluZGV4IGMzOWNhOTg2N2U1MzZjZjlhZGJiZTg5OWIyMDlkNzBmMjJkMzM2MzYuLmFlNWYx
NTNiYmE0MDQ1Zjc3NTY5YjkzMTk3ZmU0NzMyZDNkZTNkNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvYXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hh
bmdlcy1leHBlY3RlZC50eHQKQEAgLTEsNyArMSwzIEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2Ug
UmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWpl
Y3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgIlNldCBMaXN0ZW5lci5wb3Np
dGlvblgudmFsdWUiIApAQCAtOSw1NyArNSw3NSBAQCBQQVNTIEV4ZWN1dGluZyAiTGlzdGVuZXIu
cG9zaXRpb25YLnNldFZhbHVlIgogUEFTUyBFeGVjdXRpbmcgIkxpc3RlbmVyLnNldFBvc2l0aW9u
IiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtTZXQgTGlzdGVuZXIucG9zaXRpb25YLnZh
bHVlXSAgCi1QQVNTICAgbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDBbMDo1MTFdIGVx
dWFscyBbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjFlLTE2LCJyZWxhdGl2ZVRo
cmVzaG9sZCI6MH0uIAotUEFTUyAgIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQxWzA6
NTExXSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA1MTEgZGlmZmVyZW50IHZhbHVlcyku
IAotUEFTUyAgIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBj
b25zdGFudGx5IDAgKGNvbnRhaW5zIDE1MzYgZGlmZmVyZW50IHZhbHVlcykuIAotRkFJTCBYIGxp
c3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFsIFstMS45
MTM3MDIzNjQ5MTIyNTMzZS0xNywtMS45NTE0OTcyMzk3MTY1MzYyZS0xNywtMS45ODI4MjEwODA1
ODg4MTY4ZS0xNywtMi4wMDc1Njc4NDI5NzQ1NjU3ZS0xNywtMi4wMjU2NTgyODI5NzExMDA0ZS0x
NywtMi4wMzcwMjk1MzQ4NTE4NjdlLTE3LC0yLjA0MTY0NjAyOTg1MDUyNTNlLTE3LC0yLjAzOTQ5
MTU1NTIyNzA2OTdlLTE3LC0yLjAzMDU3MzM5MDE3MDg5MDVlLTE3LC0yLjAxNDkyMTQ3ODYyMDE2
MmUtMTcsLTEuOTkyNTg2NjA5NDY0NDk1M2UtMTcsLTEuOTYzNjQ0MDU2MTM5NjMyNGUtMTcsLTEu
OTI4MTg4Nzc4OTc5ODk0NWUtMTcsLTEuODg2MzM5NTYxMTIxMjQ0MmUtMTcsLTEuODM4MjMzODc5
OTgxNDg3OGUtMTcsLTEuNzg0MDMzMDM1NzgwMDczMmUtMTcuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uCitGQUlMIFggbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDBbMDo1MTFdIGRv
ZXMgbm90IGVxdWFsIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MWUtMTYsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJ
CVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVswXQktMy4xMjUzMTMyMjI0MDgyOTQ3ZS0xCS0x
LjkxMzcwMjM2NDkxMjI1MzNlLTE3CTMuMTI1MzEzMjIyNDA4Mjk0N2UtMQkxLjYzMzEyMzk3OTgz
NjY0MzBlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsxXQktMy4xODcwMzcxMTAzMjg2NzQz
ZS0xCS0xLjk1MTQ5NzIzOTcxNjUzNjJlLTE3CTMuMTg3MDM3MTEwMzI4Njc0M2UtMQkxLjYzMzEy
NDA2Nzc0OTk1MjhlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsyXQktMy4yMzgxOTI0OTg2
ODM5Mjk0ZS0xCS0xLjk4MjgyMTA4MDU4ODgxNjhlLTE3CTMuMjM4MTkyNDk4NjgzOTI5NGUtMQkx
LjYzMzEyMzkwMTI4NjMwMjBlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszXQktMy4yNzg2
MDcxMzAwNTA2NTkyZS0xCS0yLjAwNzU2Nzg0Mjk3NDU2NTdlLTE3CTMuMjc4NjA3MTMwMDUwNjU5
MmUtMQkxLjYzMzEyMzk1MjIxMTE2MTRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVs0XQkt
My4zMDgxNTEwNjYzMDMyNTMyZS0xCS0yLjAyNTY1ODI4Mjk3MTEwMDRlLTE3CTMuMzA4MTUxMDY2
MzAzMjUzMmUtMQkxLjYzMzEyMzk1NDg3MTE0MzRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
CS4uLmFuZCAxNTMxIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAzLjMzNDQ0NDc2MTI3
NjI0NTFlLTEgYXQgaW5kZXggb2YgMzg4LgotCVszODhdCTMuMzM0NDQ0NzYxMjc2MjQ1MWUtMQky
LjA0MTc1ODY5MTg0OTk1NTFlLTE3CTMuMzM0NDQ0NzYxMjc2MjQ1MWUtMQkxLjYzMzEyMzgyMzM5
MTIxNTRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBSZWxFcnJvciBvZiAxLjYzMzEy
NDE0NTc3NDExNDZlKzE2IGF0IGluZGV4IG9mIDEyMi4KLQlbMTIyXQktMy4wODcyNjU0OTE0ODU1
OTU3ZS0xCS0xLjg5MDQwNDY1NzUyMzU3NDhlLTE3CTMuMDg3MjY1NDkxNDg1NTk1N2UtMQkxLjYz
MzEyNDE0NTc3NDExNDZlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVswXQkxLjg5ODMwNzgx
ODkxOTQyMDJlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuODk4MzA3ODE4OTE5NDIwMmUtNAlJ
bmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzFdCTMuMjk2MDYxMTg2MTE5OTE0MWUt
NAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMy4yOTYwNjExODYxMTk5MTQxZS00CUluZmluaXR5CTku
OTk5OTk5OTk5OTk5OTk5OGUtMTcKKwlbMl0JNC4xMTIxODkzNDQ1OTYxMTc3ZS00CTAuMDAwMDAw
MDAwMDAwMDAwMGUrMAk0LjExMjE4OTM0NDU5NjExNzdlLTQJSW5maW5pdHkJOS45OTk5OTk5OTk5
OTk5OTk4ZS0xNworCVszXQk0LjI3OTA4MTQ3Njg1MjI5NzhlLTQJMC4wMDAwMDAwMDAwMDAwMDAw
ZSswCTQuMjc5MDgxNDc2ODUyMjk3OGUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3
CisJWzRdCTMuNzQ0NTQ1OTc0NzY4Njk4MmUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMy43NDQ1
NDU5NzQ3Njg2OTgyZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwkuLi5hbmQg
NTA3IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiAzLjExNjQxMTU2NjczNDMxNDBlLTEg
YXQgaW5kZXggb2YgNTExLgorCVs1MTFdCS0zLjExNjQxMTU2NjczNDMxNDBlLTEJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCTMuMTE2NDExNTY2NzM0MzE0MGUtMQlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5
OTk5OThlLTE3CisJTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDAuCisgYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbGlzdGVuci5wb3NpdGlv
blgudmFsdWU6IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDUx
MiBkaWZmZXJlbnQgdmFsdWVzKS4gCitQQVNTICAgbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91
dHB1dDBbNTEyOl0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTAyNCBkaWZmZXJlbnQg
dmFsdWVzKS4gCitGQUlMIFggbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDFbNTEyOl0g
ZG9lcyBub3QgZXF1YWwgWy0wLjMwODk2NzA4MzY5MjU1MDY2LC0wLjMwMjE3OTU0NTE2NDEwODMs
LTAuMjkxMzU1MDczNDUxOTk1ODUsLTAuMjc2NjI0MjYyMzMyOTE2MjYsLTAuMjU4MTY5ODAwMDQz
MTA2MSwtMC4yMzYyMjQ2OTYwNDAxNTM1LC0wLjIxMTA2OTEwNzA1NTY2NDA2LC0wLjE4MzAyNzE0
ODI0Njc2NTE0LC0wLjE1MjQ2MjAwNTYxNTIzNDM4LC0wLjExOTc3MTU1NTA2NjEwODcsLTAuMDg1
MzgzNzcyODUwMDM2NjIsLTAuMDQ5NzUwMDgyMTk0ODA1MTQ1LC0wLjAxMzM0MDE0NTM0OTUwMjU2
MywwLjAyMzM2NDYwMzUxOTQzOTY5NywwLjA1OTg3NzEwMTMzMTk0OTIzNCwwLjA5NTcxMTQ5OTQ1
MjU5MDk0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorCUluZGV4CUFjdHVhbAkJCUV4cGVj
dGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCisJWzBdCS04LjEwODk4NjAy
MDA4ODE5NThlLTEJLTMuMDg5NjcwODM2OTI1NTA2NmUtMQk1LjAxOTMxNTE4MzE2MjY4OTJlLTEJ
MS42MjQ1NDY5MDA5NzU4MTY0ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQktNy45MTc5
OTQyNjA3ODc5NjM5ZS0xCS0zLjAyMTc5NTQ1MTY0MTA4MjhlLTEJNC44OTYxOTg4MDkxNDY4ODEx
ZS0xCTEuNjIwMjk0NTg1NjIwNTU5OWUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMl0JLTcu
NjIyMDIwMjQ0NTk4Mzg4N2UtMQktMi45MTM1NTA3MzQ1MTk5NTg1ZS0xCTQuNzA4NDY5NTEwMDc4
NDMwMmUtMQkxLjYxNjA1ODg3MDgxMDg0NDNlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzNd
CS03LjIyNDk4NDc2NTA1Mjc5NTRlLTEJLTIuNzY2MjQyNjIzMzI5MTYyNmUtMQk0LjQ1ODc0MjE0
MTcyMzYzMjhlLTEJMS42MTE4NDA1ODk4NzQ3Nzg3ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAor
CVs0XQktNi43MzIxMzU0MTUwNzcyMDk1ZS0xCS0yLjU4MTY5ODAwMDQzMTA2MDhlLTEJNC4xNTA0
Mzc0MTQ2NDYxNDg3ZS0xCTEuNjA3NjM4NjIxNTQwMjI2MWUrMAkwLjAwMDAwMDAwMDAwMDAwMDBl
KzAKKwkuLi5hbmQgMTAxOSBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgNS4wMTkzMTUx
ODMxNjI2ODkyZS0xIGF0IGluZGV4IG9mIDAuCisJTWF4IFJlbEVycm9yIG9mIDEuNjI0NTQ2OTAw
OTc1ODE2NGUrMCBhdCBpbmRleCBvZiAwLgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQotRkFJTCA8IFtTZXQgTGlzdGVuZXIucG9zaXRpb25YLnZhbHVlXSAxIG91dCBvZiA0
IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQorRkFJTCA8IFtTZXQgTGlzdGVuZXIucG9zaXRpb25YLnZhbHVlXSAyIG91dCBvZiA0IGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQogUEFTUyA+IFtMaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWVdICAKIFBBU1MgICBsaXN0ZW5l
ci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6IG91dHB1dDBbMDo1MTFdIGVxdWFscyBbMCwwLDAs
MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjFlLTE2LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0u
IAogUEFTUyAgIGxpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1ZUFUVGltZTogb3V0cHV0MVswOjUx
MV0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNTExIGRpZmZlcmVudCB2YWx1ZXMpLiAK
IFBBU1MgICBsaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6IG91dHB1dDBbNTEyOl0g
aXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTUzNiBkaWZmZXJlbnQgdmFsdWVzKS4gCi1G
QUlMIFggbGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBvdXRwdXQxWzUxMjpdIGRv
ZXMgbm90IGVxdWFsIFstMC4wMDAyNzIyOTY5NTExNTIzODQzLC0wLjAwMDU2MDQ3NTYyOTc1NDM2
NDUsLTAuMDAwODYxOTY5MTk0Mzc0OTc4NSwtMC4wMDExNzQwNDQ5MTE3NDk2NjEsLTAuMDAxNDkz
ODIyMDg0NzM5ODA0MywtMC4wMDE4MTgyODM4MTAyODAyNjM0LC0wLjAwMjE0NDI5OTQ0NzUzNjQ2
ODUsLTAuMDAyNDY4NjM4MTIyMDgxNzU2NiwtMC4wMDI3ODc5OTExOTQwNTQ0ODQ0LC0wLjAwMzA5
ODk4OTgzNjg3MTYyNCwtMC4wMDMzOTgyMjU4NzU1NzEzNywtMC4wMDM2ODIyNzQ4MzcwNDY4NjE2
LC0wLjAwMzk0NzcxMjk0NjY4MzE2OCwtMC4wMDQxOTExNDYyMzIxODc3NDgsLTAuMDA0NDA5MjIx
NDY2NjMwNjk3LC0wLjAwNDU5ODY2MTc5MTUzMzIzMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2Ug
dG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjow
fS4KK0ZBSUwgWCBsaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6IG91dHB1dDFbNTEy
Ol0gZG9lcyBub3QgZXF1YWwgWzAuMDAwMTg5ODMwNzgxODkxOTQyMDIsMC4wMDAzMjk2MDYxMTg2
MTE5OTE0LDAuMDAwNDExMjE4OTM0NDU5NjExOCwwLjAwMDQyNzkwODE0NzY4NTIyOTgsMC4wMDAz
NzQ0NTQ1OTc0NzY4Njk4LDAuMDAwMjQ3MzQ2NDExOTI0ODA5MiwwLjAwMDA0NDkxNDQwOTk1NDc5
OTM0LC0wLjAwMDIzMjU3MTc5NDE4NTc4NzQ0LC0wLjAwMDU4Mjg0MjAzOTg3NTY4NjIsLTAuMDAx
MDAxNjEwMzA0MjI4OTYxNSwtMC4wMDE0ODI1OTIwODA3MTk3NjksLTAuMDAyMDE3NTc3NDExNjA2
OTA4LC0wLjAwMjU5NjUzMzYyNDQ1NTMzMjgsLTAuMDAzMjA3NzU2MjA2MzkzMjQyLC0wLjAwMzgz
ODA1Mjc0MDMyMDU2MzMsLTAuMDA0NDcyOTczMjkwODMwODUxLi4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRl
c3QgdGhyZXNob2xkCi0JWzBdCS0zLjE1NTQyMjUwODcxNjU4MzNlLTEJLTIuNzIyOTY5NTExNTIz
ODQyOGUtNAkzLjE1MjY5OTUzOTIwNTA1OTRlLTEJMS4xNTc4MTY2ODcyMDk1MTk2ZSszCTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAotCVsxXQktMy4yNDgyNjQ3ODk1ODEyOTg4ZS0xCS01LjYwNDc1NjI5
NzU0MzY0NDllLTQJMy4yNDI2NjAwMzMyODM3NTUyZS0xCTUuNzg1NTUwNDUyMzk4NjAzMWUrMgkw
LjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMl0JLTMuMzMxMjM0NDU1MTA4NjQyNmUtMQktOC42MTk2
OTE5NDM3NDk3ODU0ZS00CTMuMzIyNjE0NzYzMTY0ODkyOGUtMQkzLjg1NDY3OTI0NDc0Mjc4OTBl
KzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzNdCS0zLjQwMzg0Mjc0NzIxMTQ1NjNlLTEJLTEu
MTc0MDQ0OTExNzQ5NjYxMGUtMwkzLjM5MjEwMjI5ODA5Mzk1OTdlLTEJMi44ODkyNDQwNjkwNjk1
MjMwZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVs0XQktMy40NjU2NDI5MjkwNzcxNDg0ZS0x
CS0xLjQ5MzgyMjA4NDczOTgwNDNlLTMJMy40NTA3MDQ3MDgyMjk3NTA0ZS0xCTIuMzA5OTgzNzI3
OTY5MDQ5NmUrMgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMF0JMi4xOTk3OTEwNzM3OTkxMzMz
ZS0xCTEuODk4MzA3ODE4OTE5NDIwMmUtNAkyLjE5Nzg5Mjc2NTk4MDIxMzllLTEJMS4xNTc4MTY4
NDMwMTkzNDA5ZSszCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQkxLjkxMDI0ODk5NDgyNzI3
MDVlLTEJMy4yOTYwNjExODYxMTk5MTQxZS00CTEuOTA2OTUyOTMzNjQxMTUwNmUtMQk1Ljc4NTU1
MDc3MDkzNjk3MzhlKzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzJdCTEuNTg5MjI5MjU1OTE0
Njg4MWUtMQk0LjExMjE4OTM0NDU5NjExNzdlLTQJMS41ODUxMTcwNjY1NzAwOTIwZS0xCTMuODU0
Njc5MTgzNjE1Njk0NWUrMgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbM10JMS4yNDA2MTAyNTY3
OTExMTQ4ZS0xCTQuMjc5MDgxNDc2ODUyMjk3OGUtNAkxLjIzNjMzMTE3NTMxNDI2MjVlLTEJMi44
ODkyNDQyOTY5NDEyOTI5ZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVs0XQk4LjY4NzI4NjA3
ODkyOTkwMTFlLTIJMy43NDQ1NDU5NzQ3Njg2OTgyZS00CTguNjQ5ODQwNjE5MTgyMjE0MWUtMgky
LjMwOTk4MzgyMTEyNzA3NzNlKzIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCiAJLi4uYW5kIDE1MzEg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDUuOTU3Mzc1NzY0ODQ2ODAxOGUtMSBhdCBp
bmRleCBvZiAyMjQuCi0JWzIyNF0JLTcuMjg4ODY2MDQzMDkwODIwM2UtMQktMS4zMzE0OTAyNzgy
NDQwMTg2ZS0xCTUuOTU3Mzc1NzY0ODQ2ODAxOGUtMQk0LjQ3NDIxNjQ5NDI0NTQxMjhlKzAJMC4w
MDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDEuMTU3ODE2Njg3MjA5NTE5NmUr
MyBhdCBpbmRleCBvZiAwLgorCU1heCBBYnNFcnJvciBvZiA1Ljk2Njk1MTI1MTAyOTk2ODNlLTEg
YXQgaW5kZXggb2YgMjM4LgorCVsyMzhdCS03LjM5NjI5NTY2NjY5NDY0MTFlLTEJLTEuNDI5MzQ0
NDE1NjY0NjcyOWUtMQk1Ljk2Njk1MTI1MTAyOTk2ODNlLTEJNC4xNzQ2MDcwMzM1NzE1NTUzZSsw
CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCU1heCBSZWxFcnJvciBvZiAxLjE1NzgxNjg0MzAxOTM0
MDllKzMgYXQgaW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKIEZBSUwgPCBbTGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlXSAxIG91dCBvZiA0IGFzc2Vy
dGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQog
UEFTUyA+IFtMaXN0ZW5lci5zZXRQb3NpdGlvbl0gIAotUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rp
b246IG91dHB1dDBbMDo1MTFdIGVxdWFscyBbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hv
bGQiOjFlLTE2LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAotUEFTUyAgIGxpc3RlbmVyLnNldFBv
c3Rpb246IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDUxMSBk
aWZmZXJlbnQgdmFsdWVzKS4gCi1QQVNTICAgbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MFs1
MTI6XSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyAxNTM2IGRpZmZlcmVudCB2YWx1ZXMp
LiAKLUZBSUwgWCBsaXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVx
dWFsIFstMS45MTM3MDIzNjQ5MTIyNTMzZS0xNywtMS45NTE0OTcyMzk3MTY1MzYyZS0xNywtMS45
ODI4MjEwODA1ODg4MTY4ZS0xNywtMi4wMDc1Njc4NDI5NzQ1NjU3ZS0xNywtMi4wMjU2NTgyODI5
NzExMDA0ZS0xNywtMi4wMzcwMjk1MzQ4NTE4NjdlLTE3LC0yLjA0MTY0NjAyOTg1MDUyNTNlLTE3
LC0yLjAzOTQ5MTU1NTIyNzA2OTdlLTE3LC0yLjAzMDU3MzM5MDE3MDg5MDVlLTE3LC0yLjAxNDky
MTQ3ODYyMDE2MmUtMTcsLTEuOTkyNTg2NjA5NDY0NDk1M2UtMTcsLTEuOTYzNjQ0MDU2MTM5NjMy
NGUtMTcsLTEuOTI4MTg4Nzc4OTc5ODk0NWUtMTcsLTEuODg2MzM5NTYxMTIxMjQ0MmUtMTcsLTEu
ODM4MjMzODc5OTgxNDg3OGUtMTcsLTEuNzg0MDMzMDM1NzgwMDczMmUtMTcuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2
ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MFswOjUx
MV0gZG9lcyBub3QgZXF1YWwgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdp
dGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0x
NiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNF
cnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzBdCS0zLjEyNTMxMzIyMjQwODI5NDdl
LTEJLTEuOTEzNzAyMzY0OTEyMjUzM2UtMTcJMy4xMjUzMTMyMjI0MDgyOTQ3ZS0xCTEuNjMzMTIz
OTc5ODM2NjQzMGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzFdCS0zLjE4NzAzNzExMDMy
ODY3NDNlLTEJLTEuOTUxNDk3MjM5NzE2NTM2MmUtMTcJMy4xODcwMzcxMTAzMjg2NzQzZS0xCTEu
NjMzMTI0MDY3NzQ5OTUyOGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzJdCS0zLjIzODE5
MjQ5ODY4MzkyOTRlLTEJLTEuOTgyODIxMDgwNTg4ODE2OGUtMTcJMy4yMzgxOTI0OTg2ODM5Mjk0
ZS0xCTEuNjMzMTIzOTAxMjg2MzAyMGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzNdCS0z
LjI3ODYwNzEzMDA1MDY1OTJlLTEJLTIuMDA3NTY3ODQyOTc0NTY1N2UtMTcJMy4yNzg2MDcxMzAw
NTA2NTkyZS0xCTEuNjMzMTIzOTUyMjExMTYxNGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0J
WzRdCS0zLjMwODE1MTA2NjMwMzI1MzJlLTEJLTIuMDI1NjU4MjgyOTcxMTAwNGUtMTcJMy4zMDgx
NTEwNjYzMDMyNTMyZS0xCTEuNjMzMTIzOTU0ODcxMTQzNGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAw
ZSswCi0JLi4uYW5kIDE1MzEgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDMuMzM0NDQ0
NzYxMjc2MjQ1MWUtMSBhdCBpbmRleCBvZiAzODguCi0JWzM4OF0JMy4zMzQ0NDQ3NjEyNzYyNDUx
ZS0xCTIuMDQxNzU4NjkxODQ5OTU1MWUtMTcJMy4zMzQ0NDQ3NjEyNzYyNDUxZS0xCTEuNjMzMTIz
ODIzMzkxMjE1NGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDEu
NjMzMTI0MTQ1Nzc0MTE0NmUrMTYgYXQgaW5kZXggb2YgMTIyLgotCVsxMjJdCS0zLjA4NzI2NTQ5
MTQ4NTU5NTdlLTEJLTEuODkwNDA0NjU3NTIzNTc0OGUtMTcJMy4wODcyNjU0OTE0ODU1OTU3ZS0x
CTEuNjMzMTI0MTQ1Nzc0MTE0NmUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzBdCTEuODk4
MzA3ODE4OTE5NDIwMmUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMS44OTgzMDc4MTg5MTk0MjAy
ZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwlbMV0JMy4yOTYwNjExODYxMTk5
MTQxZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkzLjI5NjA2MTE4NjExOTkxNDFlLTQJSW5maW5p
dHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCVsyXQk0LjExMjE4OTM0NDU5NjExNzdlLTQJMC4w
MDAwMDAwMDAwMDAwMDAwZSswCTQuMTEyMTg5MzQ0NTk2MTE3N2UtNAlJbmZpbml0eQk5Ljk5OTk5
OTk5OTk5OTk5OThlLTE3CisJWzNdCTQuMjc5MDgxNDc2ODUyMjk3OGUtNAkwLjAwMDAwMDAwMDAw
MDAwMDBlKzAJNC4yNzkwODE0NzY4NTIyOTc4ZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5
OGUtMTcKKwlbNF0JMy43NDQ1NDU5NzQ3Njg2OTgyZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkz
Ljc0NDU0NTk3NDc2ODY5ODJlLTQJSW5maW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCS4u
LmFuZCA1MDcgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDMuMTE2NDExNTY2NzM0MzE0
MGUtMSBhdCBpbmRleCBvZiA1MTEuCisJWzUxMV0JLTMuMTE2NDExNTY2NzM0MzE0MGUtMQkwLjAw
MDAwMDAwMDAwMDAwMDBlKzAJMy4xMTY0MTE1NjY3MzQzMTQwZS0xCUluZmluaXR5CTkuOTk5OTk5
OTk5OTk5OTk5OGUtMTcKKwlNYXggUmVsRXJyb3Igb2YgSW5maW5pdHkgYXQgaW5kZXggb2YgMC4K
KyBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBsaXN0ZW5lci5z
ZXRQb3N0aW9uOiBvdXRwdXQxWzA6NTExXSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA1
MTIgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1
dDBbNTEyOl0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTAyNCBkaWZmZXJlbnQgdmFs
dWVzKS4gCitGQUlMIFggbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MVs1MTI6XSBkb2VzIG5v
dCBlcXVhbCBbLTAuMzA4OTY3MDgzNjkyNTUwNjYsLTAuMzAyMTc5NTQ1MTY0MTA4MywtMC4yOTEz
NTUwNzM0NTE5OTU4NSwtMC4yNzY2MjQyNjIzMzI5MTYyNiwtMC4yNTgxNjk4MDAwNDMxMDYxLC0w
LjIzNjIyNDY5NjA0MDE1MzUsLTAuMjExMDY5MTA3MDU1NjY0MDYsLTAuMTgzMDI3MTQ4MjQ2NzY1
MTQsLTAuMTUyNDYyMDA1NjE1MjM0MzgsLTAuMTE5NzcxNTU1MDY2MTA4NywtMC4wODUzODM3NzI4
NTAwMzY2MiwtMC4wNDk3NTAwODIxOTQ4MDUxNDUsLTAuMDEzMzQwMTQ1MzQ5NTAyNTYzLDAuMDIz
MzY0NjAzNTE5NDM5Njk3LDAuMDU5ODc3MTAxMzMxOTQ5MjM0LDAuMDk1NzExNDk5NDUyNTkwOTQu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCisJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFi
c0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKKwlbMF0JLTguMTA4OTg2MDIwMDg4MTk1
OGUtMQktMy4wODk2NzA4MzY5MjU1MDY2ZS0xCTUuMDE5MzE1MTgzMTYyNjg5MmUtMQkxLjYyNDU0
NjkwMDk3NTgxNjRlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzFdCS03LjkxNzk5NDI2MDc4
Nzk2MzllLTEJLTMuMDIxNzk1NDUxNjQxMDgyOGUtMQk0Ljg5NjE5ODgwOTE0Njg4MTFlLTEJMS42
MjAyOTQ1ODU2MjA1NTk5ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsyXQktNy42MjIwMjAy
NDQ1OTgzODg3ZS0xCS0yLjkxMzU1MDczNDUxOTk1ODVlLTEJNC43MDg0Njk1MTAwNzg0MzAyZS0x
CTEuNjE2MDU4ODcwODEwODQ0M2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbM10JLTcuMjI0
OTg0NzY1MDUyNzk1NGUtMQktMi43NjYyNDI2MjMzMjkxNjI2ZS0xCTQuNDU4NzQyMTQxNzIzNjMy
OGUtMQkxLjYxMTg0MDU4OTg3NDc3ODdlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzRdCS02
LjczMjEzNTQxNTA3NzIwOTVlLTEJLTIuNTgxNjk4MDAwNDMxMDYwOGUtMQk0LjE1MDQzNzQxNDY0
NjE0ODdlLTEJMS42MDc2Mzg2MjE1NDAyMjYxZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCS4u
LmFuZCAxMDE5IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiA1LjAxOTMxNTE4MzE2MjY4
OTJlLTEgYXQgaW5kZXggb2YgMC4KKwlNYXggUmVsRXJyb3Igb2YgMS42MjQ1NDY5MDA5NzU4MTY0
ZSswIGF0IGluZGV4IG9mIDAuCiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
Ci1GQUlMIDwgW0xpc3RlbmVyLnNldFBvc2l0aW9uXSAxIG91dCBvZiA0IGFzc2VydGlvbnMgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFtM
aXN0ZW5lci5zZXRQb3NpdGlvbl0gMiBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgIyBBVURJVCBUQVNLIFJV
Tk5FUiBGSU5JU0hFRDogMyBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFu
bmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9wYW5uZXItYXV0b21hdGlvbi1iYXNp
Yy1leHBlY3RlZC50eHQKaW5kZXggMDkyZjQzYTlkYjM0NzBlY2RjMWYyMTI3ODI5MTI4ZjNhNDFj
MDY3ZC4uYzgzMjFkNjU4YTBjZmViNmRhZjU3NDY0MWEzMDM3ZGFhOWEyYmFkMyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9wYW5uZXItYXV0b21hdGlvbi1i
YXNpYy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFj
ZS9wYW5uZXItYXV0b21hdGlvbi1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw0IEBACiAK
LUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJlamVjdGlvbjogVGhl
IG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCiBQQVNTICMgQVVESVQgVEFTSyBSVU5O
RVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiU3RlcmVvIHBhbm5lci5wb3NpdGlvblgiIAog
UEFTUyBFeGVjdXRpbmcgIk1vbm8gcGFubmVyLnBvc2l0aW9uWCIgCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWludGVyZmFjZS93YXZlc2hhcGVyLWNvcHktY3VydmUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2
ZXNoYXBlci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dAppbmRleCAyYWI0ZTNiZjA0ZDhkMDlhNWJm
ZGJkM2RlMGEzNDQ1NTg1YzFkMzQwLi43NjliYmExNWY2Y2MxMzQzYTI3NDlmMzJhN2RlMjA0OTFk
ZGJlMzdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWludGVyZmFj
ZS93YXZlc2hhcGVyLWNvcHktY3VydmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
d2F2ZXNoYXBlcm5vZGUtaW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2ZS1leHBlY3RlZC50
eHQKQEAgLTEsMTIgKzEsMTYgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2Ug
UmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWpl
Y3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRlc3QgY29weWluZyIgCiBQ
QVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbdGVzdCBjb3B5aW5nXSBNb2RpZnlpbmcgY3VydmUg
c2hvdWxkIG5vdCBtb2RpZnkgV2F2ZVNoYXBlciAKLVBBU1MgICBPdXRwdXQgb2YgV2F2ZVNoYXBl
ciB3aXRoIG1vZGlmaWVkIGN1cnZlIGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAsLTAuMDM2
MDY2MTc0NTA3MTQxMTEsLTAuMTA3NDA0ODI4MDcxNTk0MjQsLTAuMTMwODQ1MTg5MDk0NTQzNDYs
LTAuMTg4MzI1MDQ3NDkyOTgwOTYsLTAuMjMzOTE0MDE3Njc3MzA3MTMsLTAuMjg1ODMyMDQ3NDYy
NDYzNCwtMC4zMTA1MjM4Njc2MDcxMTY3LC0wLjM5NDU4OTc4MTc2MTE2OTQzLC0wLjQwNTQxMTAw
NTAyMDE0MTYsLTAuNDY1MzkzNTQzMjQzNDA4MiwtMC41Mjk1NTQ0ODYyNzQ3MTkyLC0wLjU0MDcz
ODU4MjYxMTA4NCwtMC42MTU0NTI3NjY0MTg0NTcsLTAuNjU3OTkxNDA5MzAxNzU3OCwtMC42OTg0
NDM3NzA0MDg2MzA0Li4uXS4gCi1QQVNTIDwgW3Rlc3QgY29weWluZ10gQWxsIGFzc2VydGlvbnMg
cGFzc2VkLiAodG90YWwgMSBhc3NlcnRpb25zKSAKLVBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBG
SU5JU0hFRDogMSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKK1BBU1MgICBNb2RpZnlpbmcgY3Vy
dmUgYXJyYXkgYXQgdGltZSAwLjAxNiBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitGQUlM
IFggT3V0cHV0IG9mIFdhdmVTaGFwZXIgd2l0aCBtb2RpZmllZCBjdXJ2ZSBleHBlY3RlZCB0byBi
ZSBlcXVhbCB0byB0aGUgYXJyYXkgWy0wLjA3NTY1MjM2MDkxNjEzNzcsLTAuMTE2NTkxMjE1MTMz
NjY2OTksLTAuMTU1ODM5MjA0Nzg4MjA4LC0wLjIwODY2NzUxNjcwODM3NDAyLC0wLjI2MDYxNzI1
NjE2NDU1MDgsLTAuMjk0NDgzNzgwODYwOTAwOSwtMC4zNDU0MjAzNjA1NjUxODU1NSwtMC40MTE1
ODQ0OTY0OTgxMDc5LC0wLjQxNDU0MTYwMjEzNDcwNDYsLTAuNTExNzQ1NjkxMjk5NDM4NSwtMC41
MjQ1MjAyNzc5NzY5ODk3LC0wLjU3Nzg1MjQ4NzU2NDA4NjksLTAuNjMxMjY2MzU1NTE0NTI2NCwt
MC42ODk1NDA2MjQ2MTg1MzAzLC0wLjY3OTY0Mzg2OTQwMDAyNDQsLTAuODIyNDkxNzY1MDIyMjc3
OC4uLl0gYnV0IGRpZmZlcnMgaW4gNzY4IHBsYWNlczoKKwlJbmRleAlBY3R1YWwJCQlFeHBlY3Rl
ZAorCVswXQkxLjcyMjgyNzI1NTcyNTg2MDZlLTEJLTcuNTY1MjM2MDkxNjEzNzY5NWUtMgorCVsx
XQkxLjk3ODY5NTA5NDU4NTQxODdlLTEJLTEuMTY1OTEyMTUxMzM2NjY5OWUtMQorCVsyXQkyLjIy
Mzk5NTAyOTkyNjMwMDBlLTEJLTEuNTU4MzkyMDQ3ODgyMDgwMWUtMQorCVszXQkyLjU1NDE3MTk3
OTQyNzMzNzZlLTEJLTIuMDg2Njc1MTY3MDgzNzQwMmUtMQorCS4uLmFuZCA3NjQgbW9yZSBlcnJv
cnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFt0ZXN0IGNv
cHlpbmddIDEgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6
IDEgb3V0IG9mIDEgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmZlYWRjNWE0ZGI2NjY3YWI3MjQzZDIzNzc5ZjM4MTgzNmU4Zjk0
NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDM0IEBA
CisKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKK1BBU1MgRXhlY3V0aW5nICJz
dXNwZW5kLWludmFsaWQtYXJndW1lbnQiIAorUEFTUyBFeGVjdXRpbmcgInN1c3BlbmQtaW4tdGhl
LXBhc3QiIAorUEFTUyBFeGVjdXRpbmcgInN1c3BlbmQtYWZ0ZXItcmVuZGVyLWNvbXBsZXRpb24i
IAorUEFTUyBFeGVjdXRpbmcgImlkZW50aWNhbC1zdXNwZW5kLXRpbWUiIAorUEFTUyBFeGVjdXRp
bmcgInJlc3VtZS1iZWZvcmUtc3VzcGVuZCIgCitQQVNTIEV4ZWN1dGluZyAicmVzdW1lLXdpdGhv
dXQtc3VzcGVuZCIgCitQQVNTIEF1ZGl0IHJlcG9ydCAKK1BBU1MgPiBbc3VzcGVuZC1pbnZhbGlk
LWFyZ3VtZW50XSAgCitQQVNTICAgY29udGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5
IHdpdGggVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4gCitQQVNTICAgY29udGV4dC5z
dXNwZW5kKC0xLjApIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBz
dXNwZW5kVGltZSBjYW5ub3QgYmUgbmVnYXRpdmUuIAorUEFTUyAgIGNvbnRleHQuc3VzcGVuZCgy
LjApIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGlt
ZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNT
IDwgW3N1c3BlbmQtaW52YWxpZC1hcmd1bWVudF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMyBhc3NlcnRpb25zKSAKK1BBU1MgPiBbc3VzcGVuZC1pbi10aGUtcGFzdF0gIAorUEFTUyAg
IFNjaGVkdWxpbmcgYSBzdXNwZW5kIGluIHRoZSBwYXN0IHJlamVjdGVkIGNvcnJlY3RseSB3aXRo
IEludmFsaWRTdGF0ZUVycm9yOiBTdXNwZW5zaW9uIGZyYW1lIGlzIGVhcmxpZXIgdGhhbiBjdXJy
ZW50IGZyYW1lLiAKK1BBU1MgICBQcm9taXNlIHJlc29sdmVkIGNvcnJlY3RseS4gCitQQVNTIDwg
W3N1c3BlbmQtaW4tdGhlLXBhc3RdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCitQQVNTID4gW3N1c3BlbmQtYWZ0ZXItcmVuZGVyLWNvbXBsZXRpb25dICAKK1BB
U1MgICBTY2hlZHVsaW5nIGEgc3VzcGVuZCBhZnRlciB0aGUgcmVuZGVyIGNvbXBsZXRpb24gcmVq
ZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IHN1c3BlbmRUaW1lIGNhbm5v
dCBiZSBncmVhdGVyIHRoYW4gdG90YWwgcmVuZGVyaW5nIGR1cmF0aW9uLiAKK1BBU1MgPCBbc3Vz
cGVuZC1hZnRlci1yZW5kZXItY29tcGxldGlvbl0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90
YWwgMSBhc3NlcnRpb25zKSAKK1BBU1MgPiBbaWRlbnRpY2FsLXN1c3BlbmQtdGltZV0gIAorUEFT
UyAgIFNjaGVkdWxpbmcgYSBzdXNwZW5kIGF0IGZyYW1lIDE2MCBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGluZyBhbm90aGVyIHN1c3BlbmQgYXQgdGhlIHNhbWUg
cmVuZGVyaW5nIHF1YW50dW0gcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJy
b3I6IFRoZXJlIGlzIGFscmVhZHkgYSBwZW5kaW5nIHN1c3BlbmQgcmVxdWVzdCBhdCB0aGlzIGZy
YW1lLiAKK1BBU1MgPCBbaWRlbnRpY2FsLXN1c3BlbmQtdGltZV0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK1BBU1MgPiBbcmVzdW1lLWJlZm9yZS1zdXNwZW5k
XSAgCitQQVNTICAgU2NoZWR1bGluZyBhIHN1c3BlbmQgYXQgNC41IHNlY29uZHMgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFJlc3VtaW5nIGEgcnVubmluZyBjb250ZXh0IHJl
c29sdmVkIGNvcnJlY3RseS4gCitQQVNTIDwgW3Jlc3VtZS1iZWZvcmUtc3VzcGVuZF0gQWxsIGFz
c2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK1BBU1MgPiBbcmVzdW1lLXdp
dGhvdXQtc3VzcGVuZF0gIAorUEFTUyAgIFJlc3VtaW5nIGEgY29udGV4dCB3aXRob3V0IHN0YXJ0
aW5nIGl0IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBDYW5ub3Qg
cmVzdW1lIGFuIG9mZmxpbmUgYXVkaW8gY29udGV4dCB0aGF0IGhhcyBub3Qgc3RhcnRlZC4gCitQ
QVNTIDwgW3Jlc3VtZS13aXRob3V0LXN1c3BlbmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDEgYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDYg
dGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMuaHRtbCBiL0xheW91
dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi45OGQ3ZDYzYmI4OWNmNTRjYjAzODkxNzI2ZmI3MGE5MTk3NmJjYzE2
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29u
dGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy5odG1sCkBAIC0wLDAgKzEsMTUyIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwKKyAgICA8L3RpdGxlPgorICAgIDxz
Y3JpcHQgc3JjPSIuLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNl
cy9hdWRpdC11dGlsLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F1
ZGl0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0IGlkPSJs
YXlvdXQtdGVzdC1jb2RlIj4KKyAgICAgIGxldCBzYW1wbGVSYXRlID0gNDQxMDA7CisgICAgICBs
ZXQgcmVuZGVyRHVyYXRpb24gPSAxOworICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisK
KyAgICAgIGxldCBhdWRpdCA9IEF1ZGl0LmNyZWF0ZVRhc2tSdW5uZXIoKTsKKworICAgICAgLy8g
VGFzazogQ2FsbGluZyBzdXNwZW5kIHdpdGggbm8gYXJndW1lbnQsIG5lZ2F0aXZlIHRpbWUgb3Ig
dGhlIHRpbWUKKyAgICAgIC8vIGJleW9uZCB0aGUgbWF4aW11bSByZW5kZXIgZHVyYXRpb24gcmVq
ZWN0IHRoZSBwcm9taXNlLgorICAgICAgYXVkaXQuZGVmaW5lKCdzdXNwZW5kLWludmFsaWQtYXJn
dW1lbnQnLCAodGFzaywgc2hvdWxkKSA9PiB7CisgICAgICAgIGxldCBjb250ZXh0ID0KKyAgICAg
ICAgICAgIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIHNhbXBsZVJhdGUgKiByZW5kZXJEdXJh
dGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAgICAgICAgc2hvdWxkKGNvbnRleHQuc3VzcGVuZCgpLCAn
Y29udGV4dC5zdXNwZW5kKCknKS5iZVJlamVjdGVkKCk7CisgICAgICAgIHNob3VsZChjb250ZXh0
LnN1c3BlbmQoLTEuMCksICdjb250ZXh0LnN1c3BlbmQoLTEuMCknKS5iZVJlamVjdGVkKCk7Cisg
ICAgICAgIHNob3VsZChjb250ZXh0LnN1c3BlbmQoMi4wKSwgJ2NvbnRleHQuc3VzcGVuZCgyLjAp
JykuYmVSZWplY3RlZCgpOworCisgICAgICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKS50aGVu
KCgpID0+IHRhc2suZG9uZSgpKTsKKyAgICAgIH0pOworCisgICAgICAvLyBUYXNrOiBTY2hlZHVs
aW5nIGEgc3VzcGVuZCBpbiB0aGUgcGFzdCBzaG91bGQgYmUgcmVqZWN0ZWQuCisgICAgICBhdWRp
dC5kZWZpbmUoJ3N1c3BlbmQtaW4tdGhlLXBhc3QnLCAodGFzaywgc2hvdWxkKSA9PiB7CisgICAg
ICAgIGxldCBjb250ZXh0ID0KKyAgICAgICAgICAgIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEs
IHNhbXBsZVJhdGUgKiByZW5kZXJEdXJhdGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAgICAgICAgY29u
dGV4dC5zdXNwZW5kKDAuNSkudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICBzaG91bGQoCisg
ICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChjb250ZXh0LmN1cnJlbnRUaW1lIC0gMC4xKSwK
KyAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYSBzdXNwZW5kIGluIHRoZSBwYXN0JykKKyAgICAg
ICAgICAgICAgLmJlUmVqZWN0ZWQoKTsKKworICAgICAgICAgIHNob3VsZChjb250ZXh0CisgICAg
ICAgICAgICAgICAgICAgICAuc3VzcGVuZCgKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb250
ZXh0LmN1cnJlbnRUaW1lICsgMC4xLAorICAgICAgICAgICAgICAgICAgICAgICAgICdTY2hlZHVs
aW5nIGEgc3VzcGVuZCBpbiB0aGUgZnV0dXJlJykKKyAgICAgICAgICAgICAgICAgICAgIC50aGVu
KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LnJlc3VtZSgpOwor
ICAgICAgICAgICAgICAgICAgICAgfSkpCisgICAgICAgICAgICAgIC5iZVJlc29sdmVkKCk7CisK
KyAgICAgICAgICBjb250ZXh0LnJlc3VtZSgpOworICAgICAgICB9KTsKKworICAgICAgICBjb250
ZXh0LnN0YXJ0UmVuZGVyaW5nKCkudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICB9KTsK
KworICAgICAgLy8gVGFzazogc3VzcGVuZGluZyBhZnRlciByZW5kZXJpbmcgaXMgZmluaXNoZWQg
bXVzdCBiZSByZWplY3RlZCB3aXRoIHRoZQorICAgICAgLy8gcHJvcGVybHkgY2xhbXBlZCBmcmFt
ZS90aW1lIGluZm9ybWF0aW9uLgorICAgICAgYXVkaXQuZGVmaW5lKCdzdXNwZW5kLWFmdGVyLXJl
bmRlci1jb21wbGV0aW9uJywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29udGV4
dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICog
cmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVy
aW5nKCkKKyAgICAgICAgICAgIC50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICBzaG91
bGQoCisgICAgICAgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQocmVuZGVyRHVyYXRpb24pLAor
ICAgICAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYSBzdXNwZW5kIGFmdGVyIHRoZSByZW5kZXIg
Y29tcGxldGlvbicpCisgICAgICAgICAgICAgICAgICAuYmVSZWplY3RlZCgpOworICAgICAgICAg
ICAgfSkKKyAgICAgICAgICAgIC50aGVuKCgpID0+IHRhc2suZG9uZSgpKTsKKyAgICAgIH0pOwor
CisgICAgICAvLyBUYXNrOiBDYWxsaW5nIG11bHRpcGxlIHN1c3BlbmRzIGF0IHRoZSBzYW1lIHJl
bmRlcmluZyBxdWFudHVtIHNob3VsZAorICAgICAgLy8gcmVqZWN0IHRoZSBwcm9taXNlLgorICAg
ICAgYXVkaXQuZGVmaW5lKCdpZGVudGljYWwtc3VzcGVuZC10aW1lJywgKHRhc2ssIHNob3VsZCkg
PT4geworICAgICAgICBsZXQgY29udGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlv
Q29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisg
ICAgICAgIC8vIHxzdXNwZW5kVGltZTF8IGFuZCB8c3VzcGVuZFRpbWUyfCBhcmUgaWRlbnRpY2Fs
IHdoZW4gcXVhbnRpemVkIHRvIHRoZQorICAgICAgICAvLyByZW5kZXIgcXVhbnR1bSBzaXplLiAg
VGhlIGZhY3RvcnMgYXJlIGFyYml0cmFyeSBleGNlcHQgdGhleSBzaG91bGQgYmUKKyAgICAgICAg
Ly8gYmV0d2VlbiAxIChleGNsdXNpdmUpIGFuZCAyIChpbmNsdXNpdmUpLiAgVXNpbmcgYSBmYWN0
b3Igb2YgMiBhbHNvCisgICAgICAgIC8vIHRlc3RzIHRoYXQgdGltZXMgYXJlIHJvdW5kZWQgdXAu
CisgICAgICAgIGxldCBzdXNwZW5kVGltZTEgPSAxLjI1ICogcmVuZGVyUXVhbnR1bSAvIHNhbXBs
ZVJhdGU7CisgICAgICAgIGxldCBzdXNwZW5kVGltZTIgPSAyICogcmVuZGVyUXVhbnR1bSAvIHNh
bXBsZVJhdGU7CisKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgKCkgPT4gY29udGV4dC5z
dXNwZW5kKHN1c3BlbmRUaW1lMSkudGhlbigoKSA9PiBjb250ZXh0LnJlc3VtZSgpKSwKKyAgICAg
ICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCBmcmFtZSAnICsgc3VzcGVuZFRpbWUxICog
c2FtcGxlUmF0ZSkKKyAgICAgICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgIHNob3VsZCgK
KyAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChzdXNwZW5kVGltZTIpLnRoZW4oKCkgPT4gY29u
dGV4dC5yZXN1bWUoKSksCisgICAgICAgICAgICAnU2NoZWR1bGluZyBhbm90aGVyIHN1c3BlbmQg
YXQgdGhlIHNhbWUgcmVuZGVyaW5nIHF1YW50dW0nKQorICAgICAgICAgICAgLmJlUmVqZWN0ZWQo
KTsKKworICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkudGhlbigoKSA9PiB0YXNrLmRv
bmUoKSk7CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazogUmVzdW1pbmcgYSBydW5uaW5nIGNv
bnRleHQgc2hvdWxkIGJlIHJlc29sdmVkLgorICAgICAgYXVkaXQuZGVmaW5lKCdyZXN1bWUtYmVm
b3JlLXN1c3BlbmQnLCAodGFzaywgc2hvdWxkKSA9PiB7CisgICAgICAgIC8vIE1ha2UgdGhlIHJl
bmRlciBsZW5ndGggNSB0aW1lcyBsb25nZXIgdG8gbWluaW1pemUgdGhlIGZsYWtpbmVzcy4KKyAg
ICAgICAgbGV0IGxvbmdSZW5kZXJEdXJhdGlvbiA9IHJlbmRlckR1cmF0aW9uICogNTsKKyAgICAg
ICAgbGV0IGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgIDEs
IHNhbXBsZVJhdGUgKiBsb25nUmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAg
IC8vIENyZWF0ZSBkdW1teSBhdWRpbyBncmFwaCB0byBzbG93IHRoZSByZW5kZXJpbmcuCisgICAg
ICAgIGxldCBvc2MgPSBjb250ZXh0LmNyZWF0ZU9zY2lsbGF0b3IoKTsKKyAgICAgICAgbGV0IGxw
ZiA9IGNvbnRleHQuY3JlYXRlQmlxdWFkRmlsdGVyKCk7CisgICAgICAgIG9zYy50eXBlID0gJ3Nh
d3Rvb3RoJzsKKyAgICAgICAgb3NjLmZyZXF1ZW5jeS5zZXRWYWx1ZUF0VGltZSgwLjEsIDAuMCk7
CisgICAgICAgIG9zYy5mcmVxdWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMTAwMCwgbG9u
Z1JlbmRlckR1cmF0aW9uICogMC41KTsKKyAgICAgICAgb3NjLmZyZXF1ZW5jeS5saW5lYXJSYW1w
VG9WYWx1ZUF0VGltZSgwLjEsIGxvbmdSZW5kZXJEdXJhdGlvbik7CisgICAgICAgIGxwZi5mcmVx
dWVuY3kuc2V0VmFsdWVBdFRpbWUoMC4xLCAwLjApOworICAgICAgICBscGYuZnJlcXVlbmN5Lmxp
bmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEwMDAsIGxvbmdSZW5kZXJEdXJhdGlvbiAqIDAuNSk7Cisg
ICAgICAgIGxwZi5mcmVxdWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMC4xLCBsb25nUmVu
ZGVyRHVyYXRpb24pOworICAgICAgICBvc2MuY29ubmVjdChscGYpOworICAgICAgICBscGYuY29u
bmVjdChjb250ZXh0LmRlc3RpbmF0aW9uKTsKKyAgICAgICAgb3NjLnN0YXJ0KCk7CisKKyAgICAg
ICAgLy8gQSBzdXNwZW5kIGlzIHNjaGVkdWxlZCBhdCB0aGUgOTAlIG9mIHRoZSByZW5kZXIgZHVy
YXRpb24uCisgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICgpID0+IHsKKyAgICAgICAgICAg
ICAgLy8gVGVzdCBpcyBmaW5pc2hlZCB3aGVuIHRoaXMgc3VzcGVuZCByZXNvbHZlcy4KKyAgICAg
ICAgICAgICAgY29udGV4dC5zdXNwZW5kKGxvbmdSZW5kZXJEdXJhdGlvbiAqIDAuOSkudGhlbigo
KSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICAgICAgICB9LAorICAgICAgICAgICAgJ1NjaGVkdWxp
bmcgYSBzdXNwZW5kIGF0ICcgKyBsb25nUmVuZGVyRHVyYXRpb24gKiAwLjkgKyAnIHNlY29uZHMn
KQorICAgICAgICAgICAgLm5vdFRocm93KCk7CisKKyAgICAgICAgLy8gV2UgaGF2ZSB0byBzdGFy
dCByZW5kZXJpbmcgdG8gZ2V0IHRoZSB0aW1lIHJ1bm5pbmcuCisgICAgICAgIGNvbnRleHQuc3Rh
cnRSZW5kZXJpbmcoKTsKKworICAgICAgICAvLyBUaGVuIGNhbGwgcmVzdW1lKCkgaW1tZWRpYXRl
bHkgYWZ0ZXIgdGhlIHJlbmRlcmluZyBzdGFydHMuIFJlc3VtaW5nCisgICAgICAgIC8vIGEgY29u
dGV4dCB0aGF0IGlzIGFscmVhZHkgcnVubmluZyBzaG91bGQgYmUgcmVzb2x2ZWQuCisgICAgICAg
IHNob3VsZChjb250ZXh0LnJlc3VtZSgpLCAnUmVzdW1pbmcgYSBydW5uaW5nIGNvbnRleHQnKS5i
ZVJlc29sdmVkKCk7CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazogQ2FsbGluZyByZXN1bWUg
b24gYSBjb250ZXh0IHRoYXQgaXMgbm90IHN0YXJ0ZWQgc2hvdWxkIHJlamVjdCB0aGUKKyAgICAg
IC8vIHByb21pc2UuCisgICAgICBhdWRpdC5kZWZpbmUoJ3Jlc3VtZS13aXRob3V0LXN1c3BlbmQn
LCAodGFzaywgc2hvdWxkKSA9PiB7CisgICAgICAgIGxldCBjb250ZXh0ID0KKyAgICAgICAgICAg
IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIHNhbXBsZVJhdGUgKiByZW5kZXJEdXJhdGlvbiwg
c2FtcGxlUmF0ZSk7CisKKyAgICAgICAgc2hvdWxkKGNvbnRleHQucmVzdW1lKCksICdSZXN1bWlu
ZyBhIGNvbnRleHQgd2l0aG91dCBzdGFydGluZyBpdCcpCisgICAgICAgICAgICAuYmVSZWplY3Rl
ZCgpCisgICAgICAgICAgICAudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICB9KTsKKwor
ICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4xZjE3Mjc0MGEzNzIwNDQzNTA2MzI0ZGQ0M2I2YWFkZDZjY2FlNmMx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29u
dGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MjYgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAorUEFTUyBFeGVjdXRp
bmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rlc3RdIFRlc3QgZXZlbnQg
aGFuZGxlciBmcm9tIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCkgCitQQVNTICAgQSBuZXcgc3VzcGVu
ZCBoYXMgYmVlbiBzY2hlZHVsZWQgYXQgMCBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29udGV4dCBpcyBz
dXNwZW5kZWQgYXQgMCBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5l
dyBzdXNwZW5kIGF0IDAuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAK
K1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVk
IGF0IDAuMjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3Vz
cGVuZCBhdCAwLjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1Mg
ICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDAu
NSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0
IDAuNzUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0
YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDAuNzUgc2Vj
b25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxIHNl
Y29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5n
ZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRlZCBhdCAxIHNlY29uZChzKSBpcyB0
cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS4yNSBzZWNvbmQocykg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG9uc3RhdGVjaGFuZ2UgZXZlbnQg
aGFuZGxlcjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgMS4yNSBzZWNvbmQocykgaXMgdHJ1ZS4g
CitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEuNSBzZWNvbmQocykgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxl
cjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgMS41IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1Mg
ICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS43NSBzZWNvbmQocykgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29u
dGV4dCBpcyBzdXNwZW5kZWQgYXQgMS43NSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2No
ZWR1bGluZyBhdCAyIHNlY29uZHMgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRl
RXJyb3I6IHN1c3BlbmRUaW1lIGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gdG90YWwgcmVuZGVyaW5n
IGR1cmF0aW9uLiAKK1BBU1MgICBvbmNvbXBsZXRlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQuc3Rh
dGUgaXMgZXF1YWwgdG8gY2xvc2VkLiAKK1BBU1MgPCBbdGVzdF0gQWxsIGFzc2VydGlvbnMgcGFz
c2VkLiAodG90YWwgMTggYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklO
SVNIRUQ6IDEgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5k
bGVyLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3Bl
bmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkOGYyYmE5MzU0MzAzZTc0
YzE0Zjg3NjY1NDY1MjJmM2NhODE2YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci5o
dG1sCkBAIC0wLDAgKzEsOTYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgor
ICAgIDx0aXRsZT4KKyAgICAgIG9mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZl
bnRoYW5kbGVyLmh0bWwKKyAgICA8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIuLi9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC11dGlsLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F1ZGl0LmpzIj48L3NjcmlwdD4KKyAg
PC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2NyaXB0IGlkPSJsYXlvdXQtdGVzdC1jb2RlIj4KKyAg
ICAgIGxldCBhdWRpdCA9IEF1ZGl0LmNyZWF0ZVRhc2tSdW5uZXIoKTsKKworICAgICAgbGV0IGNv
bnRleHQ7CisgICAgICBsZXQgcmVuZGVyUXVhbnR1bSA9IDEyODsKKworICAgICAgLy8gVGhlIHNh
bXBsZSByYXRlIGlzIG11bHRpcGxlIG9mIHRoZSByZW5kZXJpbmcgcXVhbnR1bSwgc28gc3VzcGVu
c2lvbgorICAgICAgLy8gdGltZXMgaW4gdGhlIHRlc3Qgd2lsbCBmYWxsIG9uIHRoZSByZW5kZXIg
cXVhbnR1bSBib3VuZGFyeS4gQWx0aG91Z2gKKyAgICAgIC8vIHRoaXMgaXMgbm90IG5lY2Vzc2Fy
eSwgaXQgaXMgZWFzaWVyIHRvIHVuZGVyc3RhbmQgdGhlIHRlc3QuCisgICAgICBsZXQgc2FtcGxl
UmF0ZSA9IHJlbmRlclF1YW50dW0gKiAxMDA7CisKKyAgICAgIGxldCByZW5kZXJEdXJhdGlvbiA9
IDI7CisgICAgICBsZXQgc2NoZWR1bGVkU3VzcGVuZFRpbWUgPSAwOworCisgICAgICAvLyBXaXRo
IHRoZSBzYW1wbGUgcmF0ZSBzZXR0aW5nIGFib3ZlLCB0aGlzIGVuc3VyZXMgc3VzcGVuc2lvbiB0
aW1lIGZhbGwKKyAgICAgIC8vIGluIHRvIHRoZSByZW5kZXIgcXVhbnR1bSBib3VuZGFyeS4KKyAg
ICAgIGxldCBzdXNwZW5kSW50ZXJ2YWwgPSAwLjI1OworCisgICAgICBhdWRpdC5kZWZpbmUoCisg
ICAgICAgICAgeworICAgICAgICAgICAgbGFiZWw6ICd0ZXN0JywKKyAgICAgICAgICAgIGRlc2Ny
aXB0aW9uOiAnVGVzdCBldmVudCBoYW5kbGVyIGZyb20gcmVzdW1lKCkgYW5kIHN1c3BlbmQoKScK
KyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAg
IGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBz
YW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICBj
b250ZXh0Lm9uc3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgaWYgKGNv
bnRleHQuc3RhdGUgPT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAgICAgICAgICBjb250ZXh0
LmN1cnJlbnRUaW1lID09PSBzY2hlZHVsZWRTdXNwZW5kVGltZSkgeworICAgICAgICAgICAgICAg
IHNob3VsZCgKKyAgICAgICAgICAgICAgICAgICAgY29udGV4dC5zdGF0ZSA9PT0gJ3N1c3BlbmRl
ZCcgJiYKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuY3VycmVudFRpbWUgPT09IHNj
aGVkdWxlZFN1c3BlbmRUaW1lLAorICAgICAgICAgICAgICAgICAgICAnb25zdGF0ZWNoYW5nZSBl
dmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRlZCBhdCAnICsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHNjaGVkdWxlZFN1c3BlbmRUaW1lICsgJyBzZWNvbmQocyknKQorICAgICAgICAg
ICAgICAgICAgICAuYmVUcnVlKCk7CisgICAgICAgICAgICAgICAgc2NoZWR1bGVkU3VzcGVuZFRp
bWUgPSBjb250ZXh0LmN1cnJlbnRUaW1lICsgc3VzcGVuZEludGVydmFsOworCisgICAgICAgICAg
ICAgICAgLy8gU2NoZWR1bGluZyBhIHN1c3BlbmQgYmVmb3JlIHRoZSByZW5kZXIgZHVyYXRpb24g
c2hvdWxkIHBhc3MuCisgICAgICAgICAgICAgICAgaWYgKHNjaGVkdWxlZFN1c3BlbmRUaW1lIDwg
cmVuZGVyRHVyYXRpb24pIHsKKyAgICAgICAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAg
ICAgICAgICAgICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpLAor
ICAgICAgICAgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgJyArIHNj
aGVkdWxlZFN1c3BlbmRUaW1lICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJyBzZWNvbmQo
cyknKQorICAgICAgICAgICAgICAgICAgICAgIC5ub3RUaHJvdygpOworICAgICAgICAgICAgICAg
ICAgOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIC8vIFNjaGVkdWxpbmcg
YSBzdXNwZW5kIGV4YWN0bHkgYXQgdGhlIHJlbmRlciBkdXJhdGlvbiBzaG91bGQgYmUKKyAgICAg
ICAgICAgICAgICAvLyByZWplY3RlZC4KKyAgICAgICAgICAgICAgICBpZiAoc2NoZWR1bGVkU3Vz
cGVuZFRpbWUgPT09IHJlbmRlckR1cmF0aW9uKSB7CisgICAgICAgICAgICAgICAgICBzaG91bGQo
CisgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5zdXNwZW5kKHNjaGVkdWxlZFN1c3BlbmRU
aW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAnU2NoZWR1bGluZyBhdCAnICsgcmVuZGVyRHVy
YXRpb24gKyAnIHNlY29uZHMnKQorICAgICAgICAgICAgICAgICAgICAgIC5iZVJlamVjdGVkKCk7
CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsK
KyAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfTsKKworICAgICAgICAgICAgLy8gVGhpcyB0
ZXN0IGlzIGZvciB2ZXJpZnlpbmcgYWxsIHRoZSBldmVudCBoYW5kbGVycyBvbiBPQUMgYW5kIHRo
YXQKKyAgICAgICAgICAgIC8vIGlzIHdoeSAnb25jb21wbGV0ZScgaXMgdXNlZCBoZXJlLgorICAg
ICAgICAgICAgY29udGV4dC5vbmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAg
IHNob3VsZChjb250ZXh0LnN0YXRlLCAnb25jb21wbGV0ZSBldmVudCBoYW5kbGVyOiBjb250ZXh0
LnN0YXRlJykKKyAgICAgICAgICAgICAgICAgIC5iZUVxdWFsVG8oJ2Nsb3NlZCcpOworICAgICAg
ICAgICAgICB0YXNrLmRvbmUoKTsKKyAgICAgICAgICAgIH07CisKKyAgICAgICAgICAgIC8vIFNj
aGVkdWxlIHRoZSBmaXJzdCBzdXNwZW5zaW9uLgorICAgICAgICAgICAgc2hvdWxkKAorICAgICAg
ICAgICAgICAgICgpID0+IGNvbnRleHQuc3VzcGVuZChzY2hlZHVsZWRTdXNwZW5kVGltZSksCisg
ICAgICAgICAgICAgICAgJ0EgbmV3IHN1c3BlbmQgaGFzIGJlZW4gc2NoZWR1bGVkIGF0ICcgKyBz
Y2hlZHVsZWRTdXNwZW5kVGltZSArCisgICAgICAgICAgICAgICAgICAgICcgc2Vjb25kKHMpJykK
KyAgICAgICAgICAgICAgICAubm90VGhyb3coKTsKKyAgICAgICAgICAgIDsKKworICAgICAgICAg
ICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpOworICAgICAgICAgIH0pOworCisgICAgICBhdWRp
dC5ydW4oKTsKKyAgICA8L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1n
cmFwaC1tYW5pcHVsYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2Zm
bGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVsYXRpb24tZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjViYmRkZGFhMmM1MTRiZTQ3N2JkMmQ5MzhjMjJhMzBhNzIxNWRk
MDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwyMSBAQAorCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCitQQVNT
IEV4ZWN1dGluZyAidGVzdCIgCitQQVNTIEF1ZGl0IHJlcG9ydCAKK1BBU1MgPiBbdGVzdF0gU3lu
Y2hyb25vdXMgZ3JhcGggbWFuaXB1bGF0aW9uIHdpdGggc3VzcGVuZCgpIGFuZCByZXN1bWUoKSAK
K1BBU1MgICBGcmFtZSBhdCB3aGljaCBjb250ZXh0IGlzIHN1c3BlbmRlZCBpcyBlcXVhbCB0byAx
MjgwMC4gCitQQVNTICAgQ29ubmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciB0byBkZXN0aW5hdGlv
biBhbmQgc3RhcnRpbmcgYXQgMTI4MDAgZnJhbWUgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAorUEFTUyAgIENvbnRleHQgaXMgc3VzcGVuZGVkIGlzIGVxdWFsIHRvIDI1NjAwLiAKK1BBU1Mg
ICBEaXNjb25uZWN0aW5nIGEgY29uc3RhbnQgYnVmZmVyIGF0IDI1NjAwIGZyYW1lIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBCdWZmZXIgZnJhbWUgWzAsIDEyODAwKSBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK0ZBSUwgWCBCdWZmZXIgZnJhbWUgWzEyODAwLCAy
NTYwMCk6IEV4cGVjdGVkIDEgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyODAwIHVuZXhwZWN0
ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JMAorCVsxXQkwCisJWzJdCTAKKwlbM10J
MAorCS4uLmFuZCAxMjc5NiBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitQQVNTICAgQnVmZmVyIGZyYW1lIFsyNTYwMCwgMzg0MDApIGNvbnRhaW5zIG9u
bHkgdGhlIGNvbnN0YW50IDAuIAorRkFJTCA8IFt0ZXN0XSAxIG91dCBvZiA3IGFzc2VydGlvbnMg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAj
IEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiAxIHRhc2tzIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFw
aC1tYW5pcHVsYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2Nv
bnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDNjOThkYzQxZTkxYWZhNzA4MWQ3OWNhZjliY2QxODI3ODMyYTE2MAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKQEAgLTAsMCArMSwxMjIgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRsZT4KKyAgICAgIG9mZmxpbmVhdWRpb2Nv
bnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKKyAgICA8L3RpdGxl
PgorICAgIDxzY3JpcHQgc3JjPSIuLi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9hdWRpdC11dGlsLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2F1ZGl0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keT4KKyAgICA8c2Ny
aXB0IGlkPSJsYXlvdXQtdGVzdC1jb2RlIj4KKyAgICAgIGxldCBhdWRpdCA9IEF1ZGl0LmNyZWF0
ZVRhc2tSdW5uZXIoKTsKKworICAgICAgbGV0IGNvbnRleHQ7CisgICAgICBsZXQgcmVuZGVyUXVh
bnR1bSA9IDEyODsKKyAgICAgIGxldCByZW5kZXJEdXJhdGlvbiA9IDM7CisKKyAgICAgIC8vIFRo
ZSBzYW1wbGUgcmF0ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVyaW5nIHF1YW50dW0sIHNvIHN1
c3BlbnNpb24KKyAgICAgIC8vIHRpbWVzIGZhbGwgaW4gdG8gdGhlIHJlbmRlciBxdWFudHVtIGJv
dW5kYXJ5LgorICAgICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworCisg
ICAgICAvLyBTdXNwZW5kIGF0IDEgc2Vjb25kIGFuZCBhY3RpdmF0ZSB0aGUgc291cmNlIG5vZGUu
IFRoZSBhdWRpbyBvdXRwdXQKKyAgICAgIC8vIHNob3VsZCBiZSAxLjAgZnJvbSB8c3VzcGVuZFRp
bWUxfCB0byB0aGUgbmV4dCBzdXNwZW5zaW9uLgorICAgICAgbGV0IHN1c3BlbmRUaW1lMSA9IDE7
CisKKyAgICAgIC8vIFN1c3BlbmQgYXQgMiBzZWNvbmRzIGFuZCBkaXNjb25uZWN0IHRoZSBub2Rl
LiBUaGUgYXVkaW8gb3V0cHV0IHNob3VsZAorICAgICAgLy8gYmUgMC4wIGZyb20gfHN1c3BlbmRU
aW1lMnwgdG8gdGhlIGVuZC4KKyAgICAgIGxldCBzdXNwZW5kVGltZTIgPSAyOworCisgICAgICBh
dWRpdC5kZWZpbmUoCisgICAgICAgICAgeworICAgICAgICAgICAgbGFiZWw6ICd0ZXN0JywKKyAg
ICAgICAgICAgIGRlc2NyaXB0aW9uOgorICAgICAgICAgICAgICAgICdTeW5jaHJvbm91cyBncmFw
aCBtYW5pcHVsYXRpb24gd2l0aCBzdXNwZW5kKCkgYW5kIHJlc3VtZSgpJworICAgICAgICAgIH0s
CisgICAgICAgICAgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICAgICAgY29udGV4dCA9IG5l
dyBPZmZsaW5lQXVkaW9Db250ZXh0KAorICAgICAgICAgICAgICAgIDEsIHNhbXBsZVJhdGUgKiBy
ZW5kZXJEdXJhdGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAgICAgICAgICAgIC8vIENyZWF0ZSBhIGNv
bnN0YW50IGJ1ZmZlciBvZiAxLjAuCisgICAgICAgICAgICBsZXQgY29uc3RhbnRCdWZmZXIgPSBj
cmVhdGVDb25zdGFudEJ1ZmZlcihjb250ZXh0LCAxLCAxLjApOworICAgICAgICAgICAgbGV0IGNv
bnN0YW50U291cmNlID0gY29udGV4dC5jcmVhdGVCdWZmZXJTb3VyY2UoKTsKKyAgICAgICAgICAg
IGNvbnN0YW50U291cmNlLmJ1ZmZlciA9IGNvbnN0YW50QnVmZmVyOworICAgICAgICAgICAgY29u
c3RhbnRTb3VyY2UubG9vcCA9IHRydWU7CisKKyAgICAgICAgICAgIC8vIFRoZSBhdWRpbyBvdXRw
dXQgZnJvbSB0aGUgYmVnaW5uaW5nICgwLjAgc2Vjb25kKSB0byB0aGUgZmlyc3QKKyAgICAgICAg
ICAgIC8vIHN1c3BlbmQgdGltZSBzaG91bGQgYmUgMC4wIGJlY2F1c2UgdGhlcmUgaXMgbm8gY29u
bmVjdGlvbiB0byB0aGUKKyAgICAgICAgICAgIC8vIGRlc3RpbmF0aW9uLgorCisgICAgICAgICAg
ICBjb250ZXh0LnN1c3BlbmQoc3VzcGVuZFRpbWUxKS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAg
ICAgICAgICBpZiAoY29udGV4dC5jdXJyZW50VGltZSA9PT0gc3VzcGVuZFRpbWUxKSB7CisgICAg
ICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmN1cnJlbnRU
aW1lICogc2FtcGxlUmF0ZSwKKyAgICAgICAgICAgICAgICAgICAgJ0ZyYW1lIGF0IHdoaWNoIGNv
bnRleHQgaXMgc3VzcGVuZGVkJykKKyAgICAgICAgICAgICAgICAgICAgLmJlRXF1YWxUbyhzdXNw
ZW5kVGltZTEgKiBzYW1wbGVSYXRlKQorICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIHNo
b3VsZCgKKyAgICAgICAgICAgICAgICAgICgpID0+IHsKKyAgICAgICAgICAgICAgICAgICAgY29u
c3RhbnRTb3VyY2UuY29ubmVjdChjb250ZXh0LmRlc3RpbmF0aW9uKTsKKyAgICAgICAgICAgICAg
ICAgICAgY29uc3RhbnRTb3VyY2Uuc3RhcnQoKQorICAgICAgICAgICAgICAgICAgfSwKKyAgICAg
ICAgICAgICAgICAgICdDb25uZWN0aW5nIGEgY29uc3RhbnQgYnVmZmVyIHRvIGRlc3RpbmF0aW9u
IGFuZCBzdGFydGluZyBhdCAnICsKKyAgICAgICAgICAgICAgICAgICAgICBzdXNwZW5kVGltZTEg
KiBzYW1wbGVSYXRlICsgJyBmcmFtZScpCisgICAgICAgICAgICAgICAgICAubm90VGhyb3coKTsK
KyAgICAgICAgICAgICAgOworICAgICAgICAgICAgICBjb250ZXh0LnJlc3VtZSgpOworICAgICAg
ICAgICAgfSk7CisKKyAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChzdXNwZW5kVGltZTIpLnRo
ZW4oZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgIGlmIChjb250ZXh0LmN1cnJlbnRUaW1lID09
PSBzdXNwZW5kVGltZTIpIHsKKyAgICAgICAgICAgICAgICBzaG91bGQoY29udGV4dC5jdXJyZW50
VGltZSAqIHNhbXBsZVJhdGUsICdDb250ZXh0IGlzIHN1c3BlbmRlZCcpCisgICAgICAgICAgICAg
ICAgICAgIC5iZUVxdWFsVG8oc3VzcGVuZFRpbWUyICogc2FtcGxlUmF0ZSk7CisgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgKCkgPT4gY29u
c3RhbnRTb3VyY2UuZGlzY29ubmVjdCgpLAorICAgICAgICAgICAgICAgICAgJ0Rpc2Nvbm5lY3Rp
bmcgYSBjb25zdGFudCBidWZmZXIgYXQgJyArCisgICAgICAgICAgICAgICAgICAgICAgc3VzcGVu
ZFRpbWUyICogc2FtcGxlUmF0ZSArICcgZnJhbWUnKQorICAgICAgICAgICAgICAgICAgLm5vdFRo
cm93KCk7CisKKyAgICAgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsKKyAgICAgICAgICAgIH0p
OworCisgICAgICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkKKyAgICAgICAgICAgICAg
ICAudGhlbihmdW5jdGlvbihidWZmZXIpIHsKKyAgICAgICAgICAgICAgICAgIHZlcmlmeVJlc3Vs
dChzaG91bGQsIGJ1ZmZlcik7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICAu
dGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICAgICAgfSk7CisKKyAgICAgIGZ1bmN0aW9u
IHZlcmlmeVJlc3VsdChzaG91bGQsIGJ1ZmZlcikgeworICAgICAgICBsZXQgZGF0YSA9IGJ1ZmZl
ci5nZXRDaGFubmVsRGF0YSgwKTsKKworICAgICAgICBsZXQgc3VzcGVuZEluZGV4MSA9IHN1c3Bl
bmRUaW1lMSAqIHNhbXBsZVJhdGU7CisgICAgICAgIGxldCBzdXNwZW5kSW5kZXgyID0gc3VzcGVu
ZFRpbWUyICogc2FtcGxlUmF0ZTsKKyAgICAgICAgbGV0IGVuZEluZGV4ID0gcmVuZGVyRHVyYXRp
b24gKiBzYW1wbGVSYXRlOworCisgICAgICAgIC8vIFNwbGl0IHRoZSByZW5kZXJlZCBidWZmZXIg
aW50byAzIHNlZ21lbnRzOgorICAgICAgICAvLyBbMCwgc3VzcGVuZEluZGV4MSksIFtzdXNwZW5k
SW5kZXgxLCBzdXNwZW5kSW5kZXgyKSwgW3N1c3BlbmRJbmRleDIsCisgICAgICAgIC8vIGVuZElu
ZGV4KS4KKyAgICAgICAgbGV0IHN1YmFycmF5MCA9IGRhdGEuc3ViYXJyYXkoMCwgc3VzcGVuZElu
ZGV4MSk7CisgICAgICAgIGxldCBzdWJhcnJheTEgPSBkYXRhLnN1YmFycmF5KHN1c3BlbmRJbmRl
eDEsIHN1c3BlbmRJbmRleDIpOworICAgICAgICBsZXQgc3ViYXJyYXkyID0gZGF0YS5zdWJhcnJh
eShzdXNwZW5kSW5kZXgyLCBlbmRJbmRleCk7CisKKyAgICAgICAgLy8gRWFjaCBzZWdtZW50IHNo
b3VsZCBjb250YWluIGEgY29uc3RhbnQgdmFsdWUgb2YgMCwgMSBhbmQgMAorICAgICAgICAvLyBy
ZXNwZWN0aXZlbHkuCisgICAgICAgIHNob3VsZChzdWJhcnJheTAsICdCdWZmZXIgZnJhbWUgWzAs
ICcgKyBzdXNwZW5kSW5kZXgxICsgJyknKQorICAgICAgICAgICAgLmJlQ29uc3RhbnRWYWx1ZU9m
KDApOworICAgICAgICBzaG91bGQoCisgICAgICAgICAgICBzdWJhcnJheTEsCisgICAgICAgICAg
ICAnQnVmZmVyIGZyYW1lIFsnICsgc3VzcGVuZEluZGV4MSArICcsICcgKyBzdXNwZW5kSW5kZXgy
ICsgJyknKQorICAgICAgICAgICAgLmJlQ29uc3RhbnRWYWx1ZU9mKDEpOworICAgICAgICBzaG91
bGQoCisgICAgICAgICAgICBzdWJhcnJheTIsICdCdWZmZXIgZnJhbWUgWycgKyBzdXNwZW5kSW5k
ZXgyICsgJywgJyArIGVuZEluZGV4ICsgJyknKQorICAgICAgICAgICAgLmJlQ29uc3RhbnRWYWx1
ZU9mKDApOworICAgICAgfQorCisgICAgICBhdWRpdC5ydW4oKTsKKyAgICA8L3NjcmlwdD4KKyAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGlu
ZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1wcm9taXNlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlz
ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmRhOTAyZTE1MWFlMWViM2ZiOWVkZTQ5MzI3MjRi
MDU1NTI0ZWU2NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxp
bmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyNiBAQAorCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCitQQVNTIEV4
ZWN1dGluZyAidGVzdCIgCitQQVNTIEF1ZGl0IHJlcG9ydCAKK1BBU1MgPiBbdGVzdF0gUHJvbWlz
ZSByZXNvbHV0aW9uIG9mIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCkgCitQQVNTICAgU2NoZWR1bGlu
ZyBhIG5ldyBzdXNwZW5kIGF0IDAgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRlZCBhdCAwIHNlY29uZChzKSBpcyB0cnVlLiAKK1BB
U1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC4yNSBzZWNvbmQocykgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0IDAuMjUgc2Vj
b25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwLjUg
c2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IHN1
c3BlbmRlZCBhdCAwLjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBu
ZXcgc3VzcGVuZCBhdCAwLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMC43NSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQ
QVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEgc2Vjb25kKHMpIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRlZCBhdCAxIHNlY29uZChz
KSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS4yNSBzZWNv
bmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVu
ZGVkIGF0IDEuMjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcg
c3VzcGVuZCBhdCAxLjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BB
U1MgICBDb250ZXh0IHN1c3BlbmRlZCBhdCAxLjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAg
IFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMS43NSBzZWNvbmQo
cykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhdCAyIHNlY29uZHMgcmVqZWN0ZWQgY29y
cmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IHN1c3BlbmRUaW1lIGNhbm5vdCBiZSBncmVh
dGVyIHRoYW4gdG90YWwgcmVuZGVyaW5nIGR1cmF0aW9uLiAKK1BBU1MgICBQcm9taXNlIGNvbnRl
eHQuc3RhdGUgaXMgZXF1YWwgdG8gY2xvc2VkLiAKK1BBU1MgPCBbdGVzdF0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgMTggYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBSVU5O
RVIgRklOSVNIRUQ6IDEgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJv
bWlzZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNw
ZW5kLXJlc3VtZS1wcm9taXNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTNjYjc2Mzg5M2RjOGVhY2EyOWFj
Njc5NGE0NmIwYTBkNDcxNTRkNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1
ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCkBAIC0w
LDAgKzEsOTEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDx0aXRs
ZT4KKyAgICAgIG9mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1s
CisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNj
cmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJv
ZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQg
PSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisgICAgICBsZXQgY29udGV4dDsKKworICAgICAg
Ly8gVGhlIHNhbXBsZSByYXRlIGlzIG11bHRpcGxlIG9mIHRoZSByZW5kZXJpbmcgcXVhbnR1bSwg
c28gc3VzcGVuc2lvbgorICAgICAgLy8gdGltZXMgZmFsbCBpbiB0byB0aGUgcmVuZGVyIHF1YW50
dW0gYm91bmRhcnkuCisgICAgICBsZXQgcmVuZGVyUXVhbnR1bSA9IDEyODsKKworICAgICAgbGV0
IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworICAgICAgbGV0IHJlbmRlckR1cmF0
aW9uID0gMjsKKyAgICAgIGxldCBzY2hlZHVsZWRTdXNwZW5kVGltZSA9IDA7CisKKyAgICAgIC8v
IFdpdGggdGhlIHNhbXBsZSByYXRlIHNldHRpbmcgYWJvdmUsIHRoaXMgZW5zdXJlcyBzdXNwZW5z
aW9uIHRpbWUgZmFsbAorICAgICAgLy8gaW4gdG8gdGhlIHJlbmRlciBxdWFudHVtIGJvdW5kYXJ5
LgorICAgICAgbGV0IHN1c3BlbmRJbnRlcnZhbCA9IDAuMjU7CisKKyAgICAgIGZ1bmN0aW9uIG9u
U3VzcGVuZGVkKHNob3VsZCkgeworICAgICAgICBpZiAoY29udGV4dC5zdGF0ZSA9PT0gJ3N1c3Bl
bmRlZCcgJiYKKyAgICAgICAgICAgIGNvbnRleHQuY3VycmVudFRpbWUgPT09IHNjaGVkdWxlZFN1
c3BlbmRUaW1lKSB7CisgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICBjb250ZXh0LnN0
YXRlID09PSAnc3VzcGVuZGVkJyAmJgorICAgICAgICAgICAgICAgICAgY29udGV4dC5jdXJyZW50
VGltZSA9PT0gc2NoZWR1bGVkU3VzcGVuZFRpbWUsCisgICAgICAgICAgICAgICdDb250ZXh0IHN1
c3BlbmRlZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUgKyAnIHNlY29uZChzKScpCisgICAg
ICAgICAgICAgIC5iZVRydWUoKTsKKworICAgICAgICAgIHNjaGVkdWxlZFN1c3BlbmRUaW1lID0g
Y29udGV4dC5jdXJyZW50VGltZSArIHN1c3BlbmRJbnRlcnZhbDsKKworICAgICAgICAgIC8vIFNj
aGVkdWxpbmcgYSBzdXNwZW5kIGJlZm9yZSB0aGUgcmVuZGVyIGR1cmF0aW9uIHNob3VsZCBwYXNz
LgorICAgICAgICAgIGlmIChzY2hlZHVsZWRTdXNwZW5kVGltZSA8IHJlbmRlckR1cmF0aW9uKSB7
CisgICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgKCkgPT4gY29udGV4dC5zdXNw
ZW5kKHNjaGVkdWxlZFN1c3BlbmRUaW1lKQorICAgICAgICAgICAgICAgICAgICAgICAgICAudGhl
bigoKSA9PiBvblN1c3BlbmRlZChzaG91bGQpKSwKKyAgICAgICAgICAgICAgICAnU2NoZWR1bGlu
ZyBhIG5ldyBzdXNwZW5kIGF0ICcgKyBzY2hlZHVsZWRTdXNwZW5kVGltZSArCisgICAgICAgICAg
ICAgICAgICAgICcgc2Vjb25kKHMpJykKKyAgICAgICAgICAgICAgICAubm90VGhyb3coKTsKKyAg
ICAgICAgICB9CisKKyAgICAgICAgICAvLyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBleGFjdGx5IGF0
IHRoZSByZW5kZXIgZHVyYXRpb24gc2hvdWxkIGJlCisgICAgICAgICAgLy8gcmVqZWN0ZWQuCisg
ICAgICAgICAgaWYgKHNjaGVkdWxlZFN1c3BlbmRUaW1lID09PSByZW5kZXJEdXJhdGlvbikgewor
ICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChzY2hl
ZHVsZWRTdXNwZW5kVGltZSksCisgICAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYXQgJyArIHJl
bmRlckR1cmF0aW9uICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgICAgICAuYmVSZWplY3RlZCgp
OworICAgICAgICAgIH0KKworICAgICAgICAgIGNvbnRleHQucmVzdW1lKCk7CisgICAgICAgIH0K
KyAgICAgIH0KKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAg
IGxhYmVsOiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Byb21pc2UgcmVzb2x1
dGlvbiBvZiByZXN1bWUoKSBhbmQgc3VzcGVuZCgpJworICAgICAgICAgIH0sCisgICAgICAgICAg
KHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICAgICAgY29udGV4dCA9IG5ldyBPZmZsaW5lQXVk
aW9Db250ZXh0KAorICAgICAgICAgICAgICAgIDEsIHNhbXBsZVJhdGUgKiByZW5kZXJEdXJhdGlv
biwgc2FtcGxlUmF0ZSk7CisKKyAgICAgICAgICAgIC8vIFNjaGVkdWxlIHRoZSBmaXJzdCBzdXNw
ZW5zaW9uLgorICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICgpID0+IGNvbnRl
eHQuc3VzcGVuZChzY2hlZHVsZWRTdXNwZW5kVGltZSkKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgLnRoZW4oKCkgPT4gb25TdXNwZW5kZWQoc2hvdWxkKSksCisgICAgICAgICAgICAgICAgJ1Nj
aGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUgKworICAg
ICAgICAgICAgICAgICAgICAnIHNlY29uZChzKScpCisgICAgICAgICAgICAgICAgLm5vdFRocm93
KCk7CisKKyAgICAgICAgICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKQorICAgICAgICAgICAg
ICAgIC50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgc2hvdWxkKGNvbnRleHQu
c3RhdGUsICdQcm9taXNlIGNvbnRleHQuc3RhdGUnKQorICAgICAgICAgICAgICAgICAgICAgIC5i
ZUVxdWFsVG8oJ2Nsb3NlZCcpOworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAg
LnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgICAgIH0pOworCisgICAgICBhdWRpdC5y
dW4oKTsKKyAgICA8L3NjcmlwdD4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1
ZW5jZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250
ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVlbmNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZWNh
YzczZjVmMmIxOTE3ZTFmZWE4YmFhZmUxZDkzNDdmY2Q1ZGI1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1z
ZXF1ZW5jZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMiBAQAorCitQQVNTICMgQVVESVQgVEFT
SyBSVU5ORVIgU1RBUlRFRC4gCitQQVNTIEV4ZWN1dGluZyAidGVzdCIgCitQQVNTIEF1ZGl0IHJl
cG9ydCAKK1BBU1MgPiBbdGVzdF0gcmVzdW1lKCkgYW5kIHN1c3BlbmQoKSB3aXRoIHRpbWVkIHNl
cXVlbmNlIAorUEFTUyAgIFNjaGVkdWxpbmcgc3VzcGVuZCAjMCBhdCAwLjI1IHNlY29uZChzKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5kICMx
IGF0IDAuNzUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBT
Y2hlZHVsaW5nIHN1c3BlbmQgIzIgYXQgMSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgc3VzcGVuZCAjMyBhdCAwLjUgc2Vjb25kKHMpIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzQg
YXQgMS4yNSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNj
aGVkdWxpbmcgc3VzcGVuZCAjNSBhdCAwIHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5kICM2IGF0IDEuNzUgc2Vjb25kKHMpIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBvcmRlciBv
ZiBzdXNwZW5kICM1IGlzIDAgYXQgMC4wMCBzZWNvbmQocykgaXMgZXF1YWwgdG8gMC4gCitQQVNT
ICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjMCBpcyAxIGF0IDAuMjUgc2Vjb25k
KHMpIGlzIGVxdWFsIHRvIDEuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9mIHN1c3Bl
bmQgIzMgaXMgMiBhdCAwLjUwIHNlY29uZChzKSBpcyBlcXVhbCB0byAyLiAKK1BBU1MgICBUaGUg
cmVzb2x1dGlvbiBvcmRlciBvZiBzdXNwZW5kICMxIGlzIDMgYXQgMC43NSBzZWNvbmQocykgaXMg
ZXF1YWwgdG8gMy4gCitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjMiBp
cyA0IGF0IDEuMDAgc2Vjb25kKHMpIGlzIGVxdWFsIHRvIDQuIAorUEFTUyAgIFRoZSByZXNvbHV0
aW9uIG9yZGVyIG9mIHN1c3BlbmQgIzQgaXMgNSBhdCAxLjI1IHNlY29uZChzKSBpcyBlcXVhbCB0
byA1LiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBzdXNwZW5kICM2IGlzIDYgYXQg
MS43NSBzZWNvbmQocykgaXMgZXF1YWwgdG8gNi4gCitQQVNTIDwgW3Rlc3RdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDE0IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNl
cXVlbmNlLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1
c3BlbmQtcmVzdW1lLXNlcXVlbmNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWU5YjM1YjM0NDU4NjljYTQ0
YjY0OGI2NzVhZmYwYTk3Yzg1YWUxNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtc2VxdWVuY2UuaHRtbApA
QCAtMCwwICsxLDkwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVlbmNl
Lmh0bWwKKyAgICA8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSIuLi9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+CisgICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC11dGlsLmpzIj48L3NjcmlwdD4KKyAg
ICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F1ZGl0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgor
ICA8Ym9keT4KKyAgICA8c2NyaXB0IGlkPSJsYXlvdXQtdGVzdC1jb2RlIj4KKyAgICAgIGxldCBh
dWRpdCA9IEF1ZGl0LmNyZWF0ZVRhc2tSdW5uZXIoKTsKKyAgICAgIGxldCBjb250ZXh0OworCisg
ICAgICAvLyBUaGUgc2FtcGxlIHJhdGUgaXMgbXVsdGlwbGUgb2YgdGhlIHJlbmRlcmluZyBxdWFu
dHVtLCBzbyBzdXNwZW5zaW9uCisgICAgICAvLyB0aW1lcyBmYWxsIGluIHRvIHRoZSByZW5kZXIg
cXVhbnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCByZW5kZXJRdWFudHVtID0gMTI4OworCisgICAg
ICBsZXQgc2FtcGxlUmF0ZSA9IHJlbmRlclF1YW50dW0gKiAxMDA7CisgICAgICBsZXQgcmVuZGVy
RHVyYXRpb24gPSAyOworCisgICAgICAvLyBUaGVzZSBudW1iZXJzIGFyZSBpbiBhbiBhcmJpdHJh
cnkgb3JkZXIsIGJ1dCBub3QgcmFuZG9tbHkgZ2VuZXJhdGVkIGluCisgICAgICAvLyBydW50aW1l
IHRvIGF2b2lkIG1vdmluZyBwaWVjZXMuIEhvd2V2ZXIsIGl0IGlzIHNhZmUgdG8gYXJyYW5nZSB0
aGVtCisgICAgICAvLyBpbiBhIHJhbmRvbSBvcmRlciBpbiBydW50aW1lLgorICAgICAgLy8KKyAg
ICAgIC8vIEFsc28gdGhlc2UgbnVtYmVycyBhcmUgbXVsdGlwbGUgb2YgMC4yNSwgc28gdGhleSBh
cmUgc3VwcG9zZWQgdG8gZmFsbAorICAgICAgLy8gaW4gdGhlIHJlbmRlciBxdWFudHVtIGJvdW5k
YXJ5IGZvciBlYXNpZXIgYW5kIG1vcmUgaW50dWl0aXZlCisgICAgICAvLyB2ZXJpZmljYXRpb24u
CisgICAgICBsZXQgc3VzcGVuZFRpbWVzID0gWzAuMjUsIDAuNzUsIDEuMCwgMC41LCAxLjI1LCAw
LjAsIDEuNzVdOworCisgICAgICAvLyBTb3J0ZWQgYXNjZW5kaW5nIHN1c3BlbmQgdGltZSBpcyBv
dXIgZXhwZWN0ZWQgcmVzdWx0LgorICAgICAgbGV0IGV4cGVjdGVkU3VzcGVuZFRpbWVzID0gc3Vz
cGVuZFRpbWVzLnNsaWNlKDApLnNvcnQoZnVuY3Rpb24oYSwgYikgeworICAgICAgICByZXR1cm4g
YSAtIGI7CisgICAgICB9KTsKKworICAgICAgbGV0IGFjdHVhbFN1c3BlbmRUaW1lcyA9IFtdOwor
CisgICAgICBhdWRpdC5kZWZpbmUoCisgICAgICAgICAgeworICAgICAgICAgICAgbGFiZWw6ICd0
ZXN0JywKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAncmVzdW1lKCkgYW5kIHN1c3BlbmQoKSB3
aXRoIHRpbWVkIHNlcXVlbmNlJworICAgICAgICAgIH0sCisgICAgICAgICAgKHRhc2ssIHNob3Vs
ZCkgPT4geworICAgICAgICAgICAgY29udGV4dCA9IG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KAor
ICAgICAgICAgICAgICAgIDEsIHNhbXBsZVJhdGUgKiByZW5kZXJEdXJhdGlvbiwgc2FtcGxlUmF0
ZSk7CisKKyAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3VzcGVuZFRpbWVzLmxlbmd0
aDsgaSsrKSB7CisgICAgICAgICAgICAgIC8vIFNjaGVkdWxlIHN1c3BlbmRzIGluIGEgcmFuZG9t
IHRpbWUgb3JkZXIsIGJ1dCB0aGUgYWN0dWFsCisgICAgICAgICAgICAgIC8vIHN1c3BlbmQgbXVz
dCBoYXBwZW4gaW4gYXNjZW5kaW5nIHRpbWUgb3JkZXIuCisgICAgICAgICAgICAgIHNjaGVkdWxl
U3VzcGVuZChpLCBzdXNwZW5kVGltZXNbaV0sIHNob3VsZCk7CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKQorICAgICAgICAgICAgICAgIC50aGVu
KGJ1ZmZlciA9PiB2ZXJpZnlSZXN1bHQoc2hvdWxkKSkKKyAgICAgICAgICAgICAgICAudGhlbigo
KSA9PiB0YXNrLmRvbmUoKSk7CisKKyAgICAgICAgICB9KTsKKworICAgICAgYXVkaXQucnVuKCk7
CisKKyAgICAgIGZ1bmN0aW9uIHNjaGVkdWxlU3VzcGVuZChpbmRleCwgc3VzcGVuZFRpbWUsIHNo
b3VsZCkgeworICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAoKSA9PiBjb250ZXh0LnN1c3Bl
bmQoc3VzcGVuZFRpbWUpLnRoZW4oKCkgPT4geworICAgICAgICAgICAgICBhY3R1YWxTdXNwZW5k
VGltZXMucHVzaChzdXNwZW5kVGltZSk7CisgICAgICAgICAgICAgIGNvbnRleHQucmVzdW1lKCk7
CisgICAgICAgICAgICB9KSwKKyAgICAgICAgICAgICdTY2hlZHVsaW5nIHN1c3BlbmQgIycgKyBp
bmRleCArICcgYXQgJyArIHN1c3BlbmRUaW1lICsKKyAgICAgICAgICAgICAgICAnIHNlY29uZChz
KScpCisgICAgICAgICAgICAubm90VGhyb3coKTsKKyAgICAgIH0KKworICAgICAgZnVuY3Rpb24g
dmVyaWZ5UmVzdWx0KHNob3VsZCkgeworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFjdHVh
bFN1c3BlbmRUaW1lcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgIGxldCBzY2hlZHVsZWRPcmRl
ciA9IHN1c3BlbmRUaW1lcy5pbmRleE9mKGFjdHVhbFN1c3BlbmRUaW1lc1tpXSk7CisgICAgICAg
ICAgbGV0IGV4cGVjdGVkT3JkZXIgPQorICAgICAgICAgICAgICBleHBlY3RlZFN1c3BlbmRUaW1l
cy5pbmRleE9mKGFjdHVhbFN1c3BlbmRUaW1lc1tpXSk7CisKKyAgICAgICAgICBzaG91bGQoCisg
ICAgICAgICAgICAgIGksCisgICAgICAgICAgICAgICdUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBz
dXNwZW5kICMnICsgc2NoZWR1bGVkT3JkZXIgKyAnIGlzICcgKworICAgICAgICAgICAgICAgICAg
aSArICcgYXQgJyArIHN1c3BlbmRUaW1lc1tzY2hlZHVsZWRPcmRlcl0udG9GaXhlZCgyKSArCisg
ICAgICAgICAgICAgICAgICAnIHNlY29uZChzKScpCisgICAgICAgICAgICAgIC5iZUVxdWFsVG8o
ZXhwZWN0ZWRPcmRlcik7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2Vz
L2F1ZGl0LXV0aWwuanMgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQtdXRp
bC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40MjEzZmRhNTA5YmZiNzMwNDRmMWM3N2UxOTE5ZjU4Yzk1MjBhNTRk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGl0
LXV0aWwuanMKQEAgLTAsMCArMSwxOTUgQEAKKy8vIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1
bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworCisvKioKKyAqIEBmaWxlT3ZlcnZpZXcgIFRoaXMg
ZmlsZSBpbmNsdWRlcyBsZWdhY3kgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHRoZSBsYXlvdXQKKyAq
ICAgICAgICAgICAgICAgIHRlc3QuCisgKi8KKworLy8gSG93IG1hbnkgZnJhbWVzIGluIGEgV2Vi
QXVkaW8gcmVuZGVyIHF1YW50dW0uCitsZXQgUkVOREVSX1FVQU5UVU1fRlJBTUVTID0gMTI4Owor
CisvLyBDb21wYXJlIHR3byBhcnJheXMgKGNvbW1vbmx5IGV4dHJhY3RlZCBmcm9tIGJ1ZmZlci5n
ZXRDaGFubmVsRGF0YSgpKSB3aXRoCisvLyBjb25zdHJhaW50czoKKy8vICAgb3B0aW9ucy50aHJl
c2hvbGRTTlI6IE1pbmltdW0gYWxsb3dlZCBTTlIgYmV0d2VlbiB0aGUgYWN0dWFsIGFuZCBleHBl
Y3RlZAorLy8gICAgIHNpZ25hbC4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgMTAwMDAuCisvLyAgIG9w
dGlvbnMudGhyZXNob2xkRGlmZlVMUDogTWF4aW11bSBhbGxvd2VkIGRpZmZlcmVuY2UgYmV0d2Vl
biB0aGUgYWN0dWFsCisvLyAgICAgYW5kIGV4cGVjdGVkIHNpZ25hbCBpbiBVTFAoVW5pdCBpbiB0
aGUgbGFzdCBwbGFjZSkuIFRoZSBkZWZhdWx0IGlzIDAuCisvLyAgIG9wdGlvbnMudGhyZXNob2xk
RGlmZkNvdW50OiBNYXhpbXVtIGFsbG93ZWQgbnVtYmVyIG9mIHNhbXBsZSBkaWZmZXJlbmNlcwor
Ly8gICAgIHdoaWNoIGV4Y2VlZHMgdGhlIHRocmVzaG9sZC4gVGhlIGRlZmF1bHQgaXMgMC4KKy8v
ICAgb3B0aW9ucy5iaXREZXB0aDogVGhlIGV4cGVjdGVkIHJlc3VsdCBpcyBhc3N1bWVkIHRvIGNv
bWUgZnJvbSBhbiBhdWRpbworLy8gICAgIGZpbGUgd2l0aCB0aGlzIG51bWJlciBvZiBiaXRzIG9m
IHByZWNpc2lvbi4gVGhlIGRlZmF1bHQgaXMgMTYuCitmdW5jdGlvbiBjb21wYXJlQnVmZmVyc1dp
dGhDb25zdHJhaW50cyhzaG91bGQsIGFjdHVhbCwgZXhwZWN0ZWQsIG9wdGlvbnMpIHsKKyAgaWYg
KCFvcHRpb25zKQorICAgIG9wdGlvbnMgPSB7fTsKKworICAvLyBPbmx5IHByaW50IG91dCB0aGUg
bWVzc2FnZSBpZiB0aGUgbGVuZ3RocyBhcmUgZGlmZmVyZW50OyB0aGUKKyAgLy8gZXhwZWN0YXRp
b24gaXMgdGhhdCB0aGV5IGFyZSB0aGUgc2FtZSwgc28gZG9uJ3QgY2x1dHRlciB1cCB0aGUKKyAg
Ly8gb3V0cHV0LgorICBpZiAoYWN0dWFsLmxlbmd0aCAhPT0gZXhwZWN0ZWQubGVuZ3RoKSB7Cisg
ICAgc2hvdWxkKAorICAgICAgICBhY3R1YWwubGVuZ3RoID09PSBleHBlY3RlZC5sZW5ndGgsCisg
ICAgICAgICdMZW5ndGggb2YgYWN0dWFsIGFuZCBleHBlY3RlZCBidWZmZXJzIHNob3VsZCBtYXRj
aCcpCisgICAgICAgIC5iZVRydWUoKTsKKyAgfQorCisgIGxldCBtYXhFcnJvciA9IC0xOworICBs
ZXQgZGlmZkNvdW50ID0gMDsKKyAgbGV0IGVycm9yUG9zaXRpb24gPSAtMTsKKyAgbGV0IHRocmVz
aG9sZFNOUiA9IChvcHRpb25zLnRocmVzaG9sZFNOUiB8fCAxMDAwMCk7CisKKyAgbGV0IHRocmVz
aG9sZERpZmZVTFAgPSAob3B0aW9ucy50aHJlc2hvbGREaWZmVUxQIHx8IDApOworICBsZXQgdGhy
ZXNob2xkRGlmZkNvdW50ID0gKG9wdGlvbnMudGhyZXNob2xkRGlmZkNvdW50IHx8IDApOworCisg
IC8vIEJ5IGRlZmF1bHQsIHRoZSBiaXQgZGVwdGggaXMgMTYuCisgIGxldCBiaXREZXB0aCA9IChv
cHRpb25zLmJpdERlcHRoIHx8IDE2KTsKKyAgbGV0IHNjYWxlRmFjdG9yID0gTWF0aC5wb3coMiwg
Yml0RGVwdGggLSAxKTsKKworICBsZXQgbm9pc2VQb3dlciA9IDAsIHNpZ25hbFBvd2VyID0gMDsK
KworICBmb3IgKGxldCBpID0gMDsgaSA8IGFjdHVhbC5sZW5ndGg7IGkrKykgeworICAgIGxldCBk
aWZmID0gYWN0dWFsW2ldIC0gZXhwZWN0ZWRbaV07CisgICAgbm9pc2VQb3dlciArPSBkaWZmICog
ZGlmZjsKKyAgICBzaWduYWxQb3dlciArPSBleHBlY3RlZFtpXSAqIGV4cGVjdGVkW2ldOworCisg
ICAgaWYgKE1hdGguYWJzKGRpZmYpID4gbWF4RXJyb3IpIHsKKyAgICAgIG1heEVycm9yID0gTWF0
aC5hYnMoZGlmZik7CisgICAgICBlcnJvclBvc2l0aW9uID0gaTsKKyAgICB9CisKKyAgICAvLyBU
aGUgcmVmZXJlbmNlIGZpbGUgaXMgYSAxNi1iaXQgV0FWIGZpbGUsIHNvIHdlIHdpbGwgYWxtb3N0
IG5ldmVyIGdldAorICAgIC8vIGFuIGV4YWN0IG1hdGNoIGJldHdlZW4gaXQgYW5kIHRoZSBhY3R1
YWwgZmxvYXRpbmctcG9pbnQgcmVzdWx0LgorICAgIGlmIChNYXRoLmFicyhkaWZmKSA+IHNjYWxl
RmFjdG9yKQorICAgICAgZGlmZkNvdW50Kys7CisgIH0KKworICBsZXQgc25yID0gMTAgKiBNYXRo
LmxvZzEwKHNpZ25hbFBvd2VyIC8gbm9pc2VQb3dlcik7CisgIGxldCBtYXhFcnJvclVMUCA9IG1h
eEVycm9yICogc2NhbGVGYWN0b3I7CisKKyAgc2hvdWxkKHNuciwgJ1NOUicpLmJlR3JlYXRlclRo
YW5PckVxdWFsVG8odGhyZXNob2xkU05SKTsKKworICBzaG91bGQoCisgICAgICBtYXhFcnJvclVM
UCwKKyAgICAgIG9wdGlvbnMucHJlZml4ICsgJzogTWF4aW11bSBkaWZmZXJlbmNlIChpbiB1bHAg
dW5pdHMgKCcgKyBiaXREZXB0aCArCisgICAgICAgICAgJy1iaXRzKSknKQorICAgICAgLmJlTGVz
c1RoYW5PckVxdWFsVG8odGhyZXNob2xkRGlmZlVMUCk7CisKKyAgc2hvdWxkKGRpZmZDb3VudCwg
b3B0aW9ucy5wcmVmaXggKyAnOiBOdW1iZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiByZXN1bHRz
JykKKyAgICAgIC5iZUxlc3NUaGFuT3JFcXVhbFRvKHRocmVzaG9sZERpZmZDb3VudCk7Cit9CisK
Ky8vIENyZWF0ZSBhbiBpbXB1bHNlIGluIGEgYnVmZmVyIG9mIGxlbmd0aCBzYW1wbGVGcmFtZUxl
bmd0aAorZnVuY3Rpb24gY3JlYXRlSW1wdWxzZUJ1ZmZlcihjb250ZXh0LCBzYW1wbGVGcmFtZUxl
bmd0aCkgeworICBsZXQgYXVkaW9CdWZmZXIgPQorICAgICAgY29udGV4dC5jcmVhdGVCdWZmZXIo
MSwgc2FtcGxlRnJhbWVMZW5ndGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7CisgIGxldCBuID0gYXVk
aW9CdWZmZXIubGVuZ3RoOworICBsZXQgZGF0YUwgPSBhdWRpb0J1ZmZlci5nZXRDaGFubmVsRGF0
YSgwKTsKKworICBmb3IgKGxldCBrID0gMDsgayA8IG47ICsraykgeworICAgIGRhdGFMW2tdID0g
MDsKKyAgfQorICBkYXRhTFswXSA9IDE7CisKKyAgcmV0dXJuIGF1ZGlvQnVmZmVyOworfQorCisv
LyBDcmVhdGUgYSBidWZmZXIgb2YgdGhlIGdpdmVuIGxlbmd0aCB3aXRoIGEgbGluZWFyIHJhbXAg
aGF2aW5nIHZhbHVlcyAwIDw9IHggPAorLy8gMS4KK2Z1bmN0aW9uIGNyZWF0ZUxpbmVhclJhbXBC
dWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgpIHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0K
KyAgICAgIGNvbnRleHQuY3JlYXRlQnVmZmVyKDEsIHNhbXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0
LnNhbXBsZVJhdGUpOworICBsZXQgbiA9IGF1ZGlvQnVmZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFM
ID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgZm9yIChsZXQgaSA9IDA7IGkg
PCBuOyArK2kpCisgICAgZGF0YUxbaV0gPSBpIC8gbjsKKworICByZXR1cm4gYXVkaW9CdWZmZXI7
Cit9CisKKy8vIENyZWF0ZSBhbiBBdWRpb0J1ZmZlciBvZiBsZW5ndGggfHNhbXBsZUZyYW1lTGVu
Z3RofCBoYXZpbmcgYSBjb25zdGFudCB2YWx1ZQorLy8gfGNvbnN0YW50VmFsdWV8LiBJZiB8Y29u
c3RhbnRWYWx1ZXwgaXMgYSBudW1iZXIsIHRoZSBidWZmZXIgaGFzIG9uZSBjaGFubmVsCisvLyBm
aWxsZWQgd2l0aCB0aGF0IHZhbHVlLiBJZiB8Y29uc3RhbnRWYWx1ZXwgaXMgYW4gYXJyYXksIHRo
ZSBidWZmZXIgaXMgY3JlYXRlZAorLy8gd2l0IGEgbnVtYmVyIG9mIGNoYW5uZWxzIGVxdWFsIHRv
IHRoZSBsZW5ndGggb2YgdGhlIGFycmF5LCBhbmQgY2hhbm5lbCBrIGlzCisvLyBmaWxsZWQgd2l0
aCB0aGUgayd0aCBlbGVtZW50IG9mIHRoZSB8Y29uc3RhbnRWYWx1ZXwgYXJyYXkuCitmdW5jdGlv
biBjcmVhdGVDb25zdGFudEJ1ZmZlcihjb250ZXh0LCBzYW1wbGVGcmFtZUxlbmd0aCwgY29uc3Rh
bnRWYWx1ZSkgeworICBsZXQgY2hhbm5lbHM7CisgIGxldCB2YWx1ZXM7CisKKyAgaWYgKHR5cGVv
ZiBjb25zdGFudFZhbHVlID09PSAnbnVtYmVyJykgeworICAgIGNoYW5uZWxzID0gMTsKKyAgICB2
YWx1ZXMgPSBbY29uc3RhbnRWYWx1ZV07CisgIH0gZWxzZSB7CisgICAgY2hhbm5lbHMgPSBjb25z
dGFudFZhbHVlLmxlbmd0aDsKKyAgICB2YWx1ZXMgPSBjb25zdGFudFZhbHVlOworICB9CisKKyAg
bGV0IGF1ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQuY3JlYXRlQnVmZmVyKGNoYW5uZWxzLCBz
YW1wbGVGcmFtZUxlbmd0aCwgY29udGV4dC5zYW1wbGVSYXRlKTsKKyAgbGV0IG4gPSBhdWRpb0J1
ZmZlci5sZW5ndGg7CisKKyAgZm9yIChsZXQgYyA9IDA7IGMgPCBjaGFubmVsczsgKytjKSB7Cisg
ICAgbGV0IGRhdGEgPSBhdWRpb0J1ZmZlci5nZXRDaGFubmVsRGF0YShjKTsKKyAgICBmb3IgKGxl
dCBpID0gMDsgaSA8IG47ICsraSkKKyAgICAgIGRhdGFbaV0gPSB2YWx1ZXNbY107CisgIH0KKwor
ICByZXR1cm4gYXVkaW9CdWZmZXI7Cit9CisKKy8vIENyZWF0ZSBhIHN0ZXJlbyBpbXB1bHNlIGlu
IGEgYnVmZmVyIG9mIGxlbmd0aCBzYW1wbGVGcmFtZUxlbmd0aAorZnVuY3Rpb24gY3JlYXRlU3Rl
cmVvSW1wdWxzZUJ1ZmZlcihjb250ZXh0LCBzYW1wbGVGcmFtZUxlbmd0aCkgeworICBsZXQgYXVk
aW9CdWZmZXIgPQorICAgICAgY29udGV4dC5jcmVhdGVCdWZmZXIoMiwgc2FtcGxlRnJhbWVMZW5n
dGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7CisgIGxldCBuID0gYXVkaW9CdWZmZXIubGVuZ3RoOwor
ICBsZXQgZGF0YUwgPSBhdWRpb0J1ZmZlci5nZXRDaGFubmVsRGF0YSgwKTsKKyAgbGV0IGRhdGFS
ID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMSk7CisKKyAgZm9yIChsZXQgayA9IDA7IGsg
PCBuOyArK2spIHsKKyAgICBkYXRhTFtrXSA9IDA7CisgICAgZGF0YVJba10gPSAwOworICB9Cisg
IGRhdGFMWzBdID0gMTsKKyAgZGF0YVJbMF0gPSAxOworCisgIHJldHVybiBhdWRpb0J1ZmZlcjsK
K30KKworLy8gQ29udmVydCB0aW1lIChpbiBzZWNvbmRzKSB0byBzYW1wbGUgZnJhbWVzLgorZnVu
Y3Rpb24gdGltZVRvU2FtcGxlRnJhbWUodGltZSwgc2FtcGxlUmF0ZSkgeworICByZXR1cm4gTWF0
aC5mbG9vcigwLjUgKyB0aW1lICogc2FtcGxlUmF0ZSk7Cit9CisKKy8vIENvbXB1dGUgdGhlIG51
bWJlciBvZiBzYW1wbGUgZnJhbWVzIGNvbnN1bWVkIGJ5IG5vdGVHcmFpbk9uIHdpdGgKKy8vIHRo
ZSBzcGVjaWZpZWQgfGdyYWluT2Zmc2V0fCwgfGR1cmF0aW9ufCwgYW5kIHxzYW1wbGVSYXRlfC4K
K2Z1bmN0aW9uIGdyYWluTGVuZ3RoSW5TYW1wbGVGcmFtZXMoZ3JhaW5PZmZzZXQsIGR1cmF0aW9u
LCBzYW1wbGVSYXRlKSB7CisgIGxldCBzdGFydEZyYW1lID0gdGltZVRvU2FtcGxlRnJhbWUoZ3Jh
aW5PZmZzZXQsIHNhbXBsZVJhdGUpOworICBsZXQgZW5kRnJhbWUgPSB0aW1lVG9TYW1wbGVGcmFt
ZShncmFpbk9mZnNldCArIGR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKworICByZXR1cm4gZW5kRnJh
bWUgLSBzdGFydEZyYW1lOworfQorCisvLyBUcnVlIGlmIHRoZSBudW1iZXIgaXMgbm90IGFuIGlu
ZmluaXR5IG9yIE5hTgorZnVuY3Rpb24gaXNWYWxpZE51bWJlcih4KSB7CisgIHJldHVybiAhaXNO
YU4oeCkgJiYgKHggIT0gSW5maW5pdHkpICYmICh4ICE9IC1JbmZpbml0eSk7Cit9CisKKy8vIENv
bXB1dGUgdGhlIChsaW5lYXIpIHNpZ25hbC10by1ub2lzZSByYXRpbyBiZXR3ZWVuIHxhY3R1YWx8
IGFuZAorLy8gfGV4cGVjdGVkfC4gIFRoZSByZXN1bHQgaXMgTk9UIGluIGRCISAgSWYgdGhlIHxh
Y3R1YWx8IGFuZAorLy8gfGV4cGVjdGVkfCBoYXZlIGRpZmZlcmVudCBsZW5ndGhzLCB0aGUgc2hv
cnRlciBsZW5ndGggaXMgdXNlZC4KK2Z1bmN0aW9uIGNvbXB1dGVTTlIoYWN0dWFsLCBleHBlY3Rl
ZCkgeworICBsZXQgc2lnbmFsUG93ZXIgPSAwOworICBsZXQgbm9pc2VQb3dlciA9IDA7CisKKyAg
bGV0IGxlbmd0aCA9IE1hdGgubWluKGFjdHVhbC5sZW5ndGgsIGV4cGVjdGVkLmxlbmd0aCk7CisK
KyAgZm9yIChsZXQgayA9IDA7IGsgPCBsZW5ndGg7ICsraykgeworICAgIGxldCBkaWZmID0gYWN0
dWFsW2tdIC0gZXhwZWN0ZWRba107CisgICAgc2lnbmFsUG93ZXIgKz0gZXhwZWN0ZWRba10gKiBl
eHBlY3RlZFtrXTsKKyAgICBub2lzZVBvd2VyICs9IGRpZmYgKiBkaWZmOworICB9CisKKyAgcmV0
dXJuIHNpZ25hbFBvd2VyIC8gbm9pc2VQb3dlcjsKK30KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpdC5qcyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291
cmNlcy9hdWRpdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OTZiOWQ1YmFkYjVjMjM5ZWVjNWU3NDY0NmI0YmYy
MmFhNTgzNWY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3Vy
Y2VzL2F1ZGl0LmpzCkBAIC0wLDAgKzEsMTQ0MiBAQAorLy8gQ29weXJpZ2h0IDIwMTYgVGhlIENo
cm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3Vy
Y2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisv
LyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29t
L3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvaXNzdWVzLzEyNzgxIGZvciBpbmZvcm1hdGlvbiBvbgor
Ly8gdGhlIHB1cnBvc2Ugb2YgYXVkaXQuanMsIGFuZCB3aHkgdGVzdGhhcm5lc3MuanMgZG9lcyBu
b3Qgc3VmZmljZS4KKworLyoqCisgKiBAZmlsZU92ZXJ2aWV3ICBXZWJBdWRpbyBsYXlvdXQgdGVz
dCB1dGlsaXR5IGxpYnJhcnkuIEJ1aWx0IGFyb3VuZCBXM0MncworICogICAgICAgICAgICAgICAg
dGVzdGhhcm5lc3MuanMuIEluY2x1ZGVzIGFzeW5jaHJvbm91cyB0ZXN0IHRhc2sgbWFuYWdlciwK
KyAqICAgICAgICAgICAgICAgIGFzc2VydGlvbiB1dGlsaXRpZXMuCisgKiBAZGVwZW5kZW5jeSAg
ICB0ZXN0aGFybmVzcy5qcworICovCisKKworKGZ1bmN0aW9uKCkgeworCisgICd1c2Ugc3RyaWN0
JzsKKworICAvLyBTZWxlY3RlZCBtZXRob2RzIGZyb20gdGVzdGhhcm5lc3MuanMuCisgIGxldCB0
ZXN0aGFybmVzc1Byb3BlcnRpZXMgPSBbCisgICAgJ3Rlc3QnLCAnYXN5bmNfdGVzdCcsICdwcm9t
aXNlX3Rlc3QnLCAncHJvbWlzZV9yZWplY3RzX2pzJywgJ2dlbmVyYXRlX3Rlc3RzJywKKyAgICAn
c2V0dXAnLCAnZG9uZScsICdhc3NlcnRfdHJ1ZScsICdhc3NlcnRfZmFsc2UnCisgIF07CisKKyAg
Ly8gQ2hlY2sgaWYgdGVzdGhhcm5lc3MuanMgaXMgcHJvcGVybHkgbG9hZGVkLiBUaHJvdyBvdGhl
cndpc2UuCisgIGZvciAobGV0IG5hbWUgaW4gdGVzdGhhcm5lc3NQcm9wZXJ0aWVzKSB7CisgICAg
aWYgKCFzZWxmLmhhc093blByb3BlcnR5KHRlc3RoYXJuZXNzUHJvcGVydGllc1tuYW1lXSkpCisg
ICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBwcm9jZWVkLiB0ZXN0aGFybmVzcy5qcyBpcyBu
b3QgbG9hZGVkLicpOworICB9Cit9KSgpOworCisKK3dpbmRvdy5BdWRpdCA9IChmdW5jdGlvbigp
IHsKKworICAndXNlIHN0cmljdCc7CisKKyAgLy8gTk9URTogTW92aW5nIHRoaXMgbWV0aG9kIChv
ciBhbnkgb3RoZXIgY29kZSBhYm92ZSkgd2lsbCBjaGFuZ2UgdGhlIGxvY2F0aW9uCisgIC8vIG9m
ICdDT05TT0xFIEVSUk9SLi4uJyBtZXNzYWdlIGluIHRoZSBleHBlY3RlZCB0ZXh0IGZpbGVzLgor
ICBmdW5jdGlvbiBfbG9nRXJyb3IobWVzc2FnZSkgeworICAgIGNvbnNvbGUuZXJyb3IoJ1thdWRp
dC5qc10gJyArIG1lc3NhZ2UpOworICB9CisKKyAgZnVuY3Rpb24gX2xvZ1Bhc3NlZChtZXNzYWdl
KSB7CisgICAgdGVzdChmdW5jdGlvbihhcmcpIHsKKyAgICAgIGFzc2VydF90cnVlKHRydWUpOwor
ICAgIH0sIG1lc3NhZ2UpOworICB9CisKKyAgZnVuY3Rpb24gX2xvZ0ZhaWxlZChtZXNzYWdlLCBk
ZXRhaWwpIHsKKyAgICB0ZXN0KGZ1bmN0aW9uKCkgeworICAgICAgYXNzZXJ0X3RydWUoZmFsc2Us
IGRldGFpbCk7CisgICAgfSwgbWVzc2FnZSk7CisgIH0KKworICBmdW5jdGlvbiBfdGhyb3dFeGNl
cHRpb24obWVzc2FnZSkgeworICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTsKKyAgfQorCisg
IC8vIFRPRE8oaG9uZ2NoYW4pOiByZW1vdmUgdGhpcyBoYWNrIGFmdGVyIGNvbmZpcm1pbmcgYWxs
IHRoZSB0ZXN0cyBhcmUKKyAgLy8gZmluaXNoZWQgY29ycmVjdGx5LiAoY3JidWcuY29tLzcwODgx
NykKKyAgY29uc3QgX3Rlc3RoYXJuZXNzRG9uZSA9IHdpbmRvdy5kb25lOworICB3aW5kb3cuZG9u
ZSA9ICgpID0+IHsKKyAgICBfdGhyb3dFeGNlcHRpb24oJ0RvIE5PVCBjYWxsIGRvbmUoKSBtZXRo
b2QgZnJvbSB0aGUgdGVzdCBjb2RlLicpOworICB9OworCisgIC8vIEdlbmVyYXRlIGEgZGVzY3Jp
cHRpdmUgc3RyaW5nIGZyb20gYSB0YXJnZXQgdmFsdWUgaW4gdmFyaW91cyB0eXBlcy4KKyAgZnVu
Y3Rpb24gX2dlbmVyYXRlRGVzY3JpcHRpb24odGFyZ2V0LCBvcHRpb25zKSB7CisgICAgbGV0IHRh
cmdldFN0cmluZzsKKworICAgIHN3aXRjaCAodHlwZW9mIHRhcmdldCkgeworICAgICAgY2FzZSAn
b2JqZWN0JzoKKyAgICAgICAgLy8gSGFuZGxlIEFycmF5cy4KKyAgICAgICAgaWYgKHRhcmdldCBp
bnN0YW5jZW9mIEFycmF5IHx8IHRhcmdldCBpbnN0YW5jZW9mIEZsb2F0MzJBcnJheSB8fAorICAg
ICAgICAgICAgdGFyZ2V0IGluc3RhbmNlb2YgRmxvYXQ2NEFycmF5IHx8IHRhcmdldCBpbnN0YW5j
ZW9mIFVpbnQ4QXJyYXkpIHsKKyAgICAgICAgICBsZXQgYXJyYXlFbGVtZW50cyA9IHRhcmdldC5s
ZW5ndGggPCBvcHRpb25zLm51bWJlck9mQXJyYXlFbGVtZW50cyA/CisgICAgICAgICAgICAgIFN0
cmluZyh0YXJnZXQpIDoKKyAgICAgICAgICAgICAgU3RyaW5nKHRhcmdldC5zbGljZSgwLCBvcHRp
b25zLm51bWJlck9mQXJyYXlFbGVtZW50cykpICsgJy4uLic7CisgICAgICAgICAgdGFyZ2V0U3Ry
aW5nID0gJ1snICsgYXJyYXlFbGVtZW50cyArICddJzsKKyAgICAgICAgfSBlbHNlIGlmICh0YXJn
ZXQgPT09IG51bGwpIHsKKyAgICAgICAgICB0YXJnZXRTdHJpbmcgPSBTdHJpbmcodGFyZ2V0KTsK
KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICB0YXJnZXRTdHJpbmcgPSAnJyArIFN0cmluZyh0
YXJnZXQpLnNwbGl0KC9bXHNcXV0vKVsxXTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAg
ICAgIGNhc2UgJ2Z1bmN0aW9uJzoKKyAgICAgICAgaWYgKEVycm9yLmlzUHJvdG90eXBlT2YodGFy
Z2V0KSkgeworICAgICAgICAgIHRhcmdldFN0cmluZyA9ICJFY21hU2NyaXB0IGVycm9yICIgKyB0
YXJnZXQubmFtZTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICB0YXJnZXRTdHJpbmcgPSBT
dHJpbmcodGFyZ2V0KTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIGRlZmF1bHQ6
CisgICAgICAgIHRhcmdldFN0cmluZyA9IFN0cmluZyh0YXJnZXQpOworICAgICAgICBicmVhazsK
KyAgICB9CisKKyAgICByZXR1cm4gdGFyZ2V0U3RyaW5nOworICB9CisKKyAgLy8gUmV0dXJuIGEg
c3RyaW5nIHN1aXRhYmxlIGZvciBwcmludGluZyBvbmUgZmFpbGVkIGVsZW1lbnQgaW4KKyAgLy8g
fGJlQ2xvc2VUb0FycmF5fC4KKyAgZnVuY3Rpb24gX2Zvcm1hdEZhaWx1cmVFbnRyeShpbmRleCwg
YWN0dWFsLCBleHBlY3RlZCwgYWJzZXJyLCB0aHJlc2hvbGQpIHsKKyAgICByZXR1cm4gJ1x0Wycg
KyBpbmRleCArICddXHQnICsgYWN0dWFsLnRvRXhwb25lbnRpYWwoMTYpICsgJ1x0JyArCisgICAg
ICAgIGV4cGVjdGVkLnRvRXhwb25lbnRpYWwoMTYpICsgJ1x0JyArIGFic2Vyci50b0V4cG9uZW50
aWFsKDE2KSArICdcdCcgKworICAgICAgICAoYWJzZXJyIC8gTWF0aC5hYnMoZXhwZWN0ZWQpKS50
b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKworICAgICAgICB0aHJlc2hvbGQudG9FeHBvbmVudGlh
bCgxNik7CisgIH0KKworICAvLyBDb21wdXRlIHRoZSBlcnJvciB0aHJlc2hvbGQgY3JpdGVyaW9u
IGZvciB8YmVDbG9zZVRvQXJyYXl8CisgIGZ1bmN0aW9uIF9jbG9zZVRvVGhyZXNob2xkKGFic2Vy
ciwgcmVsZXJyLCBleHBlY3RlZCkgeworICAgIHJldHVybiBNYXRoLm1heChhYnNlcnIsIHJlbGVy
ciAqIE1hdGguYWJzKGV4cGVjdGVkKSk7CisgIH0KKworICAvKioKKyAgICogQGNsYXNzIFNob3Vs
ZAorICAgKiBAZGVzY3JpcHRpb24gQXNzZXJ0aW9uIHN1YnRhc2sgZm9yIHRoZSBBdWRpdCB0YXNr
LgorICAgKiBAcGFyYW0ge1Rhc2t9IHBhcmVudFRhc2sgICAgICAgICAgIEFzc29jaWF0ZWQgVGFz
ayBvYmplY3QuCisgICAqIEBwYXJhbSB7QW55fSBhY3R1YWwgICAgICAgICAgICAgICAgVGFyZ2V0
IHZhbHVlIHRvIGJlIHRlc3RlZC4KKyAgICogQHBhcmFtIHtTdHJpbmd9IGFjdHVhbERlc2NyaXB0
aW9uICBTdHJpbmcgZGVzY3JpcHRpb24gb2YgdGhlIHRlc3QgdGFyZ2V0LgorICAgKi8KKyAgY2xh
c3MgU2hvdWxkIHsKKyAgICBjb25zdHJ1Y3RvcihwYXJlbnRUYXNrLCBhY3R1YWwsIGFjdHVhbERl
c2NyaXB0aW9uKSB7CisgICAgICB0aGlzLl90YXNrID0gcGFyZW50VGFzazsKKworICAgICAgdGhp
cy5fYWN0dWFsID0gYWN0dWFsOworICAgICAgdGhpcy5fYWN0dWFsRGVzY3JpcHRpb24gPSAoYWN0
dWFsRGVzY3JpcHRpb24gfHwgbnVsbCk7CisgICAgICB0aGlzLl9leHBlY3RlZCA9IG51bGw7Cisg
ICAgICB0aGlzLl9leHBlY3RlZERlc2NyaXB0aW9uID0gbnVsbDsKKworICAgICAgdGhpcy5fZGV0
YWlsID0gJyc7CisgICAgICAvLyBJZiB0cnVlIGFuZCB0aGUgdGVzdCBmYWlsZWQsIHByaW50IHRo
ZSBhY3R1YWwgdmFsdWUgYXQgdGhlCisgICAgICAvLyBlbmQgb2YgdGhlIG1lc3NhZ2UuCisgICAg
ICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSB0cnVlOworCisgICAgICB0aGlzLl9yZXN1
bHQgPSBudWxsOworCisgICAgICAvKioKKyAgICAgICAqIEBwYXJhbSB7TnVtYmVyfSBudW1iZXJP
ZkVycm9ycyAgIE51bWJlciBvZiBlcnJvcnMgdG8gYmUgcHJpbnRlZC4KKyAgICAgICAqIEBwYXJh
bSB7TnVtYmVyfSBudW1iZXJPZkFycmF5RWxlbWVudHMgIE51bWJlciBvZiBhcnJheSBlbGVtZW50
cyB0byBiZQorICAgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cHJpbnRlZCBpbiB0aGUgdGVzdCBsb2cuCisgICAgICAgKiBAcGFyYW0ge0Jvb2xlYW59IHZlcmJv
c2UgICAgICAgICBWZXJib3NlIG91dHB1dCBmcm9tIHRoZSBhc3NlcnRpb24uCisgICAgICAgKi8K
KyAgICAgIHRoaXMuX29wdGlvbnMgPSB7CisgICAgICAgIG51bWJlck9mRXJyb3JzOiA0LAorICAg
ICAgICBudW1iZXJPZkFycmF5RWxlbWVudHM6IDE2LAorICAgICAgICB2ZXJib3NlOiBmYWxzZQor
ICAgICAgfTsKKyAgICB9CisKKyAgICBfcHJvY2Vzc0FyZ3VtZW50cyhhcmdzKSB7CisgICAgICBp
ZiAoYXJncy5sZW5ndGggPT09IDApCisgICAgICAgIHJldHVybjsKKworICAgICAgaWYgKGFyZ3Mu
bGVuZ3RoID4gMCkKKyAgICAgICAgdGhpcy5fZXhwZWN0ZWQgPSBhcmdzWzBdOworCisgICAgICBp
ZiAodHlwZW9mIGFyZ3NbMV0gPT09ICdzdHJpbmcnKSB7CisgICAgICAgIC8vIGNhc2UgMTogKGV4
cGVjdGVkLCBkZXNjcmlwdGlvbiwgb3B0aW9ucykKKyAgICAgICAgdGhpcy5fZXhwZWN0ZWREZXNj
cmlwdGlvbiA9IGFyZ3NbMV07CisgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fb3B0aW9ucywg
YXJnc1syXSk7CisgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzFdID09PSAnb2JqZWN0Jykg
eworICAgICAgICAvLyBjYXNlIDI6IChleHBlY3RlZCwgb3B0aW9ucykKKyAgICAgICAgT2JqZWN0
LmFzc2lnbih0aGlzLl9vcHRpb25zLCBhcmdzWzFdKTsKKyAgICAgIH0KKyAgICB9CisKKyAgICBf
YnVpbGRSZXN1bHRUZXh0KCkgeworICAgICAgaWYgKHRoaXMuX3Jlc3VsdCA9PT0gbnVsbCkKKyAg
ICAgICAgX3Rocm93RXhjZXB0aW9uKCdJbGxlZ2FsIGludm9jYXRpb246IHRoZSBhc3NlcnRpb24g
aXMgbm90IGZpbmlzaGVkLicpOworCisgICAgICBsZXQgYWN0dWFsU3RyaW5nID0gX2dlbmVyYXRl
RGVzY3JpcHRpb24odGhpcy5fYWN0dWFsLCB0aGlzLl9vcHRpb25zKTsKKworICAgICAgLy8gVXNl
IGdlbmVyYXRlZCB0ZXh0IHdoZW4gdGhlIGRlc2NyaXB0aW9uIGlzIG5vdCBwcm92aWRlZC4KKyAg
ICAgIGlmICghdGhpcy5fYWN0dWFsRGVzY3JpcHRpb24pCisgICAgICAgIHRoaXMuX2FjdHVhbERl
c2NyaXB0aW9uID0gYWN0dWFsU3RyaW5nOworCisgICAgICBpZiAoIXRoaXMuX2V4cGVjdGVkRGVz
Y3JpcHRpb24pIHsKKyAgICAgICAgdGhpcy5fZXhwZWN0ZWREZXNjcmlwdGlvbiA9CisgICAgICAg
ICAgICBfZ2VuZXJhdGVEZXNjcmlwdGlvbih0aGlzLl9leHBlY3RlZCwgdGhpcy5fb3B0aW9ucyk7
CisgICAgICB9CisKKyAgICAgIC8vIEZvciB0aGUgYXNzZXJ0aW9uIHdpdGggYSBzaW5nbGUgb3Bl
cmFuZC4KKyAgICAgIHRoaXMuX2RldGFpbCA9CisgICAgICAgICAgdGhpcy5fZGV0YWlsLnJlcGxh
Y2UoL1wkXHthY3R1YWxcfS9nLCB0aGlzLl9hY3R1YWxEZXNjcmlwdGlvbik7CisKKyAgICAgIC8v
IElmIHRoZXJlIGlzIGEgc2Vjb25kIG9wZXJhbmQgKGkuZS4gZXhwZWN0ZWQgdmFsdWUpLCB3ZSBo
YXZlIHRvIGJ1aWxkCisgICAgICAvLyB0aGUgc3RyaW5nIGZvciBpdCBhcyB3ZWxsLgorICAgICAg
dGhpcy5fZGV0YWlsID0KKyAgICAgICAgICB0aGlzLl9kZXRhaWwucmVwbGFjZSgvXCRce2V4cGVj
dGVkXH0vZywgdGhpcy5fZXhwZWN0ZWREZXNjcmlwdGlvbik7CisKKyAgICAgIC8vIElmIHRoZXJl
IGlzIGFueSBwcm9wZXJ0eSBpbiB8X29wdGlvbnN8LCByZXBsYWNlIHRoZSBwcm9wZXJ0eSBuYW1l
CisgICAgICAvLyB3aXRoIHRoZSB2YWx1ZS4KKyAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5f
b3B0aW9ucykgeworICAgICAgICBpZiAobmFtZSA9PT0gJ251bWJlck9mRXJyb3JzJyB8fCBuYW1l
ID09PSAnbnVtYmVyT2ZBcnJheUVsZW1lbnRzJyB8fAorICAgICAgICAgICAgbmFtZSA9PT0gJ3Zl
cmJvc2UnKSB7CisgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKworICAgICAgICAvLyBU
aGUgUmVnRXhwIGtleSBzdHJpbmcgY29udGFpbnMgc3BlY2lhbCBjaGFyYWN0ZXIuIFRha2UgY2Fy
ZSBvZiBpdC4KKyAgICAgICAgbGV0IHJlID0gJ1wkXHsnICsgbmFtZSArICdcfSc7CisgICAgICAg
IHJlID0gcmUucmVwbGFjZSgvKFsuKis/Xj0hOiR7fSgpfFxbXF1cL1xcXSkvZywgJ1xcJDEnKTsK
KyAgICAgICAgdGhpcy5fZGV0YWlsID0gdGhpcy5fZGV0YWlsLnJlcGxhY2UoCisgICAgICAgICAg
ICBuZXcgUmVnRXhwKHJlLCAnZycpLCBfZ2VuZXJhdGVEZXNjcmlwdGlvbih0aGlzLl9vcHRpb25z
W25hbWVdKSk7CisgICAgICB9CisKKyAgICAgIC8vIElmIHRoZSB0ZXN0IGZhaWxlZCwgYWRkIHRo
ZSBhY3R1YWwgdmFsdWUgYXQgdGhlIGVuZC4KKyAgICAgIGlmICh0aGlzLl9yZXN1bHQgPT09IGZh
bHNlICYmIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9PT0gdHJ1ZSkgeworICAgICAgICB0
aGlzLl9kZXRhaWwgKz0gJyBHb3QgJyArIGFjdHVhbFN0cmluZyArICcuJzsKKyAgICAgIH0KKyAg
ICB9CisKKyAgICBfZmluYWxpemUoKSB7CisgICAgICBpZiAodGhpcy5fcmVzdWx0KSB7CisgICAg
ICAgIF9sb2dQYXNzZWQoJyAgJyArIHRoaXMuX2RldGFpbCk7CisgICAgICB9IGVsc2UgeworICAg
ICAgICBfbG9nRmFpbGVkKCdYICcgKyB0aGlzLl9kZXRhaWwpOworICAgICAgfQorCisgICAgICAv
LyBUaGlzIGFzc2VydGlvbiBpcyBmaW5pc2hlZCwgc28gdXBkYXRlIHRoZSBwYXJlbnQgdGFzayBh
Y2NvcmRpbmdseS4KKyAgICAgIHRoaXMuX3Rhc2sudXBkYXRlKHRoaXMpOworCisgICAgICAvLyBU
T0RPKGhvbmdjaGFuKTogY29uZmlndXJhYmxlICdkZXRhaWwnIG1lc3NhZ2UuCisgICAgfQorCisg
ICAgX2Fzc2VydChjb25kaXRpb24sIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpIHsKKyAgICAgIHRo
aXMuX3Jlc3VsdCA9IEJvb2xlYW4oY29uZGl0aW9uKTsKKyAgICAgIHRoaXMuX2RldGFpbCA9IHRo
aXMuX3Jlc3VsdCA/IHBhc3NEZXRhaWwgOiBmYWlsRGV0YWlsOworICAgICAgdGhpcy5fYnVpbGRS
ZXN1bHRUZXh0KCk7CisgICAgICB0aGlzLl9maW5hbGl6ZSgpOworCisgICAgICByZXR1cm4gdGhp
cy5fcmVzdWx0OworICAgIH0KKworICAgIGdldCByZXN1bHQoKSB7CisgICAgICByZXR1cm4gdGhp
cy5fcmVzdWx0OworICAgIH0KKworICAgIGdldCBkZXRhaWwoKSB7CisgICAgICByZXR1cm4gdGhp
cy5fZGV0YWlsOworICAgIH0KKworICAgIC8qKgorICAgICAqIHNob3VsZCgpIGFzc2VydGlvbnMu
CisgICAgICoKKyAgICAgKiBAZXhhbXBsZSBBbGwgdGhlIGFzc2VydGlvbnMgY2FuIGhhdmUgMSwg
MiBvciAzIGFyZ3VtZW50czoKKyAgICAgKiAgIHNob3VsZCgpLmRvQXNzZXJ0KGV4cGVjdGVkKTsK
KyAgICAgKiAgIHNob3VsZCgpLmRvQXNzZXJ0KGV4cGVjdGVkLCBvcHRpb25zKTsKKyAgICAgKiAg
IHNob3VsZCgpLmRvQXNzZXJ0KGV4cGVjdGVkLCBleHBlY3RlZERlc2NyaXB0aW9uLCBvcHRpb25z
KTsKKyAgICAgKgorICAgICAqIEBwYXJhbSB7QW55fSBleHBlY3RlZCAgICAgICAgICAgICAgICAg
IEV4cGVjdGVkIHZhbHVlIG9mIHRoZSBhc3NlcnRpb24uCisgICAgICogQHBhcmFtIHtTdHJpbmd9
IGV4cGVjdGVkRGVzY3JpcHRpb24gICAgRGVzY3JpcHRpb24gb2YgZXhwZWN0ZWQgdmFsdWUuCisg
ICAgICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgICAgICAgICAgICAgICAgT3B0aW9ucyBmb3Ig
YXNzZXJ0aW9uLgorICAgICAqIEBwYXJhbSB7TnVtYmVyfSBvcHRpb25zLm51bWJlck9mRXJyb3Jz
IE51bWJlciBvZiBlcnJvcnMgdG8gYmUgcHJpbnRlZC4KKyAgICAgKiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAoaWYgYXBwbGljYWJsZSkKKyAgICAgKiBAcGFyYW0ge051
bWJlcn0gb3B0aW9ucy5udW1iZXJPZkFycmF5RWxlbWVudHMgIE51bWJlciBvZiBhcnJheSBlbGVt
ZW50cworICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdG8gYmUgcHJpbnRlZC4gKGlmCisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBhcHBsaWNhYmxlKQorICAgICAqIEBub3RlcyBTb21lIGFzc2Vy
dGlvbnMgY2FuIGhhdmUgYWRkaXRpb25hbCBvcHRpb25zIGZvciB0aGVpciBzcGVjaWZpYworICAg
ICAqICAgICAgICB0ZXN0aW5nLgorICAgICAqLworCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYg
fGFjdHVhbHwgZXhpc3RzLgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3Vs
ZCh7fSwgJ0FuIGVtcHR5IG9iamVjdCcpLmV4aXN0KCk7CisgICAgICogQHJlc3VsdAorICAgICAq
ICAgIlBBU1MgICBBbiBlbXB0eSBvYmplY3QgZG9lcyBleGlzdC4iCisgICAgICovCisgICAgZXhp
c3QoKSB7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHRoaXMuX2FjdHVh
bCAhPT0gbnVsbCAmJiB0aGlzLl9hY3R1YWwgIT09IHVuZGVmaW5lZCwKKyAgICAgICAgICAnJHth
Y3R1YWx9IGRvZXMgZXhpc3QuJywgJyR7YWN0dWFsfSBkb2VzIG5vdCBleGlzdC4nKTsKKyAgICB9
CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBvcGVyYXRpb24gd3JhcHBlZCBp
biBhIGZ1bmN0aW9uIHRocm93cyBhbiBleGNlcHRpb24KKyAgICAgKiB3aXRoIGEgZXhwZWN0ZWQg
ZXJyb3IgdHlwZSBjb3JyZWN0bHkuIHxleHBlY3RlZHwgaXMgb3B0aW9uYWwuIElmIGl0IGlzIGFu
CisgICAgICogaW5zdGFuY2Ugb2YgRE9NRXhjZXB0aW9uLCB0aGVuIHRoZSBkZXNjcmlwdGlvbiAo
c2Vjb25kIGFyZ3VtZW50KSBjYW4gYmUKKyAgICAgKiBwcm92aWRlZCB0byBiZSBtb3JlIHN0cmlj
dCBhYm91dCB0aGUgZXhwZWN0ZWQgZXhjZXB0aW9uIHR5cGUuIHxleHBlY3RlZHwKKyAgICAgKiBh
bHNvIGNhbiBiZSBvdGhlciBnZW5lcmljIGVycm9yIHR5cGVzIHN1Y2ggYXMgVHlwZUVycm9yLCBS
YW5nZUVycm9yIG9yCisgICAgICogZXRjLgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAg
KiAgIHNob3VsZCgoKSA9PiB7IGxldCBhID0gYjsgfSwgJ0EgYmFkIGNvZGUnKS50aHJvdygpOwor
ICAgICAqICAgc2hvdWxkKCgpID0+IHsgbmV3IFNvbWVDb25zdHJ1Y3RvcigpOyB9LCAnQSBiYWQg
Y29uc3RydWN0aW9uJykKKyAgICAgKiAgICAgICAudGhyb3coRE9NRXhjZXB0aW9uLCAnTm90U3Vw
cG9ydGVkRXJyb3InKTsKKyAgICAgKiAgIHNob3VsZCgoKSA9PiB7IGxldCBjID0gZDsgfSwgJ0Fz
c2lnbmluZyBkIHRvIGMnKQorICAgICAqICAgICAgIC50aHJvdyhSZWZlcmVuY2VFcnJvcik7Cisg
ICAgICogICBzaG91bGQoKCkgPT4geyBsZXQgZSA9IGY7IH0sICdBc3NpZ25pbmcgZSB0byBmJykK
KyAgICAgKiAgICAgICAudGhyb3coUmVmZXJlbmNlRXJyb3IsIHsgb21pdEVycm9yTWVzc2FnZTog
dHJ1ZSB9KTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQSBiYWQg
Y29kZSB0aHJldyBhbiBleGNlcHRpb24gb2YgUmVmZXJlbmNlRXJyb3I6IGIgaXMgbm90CisgICAg
ICogICAgICAgZGVmaW5lZC4iCisgICAgICogICAiUEFTUyAgIEEgYmFkIGNvbnN0cnVjdGlvbiB0
aHJldyBET01FeGNlcHRpb246Tm90U3VwcG9ydGVkRXJyb3IuIgorICAgICAqICAgIlBBU1MgICBB
c3NpZ25pbmcgZCB0byBjIHRocmV3IFJlZmVyZW5jZUVycm9yOiBkIGlzIG5vdCBkZWZpbmVkLiIK
KyAgICAgKiAgICJQQVNTICAgQXNzaWduaW5nIGUgdG8gZiB0aHJldyBSZWZlcmVuY2VFcnJvcjog
W2Vycm9yIG1lc3NhZ2UKKyAgICAgKiAgICAgICBvbWl0dGVkXS4iCisgICAgICovCisgICAgdGhy
b3coKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICB0
aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IGRpZFRocm93
Q29ycmVjdGx5ID0gZmFsc2U7CisgICAgICBsZXQgcGFzc0RldGFpbCwgZmFpbERldGFpbDsKKwor
ICAgICAgdHJ5IHsKKyAgICAgICAgLy8gVGhpcyBzaG91bGQgdGhyb3cuCisgICAgICAgIHRoaXMu
X2FjdHVhbCgpOworICAgICAgICAvLyBDYXRjaCBkaWQgbm90IGhhcHBlbiwgc28gdGhlIHRlc3Qg
aXMgZmFpbGVkLgorICAgICAgICBmYWlsRGV0YWlsID0gJyR7YWN0dWFsfSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4nOworICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKKyAgICAgICAgbGV0IGVy
cm9yTWVzc2FnZSA9IHRoaXMuX29wdGlvbnMub21pdEVycm9yTWVzc2FnZSA/CisgICAgICAgICAg
ICAnOiBbZXJyb3IgbWVzc2FnZSBvbWl0dGVkXScgOgorICAgICAgICAgICAgJzogIicgKyBlcnJv
ci5tZXNzYWdlICsgJyInOworICAgICAgICBpZiAodGhpcy5fZXhwZWN0ZWQgPT09IG51bGwgfHwg
dGhpcy5fZXhwZWN0ZWQgPT09IHVuZGVmaW5lZCkgeworICAgICAgICAgIC8vIFRoZSBleHBlY3Rl
ZCBlcnJvciB0eXBlIHdhcyBub3QgZ2l2ZW4uCisgICAgICAgICAgZGlkVGhyb3dDb3JyZWN0bHkg
PSB0cnVlOworICAgICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IHRocmV3ICcgKyBlcnJv
ci5uYW1lICsgZXJyb3JNZXNzYWdlICsgJy4nOworICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2V4
cGVjdGVkID09PSBET01FeGNlcHRpb24gJiYKKyAgICAgICAgICAgICAgICAgICAodGhpcy5fZXhw
ZWN0ZWREZXNjcmlwdGlvbiA9PT0gdW5kZWZpbmVkIHx8CisgICAgICAgICAgICAgICAgICAgIHRo
aXMuX2V4cGVjdGVkRGVzY3JpcHRpb24gPT09IGVycm9yLm5hbWUpKSB7CisgICAgICAgICAgLy8g
SGFuZGxlcyBET01FeGNlcHRpb24gd2l0aCB0aGUgYXNzb2NpYXRlZCBuYW1lLgorICAgICAgICAg
IGRpZFRocm93Q29ycmVjdGx5ID0gdHJ1ZTsKKyAgICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0
dWFsfSB0aHJldyAke2V4cGVjdGVkfScgKyBlcnJvck1lc3NhZ2UgKyAnLic7CisgICAgICAgIH0g
ZWxzZSBpZiAodGhpcy5fZXhwZWN0ZWQgPT0gZXJyb3IuY29uc3RydWN0b3IpIHsKKyAgICAgICAg
ICAvLyBIYW5kbGVyIG90aGVyIGVycm9yIHR5cGVzLgorICAgICAgICAgIGRpZFRocm93Q29ycmVj
dGx5ID0gdHJ1ZTsKKyAgICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSB0aHJldyAnICsg
ZXJyb3IubmFtZSArIGVycm9yTWVzc2FnZSArICcuJzsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICBkaWRUaHJvd0NvcnJlY3RseSA9IGZhbHNlOworICAgICAgICAgIGZhaWxEZXRhaWwgPQor
ICAgICAgICAgICAgICAnJHthY3R1YWx9IHRocmV3ICInICsgZXJyb3IubmFtZSArICciIGluc3Rl
YWQgb2YgJHtleHBlY3RlZH0uJzsKKyAgICAgICAgfQorICAgICAgfQorCisgICAgICByZXR1cm4g
dGhpcy5fYXNzZXJ0KGRpZFRocm93Q29ycmVjdGx5LCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKTsK
KyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBvcGVyYXRpb24gd3Jh
cHBlZCBpbiBhIGZ1bmN0aW9uIGRvZXMgbm90IHRocm93cyBhbgorICAgICAqIGV4Y2VwdGlvbiBj
b3JyZWN0bHkuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKCgpID0+
IHsgbGV0IGZvbyA9ICdiYXInOyB9LCAnbGV0IGZvbyA9ICJiYXIiJykubm90VGhyb3coKTsKKyAg
ICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgbGV0IGZvbyA9ICJiYXIiIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiIKKyAgICAgKi8KKyAgICBub3RUaHJvdygpIHsKKyAg
ICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNlOworCisgICAgICBsZXQgZGlk
VGhyb3dDb3JyZWN0bHkgPSBmYWxzZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBmYWlsRGV0YWls
OworCisgICAgICB0cnkgeworICAgICAgICB0aGlzLl9hY3R1YWwoKTsKKyAgICAgICAgcGFzc0Rl
dGFpbCA9ICcke2FjdHVhbH0gZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uJzsKKyAgICAgIH0g
Y2F0Y2ggKGVycm9yKSB7CisgICAgICAgIGRpZFRocm93Q29ycmVjdGx5ID0gdHJ1ZTsKKyAgICAg
ICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0gaW5jb3JyZWN0bHkgdGhyZXcgJyArIGVycm9yLm5h
bWUgKyAnOiAiJyArCisgICAgICAgICAgICBlcnJvci5tZXNzYWdlICsgJyIuJzsKKyAgICAgIH0K
KworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCghZGlkVGhyb3dDb3JyZWN0bHksIHBhc3NEZXRh
aWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1
YWx8IHByb21pc2UgaXMgcmVzb2x2ZWQgY29ycmVjdGx5LiBOb3RlIHRoYXQgdGhlIHJldHVybmVk
CisgICAgICogcmVzdWx0IGZyb20gcHJvbWlzZSBvYmplY3Qgd2lsbCBiZSBwYXNzZWQgdG8gdGhl
IGZvbGxvd2luZyB0aGVuKCkKKyAgICAgKiBmdW5jdGlvbi4KKyAgICAgKgorICAgICAqIEBleGFt
cGxlCisgICAgICogICBzaG91bGQoJ015IHByb21pc2UnLCBwcm9taXNlKS5iZVJlc29sdmUoKS50
aGVuKChyZXN1bHQpID0+IHsKKyAgICAgKiAgICAgbG9nKHJlc3VsdCk7CisgICAgICogICB9KTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgTXkgcHJvbWlzZSByZXNv
bHZlZCBjb3JyZWN0bHkuIgorICAgICAqICAgIkZBSUwgWCBNeSBwcm9taXNlIHJlamVjdGVkICpJ
TkNPUlJFQ1RMWSogd2l0aCBfRVJST1JfLiIKKyAgICAgKi8KKyAgICBiZVJlc29sdmVkKCkgewor
ICAgICAgcmV0dXJuIHRoaXMuX2FjdHVhbC50aGVuKAorICAgICAgICAgIGZ1bmN0aW9uKHJlc3Vs
dCkgeworICAgICAgICAgICAgdGhpcy5fYXNzZXJ0KHRydWUsICcke2FjdHVhbH0gcmVzb2x2ZWQg
Y29ycmVjdGx5LicsIG51bGwpOworICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAg
ICB9LmJpbmQodGhpcyksCisgICAgICAgICAgZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAg
IHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAgICAgICBmYWxzZSwgbnVsbCwKKyAgICAgICAgICAg
ICAgICAnJHthY3R1YWx9IHJlamVjdGVkIGluY29ycmVjdGx5IHdpdGggJyArIGVycm9yICsgJy4n
KTsKKyAgICAgICAgICB9LmJpbmQodGhpcykpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IHByb21pc2UgaXMgcmVqZWN0ZWQgY29ycmVjdGx5LgorICAgICAqCisg
ICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgnTXkgcHJvbWlzZScsIHByb21pc2UpLmJl
UmVqZWN0ZWQoKS50aGVuKG5leHRTdHVmZik7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAg
ICogICAiUEFTUyAgIE15IHByb21pc2UgcmVqZWN0ZWQgY29ycmVjdGx5ICh3aXRoIF9FUlJPUl8p
LiIKKyAgICAgKiAgICJGQUlMIFggTXkgcHJvbWlzZSByZXNvbHZlZCAqSU5DT1JSRUNUTFkqLiIK
KyAgICAgKi8KKyAgICBiZVJlamVjdGVkKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2FjdHVhbC50
aGVuKAorICAgICAgICAgIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgdGhpcy5fYXNzZXJ0KGZh
bHNlLCBudWxsLCAnJHthY3R1YWx9IHJlc29sdmVkIGluY29ycmVjdGx5LicpOworICAgICAgICAg
IH0uYmluZCh0aGlzKSwKKyAgICAgICAgICBmdW5jdGlvbihlcnJvcikgeworICAgICAgICAgICAg
dGhpcy5fYXNzZXJ0KAorICAgICAgICAgICAgICAgIHRydWUsICcke2FjdHVhbH0gcmVqZWN0ZWQg
Y29ycmVjdGx5IHdpdGggJyArIGVycm9yICsgJy4nLCBudWxsKTsKKyAgICAgICAgICB9LmJpbmQo
dGhpcykpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IHByb21p
c2UgaXMgcmVqZWN0ZWQgY29ycmVjdGx5LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAg
KiAgIHNob3VsZChwcm9taXNlLCAnTXkgcHJvbWlzZScpLmJlUmVqZWN0ZWRXaXRoKCdfRVJST1Jf
JykudGhlbigpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICBNeSBw
cm9taXNlIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIF9FUlJPUl8uIgorICAgICAqICAgIkZBSUwg
WCBNeSBwcm9taXNlIHJlamVjdGVkIGNvcnJlY3RseSBidXQgZ290IF9BQ1RVQUxfRVJST1IgaW5z
dGVhZCBvZgorICAgICAqICAgICAgICAgICBfRVhQRUNURURfRVJST1JfLiIKKyAgICAgKiAgICJG
QUlMIFggTXkgcHJvbWlzZSByZXNvbHZlZCBpbmNvcnJlY3RseS4iCisgICAgICovCisgICAgYmVS
ZWplY3RlZFdpdGgoKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7
CisKKyAgICAgIHJldHVybiB0aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBmdW5jdGlvbigp
IHsKKyAgICAgICAgICAgIHRoaXMuX2Fzc2VydChmYWxzZSwgbnVsbCwgJyR7YWN0dWFsfSByZXNv
bHZlZCBpbmNvcnJlY3RseS4nKTsKKyAgICAgICAgICB9LmJpbmQodGhpcyksCisgICAgICAgICAg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIGlmICh0aGlzLl9leHBlY3RlZCAhPT0gZXJy
b3IubmFtZSkgeworICAgICAgICAgICAgICB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgICAgICAg
ICBmYWxzZSwgbnVsbCwKKyAgICAgICAgICAgICAgICAgICcke2FjdHVhbH0gcmVqZWN0ZWQgY29y
cmVjdGx5IGJ1dCBnb3QgJyArIGVycm9yLm5hbWUgKworICAgICAgICAgICAgICAgICAgICAgICcg
aW5zdGVhZCBvZiAnICsgdGhpcy5fZXhwZWN0ZWQgKyAnLicpOworICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgdGhpcy5fYXNzZXJ0KAorICAgICAgICAgICAgICAgICAgdHJ1ZSwK
KyAgICAgICAgICAgICAgICAgICcke2FjdHVhbH0gcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggJyAr
IHRoaXMuX2V4cGVjdGVkICsgJy4nLAorICAgICAgICAgICAgICAgICAgbnVsbCk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAg
KiBDaGVjayBpZiB8YWN0dWFsfCBpcyBhIGJvb2xlYW4gdHJ1ZS4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQoMyA8IDUsICczIDwgNScpLmJlVHJ1ZSgpOworICAgICAq
CisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAzIDwgNSBpcyB0cnVlLiIKKyAgICAg
Ki8KKyAgICBiZVRydWUoKSB7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAg
IHRoaXMuX2FjdHVhbCA9PT0gdHJ1ZSwgJyR7YWN0dWFsfSBpcyB0cnVlLicsCisgICAgICAgICAg
JyR7YWN0dWFsfSBpcyBub3QgdHJ1ZS4nKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVj
ayBpZiB8YWN0dWFsfCBpcyBhIGJvb2xlYW4gZmFsc2UuCisgICAgICoKKyAgICAgKiBAZXhhbXBs
ZQorICAgICAqICAgc2hvdWxkKDMgPiA1LCAnMyA+IDUnKS5iZUZhbHNlKCk7CisgICAgICoKKyAg
ICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDMgPiA1IGlzIGZhbHNlLiIKKyAgICAgKi8K
KyAgICBiZUZhbHNlKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0
aGlzLl9hY3R1YWwgPT09IGZhbHNlLCAnJHthY3R1YWx9IGlzIGZhbHNlLicsCisgICAgICAgICAg
JyR7YWN0dWFsfSBpcyBub3QgZmFsc2UuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hl
Y2sgaWYgfGFjdHVhbHwgaXMgc3RyaWN0bHkgZXF1YWwgdG8gfGV4cGVjdGVkfC4gKG5vIHR5cGUg
Y29lcmNpb24pCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDEpLmJl
RXF1YWxUbygxKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMSBp
cyBlcXVhbCB0byAxLiIKKyAgICAgKi8KKyAgICBiZUVxdWFsVG8oKSB7CisgICAgICB0aGlzLl9w
cm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAor
ICAgICAgICAgIHRoaXMuX2FjdHVhbCA9PT0gdGhpcy5fZXhwZWN0ZWQsICcke2FjdHVhbH0gaXMg
ZXF1YWwgdG8gJHtleHBlY3RlZH0uJywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBlcXVh
bCB0byAke2V4cGVjdGVkfS4nKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8
YWN0dWFsfCBpcyBub3QgZXF1YWwgdG8gfGV4cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFt
cGxlCisgICAgICogICBzaG91bGQoMSkubm90QmVFcXVhbFRvKDIpOworICAgICAqCisgICAgICog
QHJlc3VsdAorICAgICAqICAgIlBBU1MgICAxIGlzIG5vdCBlcXVhbCB0byAyLiIKKyAgICAgKi8K
KyAgICBub3RCZUVxdWFsVG8oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3Vt
ZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHRoaXMuX2FjdHVh
bCAhPT0gdGhpcy5fZXhwZWN0ZWQsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgZXF1YWwg
dG8gJHtleHBlY3RlZH0uJywKKyAgICAgICAgICAnJHthY3R1YWx9IHNob3VsZCBub3QgYmUgZXF1
YWwgdG8gJHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogY2hlY2sgaWYg
fGFjdHVhbHwgaXMgTmFOCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxk
KE5hTikuYmVOYU4oKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAg
TmFOIGlzIE5hTiIKKyAgICAgKgorICAgICAqLworICAgIGJlTmFOKCkgeworICAgICAgdGhpcy5f
cHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgK
KyAgICAgICAgICBpc05hTih0aGlzLl9hY3R1YWwpLAorICAgICAgICAgICcke2FjdHVhbH0gaXMg
TmFOLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgTmFOIGJ1dCBzaG91bGQgYmUuJyk7
CisgICAgfQorCisgICAgLyoqCisgICAgICogY2hlY2sgaWYgfGFjdHVhbHwgaXMgTk9UIE5hTgor
ICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCg0Mikubm90QmVOYU4oKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgNDIgaXMgbm90IE5hTiIK
KyAgICAgKgorICAgICAqLworICAgIG5vdEJlTmFOKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0Fy
Z3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAg
ICAhaXNOYU4odGhpcy5fYWN0dWFsKSwKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBOYU4u
JywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIE5hTiBidXQgc2hvdWxkIG5vdCBiZS4nKTsKKyAg
ICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBpcyBncmVhdGVyIHRoYW4g
fGV4cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoMiku
YmVHcmVhdGVyVGhhbk9yRXF1YWxUbygyKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAg
KiAgICJQQVNTICAgMiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMi4iCisgICAgICovCisg
ICAgYmVHcmVhdGVyVGhhbigpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1l
bnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFs
ID4gdGhpcy5fZXhwZWN0ZWQsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBncmVhdGVyIHRoYW4g
JHtleHBlY3RlZH0uJywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBncmVhdGVyIHRoYW4g
JHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVh
bHwgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAg
KiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDIpLmJlR3JlYXRlclRoYW4oMSk7CisgICAgICoK
KyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDIgaXMgZ3JlYXRlciB0aGFuIDEuIgor
ICAgICAqLworICAgIGJlR3JlYXRlclRoYW5PckVxdWFsVG8oKSB7CisgICAgICB0aGlzLl9wcm9j
ZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAg
ICAgICAgIHRoaXMuX2FjdHVhbCA+PSB0aGlzLl9leHBlY3RlZCwKKyAgICAgICAgICAnJHthY3R1
YWx9IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAke2V4cGVjdGVkfS4nLAorICAgICAgICAg
ICcke2FjdHVhbH0gaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAke2V4cGVjdGVkfS4n
KTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBpcyBsZXNzIHRo
YW4gfGV4cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQo
MSkuYmVMZXNzVGhhbigyKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNT
ICAgMSBpcyBsZXNzIHRoYW4gMi4iCisgICAgICovCisgICAgYmVMZXNzVGhhbigpIHsKKyAgICAg
IHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9h
c3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFsIDwgdGhpcy5fZXhwZWN0ZWQsICcke2FjdHVh
bH0gaXMgbGVzcyB0aGFuICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBu
b3QgbGVzcyB0aGFuICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byB8ZXhwZWN0ZWR8LgorICAg
ICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgxKS5iZUxlc3NUaGFuT3JFcXVh
bFRvKDEpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAxIGlzIGxl
c3MgdGhhbiBvciBlcXVhbCB0byAxLiIKKyAgICAgKi8KKyAgICBiZUxlc3NUaGFuT3JFcXVhbFRv
KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0
dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPD0gdGhpcy5fZXhwZWN0
ZWQsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHtleHBl
Y3RlZH0uJywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBsZXNzIHRoYW4gb3IgZXF1YWwg
dG8gJHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFj
dHVhbHwgYXJyYXkgaXMgZmlsbGVkIHdpdGggYSBjb25zdGFudCB8ZXhwZWN0ZWR8IHZhbHVlLgor
ICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZChbMSwgMSwgMV0pLmJlQ29u
c3RhbnRWYWx1ZU9mKDEpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1Mg
ICBbMSwxLDFdIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuIgorICAgICAqLworICAgIGJl
Q29uc3RhbnRWYWx1ZU9mKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVu
dHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAg
IGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWw7Cisg
ICAgICBsZXQgZXJyb3JzID0ge307CisKKyAgICAgIGxldCBhY3R1YWwgPSB0aGlzLl9hY3R1YWw7
CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlzLl9leHBlY3RlZDsKKyAgICAgIGZvciAobGV0IGlu
ZGV4ID0gMDsgaW5kZXggPCBhY3R1YWwubGVuZ3RoOyArK2luZGV4KSB7CisgICAgICAgIGlmIChh
Y3R1YWxbaW5kZXhdICE9PSBleHBlY3RlZCkKKyAgICAgICAgICBlcnJvcnNbaW5kZXhdID0gYWN0
dWFsW2luZGV4XTsKKyAgICAgIH0KKworICAgICAgbGV0IG51bWJlck9mRXJyb3JzID0gT2JqZWN0
LmtleXMoZXJyb3JzKS5sZW5ndGg7CisgICAgICBwYXNzZWQgPSBudW1iZXJPZkVycm9ycyA9PT0g
MDsKKworICAgICAgaWYgKHBhc3NlZCkgeworICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFs
fSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAke2V4cGVjdGVkfS4nOworICAgICAgfSBlbHNl
IHsKKyAgICAgICAgbGV0IGNvdW50ZXIgPSAwOworICAgICAgICBmYWlsRGV0YWlsID0KKyAgICAg
ICAgICAgICcke2FjdHVhbH06IEV4cGVjdGVkICR7ZXhwZWN0ZWR9IGZvciBhbGwgdmFsdWVzIGJ1
dCBmb3VuZCAnICsKKyAgICAgICAgICAgIG51bWJlck9mRXJyb3JzICsgJyB1bmV4cGVjdGVkIHZh
bHVlczogJzsKKyAgICAgICAgZmFpbERldGFpbCArPSAnXG5cdEluZGV4XHRBY3R1YWwnOworICAg
ICAgICBmb3IgKGxldCBlcnJvckluZGV4IGluIGVycm9ycykgeworICAgICAgICAgIGZhaWxEZXRh
aWwgKz0gJ1xuXHRbJyArIGVycm9ySW5kZXggKyAnXScgKworICAgICAgICAgICAgICAnXHQnICsg
ZXJyb3JzW2Vycm9ySW5kZXhdOworICAgICAgICAgIGlmICgrK2NvdW50ZXIgPj0gdGhpcy5fb3B0
aW9ucy5udW1iZXJPZkVycm9ycykgeworICAgICAgICAgICAgZmFpbERldGFpbCArPQorICAgICAg
ICAgICAgICAgICdcblx0Li4uYW5kICcgKyAobnVtYmVyT2ZFcnJvcnMgLSBjb3VudGVyKSArICcg
bW9yZSBlcnJvcnMuJzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIH0KKyAgICAgICAg
fQorICAgICAgfQorCisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KHBhc3NlZCwgcGFzc0RldGFp
bCwgZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVh
bHwgYXJyYXkgaXMgbm90IGZpbGxlZCB3aXRoIGEgY29uc3RhbnQgfGV4cGVjdGVkfCB2YWx1ZS4K
KyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoWzEsIDAsIDFdKS5ub3RC
ZUNvbnN0YW50VmFsdWVPZigxKTsKKyAgICAgKiAgIHNob3VsZChbMCwgMCwgMF0pLm5vdEJlQ29u
c3RhbnRWYWx1ZU9mKDApOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1Mg
ICBbMSwwLDFdIGlzIG5vdCBjb25zdGFudGx5IDEgKGNvbnRhaW5zIDEgZGlmZmVyZW50IHZhbHVl
KS4iCisgICAgICogICAiRkFJTCBYIFswLDAsMF0gc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFz
dCBvbmUgdmFsdWUgZGlmZmVyZW50CisgICAgICogICAgIGZyb20gMC4iCisgICAgICovCisgICAg
bm90QmVDb25zdGFudFZhbHVlT2YoKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFy
Z3VtZW50cyk7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKwor
ICAgICAgbGV0IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQgcGFzc0RldGFpbDsKKyAgICAgIGxl
dCBmYWlsRGV0YWlsOworICAgICAgbGV0IGRpZmZlcmVuY2VzID0ge307CisKKyAgICAgIGxldCBh
Y3R1YWwgPSB0aGlzLl9hY3R1YWw7CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlzLl9leHBlY3Rl
ZDsKKyAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBhY3R1YWwubGVuZ3RoOyArK2lu
ZGV4KSB7CisgICAgICAgIGlmIChhY3R1YWxbaW5kZXhdICE9PSBleHBlY3RlZCkKKyAgICAgICAg
ICBkaWZmZXJlbmNlc1tpbmRleF0gPSBhY3R1YWxbaW5kZXhdOworICAgICAgfQorCisgICAgICBs
ZXQgbnVtYmVyT2ZEaWZmZXJlbmNlcyA9IE9iamVjdC5rZXlzKGRpZmZlcmVuY2VzKS5sZW5ndGg7
CisgICAgICBwYXNzZWQgPSBudW1iZXJPZkRpZmZlcmVuY2VzID4gMDsKKworICAgICAgaWYgKHBh
c3NlZCkgeworICAgICAgICBsZXQgdmFsdWVTdHJpbmcgPSBudW1iZXJPZkRpZmZlcmVuY2VzID4g
MSA/ICd2YWx1ZXMnIDogJ3ZhbHVlJzsKKyAgICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVhbH0g
aXMgbm90IGNvbnN0YW50bHkgJHtleHBlY3RlZH0gKGNvbnRhaW5zICcgKworICAgICAgICAgICAg
bnVtYmVyT2ZEaWZmZXJlbmNlcyArICcgZGlmZmVyZW50ICcgKyB2YWx1ZVN0cmluZyArICcpLic7
CisgICAgICB9IGVsc2UgeworICAgICAgICBmYWlsRGV0YWlsID0gJyR7YWN0dWFsfSBzaG91bGQg
aGF2ZSBjb250YWluIGF0IGxlYXN0IG9uZSB2YWx1ZSAnICsKKyAgICAgICAgICAgICdkaWZmZXJl
bnQgZnJvbSAke2V4cGVjdGVkfS4nOworICAgICAgfQorCisgICAgICByZXR1cm4gdGhpcy5fYXNz
ZXJ0KHBhc3NlZCwgcGFzc0RldGFpbCwgZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoqCisg
ICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgYXJyYXkgaXMgaWRlbnRpY2FsIHRvIHxleHBlY3RlZHwg
YXJyYXkgZWxlbWVudC13aXNlLgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNo
b3VsZChbMSwgMiwgM10pLmJlRXF1YWxUb0FycmF5KFsxLCAyLCAzXSk7CisgICAgICoKKyAgICAg
KiBAcmVzdWx0CisgICAgICogICAiWzEsMiwzXSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFsx
LDIsM10uIgorICAgICAqLworICAgIGJlRXF1YWxUb0FycmF5KCkgeworICAgICAgdGhpcy5fcHJv
Y2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWls
dXJlID0gZmFsc2U7CisKKyAgICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NE
ZXRhaWwsIGZhaWxEZXRhaWw7CisgICAgICBsZXQgZXJyb3JJbmRpY2VzID0gW107CisKKyAgICAg
IGlmICh0aGlzLl9hY3R1YWwubGVuZ3RoICE9PSB0aGlzLl9leHBlY3RlZC5sZW5ndGgpIHsKKyAg
ICAgICAgcGFzc2VkID0gZmFsc2U7CisgICAgICAgIGZhaWxEZXRhaWwgPSAnVGhlIGFycmF5IGxl
bmd0aCBkb2VzIG5vdCBtYXRjaC4nOworICAgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KHBhc3Nl
ZCwgcGFzc0RldGFpbCwgZmFpbERldGFpbCk7CisgICAgICB9CisKKyAgICAgIGxldCBhY3R1YWwg
PSB0aGlzLl9hY3R1YWw7CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlzLl9leHBlY3RlZDsKKyAg
ICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBhY3R1YWwubGVuZ3RoOyArK2luZGV4KSB7
CisgICAgICAgIGlmIChhY3R1YWxbaW5kZXhdICE9PSBleHBlY3RlZFtpbmRleF0pCisgICAgICAg
ICAgZXJyb3JJbmRpY2VzLnB1c2goaW5kZXgpOworICAgICAgfQorCisgICAgICBwYXNzZWQgPSBl
cnJvckluZGljZXMubGVuZ3RoID09PSAwOworCisgICAgICBpZiAocGFzc2VkKSB7CisgICAgICAg
IHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgJHtleHBl
Y3RlZH0uJzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGxldCBjb3VudGVyID0gMDsKKyAgICAg
ICAgZmFpbERldGFpbCA9CisgICAgICAgICAgICAnJHthY3R1YWx9IGV4cGVjdGVkIHRvIGJlIGVx
dWFsIHRvIHRoZSBhcnJheSAke2V4cGVjdGVkfSAnICsKKyAgICAgICAgICAgICdidXQgZGlmZmVy
cyBpbiAnICsgZXJyb3JJbmRpY2VzLmxlbmd0aCArICcgcGxhY2VzOicgKworICAgICAgICAgICAg
J1xuXHRJbmRleFx0QWN0dWFsXHRcdFx0RXhwZWN0ZWQnOworICAgICAgICBmb3IgKGxldCBpbmRl
eCBvZiBlcnJvckluZGljZXMpIHsKKyAgICAgICAgICBmYWlsRGV0YWlsICs9ICdcblx0WycgKyBp
bmRleCArICddJyArCisgICAgICAgICAgICAgICdcdCcgKyB0aGlzLl9hY3R1YWxbaW5kZXhdLnRv
RXhwb25lbnRpYWwoMTYpICsgJ1x0JyArCisgICAgICAgICAgICAgIHRoaXMuX2V4cGVjdGVkW2lu
ZGV4XS50b0V4cG9uZW50aWFsKDE2KTsKKyAgICAgICAgICBpZiAoKytjb3VudGVyID49IHRoaXMu
X29wdGlvbnMubnVtYmVyT2ZFcnJvcnMpIHsKKyAgICAgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1xu
XHQuLi5hbmQgJyArIChlcnJvckluZGljZXMubGVuZ3RoIC0gY291bnRlcikgKworICAgICAgICAg
ICAgICAgICcgbW9yZSBlcnJvcnMuJzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIH0K
KyAgICAgICAgfQorICAgICAgfQorCisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KHBhc3NlZCwg
cGFzc0RldGFpbCwgZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sg
aWYgfGFjdHVhbHwgYXJyYXkgY29udGFpbnMgb25seSB0aGUgdmFsdWVzIGluIHxleHBlY3RlZHwg
aW4gdGhlCisgICAgICogb3JkZXIgb2YgdmFsdWVzIGluIHxleHBlY3RlZHwuCisgICAgICoKKyAg
ICAgKiBAZXhhbXBsZQorICAgICAqICAgU2hvdWxkKFsxLCAxLCAzLCAzLCAyXSwgJ015IHJhbmRv
bSBhcnJheScpLmNvbnRhaW5WYWx1ZXMoWzEsIDMsIDJdKTsKKyAgICAgKgorICAgICAqIEByZXN1
bHQKKyAgICAgKiAgICJQQVNTICAgWzEsMSwzLDMsMl0gY29udGFpbnMgYWxsIHRoZSBleHBlY3Rl
ZCB2YWx1ZXMgaW4gdGhlIGNvcnJlY3QKKyAgICAgKiAgICAgICAgICAgb3JkZXI6IFsxLDMsMl0u
CisgICAgICovCisgICAgY29udGFpblZhbHVlcygpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1
bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZh
bHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIGxldCBpbmRleGVkQWN0dWFs
ID0gW107CisgICAgICBsZXQgZmlyc3RFcnJvckluZGV4ID0gbnVsbDsKKworICAgICAgLy8gQ29s
bGVjdCB0aGUgdW5pcXVlIHZhbHVlIHNlcXVlbmNlIGZyb20gdGhlIGFjdHVhbC4KKyAgICAgIGZv
ciAobGV0IGkgPSAwLCBwcmV2ID0gbnVsbDsgaSA8IHRoaXMuX2FjdHVhbC5sZW5ndGg7IGkrKykg
eworICAgICAgICBpZiAodGhpcy5fYWN0dWFsW2ldICE9PSBwcmV2KSB7CisgICAgICAgICAgaW5k
ZXhlZEFjdHVhbC5wdXNoKHtpbmRleDogaSwgdmFsdWU6IHRoaXMuX2FjdHVhbFtpXX0pOworICAg
ICAgICAgIHByZXYgPSB0aGlzLl9hY3R1YWxbaV07CisgICAgICAgIH0KKyAgICAgIH0KKworICAg
ICAgLy8gQ29tcGFyZSBhZ2FpbnN0IHRoZSBleHBlY3RlZCBzZXF1ZW5jZS4KKyAgICAgIGxldCBm
YWlsTWVzc2FnZSA9CisgICAgICAgICAgJyR7YWN0dWFsfSBleHBlY3RlZCB0byBoYXZlIHRoZSB2
YWx1ZSBzZXF1ZW5jZSBvZiAke2V4cGVjdGVkfSBidXQgJyArCisgICAgICAgICAgJ2dvdCAnOwor
ICAgICAgaWYgKHRoaXMuX2V4cGVjdGVkLmxlbmd0aCA9PT0gaW5kZXhlZEFjdHVhbC5sZW5ndGgp
IHsKKyAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLl9leHBlY3RlZC5sZW5ndGg7IGor
KykgeworICAgICAgICAgIGlmICh0aGlzLl9leHBlY3RlZFtqXSAhPT0gaW5kZXhlZEFjdHVhbFtq
XS52YWx1ZSkgeworICAgICAgICAgICAgZmlyc3RFcnJvckluZGV4ID0gaW5kZXhlZEFjdHVhbFtq
XS5pbmRleDsKKyAgICAgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICAgICAgZmFpbE1l
c3NhZ2UgKz0gdGhpcy5fYWN0dWFsW2ZpcnN0RXJyb3JJbmRleF0gKyAnIGF0IGluZGV4ICcgKwor
ICAgICAgICAgICAgICAgIGZpcnN0RXJyb3JJbmRleCArICcuJzsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfSBlbHNlIHsKKyAgICAgICAgcGFzc2Vk
ID0gZmFsc2U7CisgICAgICAgIGxldCBpbmRleGVkVmFsdWVzID0gaW5kZXhlZEFjdHVhbC5tYXAo
eCA9PiB4LnZhbHVlKTsKKyAgICAgICAgZmFpbE1lc3NhZ2UgKz0gYCR7aW5kZXhlZEFjdHVhbC5s
ZW5ndGh9IHZhbHVlcywgWyR7CisgICAgICAgICAgICBpbmRleGVkVmFsdWVzfV0sIGluc3RlYWQg
b2YgJHt0aGlzLl9leHBlY3RlZC5sZW5ndGh9LmA7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0
aGlzLl9hc3NlcnQoCisgICAgICAgICAgcGFzc2VkLAorICAgICAgICAgICcke2FjdHVhbH0gY29u
dGFpbnMgYWxsIHRoZSBleHBlY3RlZCB2YWx1ZXMgaW4gdGhlIGNvcnJlY3Qgb3JkZXI6ICcgKwor
ICAgICAgICAgICAgICAnJHtleHBlY3RlZH0uJywKKyAgICAgICAgICBmYWlsTWVzc2FnZSk7Cisg
ICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgYXJyYXkgZG9lcyBub3Qg
aGF2ZSBhbnkgZ2xpdGNoZXMuIE5vdGUgdGhhdCB8dGhyZXNob2xkfAorICAgICAqIGlzIG5vdCBv
cHRpb25hbCBhbmQgaXMgdG8gZGVmaW5lIHRoZSBkZXNpcmVkIHRocmVzaG9sZCB2YWx1ZS4KKyAg
ICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoWzAuNSwgMC41LCAwLjU1LCAw
LjUsIDAuNDUsIDAuNV0pLm5vdEdsaXRjaCgwLjA2KTsKKyAgICAgKgorICAgICAqIEByZXN1bHQK
KyAgICAgKiAgICJQQVNTICAgWzAuNSwwLjUsMC41NSwwLjUsMC40NSwwLjVdIGhhcyBubyBnbGl0
Y2ggYWJvdmUgdGhlIHRocmVzaG9sZAorICAgICAqICAgICAgICAgICBvZiAwLjA2LiIKKyAgICAg
KgorICAgICAqLworICAgIG5vdEdsaXRjaCgpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVu
dHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNl
OworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBmYWls
RGV0YWlsOworCisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4
cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4
IDwgYWN0dWFsLmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBsZXQgZGlmZiA9IE1hdGguYWJz
KGFjdHVhbFtpbmRleCAtIDFdIC0gYWN0dWFsW2luZGV4XSk7CisgICAgICAgIGlmIChkaWZmID49
IGV4cGVjdGVkKSB7CisgICAgICAgICAgcGFzc2VkID0gZmFsc2U7CisgICAgICAgICAgZmFpbERl
dGFpbCA9ICcke2FjdHVhbH0gaGFzIGEgZ2xpdGNoIGF0IGluZGV4ICcgKyBpbmRleCArCisgICAg
ICAgICAgICAgICcgb2Ygc2l6ZSAnICsgZGlmZiArICcuJzsKKyAgICAgICAgfQorICAgICAgfQor
CisgICAgICBwYXNzRGV0YWlsID0KKyAgICAgICAgICAnJHthY3R1YWx9IGhhcyBubyBnbGl0Y2gg
YWJvdmUgdGhlIHRocmVzaG9sZCBvZiAke2V4cGVjdGVkfS4nOworCisgICAgICByZXR1cm4gdGhp
cy5fYXNzZXJ0KHBhc3NlZCwgcGFzc0RldGFpbCwgZmFpbERldGFpbCk7CisgICAgfQorCisgICAg
LyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgY2xvc2UgdG8gfGV4cGVjdGVkfCB1c2lu
ZyB0aGUgZ2l2ZW4gcmVsYXRpdmUgZXJyb3IKKyAgICAgKiB8dGhyZXNob2xkfC4KKyAgICAgKgor
ICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoMi4zKS5iZUNsb3NlVG8oMiwgeyB0aHJl
c2hvbGQ6IDAuMyB9KTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAg
IDIuMyBpcyAyIHdpdGhpbiBhbiBlcnJvciBvZiAwLjMuIgorICAgICAqIEBwYXJhbSB7T2JqZWN0
fSBvcHRpb25zICAgICAgICAgICAgICBPcHRpb25zIGZvciBhc3NlcnRpb24uCisgICAgICogQHBh
cmFtIHtOdW1iZXJ9IG9wdGlvbnMudGhyZXNob2xkICAgIFRocmVzaG9sZCB2YWx1ZSBmb3IgdGhl
IGNvbXBhcmlzb24uCisgICAgICovCisgICAgYmVDbG9zZVRvKCkgeworICAgICAgdGhpcy5fcHJv
Y2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworCisgICAgICAvLyBUaGUgdGhyZXNob2xkIGlzIHJl
bGF0aXZlIGV4Y2VwdCB3aGVuIHxleHBlY3RlZHwgaXMgemVybywgaW4gd2hpY2ggY2FzZQorICAg
ICAgLy8gaXQgaXMgYWJzb2x1dGUuCisgICAgICBsZXQgYWJzRXhwZWN0ZWQgPSB0aGlzLl9leHBl
Y3RlZCA/IE1hdGguYWJzKHRoaXMuX2V4cGVjdGVkKSA6IDE7CisgICAgICBsZXQgZXJyb3IgPSBN
YXRoLmFicyh0aGlzLl9hY3R1YWwgLSB0aGlzLl9leHBlY3RlZCkgLyBhYnNFeHBlY3RlZDsKKwor
ICAgICAgLy8gZGVidWdnZXI7CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAg
ICAgZXJyb3IgPD0gdGhpcy5fb3B0aW9ucy50aHJlc2hvbGQsCisgICAgICAgICAgJyR7YWN0dWFs
fSBpcyAke2V4cGVjdGVkfSB3aXRoaW4gYW4gZXJyb3Igb2YgJHt0aHJlc2hvbGR9LicsCisgICAg
ICAgICAgJyR7YWN0dWFsfSBpcyBub3QgY2xvc2UgdG8gJHtleHBlY3RlZH0gd2l0aGluIGEgcmVs
YXRpdmUgZXJyb3Igb2YgJyArCisgICAgICAgICAgICAgICcke3RocmVzaG9sZH0gKFJlbEVycj0n
ICsgZXJyb3IgKyAnKS4nKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8dGFy
Z2V0fCBhcnJheSBpcyBjbG9zZSB0byB8ZXhwZWN0ZWR8IGFycmF5IGVsZW1lbnQtd2lzZSB3aXRo
aW4KKyAgICAgKiBhIGNlcnRhaW4gZXJyb3IgYm91bmQgZ2l2ZW4gYnkgdGhlIHxvcHRpb25zfC4K
KyAgICAgKgorICAgICAqIFRoZSBlcnJvciBjcml0ZXJpb24gaXM6CisgICAgICogICBhYnMoYWN0
dWFsW2tdIC0gZXhwZWN0ZWRba10pIDwgbWF4KGFic0VyciwgcmVsRXJyICogYWJzKGV4cGVjdGVk
KSkKKyAgICAgKgorICAgICAqIElmIG5vdGhpbmcgaXMgZ2l2ZW4gZm9yIHxvcHRpb25zfCwgdGhl
biBhYnNFcnIgPSByZWxFcnIgPSAwLiBJZgorICAgICAqIGFic0VyciA9IDAsIHRoZW4gdGhlIGVy
cm9yIGNyaXRlcmlvbiBpcyBhIHJlbGF0aXZlIGVycm9yLiBBIG5vbi16ZXJvCisgICAgICogYWJz
RXJyIHZhbHVlIHByb2R1Y2VzIGEgbWl4IGludGVuZGVkIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVy
ZSB0aGUKKyAgICAgKiBleHBlY3RlZCB2YWx1ZSBpcyAwLCBhbGxvd2luZyB0aGUgdGFyZ2V0IHZh
bHVlIHRvIGRpZmZlciBieSBhYnNFcnIgZnJvbQorICAgICAqIHRoZSBleHBlY3RlZC4KKyAgICAg
KgorICAgICAqIEBwYXJhbSB7TnVtYmVyfSBvcHRpb25zLmFic29sdXRlVGhyZXNob2xkICAgIEFi
c29sdXRlIHRocmVzaG9sZC4KKyAgICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5yZWxhdGl2
ZVRocmVzaG9sZCAgICBSZWxhdGl2ZSB0aHJlc2hvbGQuCisgICAgICovCisgICAgYmVDbG9zZVRv
QXJyYXkoKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAg
ICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBhc3Nl
ZCA9IHRydWU7CisgICAgICBsZXQgcGFzc0RldGFpbCwgZmFpbERldGFpbDsKKworICAgICAgLy8g
UGFyc2luZyBvcHRpb25zLgorICAgICAgbGV0IGFic0Vycm9yVGhyZXNob2xkID0gKHRoaXMuX29w
dGlvbnMuYWJzb2x1dGVUaHJlc2hvbGQgfHwgMCk7CisgICAgICBsZXQgcmVsRXJyb3JUaHJlc2hv
bGQgPSAodGhpcy5fb3B0aW9ucy5yZWxhdGl2ZVRocmVzaG9sZCB8fCAwKTsKKworICAgICAgLy8g
QSBjb2xsZWN0aW9uIG9mIGFsbCBvZiB0aGUgdmFsdWVzIHRoYXQgc2F0aXNmeSB0aGUgZXJyb3Ig
Y3JpdGVyaW9uLgorICAgICAgLy8gVGhpcyBob2xkcyB0aGUgYWJzb2x1dGUgZGlmZmVyZW5jZSBi
ZXR3ZWVuIHRoZSB0YXJnZXQgZWxlbWVudCBhbmQgdGhlCisgICAgICAvLyBleHBlY3RlZCBlbGVt
ZW50LgorICAgICAgbGV0IGVycm9ycyA9IHt9OworCisgICAgICAvLyBLZWVwIHRyYWNrIG9mIHRo
ZSBtYXggYWJzb2x1dGUgZXJyb3IgZm91bmQuCisgICAgICBsZXQgbWF4QWJzRXJyb3IgPSAtSW5m
aW5pdHksIG1heEFic0Vycm9ySW5kZXggPSAtMTsKKworICAgICAgLy8gS2VlcCB0cmFjayBvZiB0
aGUgbWF4IHJlbGF0aXZlIGVycm9yIGZvdW5kLCBpZ25vcmluZyBjYXNlcyB3aGVyZSB0aGUKKyAg
ICAgIC8vIHJlbGF0aXZlIGVycm9yIGlzIEluZmluaXR5IGJlY2F1c2UgdGhlIGV4cGVjdGVkIHZh
bHVlIGlzIDAuCisgICAgICBsZXQgbWF4UmVsRXJyb3IgPSAtSW5maW5pdHksIG1heFJlbEVycm9y
SW5kZXggPSAtMTsKKworICAgICAgbGV0IGFjdHVhbCA9IHRoaXMuX2FjdHVhbDsKKyAgICAgIGxl
dCBleHBlY3RlZCA9IHRoaXMuX2V4cGVjdGVkOworCisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7
IGluZGV4IDwgZXhwZWN0ZWQubGVuZ3RoOyArK2luZGV4KSB7CisgICAgICAgIGxldCBkaWZmID0g
TWF0aC5hYnMoYWN0dWFsW2luZGV4XSAtIGV4cGVjdGVkW2luZGV4XSk7CisgICAgICAgIGxldCBh
YnNFeHBlY3RlZCA9IE1hdGguYWJzKGV4cGVjdGVkW2luZGV4XSk7CisgICAgICAgIGxldCByZWxF
cnJvciA9IGRpZmYgLyBhYnNFeHBlY3RlZDsKKworICAgICAgICBpZiAoZGlmZiA+CisgICAgICAg
ICAgICBNYXRoLm1heChhYnNFcnJvclRocmVzaG9sZCwgcmVsRXJyb3JUaHJlc2hvbGQgKiBhYnNF
eHBlY3RlZCkpIHsKKyAgICAgICAgICBpZiAoZGlmZiA+IG1heEFic0Vycm9yKSB7CisgICAgICAg
ICAgICBtYXhBYnNFcnJvckluZGV4ID0gaW5kZXg7CisgICAgICAgICAgICBtYXhBYnNFcnJvciA9
IGRpZmY7CisgICAgICAgICAgfQorCisgICAgICAgICAgaWYgKCFpc05hTihyZWxFcnJvcikgJiYg
cmVsRXJyb3IgPiBtYXhSZWxFcnJvcikgeworICAgICAgICAgICAgbWF4UmVsRXJyb3JJbmRleCA9
IGluZGV4OworICAgICAgICAgICAgbWF4UmVsRXJyb3IgPSByZWxFcnJvcjsKKyAgICAgICAgICB9
CisKKyAgICAgICAgICBlcnJvcnNbaW5kZXhdID0gZGlmZjsKKyAgICAgICAgfQorICAgICAgfQor
CisgICAgICBsZXQgbnVtYmVyT2ZFcnJvcnMgPSBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aDsK
KyAgICAgIGxldCBtYXhBbGxvd2VkRXJyb3JEZXRhaWwgPSBKU09OLnN0cmluZ2lmeSh7CisgICAg
ICAgIGFic29sdXRlVGhyZXNob2xkOiBhYnNFcnJvclRocmVzaG9sZCwKKyAgICAgICAgcmVsYXRp
dmVUaHJlc2hvbGQ6IHJlbEVycm9yVGhyZXNob2xkCisgICAgICB9KTsKKworICAgICAgaWYgKG51
bWJlck9mRXJyb3JzID09PSAwKSB7CisgICAgICAgIC8vIFRoZSBhc3NlcnRpb24gd2FzIHN1Y2Nl
c3NmdWwuCisgICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IGVxdWFscyAke2V4cGVjdGVk
fSB3aXRoIGFuIGVsZW1lbnQtd2lzZSAnICsKKyAgICAgICAgICAgICd0b2xlcmFuY2Ugb2YgJyAr
IG1heEFsbG93ZWRFcnJvckRldGFpbCArICcuJzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIC8v
IEZhaWxlZC4gUHJlcGFyZSB0aGUgZGV0YWlsZWQgZmFpbHVyZSBsb2cuCisgICAgICAgIHBhc3Nl
ZCA9IGZhbHNlOworICAgICAgICBmYWlsRGV0YWlsID0gJyR7YWN0dWFsfSBkb2VzIG5vdCBlcXVh
bCAke2V4cGVjdGVkfSB3aXRoIGFuICcgKworICAgICAgICAgICAgJ2VsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgJyArIG1heEFsbG93ZWRFcnJvckRldGFpbCArICcuXG4nOworCisgICAgICAgIC8v
IFByaW50IG91dCBhY3R1YWwsIGV4cGVjdGVkLCBhYnNvbHV0ZSBlcnJvciwgYW5kIHJlbGF0aXZl
IGVycm9yLgorICAgICAgICBsZXQgY291bnRlciA9IDA7CisgICAgICAgIGZhaWxEZXRhaWwgKz0g
J1x0SW5kZXhcdEFjdHVhbFx0XHRcdEV4cGVjdGVkXHRcdEFic0Vycm9yJyArCisgICAgICAgICAg
ICAnXHRcdFJlbEVycm9yXHRcdFRlc3QgdGhyZXNob2xkJzsKKyAgICAgICAgbGV0IHByaW50ZWRJ
bmRpY2VzID0gW107CisgICAgICAgIGZvciAobGV0IGluZGV4IGluIGVycm9ycykgeworICAgICAg
ICAgIGZhaWxEZXRhaWwgKz0KKyAgICAgICAgICAgICAgJ1xuJyArCisgICAgICAgICAgICAgIF9m
b3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAgICAgICAgICBpbmRleCwgYWN0dWFsW2luZGV4
XSwgZXhwZWN0ZWRbaW5kZXhdLCBlcnJvcnNbaW5kZXhdLAorICAgICAgICAgICAgICAgICAgX2Ns
b3NlVG9UaHJlc2hvbGQoCisgICAgICAgICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJlc2hvbGQs
IHJlbEVycm9yVGhyZXNob2xkLCBleHBlY3RlZFtpbmRleF0pKTsKKworICAgICAgICAgIHByaW50
ZWRJbmRpY2VzLnB1c2goaW5kZXgpOworICAgICAgICAgIGlmICgrK2NvdW50ZXIgPiB0aGlzLl9v
cHRpb25zLm51bWJlck9mRXJyb3JzKSB7CisgICAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAg
ICAgICAgICAgICAgJ1xuXHQuLi5hbmQgJyArIChudW1iZXJPZkVycm9ycyAtIGNvdW50ZXIpICsg
JyBtb3JlIGVycm9ycy4nOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgfQorICAgICAg
ICB9CisKKyAgICAgICAgLy8gRmluYWxpemUgdGhlIGVycm9yIGxvZzogcHJpbnQgb3V0IHRoZSBs
b2NhdGlvbiBvZiBib3RoIHRoZSBtYXhBYnMKKyAgICAgICAgLy8gZXJyb3IgYW5kIHRoZSBtYXhS
ZWwgZXJyb3Igc28gd2UgY2FuIGFkanVzdCB0aHJlc2hvbGRzIGFwcHJvcHJpYXRlbHkKKyAgICAg
ICAgLy8gaW4gdGhlIHRlc3QuCisgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1xuJyArCisgICAgICAg
ICAgICAnXHRNYXggQWJzRXJyb3Igb2YgJyArIG1heEFic0Vycm9yLnRvRXhwb25lbnRpYWwoMTYp
ICsKKyAgICAgICAgICAgICcgYXQgaW5kZXggb2YgJyArIG1heEFic0Vycm9ySW5kZXggKyAnLlxu
JzsKKyAgICAgICAgaWYgKHByaW50ZWRJbmRpY2VzLmZpbmQoZWxlbWVudCA9PiB7CisgICAgICAg
ICAgICAgIHJldHVybiBlbGVtZW50ID09IG1heEFic0Vycm9ySW5kZXg7CisgICAgICAgICAgICB9
KSA9PT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAgLy8gUHJpbnQgYW4gZW50cnkgZm9yIHRoaXMg
aW5kZXggaWYgd2UgaGF2ZW4ndCBhbHJlYWR5LgorICAgICAgICAgIGZhaWxEZXRhaWwgKz0KKyAg
ICAgICAgICAgICAgX2Zvcm1hdEZhaWx1cmVFbnRyeSgKKyAgICAgICAgICAgICAgICAgIG1heEFi
c0Vycm9ySW5kZXgsIGFjdHVhbFttYXhBYnNFcnJvckluZGV4XSwKKyAgICAgICAgICAgICAgICAg
IGV4cGVjdGVkW21heEFic0Vycm9ySW5kZXhdLCBlcnJvcnNbbWF4QWJzRXJyb3JJbmRleF0sCisg
ICAgICAgICAgICAgICAgICBfY2xvc2VUb1RocmVzaG9sZCgKKyAgICAgICAgICAgICAgICAgICAg
ICBhYnNFcnJvclRocmVzaG9sZCwgcmVsRXJyb3JUaHJlc2hvbGQsCisgICAgICAgICAgICAgICAg
ICAgICAgZXhwZWN0ZWRbbWF4QWJzRXJyb3JJbmRleF0pKSArCisgICAgICAgICAgICAgICdcbic7
CisgICAgICAgIH0KKyAgICAgICAgZmFpbERldGFpbCArPSAnXHRNYXggUmVsRXJyb3Igb2YgJyAr
IG1heFJlbEVycm9yLnRvRXhwb25lbnRpYWwoMTYpICsKKyAgICAgICAgICAgICcgYXQgaW5kZXgg
b2YgJyArIG1heFJlbEVycm9ySW5kZXggKyAnLlxuJzsKKyAgICAgICAgaWYgKHByaW50ZWRJbmRp
Y2VzLmZpbmQoZWxlbWVudCA9PiB7CisgICAgICAgICAgICAgIHJldHVybiBlbGVtZW50ID09IG1h
eFJlbEVycm9ySW5kZXg7CisgICAgICAgICAgICB9KSA9PT0gdW5kZWZpbmVkKSB7CisgICAgICAg
ICAgLy8gUHJpbnQgYW4gZW50cnkgZm9yIHRoaXMgaW5kZXggaWYgd2UgaGF2ZW4ndCBhbHJlYWR5
LgorICAgICAgICAgIGZhaWxEZXRhaWwgKz0KKyAgICAgICAgICAgICAgX2Zvcm1hdEZhaWx1cmVF
bnRyeSgKKyAgICAgICAgICAgICAgICAgIG1heFJlbEVycm9ySW5kZXgsIGFjdHVhbFttYXhSZWxF
cnJvckluZGV4XSwKKyAgICAgICAgICAgICAgICAgIGV4cGVjdGVkW21heFJlbEVycm9ySW5kZXhd
LCBlcnJvcnNbbWF4UmVsRXJyb3JJbmRleF0sCisgICAgICAgICAgICAgICAgICBfY2xvc2VUb1Ro
cmVzaG9sZCgKKyAgICAgICAgICAgICAgICAgICAgICBhYnNFcnJvclRocmVzaG9sZCwgcmVsRXJy
b3JUaHJlc2hvbGQsCisgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRbbWF4UmVsRXJyb3JJ
bmRleF0pKSArCisgICAgICAgICAgICAgICdcbic7CisgICAgICAgIH0KKyAgICAgIH0KKworICAg
ICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOwor
ICAgIH0KKworICAgIC8qKgorICAgICAqIEEgdGVtcG9yYXJ5IGVzY2FwZSBoYXQgZm9yIHByaW50
aW5nIGFuIGluLXRhc2sgbWVzc2FnZS4gVGhlIGRlc2NyaXB0aW9uCisgICAgICogZm9yIHRoZSB8
YWN0dWFsfCBpcyByZXF1aXJlZCB0byBnZXQgdGhlIG1lc3NhZ2UgcHJpbnRlZCBwcm9wZXJseS4K
KyAgICAgKgorICAgICAqIFRPRE8oaG9uZ2NoYW4pOiByZW1vdmUgdGhpcyBtZXRob2Qgd2hlbiB0
aGUgdHJhbnNpdGlvbiBmcm9tIHRoZSBvbGQgQXVkaXQKKyAgICAgKiB0byB0aGUgbmV3IEF1ZGl0
IGlzIGNvbXBsZXRlZC4KKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKHRydWUsICdU
aGUgbWVzc2FnZSBpcycpLm1lc3NhZ2UoJ3RydXRoZnVsIScsICdmYWxzZSEnKTsKKyAgICAgKgor
ICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgVGhlIG1lc3NhZ2UgaXMgdHJ1dGhmdWwh
IgorICAgICAqLworICAgIG1lc3NhZ2UocGFzc0RldGFpbCwgZmFpbERldGFpbCkgeworICAgICAg
cmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwsICcke2FjdHVhbH0g
JyArIHBhc3NEZXRhaWwsICcke2FjdHVhbH0gJyArIGZhaWxEZXRhaWwpOworICAgIH0KKworICAg
IC8qKgorICAgICAqIENoZWNrIGlmIHxleHBlY3RlZHwgcHJvcGVydHkgaXMgdHJ1bHkgb3duZWQg
YnkgfGFjdHVhbHwgb2JqZWN0LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNo
b3VsZChCYXNlQXVkaW9Db250ZXh0LnByb3RvdHlwZSwKKyAgICAgKiAgICAgICAgICAnQmFzZUF1
ZGlvQ29udGV4dC5wcm90b3R5cGUnKS5oYXZlT3duUHJvcGVydHkoJ2NyZWF0ZUdhaW4nKTsKKyAg
ICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQmFzZUF1ZGlvQ29udGV4dC5w
cm90b3R5cGUgaGFzIGFuIG93biBwcm9wZXJ0eSBvZgorICAgICAqICAgICAgICdjcmVhdGVHYWlu
Jy4iCisgICAgICovCisgICAgaGF2ZU93blByb3BlcnR5KCkgeworICAgICAgdGhpcy5fcHJvY2Vz
c0FyZ3VtZW50cyhhcmd1bWVudHMpOworCisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAg
ICAgICAgIHRoaXMuX2FjdHVhbC5oYXNPd25Qcm9wZXJ0eSh0aGlzLl9leHBlY3RlZCksCisgICAg
ICAgICAgJyR7YWN0dWFsfSBoYXMgYW4gb3duIHByb3BlcnR5IG9mICIke2V4cGVjdGVkfSIuJywK
KyAgICAgICAgICAnJHthY3R1YWx9IGRvZXMgbm90IG93biB0aGUgcHJvcGVydHkgb2YgIiR7ZXhw
ZWN0ZWR9Ii4nKTsKKyAgICB9CisKKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxleHBlY3Rl
ZHwgcHJvcGVydHkgaXMgbm90IG93bmVkIGJ5IHxhY3R1YWx8IG9iamVjdC4KKyAgICAgKgorICAg
ICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoQmFzZUF1ZGlvQ29udGV4dC5wcm90b3R5cGUs
CisgICAgICogICAgICAgICAgJ0Jhc2VBdWRpb0NvbnRleHQucHJvdG90eXBlJykKKyAgICAgKiAg
ICAgICAubm90SGF2ZU93blByb3BlcnR5KCdzdGFydFJlbmRlcmluZycpOworICAgICAqCisgICAg
ICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICBCYXNlQXVkaW9Db250ZXh0LnByb3RvdHlwZSBk
b2VzIG5vdCBoYXZlIGFuIG93biBwcm9wZXJ0eSBvZgorICAgICAqICAgICAgICdzdGFydFJlbmRl
cmluZycuIgorICAgICAqLworICAgIG5vdEhhdmVPd25Qcm9wZXJ0eSgpIHsKKyAgICAgIHRoaXMu
X3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2Vy
dCgKKyAgICAgICAgICAhdGhpcy5fYWN0dWFsLmhhc093blByb3BlcnR5KHRoaXMuX2V4cGVjdGVk
KSwKKyAgICAgICAgICAnJHthY3R1YWx9IGRvZXMgbm90IGhhdmUgYW4gb3duIHByb3BlcnR5IG9m
ICIke2V4cGVjdGVkfSIuJywKKyAgICAgICAgICAnJHthY3R1YWx9IGhhcyBhbiBvd24gdGhlIHBy
b3BlcnR5IG9mICIke2V4cGVjdGVkfSIuJykKKyAgICB9CisKKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIGFuIG9iamVjdCBpcyBpbmhlcml0ZWQgZnJvbSBhIGNsYXNzLiBUaGlzIGxvb2tzIHVw
IHRoZSBlbnRpcmUKKyAgICAgKiBwcm90b3R5cGUgY2hhaW4gb2YgYSBnaXZlbiBvYmplY3QgYW5k
IHRyaWVzIHRvIGZpbmQgYSBtYXRjaC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICog
ICBzaG91bGQoc291cmNlTm9kZSwgJ0EgYnVmZmVyIHNvdXJjZSBub2RlJykKKyAgICAgKiAgICAg
ICAuaW5oZXJpdEZyb20oJ0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZScpOworICAgICAqCisgICAg
ICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICBBIGJ1ZmZlciBzb3VyY2Ugbm9kZSBpbmhlcml0
cyBmcm9tICdBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUnLiIKKyAgICAgKi8KKyAgICBpbmhlcml0
RnJvbSgpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAg
ICAgbGV0IHByb3RvdHlwZXMgPSBbXTsKKyAgICAgIGxldCBjdXJyZW50UHJvdG90eXBlID0gT2Jq
ZWN0LmdldFByb3RvdHlwZU9mKHRoaXMuX2FjdHVhbCk7CisgICAgICB3aGlsZSAoY3VycmVudFBy
b3RvdHlwZSkgeworICAgICAgICBwcm90b3R5cGVzLnB1c2goY3VycmVudFByb3RvdHlwZS5jb25z
dHJ1Y3Rvci5uYW1lKTsKKyAgICAgICAgY3VycmVudFByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90
b3R5cGVPZihjdXJyZW50UHJvdG90eXBlKTsKKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydCgKKyAgICAgICAgICBwcm90b3R5cGVzLmluY2x1ZGVzKHRoaXMuX2V4cGVjdGVkKSwK
KyAgICAgICAgICAnJHthY3R1YWx9IGluaGVyaXRzIGZyb20gIiR7ZXhwZWN0ZWR9Ii4nLAorICAg
ICAgICAgICcke2FjdHVhbH0gZG9lcyBub3QgaW5oZXJpdCBmcm9tICIke2V4cGVjdGVkfSIuJyk7
CisgICAgfQorICB9CisKKworICAvLyBUYXNrIENsYXNzIHN0YXRlIGVudW0uCisgIGNvbnN0IFRh
c2tTdGF0ZSA9IHtQRU5ESU5HOiAwLCBTVEFSVEVEOiAxLCBGSU5JU0hFRDogMn07CisKKworICAv
KioKKyAgICogQGNsYXNzIFRhc2sKKyAgICogQGRlc2NyaXB0aW9uIFdlYkF1ZGlvIHRlc3Rpbmcg
dGFzay4gTWFuYWdlZCBieSBUYXNrUnVubmVyLgorICAgKi8KKyAgY2xhc3MgVGFzayB7CisgICAg
LyoqCisgICAgICogVGFzayBjb25zdHJ1Y3Rvci4KKyAgICAgKiBAcGFyYW0gIHtPYmplY3R9IHRh
c2tSdW5uZXIgUmVmZXJlbmNlIG9mIGFzc29jaWF0ZWQgdGFzayBydW5uZXIuCisgICAgICogQHBh
cmFtICB7U3RyaW5nfHxPYmplY3R9IHRhc2tMYWJlbCBUYXNrIGxhYmVsIGlmIGEgc3RyaW5nIGlz
IGdpdmVuLiBUaGlzCisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
YXJhbWV0ZXIgY2FuIGJlIGEgZGljdGlvbmFyeSB3aXRoIHRoZQorICAgICAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZm9sbG93aW5nIGZpZWxkcy4KKyAgICAgKiBAcGFyYW0g
IHtTdHJpbmd9IHRhc2tMYWJlbC5sYWJlbCBUYXNrIGxhYmVsLgorICAgICAqIEBwYXJhbSAge1N0
cmluZ30gdGFza0xhYmVsLmRlc2NyaXB0aW9uIERlc2NyaXB0aW9uIG9mIHRhc2suCisgICAgICog
QHBhcmFtICB7RnVuY3Rpb259IHRhc2tGdW5jdGlvbiBUYXNrIGZ1bmN0aW9uIHRvIGJlIHBlcmZv
cm1lZC4KKyAgICAgKiBAcmV0dXJuIHtPYmplY3R9IFRhc2sgb2JqZWN0LgorICAgICAqLworICAg
IGNvbnN0cnVjdG9yKHRhc2tSdW5uZXIsIHRhc2tMYWJlbCwgdGFza0Z1bmN0aW9uKSB7CisgICAg
ICB0aGlzLl90YXNrUnVubmVyID0gdGFza1J1bm5lcjsKKyAgICAgIHRoaXMuX3Rhc2tGdW5jdGlv
biA9IHRhc2tGdW5jdGlvbjsKKworICAgICAgaWYgKHR5cGVvZiB0YXNrTGFiZWwgPT09ICdzdHJp
bmcnKSB7CisgICAgICAgIHRoaXMuX2xhYmVsID0gdGFza0xhYmVsOworICAgICAgICB0aGlzLl9k
ZXNjcmlwdGlvbiA9IG51bGw7CisgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0YXNrTGFiZWwgPT09
ICdvYmplY3QnKSB7CisgICAgICAgIGlmICh0eXBlb2YgdGFza0xhYmVsLmxhYmVsICE9PSAnc3Ry
aW5nJykgeworICAgICAgICAgIF90aHJvd0V4Y2VwdGlvbignVGFzay5jb25zdHJ1Y3Rvcjo6IHRh
c2sgbGFiZWwgbXVzdCBiZSBzdHJpbmcuJyk7CisgICAgICAgIH0KKyAgICAgICAgdGhpcy5fbGFi
ZWwgPSB0YXNrTGFiZWwubGFiZWw7CisgICAgICAgIHRoaXMuX2Rlc2NyaXB0aW9uID0gKHR5cGVv
ZiB0YXNrTGFiZWwuZGVzY3JpcHRpb24gPT09ICdzdHJpbmcnKSA/CisgICAgICAgICAgICB0YXNr
TGFiZWwuZGVzY3JpcHRpb24gOgorICAgICAgICAgICAgbnVsbDsKKyAgICAgIH0gZWxzZSB7Cisg
ICAgICAgIF90aHJvd0V4Y2VwdGlvbigKKyAgICAgICAgICAgICdUYXNrLmNvbnN0cnVjdG9yOjog
dGFzayBsYWJlbCBtdXN0IGJlIGEgc3RyaW5nIG9yICcgKworICAgICAgICAgICAgJ2EgZGljdGlv
bmFyeS4nKTsKKyAgICAgIH0KKworICAgICAgdGhpcy5fc3RhdGUgPSBUYXNrU3RhdGUuUEVORElO
RzsKKyAgICAgIHRoaXMuX3Jlc3VsdCA9IHRydWU7CisKKyAgICAgIHRoaXMuX3RvdGFsQXNzZXJ0
aW9ucyA9IDA7CisgICAgICB0aGlzLl9mYWlsZWRBc3NlcnRpb25zID0gMDsKKyAgICB9CisKKyAg
ICBnZXQgbGFiZWwoKSB7CisgICAgICByZXR1cm4gdGhpcy5fbGFiZWw7CisgICAgfQorCisgICAg
Z2V0IHN0YXRlKCkgeworICAgICAgcmV0dXJuIHRoaXMuX3N0YXRlOworICAgIH0KKworICAgIGdl
dCByZXN1bHQoKSB7CisgICAgICByZXR1cm4gdGhpcy5fcmVzdWx0OworICAgIH0KKworICAgIC8v
IFN0YXJ0IHRoZSBhc3NlcnRpb24gY2hhaW4uCisgICAgc2hvdWxkKGFjdHVhbCwgYWN0dWFsRGVz
Y3JpcHRpb24pIHsKKyAgICAgIC8vIElmIG5vIGFyZ3VtZW50IGlzIGdpdmVuLCB3ZSBjYW5ub3Qg
cHJvY2VlZC4gSGFsdC4KKyAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwKQorICAgICAg
ICBfdGhyb3dFeGNlcHRpb24oJ1Rhc2suc2hvdWxkOjogcmVxdWlyZXMgYXQgbGVhc3QgMSBhcmd1
bWVudC4nKTsKKworICAgICAgcmV0dXJuIG5ldyBTaG91bGQodGhpcywgYWN0dWFsLCBhY3R1YWxE
ZXNjcmlwdGlvbik7CisgICAgfQorCisgICAgLy8gUnVuIHRoaXMgdGFzay4gfHRoaXN8IHRhc2sg
d2lsbCBiZSBwYXNzZWQgaW50byB0aGUgdXNlci1zdXBwbGllZCB0ZXN0CisgICAgLy8gdGFzayBm
dW5jdGlvbi4KKyAgICBydW4oaGFybmVzc1Rlc3QpIHsKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFz
a1N0YXRlLlNUQVJURUQ7CisgICAgICB0aGlzLl9oYXJuZXNzVGVzdCA9IGhhcm5lc3NUZXN0Owor
ICAgICAgLy8gUHJpbnQgb3V0IHRoZSB0YXNrIGVudHJ5IHdpdGggbGFiZWwgYW5kIGRlc2NyaXB0
aW9uLgorICAgICAgX2xvZ1Bhc3NlZCgKKyAgICAgICAgICAnPiBbJyArIHRoaXMuX2xhYmVsICsg
J10gJyArCisgICAgICAgICAgKHRoaXMuX2Rlc2NyaXB0aW9uID8gdGhpcy5fZGVzY3JpcHRpb24g
OiAnJykpOworCisgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4g
eworICAgICAgICB0aGlzLl9yZXNvbHZlID0gcmVzb2x2ZTsKKyAgICAgICAgdGhpcy5fcmVqZWN0
ID0gcmVqZWN0OworICAgICAgICBsZXQgcmVzdWx0ID0gdGhpcy5fdGFza0Z1bmN0aW9uKHRoaXMs
IHRoaXMuc2hvdWxkLmJpbmQodGhpcykpOworICAgICAgICBpZiAocmVzdWx0ICYmIHR5cGVvZiBy
ZXN1bHQudGhlbiA9PT0gImZ1bmN0aW9uIikgeworICAgICAgICAgIHJlc3VsdC50aGVuKCgpID0+
IHRoaXMuZG9uZSgpKS5jYXRjaChyZWplY3QpOworICAgICAgICB9CisgICAgICB9KTsKKyAgICB9
CisKKyAgICAvLyBVcGRhdGUgdGhlIHRhc2sgc3VjY2VzcyBiYXNlZCBvbiB0aGUgaW5kaXZpZHVh
bCBhc3NlcnRpb24vdGVzdCBpbnNpZGUuCisgICAgdXBkYXRlKHN1YlRhc2spIHsKKyAgICAgIC8v
IEFmdGVyIG9uZSBvZiB0ZXN0cyBmYWlscyB3aXRoaW4gYSB0YXNrLCB0aGUgcmVzdWx0IGlzIGly
cmV2ZXJzaWJsZS4KKyAgICAgIGlmIChzdWJUYXNrLnJlc3VsdCA9PT0gZmFsc2UpIHsKKyAgICAg
ICAgdGhpcy5fcmVzdWx0ID0gZmFsc2U7CisgICAgICAgIHRoaXMuX2ZhaWxlZEFzc2VydGlvbnMr
KzsKKyAgICAgIH0KKworICAgICAgdGhpcy5fdG90YWxBc3NlcnRpb25zKys7CisgICAgfQorCisg
ICAgLy8gRmluaXNoIHRoZSBjdXJyZW50IHRhc2sgYW5kIHN0YXJ0IHRoZSBuZXh0IG9uZSBpZiBh
dmFpbGFibGUuCisgICAgZG9uZSgpIHsKKyAgICAgIGFzc2VydF9lcXVhbHModGhpcy5fc3RhdGUs
IFRhc2tTdGF0ZS5TVEFSVEVEKQorICAgICAgdGhpcy5fc3RhdGUgPSBUYXNrU3RhdGUuRklOSVNI
RUQ7CisKKyAgICAgIGxldCBtZXNzYWdlID0gJzwgWycgKyB0aGlzLl9sYWJlbCArICddICc7CisK
KyAgICAgIGlmICh0aGlzLl9yZXN1bHQpIHsKKyAgICAgICAgbWVzc2FnZSArPSAnQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgJyArIHRoaXMuX3RvdGFsQXNzZXJ0aW9ucyArCisgICAgICAg
ICAgICAnIGFzc2VydGlvbnMpJzsKKyAgICAgICAgX2xvZ1Bhc3NlZChtZXNzYWdlKTsKKyAgICAg
IH0gZWxzZSB7CisgICAgICAgIG1lc3NhZ2UgKz0gdGhpcy5fZmFpbGVkQXNzZXJ0aW9ucyArICcg
b3V0IG9mICcgKyB0aGlzLl90b3RhbEFzc2VydGlvbnMgKworICAgICAgICAgICAgJyBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLicKKyAgICAgICAgX2xvZ0ZhaWxlZChtZXNzYWdlKTsKKyAgICAgIH0K
KworICAgICAgdGhpcy5fcmVzb2x2ZSgpOworICAgIH0KKworICAgIC8vIFJ1bnMgfHN1YlRhc2t8
IHx0aW1lfCBtaWxsaXNlY29uZHMgbGF0ZXIuIHxzZXRUaW1lb3V0fCBpcyBub3QgYWxsb3dlZCBp
bgorICAgIC8vIFdQVCBsaW50ZXIsIHNvIGEgdGhpbiB3cmFwcGVyIGFyb3VuZCB0aGUgaGFybmVz
cydzIHxzdGVwX3RpbWVvdXR8IGlzCisgICAgLy8gdXNlZCBoZXJlLiAgUmV0dXJucyBhIFByb21p
c2Ugd2hpY2ggaXMgcmVzb2x2ZWQgYWZ0ZXIgfHN1YlRhc2t8IHJ1bnMuCisgICAgdGltZW91dChz
dWJUYXNrLCB0aW1lKSB7CisgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7Cisg
ICAgICAgIHRoaXMuX2hhcm5lc3NUZXN0LnN0ZXBfdGltZW91dCgoKSA9PiB7CisgICAgICAgICAg
bGV0IHJlc3VsdCA9IHN1YlRhc2soKTsKKyAgICAgICAgICBpZiAocmVzdWx0ICYmIHR5cGVvZiBy
ZXN1bHQudGhlbiA9PT0gImZ1bmN0aW9uIikgeworICAgICAgICAgICAgLy8gQ2hhaW4gcmVqZWN0
aW9uIGRpcmVjdGx5IHRvIHRoZSBoYXJuZXNzIHRlc3QgUHJvbWlzZSwgdG8gcmVwb3J0CisgICAg
ICAgICAgICAvLyB0aGUgcmVqZWN0aW9uIGFnYWluc3QgdGhlIHN1YnRlc3QgZXZlbiB3aGVuIHRo
ZSBjYWxsZXIgb2YKKyAgICAgICAgICAgIC8vIHRpbWVvdXQgZG9lcyBub3QgaGFuZGxlIHRoZSBy
ZWplY3Rpb24uCisgICAgICAgICAgICByZXN1bHQudGhlbihyZXNvbHZlLCB0aGlzLl9yZWplY3Qo
KSk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJlc29sdmUoKTsKKyAgICAgICAg
ICB9CisgICAgICAgIH0sIHRpbWUpOworICAgICAgfSk7CisgICAgfQorCisgICAgaXNQYXNzZWQo
KSB7CisgICAgICByZXR1cm4gdGhpcy5fc3RhdGUgPT09IFRhc2tTdGF0ZS5GSU5JU0hFRCAmJiB0
aGlzLl9yZXN1bHQ7CisgICAgfQorCisgICAgdG9TdHJpbmcoKSB7CisgICAgICByZXR1cm4gJyIn
ICsgdGhpcy5fbGFiZWwgKyAnIjogJyArIHRoaXMuX2Rlc2NyaXB0aW9uOworICAgIH0KKyAgfQor
CisKKyAgLyoqCisgICAqIEBjbGFzcyBUYXNrUnVubmVyCisgICAqIEBkZXNjcmlwdGlvbiBXZWJB
dWRpbyB0ZXN0aW5nIHRhc2sgcnVubmVyLiBNYW5hZ2VzIHRhc2tzLgorICAgKi8KKyAgY2xhc3Mg
VGFza1J1bm5lciB7CisgICAgY29uc3RydWN0b3IoKSB7CisgICAgICB0aGlzLl90YXNrcyA9IHt9
OworICAgICAgdGhpcy5fdGFza1NlcXVlbmNlID0gW107CisKKyAgICAgIC8vIENvbmZpZ3VyZSB0
ZXN0aGFybmVzcy5qcyBmb3IgdGhlIGFzeW5jIG9wZXJhdGlvbi4KKyAgICAgIHNldHVwKG5ldyBG
dW5jdGlvbigpLCB7ZXhwbGljaXRfZG9uZTogdHJ1ZX0pOworICAgIH0KKworICAgIF9maW5pc2go
KSB7CisgICAgICBsZXQgbnVtYmVyT2ZGYWlsdXJlcyA9IDA7CisgICAgICBmb3IgKGxldCB0YXNr
SW5kZXggaW4gdGhpcy5fdGFza1NlcXVlbmNlKSB7CisgICAgICAgIGxldCB0YXNrID0gdGhpcy5f
dGFza3NbdGhpcy5fdGFza1NlcXVlbmNlW3Rhc2tJbmRleF1dOworICAgICAgICBudW1iZXJPZkZh
aWx1cmVzICs9IHRhc2sucmVzdWx0ID8gMCA6IDE7CisgICAgICB9CisKKyAgICAgIGxldCBwcmVm
aXggPSAnIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogJzsKKyAgICAgIGlmIChudW1iZXJP
ZkZhaWx1cmVzID4gMCkgeworICAgICAgICBfbG9nRmFpbGVkKAorICAgICAgICAgICAgcHJlZml4
ICsgbnVtYmVyT2ZGYWlsdXJlcyArICcgb3V0IG9mICcgKyB0aGlzLl90YXNrU2VxdWVuY2UubGVu
Z3RoICsKKyAgICAgICAgICAgICcgdGFza3Mgd2VyZSBmYWlsZWQuJyk7CisgICAgICB9IGVsc2Ug
eworICAgICAgICBfbG9nUGFzc2VkKAorICAgICAgICAgICAgcHJlZml4ICsgdGhpcy5fdGFza1Nl
cXVlbmNlLmxlbmd0aCArICcgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4nKTsKKyAgICAgIH0KKwor
ICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOworICAgIH0KKworICAgIC8vIHx0YXNrTGFi
ZWx8IGNhbiBiZSBlaXRoZXIgYSBzdHJpbmcgb3IgYSBkaWN0aW9uYXJ5LiBTZWUgVGFzayBjb25z
dHJ1Y3RvcgorICAgIC8vIGZvciB0aGUgZGV0YWlsLiAgSWYgfHRhc2tGdW5jdGlvbnwgcmV0dXJu
cyBhIHRoZW5hYmxlLCB0aGVuIHRoZSB0YXNrCisgICAgLy8gaXMgY29uc2lkZXJlZCBjb21wbGV0
ZSB3aGVuIHRoZSB0aGVuYWJsZSBpcyBmdWxmaWxsZWQ7IG90aGVyd2lzZSB0aGUKKyAgICAvLyB0
YXNrIG11c3QgYmUgY29tcGxldGVkIHdpdGggYW4gZXhwbGljaXQgY2FsbCB0byB8dGFzay5kb25l
KCl8LgorICAgIGRlZmluZSh0YXNrTGFiZWwsIHRhc2tGdW5jdGlvbikgeworICAgICAgbGV0IHRh
c2sgPSBuZXcgVGFzayh0aGlzLCB0YXNrTGFiZWwsIHRhc2tGdW5jdGlvbik7CisgICAgICBpZiAo
dGhpcy5fdGFza3MuaGFzT3duUHJvcGVydHkodGFzay5sYWJlbCkpIHsKKyAgICAgICAgX3Rocm93
RXhjZXB0aW9uKCdBdWRpdC5kZWZpbmU6OiBEdXBsaWNhdGUgdGFzayBkZWZpbml0aW9uLicpOwor
ICAgICAgICByZXR1cm47CisgICAgICB9CisgICAgICB0aGlzLl90YXNrc1t0YXNrLmxhYmVsXSA9
IHRhc2s7CisgICAgICB0aGlzLl90YXNrU2VxdWVuY2UucHVzaCh0YXNrLmxhYmVsKTsKKyAgICB9
CisKKyAgICAvLyBTdGFydCBydW5uaW5nIGFsbCB0aGUgdGFza3Mgc2NoZWR1bGVkLiBNdWx0aXBs
ZSB0YXNrIG5hbWVzIGNhbiBiZSBwYXNzZWQKKyAgICAvLyB0byBleGVjdXRlIHRoZW0gc2VxdWVu
dGlhbGx5LiBaZXJvIGFyZ3VtZW50IHdpbGwgcGVyZm9ybSBhbGwgZGVmaW5lZAorICAgIC8vIHRh
c2tzIGluIHRoZSBvcmRlciBvZiBkZWZpbml0aW9uLgorICAgIHJ1bigpIHsKKyAgICAgIC8vIERp
c3BsYXkgdGhlIGJlZ2lubmluZyBvZiB0aGUgdGVzdCBzdWl0ZS4KKyAgICAgIF9sb2dQYXNzZWQo
JyMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4nKTsKKworICAgICAgLy8gSWYgdGhlIGFyZ3Vt
ZW50IGlzIHNwZWNpZmllZCwgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdGFzayBzZXF1ZW5jZSB3aXRo
CisgICAgICAvLyB0aGUgc3BlY2lmaWVkIG9uZS4KKyAgICAgIGlmIChhcmd1bWVudHMubGVuZ3Ro
ID4gMCkgeworICAgICAgICB0aGlzLl90YXNrU2VxdWVuY2UgPSBbXTsKKyAgICAgICAgZm9yIChs
ZXQgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICBsZXQgdGFz
a0xhYmVsID0gYXJndW1lbnRzW2ldOworICAgICAgICAgIGlmICghdGhpcy5fdGFza3MuaGFzT3du
UHJvcGVydHkodGFza0xhYmVsKSkgeworICAgICAgICAgICAgX3Rocm93RXhjZXB0aW9uKCdBdWRp
dC5ydW46OiB1bmRlZmluZWQgdGFzay4nKTsKKyAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX3Rh
c2tTZXF1ZW5jZS5pbmNsdWRlcyh0YXNrTGFiZWwpKSB7CisgICAgICAgICAgICBfdGhyb3dFeGNl
cHRpb24oJ0F1ZGl0LnJ1bjo6IGR1cGxpY2F0ZSB0YXNrIHJlcXVlc3QuJyk7CisgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIHRoaXMuX3Rhc2tTZXF1ZW5jZS5wdXNoKHRhc2tMYWJlbCk7
CisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICB9CisKKyAgICAgIGlmICh0aGlzLl90YXNr
U2VxdWVuY2UubGVuZ3RoID09PSAwKSB7CisgICAgICAgIF90aHJvd0V4Y2VwdGlvbignQXVkaXQu
cnVuOjogbm8gdGFzayB0byBydW4uJyk7CisgICAgICAgIHJldHVybjsKKyAgICAgIH0KKworICAg
ICAgZm9yIChsZXQgdGFza0luZGV4IGluIHRoaXMuX3Rhc2tTZXF1ZW5jZSkgeworICAgICAgICBs
ZXQgdGFzayA9IHRoaXMuX3Rhc2tzW3RoaXMuX3Rhc2tTZXF1ZW5jZVt0YXNrSW5kZXhdXTsKKyAg
ICAgICAgLy8gU29tZSB0ZXN0cyBhc3N1bWUgdGhhdCB0YXNrcyBydW4gaW4gc2VxdWVuY2UsIHdo
aWNoIGlzIHByb3ZpZGVkIGJ5CisgICAgICAgIC8vIHByb21pc2VfdGVzdCgpLgorICAgICAgICBw
cm9taXNlX3Rlc3QoKHQpID0+IHRhc2sucnVuKHQpLCBgRXhlY3V0aW5nICIke3Rhc2subGFiZWx9
ImApOworICAgICAgfQorCisgICAgICAvLyBTY2hlZHVsZSBhIHN1bW1hcnkgcmVwb3J0IG9uIGNv
bXBsZXRpb24uCisgICAgICBwcm9taXNlX3Rlc3QoKCkgPT4gdGhpcy5fZmluaXNoKCksICJBdWRp
dCByZXBvcnQiKTsKKworICAgICAgLy8gRnJvbSB0ZXN0aGFybmVzcy5qcy4gVGhlIGhhcm5lc3Mg
bm93IG5lZWQgbm90IHdhaXQgZm9yIG1vcmUgc3VidGVzdHMKKyAgICAgIC8vIHRvIGJlIGFkZGVk
LgorICAgICAgX3Rlc3RoYXJuZXNzRG9uZSgpOworICAgIH0KKyAgfQorCisgIC8qKgorICAgKiBM
b2FkIGZpbGUgZnJvbSBhIGdpdmVuIFVSTCBhbmQgcGFzcyBBcnJheUJ1ZmZlciB0byB0aGUgZm9s
bG93aW5nIHByb21pc2UuCisgICAqIEBwYXJhbSAge1N0cmluZ30gZmlsZVVybCBmaWxlIFVSTC4K
KyAgICogQHJldHVybiB7UHJvbWlzZX0KKyAgICoKKyAgICogQGV4YW1wbGUKKyAgICogICBBdWRp
dC5sb2FkRmlsZUZyb21VcmwoJ3Jlc291cmNlcy9teS1zb3VuZC5vZ2cnKS50aGVuKChyZXNwb25z
ZSkgPT4geworICAgKiAgICAgICBhdWRpb0NvbnRleHQuZGVjb2RlQXVkaW9EYXRhKHJlc3BvbnNl
KS50aGVuKChhdWRpb0J1ZmZlcikgPT4geworICAgKiAgICAgICAgICAgLy8gRG8gc29tZXRoaW5n
IHdpdGggQXVkaW9CdWZmZXIuCisgICAqICAgICAgIH0pOworICAgKiAgIH0pOworICAgKi8KKyAg
ZnVuY3Rpb24gbG9hZEZpbGVGcm9tVXJsKGZpbGVVcmwpIHsKKyAgICByZXR1cm4gbmV3IFByb21p
c2UoKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgbGV0IHhociA9IG5ldyBYTUxIdHRwUmVx
dWVzdCgpOworICAgICAgeGhyLm9wZW4oJ0dFVCcsIGZpbGVVcmwsIHRydWUpOworICAgICAgeGhy
LnJlc3BvbnNlVHlwZSA9ICdhcnJheWJ1ZmZlcic7CisKKyAgICAgIHhoci5vbmxvYWQgPSAoKSA9
PiB7CisgICAgICAgIC8vIHxzdGF0dXMgPSAwfCBpcyBhIHdvcmthcm91bmQgZm9yIHRoZSBydW5f
d2ViX3Rlc3QucHkgc2VydmVyLiBXZSBhcmUKKyAgICAgICAgLy8gc3BlY3VsYXRpbmcgdGhlIHNl
cnZlciBxdWl0cyB0aGUgdHJhbnNhY3Rpb24gcHJlbWF0dXJlbHkgd2l0aG91dAorICAgICAgICAv
LyBjb21wbGV0aW5nIHRoZSByZXF1ZXN0LgorICAgICAgICBpZiAoeGhyLnN0YXR1cyA9PT0gMjAw
IHx8IHhoci5zdGF0dXMgPT09IDApIHsKKyAgICAgICAgICByZXNvbHZlKHhoci5yZXNwb25zZSk7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgbGV0IGVycm9yTWVzc2FnZSA9ICdsb2FkRmls
ZTogUmVxdWVzdCBmYWlsZWQgd2hlbiBsb2FkaW5nICcgKworICAgICAgICAgICAgICBmaWxlVXJs
ICsgJy4gJyArIHhoci5zdGF0dXNUZXh0ICsgJy4gKHN0YXR1cyA9ICcgKyB4aHIuc3RhdHVzICsK
KyAgICAgICAgICAgICAgJyknOworICAgICAgICAgIGlmIChyZWplY3QpIHsKKyAgICAgICAgICAg
IHJlamVjdChlcnJvck1lc3NhZ2UpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBu
ZXcgRXJyb3IoZXJyb3JNZXNzYWdlKTsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH07
CisKKyAgICAgIHhoci5vbmVycm9yID0gKGV2ZW50KSA9PiB7CisgICAgICAgIGxldCBlcnJvck1l
c3NhZ2UgPQorICAgICAgICAgICAgJ2xvYWRGaWxlOiBOZXR3b3JrIGZhaWx1cmUgd2hlbiBsb2Fk
aW5nICcgKyBmaWxlVXJsICsgJy4nOworICAgICAgICBpZiAocmVqZWN0KSB7CisgICAgICAgICAg
cmVqZWN0KGVycm9yTWVzc2FnZSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgbmV3IEVy
cm9yKGVycm9yTWVzc2FnZSk7CisgICAgICAgIH0KKyAgICAgIH07CisKKyAgICAgIHhoci5zZW5k
KCk7CisgICAgfSk7CisgIH0KKworICAvKioKKyAgICogQGNsYXNzIEF1ZGl0CisgICAqIEBkZXNj
cmlwdGlvbiBBIFdlYkF1ZGlvIGxheW91dCB0ZXN0IHRhc2sgbWFuYWdlci4KKyAgICogQGV4YW1w
bGUKKyAgICogICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisgICAqICAg
YXVkaXQuZGVmaW5lKCdmaXJzdC10YXNrJywgZnVuY3Rpb24gKHRhc2ssIHNob3VsZCkgeworICAg
KiAgICAgc2hvdWxkKHNvbWVWYWx1ZSkuYmVFcXVhbFRvKHNvbWVWYWx1ZSk7CisgICAqICAgICB0
YXNrLmRvbmUoKTsKKyAgICogICB9KTsKKyAgICogICBhdWRpdC5ydW4oKTsKKyAgICovCisgIHJl
dHVybiB7CisKKyAgICAvKioKKyAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIEF1ZGl0IHRh
c2sgcnVubmVyLgorICAgICAqIEBwYXJhbSB7T2JqZWN0fSAgb3B0aW9ucyAgICAgICAgICAgICAg
ICAgICAgIE9wdGlvbnMgZm9yIHRhc2sgcnVubmVyLgorICAgICAqIEBwYXJhbSB7Qm9vbGVhbn0g
b3B0aW9ucy5yZXF1aXJlUmVzdWx0RmlsZSAgIFRydWUgaWYgdGhlIHRlc3Qgc3VpdGUKKyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlcyBl
eHBsaWNpdCB0ZXh0CisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29tcGFyaXNvbiB3aXRoIHRoZSBleHBlY3RlZAorICAgICAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCBmaWxlLgorICAgICAqLwor
ICAgIGNyZWF0ZVRhc2tSdW5uZXI6IGZ1bmN0aW9uKG9wdGlvbnMpIHsKKyAgICAgIGlmIChvcHRp
b25zICYmIG9wdGlvbnMucmVxdWlyZVJlc3VsdEZpbGUgPT0gdHJ1ZSkgeworICAgICAgICBfbG9n
RXJyb3IoCisgICAgICAgICAgICAndGhpcyB0ZXN0IHJlcXVpcmVzIHRoZSBleHBsaWNpdCBjb21w
YXJpc29uIHdpdGggdGhlICcgKworICAgICAgICAgICAgJ2V4cGVjdGVkIHJlc3VsdCB3aGVuIGl0
IHJ1bnMgd2l0aCBydW5fd2ViX3Rlc3RzLnB5LicpOworICAgICAgfQorCisgICAgICByZXR1cm4g
bmV3IFRhc2tSdW5uZXIoKTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogTG9hZCBmaWxlIGZy
b20gYSBnaXZlbiBVUkwgYW5kIHBhc3MgQXJyYXlCdWZmZXIgdG8gdGhlIGZvbGxvd2luZyBwcm9t
aXNlLgorICAgICAqIFNlZSB8bG9hZEZpbGVGcm9tVXJsfCBtZXRob2QgZm9yIHRoZSBkZXRhaWwu
CisgICAgICovCisgICAgbG9hZEZpbGVGcm9tVXJsOiBsb2FkRmlsZUZyb21VcmwKKworICB9Owor
Cit9KSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406552</attachid>
            <date>2020-08-13 16:10:04 -0700</date>
            <delta_ts>2020-08-14 12:41:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215417-20200813161003.patch</filename>
            <type>text/plain</type>
            <size>190143</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYThlNjYyMmE1NGM3MDgw
NGQ1ODI2MDRlZmFiNGI2NWU5Mzk4OTBjMy4uMTE4YTRjZDM4MDExNGJlYjEyYmE3MGMxOGQzNGIw
Mzg0YmYzZmU3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA4LTEzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1
c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Igc3VzcGVu
ZGluZyAvIHJlc3VtaW5nIGFuIE9mZmxpbmVBdWRpb0NvbnRleHQsIGFzIHBlcjoKKyAgICAgICAg
LSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1vZmZsaW5lYXVkaW9jb250ZXh0
LXN1c3BlbmQKKyAgICAgICAgLSBodHRwczovL3d3dy53My5vcmcvVFIvd2ViYXVkaW8vI2RvbS1v
ZmZsaW5lYXVkaW9jb250ZXh0LXJlc3VtZQorCisgICAgICAgIFRlc3RzOiB3ZWJhdWRpby9vZmZs
aW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwKKyAgICAgICAgICAgICAg
IHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVy
Lmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwKKyAgICAgICAgICAgICAgIHdlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCisgICAgICAg
ICAgICAgICB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVl
bmNlLmh0bWwKKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVy
aW5nKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkJhc2VBdWRpb0NvbnRleHQ6OnNob3VsZFN1c3BlbmQpOgorICAgICAg
ICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxpemUpOgorICAgICAgICAoV2Vi
Q29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c3RhcnRPZmZsaW5lUmVuZGVyaW5nKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnN1c3BlbmRPZmZsaW5lUmVuZGVyaW5n
KToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnJlc3VtZU9mZmxpbmVS
ZW5kZXJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6c2hvdWxk
U3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRTdXNw
ZW5kUmVuZGVyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OmRp
ZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmcpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2Zm
bGluZUF1ZGlvQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1
ZGlvQ29udGV4dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvRGVzdGlu
YXRpb25Ob2RlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpzdGFydFJlbmRlcmluZyk6CisgICAgICAg
IChXZWJDb3JlOjpPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Om9mZmxpbmVSZW5kZXIpOgor
ICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlLmg6
CisKIDIwMjAtMDgtMTMgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAg
ICAgICAgIFttYWNPU10gWm9vbWVkLWluIHNlYXJjaCBmaWVsZCBpcyBjbGlwcGVkIG91dApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5j
cHAKaW5kZXggNWNiOGFlNmU2NTJlZWU2MzkyNzZkY2RiYTI0YzI1MTQ5NGE0YWJmZi4uZjI2MDY1
OWMwYzA2ZjEzM2NmZjQ5Mjk4ZDFjMjNlNmYwNjY2NjE2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCkBAIC02NTQsMTAg
KzY1NCwxMCBAQCB2b2lkIEJhc2VBdWRpb0NvbnRleHQ6OmRlcmVmVW5maW5pc2hlZFNvdXJjZU5v
ZGVzKCkKICAgICBtX3JlZmVyZW5jZWROb2Rlcy5jbGVhcigpOwogfQogCi12b2lkIEJhc2VBdWRp
b0NvbnRleHQ6OmxvY2soYm9vbCYgbXVzdFJlbGVhc2VMb2NrKQordm9pZCBCYXNlQXVkaW9Db250
ZXh0Ojpsb2NrKGJvb2wmIG11c3RSZWxlYXNlTG9jaywgU2hvdWxkQWxsb3dMb2NraW5nT25BdWRp
b1RocmVhZCBzaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkKQogewogICAgIC8vIERvbid0
IGFsbG93IHJlZ3VsYXIgbG9jayBpbiByZWFsLXRpbWUgYXVkaW8gdGhyZWFkLgotICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CisgICAgQVNTRVJUX1VOVVNFRChzaG91bGRBbGxvd0xvY2tpbmdP
bkF1ZGlvVGhyZWFkLCBpc01haW5UaHJlYWQoKSB8fCBzaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlv
VGhyZWFkID09IFNob3VsZEFsbG93TG9ja2luZ09uQXVkaW9UaHJlYWQ6Olllcyk7CiAKICAgICBU
aHJlYWQmIHRoaXNUaHJlYWQgPSBUaHJlYWQ6OmN1cnJlbnQoKTsKIApAQCAtMTE0Myw2ICsxMTQz
LDExIEBAIHZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6c3VzcGVuZFJlbmRlcmluZyhET01Qcm9taXNl
RGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQogICAgIH0pOwogfQogCit2b2lkIEJhc2VBdWRpb0Nv
bnRleHQ6OmRpZFN1c3BlbmRSZW5kZXJpbmcoc2l6ZV90KQoreworICAgIHNldFN0YXRlKFN0YXRl
OjpTdXNwZW5kZWQpOworfQorCiB2b2lkIEJhc2VBdWRpb0NvbnRleHQ6OnJlc3VtZVJlbmRlcmlu
ZyhET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNlKQogewogICAgIGlmIChpc09mZmxp
bmVDb250ZXh0KCkgfHwgbV9pc1N0b3BTY2hlZHVsZWQpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmgKaW5kZXggMDc5ZTg2NmE3NTQ1
MzYxNjczODk5M2JkMWM2MDg1MTY1MjA1NDAwNi4uMGI3OThhNTE0MjRmZjhmZTI5MzVhM2ExMTI0
MjhiZjZkOTY5ZjU0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9CYXNlQXVkaW9Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9CYXNlQXVkaW9Db250ZXh0LmgKQEAgLTEyMiw2ICsxMjIsOCBAQCBwdWJsaWM6CiAKICAgICB2
b2lkIGluY3JlbWVudEFjdGl2ZVNvdXJjZUNvdW50KCk7CiAgICAgdm9pZCBkZWNyZW1lbnRBY3Rp
dmVTb3VyY2VDb3VudCgpOworCisgICAgdmlydHVhbCBib29sIHNob3VsZFN1c3BlbmQoKSB7IHJl
dHVybiBmYWxzZTsgfQogICAgIAogICAgIEV4Y2VwdGlvbk9yPFJlZjxBdWRpb0J1ZmZlcj4+IGNy
ZWF0ZUJ1ZmZlcih1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzLCB1bnNpZ25lZCBsZW5ndGgsIGZs
b2F0IHNhbXBsZVJhdGUpOwogCkBAIC0xMzMsNiArMTM1LDggQEAgcHVibGljOgogICAgIHZvaWQg
c3VzcGVuZFJlbmRlcmluZyhET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7CiAgICAgdm9pZCBy
ZXN1bWVSZW5kZXJpbmcoRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogCisgICAgdmlydHVh
bCB2b2lkIGRpZFN1c3BlbmRSZW5kZXJpbmcoc2l6ZV90IGZyYW1lKTsKKwogICAgIEF1ZGlvQnVm
ZmVyKiByZW5kZXJUYXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3JlbmRlclRhcmdldC5nZXQoKTsg
fQogCiAgICAgdXNpbmcgU3RhdGUgPSBBdWRpb0NvbnRleHRTdGF0ZTsKQEAgLTIwMSw4ICsyMDUs
OSBAQCBwdWJsaWM6CiAgICAgLy8gUmV0dXJucyB0cnVlIG9ubHkgYWZ0ZXIgdGhlIGF1ZGlvIHRo
cmVhZCBoYXMgYmVlbiBzdGFydGVkIGFuZCB0aGVuIHNodXRkb3duLgogICAgIGJvb2wgaXNBdWRp
b1RocmVhZEZpbmlzaGVkKCkgeyByZXR1cm4gbV9pc0F1ZGlvVGhyZWFkRmluaXNoZWQ7IH0KICAg
ICAKKyAgICBlbnVtIGNsYXNzIFNob3VsZEFsbG93TG9ja2luZ09uQXVkaW9UaHJlYWQgeyBObywg
WWVzIH07CiAgICAgLy8gbXVzdFJlbGVhc2VMb2NrIGlzIHNldCB0byB0cnVlIGlmIHdlIGFjcXVp
cmVkIHRoZSBsb2NrIGluIHRoaXMgbWV0aG9kIGNhbGwgYW5kIGNhbGxlciBtdXN0IHVubG9jaygp
LCBmYWxzZSBpZiBpdCB3YXMgcHJldmlvdXNseSBhY3F1aXJlZC4KLSAgICB2b2lkIGxvY2soYm9v
bCYgbXVzdFJlbGVhc2VMb2NrKTsKKyAgICB2b2lkIGxvY2soYm9vbCYgbXVzdFJlbGVhc2VMb2Nr
LCBTaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkID0gU2hvdWxkQWxsb3dMb2NraW5nT25B
dWRpb1RocmVhZDo6Tm8pOwogCiAgICAgLy8gUmV0dXJucyB0cnVlIGlmIHdlIG93biB0aGUgbG9j
ay4KICAgICAvLyBtdXN0UmVsZWFzZUxvY2sgaXMgc2V0IHRvIHRydWUgaWYgd2UgYWNxdWlyZWQg
dGhlIGxvY2sgaW4gdGhpcyBtZXRob2QgY2FsbCBhbmQgY2FsbGVyIG11c3QgdW5sb2NrKCksIGZh
bHNlIGlmIGl0IHdhcyBwcmV2aW91c2x5IGFjcXVpcmVkLgpAQCAtMjcwLDEwICsyNzUsMTAgQEAg
cHVibGljOgogCiAgICAgY2xhc3MgQXV0b0xvY2tlciB7CiAgICAgcHVibGljOgotICAgICAgICBl
eHBsaWNpdCBBdXRvTG9ja2VyKEJhc2VBdWRpb0NvbnRleHQmIGNvbnRleHQpCisgICAgICAgIGV4
cGxpY2l0IEF1dG9Mb2NrZXIoQmFzZUF1ZGlvQ29udGV4dCYgY29udGV4dCwgU2hvdWxkQWxsb3dM
b2NraW5nT25BdWRpb1RocmVhZCBzaG91bGRBbGxvd0xvY2tpbmdPbkF1ZGlvVGhyZWFkID0gU2hv
dWxkQWxsb3dMb2NraW5nT25BdWRpb1RocmVhZDo6Tm8pCiAgICAgICAgICAgICA6IG1fY29udGV4
dChjb250ZXh0KQogICAgICAgICB7Ci0gICAgICAgICAgICBtX2NvbnRleHQubG9jayhtX211c3RS
ZWxlYXNlTG9jayk7CisgICAgICAgICAgICBtX2NvbnRleHQubG9jayhtX211c3RSZWxlYXNlTG9j
aywgc2hvdWxkQWxsb3dMb2NraW5nT25BdWRpb1RocmVhZCk7CiAgICAgICAgIH0KIAogICAgICAg
ICB+QXV0b0xvY2tlcigpCkBAIC0zMDksNyArMzE0LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgYm9v
bCB3aWxsQmVnaW5QbGF5YmFjaygpOwogCi0gICAgdm9pZCB1bmluaXRpYWxpemUoKTsKKyAgICB2
aXJ0dWFsIHZvaWQgdW5pbml0aWFsaXplKCk7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQK
ICAgICBjb25zdCBjaGFyKiBsb2dDbGFzc05hbWUoKSBjb25zdCBmaW5hbCB7IHJldHVybiAiQmFz
ZUF1ZGlvQ29udGV4dCI7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuY3BwCmluZGV4IGEwN2M1ZTUxYzk2Njc4ZDMxZDE5
MDY5MTY0MTQ1YzI4YjIzNjZjYmIuLmE2MjlhY2ZiZGQzZTFhZDhiMWM2YjhmNWU3OWUwYmMzODU3
MmJjMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGlu
ZUF1ZGlvQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9P
ZmZsaW5lQXVkaW9Db250ZXh0LmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIk9mZmxp
bmVBdWRpb0NvbnRleHQuaCIKIAogI2luY2x1ZGUgIkF1ZGlvQnVmZmVyLmgiCisjaW5jbHVkZSAi
QXVkaW9VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkpTQXVk
aW9CdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgpAQCAtNjcsMTMg
KzY4LDQ2IEBAIEV4Y2VwdGlvbk9yPFJlZjxPZmZsaW5lQXVkaW9Db250ZXh0Pj4gT2ZmbGluZUF1
ZGlvQ29udGV4dDo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvCiAgICAgcmV0dXJuIGNyZWF0ZShjb250
ZXh0LCBjb250ZXh0T3B0aW9ucy5udW1iZXJPZkNoYW5uZWxzLCBjb250ZXh0T3B0aW9ucy5sZW5n
dGgsIGNvbnRleHRPcHRpb25zLnNhbXBsZVJhdGUpOwogfQogCit2b2lkIE9mZmxpbmVBdWRpb0Nv
bnRleHQ6OnVuaW5pdGlhbGl6ZSgpCit7CisgICAgQmFzZUF1ZGlvQ29udGV4dDo6dW5pbml0aWFs
aXplKCk7CisKKyAgICBWZWN0b3I8UmVmUHRyPERlZmVycmVkUHJvbWlzZT4+IHByb21pc2VzVG9S
ZWplY3Q7CisKKyAgICB7CisgICAgICAgIEF1dG9Mb2NrZXIgbG9ja2VyKCp0aGlzKTsKKyAgICAg
ICAgcHJvbWlzZXNUb1JlamVjdC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KG1fc3VzcGVuZFJlcXVl
c3RzLnNpemUoKSk7CisgICAgICAgIGZvciAoYXV0byYgcHJvbWlzZSA6IG1fc3VzcGVuZFJlcXVl
c3RzLnZhbHVlcygpKQorICAgICAgICAgICAgcHJvbWlzZXNUb1JlamVjdC51bmNoZWNrZWRBcHBl
bmQocHJvbWlzZSk7CisgICAgICAgIG1fc3VzcGVuZFJlcXVlc3RzLmNsZWFyKCk7CisgICAgfQor
CisgICAgaWYgKG1fcGVuZGluZ09mZmxpbmVSZW5kZXJpbmdQcm9taXNlKQorICAgICAgICBwcm9t
aXNlc1RvUmVqZWN0LmFwcGVuZChzdGQ6OmV4Y2hhbmdlKG1fcGVuZGluZ09mZmxpbmVSZW5kZXJp
bmdQcm9taXNlLCBudWxscHRyKSk7CisKKyAgICBmb3IgKGF1dG8mIHByb21pc2UgOiBwcm9taXNl
c1RvUmVqZWN0KQorICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0
YXRlRXJyb3IsICJDb250ZXh0IGlzIGdvaW5nIGF3YXkiX3MgfSk7Cit9CisKIHZvaWQgT2ZmbGlu
ZUF1ZGlvQ29udGV4dDo6c3RhcnRPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJlZFByb21pc2U+
JiYgcHJvbWlzZSkKIHsKLSAgICBpZiAoaXNTdG9wcGVkKCkgfHwgIXdpbGxCZWdpblBsYXliYWNr
KCkpIHsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVy
cm9yIH0pOworICAgIGlmIChpc1N0b3BwZWQoKSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3Qo
RXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJDb250ZXh0IGlzIHN0b3BwZWQiX3MgfSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAgICBpZiAobV9kaWRTdGFydE9mZmxpbmVSZW5k
ZXJpbmcpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiUmVuZGVyaW5nIHdhcyBhbHJlYWR5IHN0YXJ0ZWQiX3MgfSk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBpZiAoIXdpbGxCZWdpblBsYXliYWNrKCkpIHsKKyAgICAgICAg
cHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiUmVmdXNpbmcg
dG8gc3RhcnQgcmVuZGVyaW5nIGZvciBzZWN1cml0eSByZWFzb25zIiB9KTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIGxhenlJbml0aWFsaXplKCk7CisKICAgICBhdXRvIHJlc3VsdCA9
IGRlc3RpbmF0aW9uKCktPnN0YXJ0UmVuZGVyaW5nKCk7CiAgICAgaWYgKHJlc3VsdC5oYXNFeGNl
cHRpb24oKSkgewogICAgICAgICBwcm9taXNlLT5yZWplY3QocmVzdWx0LnJlbGVhc2VFeGNlcHRp
b24oKSk7CkBAIC04MiwxMSArMTE2LDk3IEBAIHZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6c3Rh
cnRPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKIAogICAg
IG1ha2VQZW5kaW5nQWN0aXZpdHkoKTsKICAgICBtX3BlbmRpbmdPZmZsaW5lUmVuZGVyaW5nUHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSk7CisgICAgbV9kaWRTdGFydE9mZmxpbmVSZW5kZXJpbmcg
PSB0cnVlOwogICAgIHNldFN0YXRlKFN0YXRlOjpSdW5uaW5nKTsKIH0KIAordm9pZCBPZmZsaW5l
QXVkaW9Db250ZXh0OjpzdXNwZW5kT2ZmbGluZVJlbmRlcmluZyhkb3VibGUgc3VzcGVuZFRpbWUs
IFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKK3sKKyAgICBpZiAoaXNTdG9wcGVkKCkp
IHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9y
LCAiQ29udGV4dCBpcyBzdG9wcGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgaWYgKHN1c3BlbmRUaW1lIDwgMCkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0
aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJzdXNwZW5kVGltZSBjYW5ub3QgYmUgbmVnYXRpdmUi
X3MgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBkb3VibGUgdG90YWxSZW5kZXJE
dXJhdGlvbiA9IHJlbmRlclRhcmdldCgpLT5sZW5ndGgoKSAvIHNhbXBsZVJhdGUoKTsKKyAgICBp
ZiAodG90YWxSZW5kZXJEdXJhdGlvbiA8PSBzdXNwZW5kVGltZSkgeworICAgICAgICBwcm9taXNl
LT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJzdXNwZW5kVGltZSBjYW5u
b3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbiJfcyB9KTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIHNpemVfdCBmcmFtZSA9IEF1ZGlvVXRpbGl0aWVzOjp0
aW1lVG9TYW1wbGVGcmFtZShzdXNwZW5kVGltZSwgc2FtcGxlUmF0ZSgpKTsKKyAgICBmcmFtZSA9
IE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6cmVuZGVyUXVhbnR1bVNpemUgKiAoKGZyYW1l
ICsgT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpyZW5kZXJRdWFudHVtU2l6ZSAtIDEpIC8g
T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpyZW5kZXJRdWFudHVtU2l6ZSk7CisgICAgaWYg
KGZyYW1lIDwgY3VycmVudFNhbXBsZUZyYW1lKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0
KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiU3VzcGVuc2lvbiBmcmFtZSBpcyBlYXJs
aWVyIHRoYW4gY3VycmVudCBmcmFtZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIEF1dG9Mb2NrZXIgbG9ja2VyKCp0aGlzKTsKKyAgICBhdXRvIGFkZFJlc3VsdCA9IG1fc3Vz
cGVuZFJlcXVlc3RzLmFkZChmcmFtZSwgcHJvbWlzZS5wdHIoKSk7CisgICAgaWYgKCFhZGRSZXN1
bHQuaXNOZXdFbnRyeSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52
YWxpZFN0YXRlRXJyb3IsICJUaGVyZSBpcyBhbHJlYWR5IGEgcGVuZGluZyBzdXNwZW5kIHJlcXVl
c3QgYXQgdGhpcyBmcmFtZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30KKwordm9p
ZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpyZXN1bWVPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJl
ZFByb21pc2U+JiYgcHJvbWlzZSkKK3sKKyAgICBpZiAoIW1fZGlkU3RhcnRPZmZsaW5lUmVuZGVy
aW5nKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVF
cnJvciwgIkNhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQgaGFzIG5v
dCBzdGFydGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChpc0Nsb3Nl
ZCgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVF
cnJvciwgIkNhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQgaXMgY2xv
c2VkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChzdGF0ZSgpID09IEF1
ZGlvQ29udGV4dFN0YXRlOjpSdW5uaW5nKSB7CisgICAgICAgIHByb21pc2UtPnJlc29sdmUoKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBBU1NFUlQoc3RhdGUoKSA9PSBBdWRpb0NvbnRl
eHRTdGF0ZTo6U3VzcGVuZGVkKTsKKworICAgIGF1dG8gcmVzdWx0ID0gZGVzdGluYXRpb24oKS0+
c3RhcnRSZW5kZXJpbmcoKTsKKyAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CisgICAg
ICAgIHByb21pc2UtPnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIG1ha2VQZW5kaW5nQWN0aXZpdHkoKTsKKyAgICBzZXRTdGF0
ZShTdGF0ZTo6UnVubmluZyk7CisgICAgcHJvbWlzZS0+cmVzb2x2ZSgpOworfQorCitib29sIE9m
ZmxpbmVBdWRpb0NvbnRleHQ6OnNob3VsZFN1c3BlbmQoKQoreworICAgIEFTU0VSVCghaXNNYWlu
VGhyZWFkKCkpOworICAgIC8vIE5vdGUgdGhhdCBBdXRvTG9ja2VyIHVzZXMgbG9jaygpIGluc3Rl
YWQgb2YgdHJ5TG9jaygpLiBXZSB1c3VhbGx5IGF2b2lkIGJsb2NraW5nIHRoZSBBdWRpb1RocmVh
ZAorICAgIC8vIG9uIGxvY2soKSBidXQgd2UgZG9uJ3QgaGF2ZSBhIGNob2ljZSBoZXJlIHNpbmNl
IHRoZSBzdXNwZW5zaW9uIG5lZWQgdG8gYmUgZXhhY3QuCisgICAgQXV0b0xvY2tlciBsb2NrZXIo
KnRoaXMsIFNob3VsZEFsbG93TG9ja2luZ09uQXVkaW9UaHJlYWQ6Olllcyk7CisgICAgcmV0dXJu
IG1fc3VzcGVuZFJlcXVlc3RzLmNvbnRhaW5zKGN1cnJlbnRTYW1wbGVGcmFtZSgpKTsKK30KKwor
dm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFt
ZSkKK3sKKyAgICBCYXNlQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVyaW5nKGZyYW1lKTsK
KworICAgIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+IHByb21pc2U7CisgICAgeworICAgICAgICBB
dXRvTG9ja2VyIGxvY2tlcigqdGhpcyk7CisgICAgICAgIHByb21pc2UgPSBtX3N1c3BlbmRSZXF1
ZXN0cy50YWtlKGZyYW1lKTsKKyAgICB9CisgICAgQVNTRVJUKHByb21pc2UpOworICAgIGlmIChw
cm9taXNlKQorICAgICAgICBwcm9taXNlLT5yZXNvbHZlKCk7Cit9CisKIHZvaWQgT2ZmbGluZUF1
ZGlvQ29udGV4dDo6ZGlkRmluaXNoT2ZmbGluZVJlbmRlcmluZyhFeGNlcHRpb25PcjxSZWY8QXVk
aW9CdWZmZXI+PiYmIHJlc3VsdCkKIHsKKyAgICBtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZyA9
IGZhbHNlOworCiAgICAgaWYgKCFtX3BlbmRpbmdPZmZsaW5lUmVuZGVyaW5nUHJvbWlzZSkKICAg
ICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5oCmluZGV4IDhiZjBhM2QwMmE4MzAyMmM2M2QxMTZlMTJl
MjhhMjgwZGYzYWU1Y2YuLjE5NmVhNTcxNjc2NjFmN2U3YTFjZDRkMjMyYzg4ZGUwMjZhMGNiMmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlv
Q29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1
ZGlvQ29udGV4dC5oCkBAIC0yNyw2ICsyNyw5IEBACiAjaW5jbHVkZSAiQmFzZUF1ZGlvQ29udGV4
dC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVkZSAiT2ZmbGlu
ZUF1ZGlvQ29udGV4dE9wdGlvbnMuaCIKKyNpbmNsdWRlICJPZmZsaW5lQXVkaW9EZXN0aW5hdGlv
bk5vZGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMzgsMTUgKzQxLDI0IEBAIHB1YmxpYzoKICAg
ICBzdGF0aWMgRXhjZXB0aW9uT3I8UmVmPE9mZmxpbmVBdWRpb0NvbnRleHQ+PiBjcmVhdGUoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zJik7
CiAKICAgICB2b2lkIHN0YXJ0T2ZmbGluZVJlbmRlcmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYm
KTsKKyAgICB2b2lkIHN1c3BlbmRPZmZsaW5lUmVuZGVyaW5nKGRvdWJsZSBzdXNwZW5kVGltZSwg
UmVmPERlZmVycmVkUHJvbWlzZT4mJik7CisgICAgdm9pZCByZXN1bWVPZmZsaW5lUmVuZGVyaW5n
KFJlZjxEZWZlcnJlZFByb21pc2U+JiYpOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7
CisgICAgYm9vbCBzaG91bGRTdXNwZW5kKCkgZmluYWw7CisKKyAgICBPZmZsaW5lQXVkaW9EZXN0
aW5hdGlvbk5vZGUqIGRlc3RpbmF0aW9uKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8T2ZmbGluZUF1
ZGlvRGVzdGluYXRpb25Ob2RlKj4oQmFzZUF1ZGlvQ29udGV4dDo6ZGVzdGluYXRpb24oKSk7IH0K
IAogcHJpdmF0ZToKICAgICBPZmZsaW5lQXVkaW9Db250ZXh0KERvY3VtZW50JiwgQXVkaW9CdWZm
ZXIqIHJlbmRlclRhcmdldCk7CiAKICAgICB2b2lkIGRpZEZpbmlzaE9mZmxpbmVSZW5kZXJpbmco
RXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVmZmVyPj4mJikgZmluYWw7CisgICAgdm9pZCBkaWRTdXNw
ZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSkgZmluYWw7CisgICAgdm9pZCB1bmluaXRpYWxpemUo
KSBmaW5hbDsKIAogICAgIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+IG1fcGVuZGluZ09mZmxpbmVS
ZW5kZXJpbmdQcm9taXNlOworICAgIEhhc2hNYXA8dW5zaWduZWQgLyogZnJhbWUgKi8sIFJlZlB0
cjxEZWZlcnJlZFByb21pc2U+LCBXVEY6OkludEhhc2g8dW5zaWduZWQ+LCBXVEY6OlVuc2lnbmVk
V2l0aFplcm9LZXlIYXNoVHJhaXRzPHVuc2lnbmVkPj4gbV9zdXNwZW5kUmVxdWVzdHM7CisgICAg
Ym9vbCBtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZyB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbAppbmRleCA2ZWQwNGY3MzQwODRjNjNiMWQzM2Vm
ODZlYmNkYmI4ODcyZmVmN2JmLi41NjhjOGMxZjc5OTEyNDk4MWZiYjNhZWY1YTRmZjdlNjg3MTVi
MWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVB
dWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2Zm
bGluZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTMyLDggKzMyLDggQEAKICAgICAKICAgICBbSW1wbGVt
ZW50ZWRBcz1zdGFydE9mZmxpbmVSZW5kZXJpbmddIFByb21pc2U8QXVkaW9CdWZmZXI+IHN0YXJ0
UmVuZGVyaW5nKCk7CiAKLSAgICBbSW1wbGVtZW50ZWRBcz1yZXN1bWVSZW5kZXJpbmddIFByb21p
c2U8dm9pZD4gcmVzdW1lKCk7Ci0gICAgW0ltcGxlbWVudGVkQXM9c3VzcGVuZFJlbmRlcmluZ10g
UHJvbWlzZTx2b2lkPiBzdXNwZW5kKCk7IC8vIEZJWE1FOiBNaXNzaW5nIHN1c3BlbmRUaW1lIHBh
cmFtZXRlci4KKyAgICBbSW1wbGVtZW50ZWRBcz1yZXN1bWVPZmZsaW5lUmVuZGVyaW5nXSBQcm9t
aXNlPHZvaWQ+IHJlc3VtZSgpOworICAgIFtJbXBsZW1lbnRlZEFzPXN1c3BlbmRPZmZsaW5lUmVu
ZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHN1c3BlbmQoZG91YmxlIHN1c3BlbmRUaW1lKTsKIAogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5v
ZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0
aW5hdGlvbk5vZGUuY3BwCmluZGV4IDUzYzljNjkxZGI2MjlhOTlmYjFjMTg1ZTQ0MmU1ZWY3ODEw
NDJkYzkuLjAwNGQxZDVjODQwNGM5Y2U4MTVhNTc5ODRmODlmNTcxYjgyN2E1NTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRp
b25Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVB
dWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKQEAgLTM5LDEyICszOSwxMiBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChPZmZsaW5lQXVkaW9EZXN0aW5h
dGlvbk5vZGUpOwogICAgIAotY29uc3Qgc2l6ZV90IHJlbmRlclF1YW50dW1TaXplID0gMTI4OyAg
ICAKK2NvbnN0IHNpemVfdCBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6OnJlbmRlclF1YW50
dW1TaXplID0gMTI4OwogCiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6Ok9mZmxpbmVBdWRp
b0Rlc3RpbmF0aW9uTm9kZShCYXNlQXVkaW9Db250ZXh0JiBjb250ZXh0LCBBdWRpb0J1ZmZlciog
cmVuZGVyVGFyZ2V0KQogICAgIDogQXVkaW9EZXN0aW5hdGlvbk5vZGUoY29udGV4dCkKICAgICAs
IG1fcmVuZGVyVGFyZ2V0KHJlbmRlclRhcmdldCkKLSAgICAsIG1fc3RhcnRlZFJlbmRlcmluZyhm
YWxzZSkKKyAgICAsIG1fZnJhbWVzVG9Qcm9jZXNzKHJlbmRlclRhcmdldC0+bGVuZ3RoKCkpCiB7
CiAgICAgbV9yZW5kZXJCdXMgPSBBdWRpb0J1czo6Y3JlYXRlKHJlbmRlclRhcmdldC0+bnVtYmVy
T2ZDaGFubmVscygpLCByZW5kZXJRdWFudHVtU2l6ZSk7CiB9CkBAIC05Miw0OSArOTIsNTkgQEAg
RXhjZXB0aW9uT3I8dm9pZD4gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpzdGFydFJlbmRl
cmluZygpCiAgICAgLy8gRklYTUU6IFNob3VsZCB3ZSBjYWxsIGxhenlJbml0aWFsaXplIGhlcmU/
CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBwcm9iYWJseSBsaW1pdCB0aGUgbnVtYmVyIG9mIHRo
cmVhZHMgd2UgY3JlYXRlIGZvciBvZmZsaW5lIGF1ZGlvLgogICAgIG1fcmVuZGVyVGhyZWFkID0g
VGhyZWFkOjpjcmVhdGUoIm9mZmxpbmUgcmVuZGVyZXIiLCBbdGhpc10gewotICAgICAgICBib29s
IGRpZFJlbmRlciA9IG9mZmxpbmVSZW5kZXIoKTsKLSAgICAgICAgY2FsbE9uTWFpblRocmVhZChb
dGhpcywgZGlkUmVuZGVyXSB7Ci0gICAgICAgICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJp
bmcoZGlkUmVuZGVyKTsKKyAgICAgICAgYXV0byByZXN1bHQgPSBvZmZsaW5lUmVuZGVyKCk7Cisg
ICAgICAgIGNhbGxPbk1haW5UaHJlYWQoW3RoaXMsIHJlc3VsdCwgY3VycmVudFNhbXBsZUZyYW1l
ID0gbV9jdXJyZW50U2FtcGxlRnJhbWVdIHsKKyAgICAgICAgICAgIG1fc3RhcnRlZFJlbmRlcmlu
ZyA9IGZhbHNlOworICAgICAgICAgICAgc3dpdGNoIChyZXN1bHQpIHsKKyAgICAgICAgICAgIGNh
c2UgT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVyZToKKyAgICAgICAgICAgICAgICBjb250ZXh0
KCkuZmluaXNoZWRSZW5kZXJpbmcoZmFsc2UpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICAgICAgY2FzZSBPZmZsaW5lUmVuZGVyUmVzdWx0OjpDb21wbGV0ZToKKyAgICAgICAgICAg
ICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJpbmcodHJ1ZSk7CisgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICBjYXNlIE9mZmxpbmVSZW5kZXJSZXN1bHQ6OlN1c3BlbmRlZDoK
KyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZGlkU3VzcGVuZFJlbmRlcmluZyhjdXJyZW50U2Ft
cGxlRnJhbWUpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQogICAgICAg
ICAgICAgZGVyZWYoKTsKICAgICAgICAgfSk7CiAgICAgfSwgVGhyZWFkVHlwZTo6QXVkaW8pOwog
ICAgIHJldHVybiB7IH07CiB9CiAKLWJvb2wgT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpv
ZmZsaW5lUmVuZGVyKCkKK2F1dG8gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpvZmZsaW5l
UmVuZGVyKCkgLT4gT2ZmbGluZVJlbmRlclJlc3VsdAogewogICAgIEFTU0VSVCghaXNNYWluVGhy
ZWFkKCkpOwogICAgIEFTU0VSVChtX3JlbmRlckJ1cy5nZXQoKSk7CisKICAgICBpZiAoIW1fcmVu
ZGVyQnVzLmdldCgpKQotICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiBPZmZs
aW5lUmVuZGVyUmVzdWx0OjpGYWlsdXJlOwogCi0gICAgYm9vbCBpc0F1ZGlvQ29udGV4dEluaXRp
YWxpemVkID0gY29udGV4dCgpLmlzSW5pdGlhbGl6ZWQoKTsKLSAgICAvLyBGSVhNRTogV2UgdXNl
ZCB0byBhc3NlcnQgdGhhdCBpc0F1ZGlvQ29udGV4dEluaXRpYWxpemVkIGlzIHRydWUgaGVyZS4K
LSAgICAvLyBCdXQgaXQncyB0cml2aWFsbHkgZmFsc2UgaW4gaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vZmZsaW5lYXVkaW9jb250ZXh0
LWludGVyZmFjZS9jdXJyZW50LXRpbWUtYmxvY2stc2l6ZS5odG1sIAotICAgIGlmICghaXNBdWRp
b0NvbnRleHRJbml0aWFsaXplZCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIFJFTEVBU0Vf
QVNTRVJUKGNvbnRleHQoKS5pc0luaXRpYWxpemVkKCkpOwogCiAgICAgYm9vbCBjaGFubmVsc01h
dGNoID0gbV9yZW5kZXJCdXMtPm51bWJlck9mQ2hhbm5lbHMoKSA9PSBtX3JlbmRlclRhcmdldC0+
bnVtYmVyT2ZDaGFubmVscygpOwogICAgIEFTU0VSVChjaGFubmVsc01hdGNoKTsKICAgICBpZiAo
IWNoYW5uZWxzTWF0Y2gpCi0gICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgcmV0dXJuIE9m
ZmxpbmVSZW5kZXJSZXN1bHQ6OkZhaWx1cmU7CiAKICAgICBib29sIGlzUmVuZGVyQnVzQWxsb2Nh
dGVkID0gbV9yZW5kZXJCdXMtPmxlbmd0aCgpID49IHJlbmRlclF1YW50dW1TaXplOwogICAgIEFT
U0VSVChpc1JlbmRlckJ1c0FsbG9jYXRlZCk7CiAgICAgaWYgKCFpc1JlbmRlckJ1c0FsbG9jYXRl
ZCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJl
c3VsdDo6RmFpbHVyZTsKIAogICAgIC8vIEJyZWFrIHVwIHRoZSByZW5kZXIgdGFyZ2V0IGludG8g
c21hbGxlciAicmVuZGVyIHF1YW50aXplIiBzaXplZCBwaWVjZXMuCiAgICAgLy8gUmVuZGVyIHVu
dGlsIHdlJ3JlIGZpbmlzaGVkLgotICAgIHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MgPSBtX3JlbmRl
clRhcmdldC0+bGVuZ3RoKCk7CiAgICAgdW5zaWduZWQgbnVtYmVyT2ZDaGFubmVscyA9IG1fcmVu
ZGVyVGFyZ2V0LT5udW1iZXJPZkNoYW5uZWxzKCk7CiAKICAgICB1bnNpZ25lZCBuID0gMDsKLSAg
ICB3aGlsZSAoZnJhbWVzVG9Qcm9jZXNzID4gMCkgeworICAgIHdoaWxlIChtX2ZyYW1lc1RvUHJv
Y2VzcyA+IDApIHsKKyAgICAgICAgaWYgKGNvbnRleHQoKS5zaG91bGRTdXNwZW5kKCkpCisgICAg
ICAgICAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJlc3VsdDo6U3VzcGVuZGVkOworCiAgICAgICAg
IC8vIFJlbmRlciBvbmUgcmVuZGVyIHF1YW50dW0uCiAgICAgICAgIHJlbmRlcigwLCBtX3JlbmRl
ckJ1cy5nZXQoKSwgcmVuZGVyUXVhbnR1bVNpemUpOwogICAgICAgICAKLSAgICAgICAgc2l6ZV90
IGZyYW1lc0F2YWlsYWJsZVRvQ29weSA9IHN0ZDo6bWluKGZyYW1lc1RvUHJvY2VzcywgcmVuZGVy
UXVhbnR1bVNpemUpOworICAgICAgICBzaXplX3QgZnJhbWVzQXZhaWxhYmxlVG9Db3B5ID0gc3Rk
OjptaW4obV9mcmFtZXNUb1Byb2Nlc3MsIHJlbmRlclF1YW50dW1TaXplKTsKICAgICAgICAgCiAg
ICAgICAgIGZvciAodW5zaWduZWQgY2hhbm5lbEluZGV4ID0gMDsgY2hhbm5lbEluZGV4IDwgbnVt
YmVyT2ZDaGFubmVsczsgKytjaGFubmVsSW5kZXgpIHsKICAgICAgICAgICAgIGNvbnN0IGZsb2F0
KiBzb3VyY2UgPSBtX3JlbmRlckJ1cy0+Y2hhbm5lbChjaGFubmVsSW5kZXgpLT5kYXRhKCk7CkBA
IC0xNDMsMTAgKzE1MywxMCBAQCBib29sIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6b2Zm
bGluZVJlbmRlcigpCiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIG4gKz0gZnJhbWVzQXZh
aWxhYmxlVG9Db3B5OwotICAgICAgICBmcmFtZXNUb1Byb2Nlc3MgLT0gZnJhbWVzQXZhaWxhYmxl
VG9Db3B5OworICAgICAgICBtX2ZyYW1lc1RvUHJvY2VzcyAtPSBmcmFtZXNBdmFpbGFibGVUb0Nv
cHk7CiAgICAgfQogCi0gICAgcmV0dXJuIHRydWU7CisgICAgcmV0dXJuIE9mZmxpbmVSZW5kZXJS
ZXN1bHQ6OkNvbXBsZXRlOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0
aW5hdGlvbk5vZGUuaAppbmRleCA0NmNmMzgwYTkxOTMzYTM3OTEzMzQ3NjJjZjU3MWY2ZTU5OWQ4
ZjY2Li40ZWJiYjgwNGQzNDFmMGE2YjJmOTY5Y2U1OGFjMDk5NzBmNmRiNTg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlv
RGVzdGluYXRpb25Ob2RlLmgKQEAgLTUwLDEzICs1MCwxOSBAQCBwdWJsaWM6CiAKICAgICAvLyBB
dWRpb0Rlc3RpbmF0aW9uTm9kZQogICAgIHZvaWQgZW5hYmxlSW5wdXQoY29uc3QgU3RyaW5nJikg
b3ZlcnJpZGUgeyB9Ci0gICAgRXhjZXB0aW9uT3I8dm9pZD4gc3RhcnRSZW5kZXJpbmcoKSBvdmVy
cmlkZTsKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBzdGFydFJlbmRlcmluZygpIGZpbmFsOwogCiAg
ICAgZmxvYXQgc2FtcGxlUmF0ZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fcmVuZGVyVGFyZ2V0
LT5zYW1wbGVSYXRlKCk7IH0KIAorICAgIHN0YXRpYyBjb25zdCBzaXplX3QgcmVuZGVyUXVhbnR1
bVNpemU7CisKIHByaXZhdGU6CiAgICAgT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKEJhc2VB
dWRpb0NvbnRleHQmLCBBdWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KTsKIAorICAgIGVudW0gY2xh
c3MgT2ZmbGluZVJlbmRlclJlc3VsdCB7IEZhaWx1cmUsIFN1c3BlbmRlZCwgQ29tcGxldGUgfTsK
KyAgICBPZmZsaW5lUmVuZGVyUmVzdWx0IG9mZmxpbmVSZW5kZXIoKTsKKyAgICB2b2lkIG5vdGlm
eU9mZmxpbmVSZW5kZXJpbmdTdXNwZW5kZWQoKTsKKwogICAgIC8vIFRoaXMgQXVkaW9Ob2RlIHJl
bmRlcnMgaW50byB0aGlzIEF1ZGlvQnVmZmVyLgogICAgIFJlZlB0cjxBdWRpb0J1ZmZlcj4gbV9y
ZW5kZXJUYXJnZXQ7CiAgICAgCkBAIC02NSw4ICs3MSw4IEBAIHByaXZhdGU6CiAgICAgCiAgICAg
Ly8gUmVuZGVyaW5nIHRocmVhZC4KICAgICBSZWZQdHI8VGhyZWFkPiBtX3JlbmRlclRocmVhZDsK
LSAgICBib29sIG1fc3RhcnRlZFJlbmRlcmluZzsKLSAgICBib29sIG9mZmxpbmVSZW5kZXIoKTsK
KyAgICBzaXplX3QgbV9mcmFtZXNUb1Byb2Nlc3M7CisgICAgYm9vbCBtX3N0YXJ0ZWRSZW5kZXJp
bmcgeyBmYWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDcyZTFk
NDllODNjNGMxZWExNWU2ZTQ5ZTgzZGNhNDhjNWEyMmIwN2IuLjAwYmQ5NTJkYTE0ZDNiMTQwMmIw
N2NiYmI5YmEzMDUzN2NhZmRjNmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw5MiBAQAorMjAyMC0wOC0xMyAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZv
ciBzdXNwZW5kaW5nIC8gcmVzdW1pbmcgYW4gT2ZmbGluZUF1ZGlvQ29udGV4dAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDE3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wb3J0IHRlc3RzIGZvciB0
aGlzIGZlYXR1cmUgZnJvbSBCbGluayBzaW5jZSB0aGUgV1BUIGNvdmVyYWdlIGlzIG5vdCBncmVh
dC4KKworICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtYmFzaWMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5l
YXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVy
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29u
dGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXIuaHRtbDogQWRkZWQuCisgICAgICAgICog
d2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVs
YXRpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXBy
b21pc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbDogQWRkZWQuCisgICAgICAgICog
d2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQt
c3VzcGVuZC1yZXN1bWUtc2VxdWVuY2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8v
cmVzb3VyY2VzL2F1ZGl0LXV0aWwuanM6IEFkZGVkLgorICAgICAgICAoY29tcGFyZUJ1ZmZlcnNX
aXRoQ29uc3RyYWludHMpOgorICAgICAgICAoY3JlYXRlSW1wdWxzZUJ1ZmZlcik6CisgICAgICAg
IChjcmVhdGVMaW5lYXJSYW1wQnVmZmVyKToKKyAgICAgICAgKGNyZWF0ZUNvbnN0YW50QnVmZmVy
KToKKyAgICAgICAgKGNyZWF0ZVN0ZXJlb0ltcHVsc2VCdWZmZXIpOgorICAgICAgICAodGltZVRv
U2FtcGxlRnJhbWUpOgorICAgICAgICAoZ3JhaW5MZW5ndGhJblNhbXBsZUZyYW1lcyk6CisgICAg
ICAgIChpc1ZhbGlkTnVtYmVyKToKKyAgICAgICAgKiB3ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQu
anM6IEFkZGVkLgorICAgICAgICAoX2xvZ0Vycm9yKToKKyAgICAgICAgKF9sb2dQYXNzZWQpOgor
ICAgICAgICAoX2xvZ0ZhaWxlZCk6CisgICAgICAgIChfdGhyb3dFeGNlcHRpb24pOgorICAgICAg
ICAoX2dlbmVyYXRlRGVzY3JpcHRpb24pOgorICAgICAgICAoX2Zvcm1hdEZhaWx1cmVFbnRyeSk6
CisgICAgICAgIChfY2xvc2VUb1RocmVzaG9sZCk6CisgICAgICAgIChTaG91bGQpOgorICAgICAg
ICAoU2hvdWxkLnByb3RvdHlwZS5fcHJvY2Vzc0FyZ3VtZW50cyk6CisgICAgICAgIChTaG91bGQu
cHJvdG90eXBlLl9idWlsZFJlc3VsdFRleHQpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5f
ZmluYWxpemUpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5fYXNzZXJ0KToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuZ2V0IHJlc3VsdCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBl
LmdldCBkZXRhaWwpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5leGlzdCk6CisgICAgICAg
IChTaG91bGQucHJvdG90eXBlLnRocm93KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUubm90
VGhyb3cpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZVJlc29sdmVkKToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuYmVSZWplY3RlZCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBl
LmJlUmVqZWN0ZWRXaXRoKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVUcnVlKToKKyAg
ICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVGYWxzZSk6CisgICAgICAgIChTaG91bGQucHJvdG90
eXBlLmJlRXF1YWxUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLm5vdEJlRXF1YWxUbyk6
CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlTmFOKToKKyAgICAgICAgKFNob3VsZC5wcm90
b3R5cGUubm90QmVOYU4pOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZUdyZWF0ZXJUaGFu
KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVHcmVhdGVyVGhhbk9yRXF1YWxUbyk6Cisg
ICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlTGVzc1RoYW4pOgorICAgICAgICAoU2hvdWxkLnBy
b3RvdHlwZS5iZUxlc3NUaGFuT3JFcXVhbFRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUu
YmVDb25zdGFudFZhbHVlT2YpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5ub3RCZUNvbnN0
YW50VmFsdWVPZik6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlRXF1YWxUb0FycmF5KToK
KyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuY29udGFpblZhbHVlcyk6CisgICAgICAgIChTaG91
bGQucHJvdG90eXBlLm5vdEdsaXRjaCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlQ2xv
c2VUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlQ2xvc2VUb0FycmF5KToKKyAgICAg
ICAgKFNob3VsZC5wcm90b3R5cGUubWVzc2FnZSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBl
LmhhdmVPd25Qcm9wZXJ0eSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLm5vdEhhdmVPd25Q
cm9wZXJ0eSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmluaGVyaXRGcm9tKToKKyAgICAg
ICAgKFRhc2spOgorICAgICAgICAoVGFzay5wcm90b3R5cGUuZ2V0IGxhYmVsKToKKyAgICAgICAg
KFRhc2sucHJvdG90eXBlLmdldCBzdGF0ZSk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5nZXQg
cmVzdWx0KToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLnNob3VsZCk6CisgICAgICAgIChUYXNr
LnByb3RvdHlwZS5ydW4pOgorICAgICAgICAoVGFzay5wcm90b3R5cGUudXBkYXRlKToKKyAgICAg
ICAgKFRhc2sucHJvdG90eXBlLmRvbmUpOgorICAgICAgICAoVGFzay5wcm90b3R5cGUudGltZW91
dCk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5pc1Bhc3NlZCk6CisgICAgICAgIChUYXNrLnBy
b3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChUYXNrUnVubmVyKToKKyAgICAgICAgKFRhc2tS
dW5uZXIucHJvdG90eXBlLl9maW5pc2gpOgorICAgICAgICAoVGFza1J1bm5lci5wcm90b3R5cGUu
ZGVmaW5lKToKKyAgICAgICAgKFRhc2tSdW5uZXIucHJvdG90eXBlLnJ1bik6CisgICAgICAgIChs
b2FkRmlsZUZyb21VcmwpOgorICAgICAgICAocmV0dXJuLmNyZWF0ZVRhc2tSdW5uZXIpOgorICAg
ICAgICAod2luZG93LkF1ZGl0KToKKwogMjAyMC0wOC0xMyAgQWRpdHlhIEtlZXJ0aGkgIDxha2Vl
cnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgW21hY09TXSBab29tZWQtaW4gc2VhcmNoIGZpZWxk
IGlzIGNsaXBwZWQgb3V0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBmZGMxN2Qy
ZTlmZTM4Y2M5MDhhYWI0MWE1MzczNTk1MzRjNTk1OTllLi5jNWM2MGJjN2Q4YTg0ZmE5YmEwNDky
NjEzZDAyN2Q2OGFjOGQ4MGMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMC0wOC0xMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBzdXNwZW5kaW5nIC8gcmVzdW1pbmcgYW4gT2ZmbGlu
ZUF1ZGlvQ29udGV4dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjE1NDE3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmViYXNlbGluZSBXUFQgdGVzdHMgbm93IHRoYXQgbW9yZSBjaGVja3MgYXJlIHBhc3Np
bmcuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5o
dHRwcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2J1ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNl
L2FjdGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVy
ZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRl
eHQtaW50ZXJmYWNlL3N1c3BlbmQtYWZ0ZXItY29uc3RydWN0LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9u
b2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29ubmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9hdWRpb3dvcmtsZXRub2RlLWNoYW5uZWwtY291bnQu
aHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNlL3N1c3BlbmRlZC1jb250
ZXh0LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRl
cmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRl
cmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2
ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
ZGVsYXlub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2Rl
LWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9mZmxpbmVhdWRpb2NvbnRl
eHQtaW50ZXJmYWNlL2N1cnJlbnQtdGltZS1ibG9jay1zaXplLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxs
YXRvcm5vZGUtaW50ZXJmYWNlL29zYy1iYXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5l
cm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hhbmdlcy1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5v
ZGUtaW50ZXJmYWNlL3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtd2F2ZXNo
YXBlcm5vZGUtaW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2ZS1leHBlY3RlZC50eHQ6CisK
IDIwMjAtMDgtMTMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkLCByZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0IGFyZSBjdXJyZW50bHkgbWFya2Vk
IGFzIGZsYWt5LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMGJjN2VhZWU1ZjQyMTBiMTFkNDExNDA4
MzViNjhkMjA0NTdhYWRhMy4uODQxZjE5ZDg4NjIzMGRkYTc5OTkyYjhjNDNlZTRiZmEzNmViMGI1
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMjUsNiArMzI1LDkgQEAgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2Rl
LWludGVyZmEKIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9sdmVyLXVwbWl4aW5nLTEt
Y2hhbm5lbC1yZXNwb25zZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtd2F2ZXNoYXBlcm5vZGUt
aW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2ZS5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAor
IyBUaGlzIHRlc3QgcGFzc2VzIGJ1dCBwcmludHMgYSBkaWZmZXJlbnQgdmFsdWUgYWxtb3N0IGV2
ZXJ5IHRpbWUuCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00
LWNoYW4uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCisKIAogIyBTb21lIG9mIHRoZSBzdWJjaGVja3Mg
YXJlIGZhaWxpbmcgYW5kIHByaW50IG91dCBhIGRpZmZlcmVudCB2YWx1ZSBldmVyeSB0aW1lLgog
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2UvZGV0dW5lLWxpbWl0aW5nLmh0bWwgWyBQYXNzIEZh
aWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhh
cm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBlYWY5YjBlMWQwMTM5NDI5OGNk
MGIzZTcyOThjNDdjZjdmZjJmYzRmLi4zMzUxMWQ4ZDVlNzBiODhhYWZjNmE3ZWQ5MmI5Mjk5N2E3
MDZlOGY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lk
bGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMTE0LDcgKzExNCw3IEBAIFBB
U1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90CiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3Qn
cyBAQHVuc2NvcGFibGVzIHByb3BlcnR5IAogUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVy
ZmFjZTogb3BlcmF0aW9uIHN0YXJ0UmVuZGVyaW5nKCkgCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gcmVzdW1lKCkgCi1GQUlMIE9mZmxpbmVBdWRpb0NvbnRl
eHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gc3VzcGVuZChkb3VibGUpIGFzc2VydF9lcXVhbHM6IHBy
b3BlcnR5IGhhcyB3cm9uZyAubGVuZ3RoIGV4cGVjdGVkIDEgYnV0IGdvdCAwCitQQVNTIE9mZmxp
bmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBvcGVyYXRpb24gc3VzcGVuZChkb3VibGUpIAogUEFT
UyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogYXR0cmlidXRlIGxlbmd0aCAKIFBBU1Mg
T2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBvbmNvbXBsZXRlIAogUEFT
UyBPZmZsaW5lQXVkaW9Db250ZXh0IG11c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IE9m
ZmxpbmVBdWRpb0NvbnRleHQoMSwgMSwgc2FtcGxlX3JhdGUpIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb2J1ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNlL2FjdGl2ZS1wcm9jZXNzaW5n
Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9idWZmZXJzb3VyY2Vub2Rl
LWludGVyZmFjZS9hY3RpdmUtcHJvY2Vzc2luZy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggYTY0
Y2JlOTAxNWJiNGQxZGNiM2U4ZjEzYWJkNzljYWQ2YTM3YTk0OC4uMDg3Njk1YWNiM2M5NDBhZDg0
ZWVhMmE2ZGYxNDM1OTgwZDg1MGYzNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2J1
ZmZlcnNvdXJjZW5vZGUtaW50ZXJmYWNlL2FjdGl2ZS1wcm9jZXNzaW5nLmh0dHBzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvYnVmZmVyc291cmNlbm9kZS1pbnRlcmZhY2Uv
YWN0aXZlLXByb2Nlc3NpbmcuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDIyIEBACi1D
T05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRl
RXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJv
ciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGlu
IGFuIGludmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAK
IEZBSUwgRXhlY3V0aW5nICJTZXR1cCBncmFwaCIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFu
IG9iamVjdCAoZXZhbHVhdGluZyAnY29udGV4dC5hdWRpb1dvcmtsZXQuYWRkTW9kdWxlJykiCi1U
SU1FT1VUIEV4ZWN1dGluZyAidmVyaWZ5IGNvdW50IGNoYW5nZSIgVGVzdCB0aW1lZCBvdXQKLU5P
VFJVTiBBdWRpdCByZXBvcnQgCitQQVNTIEV4ZWN1dGluZyAidmVyaWZ5IGNvdW50IGNoYW5nZSIg
CitQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbU2V0dXAgZ3JhcGhdICAKIFBBU1MgPiBbdmVy
aWZ5IGNvdW50IGNoYW5nZV0gIAorRkFJTCBYIE51bWJlciBvZiBjaGFubmVscyBjaGFuZ2VkIGlz
IG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorUEFTUyAgIEluZGV4IHdoZXJlIGlucHV0IGNoYW5uZWwgY291bnQgY2hhbmdlZCBpcyBsZXNz
IHRoYW4gb3IgZXF1YWwgdG8gMTI4MC4gCitGQUlMIFggTnVtYmVyIG9mIGNoYW5uZWxzIGluIGlu
cHV0WzA6LTJdOiBFeHBlY3RlZCA3IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjc5IHVuZXhw
ZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JMAorCVsxXQkwCisJWzJdCTAKKwlb
M10JMAorCS4uLmFuZCAxMjc1IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK0ZBSUwgWCBOdW1iZXIgb2YgY2hhbm5lbHMgaW4gaW5wdXRbLTE6XTogRXhw
ZWN0ZWQgMSBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgMSB1bmV4cGVjdGVkIHZhbHVlczogCisJ
SW5kZXgJQWN0dWFsCisJWzBdCTAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMIDwgW3ZlcmlmeSBjb3VudCBjaGFuZ2VdIDMgb3V0IG9mIDQgYXNzZXJ0aW9ucyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMICMgQVVE
SVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDIgdGFza3Mgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1l
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRp
b2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0CmluZGV4IDg4YTYwMDgyNDBlY2U5
YTQwYzVjMTIzYzc1Y2FlNTRhODhhNmNhNjguLjUyZDk1OGMwZjAyYWEzOTkyNWFjZDJmMWRhMTdl
NDhkOWZmMjAxM2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVy
ZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtZXhwZWN0ZWQudHh0CkBAIC0xMCwxOSArMTAsMTkgQEAgUEFTUyAgIG9mZmxpbmVDb250ZXh0
ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgNDQxMDAsIDQ0MTAwKSBkaWQgbm90IHRocm93
IGEKIFBBU1MgICBvZmZsaW5lQ29udGV4dC5zdGF0ZSBpcyBlcXVhbCB0byBzdXNwZW5kZWQuIAog
UEFTUyAgIHAxID0gb2ZmbGluZUNvbnRleHQuc3VzcGVuZCgpIGRpZCBub3QgdGhyb3cgYW4gZXhj
ZXB0aW9uLiAKIFBBU1MgICBwMSBpbnN0YW5jZW9mIFByb21pc2UgaXMgdHJ1ZS4gCi1QQVNTICAg
cDEgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3Qg
aXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uIAorUEFTUyAgIHAxIHJlamVjdGVkIGNvcnJlY3RseSB3
aXRoIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuIAogUEFTUyA8IFt0ZXN0LXN1c3Bl
bmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBQQVNTID4g
W3Rlc3QtcmVzdW1lXSBUZXN0IHJlc3VtZSgpIGZvciBvZmZsaW5lIGNvbnRleHQgCiBQQVNTICAg
cDIgPSBvZmZsaW5lQ29udGV4dC5yZXN1bWUoKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CiBQQVNTICAgcDIgaW5zdGFuY2VvZiBQcm9taXNlIGlzIHRydWUuIAogUEFTUyAgIEFmdGVyIHJl
c3VtZSwgb2ZmbGluZUNvbnRleHQuc3RhdGUgaXMgZXF1YWwgdG8gc3VzcGVuZGVkLiAKLVBBU1Mg
ICBwMiByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4gCitQQVNTICAgcDIgcmVqZWN0ZWQgY29ycmVjdGx5
IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IENhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBj
b250ZXh0IHRoYXQgaGFzIG5vdCBzdGFydGVkLiAKIFBBU1MgPCBbdGVzdC1yZXN1bWVdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDQgYXNzZXJ0aW9ucykgCiBQQVNTID4gW3Rlc3QtYWZ0
ZXItY2xvc2VdIFRlc3Qgc3RhdGUgYWZ0ZXIgY29udGV4dCBjbG9zZWQgCiBQQVNTICAgcDMgPSBv
ZmZsaW5lQ29udGV4dC5zdGFydFJlbmRlcmluZygpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKIFBBU1MgICBBZnRlciBjbG9zZSwgb2ZmbGluZUNvbnRleHQuc3RhdGUgaXMgZXF1YWwgdG8g
Y2xvc2VkLiAKLVBBU1MgICBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVj
dGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBz
dGF0ZS4uIAotUEFTUyAgIG9mZmxpbmVDb250ZXh0LnJlc3VtZSgpIHJlamVjdGVkIGNvcnJlY3Rs
eSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuLiAKK1BBU1MgICBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgcmVqZWN0ZWQgY29ycmVjdGx5
IHdpdGggVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4gCitQQVNTICAgb2ZmbGluZUNv
bnRleHQucmVzdW1lKCkgcmVqZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6
IENhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQgaGFzIG5vdCBzdGFy
dGVkLiAKIFBBU1MgPCBbdGVzdC1hZnRlci1jbG9zZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAo
dG90YWwgNCBhc3NlcnRpb25zKSAKIFBBU1MgPiBbcmVzdW1lLXJ1bm5pbmctY29udGV4dF0gVGVz
dCByZXN1bWluZyBhIHJ1bm5pbmcgY29udGV4dCAKIFBBU1MgICBDcmVhdGUgb25saW5lIGNvbnRl
eHQgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL3N1c3BlbmQtYWZ0ZXItY29uc3RydWN0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9zdXNwZW5kLWFmdGVy
LWNvbnN0cnVjdC1leHBlY3RlZC50eHQKaW5kZXggMzE3NDQyY2MxNmExMGY0Mzc3OWMwZWM5NGQ5
ZjQ2MTQ0YTUwMWMxYy4uMTYxMmViZGFhZjRkNmEzYzNmNjhkM2RhM2JhZmEzZDQ5ZTk2MjcxYyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL3N1c3BlbmQt
YWZ0ZXItY29uc3RydWN0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29u
dGV4dC1pbnRlcmZhY2Uvc3VzcGVuZC1hZnRlci1jb25zdHJ1Y3QtZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCi1GQUlMIFN0YXRlIGNoYW5nZSBjb3VudGluZyBhc3NlcnRfbGVzc190aGFu
X2VxdWFsOiBjdHggMSBzdGF0ZSBjaGFuZ2UgY291bnQuIGV4cGVjdGVkIGEgbnVtYmVyIGxlc3Mg
dGhhbiBvciBlcXVhbCB0byAxIGJ1dCBnb3QgMgorUEFTUyBTdGF0ZSBjaGFuZ2UgY291bnRpbmcg
CiBQQVNTIEl0ZXJhdGlvbiAxIAogUEFTUyBJdGVyYXRpb24gMiAKIFBBU1MgSXRlcmF0aW9uIDMg
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2Rl
LWRpc2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlv
bm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWRpc2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50
eHQKaW5kZXggODc3YTcwMjczZWM3ODlkZTBiODdmYTg2YTBiM2UxZjBlNzcxNGVkNS4uZGQ1NmM0
NGQ5Mjg0YjA1NTdhMTExYmY2NGJkNmI3ZGNlZmFmMzA5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1hdWRpb25vZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlvcGFyYW0t
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRp
b25vZGUtZGlzY29ubmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDQgQEAK
IAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KIFBBU1MgIyBBVURJVCBUQVNLIFJV
Tk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0pIiAK
IFBBU1MgRXhlY3V0aW5nICJkaXNjb25uZWN0KEF1ZGlvUGFyYW0sIG91dHB1dCkiIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNlL2F1ZGlvd29ya2xldG5v
ZGUtY2hhbm5lbC1jb3VudC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlv
d29ya2xldC1pbnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCA5ZDAxZGI2ZDIyY2Y4ZTQ2M2QzNzBiMzJmNDYxYjhlZjBjZTIxNGUz
Li5lMDE3ODA4NzAwYjg2ZmRkMDIzMTNlYWY4Mjk3NWExNzg5N2IzZjU5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFu
bmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29y
a2xldC1pbnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVj
dGVkLnR4dApAQCAtMSwxMSArMSwzNCBAQAotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJv
bWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGlu
dmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVk
IHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMg
QVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBGQUlMIEV4ZWN1dGluZyAic2V0dXAtYnVmZmVy
LWFuZC13b3JrbGV0IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdjb250ZXh0LmF1ZGlvV29ya2xldC5hZGRNb2R1bGUnKSIKLVRJTUVPVVQgRXhlY3V0aW5n
ICJ2ZXJpZnktcmVuZGVyZWQtYnVmZmVyIiBUZXN0IHRpbWVkIG91dAotTk9UUlVOIEF1ZGl0IHJl
cG9ydCAKK1BBU1MgRXhlY3V0aW5nICJ2ZXJpZnktcmVuZGVyZWQtYnVmZmVyIiAKK1BBU1MgQXVk
aXQgcmVwb3J0IAogUEFTUyA+IFtzZXR1cC1idWZmZXItYW5kLXdvcmtsZXRdICAKIFBBU1MgPiBb
dmVyaWZ5LXJlbmRlcmVkLWJ1ZmZlcl0gIAorUEFTUyAgIEZpcnN0IGhhbGYgb2YgQ2hhbm5lbCAj
MCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK0ZBSUwgWCBTZWNvbmQgaGFsZiBvZiBD
aGFubmVsICMwOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBl
Y3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQkwCisJWzFdCTAKKwlbMl0JMAorCVsz
XQkwCisJLi4uYW5kIDEyNCBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitQQVNTICAgRmlyc3QgaGFsZiBvZiBDaGFubmVsICMxIGNvbnRhaW5zIG9ubHkg
dGhlIGNvbnN0YW50IDAuIAorRkFJTCBYIFNlY29uZCBoYWxmIG9mIENoYW5uZWwgIzE6IEV4cGVj
dGVkIDIgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyOCB1bmV4cGVjdGVkIHZhbHVlczogCisJ
SW5kZXgJQWN0dWFsCisJWzBdCTAKKwlbMV0JMAorCVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI0
IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1Mg
ICBGaXJzdCBoYWxmIG9mIENoYW5uZWwgIzIgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4g
CitGQUlMIFggU2Vjb25kIGhhbGYgb2YgQ2hhbm5lbCAjMjogRXhwZWN0ZWQgMyBmb3IgYWxsIHZh
bHVlcyBidXQgZm91bmQgMTI4IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlb
MF0JMAorCVsxXQkwCisJWzJdCTAKKwlbM10JMAorCS4uLmFuZCAxMjQgbW9yZSBlcnJvcnMuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFt2ZXJpZnktcmVuZGVy
ZWQtYnVmZmVyXSAzIG91dCBvZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklT
SEVEOiAxIG91dCBvZiAyIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQt
aW50ZXJmYWNlL3N1c3BlbmRlZC1jb250ZXh0LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9zdXNwZW5kZWQtY29udGV4
dC1tZXNzYWdlcG9ydC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggMzNjNWE5Y2Q3MDIyY2FjZDVj
MDIwY2YxODk4NzBmMGZkMjNlZGJjMi4uNTkwZTBkNzFmMmQ3ZjY0YjU4Yzg1ZmFkNjMyNjMxNTI4
MDk3ZWMyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3dvcmtsZXQtaW50ZXJmYWNl
L3N1c3BlbmRlZC1jb250ZXh0LW1lc3NhZ2Vwb3J0Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1pbnRlcmZhY2Uvc3VzcGVuZGVkLWNvbnRleHQtbWVz
c2FnZXBvcnQuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCiBGQUlMIHJlYWx0
aW1lIHN1c3BlbmRlZCBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1
ZTogb2JqZWN0ICJUeXBlRXJyb3I6IHVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0
aW5nICdyZWFsdGltZS5hdWRpb1dvcmtsZXQuYWRkTW9kdWxlJykiCiBGQUlMIG9mZmxpbmUgYmVm
b3JlIHN0YXJ0IHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBv
YmplY3QgIlR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcg
J29mZmxpbmUuYXVkaW9Xb3JrbGV0LmFkZE1vZHVsZScpIgotRkFJTCBvZmZsaW5lIG9uIGNvbXBs
ZXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3Qg
IkludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuIgor
RkFJTCBvZmZsaW5lIG9uIGNvbXBsZXRlIHByb21pc2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlv
biB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBBdWRpb1dvcmtsZXROb2RlIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZp
bHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQu
dHh0CmluZGV4IDUyODgyZDI4MzVjNTJjMGUzODM3MGY0ZWRmZTA0NDgwMTNhZGNjM2IuLjBlNTk2
NDE5NzAyYzEyZTI0Mjg4MjY2MTNlNjkxNzAyNmI0ZjUxMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYmlxdWFkZmlsdGVybm9kZS1pbnRlcmZhY2Uvbm8tZGV6
aXBwZXJpbmctZXhwZWN0ZWQudHh0CkBAIC0xLDE2ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTog
VW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJv
bWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGlu
dmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlv
bjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4K
LUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3Rh
dGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNT
QUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUg
b2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxl
ZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVq
ZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFs
aWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xF
IE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5o
YW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlz
ZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFs
aWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJl
amVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVE
SVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiVGVzdCAwIiAKQEAgLTI0
LDE4ICsxMSwxOCBAQCBQQVNTID4gW1Rlc3QgMF0gTm8gZGV6aXBwZXJpbmcgZm9yIGZyZXF1ZW5j
eQogUEFTUyAgIEF0IHRpbWUgMCwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDM1MC4gCiBQQVNTICAg
QXQgdGltZSAwLjAxNTYyNSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDgwMC4gCiBQQVNTICAgQXQg
dGltZSAwLjA1NDY4NzUsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAyMDAuIAotRkFJTCBYIE91dHB1
dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNzQxODMwNzA2NTk2
Mzc0NSwwLjM1NTIwNDMxMzk5MzQ1NCwwLjUzNjQ4Njc0NDg4MDY3NjMsMC43MTE0MDU4NzMyOTg2
NDUsMC44NzM1MDY2NjUyMjk3OTc0LDEuMDE2NzEzODU3NjUwNzU2OCwxLjEzNTUyODMyNjAzNDU0
NiwxLjIyNTIwMjc5ODg0MzM4MzgsMS4yODE4OTYyMzM1NTg2NTQ4LDEuMzAyNzk3MTk4Mjk1NTkz
MywxLjI4NjIxMzk5NDAyNjE4NCwxLjIzMTYzMzkwMTU5NjA2OTMsMS4xMzk3NDE3NzgzNzM3MTgz
LDEuMDEyNDA1Mjc2Mjk4NTIzLDAuODUyNjIyMTUxMzc0ODE2OS4uLl0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAzMDM5OSwicmVs
YXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJTCBYIE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIg
ZG9lcyBub3QgZXF1YWwgWzAuNzg2MzU2MjEwNzA4NjE4MiwwLjk2NzY2MTg1NzYwNDk4MDUsMS4x
MzU3NzI0NjY2NTk1NDYsMS4yODU4MjQ3NzU2OTU4MDA4LDEuNDEzMzkyNzgyMjExMzAzNywxLjUx
NDYxNzY4MTUwMzI5NiwxLjU4NjMyMzE0MjA1MTY5NjgsMS42MjYxMTEyNjg5OTcxOTI0LDEuNjMy
NDM1Njc5NDM1NzMsMS42MDQ2NTA4NTUwNjQzOTIsMS41NDMwMzY1ODAwODU3NTQ0LDEuNDQ4Nzk0
MTI2NTEwNjIwMSwxLjMyNDAxODk1NTIzMDcxMywxLjE3MTY0NTA0NTI4MDQ1NjUsMC45OTUzNjc2
NDYyMTczNDYyLDAuNzk5NTQyMTI5MDM5NzY0NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAzMDM5OSwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJ
CVRlc3QgdGhyZXNob2xkCi0JWzI1Nl0JLTEuMzUxNDM1MTg0NDc4NzU5OGUrMAktMS4yOTg5MTUy
NjY5OTA2NjE2ZSswCTUuMjUxOTkxNzQ4ODA5ODE0NWUtMgk0LjA0MzM2NzQ3OTIxODAwNjBlLTIJ
My4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JWzI1N10JLTEuMTg3OTQ5NDE5MDIxNjA2NGUrMAktMS4w
NDY3ODI4NTEyMTkxNzcyZSswCTEuNDExNjY1Njc4MDI0MjkyMGUtMQkxLjM0ODU3NTQ3MjM0Mzgw
MDRlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JWzI1OF0JLTkuOTA3MjAwMzM2NDU2Mjk4OGUt
MQktNy40MjMyMzY5NjYxMzMxMTc3ZS0xCTIuNDgzOTYzMzcwMzIzMTgxMmUtMQkzLjM0NjE5OTc1
MzA5Mzg1NDJlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JWzI1OV0JLTcuNjUzNDkyNjg5MTMy
NjkwNGUtMQktNC4wODA1MDA5MDA3NDUzOTE4ZS0xCTMuNTcyOTkxNzg4Mzg3Mjk4NmUtMQk4Ljc1
NjI1NzgxMDczNzQzNzhlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JWzI2MF0JLTUuMTgyMzg2
NjM2NzM0MDA4OGUtMQktNi41MjMyODg3ODY0MTEyODU0ZS0yCTQuNTMwMDU3NzU4MDkyODgwMmUt
MQk2Ljk0NDQzODQ2NzE4NzcxNjBlKzAJMy4wMzk4OTk5OTk5OTk5OTk5ZS02Ci0JLi4uYW5kIDE3
ODcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDguMzA4MDcwNjc0NTM4NjEyNGUtMSBh
dCBpbmRleCBvZiAyNzcuCi0JWzI3N10JOS4wNzY1NzQ0NDQ3NzA4MTMwZS0xCTcuNjg1MDM3NzAy
MzIyMDA2MmUtMgk4LjMwODA3MDY3NDUzODYxMjRlLTEJMS4wODEwNzA5MDYzOTYyNTA5ZSsxCTMu
MDM5ODk5OTk5OTk5OTk5OWUtNgotCU1heCBSZWxFcnJvciBvZiAyLjM2MzE5MzA0NzY0NDAyNzVl
KzMgYXQgaW5kZXggb2YgNjUwLgotCVs2NTBdCTcuNjEwMjk0MjIyODMxNzI2MWUtMQkzLjIxODk4
MTcyODQyMzM4NjhlLTQJNy42MDcwNzUyNDExMDMzMDI3ZS0xCTIuMzYzMTkzMDQ3NjQ0MDI3NWUr
MwkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlbMF0JNy4zMDEwMDU3MjEwOTIyMjQxZS0xCTcuODYz
NTYyMTA3MDg2MTgxNmUtMQk1LjYyNTU2Mzg1OTkzOTU3NTJlLTIJNy4xNTM5NjM3OTMxNjQ2MDk3
ZS0yCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCVsxXQk5LjkyMzIxMjUyODIyODc1OThlLTEJOS42
NzY2MTg1NzYwNDk4MDQ3ZS0xCTIuNDY1OTM5NTIxNzg5NTUwOGUtMgkyLjU0ODM0ODM3NDM5Mjc4
MDllLTIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJWzJdCTEuMjI2OTUxNTk5MTIxMDkzOGUrMAkx
LjEzNTc3MjQ2NjY1OTU0NTllKzAJOS4xMTc5MTMyNDYxNTQ3ODUyZS0yCTguMDI3OTQwMDI2NTU0
NTcxMWUtMgkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlbM10JMS40Mjc0MTA4NDA5ODgxNTkyZSsw
CTEuMjg1ODI0Nzc1Njk1ODAwOGUrMAkxLjQxNTg2MDY1MjkyMzU4NDBlLTEJMS4xMDExMzAzMjQ4
MjAwNDkyZS0xCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCVs0XQkxLjU4ODA2MTMzMjcwMjYzNjdl
KzAJMS40MTMzOTI3ODIyMTEzMDM3ZSswCTEuNzQ2Njg1NTA0OTEzMzMwMWUtMQkxLjIzNTgxMDQw
MzgwMDU0NzFlLTEJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJLi4uYW5kIDExNDcgbW9yZSBlcnJv
cnMuCisJTWF4IEFic0Vycm9yIG9mIDguOTI2NTM4ODI1MDM1MDk1MmUtMSBhdCBpbmRleCBvZiA0
Mi4KKwlbNDJdCTEuNjU3MzMzMzc0MDIzNDM3NWUrMAk3LjY0Njc5NDkxNTE5OTI3OThlLTEJOC45
MjY1Mzg4MjUwMzUwOTUyZS0xCTEuMTY3MzU2OTAyMzM5ODQzMWUrMAkzLjAzOTg5OTk5OTk5OTk5
OTllLTYKKwlNYXggUmVsRXJyb3Igb2YgMS43Njc3ODkxMTM0NjU1Njc4ZSsyIGF0IGluZGV4IG9m
IDY4OC4KKwlbNjg4XQktMS42OTY0NDExNzM1NTM0NjY4ZS0xCTkuNjUwOTkzNzQyOTgwMDYzMGUt
NAkxLjcwNjA5MjE2NzI5NjQ0NjllLTEJMS43Njc3ODkxMTM0NjU1Njc4ZSsyCTMuMDM5ODk5OTk5
OTk5OTk5OWUtNgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBY
IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRw
dXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCiBGQUlMIDwgW1Rlc3QgMF0gMiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKQEAgLTQzLDE4ICszMCwxOCBA
QCBQQVNTID4gW1Rlc3QgMV0gTm8gZGV6aXBwZXJpbmcgZm9yIGRldHVuZQogUEFTUyAgIEF0IHRp
bWUgMCwgZGV0dW5lIGlzIGVxdWFsIHRvIDMzLiAKIFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBk
ZXR1bmUgaXMgZXF1YWwgdG8gMTAwMC4gCiBQQVNTICAgQXQgdGltZSAwLjAzOTA2MjUsIGRldHVu
ZSBpcyBlcXVhbCB0byAtNDAwLiAKLUZBSUwgWCBPdXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGRv
ZXMgbm90IGVxdWFsIFswLDAuMTczMTYxNjEwOTYwOTYwNCwwLjM1MTU3NTI4NTE5NjMwNDMsMC41
Mjk1MTA0OTgwNDY4NzUsMC43MDEwNDA2ODUxNzY4NDk0LDAuODYwMjM4NjcxMzAyNzk1NCwxLjAw
MTM3NTY3NTIwMTQxNiwxLjExOTExNzYxNzYwNzExNjcsMS4yMDg3MTEwMjgwOTkwNiwxLjI2NjE1
NTQ4MTMzODUwMSwxLjI4ODM1MzQ0MzE0NTc1MiwxLjI3MzIzMjQ2MDAyMTk3MjcsMS4yMTk4NDAx
Njg5NTI5NDIsMS4xMjg0MDA1NjQxOTM3MjU2LDEuMDAwMzM4MTk2NzU0NDU1NiwwLjgzODI2MDU5
MTAzMDEyMDguLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLjAwMDAwNDA1MzIsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCBP
dXRwdXQgZnJvbSBkZXR1bmUgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFsxLjE0NzY2MDk3MDY4Nzg2
NjIsMS4xNTYxOTU0MDIxNDUzODU3LDEuMTM3MTU2NzI0OTI5ODA5NiwxLjA4OTEzMzYyMDI2MjE0
NiwxLjAxMTUzMzk3NTYwMTE5NjMsMC45MDQ2Mjk3MDczMzY0MjU4LDAuNzY5NTc2Nzg3OTQ4NjA4
NCwwLjYwODQwODgwODcwODE5MDksMC40MjQwMDQ4MjI5Njk0MzY2NSwwLjIyMDAyODc1ODA0OTAx
MTIzLDAuMDAwODQ2MTQyODgwNjE4NTcyMiwtMC4yMjg1ODI0NDE4MDY3OTMyLC0wLjQ2MjgyNjgx
ODIyNzc2Nzk0LC0wLjY5NjEzMDMzNTMzMDk2MzEsLTAuOTIyNTY0MDg5Mjk4MjQ4MywtMS4xMzYx
ODk4MTgzODIyNjMyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNv
bHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5k
ZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQK
LQlbMjU2XQktMi40MTIzNjY4NjcwNjU0Mjk3ZSswCS0yLjMyNDQ2NTc1MTY0Nzk0OTJlKzAJOC43
OTAxMTE1NDE3NDgwNDY5ZS0yCTMuNzgxNTYyMDc5NTk0NTE1MWUtMgk0LjA1MzE5OTk5OTk5OTk5
OTZlLTYKLQlbMjU3XQktMi4yMzE0Njc5NjIyNjUwMTQ2ZSswCS0xLjk3ODY4NjgwOTUzOTc5NDll
KzAJMi41Mjc4MTE1MjcyNTIxOTczZS0xCTEuMjc3NTE5Nzc0NzY0MjEyNWUtMQk0LjA1MzE5OTk5
OTk5OTk5OTZlLTYKLQlbMjU4XQktMS45ODczNjkwNjA1MTYzNTc0ZSswCS0xLjUxMTE2ODAwMzA4
MjI3NTRlKzAJNC43NjIwMTA1NzQzNDA4MjAzZS0xCTMuMTUxMjExODg2ODUwMzgxM2UtMQk0LjA1
MzE5OTk5OTk5OTk5OTZlLTYKLQlbMjU5XQktMS42ODcwMjQ3MTI1NjI1NjEwZSswCS05LjUzMDM2
MzA4Mjg4NTc0MjJlLTEJNy4zMzk4ODQwNDI3Mzk4NjgyZS0xCTcuNzAxNTc4NjA2MDg3NDcyNWUt
MQk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlbMjYwXQktMS4zMzg5ODEyNzA3OTAxMDAxZSswCS0z
LjQwNTY1MDg1NDExMDcxNzhlLTEJOS45ODQxNjE4NTM3OTAyODMyZS0xCTIuOTMxNjQ1NzUwMzk3
MjAwOWUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQkuLi5hbmQgMTc4NyBtb3JlIGVycm9ycy4K
LQlNYXggQWJzRXJyb3Igb2YgMi44MDYzMDA0NjEyOTIyNjY4ZSswIGF0IGluZGV4IG9mIDI3Ny4K
LQlbMjc3XQkxLjg3MTA5MDI5MjkzMDYwMzBlKzAJLTkuMzUyMTAxNjgzNjE2NjM4MmUtMQkyLjgw
NjMwMDQ2MTI5MjI2NjhlKzAJMy4wMDA3MTYzNjk2NzgxMTEwZSswCTQuMDUzMTk5OTk5OTk5OTk5
NmUtNgotCU1heCBSZWxFcnJvciBvZiAxLjk0MzUyMjY3NjUxNjkxMzRlKzMgYXQgaW5kZXggb2Yg
NjUwLgotCVs2NTBdCTEuNjQ1MzQ0MDE4OTM2MTU3MmUrMAk4LjQ2MTQyODgwNjE4NTcyMjRlLTQJ
MS42NDQ0OTc4NzYwNTU1Mzg3ZSswCTEuOTQzNTIyNjc2NTE2OTEzNGUrMwk0LjA1MzE5OTk5OTk5
OTk5OTZlLTYKKwlbMF0JMi45MDAxNzgxOTQwNDYwMjA1ZSswCTEuMTQ3NjYwOTcwNjg3ODY2MmUr
MAkxLjc1MjUxNzIyMzM1ODE1NDNlKzAJMS41MjcwMzM5MTM0MjgwNzM5ZSswCTQuMDUzMTk5OTk5
OTk5OTk5NmUtNgorCVsxXQkzLjA2MzA1ODM3NjMxMjI1NTllKzAJMS4xNTYxOTU0MDIxNDUzODU3
ZSswCTEuOTA2ODYyOTc0MTY2ODcwMWUrMAkxLjY0OTI1NjY2NTk4MjczODFlKzAJNC4wNTMxOTk5
OTk5OTk5OTk2ZS02CisJWzJdCTMuMTQwMzkyMzAzNDY2Nzk2OWUrMAkxLjEzNzE1NjcyNDkyOTgw
OTZlKzAJMi4wMDMyMzU1Nzg1MzY5ODczZSswCTEuNzYxNjE3ODQ0NDE4NjE4OGUrMAk0LjA1MzE5
OTk5OTk5OTk5OTZlLTYKKwlbM10JMy4xMjk5NjEwMTM3OTM5NDUzZSswCTEuMDg5MTMzNjIwMjYy
MTQ2MGUrMAkyLjA0MDgyNzM5MzUzMTc5OTNlKzAJMS44NzM4MDgwOTQ0MDEyOTg1ZSswCTQuMDUz
MTk5OTk5OTk5OTk5NmUtNgorCVs0XQkzLjAzMjAwMDU0MTY4NzAxMTdlKzAJMS4wMTE1MzM5NzU2
MDExOTYzZSswCTIuMDIwNDY2NTY2MDg1ODE1NGUrMAkxLjk5NzQyODI3NzA3MjkxNjhlKzAJNC4w
NTMxOTk5OTk5OTk5OTk2ZS02CisJLi4uYW5kIDE0MDMgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vy
cm9yIG9mIDIuNDA0NDAyMzE1NjE2NjA3N2UrMCBhdCBpbmRleCBvZiA5NC4KKwlbOTRdCS0yLjk5
ODM3NDQ2MjEyNzY4NTVlKzAJLTUuOTM5NzIxNDY1MTEwNzc4OGUtMQkyLjQwNDQwMjMxNTYxNjYw
NzdlKzAJNC4wNDgwMDUxNjI3NjY5NDU2ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCU1heCBS
ZWxFcnJvciBvZiAxLjA3ODU5OTI3NzUyMTM4MzNlKzMgYXQgaW5kZXggb2YgMTAuCisJWzEwXQk5
LjEzNDk1MjQyNTk1NjcyNjFlLTEJOC40NjE0Mjg4MDYxODU3MjI0ZS00CTkuMTI2NDkwOTk3MTUw
NTQwNGUtMQkxLjA3ODU5OTI3NzUyMTM4MzNlKzMJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CiAgYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggT3V0cHV0IGZyb20gZGV0
dW5lIHNldHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290
IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVz
dCAxXSAyIG91dCBvZiA1IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQpAQCAtNjIsMTEgKzQ5LDExIEBAIFBBU1MgPiBbVGVzdCAyXSBO
byBkZXppcHBlcmluZyBmb3IgUQogUEFTUyAgIEF0IHRpbWUgMCwgUSBpcyBlcXVhbCB0byA1LiAK
IFBBU1MgICBBdCB0aW1lIDAuMDE1NjI1LCBRIGlzIGVxdWFsIHRvIDEwLiAKIFBBU1MgICBBdCB0
aW1lIDAuMDYyNSwgUSBpcyBlcXVhbCB0byAtMTAuIAotRkFJTCBYIE91dHB1dCBmcm9tIFEgc2V0
dGVyIGRvZXMgbm90IGVxdWFsIFswLDAuMTY3OTM4MzA2OTI3NjgwOTcsMC4zMzExMDYzMDUxMjIz
NzU1LDAuNDg0ODY5MjQxNzE0NDc3NTQsMC42MjQ4NTk1MTE4NTIyNjQ0LDAuNzQ3MTAwNTkxNjU5
NTQ1OSwwLjg0ODEyMDMzMTc2NDIyMTIsMC45MjUwNDkzNjQ1NjY4MDMsMC45NzU3MDIyMjYxNjE5
NTY4LDAuOTk4NjQwMTc5NjM0MDk0MiwwLjk5MzIxMjA0NDIzOTA0NDIsMC45NTk1NzE0MjExNDYz
OTI4LDAuODk4Njc0NDg4MDY3NjI3LDAuODEyMjUwNTU0NTYxNjE1LDAuNzAyNzU0Nzk1NTUxMyww
LjU3MzI5NzE0Mjk4MjQ4MjkuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7
ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggT3V0
cHV0IGZyb20gUSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcs
LTAuMzMxMTA2MzA1MTIyMzc1NSwtMC40ODQ4NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIy
NjQ0LC0wLjc0NzEwMDU5MTY1OTU0NTksLTAuODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1
NjY4MDMsLTAuOTc1NzAyMjI2MTYxOTU2OCwtMC45OTg2NDAxNzk2MzQwOTQyLC0wLjk5MzIxMjA0
NDIzOTA0NDIsLTAuOTU5NTcxNDIxMTQ2MzkyOCwtMC44OTg2NzQ0ODgwNjc2MjcsLTAuODEyMjUw
NTU0NTYxNjE1LC0wLjcwMjc1NDc5NTU1MTMsLTAuNTczMjk3MTQyOTgyNDgyOS4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0
aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJl
bEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxMDI0XQk2Ljg4MzM4Mjc1MjY3NTk3MDZlLTE1CTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAk2Ljg4MzM4Mjc1MjY3NTk3MDZlLTE1CUluZmluaXR5CTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAotCU1heCBBYnNFcnJvciBvZiA2Ljg4MzM4Mjc1MjY3NTk3MDZlLTE1
IGF0IGluZGV4IG9mIDEwMjQuCi0JTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9m
IDEwMjQuCisJWzBdCTIuNzc1NTU3NTYxNTYyODkxNGUtMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CTIuNzc1NTU3NTYxNTYyODkxNGUtMTYJSW5maW5pdHkJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJ
TWF4IEFic0Vycm9yIG9mIDIuNzc1NTU3NTYxNTYyODkxNGUtMTYgYXQgaW5kZXggb2YgMC4KKwlN
YXggUmVsRXJyb3Igb2YgSW5maW5pdHkgYXQgaW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCBPdXRwdXQgZnJvbSBRIHNldHRlciBtYXRjaGVz
IHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVzdCAyXSAyIG91dCBvZiA1IGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQpAQCAtNzQsNDMgKzYxLDQzIEBAIFBBU1MgPiBbVGVzdCAzXSBObyBkZXppcHBlcmluZyBmb3Ig
Z2FpbgogUEFTUyAgIEF0IHRpbWUgMCwgZ2FpbiBpcyBlcXVhbCB0byAxLiAKIFBBU1MgICBBdCB0
aW1lIDAuMDE1NjI1LCBnYWluIGlzIGVxdWFsIHRvIDUuIAogUEFTUyAgIEF0IHRpbWUgMC4wNDY4
NzUsIGdhaW4gaXMgZXF1YWwgdG8gLTAuMy4gCi1GQUlMIFggT3V0cHV0IGZyb20gZ2FpbiBzZXR0
ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNjkxNTU4MDYzMDMwMjQzLDAuMzM1Nzc2NDE4NDQ3NDk0
NSwwLjQ5NDgwMDMyOTIwODM3NCwwLjY0MTM4Nzk5OTA1Nzc2OTgsMC43NzEwNjM5MjM4MzU3NTQ0
LDAuODc5ODQ4MTIyNTk2NzQwNywwLjk2NDM3MjI3NzI1OTgyNjcsMS4wMjE5NzczMDU0MTIyOTI1
LDEuMDUwNzkxNzQwNDE3NDgwNSwxLjA0OTc4NjQ0ODQ3ODY5ODcsMS4wMTg4MDI1MjM2MTI5NzYs
MC45NTg1NTkwOTU4NTk1Mjc2LDAuODcwNjI5NzI3ODQwNDIzNiwwLjc1NzM5OTI2MDk5Nzc3MjIs
MC42MjE5OTM4Mzk3NDA3NTMyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDE5MDc0LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0u
CitGQUlMIFggT3V0cHV0IGZyb20gZ2FpbiBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWy0wLjg0NDg2
NzIyOTQ2MTY2OTksLTEuMDM0NTM1NjQ2NDM4NTk4NiwtMS4xODY2MDYxNjg3NDY5NDgyLC0xLjI5
OTQ3MzI4NTY3NTA0ODgsLTEuMzcyMzkxMTA0Njk4MTgxMiwtMS40MDU0ODYzNDUyOTExMzc3LC0x
LjM5OTc1MDU5MDMyNDQwMTksLTEuMzU3MDEzOTQwODExMTU3MiwtMS4yNzk4OTg2NDM0OTM2NTIz
LC0xLjE3MTc1MzY0NDk0MzIzNzMsLTEuMDM2NTcyMDk4NzMxOTk0NiwtMC44Nzg4OTE2NDY4NjIw
MywtMC43MDM2ODQzODk1OTEyMTcsLTAuNTE2MjMxMjM4ODQyMDEwNSwtMC4zMjE5OTIwMDk4Nzgx
NTg1NywtMC4xMjY0NjkzMjg5OTk1MTkzNS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJh
bmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAxOTA3NCwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRl
c3QgdGhyZXNob2xkCi0JWzI1Nl0JLTguMTA3NjE5Mjg1NTgzNDk2MWUtMQktOC4wNDg5MjAwMzUz
NjIyNDM3ZS0xCTUuODY5OTI1MDIyMTI1MjQ0MWUtMwk3LjI5MjgxMDcwNzk0MTIyNTllLTMJMS45
MDc0MDAwMDAwMDAwMDAyZS02Ci0JWzI1N10JLTYuNzQ1NTMyMTU1MDM2OTI2M2UtMQktNi41NjIz
OTUwOTU4MjUxOTUzZS0xCTEuODMxMzcwNTkyMTE3MzA5NmUtMgkyLjc5MDcwNDU2MDQxNjMyNDZl
LTIJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JWzI1OF0JLTUuMTkxODM5MzM3MzQ4OTM4MGUtMQkt
NC44MTUzMzczNTk5MDUyNDI5ZS0xCTMuNzY1MDE5Nzc0NDM2OTUwN2UtMgk3LjgxODgwNzg5MDM1
OTM5ODVlLTIJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JWzI1OV0JLTMuNDkwNjcyNDA5NTM0NDU0
M2UtMQktMi44NTI1NjQxNTYwNTU0NTA0ZS0xCTYuMzgxMDgyNTM0NzkwMDM5MWUtMgkyLjIzNjk2
MzcyMzA1NzQ1MjFlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JWzI2MF0JLTEuNjkwMzUyMTEy
MDU0ODI0OGUtMQktNy4yNjgyODc5ODY1MTY5NTI1ZS0yCTkuNjM1MjMzMTM0MDMxMjk1OGUtMgkx
LjMyNTY1MzczNzQyODI4NDJlKzAJMS45MDc0MDAwMDAwMDAwMDAyZS02Ci0JLi4uYW5kIDE3ODcg
bW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDYuMDAxMzA2NzcyMjMyMDU1N2UtMSBhdCBp
bmRleCBvZiAyOTEuCi0JWzI5MV0JLTEuMDI3MzAzMjE4ODQxNTUyN2UrMAktMS42Mjc0MzM4OTYw
NjQ3NTgzZSswCTYuMDAxMzA2NzcyMjMyMDU1N2UtMQkzLjY4NzU4ODY1NTIwOTY1NzZlLTEJMS45
MDc0MDAwMDAwMDAwMDAyZS02Ci0JTWF4IFJlbEVycm9yIG9mIDcuMTE2Mjk1Mzc0Mzk3MDY0N2Ur
MSBhdCBpbmRleCBvZiAxNTA4LgotCVsxNTA4XQk2LjE3NDQ0NzM4NzQ1Njg5MzllLTIJLTguODAw
MTUzMTU0ODc5ODA4NGUtNAk2LjI2MjQ0ODkxOTAwNTY5MjBlLTIJNy4xMTYyOTUzNzQzOTcwNjQ3
ZSsxCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgorCVswXQktNy42NzUzMTIxNjE0NDU2MTc3ZS0xCS04
LjQ0ODY3MjI5NDYxNjY5OTJlLTEJNy43MzM2MDEzMzE3MTA4MTU0ZS0yCTkuMTUzNjI5MTg4MTQ4
ODc2M2UtMgkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlbMV0JLTkuMDY1NzIyODIzMTQzMDA1NGUt
MQktMS4wMzQ1MzU2NDY0Mzg1OTg2ZSswCTEuMjc5NjMzNjQxMjQyOTgxMGUtMQkxLjIzNjkxNTk0
OTM0MjIzNDBlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJWzJdCS0xLjAxOTczNTgxMzE0MDg2
OTFlKzAJLTEuMTg2NjA2MTY4NzQ2OTQ4MmUrMAkxLjY2ODcwMzU1NjA2MDc5MTBlLTEJMS40MDYy
ODI1NTYwOTI2NzIwZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgorCVszXQktMS4xMDM4NTI2Mjk2
NjE1NjAxZSswCS0xLjI5OTQ3MzI4NTY3NTA0ODhlKzAJMS45NTYyMDY1NjAxMzQ4ODc3ZS0xCTEu
NTA1Mzg0MjA1ODE1ODgxN2UtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlbNF0JLTEuMTU2NTc0
NzI2MTA0NzM2M2UrMAktMS4zNzIzOTExMDQ2OTgxODEyZSswCTIuMTU4MTYzNzg1OTM0NDQ4MmUt
MQkxLjU3MjU1NzM5ODk0MTM3MjFlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJLi4uYW5kIDEy
NzUgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDIuNTM1MDIwMTEyOTkxMzMzMGUtMSBh
dCBpbmRleCBvZiAyMC4KKwlbMjBdCTkuNDUyMzE0OTcyODc3NTAyNGUtMQk2LjkxNzI5NDg1OTg4
NjE2OTRlLTEJMi41MzUwMjAxMTI5OTEzMzMwZS0xCTMuNjY0NzU2NDc1Mzg0NzI3M2UtMQkxLjkw
NzQwMDAwMDAwMDAwMDJlLTYKKwlNYXggUmVsRXJyb3Igb2YgOC4zNzI0MTc2OTUxMzg0NDc5ZSsx
IGF0IGluZGV4IG9mIDc0MC4KKwlbNzQwXQk3LjI3OTg1NDI2NzgzNTYxNzFlLTIJLTguODAwMTUz
MTU0ODc5ODA4NGUtNAk3LjM2Nzg1NTc5OTM4NDQxNTFlLTIJOC4zNzI0MTc2OTUxMzg0NDc5ZSsx
CTEuOTA3NDAwMDAwMDAwMDAwMmUtNgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogRkFJTCBYIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRp
bWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0IDNdIDIgb3V0IG9mIDUgYXNzZXJ0aW9ucyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW1Rl
c3QgNF0gTm8gZGV6aXBwZXJpbmcgb2YgZnJlcXVlbmN5IHZzIEpTIGZpbHRlciAKLVBBU1MgICBP
dXRwdXQgZnJvbSBsb3dwYXNzIGZpbHRlciBlcXVhbHMgWzAsMC4wMDA3MTI3NTA4ODcwMzI1OTgz
LDAuMDA0MTYzOTM1MzE0ODYzOTIsMC4wMTI3MzcwODc5MDU0MDY5NTIsMC4wMjgzMDE5Nzg0ODM3
OTYxMiwwLjA1MjE2NzA3NjYxNzQ3OTMyNCwwLjA4NTA1MzQ4ODYxMjE3NDk5LDAuMTI3MDkwMzA1
MDg5OTUwNTYsMC4xNzc4MzA2NjYzMDM2MzQ2NCwwLjIzNjI4NzM1NTQyMjk3MzYzLDAuMzAwOTg2
MTExMTY0MDkzLDAuMzcwMDM0NDg2MDU1Mzc0MTUsMC40NDEyMDM2NTM4MTI0MDg0NSwwLjUxMjAy
MDIzMDI5MzI3MzksMC41Nzk4NjQ5MTkxODU2Mzg0LDAuNjQyMDc0ODIzMzc5NTE2Ni4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjUuOTYw
N2UtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKLVBBU1MgICBPdXRwdXQgbWF0Y2hlcyBKUyBm
aWx0ZXIgcmVzdWx0cyBpcyB0cnVlLiAKLVBBU1MgPCBbVGVzdCA0XSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAorRkFJTCBYIE91dHB1dCBmcm9tIGxvd3Bhc3Mg
ZmlsdGVyIGRvZXMgbm90IGVxdWFsIFstMC4wMDMwMDEwNDg0NjI0NjU0MDU1LC0wLjAxNDA2OTg5
NjE5MTM1ODU2NiwtMC4wMzM0MDIwNDgwNTEzNTcyNywtMC4wNTcyOTE0MTA4NjMzOTk1MDYsLTAu
MDgyMTY0MzAyNDY4Mjk5ODcsLTAuMTA0NzAwNjQ3Mjk0NTIxMzMsLTAuMTIxOTQwOTU1NTE5Njc2
MjEsLTAuMTMxMzc2NjM5MDA4NTIyMDMsLTAuMTMxMDIxNzM4MDUyMzY4MTYsLTAuMTE5NDY0NjA2
MDQ2Njc2NjQsLTAuMDk1ODk4ODE0NDk5Mzc4MiwtMC4wNjAxMzMwMjEzMjQ4NzI5NywtMC4wMTI1
ODAxNzQwMjE0MjI4NjMsMC4wNDU3NzI5OTU3OTk3Nzk4OSwwLjExMzQxNDcxOTcwMDgxMzMsMC4x
ODgzNzMyMjI5NDcxMjA2Ny4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsi
YWJzb2x1dGVUaHJlc2hvbGQiOjUuOTYwN2UtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorCUlu
ZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xk
CisJWzBdCS0yLjM4Nzc0OTg1MDc0OTk2OTVlLTEJLTMuMDAxMDQ4NDYyNDY1NDA1NWUtMwkyLjM1
NzczOTM2NjEyNTMxNTRlLTEJNy44NTYzODU1MTE5NzY2OTcwZSsxCTUuOTYwNzAwMDAwMDAwMDAw
MmUtNworCVsxXQktMy42MjY4MzQ3NTAxNzU0NzYxZS0xCS0xLjQwNjk4OTYxOTEzNTg1NjZlLTIJ
My40ODYxMzU3ODgyNjE4OTA0ZS0xCTIuNDc3NzI2NzMwMDY4NTU2OWUrMQk1Ljk2MDcwMDAwMDAw
MDAwMDJlLTcKKwlbMl0JLTQuNzU5MDAxNDMzODQ5MzM0N2UtMQktMy4zNDAyMDQ4MDUxMzU3MjY5
ZS0yCTQuNDI0OTgwOTUzMzM1NzYyMGUtMQkxLjMyNDc2MzM2Mzc3MTAyOTZlKzEJNS45NjA3MDAw
MDAwMDAwMDAyZS03CisJWzNdCS01Ljc0ODI1NTI1MjgzODEzNDhlLTEJLTUuNzI5MTQxMDg2MzM5
OTUwNmUtMgk1LjE3NTM0MTE0NDIwNDEzOTdlLTEJOS4wMzMzNjMwNTc3NjA1MzkwZSswCTUuOTYw
NzAwMDAwMDAwMDAwMmUtNworCVs0XQktNi41NjMyNjI5Mzk0NTMxMjUwZS0xCS04LjIxNjQzMDI0
NjgyOTk4NjZlLTIJNS43NDE2MTk5MTQ3NzAxMjYzZS0xCTYuOTg3OTczNzgyMTQ4NjY4N2UrMAk1
Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwkuLi5hbmQgMTg5MyBtb3JlIGVycm9ycy4KKwlNYXggQWJz
RXJyb3Igb2YgMS4xNDc1MjI0MTk2OTEwODU4ZSswIGF0IGluZGV4IG9mIDI5Mi4KKwlbMjkyXQkz
LjczODM0OTk3NDE1NTQyNjBlLTEJLTcuNzM2ODc0MjIyNzU1NDMyMWUtMQkxLjE0NzUyMjQxOTY5
MTA4NThlKzAJMS40ODMxODYwODYwNzU5OTE2ZSswCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCU1h
eCBSZWxFcnJvciBvZiAyLjQwODQ3MTE0OTUzMjM1MzFlKzMgYXQgaW5kZXggb2YgMTAxNC4KKwlb
MTAxNF0JLTcuNjYyMDU2Njg0NDk0MDE4NmUtMQkzLjE4MjYxNjIwMTIyOTM5MzVlLTQJNy42NjUy
MzkzMDA2OTUyNDc5ZS0xCTIuNDA4NDcxMTQ5NTMyMzUzMWUrMwk1Ljk2MDcwMDAwMDAwMDAwMDJl
LTcKKyBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBPdXRwdXQg
bWF0Y2hlcyBKUyBmaWx0ZXIgcmVzdWx0cyBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbVGVzdCA0XSAyIG91dCBvZiAy
IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogUEFTUyA+IFtUZXN0IDVdIFRlc3Qgd2l0aCBtb2R1bGF0aW9uIAogUEFTUyAgIE1vZHVs
YXRpb246IEF0IHRpbWUgMCwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDM1MC4gCiBQQVNTICAgTW9k
dWxhdGlvbjogQXQgdGltZSAwLjAxNTYyNSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIDEwLiAKIFBB
U1MgICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAuMDYyNSwgZnJlcXVlbmN5IGlzIGVxdWFsIHRvIC0x
MC4gCi1GQUlMIFggTW9kdWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNldHRlciBkb2Vz
IG5vdCBlcXVhbCBbMCwwLjE2OTIzNjg5ODQyMjI0MTIsMC4zMzYyMTQ4NDA0MTIxMzk5LDAuNDk2
MDcxNzI2MDgzNzU1NSwwLjY0NDEwNjgwNTMyNDU1NDQsMC43NzU5MTc3MDg4NzM3NDg4LDAuODg3
NTMwMjY3MjM4NjE2OSwwLjk3NTUxNTcyMzIyODQ1NDYsMS4wMzcwOTMwNDMzMjczMzE1LDEuMDcw
MjE0MDMzMTI2ODMxLDEuMDczNjI3MjMzNTA1MjQ5LDEuMDQ2OTE4MDM0NTUzNTI3OCwwLjk5MDUy
ODA0NzA4NDgwODMsMC45MDU3NDY0MDAzNTYyOTI3LDAuNzk0NjgwMTc4MTY1NDM1OCwwLjY2MDE5
ODM5MDQ4Mzg1NjIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJ
RXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMjU2XQktOC43
NDM3MTU4ODIzMDEzMzA2ZS0xCS03LjA3MTA2NzY5MDg0OTMwNDJlLTEJMS42NzI2NDgxOTE0NTIw
MjY0ZS0xCTIuMzY1NDgxNzk3OTEzNzgxNWUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMjU3
XQktNy42MzI4MDMzMjA4ODQ3MDQ2ZS0xCS01Ljc4MzEzNzY3OTEwMDAzNjZlLTEJMS44NDk2NjU2
NDE3ODQ2NjgwZS0xCTMuMTk4Mzc3MzI0NTk1Mzc0NWUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
LQlbMjU4XQktNi4zMTY4NDc4MDEyMDg0OTYxZS0xCS00LjMzMDkzODE2MDQxOTQ2NDFlLTEJMS45
ODU5MDk2NDA3ODkwMzIwZS0xCTQuNTg1NDAyOTAxNzA0NTM2N2UtMQkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAKLQlbMjU5XQktNC44MzQ0MjQyNTcyNzg0NDI0ZS0xCS0yLjc1NTcxODgyNzI0NzYxOTZl
LTEJMi4wNzg3MDU0MzAwMzA4MjI4ZS0xCTcuNTQzMjQyMTA5NzQzODY2MmUtMQkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKLQlbMjYwXQktMy4yMjg2NjU4ODgzMDk0Nzg4ZS0xCS0xLjEwMjIyMjQyNzcy
NTc5MTllLTEJMi4xMjY0NDM0NjA1ODM2ODY4ZS0xCTEuOTI5MjMyNjE4NjU2ODAxNmUrMAkwLjAw
MDAwMDAwMDAwMDAwMDBlKzAKLQkuLi5hbmQgMTc4NyBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJy
b3Igb2YgOC41NTA2MjI0NjMyMjYzMTg0ZS0xIGF0IGluZGV4IG9mIDU3MS4KLQlbNTcxXQkxLjU1
NTU5OTIxMjY0NjQ4NDRlKzAJNy4wMDUzNjk2NjMyMzg1MjU0ZS0xCTguNTUwNjIyNDYzMjI2MzE4
NGUtMQkxLjIyMDU4MTE5MzMyMzI3MDZlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJl
bEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDEwMjQuCi0JWzEwMjRdCTEuNDU2MjM3NTg0
MzUyNDkzM2UtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMS40NTYyMzc1ODQzNTI0OTMzZS0xCUlu
ZmluaXR5CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCBYIE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1ZW5jeSBzZXR0
ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBmYWxzZS4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgNV0gMiBv
dXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgICBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0
dGVyIGVxdWFscyBbMCwtMC4xNjc5MzgzMDY5Mjc2ODA5NywtMC4zMzExMDYzMDUxMjIzNzU1LC0w
LjQ4NDg2OTI0MTcxNDQ3NzU0LC0wLjYyNDg1OTUxMTg1MjI2NDQsLTAuNzQ3MTAwNTkxNjU5NTQ1
OSwtMC44NDgxMjAzMzE3NjQyMjEyLC0wLjkyNTA0OTM2NDU2NjgwMywtMC45NzU3MDIyMjYxNjE5
NTY4LC0wLjk5ODY0MDE3OTYzNDA5NDIsLTAuOTkzMjEyMDQ0MjM5MDQ0MiwtMC45NTk1NzE0MjEx
NDYzOTI4LC0wLjg5ODY3NDQ4ODA2NzYyNywtMC44MTIyNTA1NTQ1NjE2MTUsLTAuNzAyNzU0Nzk1
NTUxMywtMC41NzMyOTcxNDI5ODI0ODI5Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFu
Y2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BB
U1MgICBNb2R1bGF0aW9uOiBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIG1hdGNoZXMgc2V0
VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFTUyA8IFtUZXN0IDVdIEFsbCBhc3NlcnRp
b25zIHBhc3NlZC4gKHRvdGFsIDUgYXNzZXJ0aW9ucykgCiBGQUlMICMgQVVESVQgVEFTSyBSVU5O
RVIgRklOSVNIRUQ6IDUgb3V0IG9mIDYgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5u
ZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRpb2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5uZWxtZXJnZXJub2RlLWludGVyZmFjZS9hdWRp
b2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1leHBlY3RlZC50eHQKaW5kZXggOTkyODkwMzc1YTU2
YTc3OGMzNDEyYTg5MWZjNmY3NjE5ZjliODBhYy4uNGQ2OTNjZTFkMThkYjg0YTlkOWRmZjIzNmM1
OTNjZDNjNzdmMzA4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9k
ZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtY2hhbm5lbG1lcmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5l
bG1lcmdlci1kaXNjb25uZWN0LWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDQgQEAKIAotSGFybmVz
cyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFS
VEVELiAKIFBBU1MgRXhlY3V0aW5nICJzaWxlbnQtZGlzY29ubmVjdCIgCiBQQVNTIEF1ZGl0IHJl
cG9ydCAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2Uv
Y29udm9sdmVyLXJlc3BvbnNlLTQtY2hhbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNv
bnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0ZWQu
dHh0CmluZGV4IDFkNzJjOTU0YTdkYzU4MTYxZjgxYjJhNjM2MDA5NjI0NGE2NTQ0MmYuLjNkZDdi
NmQ1NWMwMDNjNmVmOWQ0Y2IzMDAyZmMwODU0ODllYTUwZjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9sdmVyLXJlc3BvbnNlLTQtY2hhbi1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9j
b252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDMgQEAKLUNP
TlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVF
cnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9y
IChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAog
UEFTUyBFeGVjdXRpbmcgImluaXRpYWxpemUiIApAQCAtMjMsMTAgKzIwLDEwIEBAIFBBU1MgPiBb
My1jaGFubmVsIGlucHV0XSAzLT4yIGRvd25taXggcHJvZHVjaW5nIDItY2hhbm5lbCBvdXRwdXQK
IFBBU1MgPiBbNC1jaGFubmVsIGlucHV0XSA0LT4yIGRvd25taXggcHJvZHVjaW5nIDItY2hhbm5l
bCBvdXRwdXQgCiBQQVNTID4gWzUuMS1jaGFubmVsIGlucHV0XSA1LjEtPjIgZG93bm1peCBwcm9k
dWNpbmcgMi1jaGFubmVsIG91dHB1dCAKIFBBU1MgPiBbZGVsYXllZCBidWZmZXIgc2V0XSBEZWxh
eWVkIHNldCBvZiA0LWNoYW5uZWwgcmVzcG9uc2UgCi1GQUlMIFggT3V0cHV0IHdpdGggZGVsYXll
ZCBzZXR0aW5nIG9mIGNvbnZvbHZlciBidWZmZXIgc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFz
dCBvbmUgdmFsdWUgZGlmZmVyZW50IGZyb20gMC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIDwgW2RlbGF5ZWQgYnVmZmVyIHNldF0gMSBvdXQgb2YgMSBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BB
U1MgICBPdXRwdXQgd2l0aCBkZWxheWVkIHNldHRpbmcgb2YgY29udm9sdmVyIGJ1ZmZlciBpcyBu
b3QgY29uc3RhbnRseSAwIChjb250YWlucyA3NjcgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyA8
IFtkZWxheWVkIGJ1ZmZlciBzZXRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gW2NvdW50IDEsIDItY2hhbm5lbCBpbl0gMi0+MSBkb3dubWl4IGJl
Y2F1c2UgY2hhbm5lbCBjb3VudCBpcyAxIAogUEFTUyA+IFtjb3VudCAxLCA0LWNoYW5uZWwgaW5d
IDQtPjEgZG93bm1peCBiZWNhdXNlIGNoYW5uZWwgY291bnQgaXMgMSAKIFBBU1MgPiBbY291bnQg
MSwgNS4xLWNoYW5uZWwgaW5dIDUuMS0+MSBkb3dubWl4IGJlY2F1c2UgY2hhbm5lbCBjb3VudCBp
cyAxIAotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiAxMCB0YXNr
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNT
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEwIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHku
IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlbGF5bm9kZS1pbnRlcmZhY2Uvbm8tZGV6
aXBwZXJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNl
L25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCA4ZmQ3OWEyOGZjOGExZGUxY2UzZjA4
MWZkODQ5ODQxODQxNDZmOWRhLi4wZDJkMGVmMmU4YjljZjM3OGM3OGExZGEyMmIxZmJlMTI0YjQ2
ZjhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlbGF5bm9kZS1pbnRlcmZhY2Uvbm8tZGV6
aXBwZXJpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2RlLWludGVy
ZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3RlZC50eHQKQEAgLTEsOCArMSwzIEBACi1DT05TT0xF
IE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5o
YW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlz
ZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFs
aWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0gVW5oYW5kbGVkIHJl
amVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgogCiBQQVNTICMgQVVE
SVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAidGVzdDAiIApAQCAtMTAs
NDcgKzUsNDcgQEAgUEFTUyBFeGVjdXRpbmcgInRlc3QxIgogUEFTUyBFeGVjdXRpbmcgInRlc3Qy
IiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFt0ZXN0MF0gVGVzdCBEZWxheU5vZGUgaGFz
IG5vIGRlemlwcGVyaW5nIAotUEFTUyAgIG91dHB1dFswOjYzXSBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAwLiAKLVBBU1MgICBvdXRwdXRbNjQ6MTI3XSBpcyBpZGVudGljYWwgdG8gdGhlIGFy
cmF5IFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNSwxNi4uLl0uIAorRkFJTCBY
IG91dHB1dFswOjYzXTogRXhwZWN0ZWQgMCBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgNjQgdW5l
eHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQk2NS4xNDYyNjMxMjI1NTg2CisJ
WzFdCTY2LjI5MjA3NjExMDgzOTg0CisJWzJdCTY3LjQzNzQ0NjU5NDIzODI4CisJWzNdCTY4LjU4
MjM3NDU3Mjc1MzkKKwkuLi5hbmQgNjAgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIG91dHB1dFs2NDoxMjddIGV4cGVjdGVkIHRvIGJlIGVx
dWFsIHRvIHRoZSBhcnJheSBbMSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsMTYu
Li5dIGJ1dCBkaWZmZXJzIGluIDY0IHBsYWNlczoKKwlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAor
CVswXQkxLjM3NjM2NTgxNDIwODk4NDRlKzIJMS4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzFdCTEu
Mzg3NTY1MzA3NjE3MTg3NWUrMgkyLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMl0JMS4zOTg3NjEx
Mzg5MTYwMTU2ZSsyCTMuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVszXQkxLjQwOTk1MzMwODEwNTQ2
ODhlKzIJNC4wMDAwMDAwMDAwMDAwMDAwZSswCisJLi4uYW5kIDYwIG1vcmUgZXJyb3JzLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCBvdXRwdXRbMTI4Ol0gZXhw
ZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFycmF5IFsxMTMsMTE0LDExNSwxMTYsMTE3LDExOCwx
MTksMTIwLDEyMSwxMjIsMTIzLDEyNCwxMjUsMTI2LDEyNywxMjguLi5dIGJ1dCBkaWZmZXJzIGlu
IDE2MjU2IHBsYWNlczoKIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAotCVswXQk2LjUwMDAwMDAw
MDAwMDAwMDBlKzEJMS4xMzAwMDAwMDAwMDAwMDAwZSsyCi0JWzFdCTYuNjAwMDAwMDAwMDAwMDAw
MGUrMQkxLjE0MDAwMDAwMDAwMDAwMDBlKzIKLQlbMl0JNi43MDAwMDAwMDAwMDAwMDAwZSsxCTEu
MTUwMDAwMDAwMDAwMDAwMGUrMgotCVszXQk2LjgwMDAwMDAwMDAwMDAwMDBlKzEJMS4xNjAwMDAw
MDAwMDAwMDAwZSsyCisJWzBdCTIuMDg2MjA1NDQ0MzM1OTM3NWUrMgkxLjEzMDAwMDAwMDAwMDAw
MDBlKzIKKwlbMV0JMi4wOTcxOTIwNzc2MzY3MTg4ZSsyCTEuMTQwMDAwMDAwMDAwMDAwMGUrMgor
CVsyXQkyLjEwODE3NTY1OTE3OTY4NzVlKzIJMS4xNTAwMDAwMDAwMDAwMDAwZSsyCisJWzNdCTIu
MTE5MTU2MzQxNTUyNzM0NGUrMgkxLjE2MDAwMDAwMDAwMDAwMDBlKzIKIAkuLi5hbmQgMTYyNTIg
bW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8
IFt0ZXN0MF0gMSBvdXQgb2YgMyBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbdGVzdDBdIDMgb3V0IG9mIDMgYXNzZXJ0
aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQ
QVNTID4gW3Rlc3QxXSBUZXN0IHZhbHVlIHNldHRlciBhbmQgc2V0VmFsdWVBdFRpbWUgCi1GQUlM
IFggLnZhbHVlIHNldHRlciBvdXRwdXQgZG9lcyBub3QgZXF1YWwgWzAsMCwwLDAsMC4wNTE4MDc2
MzgyNTc3NDE5MywwLjEwOTE5OTg2NjY1MjQ4ODcxLDAuMTY2MjI5ODczODk1NjQ1MTQsMC4yMjI3
MDg2NzIyODUwNzk5NiwwLjI3ODQ0ODc5MDMxMTgxMzM1LDAuMzMzMjY1NjAyNTg4NjUzNTYsMC4z
ODY5NzcwNDY3MjgxMzQxNiwwLjQzOTQwNTE3MzA2MzI3ODIsMC40OTAzNzYyNjM4NTY4ODc4LDAu
NTM5NzIwNzczNjk2ODk5NCwwLjU4NzI3NTYyNDI3NTIwNzUsMC42MzI4ODI3MTQyNzE1NDU0Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MC4wMDAwNjU4MTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCAudmFsdWUgc2V0dGVy
IG91dHB1dCBkb2VzIG5vdCBlcXVhbCBbMC41MjE0Njg4MTgxODc3MTM2LDAuNTY5NzAzODE3MzY3
NTUzNywwLjYxNjA0OTU4NzcyNjU5MywwLjY2MDM1MjM0OTI4MTMxMSwwLjcwMjQ2NDkzODE2Mzc1
NzMsMC43NDIyNDgwNTgzMTkwOTE4LDAuNzc5NTY5NDQ3MDQwNTU3OSwwLjgxNDMwNTg0MTkyMjc2
LDAuODQ2MzQxMzcxNTM2MjU0OSwwLjg3NTU3MDE3ODAzMTkyMTQsMC45MDE4OTU0MDM4NjE5OTk1
LDAuOTI1MjI5NDg5ODAzMzE0MiwwLjk0NTQ5NTI0Nzg0MDg4MTMsMC45NjI2MjUyNjUxMjE0Niww
Ljk3NjU2Mjk3NjgzNzE1ODIsMC45ODcyNjE5NTA5Njk2OTYuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDA2NTgxOSwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVs
RXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzM4NF0JNS4yODQ5NDgyNzQ0OTMyMTc1ZS0yCTUuMjE0
Njg4MTgxODc3MTM2MmUtMQk0LjY4NjE5MzM1NDQyNzgxNDVlLTEJOC45ODY1MjY1MDE2NDk2NTU0
ZS0xCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCVszODVdCS00LjcxMzIwMzI5MjM0MDA0MDJlLTMJ
NS42OTcwMzgxNzM2NzU1MzcxZS0xCTUuNzQ0MTcwMjA2NTk4OTM3NWUtMQkxLjAwODI3MzA3NjU1
MDc1NjZlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01Ci0JWzM4Nl0JLTYuMjI2MDEwNjIwNTk0MDI0
N2UtMgk2LjE2MDQ5NTg3NzI2NTkzMDJlLTEJNi43ODMwOTY5MzkzMjUzMzI2ZS0xCTEuMTAxMDYz
NDY1NDE5NTU5MmUrMAk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKLQlbMzg3XQktMS4xOTYwMDYwODk0
NDg5Mjg4ZS0xCTYuNjAzNTIzNDkyODEzMTEwNGUtMQk3Ljc5OTUyOTU4MjI2MjAzOTJlLTEJMS4x
ODExMTYzNTI2MTg1MDYyZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCVszODhdCS0xLjc2NTQ0
MzA4NjYyNDE0NTVlLTEJNy4wMjQ2NDkzODE2Mzc1NzMyZS0xCTguNzkwMDkyNDY4MjYxNzE4OGUt
MQkxLjI1MTMyMTE2Nzg5MTg4MjVlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01Ci0JLi4uYW5kIDE1
OTk1IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAxLjkwOTc5NTU4MjI5NDQ2NDFlKzAg
YXQgaW5kZXggb2YgMTMwMDcuCi0JWzEzMDA3XQk5LjU1NDg4MjA0OTU2MDU0NjllLTEJLTkuNTQz
MDczNzczMzg0MDk0MmUtMQkxLjkwOTc5NTU4MjI5NDQ2NDFlKzAJMi4wMDEyMzczNjYxMjA5MDE4
ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCU1heCBSZWxFcnJvciBvZiA1LjQzNTEzMTAxOTc4
NTQzNzdlKzIgYXQgaW5kZXggb2YgNDI5LgotCVs0MjldCS01LjY2NzUxODM3NzMwNDA3NzFlLTEJ
MS4wNDQ2Nzg2MTgyMDAxMjMzZS0zCTUuNjc3OTY1MTYzNDg2MDc4NGUtMQk1LjQzNTEzMTAxOTc4
NTQzNzdlKzIJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJWzBdCTYuMDU2NTY5NTE2NjU4NzgzMGUt
Mgk1LjIxNDY4ODE4MTg3NzEzNjJlLTEJNC42MDkwMzEyMzAyMTEyNTc5ZS0xCTguODM4NTU1NzY2
ODIyNzQ1NWUtMQk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKKwlbMV0JMS4wNzM3NjY4NzIyODY3OTY2
ZS0yCTUuNjk3MDM4MTczNjc1NTM3MWUtMQk1LjU4OTY2MTQ4NjQ0Njg1NzVlLTEJOS44MTE1MjE5
MTAyMzYwMjc0ZS0xCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVsyXQktMy45MTMzMTI0MDUzNDc4
MjQxZS0yCTYuMTYwNDk1ODc3MjY1OTMwMmUtMQk2LjU1MTgyNzExNzgwMDcxMjZlLTEJMS4wNjM1
MjI2ODUyNDAxNDYzZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVszXQktOC44OTMyMTkzODE1
NzA4MTYwZS0yCTYuNjAzNTIzNDkyODEzMTEwNGUtMQk3LjQ5Mjg0NTQzMDk3MDE5MjBlLTEJMS4x
MzQ2NzM4NTA4ODA1MTM2ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVs0XQktMS4zODU0NDgx
Mjc5ODUwMDA2ZS0xCTcuMDI0NjQ5MzgxNjM3NTczMmUtMQk4LjQxMDA5NzUwOTYyMjU3MzllLTEJ
MS4xOTcyMjY2NTg5NzEyNzM0ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCS4uLmFuZCAzMjI3
IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiAxLjg0NTA0MjM0NzkwODAyMDBlKzAgYXQg
aW5kZXggb2YgMjQuCisJWzI0XQktOS4wOTQ3ODAwODc0NzEwMDgzZS0xCTkuMzU1NjQzMzkxNjA5
MTkxOWUtMQkxLjg0NTA0MjM0NzkwODAyMDBlKzAJMS45NzIxMTcwMTA3NDc1Mjk3ZSswCTYuNTgx
OTAwMDAwMDAwMDAwMWUtNQorCU1heCBSZWxFcnJvciBvZiA3LjcxMjM4NjU3NTIwMTA3ODRlKzIg
YXQgaW5kZXggb2YgNDUuCisJWzQ1XQktOC4wNDY1MTg1NjQyMjQyNDMyZS0xCTEuMDQ0Njc4NjE4
MjAwMTIzM2UtMwk4LjA1Njk2NTM1MDQwNjI0NDRlLTEJNy43MTIzODY1NzUyMDEwNzg0ZSsyCTYu
NTgxOTAwMDAwMDAwMDAwMWUtNQogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQogRkFJTCBYIC52YWx1ZSBzZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0
cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQogRkFJTCA8IFt0ZXN0MV0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbdGVzdDJdIFRl
c3QgdmFsdWUgc2V0dGVyIGFuZCBtb2R1bGF0aW9uIAotRkFJTCBYIFdpdGggbW9kdWxhdGlvbjog
LnZhbHVlIHNldHRlciBvdXRwdXQgZG9lcyBub3QgZXF1YWwgWzAsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29s
dXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJ
RXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMzg0XQk1LjI4
NjM1NzE3OTI4NDA5NThlLTIJNS4yMTQ1NjY1ODg0MDE3OTQ0ZS0xCTQuNjg1OTMwODcwNDczMzg0
OWUtMQk4Ljk4NjIzMjY4MzA2ODYyMjNlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzM4NV0J
OS40MTA5NjEyNzAzMzIzMzY0ZS0xCS01Ljg1MTg1ODg1NDI5MzgyMzJlLTEJMS41MjYyODIwMTI0
NjI2MTYwZSswCTIuNjA4MjAwMzE3OTk0MTcyMGUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlb
Mzg2XQk2Ljg5NzUwNTUyMTc3NDI5MjBlLTEJLTkuNzgxMzE1OTIyNzM3MTIxNmUtMQkxLjY2Nzg4
MjE0NDQ1MTE0MTRlKzAJMS43MDUxNzE1MzA3MjgzNjc3ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUr
MAotCVszODddCS0zLjQyNTM4NTk1MTk5NTg0OTZlLTEJLTIuNDkyMDgwMTgxODM3MDgxOWUtMQk5
LjMzMzA1NzcwMTU4NzY3NzBlLTIJMy43NDUwODcyNDQ2Mjc3NTcyZS0xCTAuMDAwMDAwMDAwMDAw
MDAwMGUrMAotCVszODhdCS05Ljg1Mjc1OTgzODEwNDI0ODBlLTEJNy4xNTUyNDYxMzg1NzI2OTI5
ZS0xCTEuNzAwODAwNTk3NjY3Njk0MWUrMAkyLjM3Njk5ODAzMDE1NzE2MzRlKzAJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCi0JLi4uYW5kIDk2NjggbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9m
IDEuOTA5ODg2MjQwOTU5MTY3NWUrMCBhdCBpbmRleCBvZiAxNjA0MC4KLQlbMTYwNDBdCS05LjU4
ODg3NjM2NjYxNTI5NTRlLTEJOS41MDk5ODYwNDI5NzYzNzk0ZS0xCTEuOTA5ODg2MjQwOTU5MTY3
NWUrMAkyLjAwODI5NTUyNDY0OTgxNjBlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJl
bEVycm9yIG9mIDYuODY2ODAxNzI1ODU0MzU5NGUrNCBhdCBpbmRleCBvZiA0MjgwLgotCVs0Mjgw
XQktNS42NTk3NTQ4NzIzMjIwODI1ZS0xCTguMjQyMzE5MzgxNjc5NDA4M2UtNgk1LjY1OTgzNzI5
NTUxNTg5OTNlLTEJNi44NjY4MDE3MjU4NTQzNTk0ZSs0CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIFdpdGggbW9kdWxh
dGlvbjogLnZhbHVlIHNldHRlciBvdXRwdXQgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQg
aXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCi1GQUlMIDwgW3Rlc3QyXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAzIG91dCBvZiAzIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBz
ZXR0ZXIgb3V0cHV0IGVxdWFscyBbMC41MjE0NTY2NTg4NDAxNzk0LC0wLjU4NTE4NTg4NTQyOTM4
MjMsLTAuOTc4MTMxNTkyMjczNzEyMiwtMC4yNDkyMDgwMTgxODM3MDgyLDAuNzE1NTI0NjEzODU3
MjY5MywwLjk4MDg1OTMzOTIzNzIxMzEsMC40ODM2NDkzMTM0NDk4NTk2LC0wLjI0ODY5ODM1Mzc2
NzM5NTAyLC0wLjc3MDM2MjkxMzYwODU1MSwtMC45NzkwOTI3NzY3NzUzNjAxLC0wLjk5MDMxODQx
NzU0OTEzMzMsLTAuOTQ5MDI1NjMwOTUwOTI3NywtMC45NDE4MTAyNTAyODIyODc2LC0wLjk3ODgy
NTI3MTEyOTYwODIsLTAuOTk1MTY2MjQyMTIyNjUwMSwtMC44NTI5ODA3MzI5MTc3ODU2Li4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBz
ZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFT
UyA8IFt0ZXN0Ml0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAK
K0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5n
LWV4cGVjdGVkLnR4dAppbmRleCA3YmRlNTgyNWQ4ZWIzNzhlYTUwOWZmNjFiYzk5ODI3YzM3ODQz
Zjc0Li4zMjY1NTFiZjdjZjVkYjZmNGJmZTE2ZWQwZDViOTMyOWZiZjg5NWQ2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJp
bmctZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRs
ZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGlu
IGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJl
amVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBz
dGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0
aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBU
QVNLIFJVTk5FUiBTVEFSVEVELiAKIEZBSUwgRXhlY3V0aW5nICJ0ZXN0MCIgcHJvbWlzZV90ZXN0
OiBVbmhhbmRsZWQgcmVqZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6
IENhbid0IGZpbmQgdmFyaWFibGU6IENvbnN0YW50U291cmNlTm9kZSIKQEAgLTEwLDI0ICs2LDE4
IEBAIFBBU1MgRXhlY3V0aW5nICJ0ZXN0MyIKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFt0
ZXN0MF0gRGV6aXBwZXJpbmcgb2YgR2Fpbk5vZGUgcmVtb3ZlZCAKIFBBU1MgPiBbdGVzdDJdIENv
bXBhcmUgdmFsdWUgc2V0dGVyIGFuZCBzZXRWYWx1ZUF0VGltZSAKLUZBSUwgWCAudmFsdWUgc2V0
dGVyIG91dHB1dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAsMC4xNjc5Mzgz
MDY5Mjc2ODA5NywwLjMzMTEwNjMwNTEyMjM3NTUsMC40ODQ4NjkyNDE3MTQ0Nzc1NCwwLjYyNDg1
OTUxMTg1MjI2NDQsMC43NDcxMDA1OTE2NTk1NDU5LDAuODQ4MTIwMzMxNzY0MjIxMiwwLjkyNTA0
OTM2NDU2NjgwMywwLjk3NTcwMjIyNjE2MTk1NjgsMC45OTg2NDAxNzk2MzQwOTQyLDAuOTkzMjEy
MDQ0MjM5MDQ0MiwwLjk1OTU3MTQyMTE0NjM5MjgsMC44OTg2NzQ0ODgwNjc2MjcsMC44MTIyNTA1
NTQ1NjE2MTUsMC43MDI3NTQ3OTU1NTEzLDAuNTczMjk3MTQyOTgyNDgyOS4uLl0gYnV0IGRpZmZl
cnMgaW4gNjQwIHBsYWNlczoKK0ZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0
byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAuMjc3MTYzODYzMTgyMDY3ODcsMC4yNTM5NDczMTc2
MDAyNTAyNCwwLjIyMzUxNzM0MzQwMTkwODg3LDAuMTg2NzM4NDAxNjUxMzgyNDUsMC4xNDQ2NTUx
NTMxNTUzMjY4NCwwLjA5ODQ2Mjk2MTYxNDEzMTkzLDAuMDQ5NDczOTU5OTUyNTkyODUsLTAuMDAw
OTIwNDE0Mjg0MzM3MzEyLC0wLjA1MTI4ODU3ODY1OTI5NjAzNiwtMC4xMDAxOTk5MTU0Njg2OTI3
OCwtMC4xNDYyNjUwNDQ4MDgzODc3NiwtMC4xODgxNzU1MjkyNDE1NjE5LC0wLjIyNDc0MDkyMjQ1
MTAxOTMsLTAuMjU0OTIyNTA5MTkzNDIwNCwtMC4yNzc4NjMwODUyNjk5MjgsLTAuMjkyOTEwOTMz
NDk0NTY3ODcuLi5dIGJ1dCBkaWZmZXJzIGluIDY0MCBwbGFjZXM6CiAJSW5kZXgJQWN0dWFsCQkJ
RXhwZWN0ZWQKLQlbMzg0XQk5LjIzODc5NTA0MjAzNzk2MzllLTEJMi43NzE2Mzg2MzE4MjA2Nzg3
ZS0xCi0JWzM4NV0JOC40NjQ5MTAzODc5OTI4NTg5ZS0xCTIuNTM5NDczMTc2MDAyNTAyNGUtMQot
CVszODZdCTcuNDUwNTc3NjE2NjkxNTg5NGUtMQkyLjIzNTE3MzQzNDAxOTA4ODdlLTEKLQlbMzg3
XQk2LjIyNDYxMzE4OTY5NzI2NTZlLTEJMS44NjczODQwMTY1MTM4MjQ1ZS0xCisJWzBdCTkuMjA2
NDU5NTIyMjQ3MzE0NWUtMQkyLjc3MTYzODYzMTgyMDY3ODdlLTEKKwlbMV0JOC40MDU4MDQwMzgw
NDc3OTA1ZS0xCTIuNTM5NDczMTc2MDAyNTAyNGUtMQorCVsyXQk3LjM3MjczNjkzMDg0NzE2ODBl
LTEJMi4yMzUxNzM0MzQwMTkwODg3ZS0xCisJWzNdCTYuMTM4MTE5Njk3NTcwODAwOGUtMQkxLjg2
NzM4NDAxNjUxMzgyNDVlLTEKIAkuLi5hbmQgNjM2IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBtYXRj
aGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbdGVzdDJdIDIgb3V0IG9mIDIg
YXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCiBQQVNTID4gW3Rlc3QzXSBBdXRvbWF0aW9uIGVmZmVjdHMgCi1GQUlMIFggV2l0aCBtb2R1
bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUg
YXJyYXkgWzAsMC4yMzA3NzQ3NzUxNDc0MzgwNSwwLjU2MDg4NDU5NDkxNzI5NzQsMC45Mjc1MzY1
NDcxODM5OTA1LDEuMjQ5Mjk1NTkyMzA4MDQ0NCwxLjQ0OTc1MzE2NTI0NTA1NjIsMS40ODAwMTg5
NzMzNTA1MjUsMS4zMzMzMzk1NzE5NTI4MTk4LDEuMDQ3NDc5MjcxODg4NzMzLDAuNjk0MTI1NjUy
MzEzMjMyNCwwLjM1ODQyNjAwNDY0ODIwODYsMC4xMTQ2OTY3MzM2NTM1NDUzOCwwLjAwNTQ3NTY0
NjM1MDUzMjc3LDAuMDMwMDkxMTMxMTA2MDE5MDIsMC4xNDYwOTgwMTc2OTI1NjU5MiwwLjI4MzEw
MTg1NjcwODUyNjYuLi5dIGJ1dCBkaWZmZXJzIGluIDY0MCBwbGFjZXM6Ci0JSW5kZXgJQWN0dWFs
CQkJRXhwZWN0ZWQKLQlbMzg0XQkxLjI3NzQzMjc5OTMzOTI5NDRlKzAJNi4zMDcxNzIxNzkyMjIx
MDY5ZS0xCi0JWzM4NV0JOC41NDI4MTk2MTkxNzg3NzIwZS0xCTIuNjE3MzgyNDA3MTg4NDE1NWUt
MQotCVszODZdCTQuNzI2NTQ5Njg1MDAxMzczM2UtMQktNC44ODg1NDMxMTQwNjYxMjQwZS0yCi0J
WzM4N10JMS45NDYzNDEzOTUzNzgxMTI4ZS0xCS0yLjQxMDg4Nzc3NzgwNTMyODRlLTEKLQkuLi5h
bmQgNjM2IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
LUZBSUwgWCBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0
VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFt0ZXN0M10gMiBvdXQgb2YgMiBhc3NlcnRp
b25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZh
aWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgV2l0aCBt
b2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5
IFswLjYzMDcxNzIxNzkyMjIxMDcsMC4yNjE3MzgyNDA3MTg4NDE1NSwtMC4wNDg4ODU0MzExNDA2
NjEyNCwtMC4yNDEwODg3Nzc3ODA1MzI4NCwtMC4yOTM3MzA5MTQ1OTI3NDI5LC0wLjIyOTM5OTQx
Mjg3MDQwNzEsLTAuMTA2MTM3MDQ0NzI3ODAyMjgsMC4wMDEzODQxOTU1MjI0MDUyMDcyLDAuMDI1
NTc3ODQ4Nzc3MTc0OTUsLTAuMDcyNTY0NjgzODU0NTc5OTMsLTAuMjkwNjUzMzc3NzcxMzc3NTYs
LTAuNTg0NjEwMzQyOTc5NDMxMiwtMC44ODEwMzY4Nzc2MzIxNDExLC0xLjA5ODU4ODk0MzQ4MTQ0
NTMsLTEuMTcyMDIxMzg5MDA3NTY4NCwtMS4wNzE3NTIwNzEzODA2MTUyLi4uXS4gCitQQVNTICAg
V2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBtYXRjaGVzIHNldFZhbHVlQXRU
aW1lIG91dHB1dCBpcyB0cnVlLiAKK1BBU1MgPCBbdGVzdDNdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNI
RUQ6IDEgb3V0IG9mIDMgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9mZmxpbmVhdWRpb2Nv
bnRleHQtaW50ZXJmYWNlL2N1cnJlbnQtdGltZS1ibG9jay1zaXplLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtb2ZmbGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJs
b2NrLXNpemUtZXhwZWN0ZWQudHh0CmluZGV4IGRmMTI2OTJmMTlkNjlhODVkZGM2ZWRiNTkxNjEy
MjcyNWQ2YmM1NDQuLmM3MjdiNjU0MGY3ZGNjYWUwOWY5MzI0Y2I4NWFhMWNlNWE4MDE3MDEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb2ZmbGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3Vy
cmVudC10aW1lLWJsb2NrLXNpemUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb2Zm
bGluZWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvY3VycmVudC10aW1lLWJsb2NrLXNpemUtZXhwZWN0
ZWQudHh0CkBAIC0xLDMgKzEsMyBAQAogCi1GQUlMIFRlc3QgY3VycmVudFRpbWUgYXQgY29tcGxl
dGlvbiBvZiBPZmZsaW5lQXVkaW9Db250ZXh0IHJlbmRlcmluZyBwcm9taXNlX3Rlc3Q6IFVuaGFu
ZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjogVGhl
IG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIKK1BBU1MgVGVzdCBjdXJyZW50VGltZSBh
dCBjb21wbGV0aW9uIG9mIE9mZmxpbmVBdWRpb0NvbnRleHQgcmVuZGVyaW5nIAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVyZmFjZS9vc2MtYmFzaWMtd2F2
ZWZvcm0tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZh
Y2Uvb3NjLWJhc2ljLXdhdmVmb3JtLWV4cGVjdGVkLnR4dAppbmRleCBmZGNmOTZjYjdiZDFjOWI2
MWQ0ZTJjZjc1ODg3YjIxYjFlZGZlOThiLi4xNjk4MmM3NDdkY2EzMWM5YTIzMzBjZGJlYWY2YTk2
YTZlMjc2MzJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVy
ZmFjZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
b3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL29zYy1iYXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQK
QEAgLTgsNjkgKzgsMjEgQEAgUEFTUyBFeGVjdXRpbmcgIlRlc3QgNCIKIFBBU1MgRXhlY3V0aW5n
ICJUZXN0IDUiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW1Rlc3QgMF0gU2luZSB3YXZl
OiAxMDAgSHogCi1GQUlMIFggU2luZTogMTAwIEh6IGRvZXMgbm90IGVxdWFsIFswLDAuMDE0MjQ3
MTAzNTk0MjQzNTI2LDAuMDI4NDkxMzE0NTAwNTcwMjk3LDAuMDQyNzI5NzQyODI1MDMxMjgsMC4w
NTY5NTk0OTg2NzM2Nzc0NDQsMC4wNzExNzc2OTEyMjEyMzcxOCwwLjA4NTM4MTQzMzM2NzcyOTE5
LDAuMDk5NTY3ODQ1NDYzNzUyNzUsMC4xMTM3MzQwNDQxMzQ2MTY4NSwwLjEyNzg3NzE2MDkwNjc5
MTcsMC4xNDE5OTQzMTI0MDU1ODYyNCwwLjE1NjA4MjY0NTA1ODYzMTksMC4xNzAxMzkyOTc4NDI5
Nzk0MywwLjE4NDE2MTQwOTczNTY3OTYzLDAuMTk4MTQ2MTQ5NTE2MTA1NjUsMC4yMTIwOTA2NTYx
NjEzMDgzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MC4wMDAwMDE4MDQ1LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0
dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMV0J
Mi42MTc2OTY4NTg5NDI1MDg3ZS0yCTEuNDI0NzEwMzU5NDI0MzUyNmUtMgkxLjE5Mjk4NjQ5OTUx
ODE1NjFlLTIJOC4zNzM1MzcwNjA1NDQ1NDgwZS0xCTEuODA0NTAwMDAwMDAwMDAwMGUtNgotCVsy
XQk1LjIzMzU5ODUwMDQ5MDE4ODZlLTIJMi44NDkxMzE0NTAwNTcwMjk3ZS0yCTIuMzg0NDY3MDUw
NDMzMTU4OWUtMgk4LjM2OTEwMTU3NDM5NTM0NzllLTEJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0J
WzNdCTcuODQ1OTE1MTA4OTE5MTQzN2UtMgk0LjI3Mjk3NDI4MjUwMzEyODFlLTIJMy41NzI5NDA4
MjY0MTYwMTU2ZS0yCTguMzYxNzE4NTM2NTM4ODQwMmUtMQkxLjgwNDUwMDAwMDAwMDAwMDBlLTYK
LQlbNF0JMS4wNDUyODQ1NjkyNjM0NTgzZS0xCTUuNjk1OTQ5ODY3MzY3NzQ0NGUtMgk0Ljc1Njg5
NTgyNTI2NjgzODFlLTIJOC4zNTEzNjUzMzE1NjUyMDAzZS0xCTEuODA0NTAwMDAwMDAwMDAwMGUt
NgotCVs1XQkxLjMwNTI2MTg1MDM1NzA1NTdlLTEJNy4xMTc3NjkxMjIxMjM3MTgzZS0yCTUuOTM0
ODQ5MzgxNDQ2ODM4NGUtMgk4LjMzODA3NTE0NjMyNjI3ODFlLTEJMS44MDQ1MDAwMDAwMDAwMDAw
ZS02Ci0JLi4uYW5kIDI1MCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS42MzQ3NTM4
ODI4ODQ5NzkyZSswIGF0IGluZGV4IG9mIDE2NS4KLQlbMTY1XQktOS4yMzg3OTI2NTc4NTIxNzI5
ZS0xCTcuMTA4NzQ2MTcwOTk3NjE5NmUtMQkxLjYzNDc1Mzg4Mjg4NDk3OTJlKzAJMi4yOTk2Mzc0
Mzc1NDc2NzIwZSswCTEuODA0NTAwMDAwMDAwMDAwMGUtNgotCU1heCBSZWxFcnJvciBvZiA3LjEx
ODc5MzMyODUwNDQxMTBlKzEgYXQgaW5kZXggb2YgMjIwLgotCVsyMjBdCS01LjAwMDAwMDU5NjA0
NjQ0NzhlLTEJNy4xMjM3MzI0NzM3MDEyMzg2ZS0zCTUuMDcxMjM3OTIwNzgzNDYwMWUtMQk3LjEx
ODc5MzMyODUwNDQxMTBlKzEJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggU2luZTogU05SIChkYikgaXMgbm90IGdyZWF0
ZXIgdGhhbiBvciBlcXVhbCB0byAxMTguOTEuIEdvdCAtMi42MjA0Mzc2MzI4MjE0My4gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1Rlc3QgMF0gMiBvdXQgb2Yg
MiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK1BBU1MgICBTaW5lOiAxMDAgSHogZXF1YWxzIFswLDAuMDE0MjQ3MTAzNTk0MjQzNTI2
LDAuMDI4NDkxMzE0NTAwNTcwMjk3LDAuMDQyNzI5NzQyODI1MDMxMjgsMC4wNTY5NTk0OTg2NzM2
Nzc0NDQsMC4wNzExNzc2OTEyMjEyMzcxOCwwLjA4NTM4MTQzMzM2NzcyOTE5LDAuMDk5NTY3ODQ1
NDYzNzUyNzUsMC4xMTM3MzQwNDQxMzQ2MTY4NSwwLjEyNzg3NzE2MDkwNjc5MTcsMC4xNDE5OTQz
MTI0MDU1ODYyNCwwLjE1NjA4MjY0NTA1ODYzMTksMC4xNzAxMzkyOTc4NDI5Nzk0MywwLjE4NDE2
MTQwOTczNTY3OTYzLDAuMTk4MTQ2MTQ5NTE2MTA1NjUsMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4w
MDAwMDE4MDQ1LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNOUiAoZGIp
IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTguOTEuIAorUEFTUyA8IFtUZXN0IDBdIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3Qg
MV0gU2luZSB3YXZlOiAtMTAwIEh6IAotRkFJTCBYIFNpbmU6IC0xMDAgSHogZG9lcyBub3QgZXF1
YWwgWzAsLTAuMDE0MjQ3MTAzNTk0MjQzNTI2LC0wLjAyODQ5MTMxNDUwMDU3MDI5NywtMC4wNDI3
Mjk3NDI4MjUwMzEyOCwtMC4wNTY5NTk0OTg2NzM2Nzc0NDQsLTAuMDcxMTc3NjkxMjIxMjM3MTgs
LTAuMDg1MzgxNDMzMzY3NzI5MTksLTAuMDk5NTY3ODQ1NDYzNzUyNzUsLTAuMTEzNzM0MDQ0MTM0
NjE2ODUsLTAuMTI3ODc3MTYwOTA2NzkxNywtMC4xNDE5OTQzMTI0MDU1ODYyNCwtMC4xNTYwODI2
NDUwNTg2MzE5LC0wLjE3MDEzOTI5Nzg0Mjk3OTQzLC0wLjE4NDE2MTQwOTczNTY3OTYzLC0wLjE5
ODE0NjE0OTUxNjEwNTY1LC0wLjIxMjA5MDY1NjE2MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13
aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjo0Ljc2ODRlLTcsInJlbGF0aXZl
VGhyZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVy
cm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQktMi42MTc2OTY4NTg5NDI1MDg3ZS0yCS0xLjQyNDcx
MDM1OTQyNDM1MjZlLTIJMS4xOTI5ODY0OTk1MTgxNTYxZS0yCTguMzczNTM3MDYwNTQ0NTQ4MGUt
MQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLQlbMl0JLTUuMjMzNTkzNjU3NjEyODAwNmUtMgktMi44
NDkxMzE0NTAwNTcwMjk3ZS0yCTIuMzg0NDYyMjA3NTU1NzcwOWUtMgk4LjM2OTA4NDU3NjY2Mjk3
NjJlLTEJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0JWzNdCS03Ljg0NTg5MzUwMjIzNTQxMjZlLTIJ
LTQuMjcyOTc0MjgyNTAzMTI4MWUtMgkzLjU3MjkxOTIxOTczMjI4NDVlLTIJOC4zNjE2Njc5NzA2
Mjc4MzE4ZS0xCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNwotCVs0XQktMS4wNDUyODMyMjgxNTg5NTA4
ZS0xCS01LjY5NTk0OTg2NzM2Nzc0NDRlLTIJNC43NTY4ODI0MTQyMjE3NjM2ZS0yCTguMzUxMzQx
Nzg2Njg2MTQyOGUtMQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLQlbNV0JLTEuMzA1MjYwMjExMjI5
MzI0M2UtMQktNy4xMTc3NjkxMjIxMjM3MTgzZS0yCTUuOTM0ODMyOTkwMTY5NTI1MWUtMgk4LjMz
ODA1MjExNzY1MzkwNTdlLTEJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0JLi4uYW5kIDI1MCBtb3Jl
IGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS42MzQ3NTQxMjEzMDM1NTgzZSswIGF0IGluZGV4
IG9mIDE2NS4KLQlbMTY1XQk5LjIzODc5NTA0MjAzNzk2MzllLTEJLTcuMTA4NzQ2MTcwOTk3NjE5
NmUtMQkxLjYzNDc1NDEyMTMwMzU1ODNlKzAJMi4yOTk2Mzc3NzI5MzUzMzkwZSswCTQuNzY4Mzk5
OTk5OTk5OTk5N2UtNwotCU1heCBSZWxFcnJvciBvZiA3LjExODc5NTAwMTkxNDk0NDBlKzEgYXQg
aW5kZXggb2YgMjIwLgotCVsyMjBdCTUuMDAwMDAxNzg4MTM5MzQzM2UtMQktNy4xMjM3MzI0NzM3
MDEyMzg2ZS0zCTUuMDcxMjM5MTEyODc2MzU1NmUtMQk3LjExODc5NTAwMTkxNDk0NDBlKzEJNC43
NjgzOTk5OTk5OTk5OTk3ZS03Ci0gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
Ci1GQUlMIFggU2luZTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAx
MzAuOTUuIEdvdCAtMi42MjA0Mzc1MjcwMzgxMzM1LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgPCBbVGVzdCAxXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBm
YWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFNpbmU6
IC0xMDAgSHogZXF1YWxzIFswLC0wLjAxNDI0NzEwMzU5NDI0MzUyNiwtMC4wMjg0OTEzMTQ1MDA1
NzAyOTcsLTAuMDQyNzI5NzQyODI1MDMxMjgsLTAuMDU2OTU5NDk4NjczNjc3NDQ0LC0wLjA3MTE3
NzY5MTIyMTIzNzE4LC0wLjA4NTM4MTQzMzM2NzcyOTE5LC0wLjA5OTU2Nzg0NTQ2Mzc1Mjc1LC0w
LjExMzczNDA0NDEzNDYxNjg1LC0wLjEyNzg3NzE2MDkwNjc5MTcsLTAuMTQxOTk0MzEyNDA1NTg2
MjQsLTAuMTU2MDgyNjQ1MDU4NjMxOSwtMC4xNzAxMzkyOTc4NDI5Nzk0MywtMC4xODQxNjE0MDk3
MzU2Nzk2MywtMC4xOTgxNDYxNDk1MTYxMDU2NSwtMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3aXRo
IGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6NC43Njg0
ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNOUiAoZGIpIGlzIGdy
ZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMzAuOTUuIAorUEFTUyA8IFtUZXN0IDFdIEFsbCBhc3Nl
cnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgMl0gU2lu
ZSB3YXZlOiAyIEh6IAotRkFJTCBYIFNpbmU6IDIgSHogZG9lcyBub3QgZXF1YWwgWzAsMC4wMDAy
ODQ5NTE3MDQwODg1OTg1LDAuMDAwNTY5OTAzNDA4MTc3MTk3LDAuMDAwODU0ODU1MDU0MDU4MTM0
NiwwLjAwMTEzOTgwNjU4MzUyMzc1MDMsMC4wMDE0MjQ3NTgxMTI5ODkzNjYsMC4wMDE3MDk3MDk0
MDk2MjQzMzgyLDAuMDAxOTk0NjYwNTg5ODQzOTg4NCwwLjAwMjI3OTYxMTc3MDA2MzYzODcsMC4w
MDI1NjQ1NjI3MTc0NTI2NDUzLDAuMDAyODQ5NTEzMTk5MTgwMzY0NiwwLjAwMzEzNDQ2MzY4MDkw
ODA4NCwwLjAwMzQxOTQxMzkyOTgwNTE1OTYsMC4wMDM3MDQzNjM3MTMwNDA5NDgsMC4wMDM5ODkz
MTMyNjM0NDYwOTMsMC4wMDQyNzQyNjI1ODEwMjA1OTQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxLjQ1MTZlLTcsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4KLQlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9y
CQlUZXN0IHRocmVzaG9sZAotCVsxXQk1LjIzNjAwMjYxNjU4NDMwMTBlLTQJMi44NDk1MTcwNDA4
ODU5ODQ5ZS00CTIuMzg2NDg1NTc1Njk4MzE2MWUtNAk4LjM3NTA1MjgyOTg1MTgyMzRlLTEJMS40
NTE2MDAwMDAwMDAwMDAxZS03Ci0JWzJdCTEuMDQ3MjAwNTIzMzE2ODYwMmUtMwk1LjY5OTAzNDA4
MTc3MTk2OThlLTQJNC43NzI5NzExNTEzOTY2MzIyZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkx
LjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQlbM10JMS41NzA4MDI1MzEyMDUxMTc3ZS0zCTguNTQ4NTUw
NTQwNTgxMzQ1NmUtNAk3LjE1OTQ3NDc3MTQ2OTgzMTVlLTQJOC4zNzUwNzQ1MDgyMjUyODY0ZS0x
CTEuNDUxNjAwMDAwMDAwMDAwMWUtNwotCVs0XQkyLjA5NDQyOTIxOTE0MTYwMjVlLTMJMS4xMzk4
MDY1ODM1MjM3NTAzZS0zCTkuNTQ2MjI2MzU2MTc4NTIyMWUtNAk4LjM3NTMwMzc1MjU1OTUyODZl
LTEJMS40NTE2MDAwMDAwMDAwMDAxZS03Ci0JWzVdCTIuNjE4MDU2MDIzNDkzNDA5MmUtMwkxLjQy
NDc1ODExMjk4OTM2NjFlLTMJMS4xOTMyOTc5MTA1MDQwNDMxZS0zCTguMzc1NDQyMTE2Mjc4MzY4
OGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKLQkuLi5hbmQgMjUwIG1vcmUgZXJyb3JzLgotCU1h
eCBBYnNFcnJvciBvZiA2LjA1MjI0NzQzNDg1NDUwNzRlLTIgYXQgaW5kZXggb2YgMjU1LgotCVsy
NTVdCTEuMzMxMjEyMzcxNTg3NzUzM2UtMQk3LjI1OTg3NjI4MTAyMzAyNTVlLTIJNi4wNTIyNDc0
MzQ4NTQ1MDc0ZS0yCTguMzM2NTcxMDM4NjQ4MTM0MGUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcK
LQlNYXggUmVsRXJyb3Igb2YgOC4zNzU0OTMyODMxMjQxNTQ2ZS0xIGF0IGluZGV4IG9mIDYuCi0J
WzZdCTMuMTQxNjc1Mzc3MjY0NjE4OWUtMwkxLjcwOTcwOTQwOTYyNDMzODJlLTMJMS40MzE5NjU5
Njc2NDAyODA3ZS0zCTguMzc1NDkzMjgzMTI0MTU0NmUtMQkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcK
LSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTaW5lOiBTTlIg
KGRiKSBpcyBub3QgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDExOS45My4gR290IDEuNTY0MzI4
NTg3NDA1MTMyNS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwg
W1Rlc3QgMl0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBTaW5lOiAyIEh6IGVxdWFscyBbMCwwLjAw
MDI4NDk1MTcwNDA4ODU5ODUsMC4wMDA1Njk5MDM0MDgxNzcxOTcsMC4wMDA4NTQ4NTUwNTQwNTgx
MzQ2LDAuMDAxMTM5ODA2NTgzNTIzNzUwMywwLjAwMTQyNDc1ODExMjk4OTM2NiwwLjAwMTcwOTcw
OTQwOTYyNDMzODIsMC4wMDE5OTQ2NjA1ODk4NDM5ODg0LDAuMDAyMjc5NjExNzcwMDYzNjM4Nyww
LjAwMjU2NDU2MjcxNzQ1MjY0NTMsMC4wMDI4NDk1MTMxOTkxODAzNjQ2LDAuMDAzMTM0NDYzNjgw
OTA4MDg0LDAuMDAzNDE5NDEzOTI5ODA1MTU5NiwwLjAwMzcwNDM2MzcxMzA0MDk0OCwwLjAwMzk4
OTMxMzI2MzQ0NjA5MywwLjAwNDI3NDI2MjU4MTAyMDU5NC4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNDUxNmUtNywicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKK1BBU1MgICBTaW5lOiBTTlIgKGRiKSBpcyBncmVhdGVyIHRoYW4gb3Ig
ZXF1YWwgdG8gMTE5LjkzLiAKK1BBU1MgPCBbVGVzdCAyXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAyIGFzc2VydGlvbnMpIAogUEFTUyA+IFtUZXN0IDNdIFNpbmUgd2F2ZTogMSBIeiAK
LUZBSUwgWCBTaW5lOiAxIEh6IGRvZXMgbm90IGVxdWFsIFswLDAuMDAwMTQyNDc1ODUyMDQ0Mjk5
MjQsMC4wMDAyODQ5NTE3MDQwODg1OTg1LDAuMDAwNDI3NDI3NTU2MTMyODk3NzMsMC4wMDA1Njk5
MDM0MDgxNzcxOTcsMC4wMDA3MTIzNzkyMzExMTc2NjU4LDAuMDAwODU0ODU1MDU0MDU4MTM0Niww
LjAwMDk5NzMzMDg3Njk5ODYwMzMsMC4wMDExMzk4MDY1ODM1MjM3NTAzLDAuMDAxMjgyMjgyNDA2
NDY0MjE5LDAuMDAxNDI0NzU4MTEyOTg5MzY2LDAuMDAxNTY3MjMzODE5NTE0NTEzLDAuMDAxNzA5
NzA5NDA5NjI0MzM4MiwwLjAwMTg1MjE4NTExNjE0OTQ4NTEsMC4wMDE5OTQ2NjA1ODk4NDM5ODg0
LDAuMDAyMTM3MTM2MTc5OTUzODEzNi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNl
IG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNDE1N2UtNywicmVsYXRpdmVUaHJlc2hvbGQiOjB9
LgotCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhy
ZXNob2xkCi0JWzFdCTIuNjE4MDAxMzA4MjkyMTUwNWUtNAkxLjQyNDc1ODUyMDQ0Mjk5MjRlLTQJ
MS4xOTMyNDI3ODc4NDkxNTgwZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkxLjQxNTY5OTk5OTk5
OTk5OTllLTcKLQlbMl0JNS4yMzYwMDI2MTY1ODQzMDEwZS00CTIuODQ5NTE3MDQwODg1OTg0OWUt
NAkyLjM4NjQ4NTU3NTY5ODMxNjFlLTQJOC4zNzUwNTI4Mjk4NTE4MjM0ZS0xCTEuNDE1Njk5OTk5
OTk5OTk5OWUtNwotCVszXQk3Ljg1NDAwMzM0Mjc5OTg0MjRlLTQJNC4yNzQyNzU1NjEzMjg5Nzcz
ZS00CTMuNTc5NzI3NzgxNDcwODY1MGUtNAk4LjM3NTA1MTQ2ODAzODMzOTJlLTEJMS40MTU2OTk5
OTk5OTk5OTk5ZS03Ci0JWzRdCTEuMDQ3MjAwNTIzMzE2ODYwMmUtMwk1LjY5OTAzNDA4MTc3MTk2
OThlLTQJNC43NzI5NzExNTEzOTY2MzIyZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkxLjQxNTY5
OTk5OTk5OTk5OTllLTcKLQlbNV0JMS4zMDkwMDA2NTQxNDYwNzUyZS0zCTcuMTIzNzkyMzExMTc2
NjU3N2UtNAk1Ljk2NjIxNDIzMDI4NDA5NDhlLTQJOC4zNzUwNTM1ODA1NTM2OTUyZS0xCTEuNDE1
Njk5OTk5OTk5OTk5OWUtNwotCS4uLmFuZCAyNTAgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9y
IG9mIDMuMDM4NTg2MzAzNTkxNzI4MmUtMiBhdCBpbmRleCBvZiAyNTUuCi0JWzI1NV0JNi42NzA5
MjEyOTU4ODEyNzE0ZS0yCTMuNjMyMzM0OTkyMjg5NTQzMmUtMgkzLjAzODU4NjMwMzU5MTcyODJl
LTIJOC4zNjUzODAxNDgxNDY2MjgzZS0xCTEuNDE1Njk5OTk5OTk5OTk5OWUtNwotCU1heCBSZWxF
cnJvciBvZiA4LjM3NTQ5MzI4MzEyNDE1NDZlLTEgYXQgaW5kZXggb2YgMTIuCi0JWzEyXQkzLjE0
MTY3NTM3NzI2NDYxODllLTMJMS43MDk3MDk0MDk2MjQzMzgyZS0zCTEuNDMxOTY1OTY3NjQwMjgw
N2UtMwk4LjM3NTQ5MzI4MzEyNDE1NDZlLTEJMS40MTU2OTk5OTk5OTk5OTk5ZS03Ci0gYXNzZXJ0
X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggU2luZTogU05SIChkYikgaXMg
bm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTIuMjIuIEdvdCAxLjU0NjMwOTE4MzgwODgy
NTQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtUZXN0IDNd
IDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTICAgU2luZTogMSBIeiBlcXVhbHMgWzAsMC4wMDAxNDI0NzU4
NTIwNDQyOTkyNCwwLjAwMDI4NDk1MTcwNDA4ODU5ODUsMC4wMDA0Mjc0Mjc1NTYxMzI4OTc3Myww
LjAwMDU2OTkwMzQwODE3NzE5NywwLjAwMDcxMjM3OTIzMTExNzY2NTgsMC4wMDA4NTQ4NTUwNTQw
NTgxMzQ2LDAuMDAwOTk3MzMwODc2OTk4NjAzMywwLjAwMTEzOTgwNjU4MzUyMzc1MDMsMC4wMDEy
ODIyODI0MDY0NjQyMTksMC4wMDE0MjQ3NTgxMTI5ODkzNjYsMC4wMDE1NjcyMzM4MTk1MTQ1MTMs
MC4wMDE3MDk3MDk0MDk2MjQzMzgyLDAuMDAxODUyMTg1MTE2MTQ5NDg1MSwwLjAwMTk5NDY2MDU4
OTg0Mzk4ODQsMC4wMDIxMzcxMzYxNzk5NTM4MTM2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0
b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MS40MTU3ZS03LCJyZWxhdGl2ZVRocmVz
aG9sZCI6MH0uIAorUEFTUyAgIFNpbmU6IFNOUiAoZGIpIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVh
bCB0byAxMTIuMjIuIAorUEFTUyA8IFtUZXN0IDNdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsIDIgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgNF0gQ3VzdG9tIHdhdmU6IDEwMCBIeiAK
IFBBU1MgICBDdXN0b206IDEwMCBIeiBlcXVhbHMgWzEsMS4wMTQxNDU2MTI3MTY2NzQ4LDEuMDI4
MDg1MzUwOTkwMjk1NCwxLjA0MTgxNjM1Mzc5NzkxMjYsMS4wNTUzMzU5OTg1MzUxNTYyLDEuMDY4
NjQxMzA0OTY5Nzg3NiwxLjA4MTcyOTc2OTcwNjcyNiwxLjA5NDU5ODY1MDkzMjMxMiwxLjEwNzI0
NTMyNjA0MjE3NTMsMS4xMTk2NjcxNzI0MzE5NDU4LDEuMTMxODYxODA1OTE1ODMyNSwxLjE0Mzgy
NjYwMzg4OTQ2NTMsMS4xNTU1NTkzMDEzNzYzNDI4LDEuMTY3MDU3Mzk0OTgxMzg0MywxLjE3ODMx
ODYxOTcyODA4ODQsMS4xODkzNDA1OTE0MzA2NjQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTg0NzgsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCiBQQVNTICAgQ3VzdG9tOiBTTlIgKGRiKSBpcyBncmVhdGVyIHRoYW4gb3Ig
ZXF1YWwgdG8gMTIyLjQzLiAKQEAgLTg2LDUgKzM4LDUgQEAgRkFJTCBYIEN1c3RvbTogMSBIeiBk
b2VzIG5vdCBlcXVhbCBbMSwxLjAwMDE0MjQ1NTEwMTAxMzIsMS4wMDAyODQ5MTAyMDIwMjY0LDEu
MDAKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCBDdXN0b206
IFNOUiAoZGIpIGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTM4Ljc2LiBHb3QgMTMx
LjQ2NjA3NDUwNzc0MTY3LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZB
SUwgPCBbVGVzdCA1XSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJ
TklTSEVEOiA1IG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBv
dXQgb2YgNiB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2Uv
YXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9k
ZS1pbnRlcmZhY2UvYXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVjdGVkLnR4dAppbmRleCBjMzljYTk4
NjdlNTM2Y2Y5YWRiYmU4OTliMjA5ZDcwZjIyZDMzNjM2Li5hZTVmMTUzYmJhNDA0NWY3NzU2OWI5
MzE5N2ZlNDczMmQzZGUzZDYxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUt
aW50ZXJmYWNlL2F1dG9tYXRpb24tY2hhbmdlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBp
L3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9hdXRvbWF0aW9uLWNoYW5nZXMtZXhwZWN0ZWQudHh0
CkBAIC0xLDcgKzEsMyBAQAotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWpl
Y3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3Rh
dGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxp
ZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVz
cyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFS
VEVELiAKIFBBU1MgRXhlY3V0aW5nICJTZXQgTGlzdGVuZXIucG9zaXRpb25YLnZhbHVlIiAKQEAg
LTksNTcgKzUsNzUgQEAgUEFTUyBFeGVjdXRpbmcgIkxpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1
ZSIKIFBBU1MgRXhlY3V0aW5nICJMaXN0ZW5lci5zZXRQb3NpdGlvbiIgCiBQQVNTIEF1ZGl0IHJl
cG9ydCAKIFBBU1MgPiBbU2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0gIAotUEFTUyAgIGxp
c3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQwWzA6NTExXSBlcXVhbHMgWzAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKLVBB
U1MgICBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1ZTogb3V0cHV0MVswOjUxMV0gaXMgbm90IGNvbnN0
YW50bHkgMCAoY29udGFpbnMgNTExIGRpZmZlcmVudCB2YWx1ZXMpLiAKLVBBU1MgICBsaXN0ZW5y
LnBvc2l0aW9uWC52YWx1ZTogb3V0cHV0MFs1MTI6XSBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyAxNTM2IGRpZmZlcmVudCB2YWx1ZXMpLiAKLUZBSUwgWCBsaXN0ZW5yLnBvc2l0aW9uWC52
YWx1ZTogb3V0cHV0MVs1MTI6XSBkb2VzIG5vdCBlcXVhbCBbLTEuOTEzNzAyMzY0OTEyMjUzM2Ut
MTcsLTEuOTUxNDk3MjM5NzE2NTM2MmUtMTcsLTEuOTgyODIxMDgwNTg4ODE2OGUtMTcsLTIuMDA3
NTY3ODQyOTc0NTY1N2UtMTcsLTIuMDI1NjU4MjgyOTcxMTAwNGUtMTcsLTIuMDM3MDI5NTM0ODUx
ODY3ZS0xNywtMi4wNDE2NDYwMjk4NTA1MjUzZS0xNywtMi4wMzk0OTE1NTUyMjcwNjk3ZS0xNywt
Mi4wMzA1NzMzOTAxNzA4OTA1ZS0xNywtMi4wMTQ5MjE0Nzg2MjAxNjJlLTE3LC0xLjk5MjU4NjYw
OTQ2NDQ5NTNlLTE3LC0xLjk2MzY0NDA1NjEzOTYzMjRlLTE3LC0xLjkyODE4ODc3ODk3OTg5NDVl
LTE3LC0xLjg4NjMzOTU2MTEyMTI0NDJlLTE3LC0xLjgzODIzMzg3OTk4MTQ4NzhlLTE3LC0xLjc4
NDAzMzAzNTc4MDA3MzJlLTE3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgorRkFJTCBYIGxp
c3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQwWzA6NTExXSBkb2VzIG5vdCBlcXVhbCBbMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjFlLTE2LCJyZWxhdGl2ZVRocmVzaG9sZCI6
MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0
aHJlc2hvbGQKLQlbMF0JLTMuMTI1MzEzMjIyNDA4Mjk0N2UtMQktMS45MTM3MDIzNjQ5MTIyNTMz
ZS0xNwkzLjEyNTMxMzIyMjQwODI5NDdlLTEJMS42MzMxMjM5Nzk4MzY2NDMwZSsxNgkwLjAwMDAw
MDAwMDAwMDAwMDBlKzAKLQlbMV0JLTMuMTg3MDM3MTEwMzI4Njc0M2UtMQktMS45NTE0OTcyMzk3
MTY1MzYyZS0xNwkzLjE4NzAzNzExMDMyODY3NDNlLTEJMS42MzMxMjQwNjc3NDk5NTI4ZSsxNgkw
LjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbMl0JLTMuMjM4MTkyNDk4NjgzOTI5NGUtMQktMS45ODI4
MjEwODA1ODg4MTY4ZS0xNwkzLjIzODE5MjQ5ODY4MzkyOTRlLTEJMS42MzMxMjM5MDEyODYzMDIw
ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbM10JLTMuMjc4NjA3MTMwMDUwNjU5MmUtMQkt
Mi4wMDc1Njc4NDI5NzQ1NjU3ZS0xNwkzLjI3ODYwNzEzMDA1MDY1OTJlLTEJMS42MzMxMjM5NTIy
MTExNjE0ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbNF0JLTMuMzA4MTUxMDY2MzAzMjUz
MmUtMQktMi4wMjU2NTgyODI5NzExMDA0ZS0xNwkzLjMwODE1MTA2NjMwMzI1MzJlLTEJMS42MzMx
MjM5NTQ4NzExNDM0ZSsxNgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQkuLi5hbmQgMTUzMSBtb3Jl
IGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMy4zMzQ0NDQ3NjEyNzYyNDUxZS0xIGF0IGluZGV4
IG9mIDM4OC4KLQlbMzg4XQkzLjMzNDQ0NDc2MTI3NjI0NTFlLTEJMi4wNDE3NTg2OTE4NDk5NTUx
ZS0xNwkzLjMzNDQ0NDc2MTI3NjI0NTFlLTEJMS42MzMxMjM4MjMzOTEyMTU0ZSsxNgkwLjAwMDAw
MDAwMDAwMDAwMDBlKzAKLQlNYXggUmVsRXJyb3Igb2YgMS42MzMxMjQxNDU3NzQxMTQ2ZSsxNiBh
dCBpbmRleCBvZiAxMjIuCi0JWzEyMl0JLTMuMDg3MjY1NDkxNDg1NTk1N2UtMQktMS44OTA0MDQ2
NTc1MjM1NzQ4ZS0xNwkzLjA4NzI2NTQ5MTQ4NTU5NTdlLTEJMS42MzMxMjQxNDU3NzQxMTQ2ZSsx
NgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMF0JMS44OTgzMDc4MTg5MTk0MjAyZS00CTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAkxLjg5ODMwNzgxODkxOTQyMDJlLTQJSW5maW5pdHkJOS45OTk5OTk5
OTk5OTk5OTk4ZS0xNworCVsxXQkzLjI5NjA2MTE4NjExOTkxNDFlLTQJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCTMuMjk2MDYxMTg2MTE5OTE0MWUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThl
LTE3CisJWzJdCTQuMTEyMTg5MzQ0NTk2MTE3N2UtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJNC4x
MTIxODkzNDQ1OTYxMTc3ZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwlbM10J
NC4yNzkwODE0NzY4NTIyOTc4ZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAk0LjI3OTA4MTQ3Njg1
MjI5NzhlLTQJSW5maW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCVs0XQkzLjc0NDU0NTk3
NDc2ODY5ODJlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTMuNzQ0NTQ1OTc0NzY4Njk4MmUtNAlJ
bmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJLi4uYW5kIDUwNyBtb3JlIGVycm9ycy4K
KwlNYXggQWJzRXJyb3Igb2YgMy4xMTY0MTE1NjY3MzQzMTQwZS0xIGF0IGluZGV4IG9mIDUxMS4K
KwlbNTExXQktMy4xMTY0MTE1NjY3MzQzMTQwZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAkzLjEx
NjQxMTU2NjczNDMxNDBlLTEJSW5maW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNworCU1heCBS
ZWxFcnJvciBvZiBJbmZpbml0eSBhdCBpbmRleCBvZiAwLgorIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQx
WzA6NTExXSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA1MTIgZGlmZmVyZW50IHZhbHVl
cykuIAorUEFTUyAgIGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQwWzUxMjpdIGlzIG5v
dCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDEwMjQgZGlmZmVyZW50IHZhbHVlcykuIAorRkFJTCBY
IGxpc3RlbnIucG9zaXRpb25YLnZhbHVlOiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFsIFst
MC4zMDg5NjcwODM2OTI1NTA2NiwtMC4zMDIxNzk1NDUxNjQxMDgzLC0wLjI5MTM1NTA3MzQ1MTk5
NTg1LC0wLjI3NjYyNDI2MjMzMjkxNjI2LC0wLjI1ODE2OTgwMDA0MzEwNjEsLTAuMjM2MjI0Njk2
MDQwMTUzNSwtMC4yMTEwNjkxMDcwNTU2NjQwNiwtMC4xODMwMjcxNDgyNDY3NjUxNCwtMC4xNTI0
NjIwMDU2MTUyMzQzOCwtMC4xMTk3NzE1NTUwNjYxMDg3LC0wLjA4NTM4Mzc3Mjg1MDAzNjYyLC0w
LjA0OTc1MDA4MjE5NDgwNTE0NSwtMC4wMTMzNDAxNDUzNDk1MDI1NjMsMC4wMjMzNjQ2MDM1MTk0
Mzk2OTcsMC4wNTk4NzcxMDEzMzE5NDkyMzQsMC4wOTU3MTE0OTk0NTI1OTA5NC4uLl0gd2l0aCBh
biBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0
aXZlVGhyZXNob2xkIjowfS4KKwlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJl
bEVycm9yCQlUZXN0IHRocmVzaG9sZAorCVswXQktOC4xMDg5ODYwMjAwODgxOTU4ZS0xCS0zLjA4
OTY3MDgzNjkyNTUwNjZlLTEJNS4wMTkzMTUxODMxNjI2ODkyZS0xCTEuNjI0NTQ2OTAwOTc1ODE2
NGUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMV0JLTcuOTE3OTk0MjYwNzg3OTYzOWUtMQkt
My4wMjE3OTU0NTE2NDEwODI4ZS0xCTQuODk2MTk4ODA5MTQ2ODgxMWUtMQkxLjYyMDI5NDU4NTYy
MDU1OTllKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzJdCS03LjYyMjAyMDI0NDU5ODM4ODdl
LTEJLTIuOTEzNTUwNzM0NTE5OTU4NWUtMQk0LjcwODQ2OTUxMDA3ODQzMDJlLTEJMS42MTYwNTg4
NzA4MTA4NDQzZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVszXQktNy4yMjQ5ODQ3NjUwNTI3
OTU0ZS0xCS0yLjc2NjI0MjYyMzMyOTE2MjZlLTEJNC40NTg3NDIxNDE3MjM2MzI4ZS0xCTEuNjEx
ODQwNTg5ODc0Nzc4N2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbNF0JLTYuNzMyMTM1NDE1
MDc3MjA5NWUtMQktMi41ODE2OTgwMDA0MzEwNjA4ZS0xCTQuMTUwNDM3NDE0NjQ2MTQ4N2UtMQkx
LjYwNzYzODYyMTU0MDIyNjFlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJLi4uYW5kIDEwMTkg
bW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDUuMDE5MzE1MTgzMTYyNjg5MmUtMSBhdCBp
bmRleCBvZiAwLgorCU1heCBSZWxFcnJvciBvZiAxLjYyNDU0NjkwMDk3NTgxNjRlKzAgYXQgaW5k
ZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBb
U2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0gMSBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUg
ZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbU2V0
IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0gMiBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbTGlzdGVu
ZXIucG9zaXRpb25YLnNldFZhbHVlXSAgCiBQQVNTICAgbGlzdGVuZXIucG9zaXRpb25YLnNldFZh
bHVlQVRUaW1lOiBvdXRwdXQwWzA6NTExXSBlcXVhbHMgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgICBsaXN0ZW5l
ci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFu
dGx5IDAgKGNvbnRhaW5zIDUxMSBkaWZmZXJlbnQgdmFsdWVzKS4gCiBQQVNTICAgbGlzdGVuZXIu
cG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBjb25zdGFudGx5
IDAgKGNvbnRhaW5zIDE1MzYgZGlmZmVyZW50IHZhbHVlcykuIAotRkFJTCBYIGxpc3RlbmVyLnBv
c2l0aW9uWC5zZXRWYWx1ZUFUVGltZTogb3V0cHV0MVs1MTI6XSBkb2VzIG5vdCBlcXVhbCBbLTAu
MDAwMjcyMjk2OTUxMTUyMzg0MywtMC4wMDA1NjA0NzU2Mjk3NTQzNjQ1LC0wLjAwMDg2MTk2OTE5
NDM3NDk3ODUsLTAuMDAxMTc0MDQ0OTExNzQ5NjYxLC0wLjAwMTQ5MzgyMjA4NDczOTgwNDMsLTAu
MDAxODE4MjgzODEwMjgwMjYzNCwtMC4wMDIxNDQyOTk0NDc1MzY0Njg1LC0wLjAwMjQ2ODYzODEy
MjA4MTc1NjYsLTAuMDAyNzg3OTkxMTk0MDU0NDg0NCwtMC4wMDMwOTg5ODk4MzY4NzE2MjQsLTAu
MDAzMzk4MjI1ODc1NTcxMzcsLTAuMDAzNjgyMjc0ODM3MDQ2ODYxNiwtMC4wMDM5NDc3MTI5NDY2
ODMxNjgsLTAuMDA0MTkxMTQ2MjMyMTg3NzQ4LC0wLjAwNDQwOTIyMTQ2NjYzMDY5NywtMC4wMDQ1
OTg2NjE3OTE1MzMyMzIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggbGlzdGVu
ZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFs
IFswLjAwMDE4OTgzMDc4MTg5MTk0MjAyLDAuMDAwMzI5NjA2MTE4NjExOTkxNCwwLjAwMDQxMTIx
ODkzNDQ1OTYxMTgsMC4wMDA0Mjc5MDgxNDc2ODUyMjk4LDAuMDAwMzc0NDU0NTk3NDc2ODY5OCww
LjAwMDI0NzM0NjQxMTkyNDgwOTIsMC4wMDAwNDQ5MTQ0MDk5NTQ3OTkzNCwtMC4wMDAyMzI1NzE3
OTQxODU3ODc0NCwtMC4wMDA1ODI4NDIwMzk4NzU2ODYyLC0wLjAwMTAwMTYxMDMwNDIyODk2MTUs
LTAuMDAxNDgyNTkyMDgwNzE5NzY5LC0wLjAwMjAxNzU3NzQxMTYwNjkwOCwtMC4wMDI1OTY1MzM2
MjQ0NTUzMzI4LC0wLjAwMzIwNzc1NjIwNjM5MzI0MiwtMC4wMDM4MzgwNTI3NDAzMjA1NjMzLC0w
LjAwNDQ3Mjk3MzI5MDgzMDg1MS4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9m
IHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlB
Y3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsw
XQktMy4xNTU0MjI1MDg3MTY1ODMzZS0xCS0yLjcyMjk2OTUxMTUyMzg0MjhlLTQJMy4xNTI2OTk1
MzkyMDUwNTk0ZS0xCTEuMTU3ODE2Njg3MjA5NTE5NmUrMwkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
LQlbMV0JLTMuMjQ4MjY0Nzg5NTgxMjk4OGUtMQktNS42MDQ3NTYyOTc1NDM2NDQ5ZS00CTMuMjQy
NjYwMDMzMjgzNzU1MmUtMQk1Ljc4NTU1MDQ1MjM5ODYwMzFlKzIJMC4wMDAwMDAwMDAwMDAwMDAw
ZSswCi0JWzJdCS0zLjMzMTIzNDQ1NTEwODY0MjZlLTEJLTguNjE5NjkxOTQzNzQ5Nzg1NGUtNAkz
LjMyMjYxNDc2MzE2NDg5MjhlLTEJMy44NTQ2NzkyNDQ3NDI3ODkwZSsyCTAuMDAwMDAwMDAwMDAw
MDAwMGUrMAotCVszXQktMy40MDM4NDI3NDcyMTE0NTYzZS0xCS0xLjE3NDA0NDkxMTc0OTY2MTBl
LTMJMy4zOTIxMDIyOTgwOTM5NTk3ZS0xCTIuODg5MjQ0MDY5MDY5NTIzMGUrMgkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAKLQlbNF0JLTMuNDY1NjQyOTI5MDc3MTQ4NGUtMQktMS40OTM4MjIwODQ3Mzk4
MDQzZS0zCTMuNDUwNzA0NzA4MjI5NzUwNGUtMQkyLjMwOTk4MzcyNzk2OTA0OTZlKzIJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCisJWzBdCTIuMTk5NzkxMDczNzk5MTMzM2UtMQkxLjg5ODMwNzgxODkx
OTQyMDJlLTQJMi4xOTc4OTI3NjU5ODAyMTM5ZS0xCTEuMTU3ODE2ODQzMDE5MzQwOWUrMwkwLjAw
MDAwMDAwMDAwMDAwMDBlKzAKKwlbMV0JMS45MTAyNDg5OTQ4MjcyNzA1ZS0xCTMuMjk2MDYxMTg2
MTE5OTE0MWUtNAkxLjkwNjk1MjkzMzY0MTE1MDZlLTEJNS43ODU1NTA3NzA5MzY5NzM4ZSsyCTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAorCVsyXQkxLjU4OTIyOTI1NTkxNDY4ODFlLTEJNC4xMTIxODkz
NDQ1OTYxMTc3ZS00CTEuNTg1MTE3MDY2NTcwMDkyMGUtMQkzLjg1NDY3OTE4MzYxNTY5NDVlKzIJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzNdCTEuMjQwNjEwMjU2NzkxMTE0OGUtMQk0LjI3OTA4
MTQ3Njg1MjI5NzhlLTQJMS4yMzYzMzExNzUzMTQyNjI1ZS0xCTIuODg5MjQ0Mjk2OTQxMjkyOWUr
MgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbNF0JOC42ODcyODYwNzg5Mjk5MDExZS0yCTMuNzQ0
NTQ1OTc0NzY4Njk4MmUtNAk4LjY0OTg0MDYxOTE4MjIxNDFlLTIJMi4zMDk5ODM4MjExMjcwNzcz
ZSsyCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAogCS4uLmFuZCAxNTMxIG1vcmUgZXJyb3JzLgotCU1h
eCBBYnNFcnJvciBvZiA1Ljk1NzM3NTc2NDg0NjgwMThlLTEgYXQgaW5kZXggb2YgMjI0LgotCVsy
MjRdCS03LjI4ODg2NjA0MzA5MDgyMDNlLTEJLTEuMzMxNDkwMjc4MjQ0MDE4NmUtMQk1Ljk1NzM3
NTc2NDg0NjgwMThlLTEJNC40NzQyMTY0OTQyNDU0MTI4ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUr
MAotCU1heCBSZWxFcnJvciBvZiAxLjE1NzgxNjY4NzIwOTUxOTZlKzMgYXQgaW5kZXggb2YgMC4K
KwlNYXggQWJzRXJyb3Igb2YgNS45NjY5NTEyNTEwMjk5NjgzZS0xIGF0IGluZGV4IG9mIDIzOC4K
KwlbMjM4XQktNy4zOTYyOTU2NjY2OTQ2NDExZS0xCS0xLjQyOTM0NDQxNTY2NDY3MjllLTEJNS45
NjY5NTEyNTEwMjk5NjgzZS0xCTQuMTc0NjA3MDMzNTcxNTU1M2UrMAkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAKKwlNYXggUmVsRXJyb3Igb2YgMS4xNTc4MTY4NDMwMTkzNDA5ZSszIGF0IGluZGV4IG9m
IDAuCiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW0xpc3Rl
bmVyLnBvc2l0aW9uWC5zZXRWYWx1ZV0gMSBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbTGlzdGVuZXIu
c2V0UG9zaXRpb25dICAKLVBBU1MgICBsaXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQwWzA6NTEx
XSBlcXVhbHMgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKLVBBU1MgICBsaXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQxWzA6
NTExXSBpcyBub3QgY29uc3RhbnRseSAwIChjb250YWlucyA1MTEgZGlmZmVyZW50IHZhbHVlcyku
IAotUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDBbNTEyOl0gaXMgbm90IGNvbnN0
YW50bHkgMCAoY29udGFpbnMgMTUzNiBkaWZmZXJlbnQgdmFsdWVzKS4gCi1GQUlMIFggbGlzdGVu
ZXIuc2V0UG9zdGlvbjogb3V0cHV0MVs1MTI6XSBkb2VzIG5vdCBlcXVhbCBbLTEuOTEzNzAyMzY0
OTEyMjUzM2UtMTcsLTEuOTUxNDk3MjM5NzE2NTM2MmUtMTcsLTEuOTgyODIxMDgwNTg4ODE2OGUt
MTcsLTIuMDA3NTY3ODQyOTc0NTY1N2UtMTcsLTIuMDI1NjU4MjgyOTcxMTAwNGUtMTcsLTIuMDM3
MDI5NTM0ODUxODY3ZS0xNywtMi4wNDE2NDYwMjk4NTA1MjUzZS0xNywtMi4wMzk0OTE1NTUyMjcw
Njk3ZS0xNywtMi4wMzA1NzMzOTAxNzA4OTA1ZS0xNywtMi4wMTQ5MjE0Nzg2MjAxNjJlLTE3LC0x
Ljk5MjU4NjYwOTQ2NDQ5NTNlLTE3LC0xLjk2MzY0NDA1NjEzOTYzMjRlLTE3LC0xLjkyODE4ODc3
ODk3OTg5NDVlLTE3LC0xLjg4NjMzOTU2MTEyMTI0NDJlLTE3LC0xLjgzODIzMzg3OTk4MTQ4Nzhl
LTE3LC0xLjc4NDAzMzAzNTc4MDA3MzJlLTE3Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9Lgor
RkFJTCBYIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDBbMDo1MTFdIGRvZXMgbm90IGVxdWFs
IFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MWUtMTYsInJlbGF0aXZlVGhyZXNo
b2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlU
ZXN0IHRocmVzaG9sZAotCVswXQktMy4xMjUzMTMyMjI0MDgyOTQ3ZS0xCS0xLjkxMzcwMjM2NDkx
MjI1MzNlLTE3CTMuMTI1MzEzMjIyNDA4Mjk0N2UtMQkxLjYzMzEyMzk3OTgzNjY0MzBlKzE2CTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAotCVsxXQktMy4xODcwMzcxMTAzMjg2NzQzZS0xCS0xLjk1MTQ5
NzIzOTcxNjUzNjJlLTE3CTMuMTg3MDM3MTEwMzI4Njc0M2UtMQkxLjYzMzEyNDA2Nzc0OTk1Mjhl
KzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsyXQktMy4yMzgxOTI0OTg2ODM5Mjk0ZS0xCS0x
Ljk4MjgyMTA4MDU4ODgxNjhlLTE3CTMuMjM4MTkyNDk4NjgzOTI5NGUtMQkxLjYzMzEyMzkwMTI4
NjMwMjBlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszXQktMy4yNzg2MDcxMzAwNTA2NTky
ZS0xCS0yLjAwNzU2Nzg0Mjk3NDU2NTdlLTE3CTMuMjc4NjA3MTMwMDUwNjU5MmUtMQkxLjYzMzEy
Mzk1MjIxMTE2MTRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVs0XQktMy4zMDgxNTEwNjYz
MDMyNTMyZS0xCS0yLjAyNTY1ODI4Mjk3MTEwMDRlLTE3CTMuMzA4MTUxMDY2MzAzMjUzMmUtMQkx
LjYzMzEyMzk1NDg3MTE0MzRlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCS4uLmFuZCAxNTMx
IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAzLjMzNDQ0NDc2MTI3NjI0NTFlLTEgYXQg
aW5kZXggb2YgMzg4LgotCVszODhdCTMuMzM0NDQ0NzYxMjc2MjQ1MWUtMQkyLjA0MTc1ODY5MTg0
OTk1NTFlLTE3CTMuMzM0NDQ0NzYxMjc2MjQ1MWUtMQkxLjYzMzEyMzgyMzM5MTIxNTRlKzE2CTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBSZWxFcnJvciBvZiAxLjYzMzEyNDE0NTc3NDExNDZl
KzE2IGF0IGluZGV4IG9mIDEyMi4KLQlbMTIyXQktMy4wODcyNjU0OTE0ODU1OTU3ZS0xCS0xLjg5
MDQwNDY1NzUyMzU3NDhlLTE3CTMuMDg3MjY1NDkxNDg1NTk1N2UtMQkxLjYzMzEyNDE0NTc3NDEx
NDZlKzE2CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVswXQkxLjg5ODMwNzgxODkxOTQyMDJlLTQJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuODk4MzA3ODE4OTE5NDIwMmUtNAlJbmZpbml0eQk5Ljk5
OTk5OTk5OTk5OTk5OThlLTE3CisJWzFdCTMuMjk2MDYxMTg2MTE5OTE0MWUtNAkwLjAwMDAwMDAw
MDAwMDAwMDBlKzAJMy4yOTYwNjExODYxMTk5MTQxZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5
OTk5OGUtMTcKKwlbMl0JNC4xMTIxODkzNDQ1OTYxMTc3ZS00CTAuMDAwMDAwMDAwMDAwMDAwMGUr
MAk0LjExMjE4OTM0NDU5NjExNzdlLTQJSW5maW5pdHkJOS45OTk5OTk5OTk5OTk5OTk4ZS0xNwor
CVszXQk0LjI3OTA4MTQ3Njg1MjI5NzhlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTQuMjc5MDgx
NDc2ODUyMjk3OGUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzRdCTMuNzQ0
NTQ1OTc0NzY4Njk4MmUtNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJMy43NDQ1NDU5NzQ3Njg2OTgy
ZS00CUluZmluaXR5CTkuOTk5OTk5OTk5OTk5OTk5OGUtMTcKKwkuLi5hbmQgNTA3IG1vcmUgZXJy
b3JzLgorCU1heCBBYnNFcnJvciBvZiAzLjExNjQxMTU2NjczNDMxNDBlLTEgYXQgaW5kZXggb2Yg
NTExLgorCVs1MTFdCS0zLjExNjQxMTU2NjczNDMxNDBlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CTMuMTE2NDExNTY2NzM0MzE0MGUtMQlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJ
TWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDAuCisgYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0
MVswOjUxMV0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNTEyIGRpZmZlcmVudCB2YWx1
ZXMpLiAKK1BBU1MgICBsaXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBj
b25zdGFudGx5IDAgKGNvbnRhaW5zIDEwMjQgZGlmZmVyZW50IHZhbHVlcykuIAorRkFJTCBYIGxp
c3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDFbNTEyOl0gZG9lcyBub3QgZXF1YWwgWy0wLjMwODk2
NzA4MzY5MjU1MDY2LC0wLjMwMjE3OTU0NTE2NDEwODMsLTAuMjkxMzU1MDczNDUxOTk1ODUsLTAu
Mjc2NjI0MjYyMzMyOTE2MjYsLTAuMjU4MTY5ODAwMDQzMTA2MSwtMC4yMzYyMjQ2OTYwNDAxNTM1
LC0wLjIxMTA2OTEwNzA1NTY2NDA2LC0wLjE4MzAyNzE0ODI0Njc2NTE0LC0wLjE1MjQ2MjAwNTYx
NTIzNDM4LC0wLjExOTc3MTU1NTA2NjEwODcsLTAuMDg1MzgzNzcyODUwMDM2NjIsLTAuMDQ5NzUw
MDgyMTk0ODA1MTQ1LC0wLjAxMzM0MDE0NTM0OTUwMjU2MywwLjAyMzM2NDYwMzUxOTQzOTY5Nyww
LjA1OTg3NzEwMTMzMTk0OTIzNCwwLjA5NTcxMTQ5OTQ1MjU5MDk0Li4uXSB3aXRoIGFuIGVsZW1l
bnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LgorCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJ
CVRlc3QgdGhyZXNob2xkCisJWzBdCS04LjEwODk4NjAyMDA4ODE5NThlLTEJLTMuMDg5NjcwODM2
OTI1NTA2NmUtMQk1LjAxOTMxNTE4MzE2MjY4OTJlLTEJMS42MjQ1NDY5MDA5NzU4MTY0ZSswCTAu
MDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQktNy45MTc5OTQyNjA3ODc5NjM5ZS0xCS0zLjAyMTc5
NTQ1MTY0MTA4MjhlLTEJNC44OTYxOTg4MDkxNDY4ODExZS0xCTEuNjIwMjk0NTg1NjIwNTU5OWUr
MAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMl0JLTcuNjIyMDIwMjQ0NTk4Mzg4N2UtMQktMi45
MTM1NTA3MzQ1MTk5NTg1ZS0xCTQuNzA4NDY5NTEwMDc4NDMwMmUtMQkxLjYxNjA1ODg3MDgxMDg0
NDNlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzNdCS03LjIyNDk4NDc2NTA1Mjc5NTRlLTEJ
LTIuNzY2MjQyNjIzMzI5MTYyNmUtMQk0LjQ1ODc0MjE0MTcyMzYzMjhlLTEJMS42MTE4NDA1ODk4
NzQ3Nzg3ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVs0XQktNi43MzIxMzU0MTUwNzcyMDk1
ZS0xCS0yLjU4MTY5ODAwMDQzMTA2MDhlLTEJNC4xNTA0Mzc0MTQ2NDYxNDg3ZS0xCTEuNjA3NjM4
NjIxNTQwMjI2MWUrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwkuLi5hbmQgMTAxOSBtb3JlIGVy
cm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgNS4wMTkzMTUxODMxNjI2ODkyZS0xIGF0IGluZGV4IG9m
IDAuCisJTWF4IFJlbEVycm9yIG9mIDEuNjI0NTQ2OTAwOTc1ODE2NGUrMCBhdCBpbmRleCBvZiAw
LgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtMaXN0ZW5l
ci5zZXRQb3NpdGlvbl0gMSBvdXQgb2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbTGlzdGVuZXIuc2V0UG9zaXRp
b25dIDIgb3V0IG9mIDQgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCiBGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDMg
b3V0IG9mIDMgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNl
L3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFu
bmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDA5MmY0M2E5ZGIzNDcwZWNkYzFmMjEyNzgyOTEyOGYzYTQxYzA2N2QuLmM4MzIxZDY1OGEw
Y2ZlYjZkYWY1NzQ2NDFhMzAzN2RhYTlhMmJhZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
cGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRpb24tYmFzaWMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2UvcGFubmVyLWF1dG9tYXRp
b24tYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNCBAQAogCi1IYXJuZXNzIEVycm9yIChG
QUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4KLQogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFT
UyBFeGVjdXRpbmcgIlN0ZXJlbyBwYW5uZXIucG9zaXRpb25YIiAKIFBBU1MgRXhlY3V0aW5nICJN
b25vIHBhbm5lci5wb3NpdGlvblgiIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hh
cGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1
ZGlvLWFwaS90aGUtd2F2ZXNoYXBlcm5vZGUtaW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2
ZS1leHBlY3RlZC50eHQKaW5kZXggMmFiNGUzYmYwNGQ4ZDA5YTViZmRiZDNkZTBhMzQ0NTU4NWMx
ZDM0MC4uNzY5YmJhMTVmNmNjMTM0M2EyNzQ5ZjMyYTdkZTIwNDkxZGRiZTM3ZCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5
LWN1cnZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWlu
dGVyZmFjZS93YXZlc2hhcGVyLWNvcHktY3VydmUtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDE2
IEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxp
ZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVz
cyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFS
VEVELiAKIFBBU1MgRXhlY3V0aW5nICJ0ZXN0IGNvcHlpbmciIAogUEFTUyBBdWRpdCByZXBvcnQg
CiBQQVNTID4gW3Rlc3QgY29weWluZ10gTW9kaWZ5aW5nIGN1cnZlIHNob3VsZCBub3QgbW9kaWZ5
IFdhdmVTaGFwZXIgCi1QQVNTICAgT3V0cHV0IG9mIFdhdmVTaGFwZXIgd2l0aCBtb2RpZmllZCBj
dXJ2ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5IFswLC0wLjAzNjA2NjE3NDUwNzE0MTExLC0w
LjEwNzQwNDgyODA3MTU5NDI0LC0wLjEzMDg0NTE4OTA5NDU0MzQ2LC0wLjE4ODMyNTA0NzQ5Mjk4
MDk2LC0wLjIzMzkxNDAxNzY3NzMwNzEzLC0wLjI4NTgzMjA0NzQ2MjQ2MzQsLTAuMzEwNTIzODY3
NjA3MTE2NywtMC4zOTQ1ODk3ODE3NjExNjk0MywtMC40MDU0MTEwMDUwMjAxNDE2LC0wLjQ2NTM5
MzU0MzI0MzQwODIsLTAuNTI5NTU0NDg2Mjc0NzE5MiwtMC41NDA3Mzg1ODI2MTEwODQsLTAuNjE1
NDUyNzY2NDE4NDU3LC0wLjY1Nzk5MTQwOTMwMTc1NzgsLTAuNjk4NDQzNzcwNDA4NjMwNC4uLl0u
IAotUEFTUyA8IFt0ZXN0IGNvcHlpbmddIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEg
YXNzZXJ0aW9ucykgCi1QQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgdGFza3Mg
cmFuIHN1Y2Nlc3NmdWxseS4gCitQQVNTICAgTW9kaWZ5aW5nIGN1cnZlIGFycmF5IGF0IHRpbWUg
MC4wMTYgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorRkFJTCBYIE91dHB1dCBvZiBXYXZl
U2hhcGVyIHdpdGggbW9kaWZpZWQgY3VydmUgZXhwZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFy
cmF5IFstMC4wNzU2NTIzNjA5MTYxMzc3LC0wLjExNjU5MTIxNTEzMzY2Njk5LC0wLjE1NTgzOTIw
NDc4ODIwOCwtMC4yMDg2Njc1MTY3MDgzNzQwMiwtMC4yNjA2MTcyNTYxNjQ1NTA4LC0wLjI5NDQ4
Mzc4MDg2MDkwMDksLTAuMzQ1NDIwMzYwNTY1MTg1NTUsLTAuNDExNTg0NDk2NDk4MTA3OSwtMC40
MTQ1NDE2MDIxMzQ3MDQ2LC0wLjUxMTc0NTY5MTI5OTQzODUsLTAuNTI0NTIwMjc3OTc2OTg5Nywt
MC41Nzc4NTI0ODc1NjQwODY5LC0wLjYzMTI2NjM1NTUxNDUyNjQsLTAuNjg5NTQwNjI0NjE4NTMw
MywtMC42Nzk2NDM4Njk0MDAwMjQ0LC0wLjgyMjQ5MTc2NTAyMjI3NzguLi5dIGJ1dCBkaWZmZXJz
IGluIDc2OCBwbGFjZXM6CisJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKKwlbMF0JMS43MjI4Mjcy
NTU3MjU4NjA2ZS0xCS03LjU2NTIzNjA5MTYxMzc2OTVlLTIKKwlbMV0JMS45Nzg2OTUwOTQ1ODU0
MTg3ZS0xCS0xLjE2NTkxMjE1MTMzNjY2OTllLTEKKwlbMl0JMi4yMjM5OTUwMjk5MjYzMDAwZS0x
CS0xLjU1ODM5MjA0Nzg4MjA4MDFlLTEKKwlbM10JMi41NTQxNzE5Nzk0MjczMzc2ZS0xCS0yLjA4
NjY3NTE2NzA4Mzc0MDJlLTEKKwkuLi5hbmQgNzY0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbdGVzdCBjb3B5aW5nXSAxIG91dCBvZiAy
IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQorRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiAxIHRhc2tz
IHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5k
LXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5l
YXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mZWFkYzVhNGRiNjY2N2FiNzI0M2QyMzc3OWYzODE4MzZlOGY5NDU4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJl
c3VtZS1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzNCBAQAorCitQQVNTICMgQVVESVQg
VEFTSyBSVU5ORVIgU1RBUlRFRC4gCitQQVNTIEV4ZWN1dGluZyAic3VzcGVuZC1pbnZhbGlkLWFy
Z3VtZW50IiAKK1BBU1MgRXhlY3V0aW5nICJzdXNwZW5kLWluLXRoZS1wYXN0IiAKK1BBU1MgRXhl
Y3V0aW5nICJzdXNwZW5kLWFmdGVyLXJlbmRlci1jb21wbGV0aW9uIiAKK1BBU1MgRXhlY3V0aW5n
ICJpZGVudGljYWwtc3VzcGVuZC10aW1lIiAKK1BBU1MgRXhlY3V0aW5nICJyZXN1bWUtYmVmb3Jl
LXN1c3BlbmQiIAorUEFTUyBFeGVjdXRpbmcgInJlc3VtZS13aXRob3V0LXN1c3BlbmQiIAorUEFT
UyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3N1c3BlbmQtaW52YWxpZC1hcmd1bWVudF0gIAorUEFT
UyAgIGNvbnRleHQuc3VzcGVuZCgpIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIFR5cGVFcnJvcjog
Tm90IGVub3VnaCBhcmd1bWVudHMuIAorUEFTUyAgIGNvbnRleHQuc3VzcGVuZCgtMS4wKSByZWpl
Y3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogc3VzcGVuZFRpbWUgY2Fubm90
IGJlIG5lZ2F0aXZlLiAKK1BBU1MgICBjb250ZXh0LnN1c3BlbmQoMi4wKSByZWplY3RlZCBjb3Jy
ZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogc3VzcGVuZFRpbWUgY2Fubm90IGJlIGdyZWF0
ZXIgdGhhbiB0b3RhbCByZW5kZXJpbmcgZHVyYXRpb24uIAorUEFTUyA8IFtzdXNwZW5kLWludmFs
aWQtYXJndW1lbnRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykg
CitQQVNTID4gW3N1c3BlbmQtaW4tdGhlLXBhc3RdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEgc3Vz
cGVuZCBpbiB0aGUgcGFzdCByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJv
cjogU3VzcGVuc2lvbiBmcmFtZSBpcyBlYXJsaWVyIHRoYW4gY3VycmVudCBmcmFtZS4gCitQQVNT
ICAgUHJvbWlzZSByZXNvbHZlZCBjb3JyZWN0bHkuIAorUEFTUyA8IFtzdXNwZW5kLWluLXRoZS1w
YXN0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAyIGFzc2VydGlvbnMpIAorUEFTUyA+
IFtzdXNwZW5kLWFmdGVyLXJlbmRlci1jb21wbGV0aW9uXSAgCitQQVNTICAgU2NoZWR1bGluZyBh
IHN1c3BlbmQgYWZ0ZXIgdGhlIHJlbmRlciBjb21wbGV0aW9uIHJlamVjdGVkIGNvcnJlY3RseSB3
aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFu
IHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNTIDwgW3N1c3BlbmQtYWZ0ZXItcmVuZGVy
LWNvbXBsZXRpb25dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykg
CitQQVNTID4gW2lkZW50aWNhbC1zdXNwZW5kLXRpbWVdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEg
c3VzcGVuZCBhdCBmcmFtZSAxNjAgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IFNjaGVkdWxpbmcgYW5vdGhlciBzdXNwZW5kIGF0IHRoZSBzYW1lIHJlbmRlcmluZyBxdWFudHVt
IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBUaGVyZSBpcyBhbHJl
YWR5IGEgcGVuZGluZyBzdXNwZW5kIHJlcXVlc3QgYXQgdGhpcyBmcmFtZS4gCitQQVNTIDwgW2lk
ZW50aWNhbC1zdXNwZW5kLXRpbWVdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNz
ZXJ0aW9ucykgCitQQVNTID4gW3Jlc3VtZS1iZWZvcmUtc3VzcGVuZF0gIAorUEFTUyAgIFNjaGVk
dWxpbmcgYSBzdXNwZW5kIGF0IDQuNSBzZWNvbmRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBSZXN1bWluZyBhIHJ1bm5pbmcgY29udGV4dCByZXNvbHZlZCBjb3JyZWN0bHku
IAorUEFTUyA8IFtyZXN1bWUtYmVmb3JlLXN1c3BlbmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4g
KHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTID4gW3Jlc3VtZS13aXRob3V0LXN1c3BlbmRdICAK
K1BBU1MgICBSZXN1bWluZyBhIGNvbnRleHQgd2l0aG91dCBzdGFydGluZyBpdCByZWplY3RlZCBj
b3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5l
IGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90IHN0YXJ0ZWQuIAorUEFTUyA8IFtyZXN1bWUtd2l0
aG91dC1zdXNwZW5kXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMp
IAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA2IHRhc2tzIHJhbiBzdWNjZXNz
ZnVsbHkuIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9v
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OThkN2Q2M2JiODljZjU0Y2IwMzg5MTcyNmZiNzBhOTE5NzZiY2MxNgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtYmFzaWMuaHRtbApAQCAtMCwwICsxLDE1MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgPGhlYWQ+CisgICAgPHRpdGxlPgorICAgICAgb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5k
LXJlc3VtZS1iYXNpYy5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+
CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+
CisgICAgICBsZXQgc2FtcGxlUmF0ZSA9IDQ0MTAwOworICAgICAgbGV0IHJlbmRlckR1cmF0aW9u
ID0gMTsKKyAgICAgIGxldCByZW5kZXJRdWFudHVtID0gMTI4OworCisgICAgICBsZXQgYXVkaXQg
PSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisKKyAgICAgIC8vIFRhc2s6IENhbGxpbmcgc3Vz
cGVuZCB3aXRoIG5vIGFyZ3VtZW50LCBuZWdhdGl2ZSB0aW1lIG9yIHRoZSB0aW1lCisgICAgICAv
LyBiZXlvbmQgdGhlIG1heGltdW0gcmVuZGVyIGR1cmF0aW9uIHJlamVjdCB0aGUgcHJvbWlzZS4K
KyAgICAgIGF1ZGl0LmRlZmluZSgnc3VzcGVuZC1pbnZhbGlkLWFyZ3VtZW50JywgKHRhc2ssIHNo
b3VsZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGlu
ZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUp
OworCisgICAgICAgIHNob3VsZChjb250ZXh0LnN1c3BlbmQoKSwgJ2NvbnRleHQuc3VzcGVuZCgp
JykuYmVSZWplY3RlZCgpOworICAgICAgICBzaG91bGQoY29udGV4dC5zdXNwZW5kKC0xLjApLCAn
Y29udGV4dC5zdXNwZW5kKC0xLjApJykuYmVSZWplY3RlZCgpOworICAgICAgICBzaG91bGQoY29u
dGV4dC5zdXNwZW5kKDIuMCksICdjb250ZXh0LnN1c3BlbmQoMi4wKScpLmJlUmVqZWN0ZWQoKTsK
KworICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkudGhlbigoKSA9PiB0YXNrLmRvbmUo
KSk7CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazogU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4g
dGhlIHBhc3Qgc2hvdWxkIGJlIHJlamVjdGVkLgorICAgICAgYXVkaXQuZGVmaW5lKCdzdXNwZW5k
LWluLXRoZS1wYXN0JywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9
CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVu
ZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgIGNvbnRleHQuc3VzcGVuZCgwLjUp
LnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICBjb250
ZXh0LnN1c3BlbmQoY29udGV4dC5jdXJyZW50VGltZSAtIDAuMSksCisgICAgICAgICAgICAgICdT
Y2hlZHVsaW5nIGEgc3VzcGVuZCBpbiB0aGUgcGFzdCcpCisgICAgICAgICAgICAgIC5iZVJlamVj
dGVkKCk7CisKKyAgICAgICAgICBzaG91bGQoY29udGV4dAorICAgICAgICAgICAgICAgICAgICAg
LnN1c3BlbmQoCisgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5jdXJyZW50VGltZSAr
IDAuMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4g
dGhlIGZ1dHVyZScpCisgICAgICAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsKKyAgICAgICAgICAgICAgICAg
ICAgIH0pKQorICAgICAgICAgICAgICAuYmVSZXNvbHZlZCgpOworCisgICAgICAgICAgY29udGV4
dC5yZXN1bWUoKTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmlu
ZygpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6
IHN1c3BlbmRpbmcgYWZ0ZXIgcmVuZGVyaW5nIGlzIGZpbmlzaGVkIG11c3QgYmUgcmVqZWN0ZWQg
d2l0aCB0aGUKKyAgICAgIC8vIHByb3Blcmx5IGNsYW1wZWQgZnJhbWUvdGltZSBpbmZvcm1hdGlv
bi4KKyAgICAgIGF1ZGl0LmRlZmluZSgnc3VzcGVuZC1hZnRlci1yZW5kZXItY29tcGxldGlvbics
ICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgbGV0IGNvbnRleHQgPQorICAgICAgICAgICAg
bmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgc2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBz
YW1wbGVSYXRlKTsKKyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpCisgICAgICAgICAg
ICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAg
ICAgICAgY29udGV4dC5zdXNwZW5kKHJlbmRlckR1cmF0aW9uKSwKKyAgICAgICAgICAgICAgICAg
ICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhZnRlciB0aGUgcmVuZGVyIGNvbXBsZXRpb24nKQorICAg
ICAgICAgICAgICAgICAgLmJlUmVqZWN0ZWQoKTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAg
ICAudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazog
Q2FsbGluZyBtdWx0aXBsZSBzdXNwZW5kcyBhdCB0aGUgc2FtZSByZW5kZXJpbmcgcXVhbnR1bSBz
aG91bGQKKyAgICAgIC8vIHJlamVjdCB0aGUgcHJvbWlzZS4KKyAgICAgIGF1ZGl0LmRlZmluZSgn
aWRlbnRpY2FsLXN1c3BlbmQtdGltZScsICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgbGV0
IGNvbnRleHQgPQorICAgICAgICAgICAgbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgc2FtcGxl
UmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKworICAgICAgICAvLyB8c3VzcGVu
ZFRpbWUxfCBhbmQgfHN1c3BlbmRUaW1lMnwgYXJlIGlkZW50aWNhbCB3aGVuIHF1YW50aXplZCB0
byB0aGUKKyAgICAgICAgLy8gcmVuZGVyIHF1YW50dW0gc2l6ZS4gIFRoZSBmYWN0b3JzIGFyZSBh
cmJpdHJhcnkgZXhjZXB0IHRoZXkgc2hvdWxkIGJlCisgICAgICAgIC8vIGJldHdlZW4gMSAoZXhj
bHVzaXZlKSBhbmQgMiAoaW5jbHVzaXZlKS4gIFVzaW5nIGEgZmFjdG9yIG9mIDIgYWxzbworICAg
ICAgICAvLyB0ZXN0cyB0aGF0IHRpbWVzIGFyZSByb3VuZGVkIHVwLgorICAgICAgICBsZXQgc3Vz
cGVuZFRpbWUxID0gMS4yNSAqIHJlbmRlclF1YW50dW0gLyBzYW1wbGVSYXRlOworICAgICAgICBs
ZXQgc3VzcGVuZFRpbWUyID0gMiAqIHJlbmRlclF1YW50dW0gLyBzYW1wbGVSYXRlOworCisgICAg
ICAgIHNob3VsZCgKKyAgICAgICAgICAgICgpID0+IGNvbnRleHQuc3VzcGVuZChzdXNwZW5kVGlt
ZTEpLnRoZW4oKCkgPT4gY29udGV4dC5yZXN1bWUoKSksCisgICAgICAgICAgICAnU2NoZWR1bGlu
ZyBhIHN1c3BlbmQgYXQgZnJhbWUgJyArIHN1c3BlbmRUaW1lMSAqIHNhbXBsZVJhdGUpCisgICAg
ICAgICAgICAubm90VGhyb3coKTsKKworICAgICAgICBzaG91bGQoCisgICAgICAgICAgICBjb250
ZXh0LnN1c3BlbmQoc3VzcGVuZFRpbWUyKS50aGVuKCgpID0+IGNvbnRleHQucmVzdW1lKCkpLAor
ICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYW5vdGhlciBzdXNwZW5kIGF0IHRoZSBzYW1lIHJlbmRl
cmluZyBxdWFudHVtJykKKyAgICAgICAgICAgIC5iZVJlamVjdGVkKCk7CisKKyAgICAgICAgY29u
dGV4dC5zdGFydFJlbmRlcmluZygpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgfSk7
CisKKyAgICAgIC8vIFRhc2s6IFJlc3VtaW5nIGEgcnVubmluZyBjb250ZXh0IHNob3VsZCBiZSBy
ZXNvbHZlZC4KKyAgICAgIGF1ZGl0LmRlZmluZSgncmVzdW1lLWJlZm9yZS1zdXNwZW5kJywgKHRh
c2ssIHNob3VsZCkgPT4geworICAgICAgICAvLyBNYWtlIHRoZSByZW5kZXIgbGVuZ3RoIDUgdGlt
ZXMgbG9uZ2VyIHRvIG1pbmltaXplIHRoZSBmbGFraW5lc3MuCisgICAgICAgIGxldCBsb25nUmVu
ZGVyRHVyYXRpb24gPSByZW5kZXJEdXJhdGlvbiAqIDU7CisgICAgICAgIGxldCBjb250ZXh0ID0g
bmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoCisgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogbG9u
Z1JlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKworICAgICAgICAvLyBDcmVhdGUgZHVtbXkg
YXVkaW8gZ3JhcGggdG8gc2xvdyB0aGUgcmVuZGVyaW5nLgorICAgICAgICBsZXQgb3NjID0gY29u
dGV4dC5jcmVhdGVPc2NpbGxhdG9yKCk7CisgICAgICAgIGxldCBscGYgPSBjb250ZXh0LmNyZWF0
ZUJpcXVhZEZpbHRlcigpOworICAgICAgICBvc2MudHlwZSA9ICdzYXd0b290aCc7CisgICAgICAg
IG9zYy5mcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoMC4xLCAwLjApOworICAgICAgICBvc2MuZnJl
cXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDEwMDAsIGxvbmdSZW5kZXJEdXJhdGlvbiAq
IDAuNSk7CisgICAgICAgIG9zYy5mcmVxdWVuY3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMC4x
LCBsb25nUmVuZGVyRHVyYXRpb24pOworICAgICAgICBscGYuZnJlcXVlbmN5LnNldFZhbHVlQXRU
aW1lKDAuMSwgMC4wKTsKKyAgICAgICAgbHBmLmZyZXF1ZW5jeS5saW5lYXJSYW1wVG9WYWx1ZUF0
VGltZSgxMDAwLCBsb25nUmVuZGVyRHVyYXRpb24gKiAwLjUpOworICAgICAgICBscGYuZnJlcXVl
bmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDAuMSwgbG9uZ1JlbmRlckR1cmF0aW9uKTsKKyAg
ICAgICAgb3NjLmNvbm5lY3QobHBmKTsKKyAgICAgICAgbHBmLmNvbm5lY3QoY29udGV4dC5kZXN0
aW5hdGlvbik7CisgICAgICAgIG9zYy5zdGFydCgpOworCisgICAgICAgIC8vIEEgc3VzcGVuZCBp
cyBzY2hlZHVsZWQgYXQgdGhlIDkwJSBvZiB0aGUgcmVuZGVyIGR1cmF0aW9uLgorICAgICAgICBz
aG91bGQoCisgICAgICAgICAgICAoKSA9PiB7CisgICAgICAgICAgICAgIC8vIFRlc3QgaXMgZmlu
aXNoZWQgd2hlbiB0aGlzIHN1c3BlbmQgcmVzb2x2ZXMuCisgICAgICAgICAgICAgIGNvbnRleHQu
c3VzcGVuZChsb25nUmVuZGVyRHVyYXRpb24gKiAwLjkpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkp
OworICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCAn
ICsgbG9uZ1JlbmRlckR1cmF0aW9uICogMC45ICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgIC5u
b3RUaHJvdygpOworCisgICAgICAgIC8vIFdlIGhhdmUgdG8gc3RhcnQgcmVuZGVyaW5nIHRvIGdl
dCB0aGUgdGltZSBydW5uaW5nLgorICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCk7CisK
KyAgICAgICAgLy8gVGhlbiBjYWxsIHJlc3VtZSgpIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSByZW5k
ZXJpbmcgc3RhcnRzLiBSZXN1bWluZworICAgICAgICAvLyBhIGNvbnRleHQgdGhhdCBpcyBhbHJl
YWR5IHJ1bm5pbmcgc2hvdWxkIGJlIHJlc29sdmVkLgorICAgICAgICBzaG91bGQoY29udGV4dC5y
ZXN1bWUoKSwgJ1Jlc3VtaW5nIGEgcnVubmluZyBjb250ZXh0JykuYmVSZXNvbHZlZCgpOworICAg
ICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IENhbGxpbmcgcmVzdW1lIG9uIGEgY29udGV4dCB0aGF0
IGlzIG5vdCBzdGFydGVkIHNob3VsZCByZWplY3QgdGhlCisgICAgICAvLyBwcm9taXNlLgorICAg
ICAgYXVkaXQuZGVmaW5lKCdyZXN1bWUtd2l0aG91dC1zdXNwZW5kJywgKHRhc2ssIHNob3VsZCkg
PT4geworICAgICAgICBsZXQgY29udGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlv
Q29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisg
ICAgICAgIHNob3VsZChjb250ZXh0LnJlc3VtZSgpLCAnUmVzdW1pbmcgYSBjb250ZXh0IHdpdGhv
dXQgc3RhcnRpbmcgaXQnKQorICAgICAgICAgICAgLmJlUmVqZWN0ZWQoKQorICAgICAgICAgICAg
LnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgfSk7CisKKyAgICAgIGF1ZGl0LnJ1bigp
OworICAgIDwvc2NyaXB0PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFu
ZGxlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250
ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MWYxNzI3NDBhMzcyMDQ0MzUwNjMyNGRkNDNiNmFhZGQ2Y2NhZTZjMQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1
bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI2IEBACisKK1BBU1MgIyBB
VURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKK1BBU1MgRXhlY3V0aW5nICJ0ZXN0IiAKK1BBU1Mg
QXVkaXQgcmVwb3J0IAorUEFTUyA+IFt0ZXN0XSBUZXN0IGV2ZW50IGhhbmRsZXIgZnJvbSByZXN1
bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFTUyAgIEEgbmV3IHN1c3BlbmQgaGFzIGJlZW4gc2NoZWR1
bGVkIGF0IDAgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBv
bnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDAgc2Vj
b25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwLjI1
IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNo
YW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRlZCBhdCAwLjI1IHNlY29uZChz
KSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC41IHNlY29u
ZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBl
dmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRlZCBhdCAwLjUgc2Vjb25kKHMpIGlzIHRy
dWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwLjc1IHNlY29uZChzKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBo
YW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRlZCBhdCAwLjc1IHNlY29uZChzKSBpcyB0cnVlLiAK
K1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMSBzZWNvbmQocykgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjog
Y29udGV4dCBpcyBzdXNwZW5kZWQgYXQgMSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2No
ZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQg
aXMgc3VzcGVuZGVkIGF0IDEuMjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxp
bmcgYSBuZXcgc3VzcGVuZCBhdCAxLjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0
aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3Vz
cGVuZGVkIGF0IDEuNSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5l
dyBzdXNwZW5kIGF0IDEuNzUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAK
K1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVk
IGF0IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNv
bmRzIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGlt
ZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNT
ICAgb25jb21wbGV0ZSBldmVudCBoYW5kbGVyOiBjb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRvIGNs
b3NlZC4gCitQQVNTIDwgW3Rlc3RdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDE4IGFz
c2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJh
biBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZs
aW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sIGIvTGF5b3V0
VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhh
bmRsZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZDhmMmJhOTM1NDMwM2U3NGMxNGY4NzY2NTQ2NTIyZjNj
YTgxNmJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1
ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXIuaHRtbApAQCAtMCwwICsxLDk2
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAg
ICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sCisg
ICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlw
dCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+
CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQgPSBB
dWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisKKyAgICAgIGxldCBjb250ZXh0OworICAgICAgbGV0
IHJlbmRlclF1YW50dW0gPSAxMjg7CisKKyAgICAgIC8vIFRoZSBzYW1wbGUgcmF0ZSBpcyBtdWx0
aXBsZSBvZiB0aGUgcmVuZGVyaW5nIHF1YW50dW0sIHNvIHN1c3BlbnNpb24KKyAgICAgIC8vIHRp
bWVzIGluIHRoZSB0ZXN0IHdpbGwgZmFsbCBvbiB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnku
IEFsdGhvdWdoCisgICAgICAvLyB0aGlzIGlzIG5vdCBuZWNlc3NhcnksIGl0IGlzIGVhc2llciB0
byB1bmRlcnN0YW5kIHRoZSB0ZXN0LgorICAgICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFu
dHVtICogMTAwOworCisgICAgICBsZXQgcmVuZGVyRHVyYXRpb24gPSAyOworICAgICAgbGV0IHNj
aGVkdWxlZFN1c3BlbmRUaW1lID0gMDsKKworICAgICAgLy8gV2l0aCB0aGUgc2FtcGxlIHJhdGUg
c2V0dGluZyBhYm92ZSwgdGhpcyBlbnN1cmVzIHN1c3BlbnNpb24gdGltZSBmYWxsCisgICAgICAv
LyBpbiB0byB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnkuCisgICAgICBsZXQgc3VzcGVuZElu
dGVydmFsID0gMC4yNTsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAg
ICAgICAgIGxhYmVsOiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1Rlc3QgZXZl
bnQgaGFuZGxlciBmcm9tIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCknCisgICAgICAgICAgfSwKKyAg
ICAgICAgICAodGFzaywgc2hvdWxkKSA9PiB7CisgICAgICAgICAgICBjb250ZXh0ID0gbmV3IE9m
ZmxpbmVBdWRpb0NvbnRleHQoCisgICAgICAgICAgICAgICAgMSwgc2FtcGxlUmF0ZSAqIHJlbmRl
ckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKworICAgICAgICAgICAgY29udGV4dC5vbnN0YXRlY2hh
bmdlID0gZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgIGlmIChjb250ZXh0LnN0YXRlID09PSAn
c3VzcGVuZGVkJyAmJgorICAgICAgICAgICAgICAgICAgY29udGV4dC5jdXJyZW50VGltZSA9PT0g
c2NoZWR1bGVkU3VzcGVuZFRpbWUpIHsKKyAgICAgICAgICAgICAgICBzaG91bGQoCisgICAgICAg
ICAgICAgICAgICAgIGNvbnRleHQuc3RhdGUgPT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAg
ICAgICAgICAgICAgICBjb250ZXh0LmN1cnJlbnRUaW1lID09PSBzY2hlZHVsZWRTdXNwZW5kVGlt
ZSwKKyAgICAgICAgICAgICAgICAgICAgJ29uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29u
dGV4dCBpcyBzdXNwZW5kZWQgYXQgJyArCisgICAgICAgICAgICAgICAgICAgICAgICBzY2hlZHVs
ZWRTdXNwZW5kVGltZSArICcgc2Vjb25kKHMpJykKKyAgICAgICAgICAgICAgICAgICAgLmJlVHJ1
ZSgpOworICAgICAgICAgICAgICAgIHNjaGVkdWxlZFN1c3BlbmRUaW1lID0gY29udGV4dC5jdXJy
ZW50VGltZSArIHN1c3BlbmRJbnRlcnZhbDsKKworICAgICAgICAgICAgICAgIC8vIFNjaGVkdWxp
bmcgYSBzdXNwZW5kIGJlZm9yZSB0aGUgcmVuZGVyIGR1cmF0aW9uIHNob3VsZCBwYXNzLgorICAg
ICAgICAgICAgICAgIGlmIChzY2hlZHVsZWRTdXNwZW5kVGltZSA8IHJlbmRlckR1cmF0aW9uKSB7
CisgICAgICAgICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgICAgICAgKCkgPT4g
Y29udGV4dC5zdXNwZW5kKHNjaGVkdWxlZFN1c3BlbmRUaW1lKSwKKyAgICAgICAgICAgICAgICAg
ICAgICAnU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0ICcgKyBzY2hlZHVsZWRTdXNwZW5kVGlt
ZSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICcgc2Vjb25kKHMpJykKKyAgICAgICAgICAg
ICAgICAgICAgICAubm90VGhyb3coKTsKKyAgICAgICAgICAgICAgICAgIDsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICAvLyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBleGFjdGx5
IGF0IHRoZSByZW5kZXIgZHVyYXRpb24gc2hvdWxkIGJlCisgICAgICAgICAgICAgICAgLy8gcmVq
ZWN0ZWQuCisgICAgICAgICAgICAgICAgaWYgKHNjaGVkdWxlZFN1c3BlbmRUaW1lID09PSByZW5k
ZXJEdXJhdGlvbikgeworICAgICAgICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAg
ICAgICAgIGNvbnRleHQuc3VzcGVuZChzY2hlZHVsZWRTdXNwZW5kVGltZSksCisgICAgICAgICAg
ICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYXQgJyArIHJlbmRlckR1cmF0aW9uICsgJyBzZWNvbmRz
JykKKyAgICAgICAgICAgICAgICAgICAgICAuYmVSZWplY3RlZCgpOworICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgIGNvbnRleHQucmVzdW1lKCk7CisgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH07CisKKyAgICAgICAgICAgIC8vIFRoaXMgdGVzdCBpcyBmb3IgdmVyaWZ5
aW5nIGFsbCB0aGUgZXZlbnQgaGFuZGxlcnMgb24gT0FDIGFuZCB0aGF0CisgICAgICAgICAgICAv
LyBpcyB3aHkgJ29uY29tcGxldGUnIGlzIHVzZWQgaGVyZS4KKyAgICAgICAgICAgIGNvbnRleHQu
b25jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICBzaG91bGQoY29udGV4dC5z
dGF0ZSwgJ29uY29tcGxldGUgZXZlbnQgaGFuZGxlcjogY29udGV4dC5zdGF0ZScpCisgICAgICAg
ICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9zZWQnKTsKKyAgICAgICAgICAgICAgdGFzay5kb25l
KCk7CisgICAgICAgICAgICB9OworCisgICAgICAgICAgICAvLyBTY2hlZHVsZSB0aGUgZmlyc3Qg
c3VzcGVuc2lvbi4KKyAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICAoKSA9PiBj
b250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpLAorICAgICAgICAgICAgICAgICdB
IG5ldyBzdXNwZW5kIGhhcyBiZWVuIHNjaGVkdWxlZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRp
bWUgKworICAgICAgICAgICAgICAgICAgICAnIHNlY29uZChzKScpCisgICAgICAgICAgICAgICAg
Lm5vdFRocm93KCk7CisgICAgICAgICAgICA7CisKKyAgICAgICAgICAgIGNvbnRleHQuc3RhcnRS
ZW5kZXJpbmcoKTsKKyAgICAgICAgICB9KTsKKworICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9z
Y3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQt
c3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41YmJkZGRhYTJjNTE0YmU0NzdiZDJkOTM4YzIyYTMwYTcyMTVkZDAzCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJl
c3VtZS1ncmFwaC1tYW5pcHVsYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKKwor
UEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3Qi
IAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rlc3RdIFN5bmNocm9ub3VzIGdyYXBoIG1h
bmlwdWxhdGlvbiB3aXRoIHN1c3BlbmQoKSBhbmQgcmVzdW1lKCkgCitQQVNTICAgRnJhbWUgYXQg
d2hpY2ggY29udGV4dCBpcyBzdXNwZW5kZWQgaXMgZXF1YWwgdG8gMTI4MDAuIAorUEFTUyAgIENv
bm5lY3RpbmcgYSBjb25zdGFudCBidWZmZXIgdG8gZGVzdGluYXRpb24gYW5kIHN0YXJ0aW5nIGF0
IDEyODAwIGZyYW1lIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0
IGlzIHN1c3BlbmRlZCBpcyBlcXVhbCB0byAyNTYwMC4gCitQQVNTICAgRGlzY29ubmVjdGluZyBh
IGNvbnN0YW50IGJ1ZmZlciBhdCAyNTYwMCBmcmFtZSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgQnVmZmVyIGZyYW1lIFswLCAxMjgwMCkgY29udGFpbnMgb25seSB0aGUgY29u
c3RhbnQgMC4gCitGQUlMIFggQnVmZmVyIGZyYW1lIFsxMjgwMCwgMjU2MDApOiBFeHBlY3RlZCAx
IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjgwMCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5k
ZXgJQWN0dWFsCisJWzBdCTAKKwlbMV0JMAorCVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI3OTYg
bW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAg
IEJ1ZmZlciBmcmFtZSBbMjU2MDAsIDM4NDAwKSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAw
LiAKK0ZBSUwgPCBbdGVzdF0gMSBvdXQgb2YgNyBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5F
UiBGSU5JU0hFRDogMSBvdXQgb2YgMSB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0
bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzYzk4ZGM0MWU5MWFmYTcw
ODFkNzljYWY5YmNkMTgyNzgzMmExNjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxh
dGlvbi5odG1sCkBAIC0wLDAgKzEsMTIyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8
aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQt
dXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRl
c3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisK
KyAgICAgIGxldCBjb250ZXh0OworICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisgICAg
ICBsZXQgcmVuZGVyRHVyYXRpb24gPSAzOworCisgICAgICAvLyBUaGUgc2FtcGxlIHJhdGUgaXMg
bXVsdGlwbGUgb2YgdGhlIHJlbmRlcmluZyBxdWFudHVtLCBzbyBzdXNwZW5zaW9uCisgICAgICAv
LyB0aW1lcyBmYWxsIGluIHRvIHRoZSByZW5kZXIgcXVhbnR1bSBib3VuZGFyeS4KKyAgICAgIGxl
dCBzYW1wbGVSYXRlID0gcmVuZGVyUXVhbnR1bSAqIDEwMDsKKworICAgICAgLy8gU3VzcGVuZCBh
dCAxIHNlY29uZCBhbmQgYWN0aXZhdGUgdGhlIHNvdXJjZSBub2RlLiBUaGUgYXVkaW8gb3V0cHV0
CisgICAgICAvLyBzaG91bGQgYmUgMS4wIGZyb20gfHN1c3BlbmRUaW1lMXwgdG8gdGhlIG5leHQg
c3VzcGVuc2lvbi4KKyAgICAgIGxldCBzdXNwZW5kVGltZTEgPSAxOworCisgICAgICAvLyBTdXNw
ZW5kIGF0IDIgc2Vjb25kcyBhbmQgZGlzY29ubmVjdCB0aGUgbm9kZS4gVGhlIGF1ZGlvIG91dHB1
dCBzaG91bGQKKyAgICAgIC8vIGJlIDAuMCBmcm9tIHxzdXNwZW5kVGltZTJ8IHRvIHRoZSBlbmQu
CisgICAgICBsZXQgc3VzcGVuZFRpbWUyID0gMjsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAg
ICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVsOiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlw
dGlvbjoKKyAgICAgICAgICAgICAgICAnU3luY2hyb25vdXMgZ3JhcGggbWFuaXB1bGF0aW9uIHdp
dGggc3VzcGVuZCgpIGFuZCByZXN1bWUoKScKKyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNr
LCBzaG91bGQpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29u
dGV4dCgKKyAgICAgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNh
bXBsZVJhdGUpOworCisgICAgICAgICAgICAvLyBDcmVhdGUgYSBjb25zdGFudCBidWZmZXIgb2Yg
MS4wLgorICAgICAgICAgICAgbGV0IGNvbnN0YW50QnVmZmVyID0gY3JlYXRlQ29uc3RhbnRCdWZm
ZXIoY29udGV4dCwgMSwgMS4wKTsKKyAgICAgICAgICAgIGxldCBjb25zdGFudFNvdXJjZSA9IGNv
bnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCk7CisgICAgICAgICAgICBjb25zdGFudFNvdXJjZS5i
dWZmZXIgPSBjb25zdGFudEJ1ZmZlcjsKKyAgICAgICAgICAgIGNvbnN0YW50U291cmNlLmxvb3Ag
PSB0cnVlOworCisgICAgICAgICAgICAvLyBUaGUgYXVkaW8gb3V0cHV0IGZyb20gdGhlIGJlZ2lu
bmluZyAoMC4wIHNlY29uZCkgdG8gdGhlIGZpcnN0CisgICAgICAgICAgICAvLyBzdXNwZW5kIHRp
bWUgc2hvdWxkIGJlIDAuMCBiZWNhdXNlIHRoZXJlIGlzIG5vIGNvbm5lY3Rpb24gdG8gdGhlCisg
ICAgICAgICAgICAvLyBkZXN0aW5hdGlvbi4KKworICAgICAgICAgICAgY29udGV4dC5zdXNwZW5k
KHN1c3BlbmRUaW1lMSkudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgaWYgKGNvbnRl
eHQuY3VycmVudFRpbWUgPT09IHN1c3BlbmRUaW1lMSkgeworICAgICAgICAgICAgICAgIHNob3Vs
ZCgKKyAgICAgICAgICAgICAgICAgICAgY29udGV4dC5jdXJyZW50VGltZSAqIHNhbXBsZVJhdGUs
CisgICAgICAgICAgICAgICAgICAgICdGcmFtZSBhdCB3aGljaCBjb250ZXh0IGlzIHN1c3BlbmRl
ZCcpCisgICAgICAgICAgICAgICAgICAgIC5iZUVxdWFsVG8oc3VzcGVuZFRpbWUxICogc2FtcGxl
UmF0ZSkKKyAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAg
ICAgICAgICAoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIGNvbnN0YW50U291cmNlLmNvbm5l
Y3QoY29udGV4dC5kZXN0aW5hdGlvbik7CisgICAgICAgICAgICAgICAgICAgIGNvbnN0YW50U291
cmNlLnN0YXJ0KCkKKyAgICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAgICAnQ29u
bmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciB0byBkZXN0aW5hdGlvbiBhbmQgc3RhcnRpbmcgYXQg
JyArCisgICAgICAgICAgICAgICAgICAgICAgc3VzcGVuZFRpbWUxICogc2FtcGxlUmF0ZSArICcg
ZnJhbWUnKQorICAgICAgICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICAgICAgICAgIDsK
KyAgICAgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsKKyAgICAgICAgICAgIH0pOworCisgICAg
ICAgICAgICBjb250ZXh0LnN1c3BlbmQoc3VzcGVuZFRpbWUyKS50aGVuKGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgICBpZiAoY29udGV4dC5jdXJyZW50VGltZSA9PT0gc3VzcGVuZFRpbWUyKSB7
CisgICAgICAgICAgICAgICAgc2hvdWxkKGNvbnRleHQuY3VycmVudFRpbWUgKiBzYW1wbGVSYXRl
LCAnQ29udGV4dCBpcyBzdXNwZW5kZWQnKQorICAgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRv
KHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGUpOworICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICAgICgpID0+IGNvbnN0YW50U291cmNlLmRpc2Nv
bm5lY3QoKSwKKyAgICAgICAgICAgICAgICAgICdEaXNjb25uZWN0aW5nIGEgY29uc3RhbnQgYnVm
ZmVyIGF0ICcgKworICAgICAgICAgICAgICAgICAgICAgIHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJh
dGUgKyAnIGZyYW1lJykKKyAgICAgICAgICAgICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAg
ICAgICAgIGNvbnRleHQucmVzdW1lKCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAg
Y29udGV4dC5zdGFydFJlbmRlcmluZygpCisgICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24o
YnVmZmVyKSB7CisgICAgICAgICAgICAgICAgICB2ZXJpZnlSZXN1bHQoc2hvdWxkLCBidWZmZXIp
OworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5k
b25lKCkpOworICAgICAgICAgIH0pOworCisgICAgICBmdW5jdGlvbiB2ZXJpZnlSZXN1bHQoc2hv
dWxkLCBidWZmZXIpIHsKKyAgICAgICAgbGV0IGRhdGEgPSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEo
MCk7CisKKyAgICAgICAgbGV0IHN1c3BlbmRJbmRleDEgPSBzdXNwZW5kVGltZTEgKiBzYW1wbGVS
YXRlOworICAgICAgICBsZXQgc3VzcGVuZEluZGV4MiA9IHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJh
dGU7CisgICAgICAgIGxldCBlbmRJbmRleCA9IHJlbmRlckR1cmF0aW9uICogc2FtcGxlUmF0ZTsK
KworICAgICAgICAvLyBTcGxpdCB0aGUgcmVuZGVyZWQgYnVmZmVyIGludG8gMyBzZWdtZW50czoK
KyAgICAgICAgLy8gWzAsIHN1c3BlbmRJbmRleDEpLCBbc3VzcGVuZEluZGV4MSwgc3VzcGVuZElu
ZGV4MiksIFtzdXNwZW5kSW5kZXgyLAorICAgICAgICAvLyBlbmRJbmRleCkuCisgICAgICAgIGxl
dCBzdWJhcnJheTAgPSBkYXRhLnN1YmFycmF5KDAsIHN1c3BlbmRJbmRleDEpOworICAgICAgICBs
ZXQgc3ViYXJyYXkxID0gZGF0YS5zdWJhcnJheShzdXNwZW5kSW5kZXgxLCBzdXNwZW5kSW5kZXgy
KTsKKyAgICAgICAgbGV0IHN1YmFycmF5MiA9IGRhdGEuc3ViYXJyYXkoc3VzcGVuZEluZGV4Miwg
ZW5kSW5kZXgpOworCisgICAgICAgIC8vIEVhY2ggc2VnbWVudCBzaG91bGQgY29udGFpbiBhIGNv
bnN0YW50IHZhbHVlIG9mIDAsIDEgYW5kIDAKKyAgICAgICAgLy8gcmVzcGVjdGl2ZWx5LgorICAg
ICAgICBzaG91bGQoc3ViYXJyYXkwLCAnQnVmZmVyIGZyYW1lIFswLCAnICsgc3VzcGVuZEluZGV4
MSArICcpJykKKyAgICAgICAgICAgIC5iZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgICAgc2hv
dWxkKAorICAgICAgICAgICAgc3ViYXJyYXkxLAorICAgICAgICAgICAgJ0J1ZmZlciBmcmFtZSBb
JyArIHN1c3BlbmRJbmRleDEgKyAnLCAnICsgc3VzcGVuZEluZGV4MiArICcpJykKKyAgICAgICAg
ICAgIC5iZUNvbnN0YW50VmFsdWVPZigxKTsKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAg
c3ViYXJyYXkyLCAnQnVmZmVyIGZyYW1lIFsnICsgc3VzcGVuZEluZGV4MiArICcsICcgKyBlbmRJ
bmRleCArICcpJykKKyAgICAgICAgICAgIC5iZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgIH0K
KworICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3Vz
cGVuZC1yZXN1bWUtcHJvbWlzZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9v
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjJkYTkwMmUxNTFhZTFlYjNmYjllZGU0OTMyNzI0YjA1NTUyNGVlNjQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1
c3BlbmQtcmVzdW1lLXByb21pc2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjYgQEAKKworUEFT
UyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAor
UEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rlc3RdIFByb21pc2UgcmVzb2x1dGlvbiBvZiBy
ZXN1bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBh
dCAwIHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4
dCBzdXNwZW5kZWQgYXQgMCBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBh
IG5ldyBzdXNwZW5kIGF0IDAuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRlZCBhdCAwLjI1IHNlY29uZChzKSBpcyB0cnVlLiAK
K1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC41IHNlY29uZChzKSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMC41IHNl
Y29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC43
NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQg
c3VzcGVuZGVkIGF0IDAuNzUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcg
YSBuZXcgc3VzcGVuZCBhdCAxIHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNT
ICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRlZCBhdCAxLjI1IHNlY29u
ZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS41IHNl
Y29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNw
ZW5kZWQgYXQgMS41IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3
IHN1c3BlbmQgYXQgMS43NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAor
UEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFT
UyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNvbmRzIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFs
aWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJl
bmRlcmluZyBkdXJhdGlvbi4gCitQQVNTICAgUHJvbWlzZSBjb250ZXh0LnN0YXRlIGlzIGVxdWFs
IHRvIGNsb3NlZC4gCitQQVNTIDwgW3Rlc3RdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFs
IDE4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRh
c2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRp
by9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbCBiL0xheW91
dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlz
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjkzY2I3NjM4OTNkYzhlYWNhMjlhYzY3OTRhNDZiMGEwZDQ3MTU0
ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbApAQCAtMCwwICsxLDkxIEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5l
YXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbAorICAgIDwvdGl0bGU+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2F1ZGl0LXV0aWwuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJj
ZXMvYXVkaXQuanMiPjwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxzY3JpcHQg
aWQ9ImxheW91dC10ZXN0LWNvZGUiPgorICAgICAgbGV0IGF1ZGl0ID0gQXVkaXQuY3JlYXRlVGFz
a1J1bm5lcigpOworICAgICAgbGV0IGNvbnRleHQ7CisKKyAgICAgIC8vIFRoZSBzYW1wbGUgcmF0
ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVyaW5nIHF1YW50dW0sIHNvIHN1c3BlbnNpb24KKyAg
ICAgIC8vIHRpbWVzIGZhbGwgaW4gdG8gdGhlIHJlbmRlciBxdWFudHVtIGJvdW5kYXJ5LgorICAg
ICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisKKyAgICAgIGxldCBzYW1wbGVSYXRlID0gcmVu
ZGVyUXVhbnR1bSAqIDEwMDsKKyAgICAgIGxldCByZW5kZXJEdXJhdGlvbiA9IDI7CisgICAgICBs
ZXQgc2NoZWR1bGVkU3VzcGVuZFRpbWUgPSAwOworCisgICAgICAvLyBXaXRoIHRoZSBzYW1wbGUg
cmF0ZSBzZXR0aW5nIGFib3ZlLCB0aGlzIGVuc3VyZXMgc3VzcGVuc2lvbiB0aW1lIGZhbGwKKyAg
ICAgIC8vIGluIHRvIHRoZSByZW5kZXIgcXVhbnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCBzdXNw
ZW5kSW50ZXJ2YWwgPSAwLjI1OworCisgICAgICBmdW5jdGlvbiBvblN1c3BlbmRlZChzaG91bGQp
IHsKKyAgICAgICAgaWYgKGNvbnRleHQuc3RhdGUgPT09ICdzdXNwZW5kZWQnICYmCisgICAgICAg
ICAgICBjb250ZXh0LmN1cnJlbnRUaW1lID09PSBzY2hlZHVsZWRTdXNwZW5kVGltZSkgeworICAg
ICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgY29udGV4dC5zdGF0ZSA9PT0gJ3N1c3BlbmRl
ZCcgJiYKKyAgICAgICAgICAgICAgICAgIGNvbnRleHQuY3VycmVudFRpbWUgPT09IHNjaGVkdWxl
ZFN1c3BlbmRUaW1lLAorICAgICAgICAgICAgICAnQ29udGV4dCBzdXNwZW5kZWQgYXQgJyArIHNj
aGVkdWxlZFN1c3BlbmRUaW1lICsgJyBzZWNvbmQocyknKQorICAgICAgICAgICAgICAuYmVUcnVl
KCk7CisKKyAgICAgICAgICBzY2hlZHVsZWRTdXNwZW5kVGltZSA9IGNvbnRleHQuY3VycmVudFRp
bWUgKyBzdXNwZW5kSW50ZXJ2YWw7CisKKyAgICAgICAgICAvLyBTY2hlZHVsaW5nIGEgc3VzcGVu
ZCBiZWZvcmUgdGhlIHJlbmRlciBkdXJhdGlvbiBzaG91bGQgcGFzcy4KKyAgICAgICAgICBpZiAo
c2NoZWR1bGVkU3VzcGVuZFRpbWUgPCByZW5kZXJEdXJhdGlvbikgeworICAgICAgICAgICAgc2hv
dWxkKAorICAgICAgICAgICAgICAgICgpID0+IGNvbnRleHQuc3VzcGVuZChzY2hlZHVsZWRTdXNw
ZW5kVGltZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gb25TdXNwZW5k
ZWQoc2hvdWxkKSksCisgICAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBh
dCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUgKworICAgICAgICAgICAgICAgICAgICAnIHNlY29u
ZChzKScpCisgICAgICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICAgICAgfQorCisgICAg
ICAgICAgLy8gU2NoZWR1bGluZyBhIHN1c3BlbmQgZXhhY3RseSBhdCB0aGUgcmVuZGVyIGR1cmF0
aW9uIHNob3VsZCBiZQorICAgICAgICAgIC8vIHJlamVjdGVkLgorICAgICAgICAgIGlmIChzY2hl
ZHVsZWRTdXNwZW5kVGltZSA9PT0gcmVuZGVyRHVyYXRpb24pIHsKKyAgICAgICAgICAgIHNob3Vs
ZCgKKyAgICAgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUp
LAorICAgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGF0ICcgKyByZW5kZXJEdXJhdGlvbiArICcg
c2Vjb25kcycpCisgICAgICAgICAgICAgICAgLmJlUmVqZWN0ZWQoKTsKKyAgICAgICAgICB9CisK
KyAgICAgICAgICBjb250ZXh0LnJlc3VtZSgpOworICAgICAgICB9CisgICAgICB9CisKKyAgICAg
IGF1ZGl0LmRlZmluZSgKKyAgICAgICAgICB7CisgICAgICAgICAgICBsYWJlbDogJ3Rlc3QnLAor
ICAgICAgICAgICAgZGVzY3JpcHRpb246ICdQcm9taXNlIHJlc29sdXRpb24gb2YgcmVzdW1lKCkg
YW5kIHN1c3BlbmQoKScKKyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+
IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAg
ICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOwor
CisgICAgICAgICAgICAvLyBTY2hlZHVsZSB0aGUgZmlyc3Qgc3VzcGVuc2lvbi4KKyAgICAgICAg
ICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1
bGVkU3VzcGVuZFRpbWUpCisgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IG9u
U3VzcGVuZGVkKHNob3VsZCkpLAorICAgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgbmV3IHN1
c3BlbmQgYXQgJyArIHNjaGVkdWxlZFN1c3BlbmRUaW1lICsKKyAgICAgICAgICAgICAgICAgICAg
JyBzZWNvbmQocyknKQorICAgICAgICAgICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgICAg
ICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkKKyAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgICAgICAgIHNob3VsZChjb250ZXh0LnN0YXRlLCAnUHJvbWlzZSBj
b250ZXh0LnN0YXRlJykKKyAgICAgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9zZWQn
KTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRhc2su
ZG9uZSgpKTsKKyAgICAgICAgICB9KTsKKworICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3Jp
cHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlv
L29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3Vt
ZS1zZXF1ZW5jZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmVjYWM3M2Y1ZjJiMTkxN2UxZmVh
OGJhYWZlMWQ5MzQ3ZmNkNWRiNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1
ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMjIgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQu
IAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rl
c3RdIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCkgd2l0aCB0aW1lZCBzZXF1ZW5jZSAKK1BBU1MgICBT
Y2hlZHVsaW5nIHN1c3BlbmQgIzAgYXQgMC4yNSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgc3VzcGVuZCAjMSBhdCAwLjc1IHNlY29uZChz
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5k
ICMyIGF0IDEgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBT
Y2hlZHVsaW5nIHN1c3BlbmQgIzMgYXQgMC41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5kICM0IGF0IDEuMjUgc2Vjb25kKHMp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQg
IzUgYXQgMCBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNj
aGVkdWxpbmcgc3VzcGVuZCAjNiBhdCAxLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjNSBpcyAw
IGF0IDAuMDAgc2Vjb25kKHMpIGlzIGVxdWFsIHRvIDAuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9u
IG9yZGVyIG9mIHN1c3BlbmQgIzAgaXMgMSBhdCAwLjI1IHNlY29uZChzKSBpcyBlcXVhbCB0byAx
LiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBzdXNwZW5kICMzIGlzIDIgYXQgMC41
MCBzZWNvbmQocykgaXMgZXF1YWwgdG8gMi4gCitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIg
b2Ygc3VzcGVuZCAjMSBpcyAzIGF0IDAuNzUgc2Vjb25kKHMpIGlzIGVxdWFsIHRvIDMuIAorUEFT
UyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9mIHN1c3BlbmQgIzIgaXMgNCBhdCAxLjAwIHNlY29u
ZChzKSBpcyBlcXVhbCB0byA0LiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBzdXNw
ZW5kICM0IGlzIDUgYXQgMS4yNSBzZWNvbmQocykgaXMgZXF1YWwgdG8gNS4gCitQQVNTICAgVGhl
IHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjNiBpcyA2IGF0IDEuNzUgc2Vjb25kKHMpIGlz
IGVxdWFsIHRvIDYuIAorUEFTUyA8IFt0ZXN0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3Rh
bCAxNCBhc3NlcnRpb25zKSAKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSB0
YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sIGIvTGF5
b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1
ZW5jZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFlOWIzNWIzNDQ1ODY5Y2E0NGI2NDhiNjc1YWZmMGE5N2M4
NWFlMTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVk
aW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNlcXVlbmNlLmh0bWwKQEAgLTAsMCArMSw5MCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPgorICAgICAgb2Zm
bGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sCisgICAgPC90aXRs
ZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJl
c291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNj
cmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVh
dGVUYXNrUnVubmVyKCk7CisgICAgICBsZXQgY29udGV4dDsKKworICAgICAgLy8gVGhlIHNhbXBs
ZSByYXRlIGlzIG11bHRpcGxlIG9mIHRoZSByZW5kZXJpbmcgcXVhbnR1bSwgc28gc3VzcGVuc2lv
bgorICAgICAgLy8gdGltZXMgZmFsbCBpbiB0byB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnku
CisgICAgICBsZXQgcmVuZGVyUXVhbnR1bSA9IDEyODsKKworICAgICAgbGV0IHNhbXBsZVJhdGUg
PSByZW5kZXJRdWFudHVtICogMTAwOworICAgICAgbGV0IHJlbmRlckR1cmF0aW9uID0gMjsKKwor
ICAgICAgLy8gVGhlc2UgbnVtYmVycyBhcmUgaW4gYW4gYXJiaXRyYXJ5IG9yZGVyLCBidXQgbm90
IHJhbmRvbWx5IGdlbmVyYXRlZCBpbgorICAgICAgLy8gcnVudGltZSB0byBhdm9pZCBtb3Zpbmcg
cGllY2VzLiBIb3dldmVyLCBpdCBpcyBzYWZlIHRvIGFycmFuZ2UgdGhlbQorICAgICAgLy8gaW4g
YSByYW5kb20gb3JkZXIgaW4gcnVudGltZS4KKyAgICAgIC8vCisgICAgICAvLyBBbHNvIHRoZXNl
IG51bWJlcnMgYXJlIG11bHRpcGxlIG9mIDAuMjUsIHNvIHRoZXkgYXJlIHN1cHBvc2VkIHRvIGZh
bGwKKyAgICAgIC8vIGluIHRoZSByZW5kZXIgcXVhbnR1bSBib3VuZGFyeSBmb3IgZWFzaWVyIGFu
ZCBtb3JlIGludHVpdGl2ZQorICAgICAgLy8gdmVyaWZpY2F0aW9uLgorICAgICAgbGV0IHN1c3Bl
bmRUaW1lcyA9IFswLjI1LCAwLjc1LCAxLjAsIDAuNSwgMS4yNSwgMC4wLCAxLjc1XTsKKworICAg
ICAgLy8gU29ydGVkIGFzY2VuZGluZyBzdXNwZW5kIHRpbWUgaXMgb3VyIGV4cGVjdGVkIHJlc3Vs
dC4KKyAgICAgIGxldCBleHBlY3RlZFN1c3BlbmRUaW1lcyA9IHN1c3BlbmRUaW1lcy5zbGljZSgw
KS5zb3J0KGZ1bmN0aW9uKGEsIGIpIHsKKyAgICAgICAgcmV0dXJuIGEgLSBiOworICAgICAgfSk7
CisKKyAgICAgIGxldCBhY3R1YWxTdXNwZW5kVGltZXMgPSBbXTsKKworICAgICAgYXVkaXQuZGVm
aW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVsOiAndGVzdCcsCisgICAgICAgICAg
ICBkZXNjcmlwdGlvbjogJ3Jlc3VtZSgpIGFuZCBzdXNwZW5kKCkgd2l0aCB0aW1lZCBzZXF1ZW5j
ZScKKyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAg
ICAgIGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAx
LCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAg
ICBmb3IgKGxldCBpID0gMDsgaSA8IHN1c3BlbmRUaW1lcy5sZW5ndGg7IGkrKykgeworICAgICAg
ICAgICAgICAvLyBTY2hlZHVsZSBzdXNwZW5kcyBpbiBhIHJhbmRvbSB0aW1lIG9yZGVyLCBidXQg
dGhlIGFjdHVhbAorICAgICAgICAgICAgICAvLyBzdXNwZW5kIG11c3QgaGFwcGVuIGluIGFzY2Vu
ZGluZyB0aW1lIG9yZGVyLgorICAgICAgICAgICAgICBzY2hlZHVsZVN1c3BlbmQoaSwgc3VzcGVu
ZFRpbWVzW2ldLCBzaG91bGQpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBjb250ZXh0
LnN0YXJ0UmVuZGVyaW5nKCkKKyAgICAgICAgICAgICAgICAudGhlbihidWZmZXIgPT4gdmVyaWZ5
UmVzdWx0KHNob3VsZCkpCisgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkp
OworCisgICAgICAgICAgfSk7CisKKyAgICAgIGF1ZGl0LnJ1bigpOworCisgICAgICBmdW5jdGlv
biBzY2hlZHVsZVN1c3BlbmQoaW5kZXgsIHN1c3BlbmRUaW1lLCBzaG91bGQpIHsKKyAgICAgICAg
c2hvdWxkKAorICAgICAgICAgICAgKCkgPT4gY29udGV4dC5zdXNwZW5kKHN1c3BlbmRUaW1lKS50
aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAgYWN0dWFsU3VzcGVuZFRpbWVzLnB1c2goc3VzcGVu
ZFRpbWUpOworICAgICAgICAgICAgICBjb250ZXh0LnJlc3VtZSgpOworICAgICAgICAgICAgfSks
CisgICAgICAgICAgICAnU2NoZWR1bGluZyBzdXNwZW5kICMnICsgaW5kZXggKyAnIGF0ICcgKyBz
dXNwZW5kVGltZSArCisgICAgICAgICAgICAgICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAg
Lm5vdFRocm93KCk7CisgICAgICB9CisKKyAgICAgIGZ1bmN0aW9uIHZlcmlmeVJlc3VsdChzaG91
bGQpIHsKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY3R1YWxTdXNwZW5kVGltZXMubGVu
Z3RoOyBpKyspIHsKKyAgICAgICAgICBsZXQgc2NoZWR1bGVkT3JkZXIgPSBzdXNwZW5kVGltZXMu
aW5kZXhPZihhY3R1YWxTdXNwZW5kVGltZXNbaV0pOworICAgICAgICAgIGxldCBleHBlY3RlZE9y
ZGVyID0KKyAgICAgICAgICAgICAgZXhwZWN0ZWRTdXNwZW5kVGltZXMuaW5kZXhPZihhY3R1YWxT
dXNwZW5kVGltZXNbaV0pOworCisgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICBpLAor
ICAgICAgICAgICAgICAnVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjJyArIHNjaGVk
dWxlZE9yZGVyICsgJyBpcyAnICsKKyAgICAgICAgICAgICAgICAgIGkgKyAnIGF0ICcgKyBzdXNw
ZW5kVGltZXNbc2NoZWR1bGVkT3JkZXJdLnRvRml4ZWQoMikgKworICAgICAgICAgICAgICAgICAg
JyBzZWNvbmQocyknKQorICAgICAgICAgICAgICAuYmVFcXVhbFRvKGV4cGVjdGVkT3JkZXIpOwor
ICAgICAgICB9CisgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpdC11dGlsLmpzIGIv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGl0LXV0aWwuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NDIxM2ZkYTUwOWJmYjczMDQ0ZjFjNzdlMTkxOWY1OGM5NTIwYTU0ZAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpdC11dGlsLmpzCkBAIC0wLDAg
KzEsMTk1IEBACisvLyBDb3B5cmlnaHQgMjAxNiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5
IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCisKKworLyoqCisgKiBAZmlsZU92ZXJ2aWV3ICBUaGlzIGZpbGUgaW5jbHVkZXMgbGVn
YWN5IHV0aWxpdHkgZnVuY3Rpb25zIGZvciB0aGUgbGF5b3V0CisgKiAgICAgICAgICAgICAgICB0
ZXN0LgorICovCisKKy8vIEhvdyBtYW55IGZyYW1lcyBpbiBhIFdlYkF1ZGlvIHJlbmRlciBxdWFu
dHVtLgorbGV0IFJFTkRFUl9RVUFOVFVNX0ZSQU1FUyA9IDEyODsKKworLy8gQ29tcGFyZSB0d28g
YXJyYXlzIChjb21tb25seSBleHRyYWN0ZWQgZnJvbSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEoKSkg
d2l0aAorLy8gY29uc3RyYWludHM6CisvLyAgIG9wdGlvbnMudGhyZXNob2xkU05SOiBNaW5pbXVt
IGFsbG93ZWQgU05SIGJldHdlZW4gdGhlIGFjdHVhbCBhbmQgZXhwZWN0ZWQKKy8vICAgICBzaWdu
YWwuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDEwMDAwLgorLy8gICBvcHRpb25zLnRocmVzaG9sZERp
ZmZVTFA6IE1heGltdW0gYWxsb3dlZCBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGFjdHVhbAorLy8g
ICAgIGFuZCBleHBlY3RlZCBzaWduYWwgaW4gVUxQKFVuaXQgaW4gdGhlIGxhc3QgcGxhY2UpLiBU
aGUgZGVmYXVsdCBpcyAwLgorLy8gICBvcHRpb25zLnRocmVzaG9sZERpZmZDb3VudDogTWF4aW11
bSBhbGxvd2VkIG51bWJlciBvZiBzYW1wbGUgZGlmZmVyZW5jZXMKKy8vICAgICB3aGljaCBleGNl
ZWRzIHRoZSB0aHJlc2hvbGQuIFRoZSBkZWZhdWx0IGlzIDAuCisvLyAgIG9wdGlvbnMuYml0RGVw
dGg6IFRoZSBleHBlY3RlZCByZXN1bHQgaXMgYXNzdW1lZCB0byBjb21lIGZyb20gYW4gYXVkaW8K
Ky8vICAgICBmaWxlIHdpdGggdGhpcyBudW1iZXIgb2YgYml0cyBvZiBwcmVjaXNpb24uIFRoZSBk
ZWZhdWx0IGlzIDE2LgorZnVuY3Rpb24gY29tcGFyZUJ1ZmZlcnNXaXRoQ29uc3RyYWludHMoc2hv
dWxkLCBhY3R1YWwsIGV4cGVjdGVkLCBvcHRpb25zKSB7CisgIGlmICghb3B0aW9ucykKKyAgICBv
cHRpb25zID0ge307CisKKyAgLy8gT25seSBwcmludCBvdXQgdGhlIG1lc3NhZ2UgaWYgdGhlIGxl
bmd0aHMgYXJlIGRpZmZlcmVudDsgdGhlCisgIC8vIGV4cGVjdGF0aW9uIGlzIHRoYXQgdGhleSBh
cmUgdGhlIHNhbWUsIHNvIGRvbid0IGNsdXR0ZXIgdXAgdGhlCisgIC8vIG91dHB1dC4KKyAgaWYg
KGFjdHVhbC5sZW5ndGggIT09IGV4cGVjdGVkLmxlbmd0aCkgeworICAgIHNob3VsZCgKKyAgICAg
ICAgYWN0dWFsLmxlbmd0aCA9PT0gZXhwZWN0ZWQubGVuZ3RoLAorICAgICAgICAnTGVuZ3RoIG9m
IGFjdHVhbCBhbmQgZXhwZWN0ZWQgYnVmZmVycyBzaG91bGQgbWF0Y2gnKQorICAgICAgICAuYmVU
cnVlKCk7CisgIH0KKworICBsZXQgbWF4RXJyb3IgPSAtMTsKKyAgbGV0IGRpZmZDb3VudCA9IDA7
CisgIGxldCBlcnJvclBvc2l0aW9uID0gLTE7CisgIGxldCB0aHJlc2hvbGRTTlIgPSAob3B0aW9u
cy50aHJlc2hvbGRTTlIgfHwgMTAwMDApOworCisgIGxldCB0aHJlc2hvbGREaWZmVUxQID0gKG9w
dGlvbnMudGhyZXNob2xkRGlmZlVMUCB8fCAwKTsKKyAgbGV0IHRocmVzaG9sZERpZmZDb3VudCA9
IChvcHRpb25zLnRocmVzaG9sZERpZmZDb3VudCB8fCAwKTsKKworICAvLyBCeSBkZWZhdWx0LCB0
aGUgYml0IGRlcHRoIGlzIDE2LgorICBsZXQgYml0RGVwdGggPSAob3B0aW9ucy5iaXREZXB0aCB8
fCAxNik7CisgIGxldCBzY2FsZUZhY3RvciA9IE1hdGgucG93KDIsIGJpdERlcHRoIC0gMSk7CisK
KyAgbGV0IG5vaXNlUG93ZXIgPSAwLCBzaWduYWxQb3dlciA9IDA7CisKKyAgZm9yIChsZXQgaSA9
IDA7IGkgPCBhY3R1YWwubGVuZ3RoOyBpKyspIHsKKyAgICBsZXQgZGlmZiA9IGFjdHVhbFtpXSAt
IGV4cGVjdGVkW2ldOworICAgIG5vaXNlUG93ZXIgKz0gZGlmZiAqIGRpZmY7CisgICAgc2lnbmFs
UG93ZXIgKz0gZXhwZWN0ZWRbaV0gKiBleHBlY3RlZFtpXTsKKworICAgIGlmIChNYXRoLmFicyhk
aWZmKSA+IG1heEVycm9yKSB7CisgICAgICBtYXhFcnJvciA9IE1hdGguYWJzKGRpZmYpOworICAg
ICAgZXJyb3JQb3NpdGlvbiA9IGk7CisgICAgfQorCisgICAgLy8gVGhlIHJlZmVyZW5jZSBmaWxl
IGlzIGEgMTYtYml0IFdBViBmaWxlLCBzbyB3ZSB3aWxsIGFsbW9zdCBuZXZlciBnZXQKKyAgICAv
LyBhbiBleGFjdCBtYXRjaCBiZXR3ZWVuIGl0IGFuZCB0aGUgYWN0dWFsIGZsb2F0aW5nLXBvaW50
IHJlc3VsdC4KKyAgICBpZiAoTWF0aC5hYnMoZGlmZikgPiBzY2FsZUZhY3RvcikKKyAgICAgIGRp
ZmZDb3VudCsrOworICB9CisKKyAgbGV0IHNuciA9IDEwICogTWF0aC5sb2cxMChzaWduYWxQb3dl
ciAvIG5vaXNlUG93ZXIpOworICBsZXQgbWF4RXJyb3JVTFAgPSBtYXhFcnJvciAqIHNjYWxlRmFj
dG9yOworCisgIHNob3VsZChzbnIsICdTTlInKS5iZUdyZWF0ZXJUaGFuT3JFcXVhbFRvKHRocmVz
aG9sZFNOUik7CisKKyAgc2hvdWxkKAorICAgICAgbWF4RXJyb3JVTFAsCisgICAgICBvcHRpb25z
LnByZWZpeCArICc6IE1heGltdW0gZGlmZmVyZW5jZSAoaW4gdWxwIHVuaXRzICgnICsgYml0RGVw
dGggKworICAgICAgICAgICctYml0cykpJykKKyAgICAgIC5iZUxlc3NUaGFuT3JFcXVhbFRvKHRo
cmVzaG9sZERpZmZVTFApOworCisgIHNob3VsZChkaWZmQ291bnQsIG9wdGlvbnMucHJlZml4ICsg
JzogTnVtYmVyIG9mIGRpZmZlcmVuY2VzIGJldHdlZW4gcmVzdWx0cycpCisgICAgICAuYmVMZXNz
VGhhbk9yRXF1YWxUbyh0aHJlc2hvbGREaWZmQ291bnQpOworfQorCisvLyBDcmVhdGUgYW4gaW1w
dWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5ndGggc2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0aW9uIGNy
ZWF0ZUltcHVsc2VCdWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgpIHsKKyAgbGV0IGF1
ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQuY3JlYXRlQnVmZmVyKDEsIHNhbXBsZUZyYW1lTGVu
Z3RoLCBjb250ZXh0LnNhbXBsZVJhdGUpOworICBsZXQgbiA9IGF1ZGlvQnVmZmVyLmxlbmd0aDsK
KyAgbGV0IGRhdGFMID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgZm9yIChs
ZXQgayA9IDA7IGsgPCBuOyArK2spIHsKKyAgICBkYXRhTFtrXSA9IDA7CisgIH0KKyAgZGF0YUxb
MF0gPSAxOworCisgIHJldHVybiBhdWRpb0J1ZmZlcjsKK30KKworLy8gQ3JlYXRlIGEgYnVmZmVy
IG9mIHRoZSBnaXZlbiBsZW5ndGggd2l0aCBhIGxpbmVhciByYW1wIGhhdmluZyB2YWx1ZXMgMCA8
PSB4IDwKKy8vIDEuCitmdW5jdGlvbiBjcmVhdGVMaW5lYXJSYW1wQnVmZmVyKGNvbnRleHQsIHNh
bXBsZUZyYW1lTGVuZ3RoKSB7CisgIGxldCBhdWRpb0J1ZmZlciA9CisgICAgICBjb250ZXh0LmNy
ZWF0ZUJ1ZmZlcigxLCBzYW1wbGVGcmFtZUxlbmd0aCwgY29udGV4dC5zYW1wbGVSYXRlKTsKKyAg
bGV0IG4gPSBhdWRpb0J1ZmZlci5sZW5ndGg7CisgIGxldCBkYXRhTCA9IGF1ZGlvQnVmZmVyLmdl
dENoYW5uZWxEYXRhKDApOworCisgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgKytpKQorICAgIGRh
dGFMW2ldID0gaSAvIG47CisKKyAgcmV0dXJuIGF1ZGlvQnVmZmVyOworfQorCisvLyBDcmVhdGUg
YW4gQXVkaW9CdWZmZXIgb2YgbGVuZ3RoIHxzYW1wbGVGcmFtZUxlbmd0aHwgaGF2aW5nIGEgY29u
c3RhbnQgdmFsdWUKKy8vIHxjb25zdGFudFZhbHVlfC4gSWYgfGNvbnN0YW50VmFsdWV8IGlzIGEg
bnVtYmVyLCB0aGUgYnVmZmVyIGhhcyBvbmUgY2hhbm5lbAorLy8gZmlsbGVkIHdpdGggdGhhdCB2
YWx1ZS4gSWYgfGNvbnN0YW50VmFsdWV8IGlzIGFuIGFycmF5LCB0aGUgYnVmZmVyIGlzIGNyZWF0
ZWQKKy8vIHdpdCBhIG51bWJlciBvZiBjaGFubmVscyBlcXVhbCB0byB0aGUgbGVuZ3RoIG9mIHRo
ZSBhcnJheSwgYW5kIGNoYW5uZWwgayBpcworLy8gZmlsbGVkIHdpdGggdGhlIGsndGggZWxlbWVu
dCBvZiB0aGUgfGNvbnN0YW50VmFsdWV8IGFycmF5LgorZnVuY3Rpb24gY3JlYXRlQ29uc3RhbnRC
dWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgsIGNvbnN0YW50VmFsdWUpIHsKKyAgbGV0
IGNoYW5uZWxzOworICBsZXQgdmFsdWVzOworCisgIGlmICh0eXBlb2YgY29uc3RhbnRWYWx1ZSA9
PT0gJ251bWJlcicpIHsKKyAgICBjaGFubmVscyA9IDE7CisgICAgdmFsdWVzID0gW2NvbnN0YW50
VmFsdWVdOworICB9IGVsc2UgeworICAgIGNoYW5uZWxzID0gY29uc3RhbnRWYWx1ZS5sZW5ndGg7
CisgICAgdmFsdWVzID0gY29uc3RhbnRWYWx1ZTsKKyAgfQorCisgIGxldCBhdWRpb0J1ZmZlciA9
CisgICAgICBjb250ZXh0LmNyZWF0ZUJ1ZmZlcihjaGFubmVscywgc2FtcGxlRnJhbWVMZW5ndGgs
IGNvbnRleHQuc2FtcGxlUmF0ZSk7CisgIGxldCBuID0gYXVkaW9CdWZmZXIubGVuZ3RoOworCisg
IGZvciAobGV0IGMgPSAwOyBjIDwgY2hhbm5lbHM7ICsrYykgeworICAgIGxldCBkYXRhID0gYXVk
aW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoYyk7CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyAr
K2kpCisgICAgICBkYXRhW2ldID0gdmFsdWVzW2NdOworICB9CisKKyAgcmV0dXJuIGF1ZGlvQnVm
ZmVyOworfQorCisvLyBDcmVhdGUgYSBzdGVyZW8gaW1wdWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5n
dGggc2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0aW9uIGNyZWF0ZVN0ZXJlb0ltcHVsc2VCdWZmZXIo
Y29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgpIHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0KKyAgICAg
IGNvbnRleHQuY3JlYXRlQnVmZmVyKDIsIHNhbXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0LnNhbXBs
ZVJhdGUpOworICBsZXQgbiA9IGF1ZGlvQnVmZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFMID0gYXVk
aW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7CisgIGxldCBkYXRhUiA9IGF1ZGlvQnVmZmVyLmdl
dENoYW5uZWxEYXRhKDEpOworCisgIGZvciAobGV0IGsgPSAwOyBrIDwgbjsgKytrKSB7CisgICAg
ZGF0YUxba10gPSAwOworICAgIGRhdGFSW2tdID0gMDsKKyAgfQorICBkYXRhTFswXSA9IDE7Cisg
IGRhdGFSWzBdID0gMTsKKworICByZXR1cm4gYXVkaW9CdWZmZXI7Cit9CisKKy8vIENvbnZlcnQg
dGltZSAoaW4gc2Vjb25kcykgdG8gc2FtcGxlIGZyYW1lcy4KK2Z1bmN0aW9uIHRpbWVUb1NhbXBs
ZUZyYW1lKHRpbWUsIHNhbXBsZVJhdGUpIHsKKyAgcmV0dXJuIE1hdGguZmxvb3IoMC41ICsgdGlt
ZSAqIHNhbXBsZVJhdGUpOworfQorCisvLyBDb21wdXRlIHRoZSBudW1iZXIgb2Ygc2FtcGxlIGZy
YW1lcyBjb25zdW1lZCBieSBub3RlR3JhaW5PbiB3aXRoCisvLyB0aGUgc3BlY2lmaWVkIHxncmFp
bk9mZnNldHwsIHxkdXJhdGlvbnwsIGFuZCB8c2FtcGxlUmF0ZXwuCitmdW5jdGlvbiBncmFpbkxl
bmd0aEluU2FtcGxlRnJhbWVzKGdyYWluT2Zmc2V0LCBkdXJhdGlvbiwgc2FtcGxlUmF0ZSkgewor
ICBsZXQgc3RhcnRGcmFtZSA9IHRpbWVUb1NhbXBsZUZyYW1lKGdyYWluT2Zmc2V0LCBzYW1wbGVS
YXRlKTsKKyAgbGV0IGVuZEZyYW1lID0gdGltZVRvU2FtcGxlRnJhbWUoZ3JhaW5PZmZzZXQgKyBk
dXJhdGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAgcmV0dXJuIGVuZEZyYW1lIC0gc3RhcnRGcmFtZTsK
K30KKworLy8gVHJ1ZSBpZiB0aGUgbnVtYmVyIGlzIG5vdCBhbiBpbmZpbml0eSBvciBOYU4KK2Z1
bmN0aW9uIGlzVmFsaWROdW1iZXIoeCkgeworICByZXR1cm4gIWlzTmFOKHgpICYmICh4ICE9IElu
ZmluaXR5KSAmJiAoeCAhPSAtSW5maW5pdHkpOworfQorCisvLyBDb21wdXRlIHRoZSAobGluZWFy
KSBzaWduYWwtdG8tbm9pc2UgcmF0aW8gYmV0d2VlbiB8YWN0dWFsfCBhbmQKKy8vIHxleHBlY3Rl
ZHwuICBUaGUgcmVzdWx0IGlzIE5PVCBpbiBkQiEgIElmIHRoZSB8YWN0dWFsfCBhbmQKKy8vIHxl
eHBlY3RlZHwgaGF2ZSBkaWZmZXJlbnQgbGVuZ3RocywgdGhlIHNob3J0ZXIgbGVuZ3RoIGlzIHVz
ZWQuCitmdW5jdGlvbiBjb21wdXRlU05SKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgbGV0IHNpZ25h
bFBvd2VyID0gMDsKKyAgbGV0IG5vaXNlUG93ZXIgPSAwOworCisgIGxldCBsZW5ndGggPSBNYXRo
Lm1pbihhY3R1YWwubGVuZ3RoLCBleHBlY3RlZC5sZW5ndGgpOworCisgIGZvciAobGV0IGsgPSAw
OyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICBsZXQgZGlmZiA9IGFjdHVhbFtrXSAtIGV4cGVjdGVk
W2tdOworICAgIHNpZ25hbFBvd2VyICs9IGV4cGVjdGVkW2tdICogZXhwZWN0ZWRba107CisgICAg
bm9pc2VQb3dlciArPSBkaWZmICogZGlmZjsKKyAgfQorCisgIHJldHVybiBzaWduYWxQb3dlciAv
IG5vaXNlUG93ZXI7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJj
ZXMvYXVkaXQuanMgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uODk2YjlkNWJhZGI1YzIzOWVlYzVlNzQ2NDZiNGJmMjJhYTU4MzVmOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpdC5qcwpAQCAt
MCwwICsxLDE0NDIgQEAKKy8vIENvcHlyaWdodCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKworLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVz
dHMvd3B0L2lzc3Vlcy8xMjc4MSBmb3IgaW5mb3JtYXRpb24gb24KKy8vIHRoZSBwdXJwb3NlIG9m
IGF1ZGl0LmpzLCBhbmQgd2h5IHRlc3RoYXJuZXNzLmpzIGRvZXMgbm90IHN1ZmZpY2UuCisKKy8q
KgorICogQGZpbGVPdmVydmlldyAgV2ViQXVkaW8gbGF5b3V0IHRlc3QgdXRpbGl0eSBsaWJyYXJ5
LiBCdWlsdCBhcm91bmQgVzNDJ3MKKyAqICAgICAgICAgICAgICAgIHRlc3RoYXJuZXNzLmpzLiBJ
bmNsdWRlcyBhc3luY2hyb25vdXMgdGVzdCB0YXNrIG1hbmFnZXIsCisgKiAgICAgICAgICAgICAg
ICBhc3NlcnRpb24gdXRpbGl0aWVzLgorICogQGRlcGVuZGVuY3kgICAgdGVzdGhhcm5lc3MuanMK
KyAqLworCisKKyhmdW5jdGlvbigpIHsKKworICAndXNlIHN0cmljdCc7CisKKyAgLy8gU2VsZWN0
ZWQgbWV0aG9kcyBmcm9tIHRlc3RoYXJuZXNzLmpzLgorICBsZXQgdGVzdGhhcm5lc3NQcm9wZXJ0
aWVzID0gWworICAgICd0ZXN0JywgJ2FzeW5jX3Rlc3QnLCAncHJvbWlzZV90ZXN0JywgJ3Byb21p
c2VfcmVqZWN0c19qcycsICdnZW5lcmF0ZV90ZXN0cycsCisgICAgJ3NldHVwJywgJ2RvbmUnLCAn
YXNzZXJ0X3RydWUnLCAnYXNzZXJ0X2ZhbHNlJworICBdOworCisgIC8vIENoZWNrIGlmIHRlc3Ro
YXJuZXNzLmpzIGlzIHByb3Blcmx5IGxvYWRlZC4gVGhyb3cgb3RoZXJ3aXNlLgorICBmb3IgKGxl
dCBuYW1lIGluIHRlc3RoYXJuZXNzUHJvcGVydGllcykgeworICAgIGlmICghc2VsZi5oYXNPd25Q
cm9wZXJ0eSh0ZXN0aGFybmVzc1Byb3BlcnRpZXNbbmFtZV0pKQorICAgICAgdGhyb3cgbmV3IEVy
cm9yKCdDYW5ub3QgcHJvY2VlZC4gdGVzdGhhcm5lc3MuanMgaXMgbm90IGxvYWRlZC4nKTsKKyAg
fQorfSkoKTsKKworCit3aW5kb3cuQXVkaXQgPSAoZnVuY3Rpb24oKSB7CisKKyAgJ3VzZSBzdHJp
Y3QnOworCisgIC8vIE5PVEU6IE1vdmluZyB0aGlzIG1ldGhvZCAob3IgYW55IG90aGVyIGNvZGUg
YWJvdmUpIHdpbGwgY2hhbmdlIHRoZSBsb2NhdGlvbgorICAvLyBvZiAnQ09OU09MRSBFUlJPUi4u
LicgbWVzc2FnZSBpbiB0aGUgZXhwZWN0ZWQgdGV4dCBmaWxlcy4KKyAgZnVuY3Rpb24gX2xvZ0Vy
cm9yKG1lc3NhZ2UpIHsKKyAgICBjb25zb2xlLmVycm9yKCdbYXVkaXQuanNdICcgKyBtZXNzYWdl
KTsKKyAgfQorCisgIGZ1bmN0aW9uIF9sb2dQYXNzZWQobWVzc2FnZSkgeworICAgIHRlc3QoZnVu
Y3Rpb24oYXJnKSB7CisgICAgICBhc3NlcnRfdHJ1ZSh0cnVlKTsKKyAgICB9LCBtZXNzYWdlKTsK
KyAgfQorCisgIGZ1bmN0aW9uIF9sb2dGYWlsZWQobWVzc2FnZSwgZGV0YWlsKSB7CisgICAgdGVz
dChmdW5jdGlvbigpIHsKKyAgICAgIGFzc2VydF90cnVlKGZhbHNlLCBkZXRhaWwpOworICAgIH0s
IG1lc3NhZ2UpOworICB9CisKKyAgZnVuY3Rpb24gX3Rocm93RXhjZXB0aW9uKG1lc3NhZ2UpIHsK
KyAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7CisgIH0KKworICAvLyBUT0RPKGhvbmdjaGFu
KTogcmVtb3ZlIHRoaXMgaGFjayBhZnRlciBjb25maXJtaW5nIGFsbCB0aGUgdGVzdHMgYXJlCisg
IC8vIGZpbmlzaGVkIGNvcnJlY3RseS4gKGNyYnVnLmNvbS83MDg4MTcpCisgIGNvbnN0IF90ZXN0
aGFybmVzc0RvbmUgPSB3aW5kb3cuZG9uZTsKKyAgd2luZG93LmRvbmUgPSAoKSA9PiB7CisgICAg
X3Rocm93RXhjZXB0aW9uKCdEbyBOT1QgY2FsbCBkb25lKCkgbWV0aG9kIGZyb20gdGhlIHRlc3Qg
Y29kZS4nKTsKKyAgfTsKKworICAvLyBHZW5lcmF0ZSBhIGRlc2NyaXB0aXZlIHN0cmluZyBmcm9t
IGEgdGFyZ2V0IHZhbHVlIGluIHZhcmlvdXMgdHlwZXMuCisgIGZ1bmN0aW9uIF9nZW5lcmF0ZURl
c2NyaXB0aW9uKHRhcmdldCwgb3B0aW9ucykgeworICAgIGxldCB0YXJnZXRTdHJpbmc7CisKKyAg
ICBzd2l0Y2ggKHR5cGVvZiB0YXJnZXQpIHsKKyAgICAgIGNhc2UgJ29iamVjdCc6CisgICAgICAg
IC8vIEhhbmRsZSBBcnJheXMuCisgICAgICAgIGlmICh0YXJnZXQgaW5zdGFuY2VvZiBBcnJheSB8
fCB0YXJnZXQgaW5zdGFuY2VvZiBGbG9hdDMyQXJyYXkgfHwKKyAgICAgICAgICAgIHRhcmdldCBp
bnN0YW5jZW9mIEZsb2F0NjRBcnJheSB8fCB0YXJnZXQgaW5zdGFuY2VvZiBVaW50OEFycmF5KSB7
CisgICAgICAgICAgbGV0IGFycmF5RWxlbWVudHMgPSB0YXJnZXQubGVuZ3RoIDwgb3B0aW9ucy5u
dW1iZXJPZkFycmF5RWxlbWVudHMgPworICAgICAgICAgICAgICBTdHJpbmcodGFyZ2V0KSA6Cisg
ICAgICAgICAgICAgIFN0cmluZyh0YXJnZXQuc2xpY2UoMCwgb3B0aW9ucy5udW1iZXJPZkFycmF5
RWxlbWVudHMpKSArICcuLi4nOworICAgICAgICAgIHRhcmdldFN0cmluZyA9ICdbJyArIGFycmF5
RWxlbWVudHMgKyAnXSc7CisgICAgICAgIH0gZWxzZSBpZiAodGFyZ2V0ID09PSBudWxsKSB7Cisg
ICAgICAgICAgdGFyZ2V0U3RyaW5nID0gU3RyaW5nKHRhcmdldCk7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0gJycgKyBTdHJpbmcodGFyZ2V0KS5zcGxpdCgvW1xz
XF1dLylbMV07CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlICdmdW5jdGlv
bic6CisgICAgICAgIGlmIChFcnJvci5pc1Byb3RvdHlwZU9mKHRhcmdldCkpIHsKKyAgICAgICAg
ICB0YXJnZXRTdHJpbmcgPSAiRWNtYVNjcmlwdCBlcnJvciAiICsgdGFyZ2V0Lm5hbWU7CisgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0gU3RyaW5nKHRhcmdldCk7Cisg
ICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICB0YXJnZXRT
dHJpbmcgPSBTdHJpbmcodGFyZ2V0KTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0
dXJuIHRhcmdldFN0cmluZzsKKyAgfQorCisgIC8vIFJldHVybiBhIHN0cmluZyBzdWl0YWJsZSBm
b3IgcHJpbnRpbmcgb25lIGZhaWxlZCBlbGVtZW50IGluCisgIC8vIHxiZUNsb3NlVG9BcnJheXwu
CisgIGZ1bmN0aW9uIF9mb3JtYXRGYWlsdXJlRW50cnkoaW5kZXgsIGFjdHVhbCwgZXhwZWN0ZWQs
IGFic2VyciwgdGhyZXNob2xkKSB7CisgICAgcmV0dXJuICdcdFsnICsgaW5kZXggKyAnXVx0JyAr
IGFjdHVhbC50b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKworICAgICAgICBleHBlY3RlZC50b0V4
cG9uZW50aWFsKDE2KSArICdcdCcgKyBhYnNlcnIudG9FeHBvbmVudGlhbCgxNikgKyAnXHQnICsK
KyAgICAgICAgKGFic2VyciAvIE1hdGguYWJzKGV4cGVjdGVkKSkudG9FeHBvbmVudGlhbCgxNikg
KyAnXHQnICsKKyAgICAgICAgdGhyZXNob2xkLnRvRXhwb25lbnRpYWwoMTYpOworICB9CisKKyAg
Ly8gQ29tcHV0ZSB0aGUgZXJyb3IgdGhyZXNob2xkIGNyaXRlcmlvbiBmb3IgfGJlQ2xvc2VUb0Fy
cmF5fAorICBmdW5jdGlvbiBfY2xvc2VUb1RocmVzaG9sZChhYnNlcnIsIHJlbGVyciwgZXhwZWN0
ZWQpIHsKKyAgICByZXR1cm4gTWF0aC5tYXgoYWJzZXJyLCByZWxlcnIgKiBNYXRoLmFicyhleHBl
Y3RlZCkpOworICB9CisKKyAgLyoqCisgICAqIEBjbGFzcyBTaG91bGQKKyAgICogQGRlc2NyaXB0
aW9uIEFzc2VydGlvbiBzdWJ0YXNrIGZvciB0aGUgQXVkaXQgdGFzay4KKyAgICogQHBhcmFtIHtU
YXNrfSBwYXJlbnRUYXNrICAgICAgICAgICBBc3NvY2lhdGVkIFRhc2sgb2JqZWN0LgorICAgKiBA
cGFyYW0ge0FueX0gYWN0dWFsICAgICAgICAgICAgICAgIFRhcmdldCB2YWx1ZSB0byBiZSB0ZXN0
ZWQuCisgICAqIEBwYXJhbSB7U3RyaW5nfSBhY3R1YWxEZXNjcmlwdGlvbiAgU3RyaW5nIGRlc2Ny
aXB0aW9uIG9mIHRoZSB0ZXN0IHRhcmdldC4KKyAgICovCisgIGNsYXNzIFNob3VsZCB7CisgICAg
Y29uc3RydWN0b3IocGFyZW50VGFzaywgYWN0dWFsLCBhY3R1YWxEZXNjcmlwdGlvbikgeworICAg
ICAgdGhpcy5fdGFzayA9IHBhcmVudFRhc2s7CisKKyAgICAgIHRoaXMuX2FjdHVhbCA9IGFjdHVh
bDsKKyAgICAgIHRoaXMuX2FjdHVhbERlc2NyaXB0aW9uID0gKGFjdHVhbERlc2NyaXB0aW9uIHx8
IG51bGwpOworICAgICAgdGhpcy5fZXhwZWN0ZWQgPSBudWxsOworICAgICAgdGhpcy5fZXhwZWN0
ZWREZXNjcmlwdGlvbiA9IG51bGw7CisKKyAgICAgIHRoaXMuX2RldGFpbCA9ICcnOworICAgICAg
Ly8gSWYgdHJ1ZSBhbmQgdGhlIHRlc3QgZmFpbGVkLCBwcmludCB0aGUgYWN0dWFsIHZhbHVlIGF0
IHRoZQorICAgICAgLy8gZW5kIG9mIHRoZSBtZXNzYWdlLgorICAgICAgdGhpcy5fcHJpbnRBY3R1
YWxGb3JGYWlsdXJlID0gdHJ1ZTsKKworICAgICAgdGhpcy5fcmVzdWx0ID0gbnVsbDsKKworICAg
ICAgLyoqCisgICAgICAgKiBAcGFyYW0ge051bWJlcn0gbnVtYmVyT2ZFcnJvcnMgICBOdW1iZXIg
b2YgZXJyb3JzIHRvIGJlIHByaW50ZWQuCisgICAgICAgKiBAcGFyYW0ge051bWJlcn0gbnVtYmVy
T2ZBcnJheUVsZW1lbnRzICBOdW1iZXIgb2YgYXJyYXkgZWxlbWVudHMgdG8gYmUKKyAgICAgICAq
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50ZWQgaW4gdGhlIHRl
c3QgbG9nLgorICAgICAgICogQHBhcmFtIHtCb29sZWFufSB2ZXJib3NlICAgICAgICAgVmVyYm9z
ZSBvdXRwdXQgZnJvbSB0aGUgYXNzZXJ0aW9uLgorICAgICAgICovCisgICAgICB0aGlzLl9vcHRp
b25zID0geworICAgICAgICBudW1iZXJPZkVycm9yczogNCwKKyAgICAgICAgbnVtYmVyT2ZBcnJh
eUVsZW1lbnRzOiAxNiwKKyAgICAgICAgdmVyYm9zZTogZmFsc2UKKyAgICAgIH07CisgICAgfQor
CisgICAgX3Byb2Nlc3NBcmd1bWVudHMoYXJncykgeworICAgICAgaWYgKGFyZ3MubGVuZ3RoID09
PSAwKQorICAgICAgICByZXR1cm47CisKKyAgICAgIGlmIChhcmdzLmxlbmd0aCA+IDApCisgICAg
ICAgIHRoaXMuX2V4cGVjdGVkID0gYXJnc1swXTsKKworICAgICAgaWYgKHR5cGVvZiBhcmdzWzFd
ID09PSAnc3RyaW5nJykgeworICAgICAgICAvLyBjYXNlIDE6IChleHBlY3RlZCwgZGVzY3JpcHRp
b24sIG9wdGlvbnMpCisgICAgICAgIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24gPSBhcmdzWzFd
OworICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuX29wdGlvbnMsIGFyZ3NbMl0pOworICAgICAg
fSBlbHNlIGlmICh0eXBlb2YgYXJnc1sxXSA9PT0gJ29iamVjdCcpIHsKKyAgICAgICAgLy8gY2Fz
ZSAyOiAoZXhwZWN0ZWQsIG9wdGlvbnMpCisgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fb3B0
aW9ucywgYXJnc1sxXSk7CisgICAgICB9CisgICAgfQorCisgICAgX2J1aWxkUmVzdWx0VGV4dCgp
IHsKKyAgICAgIGlmICh0aGlzLl9yZXN1bHQgPT09IG51bGwpCisgICAgICAgIF90aHJvd0V4Y2Vw
dGlvbignSWxsZWdhbCBpbnZvY2F0aW9uOiB0aGUgYXNzZXJ0aW9uIGlzIG5vdCBmaW5pc2hlZC4n
KTsKKworICAgICAgbGV0IGFjdHVhbFN0cmluZyA9IF9nZW5lcmF0ZURlc2NyaXB0aW9uKHRoaXMu
X2FjdHVhbCwgdGhpcy5fb3B0aW9ucyk7CisKKyAgICAgIC8vIFVzZSBnZW5lcmF0ZWQgdGV4dCB3
aGVuIHRoZSBkZXNjcmlwdGlvbiBpcyBub3QgcHJvdmlkZWQuCisgICAgICBpZiAoIXRoaXMuX2Fj
dHVhbERlc2NyaXB0aW9uKQorICAgICAgICB0aGlzLl9hY3R1YWxEZXNjcmlwdGlvbiA9IGFjdHVh
bFN0cmluZzsKKworICAgICAgaWYgKCF0aGlzLl9leHBlY3RlZERlc2NyaXB0aW9uKSB7CisgICAg
ICAgIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24gPQorICAgICAgICAgICAgX2dlbmVyYXRlRGVz
Y3JpcHRpb24odGhpcy5fZXhwZWN0ZWQsIHRoaXMuX29wdGlvbnMpOworICAgICAgfQorCisgICAg
ICAvLyBGb3IgdGhlIGFzc2VydGlvbiB3aXRoIGEgc2luZ2xlIG9wZXJhbmQuCisgICAgICB0aGlz
Ll9kZXRhaWwgPQorICAgICAgICAgIHRoaXMuX2RldGFpbC5yZXBsYWNlKC9cJFx7YWN0dWFsXH0v
ZywgdGhpcy5fYWN0dWFsRGVzY3JpcHRpb24pOworCisgICAgICAvLyBJZiB0aGVyZSBpcyBhIHNl
Y29uZCBvcGVyYW5kIChpLmUuIGV4cGVjdGVkIHZhbHVlKSwgd2UgaGF2ZSB0byBidWlsZAorICAg
ICAgLy8gdGhlIHN0cmluZyBmb3IgaXQgYXMgd2VsbC4KKyAgICAgIHRoaXMuX2RldGFpbCA9Cisg
ICAgICAgICAgdGhpcy5fZGV0YWlsLnJlcGxhY2UoL1wkXHtleHBlY3RlZFx9L2csIHRoaXMuX2V4
cGVjdGVkRGVzY3JpcHRpb24pOworCisgICAgICAvLyBJZiB0aGVyZSBpcyBhbnkgcHJvcGVydHkg
aW4gfF9vcHRpb25zfCwgcmVwbGFjZSB0aGUgcHJvcGVydHkgbmFtZQorICAgICAgLy8gd2l0aCB0
aGUgdmFsdWUuCisgICAgICBmb3IgKGxldCBuYW1lIGluIHRoaXMuX29wdGlvbnMpIHsKKyAgICAg
ICAgaWYgKG5hbWUgPT09ICdudW1iZXJPZkVycm9ycycgfHwgbmFtZSA9PT0gJ251bWJlck9mQXJy
YXlFbGVtZW50cycgfHwKKyAgICAgICAgICAgIG5hbWUgPT09ICd2ZXJib3NlJykgeworICAgICAg
ICAgIGNvbnRpbnVlOworICAgICAgICB9CisKKyAgICAgICAgLy8gVGhlIFJlZ0V4cCBrZXkgc3Ry
aW5nIGNvbnRhaW5zIHNwZWNpYWwgY2hhcmFjdGVyLiBUYWtlIGNhcmUgb2YgaXQuCisgICAgICAg
IGxldCByZSA9ICdcJFx7JyArIG5hbWUgKyAnXH0nOworICAgICAgICByZSA9IHJlLnJlcGxhY2Uo
LyhbLiorP149IToke30oKXxcW1xdXC9cXF0pL2csICdcXCQxJyk7CisgICAgICAgIHRoaXMuX2Rl
dGFpbCA9IHRoaXMuX2RldGFpbC5yZXBsYWNlKAorICAgICAgICAgICAgbmV3IFJlZ0V4cChyZSwg
J2cnKSwgX2dlbmVyYXRlRGVzY3JpcHRpb24odGhpcy5fb3B0aW9uc1tuYW1lXSkpOworICAgICAg
fQorCisgICAgICAvLyBJZiB0aGUgdGVzdCBmYWlsZWQsIGFkZCB0aGUgYWN0dWFsIHZhbHVlIGF0
IHRoZSBlbmQuCisgICAgICBpZiAodGhpcy5fcmVzdWx0ID09PSBmYWxzZSAmJiB0aGlzLl9wcmlu
dEFjdHVhbEZvckZhaWx1cmUgPT09IHRydWUpIHsKKyAgICAgICAgdGhpcy5fZGV0YWlsICs9ICcg
R290ICcgKyBhY3R1YWxTdHJpbmcgKyAnLic7CisgICAgICB9CisgICAgfQorCisgICAgX2ZpbmFs
aXplKCkgeworICAgICAgaWYgKHRoaXMuX3Jlc3VsdCkgeworICAgICAgICBfbG9nUGFzc2VkKCcg
ICcgKyB0aGlzLl9kZXRhaWwpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgX2xvZ0ZhaWxlZCgn
WCAnICsgdGhpcy5fZGV0YWlsKTsKKyAgICAgIH0KKworICAgICAgLy8gVGhpcyBhc3NlcnRpb24g
aXMgZmluaXNoZWQsIHNvIHVwZGF0ZSB0aGUgcGFyZW50IHRhc2sgYWNjb3JkaW5nbHkuCisgICAg
ICB0aGlzLl90YXNrLnVwZGF0ZSh0aGlzKTsKKworICAgICAgLy8gVE9ETyhob25nY2hhbik6IGNv
bmZpZ3VyYWJsZSAnZGV0YWlsJyBtZXNzYWdlLgorICAgIH0KKworICAgIF9hc3NlcnQoY29uZGl0
aW9uLCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKSB7CisgICAgICB0aGlzLl9yZXN1bHQgPSBCb29s
ZWFuKGNvbmRpdGlvbik7CisgICAgICB0aGlzLl9kZXRhaWwgPSB0aGlzLl9yZXN1bHQgPyBwYXNz
RGV0YWlsIDogZmFpbERldGFpbDsKKyAgICAgIHRoaXMuX2J1aWxkUmVzdWx0VGV4dCgpOworICAg
ICAgdGhpcy5fZmluYWxpemUoKTsKKworICAgICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9
CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAgICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9
CisKKyAgICBnZXQgZGV0YWlsKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2RldGFpbDsKKyAgICB9
CisKKyAgICAvKioKKyAgICAgKiBzaG91bGQoKSBhc3NlcnRpb25zLgorICAgICAqCisgICAgICog
QGV4YW1wbGUgQWxsIHRoZSBhc3NlcnRpb25zIGNhbiBoYXZlIDEsIDIgb3IgMyBhcmd1bWVudHM6
CisgICAgICogICBzaG91bGQoKS5kb0Fzc2VydChleHBlY3RlZCk7CisgICAgICogICBzaG91bGQo
KS5kb0Fzc2VydChleHBlY3RlZCwgb3B0aW9ucyk7CisgICAgICogICBzaG91bGQoKS5kb0Fzc2Vy
dChleHBlY3RlZCwgZXhwZWN0ZWREZXNjcmlwdGlvbiwgb3B0aW9ucyk7CisgICAgICoKKyAgICAg
KiBAcGFyYW0ge0FueX0gZXhwZWN0ZWQgICAgICAgICAgICAgICAgICBFeHBlY3RlZCB2YWx1ZSBv
ZiB0aGUgYXNzZXJ0aW9uLgorICAgICAqIEBwYXJhbSB7U3RyaW5nfSBleHBlY3RlZERlc2NyaXB0
aW9uICAgIERlc2NyaXB0aW9uIG9mIGV4cGVjdGVkIHZhbHVlLgorICAgICAqIEBwYXJhbSB7T2Jq
ZWN0fSBvcHRpb25zICAgICAgICAgICAgICAgIE9wdGlvbnMgZm9yIGFzc2VydGlvbi4KKyAgICAg
KiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5udW1iZXJPZkVycm9ycyBOdW1iZXIgb2YgZXJyb3Jz
IHRvIGJlIHByaW50ZWQuCisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKGlmIGFwcGxpY2FibGUpCisgICAgICogQHBhcmFtIHtOdW1iZXJ9IG9wdGlvbnMubnVt
YmVyT2ZBcnJheUVsZW1lbnRzICBOdW1iZXIgb2YgYXJyYXkgZWxlbWVudHMKKyAgICAgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIGJlIHByaW50ZWQu
IChpZgorICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYXBwbGljYWJsZSkKKyAgICAgKiBAbm90ZXMgU29tZSBhc3NlcnRpb25zIGNhbiBoYXZlIGFk
ZGl0aW9uYWwgb3B0aW9ucyBmb3IgdGhlaXIgc3BlY2lmaWMKKyAgICAgKiAgICAgICAgdGVzdGlu
Zy4KKyAgICAgKi8KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGV4aXN0cy4K
KyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoe30sICdBbiBlbXB0eSBv
YmplY3QnKS5leGlzdCgpOworICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQW4gZW1w
dHkgb2JqZWN0IGRvZXMgZXhpc3QuIgorICAgICAqLworICAgIGV4aXN0KCkgeworICAgICAgcmV0
dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgIT09IG51bGwgJiYgdGhp
cy5fYWN0dWFsICE9PSB1bmRlZmluZWQsCisgICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIGV4aXN0
LicsICcke2FjdHVhbH0gZG9lcyBub3QgZXhpc3QuJyk7CisgICAgfQorCisgICAgLyoqCisgICAg
ICogQ2hlY2sgaWYgfGFjdHVhbHwgb3BlcmF0aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiB0aHJv
d3MgYW4gZXhjZXB0aW9uCisgICAgICogd2l0aCBhIGV4cGVjdGVkIGVycm9yIHR5cGUgY29ycmVj
dGx5LiB8ZXhwZWN0ZWR8IGlzIG9wdGlvbmFsLiBJZiBpdCBpcyBhbgorICAgICAqIGluc3RhbmNl
IG9mIERPTUV4Y2VwdGlvbiwgdGhlbiB0aGUgZGVzY3JpcHRpb24gKHNlY29uZCBhcmd1bWVudCkg
Y2FuIGJlCisgICAgICogcHJvdmlkZWQgdG8gYmUgbW9yZSBzdHJpY3QgYWJvdXQgdGhlIGV4cGVj
dGVkIGV4Y2VwdGlvbiB0eXBlLiB8ZXhwZWN0ZWR8CisgICAgICogYWxzbyBjYW4gYmUgb3RoZXIg
Z2VuZXJpYyBlcnJvciB0eXBlcyBzdWNoIGFzIFR5cGVFcnJvciwgUmFuZ2VFcnJvciBvcgorICAg
ICAqIGV0Yy4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoKCkgPT4g
eyBsZXQgYSA9IGI7IH0sICdBIGJhZCBjb2RlJykudGhyb3coKTsKKyAgICAgKiAgIHNob3VsZCgo
KSA9PiB7IG5ldyBTb21lQ29uc3RydWN0b3IoKTsgfSwgJ0EgYmFkIGNvbnN0cnVjdGlvbicpCisg
ICAgICogICAgICAgLnRocm93KERPTUV4Y2VwdGlvbiwgJ05vdFN1cHBvcnRlZEVycm9yJyk7Cisg
ICAgICogICBzaG91bGQoKCkgPT4geyBsZXQgYyA9IGQ7IH0sICdBc3NpZ25pbmcgZCB0byBjJykK
KyAgICAgKiAgICAgICAudGhyb3coUmVmZXJlbmNlRXJyb3IpOworICAgICAqICAgc2hvdWxkKCgp
ID0+IHsgbGV0IGUgPSBmOyB9LCAnQXNzaWduaW5nIGUgdG8gZicpCisgICAgICogICAgICAgLnRo
cm93KFJlZmVyZW5jZUVycm9yLCB7IG9taXRFcnJvck1lc3NhZ2U6IHRydWUgfSk7CisgICAgICoK
KyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIEEgYmFkIGNvZGUgdGhyZXcgYW4gZXhj
ZXB0aW9uIG9mIFJlZmVyZW5jZUVycm9yOiBiIGlzIG5vdAorICAgICAqICAgICAgIGRlZmluZWQu
IgorICAgICAqICAgIlBBU1MgICBBIGJhZCBjb25zdHJ1Y3Rpb24gdGhyZXcgRE9NRXhjZXB0aW9u
Ok5vdFN1cHBvcnRlZEVycm9yLiIKKyAgICAgKiAgICJQQVNTICAgQXNzaWduaW5nIGQgdG8gYyB0
aHJldyBSZWZlcmVuY2VFcnJvcjogZCBpcyBub3QgZGVmaW5lZC4iCisgICAgICogICAiUEFTUyAg
IEFzc2lnbmluZyBlIHRvIGYgdGhyZXcgUmVmZXJlbmNlRXJyb3I6IFtlcnJvciBtZXNzYWdlCisg
ICAgICogICAgICAgb21pdHRlZF0uIgorICAgICAqLworICAgIHRocm93KCkgeworICAgICAgdGhp
cy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxG
b3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAgIGxldCBkaWRUaHJvd0NvcnJlY3RseSA9IGZhbHNl
OworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWw7CisKKyAgICAgIHRyeSB7CisgICAg
ICAgIC8vIFRoaXMgc2hvdWxkIHRocm93LgorICAgICAgICB0aGlzLl9hY3R1YWwoKTsKKyAgICAg
ICAgLy8gQ2F0Y2ggZGlkIG5vdCBoYXBwZW4sIHNvIHRoZSB0ZXN0IGlzIGZhaWxlZC4KKyAgICAg
ICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0gZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uJzsK
KyAgICAgIH0gY2F0Y2ggKGVycm9yKSB7CisgICAgICAgIGxldCBlcnJvck1lc3NhZ2UgPSB0aGlz
Ll9vcHRpb25zLm9taXRFcnJvck1lc3NhZ2UgPworICAgICAgICAgICAgJzogW2Vycm9yIG1lc3Nh
Z2Ugb21pdHRlZF0nIDoKKyAgICAgICAgICAgICc6ICInICsgZXJyb3IubWVzc2FnZSArICciJzsK
KyAgICAgICAgaWYgKHRoaXMuX2V4cGVjdGVkID09PSBudWxsIHx8IHRoaXMuX2V4cGVjdGVkID09
PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAvLyBUaGUgZXhwZWN0ZWQgZXJyb3IgdHlwZSB3YXMg
bm90IGdpdmVuLgorICAgICAgICAgIGRpZFRocm93Q29ycmVjdGx5ID0gdHJ1ZTsKKyAgICAgICAg
ICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSB0aHJldyAnICsgZXJyb3IubmFtZSArIGVycm9yTWVz
c2FnZSArICcuJzsKKyAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9leHBlY3RlZCA9PT0gRE9NRXhj
ZXB0aW9uICYmCisgICAgICAgICAgICAgICAgICAgKHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24g
PT09IHVuZGVmaW5lZCB8fAorICAgICAgICAgICAgICAgICAgICB0aGlzLl9leHBlY3RlZERlc2Ny
aXB0aW9uID09PSBlcnJvci5uYW1lKSkgeworICAgICAgICAgIC8vIEhhbmRsZXMgRE9NRXhjZXB0
aW9uIHdpdGggdGhlIGFzc29jaWF0ZWQgbmFtZS4KKyAgICAgICAgICBkaWRUaHJvd0NvcnJlY3Rs
eSA9IHRydWU7CisgICAgICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVhbH0gdGhyZXcgJHtleHBl
Y3RlZH0nICsgZXJyb3JNZXNzYWdlICsgJy4nOworICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2V4
cGVjdGVkID09IGVycm9yLmNvbnN0cnVjdG9yKSB7CisgICAgICAgICAgLy8gSGFuZGxlciBvdGhl
ciBlcnJvciB0eXBlcy4KKyAgICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAg
ICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVhbH0gdGhyZXcgJyArIGVycm9yLm5hbWUgKyBlcnJv
ck1lc3NhZ2UgKyAnLic7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgZGlkVGhyb3dDb3Jy
ZWN0bHkgPSBmYWxzZTsKKyAgICAgICAgICBmYWlsRGV0YWlsID0KKyAgICAgICAgICAgICAgJyR7
YWN0dWFsfSB0aHJldyAiJyArIGVycm9yLm5hbWUgKyAnIiBpbnN0ZWFkIG9mICR7ZXhwZWN0ZWR9
Lic7CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChkaWRU
aHJvd0NvcnJlY3RseSwgcGFzc0RldGFpbCwgZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoq
CisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgb3BlcmF0aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlv
biBkb2VzIG5vdCB0aHJvd3MgYW4KKyAgICAgKiBleGNlcHRpb24gY29ycmVjdGx5LgorICAgICAq
CisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgoKSA9PiB7IGxldCBmb28gPSAnYmFy
JzsgfSwgJ2xldCBmb28gPSAiYmFyIicpLm5vdFRocm93KCk7CisgICAgICoKKyAgICAgKiBAcmVz
dWx0CisgICAgICogICAiUEFTUyAgIGxldCBmb28gPSAiYmFyIiBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4iCisgICAgICovCisgICAgbm90VGhyb3coKSB7CisgICAgICB0aGlzLl9wcmludEFj
dHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IGRpZFRocm93Q29ycmVjdGx5ID0g
ZmFsc2U7CisgICAgICBsZXQgcGFzc0RldGFpbCwgZmFpbERldGFpbDsKKworICAgICAgdHJ5IHsK
KyAgICAgICAgdGhpcy5fYWN0dWFsKCk7CisgICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLic7CisgICAgICB9IGNhdGNoIChlcnJvcikgewor
ICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAgICAgIGZhaWxEZXRhaWwgPSAn
JHthY3R1YWx9IGluY29ycmVjdGx5IHRocmV3ICcgKyBlcnJvci5uYW1lICsgJzogIicgKworICAg
ICAgICAgICAgZXJyb3IubWVzc2FnZSArICciLic7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0
aGlzLl9hc3NlcnQoIWRpZFRocm93Q29ycmVjdGx5LCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKTsK
KyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJl
c29sdmVkIGNvcnJlY3RseS4gTm90ZSB0aGF0IHRoZSByZXR1cm5lZAorICAgICAqIHJlc3VsdCBm
cm9tIHByb21pc2Ugb2JqZWN0IHdpbGwgYmUgcGFzc2VkIHRvIHRoZSBmb2xsb3dpbmcgdGhlbigp
CisgICAgICogZnVuY3Rpb24uCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hv
dWxkKCdNeSBwcm9taXNlJywgcHJvbWlzZSkuYmVSZXNvbHZlKCkudGhlbigocmVzdWx0KSA9PiB7
CisgICAgICogICAgIGxvZyhyZXN1bHQpOworICAgICAqICAgfSk7CisgICAgICoKKyAgICAgKiBA
cmVzdWx0CisgICAgICogICAiUEFTUyAgIE15IHByb21pc2UgcmVzb2x2ZWQgY29ycmVjdGx5LiIK
KyAgICAgKiAgICJGQUlMIFggTXkgcHJvbWlzZSByZWplY3RlZCAqSU5DT1JSRUNUTFkqIHdpdGgg
X0VSUk9SXy4iCisgICAgICovCisgICAgYmVSZXNvbHZlZCgpIHsKKyAgICAgIHJldHVybiB0aGlz
Ll9hY3R1YWwudGhlbigKKyAgICAgICAgICBmdW5jdGlvbihyZXN1bHQpIHsKKyAgICAgICAgICAg
IHRoaXMuX2Fzc2VydCh0cnVlLCAnJHthY3R1YWx9IHJlc29sdmVkIGNvcnJlY3RseS4nLCBudWxs
KTsKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAgfS5iaW5kKHRoaXMpLAor
ICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgICAgICAgICB0aGlzLl9hc3NlcnQoCisg
ICAgICAgICAgICAgICAgZmFsc2UsIG51bGwsCisgICAgICAgICAgICAgICAgJyR7YWN0dWFsfSBy
ZWplY3RlZCBpbmNvcnJlY3RseSB3aXRoICcgKyBlcnJvciArICcuJyk7CisgICAgICAgICAgfS5i
aW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBw
cm9taXNlIGlzIHJlamVjdGVkIGNvcnJlY3RseS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisg
ICAgICogICBzaG91bGQoJ015IHByb21pc2UnLCBwcm9taXNlKS5iZVJlamVjdGVkKCkudGhlbihu
ZXh0U3R1ZmYpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICBNeSBw
cm9taXNlIHJlamVjdGVkIGNvcnJlY3RseSAod2l0aCBfRVJST1JfKS4iCisgICAgICogICAiRkFJ
TCBYIE15IHByb21pc2UgcmVzb2x2ZWQgKklOQ09SUkVDVExZKi4iCisgICAgICovCisgICAgYmVS
ZWplY3RlZCgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIHRoaXMuX2Fzc2VydChmYWxzZSwgbnVsbCwgJyR7YWN0
dWFsfSByZXNvbHZlZCBpbmNvcnJlY3RseS4nKTsKKyAgICAgICAgICB9LmJpbmQodGhpcyksCisg
ICAgICAgICAgZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgICAgIHRoaXMuX2Fzc2VydCgKKyAg
ICAgICAgICAgICAgICB0cnVlLCAnJHthY3R1YWx9IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoICcg
KyBlcnJvciArICcuJywgbnVsbCk7CisgICAgICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisK
KyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJlamVjdGVkIGNv
cnJlY3RseS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQocHJvbWlz
ZSwgJ015IHByb21pc2UnKS5iZVJlamVjdGVkV2l0aCgnX0VSUk9SXycpLnRoZW4oKTsKKyAgICAg
KgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgTXkgcHJvbWlzZSByZWplY3RlZCBj
b3JyZWN0bHkgd2l0aCBfRVJST1JfLiIKKyAgICAgKiAgICJGQUlMIFggTXkgcHJvbWlzZSByZWpl
Y3RlZCBjb3JyZWN0bHkgYnV0IGdvdCBfQUNUVUFMX0VSUk9SIGluc3RlYWQgb2YKKyAgICAgKiAg
ICAgICAgICAgX0VYUEVDVEVEX0VSUk9SXy4iCisgICAgICogICAiRkFJTCBYIE15IHByb21pc2Ug
cmVzb2x2ZWQgaW5jb3JyZWN0bHkuIgorICAgICAqLworICAgIGJlUmVqZWN0ZWRXaXRoKCkgewor
ICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworCisgICAgICByZXR1cm4g
dGhpcy5fYWN0dWFsLnRoZW4oCisgICAgICAgICAgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICB0
aGlzLl9hc3NlcnQoZmFsc2UsIG51bGwsICcke2FjdHVhbH0gcmVzb2x2ZWQgaW5jb3JyZWN0bHku
Jyk7CisgICAgICAgICAgfS5iaW5kKHRoaXMpLAorICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7
CisgICAgICAgICAgICBpZiAodGhpcy5fZXhwZWN0ZWQgIT09IGVycm9yLm5hbWUpIHsKKyAgICAg
ICAgICAgICAgdGhpcy5fYXNzZXJ0KAorICAgICAgICAgICAgICAgICAgZmFsc2UsIG51bGwsCisg
ICAgICAgICAgICAgICAgICAnJHthY3R1YWx9IHJlamVjdGVkIGNvcnJlY3RseSBidXQgZ290ICcg
KyBlcnJvci5uYW1lICsKKyAgICAgICAgICAgICAgICAgICAgICAnIGluc3RlYWQgb2YgJyArIHRo
aXMuX2V4cGVjdGVkICsgJy4nKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg
IHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAgICAgICAgIHRydWUsCisgICAgICAgICAgICAgICAg
ICAnJHthY3R1YWx9IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoICcgKyB0aGlzLl9leHBlY3RlZCAr
ICcuJywKKyAgICAgICAgICAgICAgICAgIG51bGwpOworICAgICAgICAgICAgfQorICAgICAgICAg
IH0uYmluZCh0aGlzKSk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVh
bHwgaXMgYSBib29sZWFuIHRydWUuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAg
c2hvdWxkKDMgPCA1LCAnMyA8IDUnKS5iZVRydWUoKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQK
KyAgICAgKiAgICJQQVNTICAgMyA8IDUgaXMgdHJ1ZS4iCisgICAgICovCisgICAgYmVUcnVlKCkg
eworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPT09
IHRydWUsICcke2FjdHVhbH0gaXMgdHJ1ZS4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90
IHRydWUuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMg
YSBib29sZWFuIGZhbHNlLgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3Vs
ZCgzID4gNSwgJzMgPiA1JykuYmVGYWxzZSgpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAg
ICAqICAgIlBBU1MgICAzID4gNSBpcyBmYWxzZS4iCisgICAgICovCisgICAgYmVGYWxzZSgpIHsK
KyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFsID09PSBm
YWxzZSwgJyR7YWN0dWFsfSBpcyBmYWxzZS4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90
IGZhbHNlLicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlz
IHN0cmljdGx5IGVxdWFsIHRvIHxleHBlY3RlZHwuIChubyB0eXBlIGNvZXJjaW9uKQorICAgICAq
CisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgxKS5iZUVxdWFsVG8oMSk7CisgICAg
ICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDEgaXMgZXF1YWwgdG8gMS4iCisg
ICAgICovCisgICAgYmVFcXVhbFRvKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhh
cmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9h
Y3R1YWwgPT09IHRoaXMuX2V4cGVjdGVkLCAnJHthY3R1YWx9IGlzIGVxdWFsIHRvICR7ZXhwZWN0
ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgZXF1YWwgdG8gJHtleHBlY3RlZH0u
Jyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgbm90IGVx
dWFsIHRvIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hv
dWxkKDEpLm5vdEJlRXF1YWxUbygyKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAg
ICJQQVNTICAgMSBpcyBub3QgZXF1YWwgdG8gMi4iCisgICAgICovCisgICAgbm90QmVFcXVhbFRv
KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0
dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgIT09IHRoaXMuX2V4cGVj
dGVkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGVxdWFsIHRvICR7ZXhwZWN0ZWR9Lics
CisgICAgICAgICAgJyR7YWN0dWFsfSBzaG91bGQgbm90IGJlIGVxdWFsIHRvICR7ZXhwZWN0ZWR9
LicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIGNoZWNrIGlmIHxhY3R1YWx8IGlzIE5hTgor
ICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZChOYU4pLmJlTmFOKCk7Cisg
ICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIE5hTiBpcyBOYU4iCisgICAg
ICoKKyAgICAgKi8KKyAgICBiZU5hTigpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMo
YXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgaXNOYU4o
dGhpcy5fYWN0dWFsKSwKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIE5hTi4nLAorICAgICAgICAg
ICcke2FjdHVhbH0gaXMgbm90IE5hTiBidXQgc2hvdWxkIGJlLicpOworICAgIH0KKworICAgIC8q
KgorICAgICAqIGNoZWNrIGlmIHxhY3R1YWx8IGlzIE5PVCBOYU4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQoNDIpLm5vdEJlTmFOKCk7CisgICAgICoKKyAgICAgKiBA
cmVzdWx0CisgICAgICogICAiUEFTUyAgIDQyIGlzIG5vdCBOYU4iCisgICAgICoKKyAgICAgKi8K
KyAgICBub3RCZU5hTigpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRz
KTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgIWlzTmFOKHRoaXMuX2Fj
dHVhbCksCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgTmFOLicsCisgICAgICAgICAgJyR7
YWN0dWFsfSBpcyBOYU4gYnV0IHNob3VsZCBub3QgYmUuJyk7CisgICAgfQorCisgICAgLyoqCisg
ICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgZ3JlYXRlciB0aGFuIHxleHBlY3RlZHwuCisgICAg
ICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDIpLmJlR3JlYXRlclRoYW5PckVx
dWFsVG8oMik7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDIgaXMg
Z3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDIuIgorICAgICAqLworICAgIGJlR3JlYXRlclRoYW4o
KSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1
cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHRoaXMuX2FjdHVhbCA+IHRoaXMuX2V4cGVjdGVk
LAorICAgICAgICAgICcke2FjdHVhbH0gaXMgZ3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicsCisg
ICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgZ3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicpOwor
ICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlzIGdyZWF0ZXIgdGhh
biBvciBlcXVhbCB0byB8ZXhwZWN0ZWR8LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAg
KiAgIHNob3VsZCgyKS5iZUdyZWF0ZXJUaGFuKDEpOworICAgICAqCisgICAgICogQHJlc3VsdAor
ICAgICAqICAgIlBBU1MgICAyIGlzIGdyZWF0ZXIgdGhhbiAxLiIKKyAgICAgKi8KKyAgICBiZUdy
ZWF0ZXJUaGFuT3JFcXVhbFRvKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1
bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1
YWwgPj0gdGhpcy5fZXhwZWN0ZWQsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBncmVhdGVyIHRo
YW4gb3IgZXF1YWwgdG8gJHtleHBlY3RlZH0uJywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5v
dCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAg
LyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgbGVzcyB0aGFuIHxleHBlY3RlZHwuCisg
ICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDEpLmJlTGVzc1RoYW4oMik7
CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDEgaXMgbGVzcyB0aGFu
IDIuIgorICAgICAqLworICAgIGJlTGVzc1RoYW4oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJn
dW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAg
IHRoaXMuX2FjdHVhbCA8IHRoaXMuX2V4cGVjdGVkLCAnJHthY3R1YWx9IGlzIGxlc3MgdGhhbiAk
e2V4cGVjdGVkfS4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGxlc3MgdGhhbiAke2V4
cGVjdGVkfS4nKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBp
cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gfGV4cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFt
cGxlCisgICAgICogICBzaG91bGQoMSkuYmVMZXNzVGhhbk9yRXF1YWxUbygxKTsKKyAgICAgKgor
ICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwg
dG8gMS4iCisgICAgICovCisgICAgYmVMZXNzVGhhbk9yRXF1YWxUbygpIHsKKyAgICAgIHRoaXMu
X3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQo
CisgICAgICAgICAgdGhpcy5fYWN0dWFsIDw9IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICck
e2FjdHVhbH0gaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAg
ICAgJyR7YWN0dWFsfSBpcyBub3QgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICR7ZXhwZWN0ZWR9Licp
OworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIGZp
bGxlZCB3aXRoIGEgY29uc3RhbnQgfGV4cGVjdGVkfCB2YWx1ZS4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQoWzEsIDEsIDFdKS5iZUNvbnN0YW50VmFsdWVPZigxKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgWzEsMSwxXSBjb250YWlu
cyBvbmx5IHRoZSBjb25zdGFudCAxLiIKKyAgICAgKi8KKyAgICBiZUNvbnN0YW50VmFsdWVPZigp
IHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMu
X3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1
ZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsOworICAgICAgbGV0IGVycm9ycyA9
IHt9OworCisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVj
dGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwg
YWN0dWFsLmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0g
ZXhwZWN0ZWQpCisgICAgICAgICAgZXJyb3JzW2luZGV4XSA9IGFjdHVhbFtpbmRleF07CisgICAg
ICB9CisKKyAgICAgIGxldCBudW1iZXJPZkVycm9ycyA9IE9iamVjdC5rZXlzKGVycm9ycykubGVu
Z3RoOworICAgICAgcGFzc2VkID0gbnVtYmVyT2ZFcnJvcnMgPT09IDA7CisKKyAgICAgIGlmIChw
YXNzZWQpIHsKKyAgICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVhbH0gY29udGFpbnMgb25seSB0
aGUgY29uc3RhbnQgJHtleHBlY3RlZH0uJzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGxldCBj
b3VudGVyID0gMDsKKyAgICAgICAgZmFpbERldGFpbCA9CisgICAgICAgICAgICAnJHthY3R1YWx9
OiBFeHBlY3RlZCAke2V4cGVjdGVkfSBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgJyArCisgICAg
ICAgICAgICBudW1iZXJPZkVycm9ycyArICcgdW5leHBlY3RlZCB2YWx1ZXM6ICc7CisgICAgICAg
IGZhaWxEZXRhaWwgKz0gJ1xuXHRJbmRleFx0QWN0dWFsJzsKKyAgICAgICAgZm9yIChsZXQgZXJy
b3JJbmRleCBpbiBlcnJvcnMpIHsKKyAgICAgICAgICBmYWlsRGV0YWlsICs9ICdcblx0WycgKyBl
cnJvckluZGV4ICsgJ10nICsKKyAgICAgICAgICAgICAgJ1x0JyArIGVycm9yc1tlcnJvckluZGV4
XTsKKyAgICAgICAgICBpZiAoKytjb3VudGVyID49IHRoaXMuX29wdGlvbnMubnVtYmVyT2ZFcnJv
cnMpIHsKKyAgICAgICAgICAgIGZhaWxEZXRhaWwgKz0KKyAgICAgICAgICAgICAgICAnXG5cdC4u
LmFuZCAnICsgKG51bWJlck9mRXJyb3JzIC0gY291bnRlcikgKyAnIG1vcmUgZXJyb3JzLic7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0KKworICAg
ICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOwor
ICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIG5vdCBm
aWxsZWQgd2l0aCBhIGNvbnN0YW50IHxleHBlY3RlZHwgdmFsdWUuCisgICAgICoKKyAgICAgKiBA
ZXhhbXBsZQorICAgICAqICAgc2hvdWxkKFsxLCAwLCAxXSkubm90QmVDb25zdGFudFZhbHVlT2Yo
MSk7CisgICAgICogICBzaG91bGQoWzAsIDAsIDBdKS5ub3RCZUNvbnN0YW50VmFsdWVPZigwKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgWzEsMCwxXSBpcyBub3Qg
Y29uc3RhbnRseSAxIChjb250YWlucyAxIGRpZmZlcmVudCB2YWx1ZSkuIgorICAgICAqICAgIkZB
SUwgWCBbMCwwLDBdIHNob3VsZCBoYXZlIGNvbnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRpZmZl
cmVudAorICAgICAqICAgICBmcm9tIDAuIgorICAgICAqLworICAgIG5vdEJlQ29uc3RhbnRWYWx1
ZU9mKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAg
dGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAgIGxldCBwYXNzZWQg
PSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRhaWw7CisgICAgICBsZXQgZmFpbERldGFpbDsKKyAg
ICAgIGxldCBkaWZmZXJlbmNlcyA9IHt9OworCisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0
dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxl
dCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBp
ZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWQpCisgICAgICAgICAgZGlmZmVyZW5jZXNbaW5k
ZXhdID0gYWN0dWFsW2luZGV4XTsKKyAgICAgIH0KKworICAgICAgbGV0IG51bWJlck9mRGlmZmVy
ZW5jZXMgPSBPYmplY3Qua2V5cyhkaWZmZXJlbmNlcykubGVuZ3RoOworICAgICAgcGFzc2VkID0g
bnVtYmVyT2ZEaWZmZXJlbmNlcyA+IDA7CisKKyAgICAgIGlmIChwYXNzZWQpIHsKKyAgICAgICAg
bGV0IHZhbHVlU3RyaW5nID0gbnVtYmVyT2ZEaWZmZXJlbmNlcyA+IDEgPyAndmFsdWVzJyA6ICd2
YWx1ZSc7CisgICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IGlzIG5vdCBjb25zdGFudGx5
ICR7ZXhwZWN0ZWR9IChjb250YWlucyAnICsKKyAgICAgICAgICAgIG51bWJlck9mRGlmZmVyZW5j
ZXMgKyAnIGRpZmZlcmVudCAnICsgdmFsdWVTdHJpbmcgKyAnKS4nOworICAgICAgfSBlbHNlIHsK
KyAgICAgICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0gc2hvdWxkIGhhdmUgY29udGFpbiBhdCBs
ZWFzdCBvbmUgdmFsdWUgJyArCisgICAgICAgICAgICAnZGlmZmVyZW50IGZyb20gJHtleHBlY3Rl
ZH0uJzsKKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NE
ZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxh
Y3R1YWx8IGFycmF5IGlzIGlkZW50aWNhbCB0byB8ZXhwZWN0ZWR8IGFycmF5IGVsZW1lbnQtd2lz
ZS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoWzEsIDIsIDNdKS5i
ZUVxdWFsVG9BcnJheShbMSwgMiwgM10pOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAq
ICAgIlsxLDIsM10gaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBbMSwyLDNdLiIKKyAgICAgKi8K
KyAgICBiZUVxdWFsVG9BcnJheSgpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJn
dW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNlOworCisg
ICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBmYWlsRGV0YWls
OworICAgICAgbGV0IGVycm9ySW5kaWNlcyA9IFtdOworCisgICAgICBpZiAodGhpcy5fYWN0dWFs
Lmxlbmd0aCAhPT0gdGhpcy5fZXhwZWN0ZWQubGVuZ3RoKSB7CisgICAgICAgIHBhc3NlZCA9IGZh
bHNlOworICAgICAgICBmYWlsRGV0YWlsID0gJ1RoZSBhcnJheSBsZW5ndGggZG9lcyBub3QgbWF0
Y2guJzsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZh
aWxEZXRhaWwpOworICAgICAgfQorCisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOwor
ICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRl
eCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0
dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWRbaW5kZXhdKQorICAgICAgICAgIGVycm9ySW5kaWNlcy5w
dXNoKGluZGV4KTsKKyAgICAgIH0KKworICAgICAgcGFzc2VkID0gZXJyb3JJbmRpY2VzLmxlbmd0
aCA9PT0gMDsKKworICAgICAgaWYgKHBhc3NlZCkgeworICAgICAgICBwYXNzRGV0YWlsID0gJyR7
YWN0dWFsfSBpcyBpZGVudGljYWwgdG8gdGhlIGFycmF5ICR7ZXhwZWN0ZWR9Lic7CisgICAgICB9
IGVsc2UgeworICAgICAgICBsZXQgY291bnRlciA9IDA7CisgICAgICAgIGZhaWxEZXRhaWwgPQor
ICAgICAgICAgICAgJyR7YWN0dWFsfSBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkg
JHtleHBlY3RlZH0gJyArCisgICAgICAgICAgICAnYnV0IGRpZmZlcnMgaW4gJyArIGVycm9ySW5k
aWNlcy5sZW5ndGggKyAnIHBsYWNlczonICsKKyAgICAgICAgICAgICdcblx0SW5kZXhcdEFjdHVh
bFx0XHRcdEV4cGVjdGVkJzsKKyAgICAgICAgZm9yIChsZXQgaW5kZXggb2YgZXJyb3JJbmRpY2Vz
KSB7CisgICAgICAgICAgZmFpbERldGFpbCArPSAnXG5cdFsnICsgaW5kZXggKyAnXScgKworICAg
ICAgICAgICAgICAnXHQnICsgdGhpcy5fYWN0dWFsW2luZGV4XS50b0V4cG9uZW50aWFsKDE2KSAr
ICdcdCcgKworICAgICAgICAgICAgICB0aGlzLl9leHBlY3RlZFtpbmRleF0udG9FeHBvbmVudGlh
bCgxNik7CisgICAgICAgICAgaWYgKCsrY291bnRlciA+PSB0aGlzLl9vcHRpb25zLm51bWJlck9m
RXJyb3JzKSB7CisgICAgICAgICAgICBmYWlsRGV0YWlsICs9ICdcblx0Li4uYW5kICcgKyAoZXJy
b3JJbmRpY2VzLmxlbmd0aCAtIGNvdW50ZXIpICsKKyAgICAgICAgICAgICAgICAnIG1vcmUgZXJy
b3JzLic7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAg
IH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxE
ZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5
IGNvbnRhaW5zIG9ubHkgdGhlIHZhbHVlcyBpbiB8ZXhwZWN0ZWR8IGluIHRoZQorICAgICAqIG9y
ZGVyIG9mIHZhbHVlcyBpbiB8ZXhwZWN0ZWR8LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAg
ICAgKiAgIFNob3VsZChbMSwgMSwgMywgMywgMl0sICdNeSByYW5kb20gYXJyYXknKS5jb250YWlu
VmFsdWVzKFsxLCAzLCAyXSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFT
UyAgIFsxLDEsMywzLDJdIGNvbnRhaW5zIGFsbCB0aGUgZXhwZWN0ZWQgdmFsdWVzIGluIHRoZSBj
b3JyZWN0CisgICAgICogICAgICAgICAgIG9yZGVyOiBbMSwzLDJdLgorICAgICAqLworICAgIGNv
bnRhaW5WYWx1ZXMoKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7
CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0
IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQgaW5kZXhlZEFjdHVhbCA9IFtdOworICAgICAgbGV0
IGZpcnN0RXJyb3JJbmRleCA9IG51bGw7CisKKyAgICAgIC8vIENvbGxlY3QgdGhlIHVuaXF1ZSB2
YWx1ZSBzZXF1ZW5jZSBmcm9tIHRoZSBhY3R1YWwuCisgICAgICBmb3IgKGxldCBpID0gMCwgcHJl
diA9IG51bGw7IGkgPCB0aGlzLl9hY3R1YWwubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKHRo
aXMuX2FjdHVhbFtpXSAhPT0gcHJldikgeworICAgICAgICAgIGluZGV4ZWRBY3R1YWwucHVzaCh7
aW5kZXg6IGksIHZhbHVlOiB0aGlzLl9hY3R1YWxbaV19KTsKKyAgICAgICAgICBwcmV2ID0gdGhp
cy5fYWN0dWFsW2ldOworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIC8vIENvbXBhcmUgYWdh
aW5zdCB0aGUgZXhwZWN0ZWQgc2VxdWVuY2UuCisgICAgICBsZXQgZmFpbE1lc3NhZ2UgPQorICAg
ICAgICAgICcke2FjdHVhbH0gZXhwZWN0ZWQgdG8gaGF2ZSB0aGUgdmFsdWUgc2VxdWVuY2Ugb2Yg
JHtleHBlY3RlZH0gYnV0ICcgKworICAgICAgICAgICdnb3QgJzsKKyAgICAgIGlmICh0aGlzLl9l
eHBlY3RlZC5sZW5ndGggPT09IGluZGV4ZWRBY3R1YWwubGVuZ3RoKSB7CisgICAgICAgIGZvciAo
bGV0IGogPSAwOyBqIDwgdGhpcy5fZXhwZWN0ZWQubGVuZ3RoOyBqKyspIHsKKyAgICAgICAgICBp
ZiAodGhpcy5fZXhwZWN0ZWRbal0gIT09IGluZGV4ZWRBY3R1YWxbal0udmFsdWUpIHsKKyAgICAg
ICAgICAgIGZpcnN0RXJyb3JJbmRleCA9IGluZGV4ZWRBY3R1YWxbal0uaW5kZXg7CisgICAgICAg
ICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAgICAgICAgIGZhaWxNZXNzYWdlICs9IHRoaXMuX2Fj
dHVhbFtmaXJzdEVycm9ySW5kZXhdICsgJyBhdCBpbmRleCAnICsKKyAgICAgICAgICAgICAgICBm
aXJzdEVycm9ySW5kZXggKyAnLic7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICB9Cisg
ICAgICAgIH0KKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAg
ICBsZXQgaW5kZXhlZFZhbHVlcyA9IGluZGV4ZWRBY3R1YWwubWFwKHggPT4geC52YWx1ZSk7Cisg
ICAgICAgIGZhaWxNZXNzYWdlICs9IGAke2luZGV4ZWRBY3R1YWwubGVuZ3RofSB2YWx1ZXMsIFsk
eworICAgICAgICAgICAgaW5kZXhlZFZhbHVlc31dLCBpbnN0ZWFkIG9mICR7dGhpcy5fZXhwZWN0
ZWQubGVuZ3RofS5gOworICAgICAgfQorCisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAg
ICAgICAgIHBhc3NlZCwKKyAgICAgICAgICAnJHthY3R1YWx9IGNvbnRhaW5zIGFsbCB0aGUgZXhw
ZWN0ZWQgdmFsdWVzIGluIHRoZSBjb3JyZWN0IG9yZGVyOiAnICsKKyAgICAgICAgICAgICAgJyR7
ZXhwZWN0ZWR9LicsCisgICAgICAgICAgZmFpbE1lc3NhZ2UpOworICAgIH0KKworICAgIC8qKgor
ICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGRvZXMgbm90IGhhdmUgYW55IGdsaXRjaGVz
LiBOb3RlIHRoYXQgfHRocmVzaG9sZHwKKyAgICAgKiBpcyBub3Qgb3B0aW9uYWwgYW5kIGlzIHRv
IGRlZmluZSB0aGUgZGVzaXJlZCB0aHJlc2hvbGQgdmFsdWUuCisgICAgICoKKyAgICAgKiBAZXhh
bXBsZQorICAgICAqICAgc2hvdWxkKFswLjUsIDAuNSwgMC41NSwgMC41LCAwLjQ1LCAwLjVdKS5u
b3RHbGl0Y2goMC4wNik7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAg
IFswLjUsMC41LDAuNTUsMC41LDAuNDUsMC41XSBoYXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJl
c2hvbGQKKyAgICAgKiAgICAgICAgICAgb2YgMC4wNi4iCisgICAgICoKKyAgICAgKi8KKyAgICBu
b3RHbGl0Y2goKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7Cisg
ICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBh
c3NlZCA9IHRydWU7CisgICAgICBsZXQgcGFzc0RldGFpbCwgZmFpbERldGFpbDsKKworICAgICAg
bGV0IGFjdHVhbCA9IHRoaXMuX2FjdHVhbDsKKyAgICAgIGxldCBleHBlY3RlZCA9IHRoaXMuX2V4
cGVjdGVkOworICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGFjdHVhbC5sZW5ndGg7
ICsraW5kZXgpIHsKKyAgICAgICAgbGV0IGRpZmYgPSBNYXRoLmFicyhhY3R1YWxbaW5kZXggLSAx
XSAtIGFjdHVhbFtpbmRleF0pOworICAgICAgICBpZiAoZGlmZiA+PSBleHBlY3RlZCkgeworICAg
ICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICAgIGZhaWxEZXRhaWwgPSAnJHthY3R1YWx9
IGhhcyBhIGdsaXRjaCBhdCBpbmRleCAnICsgaW5kZXggKworICAgICAgICAgICAgICAnIG9mIHNp
emUgJyArIGRpZmYgKyAnLic7CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcGFzc0RldGFp
bCA9CisgICAgICAgICAgJyR7YWN0dWFsfSBoYXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJlc2hv
bGQgb2YgJHtleHBlY3RlZH0uJzsKKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQs
IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNr
IGlmIHxhY3R1YWx8IGlzIGNsb3NlIHRvIHxleHBlY3RlZHwgdXNpbmcgdGhlIGdpdmVuIHJlbGF0
aXZlIGVycm9yCisgICAgICogfHRocmVzaG9sZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQor
ICAgICAqICAgc2hvdWxkKDIuMykuYmVDbG9zZVRvKDIsIHsgdGhyZXNob2xkOiAwLjMgfSk7Cisg
ICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgICAyLjMgaXMgMiB3aXRoaW4g
YW4gZXJyb3Igb2YgMC4zLiIKKyAgICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyAgICAgICAg
ICAgICAgT3B0aW9ucyBmb3IgYXNzZXJ0aW9uLgorICAgICAqIEBwYXJhbSB7TnVtYmVyfSBvcHRp
b25zLnRocmVzaG9sZCAgICBUaHJlc2hvbGQgdmFsdWUgZm9yIHRoZSBjb21wYXJpc29uLgorICAg
ICAqLworICAgIGJlQ2xvc2VUbygpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJn
dW1lbnRzKTsKKworICAgICAgLy8gVGhlIHRocmVzaG9sZCBpcyByZWxhdGl2ZSBleGNlcHQgd2hl
biB8ZXhwZWN0ZWR8IGlzIHplcm8sIGluIHdoaWNoIGNhc2UKKyAgICAgIC8vIGl0IGlzIGFic29s
dXRlLgorICAgICAgbGV0IGFic0V4cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQgPyBNYXRoLmFicyh0
aGlzLl9leHBlY3RlZCkgOiAxOworICAgICAgbGV0IGVycm9yID0gTWF0aC5hYnModGhpcy5fYWN0
dWFsIC0gdGhpcy5fZXhwZWN0ZWQpIC8gYWJzRXhwZWN0ZWQ7CisKKyAgICAgIC8vIGRlYnVnZ2Vy
OworCisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIGVycm9yIDw9IHRoaXMu
X29wdGlvbnMudGhyZXNob2xkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgJHtleHBlY3RlZH0g
d2l0aGluIGFuIGVycm9yIG9mICR7dGhyZXNob2xkfS4nLAorICAgICAgICAgICcke2FjdHVhbH0g
aXMgbm90IGNsb3NlIHRvICR7ZXhwZWN0ZWR9IHdpdGhpbiBhIHJlbGF0aXZlIGVycm9yIG9mICcg
KworICAgICAgICAgICAgICAnJHt0aHJlc2hvbGR9IChSZWxFcnI9JyArIGVycm9yICsgJykuJyk7
CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfHRhcmdldHwgYXJyYXkgaXMgY2xv
c2UgdG8gfGV4cGVjdGVkfCBhcnJheSBlbGVtZW50LXdpc2Ugd2l0aGluCisgICAgICogYSBjZXJ0
YWluIGVycm9yIGJvdW5kIGdpdmVuIGJ5IHRoZSB8b3B0aW9uc3wuCisgICAgICoKKyAgICAgKiBU
aGUgZXJyb3IgY3JpdGVyaW9uIGlzOgorICAgICAqICAgYWJzKGFjdHVhbFtrXSAtIGV4cGVjdGVk
W2tdKSA8IG1heChhYnNFcnIsIHJlbEVyciAqIGFicyhleHBlY3RlZCkpCisgICAgICoKKyAgICAg
KiBJZiBub3RoaW5nIGlzIGdpdmVuIGZvciB8b3B0aW9uc3wsIHRoZW4gYWJzRXJyID0gcmVsRXJy
ID0gMC4gSWYKKyAgICAgKiBhYnNFcnIgPSAwLCB0aGVuIHRoZSBlcnJvciBjcml0ZXJpb24gaXMg
YSByZWxhdGl2ZSBlcnJvci4gQSBub24temVybworICAgICAqIGFic0VyciB2YWx1ZSBwcm9kdWNl
cyBhIG1peCBpbnRlbmRlZCB0byBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgdGhlCisgICAgICogZXhw
ZWN0ZWQgdmFsdWUgaXMgMCwgYWxsb3dpbmcgdGhlIHRhcmdldCB2YWx1ZSB0byBkaWZmZXIgYnkg
YWJzRXJyIGZyb20KKyAgICAgKiB0aGUgZXhwZWN0ZWQuCisgICAgICoKKyAgICAgKiBAcGFyYW0g
e051bWJlcn0gb3B0aW9ucy5hYnNvbHV0ZVRocmVzaG9sZCAgICBBYnNvbHV0ZSB0aHJlc2hvbGQu
CisgICAgICogQHBhcmFtIHtOdW1iZXJ9IG9wdGlvbnMucmVsYXRpdmVUaHJlc2hvbGQgICAgUmVs
YXRpdmUgdGhyZXNob2xkLgorICAgICAqLworICAgIGJlQ2xvc2VUb0FycmF5KCkgeworICAgICAg
dGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1
YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAg
bGV0IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWw7CisKKyAgICAgIC8vIFBhcnNpbmcgb3B0aW9ucy4K
KyAgICAgIGxldCBhYnNFcnJvclRocmVzaG9sZCA9ICh0aGlzLl9vcHRpb25zLmFic29sdXRlVGhy
ZXNob2xkIHx8IDApOworICAgICAgbGV0IHJlbEVycm9yVGhyZXNob2xkID0gKHRoaXMuX29wdGlv
bnMucmVsYXRpdmVUaHJlc2hvbGQgfHwgMCk7CisKKyAgICAgIC8vIEEgY29sbGVjdGlvbiBvZiBh
bGwgb2YgdGhlIHZhbHVlcyB0aGF0IHNhdGlzZnkgdGhlIGVycm9yIGNyaXRlcmlvbi4KKyAgICAg
IC8vIFRoaXMgaG9sZHMgdGhlIGFic29sdXRlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgdGFyZ2V0
IGVsZW1lbnQgYW5kIHRoZQorICAgICAgLy8gZXhwZWN0ZWQgZWxlbWVudC4KKyAgICAgIGxldCBl
cnJvcnMgPSB7fTsKKworICAgICAgLy8gS2VlcCB0cmFjayBvZiB0aGUgbWF4IGFic29sdXRlIGVy
cm9yIGZvdW5kLgorICAgICAgbGV0IG1heEFic0Vycm9yID0gLUluZmluaXR5LCBtYXhBYnNFcnJv
ckluZGV4ID0gLTE7CisKKyAgICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIG1heCByZWxhdGl2ZSBl
cnJvciBmb3VuZCwgaWdub3JpbmcgY2FzZXMgd2hlcmUgdGhlCisgICAgICAvLyByZWxhdGl2ZSBl
cnJvciBpcyBJbmZpbml0eSBiZWNhdXNlIHRoZSBleHBlY3RlZCB2YWx1ZSBpcyAwLgorICAgICAg
bGV0IG1heFJlbEVycm9yID0gLUluZmluaXR5LCBtYXhSZWxFcnJvckluZGV4ID0gLTE7CisKKyAg
ICAgIGxldCBhY3R1YWwgPSB0aGlzLl9hY3R1YWw7CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlz
Ll9leHBlY3RlZDsKKworICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGV4cGVjdGVk
Lmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBsZXQgZGlmZiA9IE1hdGguYWJzKGFjdHVhbFtp
bmRleF0gLSBleHBlY3RlZFtpbmRleF0pOworICAgICAgICBsZXQgYWJzRXhwZWN0ZWQgPSBNYXRo
LmFicyhleHBlY3RlZFtpbmRleF0pOworICAgICAgICBsZXQgcmVsRXJyb3IgPSBkaWZmIC8gYWJz
RXhwZWN0ZWQ7CisKKyAgICAgICAgaWYgKGRpZmYgPgorICAgICAgICAgICAgTWF0aC5tYXgoYWJz
RXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhyZXNob2xkICogYWJzRXhwZWN0ZWQpKSB7CisgICAg
ICAgICAgaWYgKGRpZmYgPiBtYXhBYnNFcnJvcikgeworICAgICAgICAgICAgbWF4QWJzRXJyb3JJ
bmRleCA9IGluZGV4OworICAgICAgICAgICAgbWF4QWJzRXJyb3IgPSBkaWZmOworICAgICAgICAg
IH0KKworICAgICAgICAgIGlmICghaXNOYU4ocmVsRXJyb3IpICYmIHJlbEVycm9yID4gbWF4UmVs
RXJyb3IpIHsKKyAgICAgICAgICAgIG1heFJlbEVycm9ySW5kZXggPSBpbmRleDsKKyAgICAgICAg
ICAgIG1heFJlbEVycm9yID0gcmVsRXJyb3I7CisgICAgICAgICAgfQorCisgICAgICAgICAgZXJy
b3JzW2luZGV4XSA9IGRpZmY7CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgbGV0IG51bWJl
ck9mRXJyb3JzID0gT2JqZWN0LmtleXMoZXJyb3JzKS5sZW5ndGg7CisgICAgICBsZXQgbWF4QWxs
b3dlZEVycm9yRGV0YWlsID0gSlNPTi5zdHJpbmdpZnkoeworICAgICAgICBhYnNvbHV0ZVRocmVz
aG9sZDogYWJzRXJyb3JUaHJlc2hvbGQsCisgICAgICAgIHJlbGF0aXZlVGhyZXNob2xkOiByZWxF
cnJvclRocmVzaG9sZAorICAgICAgfSk7CisKKyAgICAgIGlmIChudW1iZXJPZkVycm9ycyA9PT0g
MCkgeworICAgICAgICAvLyBUaGUgYXNzZXJ0aW9uIHdhcyBzdWNjZXNzZnVsLgorICAgICAgICBw
YXNzRGV0YWlsID0gJyR7YWN0dWFsfSBlcXVhbHMgJHtleHBlY3RlZH0gd2l0aCBhbiBlbGVtZW50
LXdpc2UgJyArCisgICAgICAgICAgICAndG9sZXJhbmNlIG9mICcgKyBtYXhBbGxvd2VkRXJyb3JE
ZXRhaWwgKyAnLic7CisgICAgICB9IGVsc2UgeworICAgICAgICAvLyBGYWlsZWQuIFByZXBhcmUg
dGhlIGRldGFpbGVkIGZhaWx1cmUgbG9nLgorICAgICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAg
ICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0gZG9lcyBub3QgZXF1YWwgJHtleHBlY3RlZH0gd2l0
aCBhbiAnICsKKyAgICAgICAgICAgICdlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mICcgKyBtYXhB
bGxvd2VkRXJyb3JEZXRhaWwgKyAnLlxuJzsKKworICAgICAgICAvLyBQcmludCBvdXQgYWN0dWFs
LCBleHBlY3RlZCwgYWJzb2x1dGUgZXJyb3IsIGFuZCByZWxhdGl2ZSBlcnJvci4KKyAgICAgICAg
bGV0IGNvdW50ZXIgPSAwOworICAgICAgICBmYWlsRGV0YWlsICs9ICdcdEluZGV4XHRBY3R1YWxc
dFx0XHRFeHBlY3RlZFx0XHRBYnNFcnJvcicgKworICAgICAgICAgICAgJ1x0XHRSZWxFcnJvclx0
XHRUZXN0IHRocmVzaG9sZCc7CisgICAgICAgIGxldCBwcmludGVkSW5kaWNlcyA9IFtdOworICAg
ICAgICBmb3IgKGxldCBpbmRleCBpbiBlcnJvcnMpIHsKKyAgICAgICAgICBmYWlsRGV0YWlsICs9
CisgICAgICAgICAgICAgICdcbicgKworICAgICAgICAgICAgICBfZm9ybWF0RmFpbHVyZUVudHJ5
KAorICAgICAgICAgICAgICAgICAgaW5kZXgsIGFjdHVhbFtpbmRleF0sIGV4cGVjdGVkW2luZGV4
XSwgZXJyb3JzW2luZGV4XSwKKyAgICAgICAgICAgICAgICAgIF9jbG9zZVRvVGhyZXNob2xkKAor
ICAgICAgICAgICAgICAgICAgICAgIGFic0Vycm9yVGhyZXNob2xkLCByZWxFcnJvclRocmVzaG9s
ZCwgZXhwZWN0ZWRbaW5kZXhdKSk7CisKKyAgICAgICAgICBwcmludGVkSW5kaWNlcy5wdXNoKGlu
ZGV4KTsKKyAgICAgICAgICBpZiAoKytjb3VudGVyID4gdGhpcy5fb3B0aW9ucy5udW1iZXJPZkVy
cm9ycykgeworICAgICAgICAgICAgZmFpbERldGFpbCArPQorICAgICAgICAgICAgICAgICdcblx0
Li4uYW5kICcgKyAobnVtYmVyT2ZFcnJvcnMgLSBjb3VudGVyKSArICcgbW9yZSBlcnJvcnMuJzsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8v
IEZpbmFsaXplIHRoZSBlcnJvciBsb2c6IHByaW50IG91dCB0aGUgbG9jYXRpb24gb2YgYm90aCB0
aGUgbWF4QWJzCisgICAgICAgIC8vIGVycm9yIGFuZCB0aGUgbWF4UmVsIGVycm9yIHNvIHdlIGNh
biBhZGp1c3QgdGhyZXNob2xkcyBhcHByb3ByaWF0ZWx5CisgICAgICAgIC8vIGluIHRoZSB0ZXN0
LgorICAgICAgICBmYWlsRGV0YWlsICs9ICdcbicgKworICAgICAgICAgICAgJ1x0TWF4IEFic0Vy
cm9yIG9mICcgKyBtYXhBYnNFcnJvci50b0V4cG9uZW50aWFsKDE2KSArCisgICAgICAgICAgICAn
IGF0IGluZGV4IG9mICcgKyBtYXhBYnNFcnJvckluZGV4ICsgJy5cbic7CisgICAgICAgIGlmIChw
cmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQgPT4geworICAgICAgICAgICAgICByZXR1cm4gZWxl
bWVudCA9PSBtYXhBYnNFcnJvckluZGV4OworICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5lZCkg
eworICAgICAgICAgIC8vIFByaW50IGFuIGVudHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhhdmVu
J3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAgICAgICAgICAgIF9mb3Jt
YXRGYWlsdXJlRW50cnkoCisgICAgICAgICAgICAgICAgICBtYXhBYnNFcnJvckluZGV4LCBhY3R1
YWxbbWF4QWJzRXJyb3JJbmRleF0sCisgICAgICAgICAgICAgICAgICBleHBlY3RlZFttYXhBYnNF
cnJvckluZGV4XSwgZXJyb3JzW21heEFic0Vycm9ySW5kZXhdLAorICAgICAgICAgICAgICAgICAg
X2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAgICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJlc2hv
bGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkW21h
eEFic0Vycm9ySW5kZXhdKSkgKworICAgICAgICAgICAgICAnXG4nOworICAgICAgICB9CisgICAg
ICAgIGZhaWxEZXRhaWwgKz0gJ1x0TWF4IFJlbEVycm9yIG9mICcgKyBtYXhSZWxFcnJvci50b0V4
cG9uZW50aWFsKDE2KSArCisgICAgICAgICAgICAnIGF0IGluZGV4IG9mICcgKyBtYXhSZWxFcnJv
ckluZGV4ICsgJy5cbic7CisgICAgICAgIGlmIChwcmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQg
PT4geworICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudCA9PSBtYXhSZWxFcnJvckluZGV4Owor
ICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5lZCkgeworICAgICAgICAgIC8vIFByaW50IGFuIGVu
dHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhhdmVuJ3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWls
RGV0YWlsICs9CisgICAgICAgICAgICAgIF9mb3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAg
ICAgICAgICBtYXhSZWxFcnJvckluZGV4LCBhY3R1YWxbbWF4UmVsRXJyb3JJbmRleF0sCisgICAg
ICAgICAgICAgICAgICBleHBlY3RlZFttYXhSZWxFcnJvckluZGV4XSwgZXJyb3JzW21heFJlbEVy
cm9ySW5kZXhdLAorICAgICAgICAgICAgICAgICAgX2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAg
ICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAg
ICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkW21heFJlbEVycm9ySW5kZXhdKSkgKworICAgICAg
ICAgICAgICAnXG4nOworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9h
c3NlcnQocGFzc2VkLCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioK
KyAgICAgKiBBIHRlbXBvcmFyeSBlc2NhcGUgaGF0IGZvciBwcmludGluZyBhbiBpbi10YXNrIG1l
c3NhZ2UuIFRoZSBkZXNjcmlwdGlvbgorICAgICAqIGZvciB0aGUgfGFjdHVhbHwgaXMgcmVxdWly
ZWQgdG8gZ2V0IHRoZSBtZXNzYWdlIHByaW50ZWQgcHJvcGVybHkuCisgICAgICoKKyAgICAgKiBU
T0RPKGhvbmdjaGFuKTogcmVtb3ZlIHRoaXMgbWV0aG9kIHdoZW4gdGhlIHRyYW5zaXRpb24gZnJv
bSB0aGUgb2xkIEF1ZGl0CisgICAgICogdG8gdGhlIG5ldyBBdWRpdCBpcyBjb21wbGV0ZWQuCisg
ICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCh0cnVlLCAnVGhlIG1lc3NhZ2UgaXMnKS5t
ZXNzYWdlKCd0cnV0aGZ1bCEnLCAnZmFsc2UhJyk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0Cisg
ICAgICogICAiUEFTUyAgIFRoZSBtZXNzYWdlIGlzIHRydXRoZnVsISIKKyAgICAgKi8KKyAgICBt
ZXNzYWdlKHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hc3Nl
cnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFsLCAnJHthY3R1YWx9ICcgKyBwYXNzRGV0YWlsLCAn
JHthY3R1YWx9ICcgKyBmYWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVj
ayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlzIHRydWx5IG93bmVkIGJ5IHxhY3R1YWx8IG9iamVj
dC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoQmFzZUF1ZGlvQ29u
dGV4dC5wcm90b3R5cGUsCisgICAgICogICAgICAgICAgJ0Jhc2VBdWRpb0NvbnRleHQucHJvdG90
eXBlJykuaGF2ZU93blByb3BlcnR5KCdjcmVhdGVHYWluJyk7CisgICAgICoKKyAgICAgKiBAcmVz
dWx0CisgICAgICogICAiUEFTUyAgIEJhc2VBdWRpb0NvbnRleHQucHJvdG90eXBlIGhhcyBhbiBv
d24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAgICAnY3JlYXRlR2FpbicuIgorICAgICAqLworICAg
IGhhdmVPd25Qcm9wZXJ0eSgpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1l
bnRzKTsKKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1
YWwuaGFzT3duUHJvcGVydHkodGhpcy5fZXhwZWN0ZWQpLAorICAgICAgICAgICcke2FjdHVhbH0g
aGFzIGFuIG93biBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLicsCisgICAgICAgICAgJyR7YWN0
dWFsfSBkb2VzIG5vdCBvd24gdGhlIHByb3BlcnR5IG9mICIke2V4cGVjdGVkfSIuJyk7CisgICAg
fQorCisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlzIG5v
dCBvd25lZCBieSB8YWN0dWFsfCBvYmplY3QuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAg
ICAqICAgc2hvdWxkKEJhc2VBdWRpb0NvbnRleHQucHJvdG90eXBlLAorICAgICAqICAgICAgICAg
ICdCYXNlQXVkaW9Db250ZXh0LnByb3RvdHlwZScpCisgICAgICogICAgICAgLm5vdEhhdmVPd25Q
cm9wZXJ0eSgnc3RhcnRSZW5kZXJpbmcnKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAg
KiAgICJQQVNTICAgQmFzZUF1ZGlvQ29udGV4dC5wcm90b3R5cGUgZG9lcyBub3QgaGF2ZSBhbiBv
d24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAgICAnc3RhcnRSZW5kZXJpbmcnLiIKKyAgICAgKi8K
KyAgICBub3RIYXZlT3duUHJvcGVydHkoKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRz
KGFyZ3VtZW50cyk7CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgIXRo
aXMuX2FjdHVhbC5oYXNPd25Qcm9wZXJ0eSh0aGlzLl9leHBlY3RlZCksCisgICAgICAgICAgJyR7
YWN0dWFsfSBkb2VzIG5vdCBoYXZlIGFuIG93biBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLics
CisgICAgICAgICAgJyR7YWN0dWFsfSBoYXMgYW4gb3duIHRoZSBwcm9wZXJ0eSBvZiAiJHtleHBl
Y3RlZH0iLicpCisgICAgfQorCisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiBhbiBvYmplY3Qg
aXMgaW5oZXJpdGVkIGZyb20gYSBjbGFzcy4gVGhpcyBsb29rcyB1cCB0aGUgZW50aXJlCisgICAg
ICogcHJvdG90eXBlIGNoYWluIG9mIGEgZ2l2ZW4gb2JqZWN0IGFuZCB0cmllcyB0byBmaW5kIGEg
bWF0Y2guCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKHNvdXJjZU5v
ZGUsICdBIGJ1ZmZlciBzb3VyY2Ugbm9kZScpCisgICAgICogICAgICAgLmluaGVyaXRGcm9tKCdB
dWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUnKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAg
KiAgICJQQVNTICAgQSBidWZmZXIgc291cmNlIG5vZGUgaW5oZXJpdHMgZnJvbSAnQXVkaW9TY2hl
ZHVsZWRTb3VyY2VOb2RlJy4iCisgICAgICovCisgICAgaW5oZXJpdEZyb20oKSB7CisgICAgICB0
aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisKKyAgICAgIGxldCBwcm90b3R5cGVz
ID0gW107CisgICAgICBsZXQgY3VycmVudFByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVP
Zih0aGlzLl9hY3R1YWwpOworICAgICAgd2hpbGUgKGN1cnJlbnRQcm90b3R5cGUpIHsKKyAgICAg
ICAgcHJvdG90eXBlcy5wdXNoKGN1cnJlbnRQcm90b3R5cGUuY29uc3RydWN0b3IubmFtZSk7Cisg
ICAgICAgIGN1cnJlbnRQcm90b3R5cGUgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoY3VycmVudFBy
b3RvdHlwZSk7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAg
ICAgcHJvdG90eXBlcy5pbmNsdWRlcyh0aGlzLl9leHBlY3RlZCksCisgICAgICAgICAgJyR7YWN0
dWFsfSBpbmhlcml0cyBmcm9tICIke2V4cGVjdGVkfSIuJywKKyAgICAgICAgICAnJHthY3R1YWx9
IGRvZXMgbm90IGluaGVyaXQgZnJvbSAiJHtleHBlY3RlZH0iLicpOworICAgIH0KKyAgfQorCisK
KyAgLy8gVGFzayBDbGFzcyBzdGF0ZSBlbnVtLgorICBjb25zdCBUYXNrU3RhdGUgPSB7UEVORElO
RzogMCwgU1RBUlRFRDogMSwgRklOSVNIRUQ6IDJ9OworCisKKyAgLyoqCisgICAqIEBjbGFzcyBU
YXNrCisgICAqIEBkZXNjcmlwdGlvbiBXZWJBdWRpbyB0ZXN0aW5nIHRhc2suIE1hbmFnZWQgYnkg
VGFza1J1bm5lci4KKyAgICovCisgIGNsYXNzIFRhc2sgeworICAgIC8qKgorICAgICAqIFRhc2sg
Y29uc3RydWN0b3IuCisgICAgICogQHBhcmFtICB7T2JqZWN0fSB0YXNrUnVubmVyIFJlZmVyZW5j
ZSBvZiBhc3NvY2lhdGVkIHRhc2sgcnVubmVyLgorICAgICAqIEBwYXJhbSAge1N0cmluZ3x8T2Jq
ZWN0fSB0YXNrTGFiZWwgVGFzayBsYWJlbCBpZiBhIHN0cmluZyBpcyBnaXZlbi4gVGhpcworICAg
ICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyIGNhbiBiZSBh
IGRpY3Rpb25hcnkgd2l0aCB0aGUKKyAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZvbGxvd2luZyBmaWVsZHMuCisgICAgICogQHBhcmFtICB7U3RyaW5nfSB0YXNrTGFi
ZWwubGFiZWwgVGFzayBsYWJlbC4KKyAgICAgKiBAcGFyYW0gIHtTdHJpbmd9IHRhc2tMYWJlbC5k
ZXNjcmlwdGlvbiBEZXNjcmlwdGlvbiBvZiB0YXNrLgorICAgICAqIEBwYXJhbSAge0Z1bmN0aW9u
fSB0YXNrRnVuY3Rpb24gVGFzayBmdW5jdGlvbiB0byBiZSBwZXJmb3JtZWQuCisgICAgICogQHJl
dHVybiB7T2JqZWN0fSBUYXNrIG9iamVjdC4KKyAgICAgKi8KKyAgICBjb25zdHJ1Y3Rvcih0YXNr
UnVubmVyLCB0YXNrTGFiZWwsIHRhc2tGdW5jdGlvbikgeworICAgICAgdGhpcy5fdGFza1J1bm5l
ciA9IHRhc2tSdW5uZXI7CisgICAgICB0aGlzLl90YXNrRnVuY3Rpb24gPSB0YXNrRnVuY3Rpb247
CisKKyAgICAgIGlmICh0eXBlb2YgdGFza0xhYmVsID09PSAnc3RyaW5nJykgeworICAgICAgICB0
aGlzLl9sYWJlbCA9IHRhc2tMYWJlbDsKKyAgICAgICAgdGhpcy5fZGVzY3JpcHRpb24gPSBudWxs
OworICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdGFza0xhYmVsID09PSAnb2JqZWN0JykgeworICAg
ICAgICBpZiAodHlwZW9mIHRhc2tMYWJlbC5sYWJlbCAhPT0gJ3N0cmluZycpIHsKKyAgICAgICAg
ICBfdGhyb3dFeGNlcHRpb24oJ1Rhc2suY29uc3RydWN0b3I6OiB0YXNrIGxhYmVsIG11c3QgYmUg
c3RyaW5nLicpOworICAgICAgICB9CisgICAgICAgIHRoaXMuX2xhYmVsID0gdGFza0xhYmVsLmxh
YmVsOworICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9ICh0eXBlb2YgdGFza0xhYmVsLmRlc2Ny
aXB0aW9uID09PSAnc3RyaW5nJykgPworICAgICAgICAgICAgdGFza0xhYmVsLmRlc2NyaXB0aW9u
IDoKKyAgICAgICAgICAgIG51bGw7CisgICAgICB9IGVsc2UgeworICAgICAgICBfdGhyb3dFeGNl
cHRpb24oCisgICAgICAgICAgICAnVGFzay5jb25zdHJ1Y3Rvcjo6IHRhc2sgbGFiZWwgbXVzdCBi
ZSBhIHN0cmluZyBvciAnICsKKyAgICAgICAgICAgICdhIGRpY3Rpb25hcnkuJyk7CisgICAgICB9
CisKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFza1N0YXRlLlBFTkRJTkc7CisgICAgICB0aGlzLl9y
ZXN1bHQgPSB0cnVlOworCisgICAgICB0aGlzLl90b3RhbEFzc2VydGlvbnMgPSAwOworICAgICAg
dGhpcy5fZmFpbGVkQXNzZXJ0aW9ucyA9IDA7CisgICAgfQorCisgICAgZ2V0IGxhYmVsKCkgewor
ICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsOworICAgIH0KKworICAgIGdldCBzdGF0ZSgpIHsKKyAg
ICAgIHJldHVybiB0aGlzLl9zdGF0ZTsKKyAgICB9CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAg
ICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9CisKKyAgICAvLyBTdGFydCB0aGUgYXNzZXJ0
aW9uIGNoYWluLgorICAgIHNob3VsZChhY3R1YWwsIGFjdHVhbERlc2NyaXB0aW9uKSB7CisgICAg
ICAvLyBJZiBubyBhcmd1bWVudCBpcyBnaXZlbiwgd2UgY2Fubm90IHByb2NlZWQuIEhhbHQuCisg
ICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkKKyAgICAgICAgX3Rocm93RXhjZXB0aW9u
KCdUYXNrLnNob3VsZDo6IHJlcXVpcmVzIGF0IGxlYXN0IDEgYXJndW1lbnQuJyk7CisKKyAgICAg
IHJldHVybiBuZXcgU2hvdWxkKHRoaXMsIGFjdHVhbCwgYWN0dWFsRGVzY3JpcHRpb24pOworICAg
IH0KKworICAgIC8vIFJ1biB0aGlzIHRhc2suIHx0aGlzfCB0YXNrIHdpbGwgYmUgcGFzc2VkIGlu
dG8gdGhlIHVzZXItc3VwcGxpZWQgdGVzdAorICAgIC8vIHRhc2sgZnVuY3Rpb24uCisgICAgcnVu
KGhhcm5lc3NUZXN0KSB7CisgICAgICB0aGlzLl9zdGF0ZSA9IFRhc2tTdGF0ZS5TVEFSVEVEOwor
ICAgICAgdGhpcy5faGFybmVzc1Rlc3QgPSBoYXJuZXNzVGVzdDsKKyAgICAgIC8vIFByaW50IG91
dCB0aGUgdGFzayBlbnRyeSB3aXRoIGxhYmVsIGFuZCBkZXNjcmlwdGlvbi4KKyAgICAgIF9sb2dQ
YXNzZWQoCisgICAgICAgICAgJz4gWycgKyB0aGlzLl9sYWJlbCArICddICcgKworICAgICAgICAg
ICh0aGlzLl9kZXNjcmlwdGlvbiA/IHRoaXMuX2Rlc2NyaXB0aW9uIDogJycpKTsKKworICAgICAg
cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgdGhpcy5f
cmVzb2x2ZSA9IHJlc29sdmU7CisgICAgICAgIHRoaXMuX3JlamVjdCA9IHJlamVjdDsKKyAgICAg
ICAgbGV0IHJlc3VsdCA9IHRoaXMuX3Rhc2tGdW5jdGlvbih0aGlzLCB0aGlzLnNob3VsZC5iaW5k
KHRoaXMpKTsKKyAgICAgICAgaWYgKHJlc3VsdCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJm
dW5jdGlvbiIpIHsKKyAgICAgICAgICByZXN1bHQudGhlbigoKSA9PiB0aGlzLmRvbmUoKSkuY2F0
Y2gocmVqZWN0KTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgfQorCisgICAgLy8gVXBkYXRl
IHRoZSB0YXNrIHN1Y2Nlc3MgYmFzZWQgb24gdGhlIGluZGl2aWR1YWwgYXNzZXJ0aW9uL3Rlc3Qg
aW5zaWRlLgorICAgIHVwZGF0ZShzdWJUYXNrKSB7CisgICAgICAvLyBBZnRlciBvbmUgb2YgdGVz
dHMgZmFpbHMgd2l0aGluIGEgdGFzaywgdGhlIHJlc3VsdCBpcyBpcnJldmVyc2libGUuCisgICAg
ICBpZiAoc3ViVGFzay5yZXN1bHQgPT09IGZhbHNlKSB7CisgICAgICAgIHRoaXMuX3Jlc3VsdCA9
IGZhbHNlOworICAgICAgICB0aGlzLl9mYWlsZWRBc3NlcnRpb25zKys7CisgICAgICB9CisKKyAg
ICAgIHRoaXMuX3RvdGFsQXNzZXJ0aW9ucysrOworICAgIH0KKworICAgIC8vIEZpbmlzaCB0aGUg
Y3VycmVudCB0YXNrIGFuZCBzdGFydCB0aGUgbmV4dCBvbmUgaWYgYXZhaWxhYmxlLgorICAgIGRv
bmUoKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKHRoaXMuX3N0YXRlLCBUYXNrU3RhdGUuU1RBUlRF
RCkKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFza1N0YXRlLkZJTklTSEVEOworCisgICAgICBsZXQg
bWVzc2FnZSA9ICc8IFsnICsgdGhpcy5fbGFiZWwgKyAnXSAnOworCisgICAgICBpZiAodGhpcy5f
cmVzdWx0KSB7CisgICAgICAgIG1lc3NhZ2UgKz0gJ0FsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRv
dGFsICcgKyB0aGlzLl90b3RhbEFzc2VydGlvbnMgKworICAgICAgICAgICAgJyBhc3NlcnRpb25z
KSc7CisgICAgICAgIF9sb2dQYXNzZWQobWVzc2FnZSk7CisgICAgICB9IGVsc2UgeworICAgICAg
ICBtZXNzYWdlICs9IHRoaXMuX2ZhaWxlZEFzc2VydGlvbnMgKyAnIG91dCBvZiAnICsgdGhpcy5f
dG90YWxBc3NlcnRpb25zICsKKyAgICAgICAgICAgICcgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4n
CisgICAgICAgIF9sb2dGYWlsZWQobWVzc2FnZSk7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3Jl
c29sdmUoKTsKKyAgICB9CisKKyAgICAvLyBSdW5zIHxzdWJUYXNrfCB8dGltZXwgbWlsbGlzZWNv
bmRzIGxhdGVyLiB8c2V0VGltZW91dHwgaXMgbm90IGFsbG93ZWQgaW4KKyAgICAvLyBXUFQgbGlu
dGVyLCBzbyBhIHRoaW4gd3JhcHBlciBhcm91bmQgdGhlIGhhcm5lc3MncyB8c3RlcF90aW1lb3V0
fCBpcworICAgIC8vIHVzZWQgaGVyZS4gIFJldHVybnMgYSBQcm9taXNlIHdoaWNoIGlzIHJlc29s
dmVkIGFmdGVyIHxzdWJUYXNrfCBydW5zLgorICAgIHRpbWVvdXQoc3ViVGFzaywgdGltZSkgewor
ICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4geworICAgICAgICB0aGlzLl9oYXJu
ZXNzVGVzdC5zdGVwX3RpbWVvdXQoKCkgPT4geworICAgICAgICAgIGxldCByZXN1bHQgPSBzdWJU
YXNrKCk7CisgICAgICAgICAgaWYgKHJlc3VsdCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJm
dW5jdGlvbiIpIHsKKyAgICAgICAgICAgIC8vIENoYWluIHJlamVjdGlvbiBkaXJlY3RseSB0byB0
aGUgaGFybmVzcyB0ZXN0IFByb21pc2UsIHRvIHJlcG9ydAorICAgICAgICAgICAgLy8gdGhlIHJl
amVjdGlvbiBhZ2FpbnN0IHRoZSBzdWJ0ZXN0IGV2ZW4gd2hlbiB0aGUgY2FsbGVyIG9mCisgICAg
ICAgICAgICAvLyB0aW1lb3V0IGRvZXMgbm90IGhhbmRsZSB0aGUgcmVqZWN0aW9uLgorICAgICAg
ICAgICAgcmVzdWx0LnRoZW4ocmVzb2x2ZSwgdGhpcy5fcmVqZWN0KCkpOworICAgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICByZXNvbHZlKCk7CisgICAgICAgICAgfQorICAgICAgICB9LCB0
aW1lKTsKKyAgICAgIH0pOworICAgIH0KKworICAgIGlzUGFzc2VkKCkgeworICAgICAgcmV0dXJu
IHRoaXMuX3N0YXRlID09PSBUYXNrU3RhdGUuRklOSVNIRUQgJiYgdGhpcy5fcmVzdWx0OworICAg
IH0KKworICAgIHRvU3RyaW5nKCkgeworICAgICAgcmV0dXJuICciJyArIHRoaXMuX2xhYmVsICsg
JyI6ICcgKyB0aGlzLl9kZXNjcmlwdGlvbjsKKyAgICB9CisgIH0KKworCisgIC8qKgorICAgKiBA
Y2xhc3MgVGFza1J1bm5lcgorICAgKiBAZGVzY3JpcHRpb24gV2ViQXVkaW8gdGVzdGluZyB0YXNr
IHJ1bm5lci4gTWFuYWdlcyB0YXNrcy4KKyAgICovCisgIGNsYXNzIFRhc2tSdW5uZXIgeworICAg
IGNvbnN0cnVjdG9yKCkgeworICAgICAgdGhpcy5fdGFza3MgPSB7fTsKKyAgICAgIHRoaXMuX3Rh
c2tTZXF1ZW5jZSA9IFtdOworCisgICAgICAvLyBDb25maWd1cmUgdGVzdGhhcm5lc3MuanMgZm9y
IHRoZSBhc3luYyBvcGVyYXRpb24uCisgICAgICBzZXR1cChuZXcgRnVuY3Rpb24oKSwge2V4cGxp
Y2l0X2RvbmU6IHRydWV9KTsKKyAgICB9CisKKyAgICBfZmluaXNoKCkgeworICAgICAgbGV0IG51
bWJlck9mRmFpbHVyZXMgPSAwOworICAgICAgZm9yIChsZXQgdGFza0luZGV4IGluIHRoaXMuX3Rh
c2tTZXF1ZW5jZSkgeworICAgICAgICBsZXQgdGFzayA9IHRoaXMuX3Rhc2tzW3RoaXMuX3Rhc2tT
ZXF1ZW5jZVt0YXNrSW5kZXhdXTsKKyAgICAgICAgbnVtYmVyT2ZGYWlsdXJlcyArPSB0YXNrLnJl
c3VsdCA/IDAgOiAxOworICAgICAgfQorCisgICAgICBsZXQgcHJlZml4ID0gJyMgQVVESVQgVEFT
SyBSVU5ORVIgRklOSVNIRUQ6ICc7CisgICAgICBpZiAobnVtYmVyT2ZGYWlsdXJlcyA+IDApIHsK
KyAgICAgICAgX2xvZ0ZhaWxlZCgKKyAgICAgICAgICAgIHByZWZpeCArIG51bWJlck9mRmFpbHVy
ZXMgKyAnIG91dCBvZiAnICsgdGhpcy5fdGFza1NlcXVlbmNlLmxlbmd0aCArCisgICAgICAgICAg
ICAnIHRhc2tzIHdlcmUgZmFpbGVkLicpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgX2xvZ1Bh
c3NlZCgKKyAgICAgICAgICAgIHByZWZpeCArIHRoaXMuX3Rhc2tTZXF1ZW5jZS5sZW5ndGggKyAn
IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuJyk7CisgICAgICB9CisKKyAgICAgIHJldHVybiBQcm9t
aXNlLnJlc29sdmUoKTsKKyAgICB9CisKKyAgICAvLyB8dGFza0xhYmVsfCBjYW4gYmUgZWl0aGVy
IGEgc3RyaW5nIG9yIGEgZGljdGlvbmFyeS4gU2VlIFRhc2sgY29uc3RydWN0b3IKKyAgICAvLyBm
b3IgdGhlIGRldGFpbC4gIElmIHx0YXNrRnVuY3Rpb258IHJldHVybnMgYSB0aGVuYWJsZSwgdGhl
biB0aGUgdGFzaworICAgIC8vIGlzIGNvbnNpZGVyZWQgY29tcGxldGUgd2hlbiB0aGUgdGhlbmFi
bGUgaXMgZnVsZmlsbGVkOyBvdGhlcndpc2UgdGhlCisgICAgLy8gdGFzayBtdXN0IGJlIGNvbXBs
ZXRlZCB3aXRoIGFuIGV4cGxpY2l0IGNhbGwgdG8gfHRhc2suZG9uZSgpfC4KKyAgICBkZWZpbmUo
dGFza0xhYmVsLCB0YXNrRnVuY3Rpb24pIHsKKyAgICAgIGxldCB0YXNrID0gbmV3IFRhc2sodGhp
cywgdGFza0xhYmVsLCB0YXNrRnVuY3Rpb24pOworICAgICAgaWYgKHRoaXMuX3Rhc2tzLmhhc093
blByb3BlcnR5KHRhc2subGFiZWwpKSB7CisgICAgICAgIF90aHJvd0V4Y2VwdGlvbignQXVkaXQu
ZGVmaW5lOjogRHVwbGljYXRlIHRhc2sgZGVmaW5pdGlvbi4nKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgICAgfQorICAgICAgdGhpcy5fdGFza3NbdGFzay5sYWJlbF0gPSB0YXNrOworICAgICAgdGhp
cy5fdGFza1NlcXVlbmNlLnB1c2godGFzay5sYWJlbCk7CisgICAgfQorCisgICAgLy8gU3RhcnQg
cnVubmluZyBhbGwgdGhlIHRhc2tzIHNjaGVkdWxlZC4gTXVsdGlwbGUgdGFzayBuYW1lcyBjYW4g
YmUgcGFzc2VkCisgICAgLy8gdG8gZXhlY3V0ZSB0aGVtIHNlcXVlbnRpYWxseS4gWmVybyBhcmd1
bWVudCB3aWxsIHBlcmZvcm0gYWxsIGRlZmluZWQKKyAgICAvLyB0YXNrcyBpbiB0aGUgb3JkZXIg
b2YgZGVmaW5pdGlvbi4KKyAgICBydW4oKSB7CisgICAgICAvLyBEaXNwbGF5IHRoZSBiZWdpbm5p
bmcgb2YgdGhlIHRlc3Qgc3VpdGUuCisgICAgICBfbG9nUGFzc2VkKCcjIEFVRElUIFRBU0sgUlVO
TkVSIFNUQVJURUQuJyk7CisKKyAgICAgIC8vIElmIHRoZSBhcmd1bWVudCBpcyBzcGVjaWZpZWQs
IG92ZXJyaWRlIHRoZSBkZWZhdWx0IHRhc2sgc2VxdWVuY2Ugd2l0aAorICAgICAgLy8gdGhlIHNw
ZWNpZmllZCBvbmUuCisgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA+IDApIHsKKyAgICAgICAg
dGhpcy5fdGFza1NlcXVlbmNlID0gW107CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJn
dW1lbnRzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgbGV0IHRhc2tMYWJlbCA9IGFyZ3VtZW50
c1tpXTsKKyAgICAgICAgICBpZiAoIXRoaXMuX3Rhc2tzLmhhc093blByb3BlcnR5KHRhc2tMYWJl
bCkpIHsKKyAgICAgICAgICAgIF90aHJvd0V4Y2VwdGlvbignQXVkaXQucnVuOjogdW5kZWZpbmVk
IHRhc2suJyk7CisgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl90YXNrU2VxdWVuY2UuaW5jbHVk
ZXModGFza0xhYmVsKSkgeworICAgICAgICAgICAgX3Rocm93RXhjZXB0aW9uKCdBdWRpdC5ydW46
OiBkdXBsaWNhdGUgdGFzayByZXF1ZXN0LicpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICB0aGlzLl90YXNrU2VxdWVuY2UucHVzaCh0YXNrTGFiZWwpOworICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgICAgfQorCisgICAgICBpZiAodGhpcy5fdGFza1NlcXVlbmNlLmxlbmd0aCA9
PT0gMCkgeworICAgICAgICBfdGhyb3dFeGNlcHRpb24oJ0F1ZGl0LnJ1bjo6IG5vIHRhc2sgdG8g
cnVuLicpOworICAgICAgICByZXR1cm47CisgICAgICB9CisKKyAgICAgIGZvciAobGV0IHRhc2tJ
bmRleCBpbiB0aGlzLl90YXNrU2VxdWVuY2UpIHsKKyAgICAgICAgbGV0IHRhc2sgPSB0aGlzLl90
YXNrc1t0aGlzLl90YXNrU2VxdWVuY2VbdGFza0luZGV4XV07CisgICAgICAgIC8vIFNvbWUgdGVz
dHMgYXNzdW1lIHRoYXQgdGFza3MgcnVuIGluIHNlcXVlbmNlLCB3aGljaCBpcyBwcm92aWRlZCBi
eQorICAgICAgICAvLyBwcm9taXNlX3Rlc3QoKS4KKyAgICAgICAgcHJvbWlzZV90ZXN0KCh0KSA9
PiB0YXNrLnJ1bih0KSwgYEV4ZWN1dGluZyAiJHt0YXNrLmxhYmVsfSJgKTsKKyAgICAgIH0KKwor
ICAgICAgLy8gU2NoZWR1bGUgYSBzdW1tYXJ5IHJlcG9ydCBvbiBjb21wbGV0aW9uLgorICAgICAg
cHJvbWlzZV90ZXN0KCgpID0+IHRoaXMuX2ZpbmlzaCgpLCAiQXVkaXQgcmVwb3J0Iik7CisKKyAg
ICAgIC8vIEZyb20gdGVzdGhhcm5lc3MuanMuIFRoZSBoYXJuZXNzIG5vdyBuZWVkIG5vdCB3YWl0
IGZvciBtb3JlIHN1YnRlc3RzCisgICAgICAvLyB0byBiZSBhZGRlZC4KKyAgICAgIF90ZXN0aGFy
bmVzc0RvbmUoKTsKKyAgICB9CisgIH0KKworICAvKioKKyAgICogTG9hZCBmaWxlIGZyb20gYSBn
aXZlbiBVUkwgYW5kIHBhc3MgQXJyYXlCdWZmZXIgdG8gdGhlIGZvbGxvd2luZyBwcm9taXNlLgor
ICAgKiBAcGFyYW0gIHtTdHJpbmd9IGZpbGVVcmwgZmlsZSBVUkwuCisgICAqIEByZXR1cm4ge1By
b21pc2V9CisgICAqCisgICAqIEBleGFtcGxlCisgICAqICAgQXVkaXQubG9hZEZpbGVGcm9tVXJs
KCdyZXNvdXJjZXMvbXktc291bmQub2dnJykudGhlbigocmVzcG9uc2UpID0+IHsKKyAgICogICAg
ICAgYXVkaW9Db250ZXh0LmRlY29kZUF1ZGlvRGF0YShyZXNwb25zZSkudGhlbigoYXVkaW9CdWZm
ZXIpID0+IHsKKyAgICogICAgICAgICAgIC8vIERvIHNvbWV0aGluZyB3aXRoIEF1ZGlvQnVmZmVy
LgorICAgKiAgICAgICB9KTsKKyAgICogICB9KTsKKyAgICovCisgIGZ1bmN0aW9uIGxvYWRGaWxl
RnJvbVVybChmaWxlVXJsKSB7CisgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWpl
Y3QpID0+IHsKKyAgICAgIGxldCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgICAgIHho
ci5vcGVuKCdHRVQnLCBmaWxlVXJsLCB0cnVlKTsKKyAgICAgIHhoci5yZXNwb25zZVR5cGUgPSAn
YXJyYXlidWZmZXInOworCisgICAgICB4aHIub25sb2FkID0gKCkgPT4geworICAgICAgICAvLyB8
c3RhdHVzID0gMHwgaXMgYSB3b3JrYXJvdW5kIGZvciB0aGUgcnVuX3dlYl90ZXN0LnB5IHNlcnZl
ci4gV2UgYXJlCisgICAgICAgIC8vIHNwZWN1bGF0aW5nIHRoZSBzZXJ2ZXIgcXVpdHMgdGhlIHRy
YW5zYWN0aW9uIHByZW1hdHVyZWx5IHdpdGhvdXQKKyAgICAgICAgLy8gY29tcGxldGluZyB0aGUg
cmVxdWVzdC4KKyAgICAgICAgaWYgKHhoci5zdGF0dXMgPT09IDIwMCB8fCB4aHIuc3RhdHVzID09
PSAwKSB7CisgICAgICAgICAgcmVzb2x2ZSh4aHIucmVzcG9uc2UpOworICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgIGxldCBlcnJvck1lc3NhZ2UgPSAnbG9hZEZpbGU6IFJlcXVlc3QgZmFpbGVk
IHdoZW4gbG9hZGluZyAnICsKKyAgICAgICAgICAgICAgZmlsZVVybCArICcuICcgKyB4aHIuc3Rh
dHVzVGV4dCArICcuIChzdGF0dXMgPSAnICsgeGhyLnN0YXR1cyArCisgICAgICAgICAgICAgICcp
JzsKKyAgICAgICAgICBpZiAocmVqZWN0KSB7CisgICAgICAgICAgICByZWplY3QoZXJyb3JNZXNz
YWdlKTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgbmV3IEVycm9yKGVycm9yTWVz
c2FnZSk7CisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICB9OworCisgICAgICB4aHIub25l
cnJvciA9IChldmVudCkgPT4geworICAgICAgICBsZXQgZXJyb3JNZXNzYWdlID0KKyAgICAgICAg
ICAgICdsb2FkRmlsZTogTmV0d29yayBmYWlsdXJlIHdoZW4gbG9hZGluZyAnICsgZmlsZVVybCAr
ICcuJzsKKyAgICAgICAgaWYgKHJlamVjdCkgeworICAgICAgICAgIHJlamVjdChlcnJvck1lc3Nh
Z2UpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIG5ldyBFcnJvcihlcnJvck1lc3NhZ2Up
OworICAgICAgICB9CisgICAgICB9OworCisgICAgICB4aHIuc2VuZCgpOworICAgIH0pOworICB9
CisKKyAgLyoqCisgICAqIEBjbGFzcyBBdWRpdAorICAgKiBAZGVzY3JpcHRpb24gQSBXZWJBdWRp
byBsYXlvdXQgdGVzdCB0YXNrIG1hbmFnZXIuCisgICAqIEBleGFtcGxlCisgICAqICAgbGV0IGF1
ZGl0ID0gQXVkaXQuY3JlYXRlVGFza1J1bm5lcigpOworICAgKiAgIGF1ZGl0LmRlZmluZSgnZmly
c3QtdGFzaycsIGZ1bmN0aW9uICh0YXNrLCBzaG91bGQpIHsKKyAgICogICAgIHNob3VsZChzb21l
VmFsdWUpLmJlRXF1YWxUbyhzb21lVmFsdWUpOworICAgKiAgICAgdGFzay5kb25lKCk7CisgICAq
ICAgfSk7CisgICAqICAgYXVkaXQucnVuKCk7CisgICAqLworICByZXR1cm4geworCisgICAgLyoq
CisgICAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBBdWRpdCB0YXNrIHJ1bm5lci4KKyAgICAg
KiBAcGFyYW0ge09iamVjdH0gIG9wdGlvbnMgICAgICAgICAgICAgICAgICAgICBPcHRpb25zIGZv
ciB0YXNrIHJ1bm5lci4KKyAgICAgKiBAcGFyYW0ge0Jvb2xlYW59IG9wdGlvbnMucmVxdWlyZVJl
c3VsdEZpbGUgICBUcnVlIGlmIHRoZSB0ZXN0IHN1aXRlCisgICAgICogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZXMgZXhwbGljaXQgdGV4dAorICAg
ICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhcmlz
b24gd2l0aCB0aGUgZXhwZWN0ZWQKKyAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXN1bHQgZmlsZS4KKyAgICAgKi8KKyAgICBjcmVhdGVUYXNrUnVu
bmVyOiBmdW5jdGlvbihvcHRpb25zKSB7CisgICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnJl
cXVpcmVSZXN1bHRGaWxlID09IHRydWUpIHsKKyAgICAgICAgX2xvZ0Vycm9yKAorICAgICAgICAg
ICAgJ3RoaXMgdGVzdCByZXF1aXJlcyB0aGUgZXhwbGljaXQgY29tcGFyaXNvbiB3aXRoIHRoZSAn
ICsKKyAgICAgICAgICAgICdleHBlY3RlZCByZXN1bHQgd2hlbiBpdCBydW5zIHdpdGggcnVuX3dl
Yl90ZXN0cy5weS4nKTsKKyAgICAgIH0KKworICAgICAgcmV0dXJuIG5ldyBUYXNrUnVubmVyKCk7
CisgICAgfSwKKworICAgIC8qKgorICAgICAqIExvYWQgZmlsZSBmcm9tIGEgZ2l2ZW4gVVJMIGFu
ZCBwYXNzIEFycmF5QnVmZmVyIHRvIHRoZSBmb2xsb3dpbmcgcHJvbWlzZS4KKyAgICAgKiBTZWUg
fGxvYWRGaWxlRnJvbVVybHwgbWV0aG9kIGZvciB0aGUgZGV0YWlsLgorICAgICAqLworICAgIGxv
YWRGaWxlRnJvbVVybDogbG9hZEZpbGVGcm9tVXJsCisKKyAgfTsKKworfSkoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406615</attachid>
            <date>2020-08-14 12:41:10 -0700</date>
            <delta_ts>2020-08-14 13:27:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215417-20200814124109.patch</filename>
            <type>text/plain</type>
            <size>259314</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NjkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE3NjdmY2JlOWZkYjI4
NDA0ODE2ZGJjMDhmOTFmNzg5ZGNlMWFlZC4uZWU3NmRjNDRlNzUwODZiYjYzZjA4MmY2YmRlYjU4
Nzc4YjkzZDJjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA4LTEzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1
c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1c3BlbmRp
bmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0LCBhcyBwZXI6CisgICAgICAgIC0g
aHR0cHM6Ly93d3cudzMub3JnL1RSL3dlYmF1ZGlvLyNkb20tb2ZmbGluZWF1ZGlvY29udGV4dC1z
dXNwZW5kCisgICAgICAgIC0gaHR0cHM6Ly93d3cudzMub3JnL1RSL3dlYmF1ZGlvLyNkb20tb2Zm
bGluZWF1ZGlvY29udGV4dC1yZXN1bWUKKworICAgICAgICBUZXN0czogd2ViYXVkaW8vb2ZmbGlu
ZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy5odG1sCisgICAgICAgICAgICAgICB3
ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci5o
dG1sCisgICAgICAgICAgICAgICB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQt
cmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sCisgICAgICAgICAgICAgICB3ZWJhdWRpby9v
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbAorICAgICAgICAg
ICAgICAgd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5j
ZS5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QmFzZUF1ZGlvQ29udGV4dDo6ZGlkU3VzcGVuZFJlbmRlcmlu
Zyk6CisgICAgICAgICogTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpCYXNlQXVkaW9Db250ZXh0OjpzaG91bGRTdXNwZW5kKToKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6dW5pbml0aWFsaXplKToKKyAgICAgICAgKFdlYkNv
cmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnN0YXJ0T2ZmbGluZVJlbmRlcmluZyk6CisgICAgICAg
IChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpzdXNwZW5kT2ZmbGluZVJlbmRlcmluZyk6
CisgICAgICAgIChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpyZXN1bWVPZmZsaW5lUmVu
ZGVyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0NvbnRleHQ6OnNob3VsZFN1
c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6T2ZmbGluZUF1ZGlvQ29udGV4dDo6ZGlkU3VzcGVu
ZFJlbmRlcmluZyk6CisgICAgICAgIChXZWJDb3JlOjpPZmZsaW5lQXVkaW9Db250ZXh0OjpkaWRG
aW5pc2hPZmZsaW5lUmVuZGVyaW5nKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL09mZmxp
bmVBdWRpb0NvbnRleHQuaDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRp
b0NvbnRleHQuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVz
dGluYXRpb25Ob2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok9mZmxpbmVBdWRpb0Rlc3RpbmF0
aW9uTm9kZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlKToKKyAgICAgICAgKFdlYkNvcmU6
Ok9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6c3RhcnRSZW5kZXJpbmcpOgorICAgICAgICAo
V2ViQ29yZTo6T2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpvZmZsaW5lUmVuZGVyKToKKyAg
ICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oOgor
CiAyMDIwLTA4LTE0ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAg
VGhlIFBpUCBidXR0b24gb24gdGhlIGZ1bGxzY3JlZW4geW91dHViZSBwbGF5ZXIgZGlzYXBwZWFy
cyBhZnRlciBzdGFydGluZyBhIG5ldyB2aWRlbyBpbiBhIHBsYXlsaXN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9CYXNlQXVkaW9Db250ZXh0LmNwcAppbmRleCA0
OWJhZjNiOTAyNGEyY2MwZjU4OGYxYjcxODQ0OTI0NzM3MDQ2MzZjLi45M2QyODBiYzE2ZWY4ODdj
M2Y2N2JjYTk2NmZmZDk5OTgxZTkwMTNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5jcHAKQEAgLTY2OSw2ICs2NjksMTEgQEAg
dm9pZCBCYXNlQXVkaW9Db250ZXh0Ojpsb2NrKGJvb2wmIG11c3RSZWxlYXNlTG9jaykKICAgICAv
LyBEb24ndCBhbGxvdyByZWd1bGFyIGxvY2sgaW4gcmVhbC10aW1lIGF1ZGlvIHRocmVhZC4KICAg
ICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwogCisgICAgbG9ja0ludGVybmFsKG11c3RSZWxlYXNl
TG9jayk7Cit9CisKK3ZvaWQgQmFzZUF1ZGlvQ29udGV4dDo6bG9ja0ludGVybmFsKGJvb2wmIG11
c3RSZWxlYXNlTG9jaykKK3sKICAgICBUaHJlYWQmIHRoaXNUaHJlYWQgPSBUaHJlYWQ6OmN1cnJl
bnQoKTsKIAogICAgIGlmICgmdGhpc1RocmVhZCA9PSBtX2dyYXBoT3duZXJUaHJlYWQpIHsKQEAg
LTExNTMsNiArMTE1OCwxMSBAQCB2b2lkIEJhc2VBdWRpb0NvbnRleHQ6OnN1c3BlbmRSZW5kZXJp
bmcoRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlzZSkKICAgICB9KTsKIH0KIAordm9p
ZCBCYXNlQXVkaW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCkKK3sKKyAgICBz
ZXRTdGF0ZShTdGF0ZTo6U3VzcGVuZGVkKTsKK30KKwogdm9pZCBCYXNlQXVkaW9Db250ZXh0Ojpy
ZXN1bWVSZW5kZXJpbmcoRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYgcHJvbWlzZSkKIHsKICAg
ICBpZiAoaXNPZmZsaW5lQ29udGV4dCgpIHx8IG1faXNTdG9wU2NoZWR1bGVkKSB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0Jhc2VBdWRpb0NvbnRleHQuaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCmluZGV4
IDZjMWQ0ZjdiZjlhYjk0Njg3ZjI1MjE1YjY1ZDVhMTg4MjM3MzlhNGQuLjMzMTE0NmFlZWQzMjU1
OTA3ZTcwMDA1Mjc4NWNiYWQ4NDRmZjM3ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQmFzZUF1ZGlvQ29udGV4dC5oCkBAIC0xMjMsNiArMTIzLDggQEAgcHVi
bGljOgogCiAgICAgdm9pZCBpbmNyZW1lbnRBY3RpdmVTb3VyY2VDb3VudCgpOwogICAgIHZvaWQg
ZGVjcmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsKKworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRT
dXNwZW5kKCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICAKICAgICBFeGNlcHRpb25PcjxSZWY8QXVk
aW9CdWZmZXI+PiBjcmVhdGVCdWZmZXIodW5zaWduZWQgbnVtYmVyT2ZDaGFubmVscywgdW5zaWdu
ZWQgbGVuZ3RoLCBmbG9hdCBzYW1wbGVSYXRlKTsKIApAQCAtMTM0LDYgKzEzNiw4IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHN1c3BlbmRSZW5kZXJpbmcoRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYp
OwogICAgIHZvaWQgcmVzdW1lUmVuZGVyaW5nKERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmKTsK
IAorICAgIHZpcnR1YWwgdm9pZCBkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSk7CisK
ICAgICBBdWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJU
YXJnZXQuZ2V0KCk7IH0KIAogICAgIHVzaW5nIFN0YXRlID0gQXVkaW9Db250ZXh0U3RhdGU7CkBA
IC0yMDIsNyArMjA2LDcgQEAgcHVibGljOgogCiAgICAgLy8gUmV0dXJucyB0cnVlIG9ubHkgYWZ0
ZXIgdGhlIGF1ZGlvIHRocmVhZCBoYXMgYmVlbiBzdGFydGVkIGFuZCB0aGVuIHNodXRkb3duLgog
ICAgIGJvb2wgaXNBdWRpb1RocmVhZEZpbmlzaGVkKCkgeyByZXR1cm4gbV9pc0F1ZGlvVGhyZWFk
RmluaXNoZWQ7IH0KLSAgICAKKwogICAgIC8vIG11c3RSZWxlYXNlTG9jayBpcyBzZXQgdG8gdHJ1
ZSBpZiB3ZSBhY3F1aXJlZCB0aGUgbG9jayBpbiB0aGlzIG1ldGhvZCBjYWxsIGFuZCBjYWxsZXIg
bXVzdCB1bmxvY2soKSwgZmFsc2UgaWYgaXQgd2FzIHByZXZpb3VzbHkgYWNxdWlyZWQuCiAgICAg
dm9pZCBsb2NrKGJvb2wmIG11c3RSZWxlYXNlTG9jayk7CiAKQEAgLTMwNywxMSArMzExLDEzIEBA
IHByb3RlY3RlZDoKICAgICB2b2lkIGNsZWFyUGVuZGluZ0FjdGl2aXR5KCk7CiAgICAgdm9pZCBt
YWtlUGVuZGluZ0FjdGl2aXR5KCk7CiAKKyAgICB2b2lkIGxvY2tJbnRlcm5hbChib29sJiBtdXN0
UmVsZWFzZUxvY2spOworCiAgICAgQXVkaW9EZXN0aW5hdGlvbk5vZGUqIGRlc3RpbmF0aW9uTm9k
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGVzdGluYXRpb25Ob2RlLmdldCgpOyB9CiAKICAgICBib29s
IHdpbGxCZWdpblBsYXliYWNrKCk7CiAKLSAgICB2b2lkIHVuaW5pdGlhbGl6ZSgpOworICAgIHZp
cnR1YWwgdm9pZCB1bmluaXRpYWxpemUoKTsKIAogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAog
ICAgIGNvbnN0IGNoYXIqIGxvZ0NsYXNzTmFtZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICJCYXNl
QXVkaW9Db250ZXh0IjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHAKaW5kZXggZGU4NjRiZjBjMWIyMGZmMDNlYTll
OWYzZTkwMWM2NzE5ZTFkMTcwZC4uN2M3NTQxYWY4MDlkMzBkMzJmOGE4YjlhMTg3YzdlYjlhZmFj
MzZjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5l
QXVkaW9Db250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09m
ZmxpbmVBdWRpb0NvbnRleHQuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiT2ZmbGlu
ZUF1ZGlvQ29udGV4dC5oIgogCiAjaW5jbHVkZSAiQXVkaW9CdWZmZXIuaCIKKyNpbmNsdWRlICJB
dWRpb1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSlNBdWRp
b0J1ZmZlci5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC02NywxMCAr
NjgsNDEgQEAgRXhjZXB0aW9uT3I8UmVmPE9mZmxpbmVBdWRpb0NvbnRleHQ+PiBPZmZsaW5lQXVk
aW9Db250ZXh0OjpjcmVhdGUoU2NyaXB0RXhlY3V0aW8KICAgICByZXR1cm4gY3JlYXRlKGNvbnRl
eHQsIGNvbnRleHRPcHRpb25zLm51bWJlck9mQ2hhbm5lbHMsIGNvbnRleHRPcHRpb25zLmxlbmd0
aCwgY29udGV4dE9wdGlvbnMuc2FtcGxlUmF0ZSk7CiB9CiAKK3ZvaWQgT2ZmbGluZUF1ZGlvQ29u
dGV4dDo6dW5pbml0aWFsaXplKCkKK3sKKyAgICBCYXNlQXVkaW9Db250ZXh0Ojp1bmluaXRpYWxp
emUoKTsKKworICAgIFZlY3RvcjxSZWZQdHI8RGVmZXJyZWRQcm9taXNlPj4gcHJvbWlzZXNUb1Jl
amVjdDsKKworICAgIHsKKyAgICAgICAgQXV0b0xvY2tlciBsb2NrZXIoKnRoaXMpOworICAgICAg
ICBwcm9taXNlc1RvUmVqZWN0LnJlc2VydmVJbml0aWFsQ2FwYWNpdHkobV9zdXNwZW5kUmVxdWVz
dHMuc2l6ZSgpKTsKKyAgICAgICAgZm9yIChhdXRvJiBwcm9taXNlIDogbV9zdXNwZW5kUmVxdWVz
dHMudmFsdWVzKCkpCisgICAgICAgICAgICBwcm9taXNlc1RvUmVqZWN0LnVuY2hlY2tlZEFwcGVu
ZChwcm9taXNlKTsKKyAgICAgICAgbV9zdXNwZW5kUmVxdWVzdHMuY2xlYXIoKTsKKyAgICB9CisK
KyAgICBpZiAobV9wZW5kaW5nT2ZmbGluZVJlbmRlcmluZ1Byb21pc2UpCisgICAgICAgIHByb21p
c2VzVG9SZWplY3QuYXBwZW5kKHN0ZDo6ZXhjaGFuZ2UobV9wZW5kaW5nT2ZmbGluZVJlbmRlcmlu
Z1Byb21pc2UsIG51bGxwdHIpKTsKKworICAgIGZvciAoYXV0byYgcHJvbWlzZSA6IHByb21pc2Vz
VG9SZWplY3QpCisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgIkNvbnRleHQgaXMgZ29pbmcgYXdheSJfcyB9KTsKK30KKwogdm9pZCBPZmZsaW5l
QXVkaW9Db250ZXh0OjpzdGFydE9mZmxpbmVSZW5kZXJpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4m
JiBwcm9taXNlKQogewotICAgIGlmIChpc1N0b3BwZWQoKSB8fCAhd2lsbEJlZ2luUGxheWJhY2so
KSkgewotICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJy
b3IgfSk7CisgICAgaWYgKGlzU3RvcHBlZCgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChF
eGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgIkNvbnRleHQgaXMgc3RvcHBlZCJfcyB9KTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX2RpZFN0YXJ0T2ZmbGluZVJlbmRl
cmluZykgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRl
RXJyb3IsICJSZW5kZXJpbmcgd2FzIGFscmVhZHkgc3RhcnRlZCJfcyB9KTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIGlmICghd2lsbEJlZ2luUGxheWJhY2soKSkgeworICAgICAgICBw
cm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJSZWZ1c2luZyB0
byBzdGFydCByZW5kZXJpbmcgZm9yIHNlY3VyaXR5IHJlYXNvbnMiIH0pOwogICAgICAgICByZXR1
cm47CiAgICAgfQogCkBAIC04NCwxMSArMTE2LDk3IEBAIHZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4
dDo6c3RhcnRPZmZsaW5lUmVuZGVyaW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkK
IAogICAgIG1ha2VQZW5kaW5nQWN0aXZpdHkoKTsKICAgICBtX3BlbmRpbmdPZmZsaW5lUmVuZGVy
aW5nUHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSk7CisgICAgbV9kaWRTdGFydE9mZmxpbmVSZW5k
ZXJpbmcgPSB0cnVlOwogICAgIHNldFN0YXRlKFN0YXRlOjpSdW5uaW5nKTsKIH0KIAordm9pZCBP
ZmZsaW5lQXVkaW9Db250ZXh0OjpzdXNwZW5kT2ZmbGluZVJlbmRlcmluZyhkb3VibGUgc3VzcGVu
ZFRpbWUsIFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKK3sKKyAgICBpZiAoaXNTdG9w
cGVkKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0
ZUVycm9yLCAiQ29udGV4dCBpcyBzdG9wcGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAg
fQorCisgICAgaWYgKHN1c3BlbmRUaW1lIDwgMCkgeworICAgICAgICBwcm9taXNlLT5yZWplY3Qo
RXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJzdXNwZW5kVGltZSBjYW5ub3QgYmUgbmVn
YXRpdmUiX3MgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBkb3VibGUgdG90YWxS
ZW5kZXJEdXJhdGlvbiA9IHJlbmRlclRhcmdldCgpLT5sZW5ndGgoKSAvIHNhbXBsZVJhdGUoKTsK
KyAgICBpZiAodG90YWxSZW5kZXJEdXJhdGlvbiA8PSBzdXNwZW5kVGltZSkgeworICAgICAgICBw
cm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJzdXNwZW5kVGlt
ZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbiJfcyB9KTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNpemVfdCBmcmFtZSA9IEF1ZGlvVXRpbGl0
aWVzOjp0aW1lVG9TYW1wbGVGcmFtZShzdXNwZW5kVGltZSwgc2FtcGxlUmF0ZSgpKTsKKyAgICBm
cmFtZSA9IE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZTo6cmVuZGVyUXVhbnR1bVNpemUgKiAo
KGZyYW1lICsgT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpyZW5kZXJRdWFudHVtU2l6ZSAt
IDEpIC8gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpyZW5kZXJRdWFudHVtU2l6ZSk7Cisg
ICAgaWYgKGZyYW1lIDwgY3VycmVudFNhbXBsZUZyYW1lKCkpIHsKKyAgICAgICAgcHJvbWlzZS0+
cmVqZWN0KEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiU3VzcGVuc2lvbiBmcmFtZSBp
cyBlYXJsaWVyIHRoYW4gY3VycmVudCBmcmFtZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIEF1dG9Mb2NrZXIgbG9ja2VyKCp0aGlzKTsKKyAgICBhdXRvIGFkZFJlc3VsdCA9
IG1fc3VzcGVuZFJlcXVlc3RzLmFkZChmcmFtZSwgcHJvbWlzZS5wdHIoKSk7CisgICAgaWYgKCFh
ZGRSZXN1bHQuaXNOZXdFbnRyeSkgeworICAgICAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9u
IHsgSW52YWxpZFN0YXRlRXJyb3IsICJUaGVyZSBpcyBhbHJlYWR5IGEgcGVuZGluZyBzdXNwZW5k
IHJlcXVlc3QgYXQgdGhpcyBmcmFtZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KK30K
Kwordm9pZCBPZmZsaW5lQXVkaW9Db250ZXh0OjpyZXN1bWVPZmZsaW5lUmVuZGVyaW5nKFJlZjxE
ZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKK3sKKyAgICBpZiAoIW1fZGlkU3RhcnRPZmZsaW5l
UmVuZGVyaW5nKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIkNhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQg
aGFzIG5vdCBzdGFydGVkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChp
c0Nsb3NlZCgpKSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlk
U3RhdGVFcnJvciwgIkNhbm5vdCByZXN1bWUgYW4gb2ZmbGluZSBhdWRpbyBjb250ZXh0IHRoYXQg
aXMgY2xvc2VkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChzdGF0ZSgp
ID09IEF1ZGlvQ29udGV4dFN0YXRlOjpSdW5uaW5nKSB7CisgICAgICAgIHByb21pc2UtPnJlc29s
dmUoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBBU1NFUlQoc3RhdGUoKSA9PSBBdWRp
b0NvbnRleHRTdGF0ZTo6U3VzcGVuZGVkKTsKKworICAgIGF1dG8gcmVzdWx0ID0gZGVzdGluYXRp
b24oKS0+c3RhcnRSZW5kZXJpbmcoKTsKKyAgICBpZiAocmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7
CisgICAgICAgIHByb21pc2UtPnJlamVjdChyZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpKTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1ha2VQZW5kaW5nQWN0aXZpdHkoKTsKKyAgICBz
ZXRTdGF0ZShTdGF0ZTo6UnVubmluZyk7CisgICAgcHJvbWlzZS0+cmVzb2x2ZSgpOworfQorCiti
b29sIE9mZmxpbmVBdWRpb0NvbnRleHQ6OnNob3VsZFN1c3BlbmQoKQoreworICAgIEFTU0VSVCgh
aXNNYWluVGhyZWFkKCkpOworICAgIC8vIE5vdGUgdGhhdCBPZmZsaW5lQXV0b0xvY2tlciB1c2Vz
IGxvY2soKSBpbnN0ZWFkIG9mIHRyeUxvY2soKS4gV2UgdXN1YWxseSBhdm9pZCBibG9ja2luZyB0
aGUgQXVkaW9UaHJlYWQKKyAgICAvLyBvbiBsb2NrKCkgYnV0IHdlIGRvbid0IGhhdmUgYSBjaG9p
Y2UgaGVyZSBzaW5jZSB0aGUgc3VzcGVuc2lvbiBuZWVkIHRvIGJlIGV4YWN0LgorICAgIE9mZmxp
bmVBdXRvTG9ja2VyIGxvY2tlcigqdGhpcyk7CisgICAgcmV0dXJuIG1fc3VzcGVuZFJlcXVlc3Rz
LmNvbnRhaW5zKGN1cnJlbnRTYW1wbGVGcmFtZSgpKTsKK30KKwordm9pZCBPZmZsaW5lQXVkaW9D
b250ZXh0OjpkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSkKK3sKKyAgICBCYXNlQXVk
aW9Db250ZXh0OjpkaWRTdXNwZW5kUmVuZGVyaW5nKGZyYW1lKTsKKworICAgIFJlZlB0cjxEZWZl
cnJlZFByb21pc2U+IHByb21pc2U7CisgICAgeworICAgICAgICBBdXRvTG9ja2VyIGxvY2tlcigq
dGhpcyk7CisgICAgICAgIHByb21pc2UgPSBtX3N1c3BlbmRSZXF1ZXN0cy50YWtlKGZyYW1lKTsK
KyAgICB9CisgICAgQVNTRVJUKHByb21pc2UpOworICAgIGlmIChwcm9taXNlKQorICAgICAgICBw
cm9taXNlLT5yZXNvbHZlKCk7Cit9CisKIHZvaWQgT2ZmbGluZUF1ZGlvQ29udGV4dDo6ZGlkRmlu
aXNoT2ZmbGluZVJlbmRlcmluZyhFeGNlcHRpb25PcjxSZWY8QXVkaW9CdWZmZXI+PiYmIHJlc3Vs
dCkKIHsKKyAgICBtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZyA9IGZhbHNlOworCiAgICAgaWYg
KCFtX3BlbmRpbmdPZmZsaW5lUmVuZGVyaW5nUHJvbWlzZSkKICAgICAgICAgcmV0dXJuOwogCkBA
IC0xMDUsNiArMjIzLDEyIEBAIHVuc2lnbmVkIE9mZmxpbmVBdWRpb0NvbnRleHQ6Omxlbmd0aCgp
IGNvbnN0CiAgICAgcmV0dXJuIHJlbmRlclRhcmdldCgpLT5sZW5ndGgoKTsKIH0KIAordm9pZCBP
ZmZsaW5lQXVkaW9Db250ZXh0OjpvZmZsaW5lTG9jayhib29sJiBtdXN0UmVsZWFzZUxvY2spCit7
CisgICAgQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgbG9ja0ludGVybmFsKG11c3RSZWxl
YXNlTG9jayk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJM
RShXRUJfQVVESU8pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L09mZmxpbmVBdWRpb0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
T2ZmbGluZUF1ZGlvQ29udGV4dC5oCmluZGV4IDhiZjBhM2QwMmE4MzAyMmM2M2QxMTZlMTJlMjhh
MjgwZGYzYWU1Y2YuLjM4N2RhNGU4N2Y4MjU0NjczNDQzN2UzMDY5NjBhYjkzNTZhMTg1ZTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29u
dGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlv
Q29udGV4dC5oCkBAIC0yNyw2ICsyNyw5IEBACiAjaW5jbHVkZSAiQmFzZUF1ZGlvQ29udGV4dC5o
IgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVkZSAiT2ZmbGluZUF1
ZGlvQ29udGV4dE9wdGlvbnMuaCIKKyNpbmNsdWRlICJPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5v
ZGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMzgsMTUgKzQxLDQ2IEBAIHB1YmxpYzoKICAgICBz
dGF0aWMgRXhjZXB0aW9uT3I8UmVmPE9mZmxpbmVBdWRpb0NvbnRleHQ+PiBjcmVhdGUoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCYsIGNvbnN0IE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zJik7CiAK
ICAgICB2b2lkIHN0YXJ0T2ZmbGluZVJlbmRlcmluZyhSZWY8RGVmZXJyZWRQcm9taXNlPiYmKTsK
KyAgICB2b2lkIHN1c3BlbmRPZmZsaW5lUmVuZGVyaW5nKGRvdWJsZSBzdXNwZW5kVGltZSwgUmVm
PERlZmVycmVkUHJvbWlzZT4mJik7CisgICAgdm9pZCByZXN1bWVPZmZsaW5lUmVuZGVyaW5nKFJl
ZjxEZWZlcnJlZFByb21pc2U+JiYpOwogCiAgICAgdW5zaWduZWQgbGVuZ3RoKCkgY29uc3Q7Cisg
ICAgYm9vbCBzaG91bGRTdXNwZW5kKCkgZmluYWw7CisKKyAgICBPZmZsaW5lQXVkaW9EZXN0aW5h
dGlvbk5vZGUqIGRlc3RpbmF0aW9uKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8T2ZmbGluZUF1ZGlv
RGVzdGluYXRpb25Ob2RlKj4oQmFzZUF1ZGlvQ29udGV4dDo6ZGVzdGluYXRpb24oKSk7IH0KKwor
ICAgIC8vIG11c3RSZWxlYXNlTG9jayBpcyBzZXQgdG8gdHJ1ZSBpZiB3ZSBhY3F1aXJlZCB0aGUg
bG9jayBpbiB0aGlzIG1ldGhvZCBjYWxsIGFuZCBjYWxsZXIgbXVzdCB1bmxvY2soKSwgZmFsc2Ug
aWYgaXQgd2FzIHByZXZpb3VzbHkgYWNxdWlyZWQuCisgICAgdm9pZCBvZmZsaW5lTG9jayhib29s
JiBtdXN0UmVsZWFzZUxvY2spOworCisgICAgY2xhc3MgT2ZmbGluZUF1dG9Mb2NrZXIgeworICAg
IHB1YmxpYzoKKyAgICAgICAgZXhwbGljaXQgT2ZmbGluZUF1dG9Mb2NrZXIoT2ZmbGluZUF1ZGlv
Q29udGV4dCYgY29udGV4dCkKKyAgICAgICAgICAgIDogbV9jb250ZXh0KGNvbnRleHQpCisgICAg
ICAgIHsKKyAgICAgICAgICAgIG1fY29udGV4dC5vZmZsaW5lTG9jayhtX211c3RSZWxlYXNlTG9j
ayk7CisgICAgICAgIH0KKworICAgICAgICB+T2ZmbGluZUF1dG9Mb2NrZXIoKQorICAgICAgICB7
CisgICAgICAgICAgICBpZiAobV9tdXN0UmVsZWFzZUxvY2spCisgICAgICAgICAgICAgICAgbV9j
b250ZXh0LnVubG9jaygpOworICAgICAgICB9CisKKyAgICBwcml2YXRlOgorICAgICAgICBPZmZs
aW5lQXVkaW9Db250ZXh0JiBtX2NvbnRleHQ7CisgICAgICAgIGJvb2wgbV9tdXN0UmVsZWFzZUxv
Y2s7CisgICAgfTsKIAogcHJpdmF0ZToKICAgICBPZmZsaW5lQXVkaW9Db250ZXh0KERvY3VtZW50
JiwgQXVkaW9CdWZmZXIqIHJlbmRlclRhcmdldCk7CiAKICAgICB2b2lkIGRpZEZpbmlzaE9mZmxp
bmVSZW5kZXJpbmcoRXhjZXB0aW9uT3I8UmVmPEF1ZGlvQnVmZmVyPj4mJikgZmluYWw7CisgICAg
dm9pZCBkaWRTdXNwZW5kUmVuZGVyaW5nKHNpemVfdCBmcmFtZSkgZmluYWw7CisgICAgdm9pZCB1
bmluaXRpYWxpemUoKSBmaW5hbDsKIAogICAgIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+IG1fcGVu
ZGluZ09mZmxpbmVSZW5kZXJpbmdQcm9taXNlOworICAgIEhhc2hNYXA8dW5zaWduZWQgLyogZnJh
bWUgKi8sIFJlZlB0cjxEZWZlcnJlZFByb21pc2U+LCBXVEY6OkludEhhc2g8dW5zaWduZWQ+LCBX
VEY6OlVuc2lnbmVkV2l0aFplcm9LZXlIYXNoVHJhaXRzPHVuc2lnbmVkPj4gbV9zdXNwZW5kUmVx
dWVzdHM7CisgICAgYm9vbCBtX2RpZFN0YXJ0T2ZmbGluZVJlbmRlcmluZyB7IGZhbHNlIH07CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9Db250ZXh0LmlkbAppbmRleCA2ZWQwNGY3MzQw
ODRjNjNiMWQzM2VmODZlYmNkYmI4ODcyZmVmN2JmLi41NjhjOGMxZjc5OTEyNDk4MWZiYjNhZWY1
YTRmZjdlNjg3MTViMWMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0NvbnRleHQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vT2ZmbGluZUF1ZGlvQ29udGV4dC5pZGwKQEAgLTMyLDggKzMyLDggQEAKICAgICAK
ICAgICBbSW1wbGVtZW50ZWRBcz1zdGFydE9mZmxpbmVSZW5kZXJpbmddIFByb21pc2U8QXVkaW9C
dWZmZXI+IHN0YXJ0UmVuZGVyaW5nKCk7CiAKLSAgICBbSW1wbGVtZW50ZWRBcz1yZXN1bWVSZW5k
ZXJpbmddIFByb21pc2U8dm9pZD4gcmVzdW1lKCk7Ci0gICAgW0ltcGxlbWVudGVkQXM9c3VzcGVu
ZFJlbmRlcmluZ10gUHJvbWlzZTx2b2lkPiBzdXNwZW5kKCk7IC8vIEZJWE1FOiBNaXNzaW5nIHN1
c3BlbmRUaW1lIHBhcmFtZXRlci4KKyAgICBbSW1wbGVtZW50ZWRBcz1yZXN1bWVPZmZsaW5lUmVu
ZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHJlc3VtZSgpOworICAgIFtJbXBsZW1lbnRlZEFzPXN1c3Bl
bmRPZmZsaW5lUmVuZGVyaW5nXSBQcm9taXNlPHZvaWQ+IHN1c3BlbmQoZG91YmxlIHN1c3BlbmRU
aW1lKTsKIAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9E
ZXN0aW5hdGlvbk5vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZs
aW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwCmluZGV4IGFkMGI1ZmMxNzA2NTA5MmNmNDQyY2Yz
NDc5Zjk1MmUwODFlMzVlNzUuLjAwNGQxZDVjODQwNGM5Y2U4MTVhNTc5ODRmODlmNTcxYjgyN2E1
NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1
ZGlvRGVzdGluYXRpb25Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAKQEAgLTM5LDEyICszOSwxMiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChPZmZsaW5l
QXVkaW9EZXN0aW5hdGlvbk5vZGUpOwogICAgIAotY29uc3Qgc2l6ZV90IHJlbmRlclF1YW50dW1T
aXplID0gMTI4OyAgICAKK2NvbnN0IHNpemVfdCBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6
OnJlbmRlclF1YW50dW1TaXplID0gMTI4OwogCiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGU6
Ok9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZShCYXNlQXVkaW9Db250ZXh0JiBjb250ZXh0LCBB
dWRpb0J1ZmZlciogcmVuZGVyVGFyZ2V0KQogICAgIDogQXVkaW9EZXN0aW5hdGlvbk5vZGUoY29u
dGV4dCkKICAgICAsIG1fcmVuZGVyVGFyZ2V0KHJlbmRlclRhcmdldCkKLSAgICAsIG1fc3RhcnRl
ZFJlbmRlcmluZyhmYWxzZSkKKyAgICAsIG1fZnJhbWVzVG9Qcm9jZXNzKHJlbmRlclRhcmdldC0+
bGVuZ3RoKCkpCiB7CiAgICAgbV9yZW5kZXJCdXMgPSBBdWRpb0J1czo6Y3JlYXRlKHJlbmRlclRh
cmdldC0+bnVtYmVyT2ZDaGFubmVscygpLCByZW5kZXJRdWFudHVtU2l6ZSk7CiB9CkBAIC05Miw0
NSArOTIsNTkgQEAgRXhjZXB0aW9uT3I8dm9pZD4gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2Rl
OjpzdGFydFJlbmRlcmluZygpCiAgICAgLy8gRklYTUU6IFNob3VsZCB3ZSBjYWxsIGxhenlJbml0
aWFsaXplIGhlcmU/CiAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBwcm9iYWJseSBsaW1pdCB0aGUg
bnVtYmVyIG9mIHRocmVhZHMgd2UgY3JlYXRlIGZvciBvZmZsaW5lIGF1ZGlvLgogICAgIG1fcmVu
ZGVyVGhyZWFkID0gVGhyZWFkOjpjcmVhdGUoIm9mZmxpbmUgcmVuZGVyZXIiLCBbdGhpc10gewot
ICAgICAgICBib29sIGRpZFJlbmRlciA9IG9mZmxpbmVSZW5kZXIoKTsKLSAgICAgICAgY2FsbE9u
TWFpblRocmVhZChbdGhpcywgZGlkUmVuZGVyXSB7Ci0gICAgICAgICAgICBjb250ZXh0KCkuZmlu
aXNoZWRSZW5kZXJpbmcoZGlkUmVuZGVyKTsKKyAgICAgICAgYXV0byByZXN1bHQgPSBvZmZsaW5l
UmVuZGVyKCk7CisgICAgICAgIGNhbGxPbk1haW5UaHJlYWQoW3RoaXMsIHJlc3VsdCwgY3VycmVu
dFNhbXBsZUZyYW1lID0gbV9jdXJyZW50U2FtcGxlRnJhbWVdIHsKKyAgICAgICAgICAgIG1fc3Rh
cnRlZFJlbmRlcmluZyA9IGZhbHNlOworICAgICAgICAgICAgc3dpdGNoIChyZXN1bHQpIHsKKyAg
ICAgICAgICAgIGNhc2UgT2ZmbGluZVJlbmRlclJlc3VsdDo6RmFpbHVyZToKKyAgICAgICAgICAg
ICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJpbmcoZmFsc2UpOworICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgY2FzZSBPZmZsaW5lUmVuZGVyUmVzdWx0OjpDb21wbGV0ZToK
KyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZmluaXNoZWRSZW5kZXJpbmcodHJ1ZSk7CisgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIE9mZmxpbmVSZW5kZXJSZXN1bHQ6
OlN1c3BlbmRlZDoKKyAgICAgICAgICAgICAgICBjb250ZXh0KCkuZGlkU3VzcGVuZFJlbmRlcmlu
ZyhjdXJyZW50U2FtcGxlRnJhbWUpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgfQogICAgICAgICAgICAgZGVyZWYoKTsKICAgICAgICAgfSk7CiAgICAgfSwgVGhyZWFkVHlw
ZTo6QXVkaW8pOwogICAgIHJldHVybiB7IH07CiB9CiAKLWJvb2wgT2ZmbGluZUF1ZGlvRGVzdGlu
YXRpb25Ob2RlOjpvZmZsaW5lUmVuZGVyKCkKK2F1dG8gT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25O
b2RlOjpvZmZsaW5lUmVuZGVyKCkgLT4gT2ZmbGluZVJlbmRlclJlc3VsdAogewogICAgIEFTU0VS
VCghaXNNYWluVGhyZWFkKCkpOwogICAgIEFTU0VSVChtX3JlbmRlckJ1cy5nZXQoKSk7CisKICAg
ICBpZiAoIW1fcmVuZGVyQnVzLmdldCgpKQotICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAg
IHJldHVybiBPZmZsaW5lUmVuZGVyUmVzdWx0OjpGYWlsdXJlOwogCiAgICAgUkVMRUFTRV9BU1NF
UlQoY29udGV4dCgpLmlzSW5pdGlhbGl6ZWQoKSk7CiAKICAgICBib29sIGNoYW5uZWxzTWF0Y2gg
PSBtX3JlbmRlckJ1cy0+bnVtYmVyT2ZDaGFubmVscygpID09IG1fcmVuZGVyVGFyZ2V0LT5udW1i
ZXJPZkNoYW5uZWxzKCk7CiAgICAgQVNTRVJUKGNoYW5uZWxzTWF0Y2gpOwogICAgIGlmICghY2hh
bm5lbHNNYXRjaCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICByZXR1cm4gT2ZmbGlu
ZVJlbmRlclJlc3VsdDo6RmFpbHVyZTsKIAogICAgIGJvb2wgaXNSZW5kZXJCdXNBbGxvY2F0ZWQg
PSBtX3JlbmRlckJ1cy0+bGVuZ3RoKCkgPj0gcmVuZGVyUXVhbnR1bVNpemU7CiAgICAgQVNTRVJU
KGlzUmVuZGVyQnVzQWxsb2NhdGVkKTsKICAgICBpZiAoIWlzUmVuZGVyQnVzQWxsb2NhdGVkKQot
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIHJldHVybiBPZmZsaW5lUmVuZGVyUmVzdWx0
OjpGYWlsdXJlOwogCiAgICAgLy8gQnJlYWsgdXAgdGhlIHJlbmRlciB0YXJnZXQgaW50byBzbWFs
bGVyICJyZW5kZXIgcXVhbnRpemUiIHNpemVkIHBpZWNlcy4KICAgICAvLyBSZW5kZXIgdW50aWwg
d2UncmUgZmluaXNoZWQuCi0gICAgc2l6ZV90IGZyYW1lc1RvUHJvY2VzcyA9IG1fcmVuZGVyVGFy
Z2V0LT5sZW5ndGgoKTsKICAgICB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzID0gbV9yZW5kZXJU
YXJnZXQtPm51bWJlck9mQ2hhbm5lbHMoKTsKIAogICAgIHVuc2lnbmVkIG4gPSAwOwotICAgIHdo
aWxlIChmcmFtZXNUb1Byb2Nlc3MgPiAwKSB7CisgICAgd2hpbGUgKG1fZnJhbWVzVG9Qcm9jZXNz
ID4gMCkgeworICAgICAgICBpZiAoY29udGV4dCgpLnNob3VsZFN1c3BlbmQoKSkKKyAgICAgICAg
ICAgIHJldHVybiBPZmZsaW5lUmVuZGVyUmVzdWx0OjpTdXNwZW5kZWQ7CisKICAgICAgICAgLy8g
UmVuZGVyIG9uZSByZW5kZXIgcXVhbnR1bS4KICAgICAgICAgcmVuZGVyKDAsIG1fcmVuZGVyQnVz
LmdldCgpLCByZW5kZXJRdWFudHVtU2l6ZSk7CiAgICAgICAgIAotICAgICAgICBzaXplX3QgZnJh
bWVzQXZhaWxhYmxlVG9Db3B5ID0gc3RkOjptaW4oZnJhbWVzVG9Qcm9jZXNzLCByZW5kZXJRdWFu
dHVtU2l6ZSk7CisgICAgICAgIHNpemVfdCBmcmFtZXNBdmFpbGFibGVUb0NvcHkgPSBzdGQ6Om1p
bihtX2ZyYW1lc1RvUHJvY2VzcywgcmVuZGVyUXVhbnR1bVNpemUpOwogICAgICAgICAKICAgICAg
ICAgZm9yICh1bnNpZ25lZCBjaGFubmVsSW5kZXggPSAwOyBjaGFubmVsSW5kZXggPCBudW1iZXJP
ZkNoYW5uZWxzOyArK2NoYW5uZWxJbmRleCkgewogICAgICAgICAgICAgY29uc3QgZmxvYXQqIHNv
dXJjZSA9IG1fcmVuZGVyQnVzLT5jaGFubmVsKGNoYW5uZWxJbmRleCktPmRhdGEoKTsKQEAgLTEz
OSwxMCArMTUzLDEwIEBAIGJvb2wgT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2RlOjpvZmZsaW5l
UmVuZGVyKCkKICAgICAgICAgfQogICAgICAgICAKICAgICAgICAgbiArPSBmcmFtZXNBdmFpbGFi
bGVUb0NvcHk7Ci0gICAgICAgIGZyYW1lc1RvUHJvY2VzcyAtPSBmcmFtZXNBdmFpbGFibGVUb0Nv
cHk7CisgICAgICAgIG1fZnJhbWVzVG9Qcm9jZXNzIC09IGZyYW1lc0F2YWlsYWJsZVRvQ29weTsK
ICAgICB9CiAKLSAgICByZXR1cm4gdHJ1ZTsKKyAgICByZXR1cm4gT2ZmbGluZVJlbmRlclJlc3Vs
dDo6Q29tcGxldGU7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL09mZmxpbmVBdWRpb0Rlc3RpbmF0
aW9uTm9kZS5oCmluZGV4IDQ2Y2YzODBhOTE5MzNhMzc5MTMzNDc2MmNmNTcxZjZlNTk5ZDhmNjYu
LjRlYmJiODA0ZDM0MWYwYTZiMmY5NjljZTU4YWMwOTk3MGY2ZGI1ODUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vT2ZmbGluZUF1ZGlvRGVzdGluYXRpb25Ob2Rl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9PZmZsaW5lQXVkaW9EZXN0
aW5hdGlvbk5vZGUuaApAQCAtNTAsMTMgKzUwLDE5IEBAIHB1YmxpYzoKIAogICAgIC8vIEF1ZGlv
RGVzdGluYXRpb25Ob2RlCiAgICAgdm9pZCBlbmFibGVJbnB1dChjb25zdCBTdHJpbmcmKSBvdmVy
cmlkZSB7IH0KLSAgICBFeGNlcHRpb25Pcjx2b2lkPiBzdGFydFJlbmRlcmluZygpIG92ZXJyaWRl
OworICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHN0YXJ0UmVuZGVyaW5nKCkgZmluYWw7CiAKICAgICBm
bG9hdCBzYW1wbGVSYXRlKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9yZW5kZXJUYXJnZXQtPnNh
bXBsZVJhdGUoKTsgfQogCisgICAgc3RhdGljIGNvbnN0IHNpemVfdCByZW5kZXJRdWFudHVtU2l6
ZTsKKwogcHJpdmF0ZToKICAgICBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUoQmFzZUF1ZGlv
Q29udGV4dCYsIEF1ZGlvQnVmZmVyKiByZW5kZXJUYXJnZXQpOwogCisgICAgZW51bSBjbGFzcyBP
ZmZsaW5lUmVuZGVyUmVzdWx0IHsgRmFpbHVyZSwgU3VzcGVuZGVkLCBDb21wbGV0ZSB9OworICAg
IE9mZmxpbmVSZW5kZXJSZXN1bHQgb2ZmbGluZVJlbmRlcigpOworICAgIHZvaWQgbm90aWZ5T2Zm
bGluZVJlbmRlcmluZ1N1c3BlbmRlZCgpOworCiAgICAgLy8gVGhpcyBBdWRpb05vZGUgcmVuZGVy
cyBpbnRvIHRoaXMgQXVkaW9CdWZmZXIuCiAgICAgUmVmUHRyPEF1ZGlvQnVmZmVyPiBtX3JlbmRl
clRhcmdldDsKICAgICAKQEAgLTY1LDggKzcxLDggQEAgcHJpdmF0ZToKICAgICAKICAgICAvLyBS
ZW5kZXJpbmcgdGhyZWFkLgogICAgIFJlZlB0cjxUaHJlYWQ+IG1fcmVuZGVyVGhyZWFkOwotICAg
IGJvb2wgbV9zdGFydGVkUmVuZGVyaW5nOwotICAgIGJvb2wgb2ZmbGluZVJlbmRlcigpOworICAg
IHNpemVfdCBtX2ZyYW1lc1RvUHJvY2VzczsKKyAgICBib29sIG1fc3RhcnRlZFJlbmRlcmluZyB7
IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmIwMzNkNWJi
ODAwY2YyZjBiYjIzYzRlNzE3ODExNDEwZWVlNmUwMy4uMzcyMTAxMmZhY2MwMGI2YTlhNjFhMTdm
ODkwYTdiOTkwYjg1MTM3ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDkyIEBACisyMDIwLTA4LTEzICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIHN1
c3BlbmRpbmcgLyByZXN1bWluZyBhbiBPZmZsaW5lQXVkaW9Db250ZXh0CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU0MTcKKworICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgSW1wb3J0IHRlc3RzIGZvciB0aGlzIGZl
YXR1cmUgZnJvbSBCbGluayBzaW5jZSB0aGUgV1BUIGNvdmVyYWdlIGlzIG5vdCBncmVhdC4KKwor
ICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFz
aWMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2ljLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmF1
ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1z
dXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVk
aW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVsYXRpb24t
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250
ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2Ut
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250
ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVk
aW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtc2VxdWVuY2UuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vcmVzb3Vy
Y2VzL2F1ZGl0LXV0aWwuanM6IEFkZGVkLgorICAgICAgICAoY29tcGFyZUJ1ZmZlcnNXaXRoQ29u
c3RyYWludHMpOgorICAgICAgICAoY3JlYXRlSW1wdWxzZUJ1ZmZlcik6CisgICAgICAgIChjcmVh
dGVMaW5lYXJSYW1wQnVmZmVyKToKKyAgICAgICAgKGNyZWF0ZUNvbnN0YW50QnVmZmVyKToKKyAg
ICAgICAgKGNyZWF0ZVN0ZXJlb0ltcHVsc2VCdWZmZXIpOgorICAgICAgICAodGltZVRvU2FtcGxl
RnJhbWUpOgorICAgICAgICAoZ3JhaW5MZW5ndGhJblNhbXBsZUZyYW1lcyk6CisgICAgICAgIChp
c1ZhbGlkTnVtYmVyKToKKyAgICAgICAgKiB3ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanM6IEFk
ZGVkLgorICAgICAgICAoX2xvZ0Vycm9yKToKKyAgICAgICAgKF9sb2dQYXNzZWQpOgorICAgICAg
ICAoX2xvZ0ZhaWxlZCk6CisgICAgICAgIChfdGhyb3dFeGNlcHRpb24pOgorICAgICAgICAoX2dl
bmVyYXRlRGVzY3JpcHRpb24pOgorICAgICAgICAoX2Zvcm1hdEZhaWx1cmVFbnRyeSk6CisgICAg
ICAgIChfY2xvc2VUb1RocmVzaG9sZCk6CisgICAgICAgIChTaG91bGQpOgorICAgICAgICAoU2hv
dWxkLnByb3RvdHlwZS5fcHJvY2Vzc0FyZ3VtZW50cyk6CisgICAgICAgIChTaG91bGQucHJvdG90
eXBlLl9idWlsZFJlc3VsdFRleHQpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5fZmluYWxp
emUpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5fYXNzZXJ0KToKKyAgICAgICAgKFNob3Vs
ZC5wcm90b3R5cGUuZ2V0IHJlc3VsdCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmdldCBk
ZXRhaWwpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5leGlzdCk6CisgICAgICAgIChTaG91
bGQucHJvdG90eXBlLnRocm93KToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUubm90VGhyb3cp
OgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZVJlc29sdmVkKToKKyAgICAgICAgKFNob3Vs
ZC5wcm90b3R5cGUuYmVSZWplY3RlZCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlUmVq
ZWN0ZWRXaXRoKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVUcnVlKToKKyAgICAgICAg
KFNob3VsZC5wcm90b3R5cGUuYmVGYWxzZSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJl
RXF1YWxUbyk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLm5vdEJlRXF1YWxUbyk6CisgICAg
ICAgIChTaG91bGQucHJvdG90eXBlLmJlTmFOKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUu
bm90QmVOYU4pOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5iZUdyZWF0ZXJUaGFuKToKKyAg
ICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVHcmVhdGVyVGhhbk9yRXF1YWxUbyk6CisgICAgICAg
IChTaG91bGQucHJvdG90eXBlLmJlTGVzc1RoYW4pOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlw
ZS5iZUxlc3NUaGFuT3JFcXVhbFRvKToKKyAgICAgICAgKFNob3VsZC5wcm90b3R5cGUuYmVDb25z
dGFudFZhbHVlT2YpOgorICAgICAgICAoU2hvdWxkLnByb3RvdHlwZS5ub3RCZUNvbnN0YW50VmFs
dWVPZik6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlRXF1YWxUb0FycmF5KToKKyAgICAg
ICAgKFNob3VsZC5wcm90b3R5cGUuY29udGFpblZhbHVlcyk6CisgICAgICAgIChTaG91bGQucHJv
dG90eXBlLm5vdEdsaXRjaCk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlQ2xvc2VUbyk6
CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmJlQ2xvc2VUb0FycmF5KToKKyAgICAgICAgKFNo
b3VsZC5wcm90b3R5cGUubWVzc2FnZSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmhhdmVP
d25Qcm9wZXJ0eSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLm5vdEhhdmVPd25Qcm9wZXJ0
eSk6CisgICAgICAgIChTaG91bGQucHJvdG90eXBlLmluaGVyaXRGcm9tKToKKyAgICAgICAgKFRh
c2spOgorICAgICAgICAoVGFzay5wcm90b3R5cGUuZ2V0IGxhYmVsKToKKyAgICAgICAgKFRhc2su
cHJvdG90eXBlLmdldCBzdGF0ZSk6CisgICAgICAgIChUYXNrLnByb3RvdHlwZS5nZXQgcmVzdWx0
KToKKyAgICAgICAgKFRhc2sucHJvdG90eXBlLnNob3VsZCk6CisgICAgICAgIChUYXNrLnByb3Rv
dHlwZS5ydW4pOgorICAgICAgICAoVGFzay5wcm90b3R5cGUudXBkYXRlKToKKyAgICAgICAgKFRh
c2sucHJvdG90eXBlLmRvbmUpOgorICAgICAgICAoVGFzay5wcm90b3R5cGUudGltZW91dCk6Cisg
ICAgICAgIChUYXNrLnByb3RvdHlwZS5pc1Bhc3NlZCk6CisgICAgICAgIChUYXNrLnByb3RvdHlw
ZS50b1N0cmluZyk6CisgICAgICAgIChUYXNrUnVubmVyKToKKyAgICAgICAgKFRhc2tSdW5uZXIu
cHJvdG90eXBlLl9maW5pc2gpOgorICAgICAgICAoVGFza1J1bm5lci5wcm90b3R5cGUuZGVmaW5l
KToKKyAgICAgICAgKFRhc2tSdW5uZXIucHJvdG90eXBlLnJ1bik6CisgICAgICAgIChsb2FkRmls
ZUZyb21VcmwpOgorICAgICAgICAocmV0dXJuLmNyZWF0ZVRhc2tSdW5uZXIpOgorICAgICAgICAo
d2luZG93LkF1ZGl0KToKKwogMjAyMC0wOC0xNCAgQ2xhcmsgV2FuZyAgPGNsYXJrX3dhbmdAYXBw
bGUuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBDb25zdGFudFNvdXJjZU5vZGUgSW50ZXJmYWNl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA0YjgzM2EzMzlkNjFmNDEzMWY5Yzk2
OWE0ZjFhZTU2YzM4Njk3NTY4Li5kMjZlMjAxYzZhNmFjOTI4ZDY5YTc2NzlmMmNlYTY0OTE3YzIy
Yzg3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAy
MC0wOC0xMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBzdXNwZW5kaW5nIC8gcmVzdW1pbmcgYW4gT2ZmbGluZUF1ZGlvQ29udGV4dAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1NDE3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIFJlYmFzZWxpbmUg
V1BUIHRlc3RzIG5vdyB0aGF0IG1vcmUgY2hlY2tzIGFyZSBwYXNzaW5nLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL2lkbGhhcm5lc3MuaHR0cHMud2luZG93LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9idWZmZXJzb3VyY2Vub2RlLWludGVyZmFjZS9hY3RpdmUtcHJvY2Vzc2lu
Zy5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvY29udGV4dC1pbnRlcmZhY2UvYXVkaW9jb250ZXh0
LXN1c3BlbmQtcmVzdW1lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVz
dHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9zdXNw
ZW5kLWFmdGVyLWNvbnN0cnVjdC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVk
aW9ub2RlLWRpc2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvd29ya2xldC1p
bnRlcmZhY2UvYXVkaW93b3JrbGV0bm9kZS1jaGFubmVsLWNvdW50Lmh0dHBzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtYXVkaW93b3JrbGV0LWludGVyZmFjZS9zdXNwZW5kZWQtY29udGV4dC1tZXNzYWdlcG9ydC5o
dHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVy
aW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtY2hhbm5lbG1lcmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5l
bG1lcmdlci1kaXNjb25uZWN0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2Uv
Y29udm9sdmVyLXJlc3BvbnNlLTQtY2hhbi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlbGF5bm9kZS1pbnRlcmZh
Y2Uvbm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZhY2Uvbm8tZGV6
aXBwZXJpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1vZmZsaW5lYXVkaW9jb250ZXh0LWludGVyZmFjZS9jdXJy
ZW50LXRpbWUtYmxvY2stc2l6ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVyZmFj
ZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9h
dXRvbWF0aW9uLWNoYW5nZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9wYW5u
ZXItYXV0b21hdGlvbi1iYXNpYy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWludGVyZmFj
ZS93YXZlc2hhcGVyLWNvcHktY3VydmUtZXhwZWN0ZWQudHh0OgorCiAyMDIwLTA4LTE0ICBDbGFy
ayBXYW5nICA8Y2xhcmtfd2FuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgSW50cm9kdWNlIENvbnN0
YW50U291cmNlTm9kZSBJbnRlcmZhY2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQxMzk5NDFhNWFm
Yzk3YzVmY2I4ZjBhZjY2MjZmMDQzMjlhNmFlMDEuLmVjNGY0MDY1YTM0ZjJiNGVhNzRmNzRkMGVm
MGVlY2QxYzE0MzUxMTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzI1LDYgKzMyNSw5IEBAIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
Y29udm9sdmVybm9kZS1pbnRlcmZhCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
YmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZl
ci11cG1peGluZy0xLWNoYW5uZWwtcmVzcG9uc2UuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXdh
dmVzaGFwZXJub2RlLWludGVyZmFjZS93YXZlc2hhcGVyLWNvcHktY3VydmUuaHRtbCBbIFBhc3Mg
RmFpbHVyZSBdCiAKKyMgVGhpcyB0ZXN0IHBhc3NlcyBidXQgcHJpbnRzIGEgZGlmZmVyZW50IHZh
bHVlIGFsbW9zdCBldmVyeSB0aW1lLgoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2ZXJub2RlLWludGVyZmFjZS9jb252b2x2
ZXItcmVzcG9uc2UtNC1jaGFuLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQorCiAKICMgU29tZSBvZiB0
aGUgc3ViY2hlY2tzIGFyZSBmYWlsaW5nIGFuZCBwcmludCBvdXQgYSBkaWZmZXJlbnQgdmFsdWUg
ZXZlcnkgdGltZS4KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL2RldHVuZS1saW1pdGluZy5o
dG1sIFsgUGFzcyBGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vaWRsaGFybmVzcy5odHRwcy53aW5kb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKaW5kZXggMTQ0M2Ew
YWRjOGZhMzY1NmE0M2M3NTIwMTRiMjhmNjZmYzBhMDU5NC4uOTI2MGE2MGI3ZGJmODc2MGVkYTVi
OTY1MTMyOTAxNTRmZGExYmU0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby9pZGxoYXJuZXNzLmh0dHBzLndpbmRvdy1leHBlY3RlZC50eHQKQEAgLTExNCw3
ICsxMTQsNyBAQCBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBleGlzdGVuY2Ug
YW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdAogUEFTUyBPZmZsaW5lQXVkaW9Db250
ZXh0IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSAKIFBBU1MgT2ZmbGluZUF1ZGlv
Q29udGV4dCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBzdGFydFJlbmRlcmluZygpIAogUEFTUyBPZmZs
aW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIHJlc3VtZSgpIAotRkFJTCBPZmZs
aW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIHN1c3BlbmQoZG91YmxlKSBhc3Nl
cnRfZXF1YWxzOiBwcm9wZXJ0eSBoYXMgd3JvbmcgLmxlbmd0aCBleHBlY3RlZCAxIGJ1dCBnb3Qg
MAorUEFTUyBPZmZsaW5lQXVkaW9Db250ZXh0IGludGVyZmFjZTogb3BlcmF0aW9uIHN1c3BlbmQo
ZG91YmxlKSAKIFBBU1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBs
ZW5ndGggCiBQQVNTIE9mZmxpbmVBdWRpb0NvbnRleHQgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgb25j
b21wbGV0ZSAKIFBBU1MgT2ZmbGluZUF1ZGlvQ29udGV4dCBtdXN0IGJlIHByaW1hcnkgaW50ZXJm
YWNlIG9mIG5ldyBPZmZsaW5lQXVkaW9Db250ZXh0KDEsIDEsIHNhbXBsZV9yYXRlKSAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9jb250ZXh0LWludGVyZmFjZS9hdWRpb2NvbnRleHQt
c3VzcGVuZC1yZXN1bWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQt
aW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3RlZC50eHQKaW5kZXgg
ODhhNjAwODI0MGVjZTlhNDBjNWMxMjNjNzVjYWU1NGE4OGE2Y2E2OC4uNTJkOTU4YzBmMDJhYTM5
OTI1YWNkMmYxZGExN2U0OGQ5ZmYyMDEzYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRp
b2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb2NvbnRleHQtaW50ZXJmYWNlL2F1ZGlvY29udGV4
dC1zdXNwZW5kLXJlc3VtZS1leHBlY3RlZC50eHQKQEAgLTEwLDE5ICsxMCwxOSBAQCBQQVNTICAg
b2ZmbGluZUNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCA0NDEwMCwgNDQxMDAp
IGRpZCBub3QgdGhyb3cgYQogUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRv
IHN1c3BlbmRlZC4gCiBQQVNTICAgcDEgPSBvZmZsaW5lQ29udGV4dC5zdXNwZW5kKCkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIHAxIGluc3RhbmNlb2YgUHJvbWlzZSBpcyB0
cnVlLiAKLVBBU1MgICBwMSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJv
cjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4gCitQQVNTICAgcDEgcmVqZWN0
ZWQgY29ycmVjdGx5IHdpdGggVHlwZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cy4gCiBQQVNT
IDwgW3Rlc3Qtc3VzcGVuZF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNSBhc3NlcnRp
b25zKSAKIFBBU1MgPiBbdGVzdC1yZXN1bWVdIFRlc3QgcmVzdW1lKCkgZm9yIG9mZmxpbmUgY29u
dGV4dCAKIFBBU1MgICBwMiA9IG9mZmxpbmVDb250ZXh0LnJlc3VtZSgpIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKIFBBU1MgICBwMiBpbnN0YW5jZW9mIFByb21pc2UgaXMgdHJ1ZS4gCiBQ
QVNTICAgQWZ0ZXIgcmVzdW1lLCBvZmZsaW5lQ29udGV4dC5zdGF0ZSBpcyBlcXVhbCB0byBzdXNw
ZW5kZWQuIAotUEFTUyAgIHAyIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVy
cm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLiAKK1BBU1MgICBwMiByZWpl
Y3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogQ2Fubm90IHJlc3VtZSBhbiBv
ZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90IHN0YXJ0ZWQuIAogUEFTUyA8IFt0ZXN0
LXJlc3VtZV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNCBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbdGVzdC1hZnRlci1jbG9zZV0gVGVzdCBzdGF0ZSBhZnRlciBjb250ZXh0IGNsb3NlZCAK
IFBBU1MgICBwMyA9IG9mZmxpbmVDb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEFmdGVyIGNsb3NlLCBvZmZsaW5lQ29udGV4dC5zdGF0
ZSBpcyBlcXVhbCB0byBjbG9zZWQuIAotUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN1c3BlbmQoKSBy
ZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBp
biBhbiBpbnZhbGlkIHN0YXRlLi4gCi1QQVNTICAgb2ZmbGluZUNvbnRleHQucmVzdW1lKCkgcmVq
ZWN0ZWQgY29ycmVjdGx5IHdpdGggSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4uIAorUEFTUyAgIG9mZmxpbmVDb250ZXh0LnN1c3BlbmQoKSByZWpl
Y3RlZCBjb3JyZWN0bHkgd2l0aCBUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzLiAKK1BB
U1MgICBvZmZsaW5lQ29udGV4dC5yZXN1bWUoKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZh
bGlkU3RhdGVFcnJvcjogQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhh
dCBoYXMgbm90IHN0YXJ0ZWQuIAogUEFTUyA8IFt0ZXN0LWFmdGVyLWNsb3NlXSBBbGwgYXNzZXJ0
aW9ucyBwYXNzZWQuICh0b3RhbCA0IGFzc2VydGlvbnMpIAogUEFTUyA+IFtyZXN1bWUtcnVubmlu
Zy1jb250ZXh0XSBUZXN0IHJlc3VtaW5nIGEgcnVubmluZyBjb250ZXh0IAogUEFTUyAgIENyZWF0
ZSBvbmxpbmUgY29udGV4dCBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZhY2UvYXVkaW9ub2RlLWRpc2Nvbm5lY3Qt
YXVkaW9wYXJhbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvbm9kZS1pbnRlcmZh
Y2UvYXVkaW9ub2RlLWRpc2Nvbm5lY3QtYXVkaW9wYXJhbS1leHBlY3RlZC50eHQKaW5kZXggYzc0
ZGMyNTM0ZDJlZTgxYWY3NmI1MmVlZmY4YWE2YzllZDRiZmFlZC4uYWNjYThkMjdlMjdmYmI5YmJh
NmFjOTQ3OTA1NGQyMjU1MTA4NDY0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb25v
ZGUtaW50ZXJmYWNlL2F1ZGlvbm9kZS1kaXNjb25uZWN0LWF1ZGlvcGFyYW0tZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9ub2RlLWludGVyZmFjZS9hdWRpb25vZGUtZGlzY29u
bmVjdC1hdWRpb3BhcmFtLWV4cGVjdGVkLnR4dApAQCAtMSwxOSArMSwxNyBAQAogCi1IYXJuZXNz
IEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3Qg
aXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJU
RUQuIAogUEFTUyBFeGVjdXRpbmcgImRpc2Nvbm5lY3QoQXVkaW9QYXJhbSkiIAogUEFTUyBFeGVj
dXRpbmcgImRpc2Nvbm5lY3QoQXVkaW9QYXJhbSwgb3V0cHV0KSIgCiBQQVNTIEV4ZWN1dGluZyAi
ZXhjZXB0aW9ucyIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbZGlzY29ubmVjdChBdWRp
b1BhcmFtKV0gIAotRkFJTCBYIENoYW5uZWwgIzAgZXhwZWN0ZWQgdG8gaGF2ZSB0aGUgdmFsdWUg
c2VxdWVuY2Ugb2YgWzIuMjUsMS41XSBidXQgZ290IDEgdmFsdWVzLCBbMi4yNV0sIGluc3RlYWQg
b2YgMi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggQ2hhbm5l
bCAjMCBleHBlY3RlZCB0byBoYXZlIHRoZSB2YWx1ZSBzZXF1ZW5jZSBvZiBbMi4yNSwxLjVdIGJ1
dCBnb3QgMyB2YWx1ZXMsIFsxLDIuMjUsMF0sIGluc3RlYWQgb2YgMi4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggVGhlIGluZGV4IG9mIHZhbHVlIGNoYW5nZSBp
cyBub3QgZXF1YWwgdG8gMTExMzYuIEdvdCAtMS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCiBGQUlMIDwgW2Rpc2Nvbm5lY3QoQXVkaW9QYXJhbSldIDIgb3V0IG9mIDIgYXNz
ZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CiBQQVNTID4gW2Rpc2Nvbm5lY3QoQXVkaW9QYXJhbSwgb3V0cHV0KV0gIAotRkFJTCBYIENoYW5u
ZWwgIzAgZXhwZWN0ZWQgdG8gaGF2ZSB0aGUgdmFsdWUgc2VxdWVuY2Ugb2YgWzMsMS41XSBidXQg
Z290IDEgdmFsdWVzLCBbM10sIGluc3RlYWQgb2YgMi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitGQUlMIFggQ2hhbm5lbCAjMCBleHBlY3RlZCB0byBoYXZlIHRoZSB2YWx1
ZSBzZXF1ZW5jZSBvZiBbMywxLjVdIGJ1dCBnb3QgMyB2YWx1ZXMsIFsyLDMsMF0sIGluc3RlYWQg
b2YgMi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggVGhlIGlu
ZGV4IG9mIHZhbHVlIGNoYW5nZSBpbiBjaGFubmVsICMwIGlzIG5vdCBlcXVhbCB0byAxMTEzNi4g
R290IC0xLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBDaGFu
bmVsICMxIGV4cGVjdGVkIHRvIGhhdmUgdGhlIHZhbHVlIHNlcXVlbmNlIG9mIFs2LDNdIGJ1dCBn
b3QgMSB2YWx1ZXMsIFs2XSwgaW5zdGVhZCBvZiAyLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK0ZBSUwgWCBDaGFubmVsICMxIGV4cGVjdGVkIHRvIGhhdmUgdGhlIHZhbHVl
IHNlcXVlbmNlIG9mIFs2LDNdIGJ1dCBnb3QgMyB2YWx1ZXMsIFs0LDYsMF0sIGluc3RlYWQgb2Yg
Mi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggVGhlIGluZGV4
IG9mIHZhbHVlIGNoYW5nZSBpbiBjaGFubmVsICMxIGlzIG5vdCBlcXVhbCB0byAxMTEzNi4gR290
IC0xLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbZGlzY29u
bmVjdChBdWRpb1BhcmFtLCBvdXRwdXQpXSA0IG91dCBvZiA0IGFzc2VydGlvbnMgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtleGNlcHRp
b25zXSAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2Fk
ZGluZy1ldmVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVy
ZmFjZS9hZGRpbmctZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCAzNmU5YjU3NDEyZTY2ODM0NmJh
ZDFhMTVjMzViNzBjNGQwYTE3MWFkLi4yYzk3OWYxMWNiOTA2OWUyOWE0ZWM4OTI2MWM1Yzg1NDNj
ZjRjZTczIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL2Fk
ZGluZy1ldmVudHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1p
bnRlcmZhY2UvYWRkaW5nLWV2ZW50cy1leHBlY3RlZC50eHQKQEAgLTEsNyArMSwzIEBACi1DT05T
T0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJy
b3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTog
VW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2Fn
ZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4KIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcg
ImxpbmVhclJhbXAiIApAQCAtOSw1MSArNSw0MSBAQCBQQVNTIEV4ZWN1dGluZyAiZXhwb1JhbXAi
CiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbbGluZWFyUmFtcF0gSW5zZXJ0IGxpbmVhclJh
bXAgYWZ0ZXIgcnVubmluZyBmb3Igc29tZSB0aW1lIAogUEFTUyAgIGxpbmVhclJhbXA6IHNldFZh
bHVlQXRUaW1lKDEsIDAuMDA3ODEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAotUEFT
UyAgIGxpbmVhclJhbXA6IG91dHB1dFswOjUxMV0gY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQg
MS4gCi1GQUlMIFggbGluZWFyUmFtcDogb3V0cHV0WzUxMjo1NzZdIGRvZXMgbm90IGVxdWFsIFsu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFi
c0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMF0JMS4wMDAwMDAwMDAwMDAwMDAw
ZSswCTEuNDM3NTAwMDAwMDAwMDAwMGUrMAk0LjM3NTAwMDAwMDAwMDAwMDBlLTEJMy4wNDM0Nzgy
NjA4Njk1NjU0ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVsxXQkxLjAwMDAwMDAwMDAwMDAw
MDBlKzAJMS40Mzg0NzY1NjI1MDAwMDAwZSswCTQuMzg0NzY1NjI1MDAwMDAwMGUtMQkzLjA0ODIw
MDk1MDQ0MTI3NjBlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzJdCTEuMDAwMDAwMDAwMDAw
MDAwMGUrMAkxLjQzOTQ1MzEyNTAwMDAwMDBlKzAJNC4zOTQ1MzEyNTAwMDAwMDAwZS0xCTMuMDUy
OTE3MjMyMDIxNzA5NmUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbM10JMS4wMDAwMDAwMDAw
MDAwMDAwZSswCTEuNDQwNDI5Njg3NTAwMDAwMGUrMAk0LjQwNDI5Njg3NTAwMDAwMDBlLTEJMy4w
NTc2MjcxMTg2NDQwNjc5ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVs0XQkxLjAwMDAwMDAw
MDAwMDAwMDBlKzAJMS40NDE0MDYyNTAwMDAwMDAwZSswCTQuNDE0MDYyNTAwMDAwMDAwMGUtMQkz
LjA2MjMzMDYyMzMwNjIzMzFlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JLi4uYW5kIDYwIG1v
cmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA1LjAwMDAwMDAwMDAwMDAwMDBlLTEgYXQgaW5k
ZXggb2YgNjQuCi0JWzY0XQkxLjAwMDAwMDAwMDAwMDAwMDBlKzAJMS41MDAwMDAwMDAwMDAwMDAw
ZSswCTUuMDAwMDAwMDAwMDAwMDAwMGUtMQkzLjMzMzMzMzMzMzMzMzMzMzFlLTEJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDMuMzMzMzMzMzMzMzMzMzMzMWUtMSBhdCBp
bmRleCBvZiA2NC4KLQlbNjRdCTEuMDAwMDAwMDAwMDAwMDAwMGUrMAkxLjUwMDAwMDAwMDAwMDAw
MDBlKzAJNS4wMDAwMDAwMDAwMDAwMDAwZS0xCTMuMzMzMzMzMzMzMzMzMzMzMWUtMQkwLjAwMDAw
MDAwMDAwMDAwMDBlKzAKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgWCBsaW5lYXJSYW1wOiBvdXRwdXRbMTA4ODpdOiBFeHBlY3RlZCAyIGZvciBhbGwgdmFsdWVz
IGJ1dCBmb3VuZCA3MTA0IHVuZXhwZWN0ZWQgdmFsdWVzOiAKK1BBU1MgICBsaW5lYXJSYW1wOiBB
dCB0aW1lIDAuMDYyNSBzY2hlZHVsaW5nIGxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDIsIDAuMTMy
ODEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorRkFJTCBYIGxpbmVhclJhbXA6IG91
dHB1dFswOjUxMV06IEV4cGVjdGVkIDEgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDUxMiB1bmV4
cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTEuNDM3NQorCVsxXQkxLjQzODQ3
NjU2MjUKKwlbMl0JMS40Mzk0NTMxMjUKKwlbM10JMS40NDA0Mjk2ODc1CisJLi4uYW5kIDUwOCBt
b3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAg
bGluZWFyUmFtcDogb3V0cHV0WzUxMjo1NzZdIGVxdWFscyBbLi4uXSB3aXRoIGFuIGVsZW1lbnQt
d2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LiAKK0ZBSUwgWCBsaW5lYXJSYW1wOiBvdXRwdXRbMTA4ODpdOiBFeHBlY3RlZCAyIGZv
ciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCA1MTIgdW5leHBlY3RlZCB2YWx1ZXM6IAogCUluZGV4CUFj
dHVhbAotCVswXQkxCi0JWzFdCTEKLQlbMl0JMQotCVszXQkxCi0JLi4uYW5kIDcxMDAgbW9yZSBl
cnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtsaW5l
YXJSYW1wXSAyIG91dCBvZiA0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorCVs2NTkyXQkwCisJWzY1OTNdCTAKKwlbNjU5NF0JMAor
CVs2NTk1XQkwCisJLi4uYW5kIDUwOCBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitGQUlMIDwgW2xpbmVhclJhbXBdIDIgb3V0IG9mIDUgYXNzZXJ0aW9u
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNT
ID4gW2V4cG9SYW1wXSBJbnNlcnQgZXhwb1JhbXAgYWZ0ZXIgcnVubmluZyBmb3Igc29tZSB0aW1l
IAogUEFTUyAgIGV4cG9SYW1wOiBzZXRWYWx1ZUF0VGltZSgxLCAwLjAwNzgxMjUpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKLVBBU1MgICBleHBvUmFtcDogb3V0cHV0WzA6NTExXSBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiAKLUZBSUwgWCBleHBvUmFtcDogb3V0cHV0WzUxMjo1
NzZdIGRvZXMgbm90IGVxdWFsIFsuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJ
QWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlb
MF0JMS4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMzU0MjU1NTU3MDYwMjQxN2UrMAkzLjU0MjU1NTU3
MDYwMjQxNzBlLTEJMi42MTU4NjkzMjU1MDA0NTQ1ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
CVsxXQkxLjAwMDAwMDAwMDAwMDAwMDBlKzAJMS4zNTUxNzI1MTQ5MTU0NjYzZSswCTMuNTUxNzI1
MTQ5MTU0NjYzMWUtMQkyLjYyMDg2NTY5MDU3NjgzMDJlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
Ci0JWzJdCTEuMDAwMDAwMDAwMDAwMDAwMGUrMAkxLjM1NjA5MDA2ODgxNzEzODdlKzAJMy41NjA5
MDA2ODgxNzEzODY3ZS0xCTIuNjI1ODU4NTM5OTY5NTU2MWUtMQkwLjAwMDAwMDAwMDAwMDAwMDBl
KzAKLQlbM10JMS4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMzU3MDA4MzM3OTc0NTQ4M2UrMAkzLjU3
MDA4MzM3OTc0NTQ4MzRlLTEJMi42MzA4NDg1MjE1ODk4ODE5ZS0xCTAuMDAwMDAwMDAwMDAwMDAw
MGUrMAotCVs0XQkxLjAwMDAwMDAwMDAwMDAwMDBlKzAJMS4zNTc5MjcyMDMxNzg0MDU4ZSswCTMu
NTc5MjcyMDMxNzg0MDU3NmUtMQkyLjYzNTgzNDk4Njg4NzU5MTllLTEJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCi0JLi4uYW5kIDYwIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA0LjE0MjEx
NTExNjExOTM4NDhlLTEgYXQgaW5kZXggb2YgNjQuCi0JWzY0XQkxLjAwMDAwMDAwMDAwMDAwMDBl
KzAJMS40MTQyMTE1MTE2MTE5Mzg1ZSswCTQuMTQyMTE1MTE2MTE5Mzg0OGUtMQkyLjkyODkyMTkz
NDMxMzg3MjhlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDIuOTI4
OTIxOTM0MzEzODcyOGUtMSBhdCBpbmRleCBvZiA2NC4KLQlbNjRdCTEuMDAwMDAwMDAwMDAwMDAw
MGUrMAkxLjQxNDIxMTUxMTYxMTkzODVlKzAJNC4xNDIxMTUxMTYxMTkzODQ4ZS0xCTIuOTI4OTIx
OTM0MzEzODcyOGUtMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLSBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBleHBvUmFtcDogb3V0cHV0WzEwODg6XTogRXhwZWN0
ZWQgMiBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgNzEwNCB1bmV4cGVjdGVkIHZhbHVlczogCitQ
QVNTICAgZXhwb1JhbXA6IEF0IHRpbWUgMC4wNjI1IHNjaGVkdWxpbmcgZXhwb25lbnRpYWxSYW1w
VG9WYWx1ZUF0VGltZSgyLCAwLjEzMjgxMjUpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAK
K0ZBSUwgWCBleHBvUmFtcDogb3V0cHV0WzA6NTExXTogRXhwZWN0ZWQgMSBmb3IgYWxsIHZhbHVl
cyBidXQgZm91bmQgNTEyIHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0J
MS4zNTQyNTU1NTcwNjAyNDE3CisJWzFdCTEuMzU1MTcyNTE0OTE1NDY2MworCVsyXQkxLjM1NjA5
MDA2ODgxNzEzODcKKwlbM10JMS4zNTcwMDgzMzc5NzQ1NDgzCisJLi4uYW5kIDUwOCBtb3JlIGVy
cm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgZXhwb1Jh
bXA6IG91dHB1dFs1MTI6NTc2XSBlcXVhbHMgWy4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4g
CitGQUlMIFggZXhwb1JhbXA6IG91dHB1dFsxMDg4Ol06IEV4cGVjdGVkIDIgZm9yIGFsbCB2YWx1
ZXMgYnV0IGZvdW5kIDUxMiB1bmV4cGVjdGVkIHZhbHVlczogCiAJSW5kZXgJQWN0dWFsCi0JWzBd
CTEKLQlbMV0JMQotCVsyXQkxCi0JWzNdCTEKLQkuLi5hbmQgNzEwMCBtb3JlIGVycm9ycy4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW2V4cG9SYW1wXSAyIG91
dCBvZiA0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQorCVs2NTkyXQkwCisJWzY1OTNdCTAKKwlbNjU5NF0JMAorCVs2NTk1XQkwCisJ
Li4uYW5kIDUwOCBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitGQUlMIDwgW2V4cG9SYW1wXSAyIG91dCBvZiA1IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCAjIEFVRElUIFRBU0sg
UlVOTkVSIEZJTklTSEVEOiAyIG91dCBvZiAyIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1h
dWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5lY3Rpb24tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtYmlxdWFkLWNvbm5l
Y3Rpb24tZXhwZWN0ZWQudHh0CmluZGV4IDM0MjZmYzE3NmI1MjAxZTA0Nzg5ZmU0ODZjMzhiYjM1
YzYyNWMwN2EuLmMzMGUzZTg4OTM1MWRkMzRmNWE0NzM1NTEzOTY5YzFlMjQ4N2JjZjkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWJpcXVhZC1j
b25uZWN0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL2stcmF0ZS1iaXF1YWQtY29ubmVjdGlvbi1leHBlY3RlZC50eHQKQEAgLTEsOSArMSw5
IEBACiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKLUZBSUwgRXhlY3V0aW5n
ICJGcmVxdWVuY3kgQXVkaW9QYXJhbSIgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVqZWN0aW9u
IHdpdGggdmFsdWU6IG9iamVjdCAiUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6
IENvbnN0YW50U291cmNlTm9kZSIKLUZBSUwgRXhlY3V0aW5nICJRIEF1ZGlvUGFyYW0iIHByb21p
c2VfdGVzdDogVW5oYW5kbGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlJlZmVyZW5j
ZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBDb25zdGFudFNvdXJjZU5vZGUiCi1GQUlMIEV4
ZWN1dGluZyAiR2FpbiBBdWRpb1BhcmFtIiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rp
b24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJs
ZTogQ29uc3RhbnRTb3VyY2VOb2RlIgotRkFJTCBFeGVjdXRpbmcgIkRldHVuZSBBdWRpb1BhcmFt
IiBwcm9taXNlX3Rlc3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJS
ZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogQ29uc3RhbnRTb3VyY2VOb2RlIgor
UEFTUyBFeGVjdXRpbmcgIkZyZXF1ZW5jeSBBdWRpb1BhcmFtIiAKK1BBU1MgRXhlY3V0aW5nICJR
IEF1ZGlvUGFyYW0iIAorUEFTUyBFeGVjdXRpbmcgIkdhaW4gQXVkaW9QYXJhbSIgCitQQVNTIEV4
ZWN1dGluZyAiRGV0dW5lIEF1ZGlvUGFyYW0iIAogUEFTUyBFeGVjdXRpbmcgIkFsbCBrLXJhdGUg
aW5wdXRzIiAKIFBBU1MgQXVkaXQgcmVwb3J0IAogUEFTUyA+IFtGcmVxdWVuY3kgQXVkaW9QYXJh
bV0gay1yYXRlIGlucHV0IHdvcmtzIApAQCAtMTIsMjQgKzEyLDQ2IEBAIFBBU1MgICBSZWZlcmVu
Y2UgQmlxdWFkRmlsdGVyTm9kZShjLCB7InR5cGUiOiJsb3dwYXNzIiwiZnJlcXVlbmN5IjowfSkg
ZGlkIG5vdCB0CiBQQVNTICAgcmVmTm9kZS5mcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoODgwLDAp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICByZWZOb2RlLmZyZXF1ZW5jeS5s
aW5lYXJSYW1wVG9WYWx1ZUF0VGltZS4oMCwwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRp
b24uIAogUEFTUyAgIFRlc3QgQmlxdWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJsb3dw
YXNzIiwiZnJlcXVlbmN5IjowfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IGZyZXF1ZW5jeTogbW9kLm9mZnNldC5zZXRWYWx1ZUF0VGltZSg4ODAsMCkgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGZyZXF1ZW5jeTogbW9kLm9mZnNldC5saW5lYXJSYW1w
VG9WYWx1ZUF0VGltZSgwLDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNT
ICAgRXhwZWN0ZWQgay1yYXRlIGZyZXF1ZW5jeSB3aXRoIGF1dG9tYXRpb24gb3V0cHV0WzA6MjA0
N10gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTAyMyBkaWZmZXJlbnQgdmFsdWVzKS4g
CitQQVNTICAgRXhwZWN0ZWQgay1yYXRlIGZyZXF1ZW5jeSB3aXRoIGF1dG9tYXRpb24gb3V0cHV0
WzIwNDg6XSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBrLXJhdGUgZnJl
cXVlbmN5IHdpdGggaW5wdXQ6IG91dHB1dFswLDIwNDhdIGVxdWFscyBbMCwwLjAyOTA0NzgzNzQ4
MDkwMjY3MiwwLjE0ODIzNTE1NzEzMjE0ODc0LDAuMzc2ODM4MTc3NDQyNTUwNjYsMC42NjMxMTcy
Mjk5Mzg1MDcxLDAuOTI0MjA5OTUyMzU0NDMxMiwxLjA4MzMyNzQxMjYwNTI4NTYsMS4wOTMyMzU4
NTAzMzQxNjc1LDAuOTQzOTY3NDAxOTgxMzUzOCwwLjY1ODQ2Nzc2OTYyMjgwMjcsMC4yODE5Mjc1
NTU3OTk0ODQyNSwtMC4xMzAxNTYzMjMzMTM3MTMwNywtMC41MjIxMDc2MDExNjU3NzE1LC0wLjg0
NTI4NTc3MzI3NzI4MjcsLTEuMDYyNTk3Mjc0NzgwMjczNCwtMS4xNTEwMTAwMzY0Njg1MDU5Li4u
XSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6
MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgZnJlcXVlbmN5IHdpdGgg
aW5wdXQ6IG91dHB1dFsyMDQ4Ol0gZXF1YWxzIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVz
aG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbRnJlcXVlbmN5IEF1ZGlv
UGFyYW1dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDExIGFzc2VydGlvbnMpIAogUEFT
UyA+IFtRIEF1ZGlvUGFyYW1dIGstcmF0ZSBpbnB1dCB3b3JrcyAKIFBBU1MgICBROiBuZXcgT3Nj
aWxsYXRvck5vZGUoY29udGV4dCwge2ZyZXF1ZW5jeTogMTc2MH0pIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKIFBBU1MgICBSZWZlcmVuY2UgQmlxdWFkRmlsdGVyTm9kZShjLCB7InR5cGUi
OiJiYW5kcGFzcyIsImZyZXF1ZW5jeSI6NDQwLCJRIjowfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAogUEFTUyAgIHJlZk5vZGUuUS5zZXRWYWx1ZUF0VGltZSgwLDApIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICByZWZOb2RlLlEubGluZWFyUmFtcFRvVmFsdWVBdFRp
bWUuKDEwMCwwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIFRlc3Qg
QmlxdWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJiYW5kcGFzcyIsImZyZXF1ZW5jeSI6
NDQwLCJRIjowfSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFE6IG1vZC5v
ZmZzZXQuc2V0VmFsdWVBdFRpbWUoMCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQ
QVNTICAgUTogbW9kLm9mZnNldC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgxMDAsMC4xMjUpIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBrLXJhdGUgUSB3aXRoIGlucHV0OiBv
dXRwdXRbMCwyMDQ4XSBlcXVhbHMgWzAsMC45ODIyODcxNjg1MDI4MDc2LDAuMzY4MTI0MzA2MjAx
OTM0OCwtMC44NDQzMjc4MDc0MjY0NTI2LC0wLjY4NDU0NjcwOTA2MDY2OSwwLjU4Nzc4NTM2MzE5
NzMyNjcsMC45MDQ4MjY2NDEwODI3NjM3LC0wLjI0ODY5MDMwNzE0MDM1MDM0LC0wLjk5ODAyNjYw
OTQyMDc3NjQsLTAuMTI1MzMyNDQ0OTA2MjM0NzQsMC45NTEwNTY3MTg4MjYyOTQsMC40ODE3NTI4
NDI2NjQ3MTg2MywtMC43NzA1MTM3MTMzNTk4MzI4LC0wLjc3MDUxMjIyMzI0MzcxMzQsMC40ODE3
NTQ2MDEwMDE3Mzk1LDAuOTUxMDU2MDAzNTcwNTU2Ni4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2Ug
dG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjow
fS4gCitQQVNTICAgay1yYXRlIFEgd2l0aCBpbnB1dDogb3V0cHV0WzIwNDg6XSBlcXVhbHMgWzAu
MDA1NjM1NTkzMDg2NDgxMDk0LDAuMDAzNzE0NjU1MjkzMTUxNzM2MywwLjAwMTk5MDY5NTcxNjgx
MzIwNjcsMC4wMDMyOTUyNjgxNjQ5NDc2MjksMC4wMDQ4MzIyNjQwMzU5NDAxNywwLjAwMjgwMDcw
NjMwODMzNTA2NiwtMC4wMDEyNzg5MzU2OTg3OTIzMzg0LC0wLjAwMjgzMzY2NzIxMTIzNDU2OTUs
LTAuMDAxNDM3NTQxMjEzODE3ODk0NSwtMC4wMDEyNjcxNjcxNTc0OTM1MzE3LC0wLjAwNDA5OTUy
MzY0ODYxOTY1MiwtMC4wMDYyNTYzNDQyNjI1MTA1MzgsLTAuMDA0NDc5ODk3MjA4NTExODI5LC0w
LjAwMTIwMTkyNDI4NTg1MTQxOSwtMC4wMDA2NDUwOTc1Nzc5NDQzOTc5LC0wLjAwMjA4Njc1MjA5
NDMyODQwMzUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtRIEF1ZGlvUGFy
YW1dIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDkgYXNzZXJ0aW9ucykgCiBQQVNTID4g
W0dhaW4gQXVkaW9QYXJhbV0gay1yYXRlIGlucHV0IHdvcmtzIAogUEFTUyAgIGdhaW46IG5ldyBP
c2NpbGxhdG9yTm9kZShjb250ZXh0LCB7ZnJlcXVlbmN5OiAxNzYwfSkgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAogUEFTUyAgIFJlZmVyZW5jZSBCaXF1YWRGaWx0ZXJOb2RlKGMsIHsidHlw
ZSI6InBlYWtpbmciLCJmcmVxdWVuY3kiOjE3NjAsIlEiOjEwMCwiZ2FpbiI6MH0pIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICByZWZOb2RlLmdhaW4uc2V0VmFsdWVBdFRpbWUo
MCwwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgcmVmTm9kZS5nYWluLmxp
bmVhclJhbXBUb1ZhbHVlQXRUaW1lLigtMTAwLDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTICAgVGVzdCBCaXF1YWRGaWx0ZXJOb2RlKGNvbnRleHQsIHsidHlwZSI6InBl
YWtpbmciLCJmcmVxdWVuY3kiOjE3NjAsIlEiOjEwMCwiZ2FpbiI6MH0pIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKK1BBU1MgICBnYWluOiBtb2Qub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAs
MCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGdhaW46IG1vZC5vZmZzZXQu
bGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoLTEwMCwwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIGstcmF0ZSBnYWluIHdpdGggaW5wdXQ6IG91dHB1dFswLDIwNDhdIGVx
dWFscyBbMCwwLjk4MjI4NzE2ODUwMjgwNzYsMC4zNjgxMjQzMDYyMDE5MzQ4LC0wLjg0NDMyNzgw
NzQyNjQ1MjYsLTAuNjg0NTQ2NzA5MDYwNjY5LDAuNTg3Nzg1MzYzMTk3MzI2NywwLjkwNDgyNjY0
MTA4Mjc2MzcsLTAuMjQ4NjkwMzA3MTQwMzUwMzQsLTAuOTk4MDI2NjA5NDIwNzc2NCwtMC4xMjUz
MzI0NDQ5MDYyMzQ3NCwwLjk1MTA1NjcxODgyNjI5NCwwLjQ4MTc1Mjg0MjY2NDcxODYzLC0wLjc3
MDUxMzcxMzM1OTgzMjgsLTAuNzcwNTEyMjIzMjQzNzEzNCwwLjQ4MTc1NDYwMTAwMTczOTUsMC45
NTEwNTYwMDM1NzA1NTY2Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJh
dGUgZ2FpbiB3aXRoIGlucHV0OiBvdXRwdXRbMjA0ODpdIGVxdWFscyBbLTAuMDE5NjE2ODc5NTIy
ODAwNDQ2LDAuMDAzNDg0MTQ2NDM2Njc2MzgzLDAuMDIwOTIyNTA4MDkwNzM0NDgyLDAuMDA0MzU2
ODIzMzk1OTM3NjgxLC0wLjAxOTI4OTc3MTA5NDkxODI1LC0wLjAxMTU4NjAxNzkwNjY2NTgwMiww
LjAxNDk0NzcxODAwOTM1MjY4NCwwLjAxNzE4Nzc2MTE0Mjg0OTkyMiwtMC4wMDg1MDY0OTA4NDg5
NTg0OTIsLTAuMDIwMzc1NzczMzEwNjYxMzE2LDAuMDAwODcwMzAwMTA3NjM1NTU3NywwLjAyMDcw
MTc3OTA1MjYxNTE2NiwwLjAwNjg4Nzg3MjIzNzcxMjE0NSwtMC4wMTgxMjA3MDA0OTM0NTQ5MzMs
LTAuMDEzNjc4NzQ4MTYwNjAwNjYyLDAuMDEyOTk0MTYwODc1Njc4MDYyLi4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKK1BBU1MgPCBbR2FpbiBBdWRpb1BhcmFtXSBBbGwgYXNzZXJ0aW9ucyBw
YXNzZWQuICh0b3RhbCA5IGFzc2VydGlvbnMpIAogUEFTUyA+IFtEZXR1bmUgQXVkaW9QYXJhbV0g
ay1yYXRlIGlucHV0IHdvcmtzIAogUEFTUyAgIGRldHVuZTogbmV3IE9zY2lsbGF0b3JOb2RlKGNv
bnRleHQsIHtmcmVxdWVuY3k6IDQ0MH0pIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBB
U1MgICBSZWZlcmVuY2UgQmlxdWFkRmlsdGVyTm9kZShjLCB7InR5cGUiOiJsb3dwYXNzIiwiZnJl
cXVlbmN5IjoyMjAwLCJkZXR1bmUiOjAsImdhaW4iOjB9KSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCiBQQVNTICAgcmVmTm9kZS5kZXR1bmUuc2V0VmFsdWVBdFRpbWUoMCwwKSBkaWQgbm90
IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgcmVmTm9kZS5kZXR1bmUubGluZWFyUmFtcFRv
VmFsdWVBdFRpbWUuKC0xMzMyMy45NDUzNzAwOTQ0MjcsMC4xMjUpIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKIFBBU1MgICBUZXN0IEJpcXVhZEZpbHRlck5vZGUoY29udGV4dCwgeyJ0eXBl
IjoibG93cGFzcyIsImZyZXF1ZW5jeSI6MjIwMCwiZGV0dW5lIjowLCJnYWluIjowfSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGRldHVuZTogbW9kLm9mZnNldC5zZXRWYWx1
ZUF0VGltZSgwLDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBkZXR1bmU6
IG1vZC5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoLTEzMzIzLjk0NTM3MDA5NDQyNyww
LjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIGstcmF0ZSBkZXR1bmUg
d2l0aCBpbnB1dDogb3V0cHV0WzAsMjA0OF0gZXF1YWxzIFswLDAuMTMxMDYxNzE3ODY3ODUxMjYs
MC40ODc2MTQ5ODkyODA3MDA3LDAuODI4MDcyNDg4MzA3OTUyOSwwLjk3MDgwMzkxNjQ1NDMxNTIs
MC45OTg3ODc2NDE1MjUyNjg2LDAuOTQ3MjM3MzEyNzkzNzMxNywwLjc3NzQ1Mzc4MDE3NDI1NTQs
MC41MDE4NTEyNjA2NjIwNzg5LDAuMTcxNTU5NDUzMDEwNTU5MDgsLTAuMTc0Mzk4NDgxODQ1ODU1
NywtMC41MDIyNzY4Mzc4MjU3NzUxLC0wLjc3MjE0MTU3NTgxMzI5MzUsLTAuOTQ5NTA1OTg0Nzgz
MTcyNiwtMS4wMTQyNjUxNzk2MzQwOTQyLC0wLjk1OTYxODU2ODQyMDQxMDIuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2
ZVRocmVzaG9sZCI6MH0uIAorUEFTUyAgIGstcmF0ZSBkZXR1bmUgd2l0aCBpbnB1dDogb3V0cHV0
WzIwNDg6XSBlcXVhbHMgWzAuMDExODkwOTI1NDY3MDE0MzEzLDAuMDExOTM4NjIyMjIxMzUwNjcs
MC4wMTE5ODU3NDM0MTgzMzU5MTUsMC4wMTIwMzIyNTM2Njc3MTIyMTIsMC4wMTIwNzgxODkyOTEw
NTk5NywwLjAxMjEyMzY0NTI4MzI4MTgwMywwLjAxMjE2ODc3MzQ0OTk1NzM3LDAuMDEyMjEzNzU3
MjYxNjMzODczLDAuMDEyMjU4NzkxMzY0NzI5NDA0LDAuMDEyMzA0MDYyOTU1MDgxNDYzLDAuMDEy
MzQ5NzI0NzY5NTkyMjg1LDAuMDEyMzk1ODc4MzIyNDIyNTA0LDAuMDEyNDQyNTYyNzI5MTIwMjU1
LDAuMDEyNDg5NzUxOTEyNjUzNDQ2LDAuMDEyNTM3MzUxODA5NDQyMDQzLDAuMDEyNTg1MjE4MDY0
NDg2OTguLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtEZXR1bmUgQXVkaW9Q
YXJhbV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgOSBhc3NlcnRpb25zKSAKIFBBU1Mg
PiBbQWxsIGstcmF0ZSBpbnB1dHNdICAKIFBBU1MgICBDcmVhdGU6IHJlZk5vZGUgPSBuZXcgQmlx
dWFkRmlsdGVyTm9kZShjb250ZXh0LCB7InR5cGUiOiJwZWFraW5nIiwiZnJlcXVlbmN5IjowLCJk
ZXR1bmUiOjAsImdhaW4iOjAsIlEiOjB9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQ
QVNTICAgQ3JlYXRlOiB0c3ROb2RlID0gbmV3IEJpcXVhZEZpbHRlck5vZGUoY29udGV4dCwgeyJ0
eXBlIjoicGVha2luZyIsImZyZXF1ZW5jeSI6MCwiZGV0dW5lIjowLCJnYWluIjowLCJRIjowfSkg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIApAQCAtNDEsNDQgKzYzLDQwIEBAIFBBU1MgICBT
ZXQgcmF0ZTogcmVmTm9kZVtnYWluXS5hdXRvbWF0aW9uUmF0ZSA9ICdrLXJhdGUnIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0CiBQQVNTICAgU2V0IHJhdGU6IHRzdE5vZGVbZ2Fpbl0uYXV0b21hdGlv
blJhdGUgPSAnay1yYXRlJyBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgU2V0
IHJhdGU6IHJlZk5vZGVbZGV0dW5lXS5hdXRvbWF0aW9uUmF0ZSA9ICdrLXJhdGUnIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBTZXQgcmF0ZTogdHN0Tm9kZVtkZXR1bmVdLmF1
dG9tYXRpb25SYXRlID0gJ2stcmF0ZScgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAotRkFJ
TCBYIENyZWF0ZTogbW9kW2ZyZXF1ZW5jeV0gPSBuZXcgQ29uc3RhbnRTb3VyY2VOb2RlKGNvbnRl
eHQsIHtvZmZzZXQ6IDB9KSBpbmNvcnJlY3RseSB0aHJldyBSZWZlcmVuY2VFcnJvcjogIkNhbid0
IGZpbmQgdmFyaWFibGU6IENvbnN0YW50U291cmNlTm9kZSIuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIFNldCByYXRlOiBtb2RbZnJlcXVlbmN5XS5vZmZzZXQu
YXV0b21hdGlvblJhdGUgPSAnYS1yYXRlJyBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1
bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbW9kW3BhcmFtXS5vZmZzZXQn
KSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIENyZWF0ZTog
bW9kW1FdID0gbmV3IENvbnN0YW50U291cmNlTm9kZShjb250ZXh0LCB7b2Zmc2V0OiAwfSkgaW5j
b3JyZWN0bHkgdGhyZXcgUmVmZXJlbmNlRXJyb3I6ICJDYW4ndCBmaW5kIHZhcmlhYmxlOiBDb25z
dGFudFNvdXJjZU5vZGUiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgWCBTZXQgcmF0ZTogbW9kW1FdLm9mZnNldC5hdXRvbWF0aW9uUmF0ZSA9ICdhLXJhdGUnIGlu
Y29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChl
dmFsdWF0aW5nICdtb2RbcGFyYW1dLm9mZnNldCcpIi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCi1GQUlMIFggQ3JlYXRlOiBtb2RbZ2Fpbl0gPSBuZXcgQ29uc3RhbnRTb3Vy
Y2VOb2RlKGNvbnRleHQsIHtvZmZzZXQ6IDB9KSBpbmNvcnJlY3RseSB0aHJldyBSZWZlcmVuY2VF
cnJvcjogIkNhbid0IGZpbmQgdmFyaWFibGU6IENvbnN0YW50U291cmNlTm9kZSIuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIFNldCByYXRlOiBtb2RbZ2Fpbl0u
b2Zmc2V0LmF1dG9tYXRpb25SYXRlID0gJ2EtcmF0ZScgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVy
cm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ21vZFtwYXJhbV0u
b2Zmc2V0JykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBD
cmVhdGU6IG1vZFtkZXR1bmVdID0gbmV3IENvbnN0YW50U291cmNlTm9kZShjb250ZXh0LCB7b2Zm
c2V0OiAwfSkgaW5jb3JyZWN0bHkgdGhyZXcgUmVmZXJlbmNlRXJyb3I6ICJDYW4ndCBmaW5kIHZh
cmlhYmxlOiBDb25zdGFudFNvdXJjZU5vZGUiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKLUZBSUwgWCBTZXQgcmF0ZTogbW9kW2RldHVuZV0ub2Zmc2V0LmF1dG9tYXRpb25S
YXRlID0gJ2EtcmF0ZScgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlz
IG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ21vZFtwYXJhbV0ub2Zmc2V0JykiLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBDcmVhdGU6IG1vZFtmcmVxdWVu
Y3ldID0gbmV3IENvbnN0YW50U291cmNlTm9kZShjb250ZXh0LCB7b2Zmc2V0OiAwfSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNldCByYXRlOiBtb2RbZnJlcXVlbmN5XS5v
ZmZzZXQuYXV0b21hdGlvblJhdGUgPSAnYS1yYXRlJyBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgQ3JlYXRlOiBtb2RbUV0gPSBuZXcgQ29uc3RhbnRTb3VyY2VOb2RlKGNvbnRl
eHQsIHtvZmZzZXQ6IDB9KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU2V0
IHJhdGU6IG1vZFtRXS5vZmZzZXQuYXV0b21hdGlvblJhdGUgPSAnYS1yYXRlJyBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ3JlYXRlOiBtb2RbZ2Fpbl0gPSBuZXcgQ29uc3Rh
bnRTb3VyY2VOb2RlKGNvbnRleHQsIHtvZmZzZXQ6IDB9KSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCitQQVNTICAgU2V0IHJhdGU6IG1vZFtnYWluXS5vZmZzZXQuYXV0b21hdGlvblJhdGUg
PSAnYS1yYXRlJyBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ3JlYXRlOiBt
b2RbZGV0dW5lXSA9IG5ldyBDb25zdGFudFNvdXJjZU5vZGUoY29udGV4dCwge29mZnNldDogMH0p
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTZXQgcmF0ZTogbW9kW2RldHVu
ZV0ub2Zmc2V0LmF1dG9tYXRpb25SYXRlID0gJ2EtcmF0ZScgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAogUEFTUyAgIEF1dG9tYXRlIDA6IHJlZk5vZGUuZnJlcXVlbmN5LnNldFZhbHVlQXRU
aW1lKDE3NjAsIDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKLUZBSUwgWCBBdXRvbWF0
ZSAwOiBtb2RbZnJlcXVlbmN5XS5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMTc2MCwgMCkgaW5jb3Jy
ZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1
YXRpbmcgJ21vZFtwYXJhbVswXV0ub2Zmc2V0JykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgICBBdXRvbWF0ZSAwOiBtb2RbZnJlcXVlbmN5XS5vZmZzZXQuc2V0
VmFsdWVBdFRpbWUoMTc2MCwgMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAg
IEF1dG9tYXRlIDA6IHJlZk5vZGUuUS5zZXRWYWx1ZUF0VGltZSgwLCAwKSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCi1GQUlMIFggQXV0b21hdGUgMDogbW9kW1FdLm9mZnNldC5zZXRWYWx1
ZUF0VGltZSgwLCAwKSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMg
bm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbW9kW3BhcmFtWzBdXS5vZmZzZXQnKSIuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEF1dG9tYXRlIDA6IG1vZFtR
XS5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMCwgMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24u
IAogUEFTUyAgIEF1dG9tYXRlIDA6IHJlZk5vZGUuZ2Fpbi5zZXRWYWx1ZUF0VGltZSgwLCAwKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCi1GQUlMIFggQXV0b21hdGUgMDogbW9kW2dhaW5d
Lm9mZnNldC5zZXRWYWx1ZUF0VGltZSgwLCAwKSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6
ICJ1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbW9kW3BhcmFtWzBdXS5v
ZmZzZXQnKSIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEF1
dG9tYXRlIDA6IG1vZFtnYWluXS5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMCwgMCkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEF1dG9tYXRlIDA6IHJlZk5vZGUuZGV0dW5lLnNl
dFZhbHVlQXRUaW1lKDQ4MDAsIDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKLUZBSUwg
WCBBdXRvbWF0ZSAwOiBtb2RbZGV0dW5lXS5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoNDgwMCwgMCkg
aW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ21vZFtwYXJhbVswXV0ub2Zmc2V0JykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBBdXRvbWF0ZSAwOiBtb2RbZGV0dW5lXS5vZmZzZXQu
c2V0VmFsdWVBdFRpbWUoNDgwMCwgMCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFT
UyAgIEF1dG9tYXRlIDE6IHJlZk5vZGVbZnJlcXVlbmN5XS5saW5lYXJSYW1wVG9WYWx1ZUF0VGlt
ZSg0NDAsIDAuMTI1KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCi1GQUlMIFggQXV0b21h
dGUgMTogbW9kW2ZyZXF1ZW5jeV0ub2Zmc2V0LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDQ0MCwg
MC4xMjUpIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBpcyBub3QgYW4g
b2JqZWN0IChldmFsdWF0aW5nICdtb2RbcGFyYW1bMF1dLm9mZnNldCcpIi4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgQXV0b21hdGUgMTogbW9kW2ZyZXF1ZW5j
eV0ub2Zmc2V0LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDQ0MCwgMC4xMjUpIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBBdXRvbWF0ZSAxOiByZWZOb2RlW1FdLmxpbmVhclJh
bXBUb1ZhbHVlQXRUaW1lKDQwLCAwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAot
RkFJTCBYIEF1dG9tYXRlIDE6IG1vZFtRXS5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUo
NDAsIDAuMTI1KSBpbmNvcnJlY3RseSB0aHJldyBUeXBlRXJyb3I6ICJ1bmRlZmluZWQgaXMgbm90
IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnbW9kW3BhcmFtWzBdXS5vZmZzZXQnKSIuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEF1dG9tYXRlIDE6IG1vZFtRXS5v
ZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoNDAsIDAuMTI1KSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCiBQQVNTICAgQXV0b21hdGUgMTogcmVmTm9kZVtnYWluXS5saW5lYXJSYW1w
VG9WYWx1ZUF0VGltZSgtMTAwLCAwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAot
RkFJTCBYIEF1dG9tYXRlIDE6IG1vZFtnYWluXS5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRp
bWUoLTEwMCwgMC4xMjUpIGluY29ycmVjdGx5IHRocmV3IFR5cGVFcnJvcjogInVuZGVmaW5lZCBp
cyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdtb2RbcGFyYW1bMF1dLm9mZnNldCcpIi4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgQXV0b21hdGUgMTogbW9k
W2dhaW5dLm9mZnNldC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgtMTAwLCAwLjEyNSkgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEF1dG9tYXRlIDE6IHJlZk5vZGVbZGV0dW5l
XS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgwLCAwLjEyNSkgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAotRkFJTCBYIEF1dG9tYXRlIDE6IG1vZFtkZXR1bmVdLm9mZnNldC5saW5lYXJSYW1w
VG9WYWx1ZUF0VGltZSgwLCAwLjEyNSkgaW5jb3JyZWN0bHkgdGhyZXcgVHlwZUVycm9yOiAidW5k
ZWZpbmVkIGlzIG5vdCBhbiBvYmplY3QgKGV2YWx1YXRpbmcgJ21vZFtwYXJhbVswXV0ub2Zmc2V0
JykiLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBBdXRvbWF0
ZSAxOiBtb2RbZGV0dW5lXS5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMCwgMC4xMjUp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb25uZWN0OiBtb2RbZnJlcXVl
bmN5XS5jb25uZWN0KHRzdE5vZGUuZnJlcXVlbmN5KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgQ29ubmVjdDogbW9kW1FdLmNvbm5lY3QodHN0Tm9kZS5RKSBkaWQgbm90IHRo
cm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29ubmVjdDogbW9kW2dhaW5dLmNvbm5lY3QodHN0
Tm9kZS5nYWluKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29ubmVjdDog
bW9kW2RldHVuZV0uY29ubmVjdCh0c3ROb2RlLmRldHVuZSkgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorUEFTUyAgIFN0YXJ0OiBtb2RbZnJlcXVlbmN5XS5zdGFydCgpIGRpZCBub3QgdGhy
b3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTdGFydDogbW9kW1FdLnN0YXJ0KCkgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFN0YXJ0OiBtb2RbZ2Fpbl0uc3RhcnQoKSBkaWQg
bm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU3RhcnQ6IG1vZFtkZXR1bmVdLnN0YXJ0
KCkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIEFsbCBrLXJhdGUgQXVkaW9Q
YXJhbXMgaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNDA5NSBkaWZmZXJlbnQgdmFsdWVz
KS4gCi1GQUlMIFggQWxsIGstcmF0ZSBBdWRpb1BhcmFtcyBkb2VzIG5vdCBlcXVhbCBbMCwwLjMz
ODczNzg3NTIyMzE1OTgsMC42Mzc0MjM4NzI5NDc2OTI5LDAuODYwNzQxOTcyOTIzMjc4OCwwLjk4
MjI4NzE2ODUwMjgwNzYsMC45ODc2ODgwNjQ1NzUxOTUzLDAuODc2MzA2Mjk1Mzk0ODk3NSwwLjY2
MTMxMTc0NTY0MzYxNTcsMC4zNjgxMjQzMDYyMDE5MzQ4LDAuMDMxNDEwNTAwNDA3MjE4OTMsLTAu
MzA5MDE3MDYyMTg3MTk0OCwtMC42MTI5MDcxMTE2NDQ3NDQ5LC0wLjg0NDMyNzgwNzQyNjQ1MjYs
LTAuOTc1OTE2NTY0NDY0NTY5MSwtMC45OTIxMTQ1NDM5MTQ3OTQ5LC0wLjg5MTAwNjIzMTMwNzk4
MzQuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCi0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJ
CUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbNjQwXQk5LjUxMDYwNzEyMzM3
NDkzOTBlLTEJNy44NjgxODQ0NDcyODg1MTMyZS0xCTEuNjQyNDIyNjc2MDg2NDI1OGUtMQkyLjA4
NzQyMjY5MjA5NTY2ODRlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzY0MV0JOS45OTUwNTg3
NzQ5NDgxMjAxZS0xCTEuMDA0MzcxMDQ3MDE5OTU4NWUrMAk0Ljg2NTE2OTUyNTE0NjQ4NDRlLTMJ
NC44NDM5OTYxOTAwMzUzNDA1ZS0zCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVs2NDJdCTkuMjk3
NzEwNjU3MTE5NzUxMGUtMQk5LjY5ODA3MTQ3OTc5NzM2MzNlLTEJNC4wMDM2MDgyMjY3NzYxMjMw
ZS0yCTQuMTI4MjUxOTI2Mjg4OTMzMmUtMgkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlbNjQzXQk3
LjUwMTAxODA0NzMzMjc2MzdlLTEJOC4yNjM2OTg4MTYyOTk0Mzg1ZS0xCTcuNjI2ODA3Njg5NjY2
NzQ4MGUtMgk5LjIyOTI5MDQ4OTg5OTY1OTRlLTIJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzY0
NF0JNC44MTc0MTM2ODc3MDU5OTM3ZS0xCTYuMDk5MDk4MzI0Nzc1Njk1OGUtMQkxLjI4MTY4NDYz
NzA2OTcwMjFlLTEJMi4xMDE0MzI5ODA0NTA5ODg1ZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAot
CS4uLmFuZCAzNDUxIG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAxLjA3MzA3NDM3MDYy
MjYzNDllKzAgYXQgaW5kZXggb2YgMTAzMi4KLQlbMTAzMl0JLTkuOTgwMjUxNzg5MDkzMDE3NmUt
MQk3LjUwNDkxOTE3MTMzMzMxMzBlLTIJMS4wNzMwNzQzNzA2MjI2MzQ5ZSswCTEuNDI5ODI4MDE4
Mjk2OTU2N2UrMQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlNYXggUmVsRXJyb3Igb2YgMi4zNzk5
NDU3MjUzNDg4NzQ4ZSs0IGF0IGluZGV4IG9mIDEyNTAuCi0JWzEyNTBdCS0xLjAwMDAwMDAwMDAw
MDAwMDBlKzAJLTQuMjAxNTk5OTQ5NzM4MDEwOGUtNQk5Ljk5OTU3OTg0MDAwNTAyNjJlLTEJMi4z
Nzk5NDU3MjUzNDg4NzQ4ZSs0CTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtBbGwgay1yYXRlIGlucHV0c10gMTcgb3V0
IG9mIDM2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiA1
IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K1BBU1MgICBBbGwgay1yYXRlIEF1ZGlvUGFyYW1zIGVxdWFscyBbMCwwLjMzODczNzg3NTIyMzE1
OTgsMC42Mzc0MjM4NzI5NDc2OTI5LDAuODYwNzQxOTcyOTIzMjc4OCwwLjk4MjI4NzE2ODUwMjgw
NzYsMC45ODc2ODgwNjQ1NzUxOTUzLDAuODc2MzA2Mjk1Mzk0ODk3NSwwLjY2MTMxMTc0NTY0MzYx
NTcsMC4zNjgxMjQzMDYyMDE5MzQ4LDAuMDMxNDEwNTAwNDA3MjE4OTMsLTAuMzA5MDE3MDYyMTg3
MTk0OCwtMC42MTI5MDcxMTE2NDQ3NDQ5LC0wLjg0NDMyNzgwNzQyNjQ1MjYsLTAuOTc1OTE2NTY0
NDY0NTY5MSwtMC45OTIxMTQ1NDM5MTQ3OTQ5LC0wLjg5MTAwNjIzMTMwNzk4MzQuLi5dIHdpdGgg
YW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxh
dGl2ZVRocmVzaG9sZCI6MH0uIAorUEFTUyA8IFtBbGwgay1yYXRlIGlucHV0c10gQWxsIGFzc2Vy
dGlvbnMgcGFzc2VkLiAodG90YWwgNDQgYXNzZXJ0aW9ucykgCitQQVNTICMgQVVESVQgVEFTSyBS
VU5ORVIgRklOSVNIRUQ6IDUgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLWRlbGF5LWNvbm5lY3Rp
b25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1y
YXRlLWRlbGF5LWNvbm5lY3Rpb25zLWV4cGVjdGVkLnR4dAppbmRleCA1YjQxNjE1YjZkZjZiNjA1
Yjg2ZjI1YzFiZjUwNDYyNGNlMmE2ZmM1Li4zZjQ3NzM0NDNjYmZhM2ZjNDUzODBkZDZhODk1ZDUx
ZGY1NzE3MmRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNl
L2stcmF0ZS1kZWxheS1jb25uZWN0aW9ucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtZGVsYXktY29ubmVjdGlvbnMtZXhwZWN0ZWQu
dHh0CkBAIC0xMyw4ICsxMyw4IEBAIFBBU1MgICB0ZXN0TW9kID0gbmV3IENvbnN0YW50U291cmNl
Tm9kZShjb250ZXh0KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4KIFBBU1MgICB0ZXN0TW9k
Lm9mZnNldC5zZXRWYWx1ZUF0VGltZSgwLCAwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CiBQQVNTICAgdGVzdE1vZC5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMS4xMjUsIDEp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICB0ZXN0TW9kLmNvbm5lY3QodGVz
dE5vZGUuZGVsYXlUaW1lKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCi1QQVNTICAgRXhw
ZWN0ZWQgay1yYXRlIGRlbGF5VGltZSBBdWRpb1BhcmFtIHdpdGggaW5wdXQgaXMgbm90IGNvbnN0
YW50bHkgMCAoY29udGFpbnMgNDA4OCBkaWZmZXJlbnQgdmFsdWVzKS4gCi1QQVNTICAgQWN0dWFs
IGstcmF0ZSBkZWxheVRpbWUgQXVkaW9QYXJhbSB3aXRoIGlucHV0IGlzIG5vdCBjb25zdGFudGx5
IDAgKGNvbnRhaW5zIDQwODggZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyAgIEV4cGVjdGVkIGst
cmF0ZSBkZWxheVRpbWUgQXVkaW9QYXJhbSB3aXRoIGlucHV0IGlzIG5vdCBjb25zdGFudGx5IDAg
KGNvbnRhaW5zIDQwOTUgZGlmZmVyZW50IHZhbHVlcykuIAorUEFTUyAgIEFjdHVhbCBrLXJhdGUg
ZGVsYXlUaW1lIEF1ZGlvUGFyYW0gd2l0aCBpbnB1dCBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyA0MDk1IGRpZmZlcmVudCB2YWx1ZXMpLiAKIFBBU1MgICBvdXRwdXRbMTI4LCAxNDNdIGNv
bnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAogRkFJTCBYIG91dHB1dFsxNDQsIDI1NV0gc2hv
dWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgZGlmZmVyZW50IGZyb20gMC4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTICAgay1yYXRlIGRlbGF5VGlt
ZSBBdWRpb1BhcmFtIHdpdGggaW5wdXQgZXF1YWxzIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRo
cmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFw
aS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2Uvay1yYXRlLW9zY2lsbGF0b3ItY29ubmVjdGlvbnMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUt
b3NjaWxsYXRvci1jb25uZWN0aW9ucy1leHBlY3RlZC50eHQKaW5kZXggYzkyNTU2ZTcxNDI4YjBh
MTIwMzQ2ZGE3ZmZhYzhmMDViMDJhYTNhZi4uZmQ4ODdhNDRmZTUzMTZkOTZlYjY4ZGRiOGVhNTg2
MmRmYjI0MjM3OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFj
ZS9rLXJhdGUtb3NjaWxsYXRvci1jb25uZWN0aW9ucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9rLXJhdGUtb3NjaWxsYXRvci1jb25uZWN0aW9u
cy1leHBlY3RlZC50eHQKQEAgLTE0LDcgKzE0LDcgQEAgUEFTUyAgIFRlc3QgMTogc3JjVGVzdC5m
cmVxdWVuY3kuYXV0b21hdGlvblJhdGUgPSAnay1yYXRlJyBkaWQgbm90IHRocm93IGFuIGV4Y2UK
IFBBU1MgICBUZXN0IDE6IG1vZEZyZXEub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDEwMCwgMCkgZGlk
IG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIFRlc3QgMTogbW9kRnJlcS5vZmZzZXQu
bGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMjAwMCwgMC4wNzgxMjUpIGRpZCBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uLiAKIFBBU1MgICBUZXN0IDE6IG1vZEZyZXEuY29ubmVjdChzcmNUZXN0LmZyZXF1
ZW5jeSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAotUEFTUyAgIGstcmF0ZSBmcmVxdWVu
Y3kgd2l0aCBpbnB1dCBlcXVhbHMgWzAsMC4wNzY2MjM4MjcyMTkwMDk0LDAuMTU1MDQ3MDI5MjU2
ODIwNjgsMC4yMzQ3MTc2MzczMDA0OTEzMywwLjMxNTAwMTQyODEyNzI4ODgsMC4zOTUxODExNzkw
NDY2MzA4NiwwLjQ3NDQ1ODg3MzI3MTk0MjE0LDAuNTUxOTU3NzI2NDc4NTc2NywwLjYyNjcyODc3
MzExNzA2NTQsMC42OTc3NTgwNzg1NzUxMzQzLDAuNzYzOTc3NDA4NDA5MTE4NywwLjgyNDI3NzA0
MzM0MjU5MDMsMC44Nzc1MjIxNzA1NDM2NzA3LDAuOTIyNTcxNTM5ODc4ODQ1MiwwLjk1ODMwMDIz
Mjg4NzI2ODEsMC45ODM2MjMzODU0MjkzODIzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAK
K1BBU1MgICBrLXJhdGUgZnJlcXVlbmN5IHdpdGggaW5wdXQgZXF1YWxzIFswLDAuMDc4NDU5MTU4
NTM5NzcyMDMsMC4xNTg3MzY5NDQxOTg2MDg0LDAuMjQwMjQxMjI5NTM0MTQ5MTcsMC4zMjIyOTE0
OTM0MTU4MzI1LDAuNDA0MTE5MDc0MzQ0NjM1LDAuNDg0ODY5MjQxNzE0NDc3NTQsMC41NjM2MDQ3
MTI0ODYyNjcxLDAuNjM5MzEzMTAxNzY4NDkzNywwLjcxMDkxNDM3MzM5NzgyNzEsMC43NzcyNzQ0
ODk0MDI3NzEsMC44MzcyMTkyOTc4ODU4OTQ4LDAuODg5NTUzMTg5Mjc3NjQ4OSwwLjkzMzA4MDkx
MTYzNjM1MjUsMC45NjY2MzEyOTMyOTY4MTQsMC45ODkwODYwMzE5MTM3NTczLi4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgPCBbVGVzdCAxXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCA4IGFzc2VydGlvbnMpIAogUEFTUyA+IFtUZXN0IDJdIGstcmF0ZSBkZXR1bmUgaW5w
dXQgCiBQQVNTICAgVGVzdCAyOiBzcmNSZWYuZGV0dW5lLmF1dG9tYXRpb25SYXRlID0gJ2stcmF0
ZScgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIApAQCAtMjQsNyArMjQsNyBAQCBQQVNTICAg
VGVzdCAyOiBzcmNUZXN0LmRldHVuZS5hdXRvbWF0aW9uUmF0ZSA9ICdrLXJhdGUnIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aQogUEFTUyAgIFRlc3QgMjogbW9kRGV0dW5lLm9mZnNldC5zZXRWYWx1
ZUF0VGltZSgwLCAwKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgVGVzdCAy
OiBtb2REZXR1bmUub2Zmc2V0LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDIwMDAsIDAuMDc4MTI1
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgVGVzdCAyOiBtb2REZXR1bmUu
Y29ubmVjdChzcmNUZXN0LmRldHVuZSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAotUEFT
UyAgIGstcmF0ZSBkZXR1bmUgd2l0aCBpbnB1dCBlcXVhbHMgWzAsMC4zMzExMDYzMDUxMjIzNzU1
LDAuNjI1MzM1Mjc2MTI2ODYxNiwwLjg0OTA4ODQzMDQwNDY2MzEsMC45NzY0OTc4Mjg5NjA0MTg3
LDAuOTkyNDgyOTAwNjE5NTA2OCwwLjg5NDYxNTY1MDE3NzAwMiwwLjY5MzU2MDEyMzQ0MzYwMzUs
MC40MTIwMDQyMzI0MDY2MTYyLDAuMDgyMTc1MzY2NTgwNDg2MywtMC4yNTc3OTA1MzU2ODg0MDAy
NywtMC41NjgyMzM2Njg4MDQxNjg3LC0wLjgxMjYwMDg1MTA1ODk2LC0wLjk2MTc4OTg0NjQyMDI4
ODEsLTAuOTk3Njc3ODAzMDM5NTUwOCwtMC45MTU0MDk2MjQ1NzY1Njg2Li4uXSB3aXRoIGFuIGVs
ZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVU
aHJlc2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgZGV0dW5lIHdpdGggaW5wdXQgZXF1YWxzIFsw
LDAuMzM4NzM3ODc1MjIzMTU5OCwwLjYzNzkwNDk0MjAzNTY3NSwwLjg2MTY5NDY5MzU2NTM2ODcs
MC45ODI5ODI4NzM5MTY2MjYsMC45ODY2OTAyODI4MjE2NTUzLDAuODcxNzQ1MTY5MTYyNzUwMiww
LjY1MTM4OTk1NjQ3NDMwNDIsMC4zNTE3NTUzODA2MzA0OTMxNiwwLjAwODg0Mzg5ODc3MzE5MzM2
LC0wLjMzNTc0MDM4NzQzOTcyNzgsLTAuNjM5ODE3MzU3MDYzMjkzNSwtMC44NjU4MDk0NDA2MTI3
OTMsLTAuOTg1NDMzOTM2MTE5MDc5NiwtMC45ODMzMjEzMDkwODk2NjA2LC0wLjg1OTA4NzQ2NzE5
MzYwMzUuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uIAogUEFTUyA8IFtUZXN0IDJdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDggYXNzZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgM10g
ay1yYXRlIGZyZXF1ZW5jeSBpbnB1dCB3aXRoIGEtcmF0ZSBkZXR1bmUgCiBQQVNTICAgVGVzdCAz
OiBzcmNSZWYuZnJlcXVlbmN5LmF1dG9tYXRpb25SYXRlID0gJ2stcmF0ZScgZGlkIG5vdCB0aHJv
dyBhbiBleGNlcHRpb24uIApAQCAtMzgsNyArMzgsNyBAQCBQQVNTICAgVGVzdCAzOiBzcmNUZXN0
LmRldHVuZS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgtMjAwMCwgMC4wNzgxMjUpIGRpZCBub3Qg
dAogUEFTUyAgIFRlc3QgMzogbW9kRnJlcS5vZmZzZXQuc2V0VmFsdWVBdFRpbWUoMTAwLCAwKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgVGVzdCAzOiBtb2RGcmVxLm9mZnNl
dC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgyMDAwLCAwLjA3ODEyNSkgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAogUEFTUyAgIFRlc3QgMzogbW9kRnJlcS5jb25uZWN0KHNyY1Rlc3QuZnJl
cXVlbmN5KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCi1QQVNTICAgay1yYXRlIGZyZXF1
ZW5jeSBpbnB1dCB3aXRoIGEtcmF0ZSBkZXR1bmUgZXF1YWxzIFswLDAuMDc2NjIzODI3MjE5MDA5
NCwwLjE1NDkwNjMzMjQ5MjgyODM3LDAuMjM0Mjk0NjIzMTM2NTIwMzksMC4zMTQxNjAwMTkxNTkz
MTcsMC4zOTM3OTk2MDI5ODUzODIxLDAuNDcyNDM3MzUxOTQyMDYyNCwwLjU0OTIyOTM4MzQ2ODYy
NzksMC42MjMyNjkzMTk1MzQzMDE4LDAuNjkzNTk3MTk3NTMyNjUzOCwwLjc1OTIwOTAzNjgyNzA4
NzQsMC44MTkwNjg5MDg2OTE0MDYyLDAuODcyMTI2NTc5Mjg0NjY4LDAuOTE3MzMxOTMzOTc1MjE5
NywwLjk1MzY1NTgzODk2NjM2OTYsMC45ODAxMTI0MzM0MzM1MzI3Li4uXSB3aXRoIGFuIGVsZW1l
bnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LiAKK1BBU1MgICBrLXJhdGUgZnJlcXVlbmN5IGlucHV0IHdpdGggYS1yYXRlIGRl
dHVuZSBlcXVhbHMgWzAsMC4wNzg0NTkxNTg1Mzk3NzIwMywwLjE1ODU5MjkzOTM3NjgzMTA1LDAu
MjM5ODA4NTU5NDE3NzI0NiwwLjMyMTQzMjE0MzQ0OTc4MzMsMC40MDI3MTAwODAxNDY3ODk1NSww
LjQ4MjgxMjQwNDYzMjU2ODM2LDAuNTYwODM2OTcwODA2MTIxOCwwLjYzNTgxNzExMDUzODQ4Mjcs
MC43MDY3MzA0ODQ5NjI0NjM0LDAuNzcyNTExNjAxNDQ4MDU5MSwwLjgzMjA2NTQ2MzA2NjEwMTEs
MC44ODQyODUwOTIzNTM4MjA4LDAuOTI4MDcwNDI1OTg3MjQzNywwLjk2MjM1MTMyMjE3NDA3MjMs
MC45ODYxMTA0NDg4MzcyODAzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2Yg
eyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgPCBb
VGVzdCAzXSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxMiBhc3NlcnRpb25zKSAKIFBB
U1MgPiBbVGVzdCA0XSBhLXJhdGUgZnJlcXVlbmN5IHdpdGggay1yYXRlIGRldHVuZSBpbnB1dCAK
IFBBU1MgICBUZXN0IDQ6IHNyY1JlZi5mcmVxdWVuY3kuc2V0VmFsdWVBdFRpbWUoMTAwLCAwKSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCkBAIC01Miw3ICs1Miw3IEBAIFBBU1MgICBUZXN0
IDQ6IHNyY1Rlc3QuZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKDIwMDAsIDAuMDc4
MTI1KSBkaWQgbm90CiBQQVNTICAgVGVzdCA0OiBtb2REZXR1bmUub2Zmc2V0LnNldFZhbHVlQXRU
aW1lKDAsIDApIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKIFBBU1MgICBUZXN0IDQ6IG1v
ZERldHVuZS5vZmZzZXQubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoLTIwMDAsIDAuMDc4MTI1KSBk
aWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCiBQQVNTICAgVGVzdCA0OiBtb2REZXR1bmUuY29u
bmVjdChzcmNUZXN0LmRldHVuZSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAotUEFTUyAg
IGstcmF0ZSBkZXR1bmUgaW5wdXQgd2l0aCBhLXJhdGUgZnJlcXVlbmN5IGVxdWFscyBbMCwwLjA3
NjYyMzgyNzIxOTAwOTQsMC4xNTQ5MDYzMzI0OTI4MjgzNywwLjIzNDI5NDYyMzEzNjUyMDM5LDAu
MzE0MTYwMDE5MTU5MzE3LDAuMzkzNzk5NjAyOTg1MzgyMSwwLjQ3MjQzNzM1MTk0MjA2MjQsMC41
NDkyMjkzODM0Njg2Mjc5LDAuNjIzMjY5MzE5NTM0MzAxOCwwLjY5MzU5NzE5NzUzMjY1MzgsMC43
NTkyMDkwMzY4MjcwODc0LDAuODE5MDY4OTA4NjkxNDA2MiwwLjg3MjEyNjU3OTI4NDY2OCwwLjkx
NzMzMTkzMzk3NTIxOTcsMC45NTM2NTU4Mzg5NjYzNjk2LDAuOTgwMTEyNDMzNDMzNTMyNy4uLl0g
d2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgay1yYXRlIGRldHVuZSBpbnB1dCB3aXRo
IGEtcmF0ZSBmcmVxdWVuY3kgZXF1YWxzIFswLDAuMDc4NDU5MTU4NTM5NzcyMDMsMC4xNTg1OTI5
MzkzNzY4MzEwNSwwLjIzOTgwODU1OTQxNzcyNDYsMC4zMjE0MzIxNDM0NDk3ODMzLDAuNDAyNzEw
MDgwMTQ2Nzg5NTUsMC40ODI4MTI0MDQ2MzI1NjgzNiwwLjU2MDgzNjk3MDgwNjEyMTgsMC42MzU4
MTcxMTA1Mzg0ODI3LDAuNzA2NzMwNDg0OTYyNDYzNCwwLjc3MjUxMTYwMTQ0ODA1OTEsMC44MzIw
NjU0NjMwNjYxMDExLDAuODg0Mjg1MDkyMzUzODIwOCwwLjkyODA3MDQyNTk4NzI0MzcsMC45NjIz
NTEzMjIxNzQwNzIzLDAuOTg2MTEwNDQ4ODM3MjgwMy4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2Ug
dG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjow
fS4gCiBQQVNTIDwgW1Rlc3QgNF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMTIgYXNz
ZXJ0aW9ucykgCiBQQVNTID4gW1Rlc3QgNV0gay1yYXRlIGlucHV0cyBmb3IgZnJlcXVlbmN5IGFu
ZCBkZXR1bmUgCiBQQVNTICAgVGVzdCA1OiBzcmNSZWYuZnJlcXVlbmN5LmF1dG9tYXRpb25SYXRl
ID0gJ2stcmF0ZScgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIApAQCAtNjksNyArNjksNyBA
QCBQQVNTICAgVGVzdCA1OiBtb2REZXR1bmUub2Zmc2V0LnNldFZhbHVlQXRUaW1lKDAsIDApIGRp
ZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLgogUEFTUyAgIFRlc3QgNTogbW9kRGV0dW5lLm9mZnNl
dC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgtMjAwMCwgMC4wNzgxMjUpIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKIFBBU1MgICBUZXN0IDU6IG1vZEZyZXEuY29ubmVjdChzcmNUZXN0LmZy
ZXF1ZW5jeSkgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAogUEFTUyAgIFRlc3QgNTogbW9k
RGV0dW5lLmNvbm5lY3Qoc3JjVGVzdC5kZXR1bmUpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKLVBBU1MgICBrLXJhdGUgaW5wdXRzIGZvciBib3RoIGZyZXF1ZW5jeSBhbmQgZGV0dW5lIGVx
dWFscyBbMCwwLjA3NjYyMzgyNzIxOTAwOTQsMC4xNTQ5MDYzMzI0OTI4MjgzNywwLjIzNDI5NDYy
MzEzNjUyMDM5LDAuMzE0MTYwMDE5MTU5MzE3LDAuMzkzNzk5NjAyOTg1MzgyMSwwLjQ3MjQzNzM1
MTk0MjA2MjQsMC41NDkyMjkzODM0Njg2Mjc5LDAuNjIzMjY5MzE5NTM0MzAxOCwwLjY5MzU5NzE5
NzUzMjY1MzgsMC43NTkyMDkwMzY4MjcwODc0LDAuODE5MDY4OTA4NjkxNDA2MiwwLjg3MjEyNjU3
OTI4NDY2OCwwLjkxNzMzMTkzMzk3NTIxOTcsMC45NTM2NTU4Mzg5NjYzNjk2LDAuOTgwMTEyNDMz
NDMzNTMyNy4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVU
aHJlc2hvbGQiOjAsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCitQQVNTICAgay1yYXRlIGlucHV0
cyBmb3IgYm90aCBmcmVxdWVuY3kgYW5kIGRldHVuZSBlcXVhbHMgWzAsMC4wNzg0NTkxNTg1Mzk3
NzIwMywwLjE1ODU5MjkzOTM3NjgzMTA1LDAuMjM5ODA4NTU5NDE3NzI0NiwwLjMyMTQzMjE0MzQ0
OTc4MzMsMC40MDI3MTAwODAxNDY3ODk1NSwwLjQ4MjgxMjQwNDYzMjU2ODM2LDAuNTYwODM2OTcw
ODA2MTIxOCwwLjYzNTgxNzExMDUzODQ4MjcsMC43MDY3MzA0ODQ5NjI0NjM0LDAuNzcyNTExNjAx
NDQ4MDU5MSwwLjgzMjA2NTQ2MzA2NjEwMTEsMC44ODQyODUwOTIzNTM4MjA4LDAuOTI4MDcwNDI1
OTg3MjQzNywwLjk2MjM1MTMyMjE3NDA3MjMsMC45ODYxMTA0NDg4MzcyODAzLi4uXSB3aXRoIGFu
IGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LiAKIFBBU1MgPCBbVGVzdCA1XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAxNSBhc3NlcnRpb25zKSAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hF
RDogNSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1hdWRpb3BhcmFtLWludGVyZmFjZS9yZXRyb3NwZWN0aXZlLWV4cG9uZW50aWFsUmFtcFRvVmFs
dWVBdFRpbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFj
ZS9yZXRyb3NwZWN0aXZlLWV4cG9uZW50aWFsUmFtcFRvVmFsdWVBdFRpbWUtZXhwZWN0ZWQudHh0
CmluZGV4IDhlZWEzOWYzZWRlMjU0YzA4OWI4NjA5MWE5ZTczOGY1Y2NjZTZiNTMuLmQwNDM2NTVh
M2U5OWRmYzQ2OGI0MDgzNTBmMGU2OGVjYjA3YzgwZjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2UvcmV0cm9zcGVjdGl2ZS1leHBvbmVudGlhbFJhbXBUb1Zh
bHVlQXRUaW1lLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50
ZXJmYWNlL3JldHJvc3BlY3RpdmUtZXhwb25lbnRpYWxSYW1wVG9WYWx1ZUF0VGltZS1leHBlY3Rl
ZC50eHQKQEAgLTEsMTQgKzEsMjkgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21p
c2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZh
bGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCBy
ZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRlc3QiIAogUEFTUyBB
dWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3RdIFRlc3QgZXhwb25lbnRpYWxSYW1wVG9WYWx1ZSB3
aXRoIGVuZCB0aW1lIGluIHRoZSBwYXN0IAotUEFTUyAgIFRlc3RbMDoxMjddIGNvbnRhaW5zIG9u
bHkgdGhlIGNvbnN0YW50IDEuIAotUEFTUyAgIFJlZmVyZW5jZVswOjEyN10gY29udGFpbnMgb25s
eSB0aGUgY29uc3RhbnQgMS4gCi1QQVNTICAgVGVzdFsxMjg6XSBpcyBpZGVudGljYWwgdG8gdGhl
IGFycmF5IFsxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLi4uXS4gCi1QQVNTIDwgW3Rl
c3RdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykgCi1QQVNTICMg
QVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCitG
QUlMIFggVGVzdFswOjEyN106IEV4cGVjdGVkIDEgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEy
OCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAuMTAwODY1Mzc4OTc1
ODY4MjMKKwlbMV0JMC4xMDA4Nzg5NTM5MzM3MTU4MgorCVsyXQkwLjEwMDg5MjUyODg5MTU2MzQy
CisJWzNdCTAuMTAwOTA2MTExMjk5OTkxNjEKKwkuLi5hbmQgMTI0IG1vcmUgZXJyb3JzLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBSZWZlcmVuY2VbMDoxMjdd
OiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBlY3RlZCB2YWx1
ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQkwLjEwMDAwMDAwMTQ5MDExNjEyCisJWzFdCTAuMTAw
MDEzNTE2ODQzMzE4OTQKKwlbMl0JMC4xMDAwMjcwMzk2NDcxMDIzNgorCVszXQkwLjEwMDA0MDU2
MjQ1MDg4NTc3CisJLi4uYW5kIDEyNCBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitGQUlMIFggVGVzdFsxMjg6XSBleHBlY3RlZCB0byBiZSBlcXVhbCB0
byB0aGUgYXJyYXkgWzAuMTAxNzQ1MTUwOTgzMzMzNTksMC4xMDE3NTg5MDQ3NTUxMTU1MSwwLjEw
MTc3MjY1ODUyNjg5NzQzLDAuMTAxNzg2NDE5NzQ5MjU5OTUsMC4xMDE4MDAxODA5NzE2MjI0Nyww
LjEwMTgxMzk0MjE5Mzk4NDk5LDAuMTAxODI3NzAzNDE2MzQ3NSwwLjEwMTg0MTQ3MjA4OTI5MDYy
LDAuMTAxODU1MjQwNzYyMjMzNzMsMC4xMDE4NjkwMDk0MzUxNzY4NSwwLjEwMTg4Mjc3ODEwODEx
OTk2LDAuMTAxODk2NTU0MjMxNjQzNjgsMC4xMDE5MTAzMzAzNTUxNjczOSwwLjEwMTkyNDEwNjQ3
ODY5MTEsMC4xMDE5Mzc4ODI2MDIyMTQ4MSwwLjEwMTk1MTY2NjE3NjMxOTEyLi4uXSBidXQgZGlm
ZmVycyBpbiAxNjEyOCBwbGFjZXM6CisJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKKwlbMF0JMS4w
MjYxODY3MTk1MzY3ODEzZS0xCTEuMDE3NDUxNTA5ODMzMzM1OWUtMQorCVsxXQkxLjAyNjMyNDg1
MzMwMTA0ODNlLTEJMS4wMTc1ODkwNDc1NTExNTUxZS0xCisJWzJdCTEuMDI2NDYyOTg3MDY1MzE1
MmUtMQkxLjAxNzcyNjU4NTI2ODk3NDNlLTEKKwlbM10JMS4wMjY2MDExMjA4Mjk1ODIyZS0xCTEu
MDE3ODY0MTk3NDkyNTk5NWUtMQorCS4uLmFuZCAxNjEyNCBtb3JlIGVycm9ycy4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIDwgW3Rlc3RdIDMgb3V0IG9mIDMgYXNz
ZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEgdGFza3Mgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL3JldHJvc3BlY3RpdmUtbGlu
ZWFyUmFtcFRvVmFsdWVBdFRpbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3Bh
cmFtLWludGVyZmFjZS9yZXRyb3NwZWN0aXZlLWxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lLWV4cGVj
dGVkLnR4dAppbmRleCBmYjQwOTQ3OGQ1MzhkOWY0YzkzMGZmY2JlODM3YTllYTRiNmE3YmY5Li4y
NWY2YmZlYjA4MmI3ZTJmNzkzYzQ4YjU0NTEyOTNlYWE4NGE2MjhjIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL3JldHJvc3BlY3RpdmUtbGluZWFyUmFtcFRv
VmFsdWVBdFRpbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1p
bnRlcmZhY2UvcmV0cm9zcGVjdGl2ZS1saW5lYXJSYW1wVG9WYWx1ZUF0VGltZS1leHBlY3RlZC50
eHQKQEAgLTEsMTQgKzEsMjkgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2Ug
UmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWpl
Y3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRlc3QiIAogUEFTUyBBdWRp
dCByZXBvcnQgCiBQQVNTID4gW3Rlc3RdIFRlc3QgbGluZWFyUmFtcFRvVmFsdWUgd2l0aCBlbmQg
dGltZSBpbiB0aGUgcGFzdCAKLVBBU1MgICBUZXN0WzA6MTI3XSBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAxLiAKLVBBU1MgICBSZWZlcmVuY2VbMDoxMjddIGNvbnRhaW5zIG9ubHkgdGhlIGNv
bnN0YW50IDEuIAotUEFTUyAgIFRlc3RbMTI4Ol0gaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBb
MSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMS4uLl0uIAotUEFTUyA8IFt0ZXN0XSBBbGwg
YXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAotUEFTUyAjIEFVRElUIFRB
U0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorRkFJTCBYIFRl
c3RbMDoxMjddOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBl
Y3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQkwLjEwMzEzNzI2MjE2NTU0NjQyCisJ
WzFdCTAuMTAzMTg2MjcyMDg0NzEyOTgKKwlbMl0JMC4xMDMyMzUyOTY5MDUwNDA3NAorCVszXQkw
LjEwMzI4NDMxNDI3NDc4NzkKKwkuLi5hbmQgMTI0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBSZWZlcmVuY2VbMDoxMjddOiBFeHBlY3Rl
ZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjggdW5leHBlY3RlZCB2YWx1ZXM6IAorCUlu
ZGV4CUFjdHVhbAorCVswXQkwLjEwMDAwMDAwMTQ5MDExNjEyCisJWzFdCTAuMTAwMDQ5MjEyNTc0
OTU4OAorCVsyXQkwLjEwMDA5ODQzMTExMDM4MjA4CisJWzNdCTAuMTAwMTQ3NjQyMTk1MjI0NzYK
KwkuLi5hbmQgMTI0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK0ZBSUwgWCBUZXN0WzEyODpdIGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJh
eSBbMC4xMDYyOTkyMTQwNjUwNzQ5MiwwLjEwNjM0ODQyNTE0OTkxNzYsMC4xMDYzOTc2NDM2ODUz
NDA4OCwwLjEwNjQ0Njg1NDc3MDE4MzU2LDAuMTA2NDk2MDY1ODU1MDI2MjUsMC4xMDY1NDUyODQz
OTA0NDk1MiwwLjEwNjU5NDQ4ODAyNDcxMTYxLDAuMTA2NjQzNzA2NTYwMTM0ODksMC4xMDY2OTI5
MTAxOTQzOTY5NywwLjEwNjc0MjEyODcyOTgyMDI1LDAuMTA2NzkxMzM5ODE0NjYyOTMsMC4xMDY4
NDA1NTA4OTk1MDU2MiwwLjEwNjg4OTc2MTk4NDM0ODMsMC4xMDY5Mzg5NzMwNjkxOTA5OCwwLjEw
Njk4ODE5MTYwNDYxNDI2LDAuMTA3MDM3NDAyNjg5NDU2OTQuLi5dIGJ1dCBkaWZmZXJzIGluIDE2
MTI4IHBsYWNlczoKKwlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAorCVswXQkxLjA5NDExNzY4NjE1
MjQ1ODJlLTEJMS4wNjI5OTIxNDA2NTA3NDkyZS0xCisJWzFdCTEuMDk0NjA3ODU5ODQ5OTI5OGUt
MQkxLjA2MzQ4NDI1MTQ5OTE3NjBlLTEKKwlbMl0JMS4wOTUwOTgwMzM1NDc0MDE0ZS0xCTEuMDYz
OTc2NDM2ODUzNDA4OGUtMQorCVszXQkxLjA5NTU4ODI4MTc1MDY3OTBlLTEJMS4wNjQ0Njg1NDc3
MDE4MzU2ZS0xCisJLi4uYW5kIDE2MTI0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgPCBbdGVzdF0gMyBvdXQgb2YgMyBhc3NlcnRpb25zIHdl
cmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgIyBB
VURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMSB0YXNrcyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlv
LWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2UvcmV0cm9zcGVjdGl2ZS1zZXRUYXJnZXRBdFRp
bWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9yZXRy
b3NwZWN0aXZlLXNldFRhcmdldEF0VGltZS1leHBlY3RlZC50eHQKaW5kZXggNGEzYTQxYjJhMDYw
YjY4YzFhZjIwMzE0ZWRiNjFjMTFjY2U5ZGM0NC4uZTZiODY4NjVlMGZjMWNjMzhiNDllYTNmYThi
OTczYjYyOTg2ODcwMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVy
ZmFjZS9yZXRyb3NwZWN0aXZlLXNldFRhcmdldEF0VGltZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9yZXRyb3NwZWN0aXZlLXNldFRhcmdldEF0
VGltZS1leHBlY3RlZC50eHQKQEAgLTEsMTQgKzEsMjMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5o
YW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9
IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4K
IAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRl
c3QiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3RdIFRlc3Qgc2V0VGFyZ2V0QXRU
aW1lIHdpdGggc3RhcnQgdGltZSBpbiB0aGUgcGFzdCAKLVBBU1MgICBUZXN0WzA6MTI3XSBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiAKLVBBU1MgICBSZWZlcmVuY2VbMDoxMjddIGNvbnRh
aW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuIAotUEFTUyAgIFRlc3RbMTI4Ol0gaXMgaWRlbnRpY2Fs
IHRvIHRoZSBhcnJheSBbMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMS4uLl0uIAotUEFT
UyA8IFt0ZXN0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAzIGFzc2VydGlvbnMpIAot
UEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVs
bHkuIAorRkFJTCBYIFRlc3RbMDoxMjddOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBm
b3VuZCAxMjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQkwLjk5OTQ1
MDg2MjQwNzY4NDMKKwlbMl0JMC45OTg5MDIwMjI4Mzg1OTI1CisJWzNdCTAuOTk4MzUzNTQwODk3
MzY5NAorCVs0XQkwLjk5NzgwNTQxNjU4NDAxNDkKKwkuLi5hbmQgMTIzIG1vcmUgZXJyb3JzLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBSZWZlcmVuY2VbMDox
MjddOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjcgdW5leHBlY3RlZCB2
YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQkwLjk5OTQ1MDg2MjQwNzY4NDMKKwlbMl0JMC45
OTg5MDIwMjI4Mzg1OTI1CisJWzNdCTAuOTk4MzUzNTQwODk3MzY5NAorCVs0XQkwLjk5NzgwNTQx
NjU4NDAxNDkKKwkuLi5hbmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBUZXN0WzEyODpdIGlzIGlkZW50aWNhbCB0byB0aGUgYXJy
YXkgWzAuOTMyMzY0MDQ2NTczNjM4OSwwLjkzMTg1NjE1NTM5NTUwNzgsMC45MzEzNDg1NjIyNDA2
MDA2LDAuOTMwODQxMzI2NzEzNTYyLDAuOTMwMzM0Mzg5MjA5NzQ3MywwLjkyOTgyNzc0OTcyOTE1
NjUsMC45MjkzMjE0MDgyNzE3ODk2LDAuOTI4ODE1MzY0ODM3NjQ2NSwwLjkyODMwOTY3OTAzMTM3
MjEsMC45Mjc4MDQyOTEyNDgzMjE1LDAuOTI3Mjk5MjAxNDg4NDk0OSwwLjkyNjc5NDQwOTc1MTg5
MjEsMC45MjYyODk5MTYwMzg1MTMyLDAuOTI1Nzg1NzIwMzQ4MzU4MiwwLjkyNTI4MTg4MjI4NjA3
MTgsMC45MjQ3NzgzNDIyNDcwMDkzLi4uXS4gCitGQUlMIDwgW3Rlc3RdIDIgb3V0IG9mIDMgYXNz
ZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEgdGFza3Mgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL3JldHJvc3BlY3RpdmUtc2V0
VmFsdWVBdFRpbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVy
ZmFjZS9yZXRyb3NwZWN0aXZlLXNldFZhbHVlQXRUaW1lLWV4cGVjdGVkLnR4dAppbmRleCA4NzE4
ZTA5ZjdhNmM3YjQ0ZTE1MzFkYTU2ZDNmY2JhY2M2MjM4OTQyLi4xMWM3NjBkNzQ4MDVlZDhiNDZm
NDE0NWRkMjY3YzYwNWFhODkzNmYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFy
YW0taW50ZXJmYWNlL3JldHJvc3BlY3RpdmUtc2V0VmFsdWVBdFRpbWUtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2UvcmV0cm9zcGVjdGl2ZS1zZXRW
YWx1ZUF0VGltZS1leHBlY3RlZC50eHQKQEAgLTEsMTQgKzEsMjkgQEAKLUNPTlNPTEUgTUVTU0FH
RTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9i
amVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVz
c2FnZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBz
dGF0ZS4KIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRp
bmcgInRlc3QiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3RdIFRlc3Qgc2V0VmFs
dWVBdFRpbWUgd2l0aCBzdGFydFRpbWUgaW4gdGhlIHBhc3QgCi1QQVNTICAgVGVzdFswOjEyN10g
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMS4gCi1QQVNTICAgUmVmZXJlbmNlWzA6MTI3XSBj
b250YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiAKLVBBU1MgICBUZXN0WzEyODpdIGlzIGlkZW50
aWNhbCB0byB0aGUgYXJyYXkgWzEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEuLi5dLiAK
LVBBU1MgPCBbdGVzdF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25z
KSAKLVBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSB0YXNrcyByYW4gc3VjY2Vz
c2Z1bGx5LiAKK0ZBSUwgWCBUZXN0WzA6MTI3XTogRXhwZWN0ZWQgMSBmb3IgYWxsIHZhbHVlcyBi
dXQgZm91bmQgMTI4IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JNjMu
NzQ5MDIzNDM3NQorCVsxXQk2NC43NDUxMDE5Mjg3MTA5NAorCVsyXQk2NS43NDExODA0MTk5MjE4
OAorCVszXQk2Ni43MzcyNTg5MTExMzI4MQorCS4uLmFuZCAxMjQgbW9yZSBlcnJvcnMuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIFJlZmVyZW5jZVswOjEyN106
IEV4cGVjdGVkIDEgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNyB1bmV4cGVjdGVkIHZhbHVl
czogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAKKwlbMl0JMgorCVszXQkzCisJWzRdCTQKKwkuLi5h
bmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
K0ZBSUwgWCBUZXN0WzEyODpdIGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMTI4
LDEyOSwxMzAsMTMxLDEzMiwxMzMsMTM0LDEzNSwxMzYsMTM3LDEzOCwxMzksMTQwLDE0MSwxNDIs
MTQzLi4uXSBidXQgZGlmZmVycyBpbiAxNjEyOCBwbGFjZXM6CisJSW5kZXgJQWN0dWFsCQkJRXhw
ZWN0ZWQKKwlbMF0JMS45MTI0NzA3MDMxMjUwMDAwZSsyCTEuMjgwMDAwMDAwMDAwMDAwMGUrMgor
CVsxXQkxLjkyMjQzMTQ4ODAzNzEwOTRlKzIJMS4yOTAwMDAwMDAwMDAwMDAwZSsyCisJWzJdCTEu
OTMyMzkyMjcyOTQ5MjE4OGUrMgkxLjMwMDAwMDAwMDAwMDAwMDBlKzIKKwlbM10JMS45NDIzNTMw
NTc4NjEzMjgxZSsyCTEuMzEwMDAwMDAwMDAwMDAwMGUrMgorCS4uLmFuZCAxNjEyNCBtb3JlIGVy
cm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIDwgW3Rlc3Rd
IDMgb3V0IG9mIDMgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0
IG9mIDEgdGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL3Jl
dHJvc3BlY3RpdmUtc2V0VmFsdWVDdXJ2ZUF0VGltZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLWF1ZGlvcGFyYW0taW50ZXJmYWNlL3JldHJvc3BlY3RpdmUtc2V0VmFsdWVDdXJ2ZUF0VGlt
ZS1leHBlY3RlZC50eHQKaW5kZXggNGUxZjJjYTMwM2YwOGI2ZDM5MGZiODU1YmM4NTJhY2E5Yzg0
ZWE2Yi4uNjVkNTk3NDM0OWM4MjRhYzExMzBlNTc4NjA1YTdkZTRiYjJiM2YzMSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9yZXRyb3NwZWN0aXZlLXNldFZh
bHVlQ3VydmVBdFRpbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJh
bS1pbnRlcmZhY2UvcmV0cm9zcGVjdGl2ZS1zZXRWYWx1ZUN1cnZlQXRUaW1lLWV4cGVjdGVkLnR4
dApAQCAtMSw2ICsxLDMgQEAKLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVq
ZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rp
b246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElUIFRB
U0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRlc3QiIApAQCAtOCw3ICs1LDEz
IEBAIFBBU1MgQXVkaXQgcmVwb3J0CiBQQVNTID4gW3Rlc3RdIFRlc3QgU2V0VmFsdWVDdXJ2ZSB3
aXRoIHN0YXJ0IHRpbWUgaW4gdGhlIHBhc3QgCiBQQVNTICAgVGVzdFswOjEyN10gY29udGFpbnMg
b25seSB0aGUgY29uc3RhbnQgMS4gCiBQQVNTICAgUmVmZXJlbmNlWzA6MTI3XSBjb250YWlucyBv
bmx5IHRoZSBjb25zdGFudCAxLiAKLVBBU1MgICBUZXN0WzEyODpdIGlzIGlkZW50aWNhbCB0byB0
aGUgYXJyYXkgWzEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEuLi5dLiAKLVBBU1MgPCBb
dGVzdF0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMyBhc3NlcnRpb25zKSAKLVBBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAK
K0ZBSUwgWCBUZXN0WzEyODpdIGV4cGVjdGVkIHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMSwx
LDEsMSwxLDEsMSwxLDEsMSwxLDEsMSwxLDEsMS4uLl0gYnV0IGRpZmZlcnMgaW4gNjQgcGxhY2Vz
OgorCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCisJWzM5MDRdCTEuMDAwMDAwMDE0OTAxMTYxMmUt
MQkxLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbMzkwNV0JMS4wMDAwMDAwMTQ5MDExNjEyZS0xCTEu
MDAwMDAwMDAwMDAwMDAwMGUrMAorCVszOTA2XQkxLjAwMDAwMDAxNDkwMTE2MTJlLTEJMS4wMDAw
MDAwMDAwMDAwMDAwZSswCisJWzM5MDddCTEuMDAwMDAwMDE0OTAxMTYxMmUtMQkxLjAwMDAwMDAw
MDAwMDAwMDBlKzAKKwkuLi5hbmQgNjAgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFt0ZXN0XSAxIG91dCBvZiAzIGFzc2VydGlvbnMgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIG91dCBvZiAxIHRhc2tzIHdlcmUgZmFpbGVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1iaXF1YWRmaWx0ZXJub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlw
cGVyaW5nLWV4cGVjdGVkLnR4dAppbmRleCA1Mjg4MmQyODM1YzUyYzBlMzgzNzBmNGVkZmUwNDQ4
MDEzYWRjYzNiLi4wZTU5NjQxOTcwMmMxMmUyNDI4ODI2NjEzZTY5MTcwMjZiNGY1MTI4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUtaW50ZXJmYWNlL25vLWRlemlw
cGVyaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWJpcXVhZGZpbHRlcm5vZGUt
aW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVjdGVkLnR4dApAQCAtMSwxNiArMSwzIEBACi1D
T05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRl
RXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FH
RTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9i
amVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQg
UHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFu
IGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVj
dGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlk
U3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBN
RVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2Ug
UmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IElu
dmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05T
T0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJy
b3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTog
VW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2Fn
ZSA9IFVuaGFuZGxlZCByZWplY3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4KIAogUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcg
IlRlc3QgMCIgCkBAIC0yNCwxOCArMTEsMTggQEAgUEFTUyA+IFtUZXN0IDBdIE5vIGRlemlwcGVy
aW5nIGZvciBmcmVxdWVuY3kKIFBBU1MgICBBdCB0aW1lIDAsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0
byAzNTAuIAogUEFTUyAgIEF0IHRpbWUgMC4wMTU2MjUsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byA4
MDAuIAogUEFTUyAgIEF0IHRpbWUgMC4wNTQ2ODc1LCBmcmVxdWVuY3kgaXMgZXF1YWwgdG8gMjAw
LiAKLUZBSUwgWCBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFsw
LDAuMTc0MTgzMDcwNjU5NjM3NDUsMC4zNTUyMDQzMTM5OTM0NTQsMC41MzY0ODY3NDQ4ODA2NzYz
LDAuNzExNDA1ODczMjk4NjQ1LDAuODczNTA2NjY1MjI5Nzk3NCwxLjAxNjcxMzg1NzY1MDc1Njgs
MS4xMzU1MjgzMjYwMzQ1NDYsMS4yMjUyMDI3OTg4NDMzODM4LDEuMjgxODk2MjMzNTU4NjU0OCwx
LjMwMjc5NzE5ODI5NTU5MzMsMS4yODYyMTM5OTQwMjYxODQsMS4yMzE2MzM5MDE1OTYwNjkzLDEu
MTM5NzQxNzc4MzczNzE4MywxLjAxMjQwNTI3NjI5ODUyMywwLjg1MjYyMjE1MTM3NDgxNjkuLi5d
IHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjow
LjAwMDAwMzAzOTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCBPdXRwdXQgZnJvbSBm
cmVxdWVuY3kgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLjc4NjM1NjIxMDcwODYxODIsMC45Njc2
NjE4NTc2MDQ5ODA1LDEuMTM1NzcyNDY2NjU5NTQ2LDEuMjg1ODI0Nzc1Njk1ODAwOCwxLjQxMzM5
Mjc4MjIxMTMwMzcsMS41MTQ2MTc2ODE1MDMyOTYsMS41ODYzMjMxNDIwNTE2OTY4LDEuNjI2MTEx
MjY4OTk3MTkyNCwxLjYzMjQzNTY3OTQzNTczLDEuNjA0NjUwODU1MDY0MzkyLDEuNTQzMDM2NTgw
MDg1NzU0NCwxLjQ0ODc5NDEyNjUxMDYyMDEsMS4zMjQwMTg5NTUyMzA3MTMsMS4xNzE2NDUwNDUy
ODA0NTY1LDAuOTk1MzY3NjQ2MjE3MzQ2MiwwLjc5OTU0MjEyOTAzOTc2NDQuLi5dIHdpdGggYW4g
ZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMzAz
OTksInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJz
RXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsyNTZdCS0xLjM1MTQzNTE4NDQ3ODc1
OThlKzAJLTEuMjk4OTE1MjY2OTkwNjYxNmUrMAk1LjI1MTk5MTc0ODgwOTgxNDVlLTIJNC4wNDMz
Njc0NzkyMTgwMDYwZS0yCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgotCVsyNTddCS0xLjE4Nzk0OTQx
OTAyMTYwNjRlKzAJLTEuMDQ2NzgyODUxMjE5MTc3MmUrMAkxLjQxMTY2NTY3ODAyNDI5MjBlLTEJ
MS4zNDg1NzU0NzIzNDM4MDA0ZS0xCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgotCVsyNThdCS05Ljkw
NzIwMDMzNjQ1NjI5ODhlLTEJLTcuNDIzMjM2OTY2MTMzMTE3N2UtMQkyLjQ4Mzk2MzM3MDMyMzE4
MTJlLTEJMy4zNDYxOTk3NTMwOTM4NTQyZS0xCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgotCVsyNTld
CS03LjY1MzQ5MjY4OTEzMjY5MDRlLTEJLTQuMDgwNTAwOTAwNzQ1MzkxOGUtMQkzLjU3Mjk5MTc4
ODM4NzI5ODZlLTEJOC43NTYyNTc4MTA3Mzc0Mzc4ZS0xCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgot
CVsyNjBdCS01LjE4MjM4NjYzNjczNDAwODhlLTEJLTYuNTIzMjg4Nzg2NDExMjg1NGUtMgk0LjUz
MDA1Nzc1ODA5Mjg4MDJlLTEJNi45NDQ0Mzg0NjcxODc3MTYwZSswCTMuMDM5ODk5OTk5OTk5OTk5
OWUtNgotCS4uLmFuZCAxNzg3IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA4LjMwODA3
MDY3NDUzODYxMjRlLTEgYXQgaW5kZXggb2YgMjc3LgotCVsyNzddCTkuMDc2NTc0NDQ0NzcwODEz
MGUtMQk3LjY4NTAzNzcwMjMyMjAwNjJlLTIJOC4zMDgwNzA2NzQ1Mzg2MTI0ZS0xCTEuMDgxMDcw
OTA2Mzk2MjUwOWUrMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYKLQlNYXggUmVsRXJyb3Igb2YgMi4z
NjMxOTMwNDc2NDQwMjc1ZSszIGF0IGluZGV4IG9mIDY1MC4KLQlbNjUwXQk3LjYxMDI5NDIyMjgz
MTcyNjFlLTEJMy4yMTg5ODE3Mjg0MjMzODY4ZS00CTcuNjA3MDc1MjQxMTAzMzAyN2UtMQkyLjM2
MzE5MzA0NzY0NDAyNzVlKzMJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJWzBdCTcuMzAxMDA1NzIx
MDkyMjI0MWUtMQk3Ljg2MzU2MjEwNzA4NjE4MTZlLTEJNS42MjU1NjM4NTk5Mzk1NzUyZS0yCTcu
MTUzOTYzNzkzMTY0NjA5N2UtMgkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlbMV0JOS45MjMyMTI1
MjgyMjg3NTk4ZS0xCTkuNjc2NjE4NTc2MDQ5ODA0N2UtMQkyLjQ2NTkzOTUyMTc4OTU1MDhlLTIJ
Mi41NDgzNDgzNzQzOTI3ODA5ZS0yCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCVsyXQkxLjIyNjk1
MTU5OTEyMTA5MzhlKzAJMS4xMzU3NzI0NjY2NTk1NDU5ZSswCTkuMTE3OTEzMjQ2MTU0Nzg1MmUt
Mgk4LjAyNzk0MDAyNjU1NDU3MTFlLTIJMy4wMzk4OTk5OTk5OTk5OTk5ZS02CisJWzNdCTEuNDI3
NDEwODQwOTg4MTU5MmUrMAkxLjI4NTgyNDc3NTY5NTgwMDhlKzAJMS40MTU4NjA2NTI5MjM1ODQw
ZS0xCTEuMTAxMTMwMzI0ODIwMDQ5MmUtMQkzLjAzOTg5OTk5OTk5OTk5OTllLTYKKwlbNF0JMS41
ODgwNjEzMzI3MDI2MzY3ZSswCTEuNDEzMzkyNzgyMjExMzAzN2UrMAkxLjc0NjY4NTUwNDkxMzMz
MDFlLTEJMS4yMzU4MTA0MDM4MDA1NDcxZS0xCTMuMDM5ODk5OTk5OTk5OTk5OWUtNgorCS4uLmFu
ZCAxMTQ3IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiA4LjkyNjUzODgyNTAzNTA5NTJl
LTEgYXQgaW5kZXggb2YgNDIuCisJWzQyXQkxLjY1NzMzMzM3NDAyMzQzNzVlKzAJNy42NDY3OTQ5
MTUxOTkyNzk4ZS0xCTguOTI2NTM4ODI1MDM1MDk1MmUtMQkxLjE2NzM1NjkwMjMzOTg0MzFlKzAJ
My4wMzk4OTk5OTk5OTk5OTk5ZS02CisJTWF4IFJlbEVycm9yIG9mIDEuNzY3Nzg5MTEzNDY1NTY3
OGUrMiBhdCBpbmRleCBvZiA2ODguCisJWzY4OF0JLTEuNjk2NDQxMTczNTUzNDY2OGUtMQk5LjY1
MDk5Mzc0Mjk4MDA2MzBlLTQJMS43MDYwOTIxNjcyOTY0NDY5ZS0xCTEuNzY3Nzg5MTEzNDY1NTY3
OGUrMgkzLjAzOTg5OTk5OTk5OTk5OTllLTYKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKIEZBSUwgWCBPdXRwdXQgZnJvbSBmcmVxdWVuY3kgc2V0dGVyIG1hdGNoZXMgc2V0
VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0IDBdIDIgb3V0IG9mIDUgYXNzZXJ0
aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCkBA
IC00MywxOCArMzAsMTggQEAgUEFTUyA+IFtUZXN0IDFdIE5vIGRlemlwcGVyaW5nIGZvciBkZXR1
bmUKIFBBU1MgICBBdCB0aW1lIDAsIGRldHVuZSBpcyBlcXVhbCB0byAzMy4gCiBQQVNTICAgQXQg
dGltZSAwLjAxNTYyNSwgZGV0dW5lIGlzIGVxdWFsIHRvIDEwMDAuIAogUEFTUyAgIEF0IHRpbWUg
MC4wMzkwNjI1LCBkZXR1bmUgaXMgZXF1YWwgdG8gLTQwMC4gCi1GQUlMIFggT3V0cHV0IGZyb20g
ZGV0dW5lIHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMCwwLjE3MzE2MTYxMDk2MDk2MDQsMC4zNTE1
NzUyODUxOTYzMDQzLDAuNTI5NTEwNDk4MDQ2ODc1LDAuNzAxMDQwNjg1MTc2ODQ5NCwwLjg2MDIz
ODY3MTMwMjc5NTQsMS4wMDEzNzU2NzUyMDE0MTYsMS4xMTkxMTc2MTc2MDcxMTY3LDEuMjA4NzEx
MDI4MDk5MDYsMS4yNjYxNTU0ODEzMzg1MDEsMS4yODgzNTM0NDMxNDU3NTIsMS4yNzMyMzI0NjAw
MjE5NzI3LDEuMjE5ODQwMTY4OTUyOTQyLDEuMTI4NDAwNTY0MTkzNzI1NiwxLjAwMDMzODE5Njc1
NDQ1NTYsMC44MzgyNjA1OTEwMzAxMjA4Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFu
Y2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwMDQwNTMyLCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uCitGQUlMIFggT3V0cHV0IGZyb20gZGV0dW5lIHNldHRlciBkb2VzIG5vdCBlcXVhbCBb
MS4xNDc2NjA5NzA2ODc4NjYyLDEuMTU2MTk1NDAyMTQ1Mzg1NywxLjEzNzE1NjcyNDkyOTgwOTYs
MS4wODkxMzM2MjAyNjIxNDYsMS4wMTE1MzM5NzU2MDExOTYzLDAuOTA0NjI5NzA3MzM2NDI1OCww
Ljc2OTU3Njc4Nzk0ODYwODQsMC42MDg0MDg4MDg3MDgxOTA5LDAuNDI0MDA0ODIyOTY5NDM2NjUs
MC4yMjAwMjg3NTgwNDkwMTEyMywwLjAwMDg0NjE0Mjg4MDYxODU3MjIsLTAuMjI4NTgyNDQxODA2
NzkzMiwtMC40NjI4MjY4MTgyMjc3Njc5NCwtMC42OTYxMzAzMzUzMzA5NjMxLC0wLjkyMjU2NDA4
OTI5ODI0ODMsLTEuMTM2MTg5ODE4MzgyMjYzMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDA0MDUzMiwicmVsYXRpdmVUaHJl
c2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJ
CVRlc3QgdGhyZXNob2xkCi0JWzI1Nl0JLTIuNDEyMzY2ODY3MDY1NDI5N2UrMAktMi4zMjQ0NjU3
NTE2NDc5NDkyZSswCTguNzkwMTExNTQxNzQ4MDQ2OWUtMgkzLjc4MTU2MjA3OTU5NDUxNTFlLTIJ
NC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JWzI1N10JLTIuMjMxNDY3OTYyMjY1MDE0NmUrMAktMS45
Nzg2ODY4MDk1Mzk3OTQ5ZSswCTIuNTI3ODExNTI3MjUyMTk3M2UtMQkxLjI3NzUxOTc3NDc2NDIx
MjVlLTEJNC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JWzI1OF0JLTEuOTg3MzY5MDYwNTE2MzU3NGUr
MAktMS41MTExNjgwMDMwODIyNzU0ZSswCTQuNzYyMDEwNTc0MzQwODIwM2UtMQkzLjE1MTIxMTg4
Njg1MDM4MTNlLTEJNC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JWzI1OV0JLTEuNjg3MDI0NzEyNTYy
NTYxMGUrMAktOS41MzAzNjMwODI4ODU3NDIyZS0xCTcuMzM5ODg0MDQyNzM5ODY4MmUtMQk3Ljcw
MTU3ODYwNjA4NzQ3MjVlLTEJNC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JWzI2MF0JLTEuMzM4OTgx
MjcwNzkwMTAwMWUrMAktMy40MDU2NTA4NTQxMTA3MTc4ZS0xCTkuOTg0MTYxODUzNzkwMjgzMmUt
MQkyLjkzMTY0NTc1MDM5NzIwMDllKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02Ci0JLi4uYW5kIDE3
ODcgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9mIDIuODA2MzAwNDYxMjkyMjY2OGUrMCBh
dCBpbmRleCBvZiAyNzcuCi0JWzI3N10JMS44NzEwOTAyOTI5MzA2MDMwZSswCS05LjM1MjEwMTY4
MzYxNjYzODJlLTEJMi44MDYzMDA0NjEyOTIyNjY4ZSswCTMuMDAwNzE2MzY5Njc4MTExMGUrMAk0
LjA1MzE5OTk5OTk5OTk5OTZlLTYKLQlNYXggUmVsRXJyb3Igb2YgMS45NDM1MjI2NzY1MTY5MTM0
ZSszIGF0IGluZGV4IG9mIDY1MC4KLQlbNjUwXQkxLjY0NTM0NDAxODkzNjE1NzJlKzAJOC40NjE0
Mjg4MDYxODU3MjI0ZS00CTEuNjQ0NDk3ODc2MDU1NTM4N2UrMAkxLjk0MzUyMjY3NjUxNjkxMzRl
KzMJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJWzBdCTIuOTAwMTc4MTk0MDQ2MDIwNWUrMAkxLjE0
NzY2MDk3MDY4Nzg2NjJlKzAJMS43NTI1MTcyMjMzNTgxNTQzZSswCTEuNTI3MDMzOTEzNDI4MDcz
OWUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwlbMV0JMy4wNjMwNTgzNzYzMTIyNTU5ZSswCTEu
MTU2MTk1NDAyMTQ1Mzg1N2UrMAkxLjkwNjg2Mjk3NDE2Njg3MDFlKzAJMS42NDkyNTY2NjU5ODI3
MzgxZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCVsyXQkzLjE0MDM5MjMwMzQ2Njc5NjllKzAJ
MS4xMzcxNTY3MjQ5Mjk4MDk2ZSswCTIuMDAzMjM1NTc4NTM2OTg3M2UrMAkxLjc2MTYxNzg0NDQx
ODYxODhlKzAJNC4wNTMxOTk5OTk5OTk5OTk2ZS02CisJWzNdCTMuMTI5OTYxMDEzNzkzOTQ1M2Ur
MAkxLjA4OTEzMzYyMDI2MjE0NjBlKzAJMi4wNDA4MjczOTM1MzE3OTkzZSswCTEuODczODA4MDk0
NDAxMjk4NWUrMAk0LjA1MzE5OTk5OTk5OTk5OTZlLTYKKwlbNF0JMy4wMzIwMDA1NDE2ODcwMTE3
ZSswCTEuMDExNTMzOTc1NjAxMTk2M2UrMAkyLjAyMDQ2NjU2NjA4NTgxNTRlKzAJMS45OTc0Mjgy
NzcwNzI5MTY4ZSswCTQuMDUzMTk5OTk5OTk5OTk5NmUtNgorCS4uLmFuZCAxNDAzIG1vcmUgZXJy
b3JzLgorCU1heCBBYnNFcnJvciBvZiAyLjQwNDQwMjMxNTYxNjYwNzdlKzAgYXQgaW5kZXggb2Yg
OTQuCisJWzk0XQktMi45OTgzNzQ0NjIxMjc2ODU1ZSswCS01LjkzOTcyMTQ2NTExMDc3ODhlLTEJ
Mi40MDQ0MDIzMTU2MTY2MDc3ZSswCTQuMDQ4MDA1MTYyNzY2OTQ1NmUrMAk0LjA1MzE5OTk5OTk5
OTk5OTZlLTYKKwlNYXggUmVsRXJyb3Igb2YgMS4wNzg1OTkyNzc1MjEzODMzZSszIGF0IGluZGV4
IG9mIDEwLgorCVsxMF0JOS4xMzQ5NTI0MjU5NTY3MjYxZS0xCTguNDYxNDI4ODA2MTg1NzIyNGUt
NAk5LjEyNjQ5MDk5NzE1MDU0MDRlLTEJMS4wNzg1OTkyNzc1MjEzODMzZSszCTQuMDUzMTk5OTk5
OTk5OTk5NmUtNgogIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJTCBY
IE91dHB1dCBmcm9tIGRldHVuZSBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQg
aXMgbm90IHRydWUuIEdvdCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCiBGQUlMIDwgW1Rlc3QgMV0gMiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKQEAgLTYyLDExICs0OSwxMSBAQCBQ
QVNTID4gW1Rlc3QgMl0gTm8gZGV6aXBwZXJpbmcgZm9yIFEKIFBBU1MgICBBdCB0aW1lIDAsIFEg
aXMgZXF1YWwgdG8gNS4gCiBQQVNTICAgQXQgdGltZSAwLjAxNTYyNSwgUSBpcyBlcXVhbCB0byAx
MC4gCiBQQVNTICAgQXQgdGltZSAwLjA2MjUsIFEgaXMgZXF1YWwgdG8gLTEwLiAKLUZBSUwgWCBP
dXRwdXQgZnJvbSBRIHNldHRlciBkb2VzIG5vdCBlcXVhbCBbMCwwLjE2NzkzODMwNjkyNzY4MDk3
LDAuMzMxMTA2MzA1MTIyMzc1NSwwLjQ4NDg2OTI0MTcxNDQ3NzU0LDAuNjI0ODU5NTExODUyMjY0
NCwwLjc0NzEwMDU5MTY1OTU0NTksMC44NDgxMjAzMzE3NjQyMjEyLDAuOTI1MDQ5MzY0NTY2ODAz
LDAuOTc1NzAyMjI2MTYxOTU2OCwwLjk5ODY0MDE3OTYzNDA5NDIsMC45OTMyMTIwNDQyMzkwNDQy
LDAuOTU5NTcxNDIxMTQ2MzkyOCwwLjg5ODY3NDQ4ODA2NzYyNywwLjgxMjI1MDU1NDU2MTYxNSww
LjcwMjc1NDc5NTU1MTMsMC41NzMyOTcxNDI5ODI0ODI5Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQi
OjB9LgorRkFJTCBYIE91dHB1dCBmcm9tIFEgc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLC0wLjE2
NzkzODMwNjkyNzY4MDk3LC0wLjMzMTEwNjMwNTEyMjM3NTUsLTAuNDg0ODY5MjQxNzE0NDc3NTQs
LTAuNjI0ODU5NTExODUyMjY0NCwtMC43NDcxMDA1OTE2NTk1NDU5LC0wLjg0ODEyMDMzMTc2NDIy
MTIsLTAuOTI1MDQ5MzY0NTY2ODAzLC0wLjk3NTcwMjIyNjE2MTk1NjgsLTAuOTk4NjQwMTc5NjM0
MDk0MiwtMC45OTMyMTIwNDQyMzkwNDQyLC0wLjk1OTU3MTQyMTE0NjM5MjgsLTAuODk4Njc0NDg4
MDY3NjI3LC0wLjgxMjI1MDU1NDU2MTYxNSwtMC43MDI3NTQ3OTU1NTEzLC0wLjU3MzI5NzE0Mjk4
MjQ4MjkuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0
ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKLQlbMTAyNF0JNi44ODMzODI3
NTI2NzU5NzA2ZS0xNQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAJNi44ODMzODI3NTI2NzU5NzA2ZS0x
NQlJbmZpbml0eQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLQlNYXggQWJzRXJyb3Igb2YgNi44ODMz
ODI3NTI2NzU5NzA2ZS0xNSBhdCBpbmRleCBvZiAxMDI0LgotCU1heCBSZWxFcnJvciBvZiBJbmZp
bml0eSBhdCBpbmRleCBvZiAxMDI0LgorCVswXQkyLjc3NTU1NzU2MTU2Mjg5MTRlLTE2CTAuMDAw
MDAwMDAwMDAwMDAwMGUrMAkyLjc3NTU1NzU2MTU2Mjg5MTRlLTE2CUluZmluaXR5CTAuMDAwMDAw
MDAwMDAwMDAwMGUrMAorCU1heCBBYnNFcnJvciBvZiAyLjc3NTU1NzU2MTU2Mjg5MTRlLTE2IGF0
IGluZGV4IG9mIDAuCisJTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDAuCiAg
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggT3V0cHV0IGZyb20g
USBzZXR0ZXIgbWF0Y2hlcyBzZXRWYWx1ZUF0VGltZSBvdXRwdXQgaXMgbm90IHRydWUuIEdvdCBm
YWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIDwgW1Rlc3Qg
Ml0gMiBvdXQgb2YgNSBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKQEAgLTc0LDQzICs2MSw0MyBAQCBQQVNTID4gW1Rlc3QgM10gTm8g
ZGV6aXBwZXJpbmcgZm9yIGdhaW4KIFBBU1MgICBBdCB0aW1lIDAsIGdhaW4gaXMgZXF1YWwgdG8g
MS4gCiBQQVNTICAgQXQgdGltZSAwLjAxNTYyNSwgZ2FpbiBpcyBlcXVhbCB0byA1LiAKIFBBU1Mg
ICBBdCB0aW1lIDAuMDQ2ODc1LCBnYWluIGlzIGVxdWFsIHRvIC0wLjMuIAotRkFJTCBYIE91dHB1
dCBmcm9tIGdhaW4gc2V0dGVyIGRvZXMgbm90IGVxdWFsIFswLDAuMTY5MTU1ODA2MzAzMDI0Myww
LjMzNTc3NjQxODQ0NzQ5NDUsMC40OTQ4MDAzMjkyMDgzNzQsMC42NDEzODc5OTkwNTc3Njk4LDAu
NzcxMDYzOTIzODM1NzU0NCwwLjg3OTg0ODEyMjU5Njc0MDcsMC45NjQzNzIyNzcyNTk4MjY3LDEu
MDIxOTc3MzA1NDEyMjkyNSwxLjA1MDc5MTc0MDQxNzQ4MDUsMS4wNDk3ODY0NDg0Nzg2OTg3LDEu
MDE4ODAyNTIzNjEyOTc2LDAuOTU4NTU5MDk1ODU5NTI3NiwwLjg3MDYyOTcyNzg0MDQyMzYsMC43
NTczOTkyNjA5OTc3NzIyLDAuNjIxOTkzODM5NzQwNzUzMi4uLl0gd2l0aCBhbiBlbGVtZW50LXdp
c2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAwMDAxOTA3NCwicmVsYXRp
dmVUaHJlc2hvbGQiOjB9LgorRkFJTCBYIE91dHB1dCBmcm9tIGdhaW4gc2V0dGVyIGRvZXMgbm90
IGVxdWFsIFstMC44NDQ4NjcyMjk0NjE2Njk5LC0xLjAzNDUzNTY0NjQzODU5ODYsLTEuMTg2NjA2
MTY4NzQ2OTQ4MiwtMS4yOTk0NzMyODU2NzUwNDg4LC0xLjM3MjM5MTEwNDY5ODE4MTIsLTEuNDA1
NDg2MzQ1MjkxMTM3NywtMS4zOTk3NTA1OTAzMjQ0MDE5LC0xLjM1NzAxMzk0MDgxMTE1NzIsLTEu
Mjc5ODk4NjQzNDkzNjUyMywtMS4xNzE3NTM2NDQ5NDMyMzczLC0xLjAzNjU3MjA5ODczMTk5NDYs
LTAuODc4ODkxNjQ2ODYyMDMsLTAuNzAzNjg0Mzg5NTkxMjE3LC0wLjUxNjIzMTIzODg0MjAxMDUs
LTAuMzIxOTkyMDA5ODc4MTU4NTcsLTAuMTI2NDY5MzI4OTk5NTE5MzUuLi5dIHdpdGggYW4gZWxl
bWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjowLjAwMDAwMTkwNzQs
InJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJy
b3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsyNTZdCS04LjEwNzYxOTI4NTU4MzQ5NjFl
LTEJLTguMDQ4OTIwMDM1MzYyMjQzN2UtMQk1Ljg2OTkyNTAyMjEyNTI0NDFlLTMJNy4yOTI4MTA3
MDc5NDEyMjU5ZS0zCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgotCVsyNTddCS02Ljc0NTUzMjE1NTAz
NjkyNjNlLTEJLTYuNTYyMzk1MDk1ODI1MTk1M2UtMQkxLjgzMTM3MDU5MjExNzMwOTZlLTIJMi43
OTA3MDQ1NjA0MTYzMjQ2ZS0yCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgotCVsyNThdCS01LjE5MTgz
OTMzNzM0ODkzODBlLTEJLTQuODE1MzM3MzU5OTA1MjQyOWUtMQkzLjc2NTAxOTc3NDQzNjk1MDdl
LTIJNy44MTg4MDc4OTAzNTkzOTg1ZS0yCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgotCVsyNTldCS0z
LjQ5MDY3MjQwOTUzNDQ1NDNlLTEJLTIuODUyNTY0MTU2MDU1NDUwNGUtMQk2LjM4MTA4MjUzNDc5
MDAzOTFlLTIJMi4yMzY5NjM3MjMwNTc0NTIxZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgotCVsy
NjBdCS0xLjY5MDM1MjExMjA1NDgyNDhlLTEJLTcuMjY4Mjg3OTg2NTE2OTUyNWUtMgk5LjYzNTIz
MzEzNDAzMTI5NThlLTIJMS4zMjU2NTM3Mzc0MjgyODQyZSswCTEuOTA3NDAwMDAwMDAwMDAwMmUt
NgotCS4uLmFuZCAxNzg3IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiA2LjAwMTMwNjc3
MjIzMjA1NTdlLTEgYXQgaW5kZXggb2YgMjkxLgotCVsyOTFdCS0xLjAyNzMwMzIxODg0MTU1Mjdl
KzAJLTEuNjI3NDMzODk2MDY0NzU4M2UrMAk2LjAwMTMwNjc3MjIzMjA1NTdlLTEJMy42ODc1ODg2
NTUyMDk2NTc2ZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgotCU1heCBSZWxFcnJvciBvZiA3LjEx
NjI5NTM3NDM5NzA2NDdlKzEgYXQgaW5kZXggb2YgMTUwOC4KLQlbMTUwOF0JNi4xNzQ0NDczODc0
NTY4OTM5ZS0yCS04LjgwMDE1MzE1NDg3OTgwODRlLTQJNi4yNjI0NDg5MTkwMDU2OTIwZS0yCTcu
MTE2Mjk1Mzc0Mzk3MDY0N2UrMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlbMF0JLTcuNjc1MzEy
MTYxNDQ1NjE3N2UtMQktOC40NDg2NzIyOTQ2MTY2OTkyZS0xCTcuNzMzNjAxMzMxNzEwODE1NGUt
Mgk5LjE1MzYyOTE4ODE0ODg3NjNlLTIJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJWzFdCS05LjA2
NTcyMjgyMzE0MzAwNTRlLTEJLTEuMDM0NTM1NjQ2NDM4NTk4NmUrMAkxLjI3OTYzMzY0MTI0Mjk4
MTBlLTEJMS4yMzY5MTU5NDkzNDIyMzQwZS0xCTEuOTA3NDAwMDAwMDAwMDAwMmUtNgorCVsyXQkt
MS4wMTk3MzU4MTMxNDA4NjkxZSswCS0xLjE4NjYwNjE2ODc0Njk0ODJlKzAJMS42Njg3MDM1NTYw
NjA3OTEwZS0xCTEuNDA2MjgyNTU2MDkyNjcyMGUtMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKKwlb
M10JLTEuMTAzODUyNjI5NjYxNTYwMWUrMAktMS4yOTk0NzMyODU2NzUwNDg4ZSswCTEuOTU2MjA2
NTYwMTM0ODg3N2UtMQkxLjUwNTM4NDIwNTgxNTg4MTdlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02
CisJWzRdCS0xLjE1NjU3NDcyNjEwNDczNjNlKzAJLTEuMzcyMzkxMTA0Njk4MTgxMmUrMAkyLjE1
ODE2Mzc4NTkzNDQ0ODJlLTEJMS41NzI1NTczOTg5NDEzNzIxZS0xCTEuOTA3NDAwMDAwMDAwMDAw
MmUtNgorCS4uLmFuZCAxMjc1IG1vcmUgZXJyb3JzLgorCU1heCBBYnNFcnJvciBvZiAyLjUzNTAy
MDExMjk5MTMzMzBlLTEgYXQgaW5kZXggb2YgMjAuCisJWzIwXQk5LjQ1MjMxNDk3Mjg3NzUwMjRl
LTEJNi45MTcyOTQ4NTk4ODYxNjk0ZS0xCTIuNTM1MDIwMTEyOTkxMzMzMGUtMQkzLjY2NDc1NjQ3
NTM4NDcyNzNlLTEJMS45MDc0MDAwMDAwMDAwMDAyZS02CisJTWF4IFJlbEVycm9yIG9mIDguMzcy
NDE3Njk1MTM4NDQ3OWUrMSBhdCBpbmRleCBvZiA3NDAuCisJWzc0MF0JNy4yNzk4NTQyNjc4MzU2
MTcxZS0yCS04LjgwMDE1MzE1NDg3OTgwODRlLTQJNy4zNjc4NTU3OTkzODQ0MTUxZS0yCTguMzcy
NDE3Njk1MTM4NDQ3OWUrMQkxLjkwNzQwMDAwMDAwMDAwMDJlLTYKICBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCBPdXRwdXQgZnJvbSBnYWluIHNldHRlciBtYXRj
aGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVzdCAzXSAyIG91dCBvZiA1
IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogUEFTUyA+IFtUZXN0IDRdIE5vIGRlemlwcGVyaW5nIG9mIGZyZXF1ZW5jeSB2cyBKUyBm
aWx0ZXIgCi1QQVNTICAgT3V0cHV0IGZyb20gbG93cGFzcyBmaWx0ZXIgZXF1YWxzIFswLDAuMDAw
NzEyNzUwODg3MDMyNTk4MywwLjAwNDE2MzkzNTMxNDg2MzkyLDAuMDEyNzM3MDg3OTA1NDA2OTUy
LDAuMDI4MzAxOTc4NDgzNzk2MTIsMC4wNTIxNjcwNzY2MTc0NzkzMjQsMC4wODUwNTM0ODg2MTIx
NzQ5OSwwLjEyNzA5MDMwNTA4OTk1MDU2LDAuMTc3ODMwNjY2MzAzNjM0NjQsMC4yMzYyODczNTU0
MjI5NzM2MywwLjMwMDk4NjExMTE2NDA5MywwLjM3MDAzNDQ4NjA1NTM3NDE1LDAuNDQxMjAzNjUz
ODEyNDA4NDUsMC41MTIwMjAyMzAyOTMyNzM5LDAuNTc5ODY0OTE5MTg1NjM4NCwwLjY0MjA3NDgy
MzM3OTUxNjYuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRl
VGhyZXNob2xkIjo1Ljk2MDdlLTcsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCi1QQVNTICAgT3V0
cHV0IG1hdGNoZXMgSlMgZmlsdGVyIHJlc3VsdHMgaXMgdHJ1ZS4gCi1QQVNTIDwgW1Rlc3QgNF0g
QWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKK0ZBSUwgWCBPdXRw
dXQgZnJvbSBsb3dwYXNzIGZpbHRlciBkb2VzIG5vdCBlcXVhbCBbLTAuMDAzMDAxMDQ4NDYyNDY1
NDA1NSwtMC4wMTQwNjk4OTYxOTEzNTg1NjYsLTAuMDMzNDAyMDQ4MDUxMzU3MjcsLTAuMDU3Mjkx
NDEwODYzMzk5NTA2LC0wLjA4MjE2NDMwMjQ2ODI5OTg3LC0wLjEwNDcwMDY0NzI5NDUyMTMzLC0w
LjEyMTk0MDk1NTUxOTY3NjIxLC0wLjEzMTM3NjYzOTAwODUyMjAzLC0wLjEzMTAyMTczODA1MjM2
ODE2LC0wLjExOTQ2NDYwNjA0NjY3NjY0LC0wLjA5NTg5ODgxNDQ5OTM3ODIsLTAuMDYwMTMzMDIx
MzI0ODcyOTcsLTAuMDEyNTgwMTc0MDIxNDIyODYzLDAuMDQ1NzcyOTk1Nzk5Nzc5ODksMC4xMTM0
MTQ3MTk3MDA4MTMzLDAuMTg4MzczMjIyOTQ3MTIwNjcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNl
IHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjo1Ljk2MDdlLTcsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4KKwlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9y
CQlUZXN0IHRocmVzaG9sZAorCVswXQktMi4zODc3NDk4NTA3NDk5Njk1ZS0xCS0zLjAwMTA0ODQ2
MjQ2NTQwNTVlLTMJMi4zNTc3MzkzNjYxMjUzMTU0ZS0xCTcuODU2Mzg1NTExOTc2Njk3MGUrMQk1
Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwlbMV0JLTMuNjI2ODM0NzUwMTc1NDc2MWUtMQktMS40MDY5
ODk2MTkxMzU4NTY2ZS0yCTMuNDg2MTM1Nzg4MjYxODkwNGUtMQkyLjQ3NzcyNjczMDA2ODU1Njll
KzEJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJWzJdCS00Ljc1OTAwMTQzMzg0OTMzNDdlLTEJLTMu
MzQwMjA0ODA1MTM1NzI2OWUtMgk0LjQyNDk4MDk1MzMzNTc2MjBlLTEJMS4zMjQ3NjMzNjM3NzEw
Mjk2ZSsxCTUuOTYwNzAwMDAwMDAwMDAwMmUtNworCVszXQktNS43NDgyNTUyNTI4MzgxMzQ4ZS0x
CS01LjcyOTE0MTA4NjMzOTk1MDZlLTIJNS4xNzUzNDExNDQyMDQxMzk3ZS0xCTkuMDMzMzYzMDU3
NzYwNTM5MGUrMAk1Ljk2MDcwMDAwMDAwMDAwMDJlLTcKKwlbNF0JLTYuNTYzMjYyOTM5NDUzMTI1
MGUtMQktOC4yMTY0MzAyNDY4Mjk5ODY2ZS0yCTUuNzQxNjE5OTE0NzcwMTI2M2UtMQk2Ljk4Nzk3
Mzc4MjE0ODY2ODdlKzAJNS45NjA3MDAwMDAwMDAwMDAyZS03CisJLi4uYW5kIDE4OTMgbW9yZSBl
cnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDEuMTQ3NTIyNDE5NjkxMDg1OGUrMCBhdCBpbmRleCBv
ZiAyOTIuCisJWzI5Ml0JMy43MzgzNDk5NzQxNTU0MjYwZS0xCS03LjczNjg3NDIyMjc1NTQzMjFl
LTEJMS4xNDc1MjI0MTk2OTEwODU4ZSswCTEuNDgzMTg2MDg2MDc1OTkxNmUrMAk1Ljk2MDcwMDAw
MDAwMDAwMDJlLTcKKwlNYXggUmVsRXJyb3Igb2YgMi40MDg0NzExNDk1MzIzNTMxZSszIGF0IGlu
ZGV4IG9mIDEwMTQuCisJWzEwMTRdCS03LjY2MjA1NjY4NDQ5NDAxODZlLTEJMy4xODI2MTYyMDEy
MjkzOTM1ZS00CTcuNjY1MjM5MzAwNjk1MjQ3OWUtMQkyLjQwODQ3MTE0OTUzMjM1MzFlKzMJNS45
NjA3MDAwMDAwMDAwMDAyZS03CisgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNl
CitGQUlMIFggT3V0cHV0IG1hdGNoZXMgSlMgZmlsdGVyIHJlc3VsdHMgaXMgbm90IHRydWUuIEdv
dCBmYWxzZS4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIDwgW1Rl
c3QgNF0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIFBBU1MgPiBbVGVzdCA1XSBUZXN0IHdpdGggbW9kdWxhdGlv
biAKIFBBU1MgICBNb2R1bGF0aW9uOiBBdCB0aW1lIDAsIGZyZXF1ZW5jeSBpcyBlcXVhbCB0byAz
NTAuIAogUEFTUyAgIE1vZHVsYXRpb246IEF0IHRpbWUgMC4wMTU2MjUsIGZyZXF1ZW5jeSBpcyBl
cXVhbCB0byAxMC4gCiBQQVNTICAgTW9kdWxhdGlvbjogQXQgdGltZSAwLjA2MjUsIGZyZXF1ZW5j
eSBpcyBlcXVhbCB0byAtMTAuIAotRkFJTCBYIE1vZHVsYXRpb246IE91dHB1dCBmcm9tIGZyZXF1
ZW5jeSBzZXR0ZXIgZG9lcyBub3QgZXF1YWwgWzAsMC4xNjkyMzY4OTg0MjIyNDEyLDAuMzM2MjE0
ODQwNDEyMTM5OSwwLjQ5NjA3MTcyNjA4Mzc1NTUsMC42NDQxMDY4MDUzMjQ1NTQ0LDAuNzc1OTE3
NzA4ODczNzQ4OCwwLjg4NzUzMDI2NzIzODYxNjksMC45NzU1MTU3MjMyMjg0NTQ2LDEuMDM3MDkz
MDQzMzI3MzMxNSwxLjA3MDIxNDAzMzEyNjgzMSwxLjA3MzYyNzIzMzUwNTI0OSwxLjA0NjkxODAz
NDU1MzUyNzgsMC45OTA1MjgwNDcwODQ4MDgzLDAuOTA1NzQ2NDAwMzU2MjkyNywwLjc5NDY4MDE3
ODE2NTQzNTgsMC42NjAxOTgzOTA0ODM4NTYyLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9Lgot
CUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNo
b2xkCi0JWzI1Nl0JLTguNzQzNzE1ODgyMzAxMzMwNmUtMQktNy4wNzEwNjc2OTA4NDkzMDQyZS0x
CTEuNjcyNjQ4MTkxNDUyMDI2NGUtMQkyLjM2NTQ4MTc5NzkxMzc4MTVlLTEJMC4wMDAwMDAwMDAw
MDAwMDAwZSswCi0JWzI1N10JLTcuNjMyODAzMzIwODg0NzA0NmUtMQktNS43ODMxMzc2NzkxMDAw
MzY2ZS0xCTEuODQ5NjY1NjQxNzg0NjY4MGUtMQkzLjE5ODM3NzMyNDU5NTM3NDVlLTEJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCi0JWzI1OF0JLTYuMzE2ODQ3ODAxMjA4NDk2MWUtMQktNC4zMzA5Mzgx
NjA0MTk0NjQxZS0xCTEuOTg1OTA5NjQwNzg5MDMyMGUtMQk0LjU4NTQwMjkwMTcwNDUzNjdlLTEJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzI1OV0JLTQuODM0NDI0MjU3Mjc4NDQyNGUtMQktMi43
NTU3MTg4MjcyNDc2MTk2ZS0xCTIuMDc4NzA1NDMwMDMwODIyOGUtMQk3LjU0MzI0MjEwOTc0Mzg2
NjJlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzI2MF0JLTMuMjI4NjY1ODg4MzA5NDc4OGUt
MQktMS4xMDIyMjI0Mjc3MjU3OTE5ZS0xCTIuMTI2NDQzNDYwNTgzNjg2OGUtMQkxLjkyOTIzMjYx
ODY1NjgwMTZlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JLi4uYW5kIDE3ODcgbW9yZSBlcnJv
cnMuCi0JTWF4IEFic0Vycm9yIG9mIDguNTUwNjIyNDYzMjI2MzE4NGUtMSBhdCBpbmRleCBvZiA1
NzEuCi0JWzU3MV0JMS41NTU1OTkyMTI2NDY0ODQ0ZSswCTcuMDA1MzY5NjYzMjM4NTI1NGUtMQk4
LjU1MDYyMjQ2MzIyNjMxODRlLTEJMS4yMjA1ODExOTMzMjMyNzA2ZSswCTAuMDAwMDAwMDAwMDAw
MDAwMGUrMAotCU1heCBSZWxFcnJvciBvZiBJbmZpbml0eSBhdCBpbmRleCBvZiAxMDI0LgotCVsx
MDI0XQkxLjQ1NjIzNzU4NDM1MjQ5MzNlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuNDU2MjM3
NTg0MzUyNDkzM2UtMQlJbmZpbml0eQkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLSBhc3NlcnRfdHJ1
ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBNb2R1bGF0aW9uOiBPdXRwdXQgZnJv
bSBmcmVxdWVuY3kgc2V0dGVyIG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0
cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJ
TCA8IFtUZXN0IDVdIDIgb3V0IG9mIDUgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZy
b20gZnJlcXVlbmN5IHNldHRlciBlcXVhbHMgWzAsLTAuMTY3OTM4MzA2OTI3NjgwOTcsLTAuMzMx
MTA2MzA1MTIyMzc1NSwtMC40ODQ4NjkyNDE3MTQ0Nzc1NCwtMC42MjQ4NTk1MTE4NTIyNjQ0LC0w
Ljc0NzEwMDU5MTY1OTU0NTksLTAuODQ4MTIwMzMxNzY0MjIxMiwtMC45MjUwNDkzNjQ1NjY4MDMs
LTAuOTc1NzAyMjI2MTYxOTU2OCwtMC45OTg2NDAxNzk2MzQwOTQyLC0wLjk5MzIxMjA0NDIzOTA0
NDIsLTAuOTU5NTcxNDIxMTQ2MzkyOCwtMC44OTg2NzQ0ODgwNjc2MjcsLTAuODEyMjUwNTU0NTYx
NjE1LC0wLjcwMjc1NDc5NTU1MTMsLTAuNTczMjk3MTQyOTgyNDgyOS4uLl0gd2l0aCBhbiBlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJlbGF0aXZlVGhy
ZXNob2xkIjowfS4gCitQQVNTICAgTW9kdWxhdGlvbjogT3V0cHV0IGZyb20gZnJlcXVlbmN5IHNl
dHRlciBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyB0cnVlLiAKK1BBU1MgPCBbVGVz
dCA1XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCA1IGFzc2VydGlvbnMpIAogRkFJTCAj
IEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiA1IG91dCBvZiA2IHRhc2tzIHdlcmUgZmFpbGVk
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2Vy
LWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9k
ZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3QtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDZiY2QyMWY0NmU5YjdhZTNiN2ViMjU0MzkzMTlmNmIyZDk3MmVkM2QuLmIzZjczZDg3NmY5
ZTExMWZmZjA4Yjg4YzMzMDBmZTI0NGIyZGIxNTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
Y2hhbm5lbG1lcmdlcm5vZGUtaW50ZXJmYWNlL2F1ZGlvY2hhbm5lbG1lcmdlci1kaXNjb25uZWN0
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5uZWxtZXJnZXJub2RlLWludGVy
ZmFjZS9hdWRpb2NoYW5uZWxtZXJnZXItZGlzY29ubmVjdC1leHBlY3RlZC50eHQKQEAgLTEsMTMg
KzEsMTcgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVq
ZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KIFBBU1MgIyBBVURJ
VCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJzaWxlbnQtZGlzY29ubmVj
dCIgCiBQQVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbc2lsZW50LWRpc2Nvbm5lY3RdICAKLVBB
U1MgICBDaGFubmVsICMwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuIAotRkFJTCBYIENo
YW5uZWwgIzEgZXhwZWN0ZWQgdG8gaGF2ZSB0aGUgdmFsdWUgc2VxdWVuY2Ugb2YgWzEsMF0gYnV0
IGdvdCAxIHZhbHVlcywgWzFdLCBpbnN0ZWFkIG9mIDIuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCBYIFRoZSBpbmRleCBvZiBmaXJzdCB6ZXJvIGluIHRoZSBjaGFu
bmVsICMxIGlzIG5vdCBlcXVhbCB0byAxMTEzNi4gR290IC0xLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbc2lsZW50LWRpc2Nvbm5lY3RdIDIgb3V0IG9mIDMg
YXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitGQUlMIFggQ2hhbm5lbCAjMDogRXhwZWN0ZWQgMSBmb3IgYWxsIHZhbHVlcyBidXQgZm91
bmQgMTA5MTQgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxMTEzNl0JMAor
CVsxMTEzN10JMAorCVsxMTEzOF0JMAorCVsxMTEzOV0JMAorCS4uLmFuZCAxMDkxMCBtb3JlIGVy
cm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgQ2hhbm5l
bCAjMSBjb250YWlucyBhbGwgdGhlIGV4cGVjdGVkIHZhbHVlcyBpbiB0aGUgY29ycmVjdCBvcmRl
cjogWzEsMF0uIAorUEFTUyAgIFRoZSBpbmRleCBvZiBmaXJzdCB6ZXJvIGluIHRoZSBjaGFubmVs
ICMxIGlzIGVxdWFsIHRvIDExMTM2LiAKK0ZBSUwgPCBbc2lsZW50LWRpc2Nvbm5lY3RdIDEgb3V0
IG9mIDMgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCiBGQUlMICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDEg
dGFza3Mgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZv
bHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1jb252b2x2
ZXJub2RlLWludGVyZmFjZS9jb252b2x2ZXItcmVzcG9uc2UtNC1jaGFuLWV4cGVjdGVkLnR4dApp
bmRleCAxZDcyYzk1NGE3ZGM1ODE2MWY4MWIyYTYzNjAwOTYyNDRhNjU0NDJmLi43NTdiYjBmMzNl
Yzc3YjFiN2U1NjdiZjE4ODc4ZjNjOTVmMzJhOWE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2NvbnZvbHZlci1yZXNwb25zZS00LWNoYW4tZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtY29udm9sdmVybm9kZS1pbnRlcmZhY2UvY29udm9s
dmVyLXJlc3BvbnNlLTQtY2hhbi1leHBlY3RlZC50eHQKQEAgLTEsNiArMSwzIEBACi1DT05TT0xF
IE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6
IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJ
TCksIG1lc3NhZ2UgPSBVbmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGlu
dmFsaWQgc3RhdGUuCiAKIFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1Mg
RXhlY3V0aW5nICJpbml0aWFsaXplIiAKQEAgLTIzLDEwICsyMCwxMCBAQCBQQVNTID4gWzMtY2hh
bm5lbCBpbnB1dF0gMy0+MiBkb3dubWl4IHByb2R1Y2luZyAyLWNoYW5uZWwgb3V0cHV0CiBQQVNT
ID4gWzQtY2hhbm5lbCBpbnB1dF0gNC0+MiBkb3dubWl4IHByb2R1Y2luZyAyLWNoYW5uZWwgb3V0
cHV0IAogUEFTUyA+IFs1LjEtY2hhbm5lbCBpbnB1dF0gNS4xLT4yIGRvd25taXggcHJvZHVjaW5n
IDItY2hhbm5lbCBvdXRwdXQgCiBQQVNTID4gW2RlbGF5ZWQgYnVmZmVyIHNldF0gRGVsYXllZCBz
ZXQgb2YgNC1jaGFubmVsIHJlc3BvbnNlIAotRkFJTCBYIE91dHB1dCB3aXRoIGRlbGF5ZWQgc2V0
dGluZyBvZiBjb252b2x2ZXIgYnVmZmVyIHNob3VsZCBoYXZlIGNvbnRhaW4gYXQgbGVhc3Qgb25l
IHZhbHVlIGRpZmZlcmVudCBmcm9tIDAuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQotRkFJTCA8IFtkZWxheWVkIGJ1ZmZlciBzZXRdIDEgb3V0IG9mIDEgYXNzZXJ0aW9ucyB3
ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAg
T3V0cHV0IHdpdGggZGVsYXllZCBzZXR0aW5nIG9mIGNvbnZvbHZlciBidWZmZXIgaXMgbm90IGNv
bnN0YW50bHkgMCAoY29udGFpbnMgNzY4IGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BBU1MgPCBbZGVs
YXllZCBidWZmZXIgc2V0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlv
bnMpIAogUEFTUyA+IFtjb3VudCAxLCAyLWNoYW5uZWwgaW5dIDItPjEgZG93bm1peCBiZWNhdXNl
IGNoYW5uZWwgY291bnQgaXMgMSAKIFBBU1MgPiBbY291bnQgMSwgNC1jaGFubmVsIGluXSA0LT4x
IGRvd25taXggYmVjYXVzZSBjaGFubmVsIGNvdW50IGlzIDEgCiBQQVNTID4gW2NvdW50IDEsIDUu
MS1jaGFubmVsIGluXSA1LjEtPjEgZG93bm1peCBiZWNhdXNlIGNoYW5uZWwgY291bnQgaXMgMSAK
LUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMTAgdGFza3Mgd2Vy
ZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxMCB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVy
aW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2RlLWludGVyZmFjZS9uby1k
ZXppcHBlcmluZy1leHBlY3RlZC50eHQKaW5kZXggOGZkNzlhMjhmYzhhMWRlMWNlM2YwODFmZDg0
OTg0MTg0MTQ2ZjlkYS4uMmVjODg1ZmVjNTFlNWM5MjYyOWNlOGZkYmIwMWU4NGVhZWU4YmI1NCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVy
aW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlbGF5bm9kZS1pbnRlcmZhY2Uv
bm8tZGV6aXBwZXJpbmctZXhwZWN0ZWQudHh0CkBAIC0xLDggKzEsMyBAQAotQ09OU09MRSBNRVNT
QUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUg
b2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi1DT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxl
ZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVq
ZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0
YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWplY3Rp
b246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElUIFRB
U0sgUlVOTkVSIFNUQVJURUQuIAogUEFTUyBFeGVjdXRpbmcgInRlc3QwIiAKQEAgLTEwLDQ3ICs1
LDQ3IEBAIFBBU1MgRXhlY3V0aW5nICJ0ZXN0MSIKIFBBU1MgRXhlY3V0aW5nICJ0ZXN0MiIgCiBQ
QVNTIEF1ZGl0IHJlcG9ydCAKIFBBU1MgPiBbdGVzdDBdIFRlc3QgRGVsYXlOb2RlIGhhcyBubyBk
ZXppcHBlcmluZyAKLVBBU1MgICBvdXRwdXRbMDo2M10gY29udGFpbnMgb25seSB0aGUgY29uc3Rh
bnQgMC4gCi1QQVNTICAgb3V0cHV0WzY0OjEyN10gaXMgaWRlbnRpY2FsIHRvIHRoZSBhcnJheSBb
MSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsMTYuLi5dLiAKK0ZBSUwgWCBvdXRw
dXRbMDo2M106IEV4cGVjdGVkIDAgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDY0IHVuZXhwZWN0
ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMF0JNjUuMTQ2MjYzMTIyNTU4NgorCVsxXQk2
Ni4yOTIwNzYxMTA4Mzk4NAorCVsyXQk2Ny40Mzc0NDY1OTQyMzgyOAorCVszXQk2OC41ODIzNzQ1
NzI3NTM5CisJLi4uYW5kIDYwIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK0ZBSUwgWCBvdXRwdXRbNjQ6MTI3XSBleHBlY3RlZCB0byBiZSBlcXVhbCB0
byB0aGUgYXJyYXkgWzEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1LDE2Li4uXSBi
dXQgZGlmZmVycyBpbiA2NCBwbGFjZXM6CisJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKKwlbMF0J
MS4zNzYzNjU4MTQyMDg5ODQ0ZSsyCTEuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQkxLjM4NzU2
NTMwNzYxNzE4NzVlKzIJMi4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzJdCTEuMzk4NzYxMTM4OTE2
MDE1NmUrMgkzLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlbM10JMS40MDk5NTMzMDgxMDU0Njg4ZSsy
CTQuMDAwMDAwMDAwMDAwMDAwMGUrMAorCS4uLmFuZCA2MCBtb3JlIGVycm9ycy4gYXNzZXJ0X3Ry
dWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlMIFggb3V0cHV0WzEyODpdIGV4cGVjdGVk
IHRvIGJlIGVxdWFsIHRvIHRoZSBhcnJheSBbMTEzLDExNCwxMTUsMTE2LDExNywxMTgsMTE5LDEy
MCwxMjEsMTIyLDEyMywxMjQsMTI1LDEyNiwxMjcsMTI4Li4uXSBidXQgZGlmZmVycyBpbiAxNjI1
NiBwbGFjZXM6CiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKLQlbMF0JNi41MDAwMDAwMDAwMDAw
MDAwZSsxCTEuMTMwMDAwMDAwMDAwMDAwMGUrMgotCVsxXQk2LjYwMDAwMDAwMDAwMDAwMDBlKzEJ
MS4xNDAwMDAwMDAwMDAwMDAwZSsyCi0JWzJdCTYuNzAwMDAwMDAwMDAwMDAwMGUrMQkxLjE1MDAw
MDAwMDAwMDAwMDBlKzIKLQlbM10JNi44MDAwMDAwMDAwMDAwMDAwZSsxCTEuMTYwMDAwMDAwMDAw
MDAwMGUrMgorCVswXQkyLjA4NjIwNTQ0NDMzNTkzNzVlKzIJMS4xMzAwMDAwMDAwMDAwMDAwZSsy
CisJWzFdCTIuMDk3MTkyMDc3NjM2NzE4OGUrMgkxLjE0MDAwMDAwMDAwMDAwMDBlKzIKKwlbMl0J
Mi4xMDgxNzU2NTkxNzk2ODc1ZSsyCTEuMTUwMDAwMDAwMDAwMDAwMGUrMgorCVszXQkyLjExOTE1
NjM0MTU1MjczNDRlKzIJMS4xNjAwMDAwMDAwMDAwMDAwZSsyCiAJLi4uYW5kIDE2MjUyIG1vcmUg
ZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbdGVz
dDBdIDEgb3V0IG9mIDMgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCitGQUlMIDwgW3Rlc3QwXSAzIG91dCBvZiAzIGFzc2VydGlvbnMg
d2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+
IFt0ZXN0MV0gVGVzdCB2YWx1ZSBzZXR0ZXIgYW5kIHNldFZhbHVlQXRUaW1lIAotRkFJTCBYIC52
YWx1ZSBzZXR0ZXIgb3V0cHV0IGRvZXMgbm90IGVxdWFsIFswLDAsMCwwLDAuMDUxODA3NjM4MjU3
NzQxOTMsMC4xMDkxOTk4NjY2NTI0ODg3MSwwLjE2NjIyOTg3Mzg5NTY0NTE0LDAuMjIyNzA4Njcy
Mjg1MDc5OTYsMC4yNzg0NDg3OTAzMTE4MTMzNSwwLjMzMzI2NTYwMjU4ODY1MzU2LDAuMzg2OTc3
MDQ2NzI4MTM0MTYsMC40Mzk0MDUxNzMwNjMyNzgyLDAuNDkwMzc2MjYzODU2ODg3OCwwLjUzOTcy
MDc3MzY5Njg5OTQsMC41ODcyNzU2MjQyNzUyMDc1LDAuNjMyODgyNzE0MjcxNTQ1NC4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAuMDAw
MDY1ODE5LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggLnZhbHVlIHNldHRlciBvdXRw
dXQgZG9lcyBub3QgZXF1YWwgWzAuMjc3OTU5NjQ0Nzk0NDY0MSwwLjQzNDkzNDUyNjY4MTksMC41
Nzk1NTQ5NzUwMzI4MDY0LDAuNzA3NzEzMjQ2MzQ1NTIsMC44MTU3Njg5NTcxMzgwNjE1LDAuOTAw
NjUyNzY2MjI3NzIyMiwwLjk1OTk1MzQ4NjkxOTQwMzEsMC45OTE5ODY4MTExNjEwNDEzLDAuOTk1
ODQyNjk1MjM2MjA2LDAuOTcxNDExNzY0NjIxNzM0NiwwLjkxOTM4Nzc1Nzc3ODE2NzcsMC44NDEy
NDg2OTEwODIwMDA3LDAuNzM5MjEzODgzODc2ODAwNSwwLjYxNjE4MTkxMDAzNzk5NDQsMC40NzU2
NDcwNjIwNjMyMTcxNiwwLjMyMTYwMTYyOTI1NzIwMjE1Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lz
ZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MC4wMDAwNjU4MTksInJlbGF0aXZl
VGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVy
cm9yCQlUZXN0IHRocmVzaG9sZAotCVszODRdCTUuMjg0OTQ4Mjc0NDkzMjE3NWUtMgk1LjIxNDY4
ODE4MTg3NzEzNjJlLTEJNC42ODYxOTMzNTQ0Mjc4MTQ1ZS0xCTguOTg2NTI2NTAxNjQ5NjU1NGUt
MQk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKLQlbMzg1XQktNC43MTMyMDMyOTIzNDAwNDAyZS0zCTUu
Njk3MDM4MTczNjc1NTM3MWUtMQk1Ljc0NDE3MDIwNjU5ODkzNzVlLTEJMS4wMDgyNzMwNzY1NTA3
NTY2ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCVszODZdCS02LjIyNjAxMDYyMDU5NDAyNDdl
LTIJNi4xNjA0OTU4NzcyNjU5MzAyZS0xCTYuNzgzMDk2OTM5MzI1MzMyNmUtMQkxLjEwMTA2MzQ2
NTQxOTU1OTJlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01Ci0JWzM4N10JLTEuMTk2MDA2MDg5NDQ4
OTI4OGUtMQk2LjYwMzUyMzQ5MjgxMzExMDRlLTEJNy43OTk1Mjk1ODIyNjIwMzkyZS0xCTEuMTgx
MTE2MzUyNjE4NTA2MmUrMAk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKLQlbMzg4XQktMS43NjU0NDMw
ODY2MjQxNDU1ZS0xCTcuMDI0NjQ5MzgxNjM3NTczMmUtMQk4Ljc5MDA5MjQ2ODI2MTcxODhlLTEJ
MS4yNTEzMjExNjc4OTE4ODI1ZSswCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQotCS4uLmFuZCAxNTk5
NSBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS45MDk3OTU1ODIyOTQ0NjQxZSswIGF0
IGluZGV4IG9mIDEzMDA3LgotCVsxMzAwN10JOS41NTQ4ODIwNDk1NjA1NDY5ZS0xCS05LjU0MzA3
Mzc3MzM4NDA5NDJlLTEJMS45MDk3OTU1ODIyOTQ0NjQxZSswCTIuMDAxMjM3MzY2MTIwOTAxOGUr
MAk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKLQlNYXggUmVsRXJyb3Igb2YgNS40MzUxMzEwMTk3ODU0
Mzc3ZSsyIGF0IGluZGV4IG9mIDQyOS4KLQlbNDI5XQktNS42Njc1MTgzNzczMDQwNzcxZS0xCTEu
MDQ0Njc4NjE4MjAwMTIzM2UtMwk1LjY3Nzk2NTE2MzQ4NjA3ODRlLTEJNS40MzUxMzEwMTk3ODU0
Mzc3ZSsyCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVswXQk5Ljg1Nzk4MzU4OTE3MjM2MzNlLTEJ
Mi43Nzk1OTY0NDc5NDQ2NDExZS0xCTcuMDc4Mzg3MTQxMjI3NzIyMmUtMQkyLjU0NjU1MjA4OTA0
OTQwMThlKzAJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJWzFdCTkuOTY2NjY1NTA2MzYyOTE1MGUt
MQk0LjM0OTM0NTI2NjgxOTAwMDJlLTEJNS42MTczMjAyMzk1NDM5MTQ4ZS0xCTEuMjkxNTMyMzc4
OTk5MjYwMWUrMAk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKKwlbMl0JOS44Njc5NTE4Njk5NjQ1OTk2
ZS0xCTUuNzk1NTQ5NzUwMzI4MDY0MGUtMQk0LjA3MjQwMjExOTYzNjUzNTZlLTEJNy4wMjY3NzQ0
OTk1MzA0NTgyZS0xCTYuNTgxOTAwMDAwMDAwMDAwMWUtNQorCVszXQk5LjU2MzYwMDQyMDk1MTg0
MzNlLTEJNy4wNzcxMzI0NjM0NTUyMDAyZS0xCTIuNDg2NDY3OTU3NDk2NjQzMWUtMQkzLjUxMzM4
MzM3OTk3MjM3MThlLTEJNi41ODE5MDAwMDAwMDAwMDAxZS01CisJWzRdCTkuMDU5MTAyNTM1MjQ3
ODAyN2UtMQk4LjE1NzY4OTU3MTM4MDYxNTJlLTEJOS4wMTQxMjk2Mzg2NzE4NzUwZS0yCTEuMTA0
OTg1NjE2MzA2ODM4MWUtMQk2LjU4MTkwMDAwMDAwMDAwMDFlLTUKKwkuLi5hbmQgMzU3NCBtb3Jl
IGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMS45OTU1MzIyMTQ2NDE1NzEwZSswIGF0IGluZGV4
IG9mIDI4Ny4KKwlbMjg3XQk5Ljk3OTI1ODE3OTY2NDYxMThlLTEJLTkuOTc2MDYzOTY2NzUxMDk4
NmUtMQkxLjk5NTUzMjIxNDY0MTU3MTBlKzAJMi4wMDAzMjAxODc2OTM2Nzk2ZSswCTYuNTgxOTAw
MDAwMDAwMDAwMWUtNQorCU1heCBSZWxFcnJvciBvZiA2LjA4NjUwNzgyMzA3OTI5OTdlKzMgYXQg
aW5kZXggb2YgODkyLgorCVs4OTJdCTQuNjcxNzc4MzgwODcwODE5MWUtMQk3LjY3NDM2OTQwODA1
MDU1MjBlLTUJNC42NzEwMTA5NDM5MzAwMTQwZS0xCTYuMDg2NTA3ODIzMDc5Mjk5N2UrMwk2LjU4
MTkwMDAwMDAwMDAwMDFlLTUKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
IEZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1
dCBpcyBub3QgdHJ1ZS4gR290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKIEZBSUwgPCBbdGVzdDFdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW3Rlc3QyXSBUZXN0
IHZhbHVlIHNldHRlciBhbmQgbW9kdWxhdGlvbiAKLUZBSUwgWCBXaXRoIG1vZHVsYXRpb246IC52
YWx1ZSBzZXR0ZXIgb3V0cHV0IGRvZXMgbm90IGVxdWFsIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLDAsMCwwLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0
ZVRocmVzaG9sZCI6MCwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgotCUluZGV4CUFjdHVhbAkJCUV4
cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzM4NF0JNS4yODYz
NTcxNzkyODQwOTU4ZS0yCTUuMjE0NTY2NTg4NDAxNzk0NGUtMQk0LjY4NTkzMDg3MDQ3MzM4NDll
LTEJOC45ODYyMzI2ODMwNjg2MjIzZS0xCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCVszODVdCTku
NDEwOTYxMjcwMzMyMzM2NGUtMQktNS44NTE4NTg4NTQyOTM4MjMyZS0xCTEuNTI2MjgyMDEyNDYy
NjE2MGUrMAkyLjYwODIwMDMxNzk5NDE3MjBlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzM4
Nl0JNi44OTc1MDU1MjE3NzQyOTIwZS0xCS05Ljc4MTMxNTkyMjczNzEyMTZlLTEJMS42Njc4ODIx
NDQ0NTExNDE0ZSswCTEuNzA1MTcxNTMwNzI4MzY3N2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAK
LQlbMzg3XQktMy40MjUzODU5NTE5OTU4NDk2ZS0xCS0yLjQ5MjA4MDE4MTgzNzA4MTllLTEJOS4z
MzMwNTc3MDE1ODc2NzcwZS0yCTMuNzQ1MDg3MjQ0NjI3NzU3MmUtMQkwLjAwMDAwMDAwMDAwMDAw
MDBlKzAKLQlbMzg4XQktOS44NTI3NTk4MzgxMDQyNDgwZS0xCTcuMTU1MjQ2MTM4NTcyNjkyOWUt
MQkxLjcwMDgwMDU5NzY2NzY5NDFlKzAJMi4zNzY5OTgwMzAxNTcxNjM0ZSswCTAuMDAwMDAwMDAw
MDAwMDAwMGUrMAotCS4uLmFuZCA5NjY4IG1vcmUgZXJyb3JzLgotCU1heCBBYnNFcnJvciBvZiAx
LjkwOTg4NjI0MDk1OTE2NzVlKzAgYXQgaW5kZXggb2YgMTYwNDAuCi0JWzE2MDQwXQktOS41ODg4
NzYzNjY2MTUyOTU0ZS0xCTkuNTA5OTg2MDQyOTc2Mzc5NGUtMQkxLjkwOTg4NjI0MDk1OTE2NzVl
KzAJMi4wMDgyOTU1MjQ2NDk4MTYwZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAotCU1heCBSZWxF
cnJvciBvZiA2Ljg2NjgwMTcyNTg1NDM1OTRlKzQgYXQgaW5kZXggb2YgNDI4MC4KLQlbNDI4MF0J
LTUuNjU5NzU0ODcyMzIyMDgyNWUtMQk4LjI0MjMxOTM4MTY3OTQwODNlLTYJNS42NTk4MzcyOTU1
MTU4OTkzZS0xCTYuODY2ODAxNzI1ODU0MzU5NGUrNAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKLSBh
c3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBXaXRoIG1vZHVsYXRp
b246IC52YWx1ZSBzZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlz
IG5vdCB0cnVlLiBHb3QgZmFsc2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQotRkFJTCA8IFt0ZXN0Ml0gMiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3Nl
cnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5F
UiBGSU5JU0hFRDogMyBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0
dGVyIG91dHB1dCBlcXVhbHMgWzAuNzY1MDc2Njk2ODcyNzExMiwwLjE5NDYzNzMxMzQ4NTE0NTU3
LDAuNzQ1MDU3NzYxNjY5MTU4OSwwLjYyMjQ2MTMxODk2OTcyNjYsMC40ODIxODM4NDM4NTEwODk1
LDAuMzI4MjA5ODQ3MjExODM3NzcsMC4xNjQ5MTMxOTIzOTEzOTU1NywtMC4wMDMwNjgwNDc1NzU2
NTI1OTkzLC0wLjE3MDk2MTkxNjQ0NjY4NTgsLTAuODA4ODM2Njk4NTMyMTA0NSwwLjA2NTEyNDI4
MDc1MDc1MTUsLTAuMzYzODY1NjEzOTM3Mzc3OTMsLTAuMDc4MDM4ODM0MDM1Mzk2NTgsMC4xNTky
MTY3NzY0OTAyMTE1LDAuODgyNzkxNjk3OTc4OTczNCwtMC4zNzk4MTg0MDk2ODEzMjAyLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MCwi
cmVsYXRpdmVUaHJlc2hvbGQiOjB9LiAKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBz
ZXR0ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFT
UyA8IFt0ZXN0Ml0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAK
K0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8v
dGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5nLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
YXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL25vLWRlemlwcGVyaW5n
LWV4cGVjdGVkLnR4dAppbmRleCA3YmRlNTgyNWQ4ZWIzNzhlYTUwOWZmNjFiYzk5ODI3YzM3ODQz
Zjc0Li5lMDA5ZjRhMWQ5YmMwNTM3ZDNmYWE3Y2E0NTk5MzAxNzNjNmE3OTEzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3Ro
ZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFjZS9uby1kZXppcHBlcmluZy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZhY2Uvbm8tZGV6aXBwZXJp
bmctZXhwZWN0ZWQudHh0CkBAIC0xLDMzICsxLDM4IEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLUNPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2Ug
UmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLgotCi1IYXJuZXNzIEVycm9yIChGQUlMKSwgbWVzc2FnZSA9IFVuaGFuZGxlZCByZWpl
Y3Rpb246IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4KIAogUEFTUyAjIEFVRElU
IFRBU0sgUlVOTkVSIFNUQVJURUQuIAotRkFJTCBFeGVjdXRpbmcgInRlc3QwIiBwcm9taXNlX3Rl
c3Q6IFVuaGFuZGxlZCByZWplY3Rpb24gd2l0aCB2YWx1ZTogb2JqZWN0ICJSZWZlcmVuY2VFcnJv
cjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogQ29uc3RhbnRTb3VyY2VOb2RlIgorUEFTUyBFeGVjdXRp
bmcgInRlc3QwIiAKIFBBU1MgRXhlY3V0aW5nICJ0ZXN0MiIgCiBQQVNTIEV4ZWN1dGluZyAidGVz
dDMiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3QwXSBEZXppcHBlcmluZyBvZiBH
YWluTm9kZSByZW1vdmVkIAorRkFJTCBYIG91dHB1dFswOjEyN106IEV4cGVjdGVkIDEgZm9yIGFs
bCB2YWx1ZXMgYnV0IGZvdW5kIDEyOCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFs
CisJWzBdCTAuOTk3NTAwMDAyMzg0MTg1OAorCVsxXQkwLjk5NTAxMjUyMTc0Mzc3NDQKKwlbMl0J
MC45OTI1Mzc0Mzg4Njk0NzYzCisJWzNdCTAuOTkwMDc0NzUzNzYxMjkxNQorCS4uLmFuZCAxMjQg
bW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBY
IG91dHB1dFsxMjg6XTogRXhwZWN0ZWQgMC41IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCA4OTYg
dW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVswXQkwLjc2MTkwNjkyMTg2MzU1
NTkKKwlbMV0JMC43NjA1OTc0MDc4MTc4NDA2CisJWzJdCTAuNzU5Mjk0NDUwMjgzMDUwNQorCVsz
XQkwLjc1Nzk5Nzk4OTY1NDU0MQorCS4uLmFuZCA4OTIgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCA8IFt0ZXN0MF0gMiBvdXQgb2YgMiBhc3Nl
cnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UK
IFBBU1MgPiBbdGVzdDJdIENvbXBhcmUgdmFsdWUgc2V0dGVyIGFuZCBzZXRWYWx1ZUF0VGltZSAK
LUZBSUwgWCAudmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUg
YXJyYXkgWzAsMC4xNjc5MzgzMDY5Mjc2ODA5NywwLjMzMTEwNjMwNTEyMjM3NTUsMC40ODQ4Njky
NDE3MTQ0Nzc1NCwwLjYyNDg1OTUxMTg1MjI2NDQsMC43NDcxMDA1OTE2NTk1NDU5LDAuODQ4MTIw
MzMxNzY0MjIxMiwwLjkyNTA0OTM2NDU2NjgwMywwLjk3NTcwMjIyNjE2MTk1NjgsMC45OTg2NDAx
Nzk2MzQwOTQyLDAuOTkzMjEyMDQ0MjM5MDQ0MiwwLjk1OTU3MTQyMTE0NjM5MjgsMC44OTg2NzQ0
ODgwNjc2MjcsMC44MTIyNTA1NTQ1NjE2MTUsMC43MDI3NTQ3OTU1NTEzLDAuNTczMjk3MTQyOTgy
NDgyOS4uLl0gYnV0IGRpZmZlcnMgaW4gNjQwIHBsYWNlczoKK0ZBSUwgWCAudmFsdWUgc2V0dGVy
IG91dHB1dCBleHBlY3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAuMjc3MTYzODYzMTgy
MDY3ODcsMC4yNTM5NDczMTc2MDAyNTAyNCwwLjIyMzUxNzM0MzQwMTkwODg3LDAuMTg2NzM4NDAx
NjUxMzgyNDUsMC4xNDQ2NTUxNTMxNTUzMjY4NCwwLjA5ODQ2Mjk2MTYxNDEzMTkzLDAuMDQ5NDcz
OTU5OTUyNTkyODUsLTAuMDAwOTIwNDE0Mjg0MzM3MzEyLC0wLjA1MTI4ODU3ODY1OTI5NjAzNiwt
MC4xMDAxOTk5MTU0Njg2OTI3OCwtMC4xNDYyNjUwNDQ4MDgzODc3NiwtMC4xODgxNzU1MjkyNDE1
NjE5LC0wLjIyNDc0MDkyMjQ1MTAxOTMsLTAuMjU0OTIyNTA5MTkzNDIwNCwtMC4yNzc4NjMwODUy
Njk5MjgsLTAuMjkyOTEwOTMzNDk0NTY3ODcuLi5dIGJ1dCBkaWZmZXJzIGluIDY0MCBwbGFjZXM6
CiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKLQlbMzg0XQk5LjIzODc5NTA0MjAzNzk2MzllLTEJ
Mi43NzE2Mzg2MzE4MjA2Nzg3ZS0xCi0JWzM4NV0JOC40NjQ5MTAzODc5OTI4NTg5ZS0xCTIuNTM5
NDczMTc2MDAyNTAyNGUtMQotCVszODZdCTcuNDUwNTc3NjE2NjkxNTg5NGUtMQkyLjIzNTE3MzQz
NDAxOTA4ODdlLTEKLQlbMzg3XQk2LjIyNDYxMzE4OTY5NzI2NTZlLTEJMS44NjczODQwMTY1MTM4
MjQ1ZS0xCisJWzBdCTkuMjA2NDU5NTIyMjQ3MzE0NWUtMQkyLjc3MTYzODYzMTgyMDY3ODdlLTEK
KwlbMV0JOC40MDU4MDQwMzgwNDc3OTA1ZS0xCTIuNTM5NDczMTc2MDAyNTAyNGUtMQorCVsyXQk3
LjM3MjczNjkzMDg0NzE2ODBlLTEJMi4yMzUxNzM0MzQwMTkwODg3ZS0xCisJWzNdCTYuMTM4MTE5
Njk3NTcwODAwOGUtMQkxLjg2NzM4NDAxNjUxMzgyNDVlLTEKIAkuLi5hbmQgNjM2IG1vcmUgZXJy
b3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgWCAudmFsdWUg
c2V0dGVyIG91dHB1dCBtYXRjaGVzIHNldFZhbHVlQXRUaW1lIG91dHB1dCBpcyBub3QgdHJ1ZS4g
R290IGZhbHNlLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBb
dGVzdDJdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW3Rlc3QzXSBBdXRvbWF0aW9uIGVmZmVjdHMg
Ci1GQUlMIFggV2l0aCBtb2R1bGF0aW9uOiAudmFsdWUgc2V0dGVyIG91dHB1dCBleHBlY3RlZCB0
byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgWzAsMC4yMzA3NzQ3NzUxNDc0MzgwNSwwLjU2MDg4NDU5
NDkxNzI5NzQsMC45Mjc1MzY1NDcxODM5OTA1LDEuMjQ5Mjk1NTkyMzA4MDQ0NCwxLjQ0OTc1MzE2
NTI0NTA1NjIsMS40ODAwMTg5NzMzNTA1MjUsMS4zMzMzMzk1NzE5NTI4MTk4LDEuMDQ3NDc5Mjcx
ODg4NzMzLDAuNjk0MTI1NjUyMzEzMjMyNCwwLjM1ODQyNjAwNDY0ODIwODYsMC4xMTQ2OTY3MzM2
NTM1NDUzOCwwLjAwNTQ3NTY0NjM1MDUzMjc3LDAuMDMwMDkxMTMxMTA2MDE5MDIsMC4xNDYwOTgw
MTc2OTI1NjU5MiwwLjI4MzEwMTg1NjcwODUyNjYuLi5dIGJ1dCBkaWZmZXJzIGluIDY0MCBwbGFj
ZXM6Ci0JSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQKLQlbMzg0XQkxLjI3NzQzMjc5OTMzOTI5NDRl
KzAJNi4zMDcxNzIxNzkyMjIxMDY5ZS0xCi0JWzM4NV0JOC41NDI4MTk2MTkxNzg3NzIwZS0xCTIu
NjE3MzgyNDA3MTg4NDE1NWUtMQotCVszODZdCTQuNzI2NTQ5Njg1MDAxMzczM2UtMQktNC44ODg1
NDMxMTQwNjYxMjQwZS0yCi0JWzM4N10JMS45NDYzNDEzOTUzNzgxMTI4ZS0xCS0yLjQxMDg4Nzc3
NzgwNTMyODRlLTEKLQkuLi5hbmQgNjM2IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIg
b3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIG5vdCB0cnVlLiBHb3QgZmFs
c2UuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFt0ZXN0M10g
MiBvdXQgb2YgMiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0ZXIgb3V0
cHV0IGlzIGlkZW50aWNhbCB0byB0aGUgYXJyYXkgWzAuNjMwNzE3MjE3OTIyMjEwNywwLjI2MTcz
ODI0MDcxODg0MTU1LC0wLjA0ODg4NTQzMTE0MDY2MTI0LC0wLjI0MTA4ODc3Nzc4MDUzMjg0LC0w
LjI5MzczMDkxNDU5Mjc0MjksLTAuMjI5Mzk5NDEyODcwNDA3MSwtMC4xMDYxMzcwNDQ3Mjc4MDIy
OCwwLjAwMTM4NDE5NTUyMjQwNTIwNzIsMC4wMjU1Nzc4NDg3NzcxNzQ5NSwtMC4wNzI1NjQ2ODM4
NTQ1Nzk5MywtMC4yOTA2NTMzNzc3NzEzNzc1NiwtMC41ODQ2MTAzNDI5Nzk0MzEyLC0wLjg4MTAz
Njg3NzYzMjE0MTEsLTEuMDk4NTg4OTQzNDgxNDQ1MywtMS4xNzIwMjEzODkwMDc1Njg0LC0xLjA3
MTc1MjA3MTM4MDYxNTIuLi5dLiAKK1BBU1MgICBXaXRoIG1vZHVsYXRpb246IC52YWx1ZSBzZXR0
ZXIgb3V0cHV0IG1hdGNoZXMgc2V0VmFsdWVBdFRpbWUgb3V0cHV0IGlzIHRydWUuIAorUEFTUyA8
IFt0ZXN0M10gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgMiBhc3NlcnRpb25zKSAKIEZB
SUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMiBvdXQgb2YgMyB0YXNrcyB3ZXJlIGZh
aWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL2RldHVuZS1saW1pdGluZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0b3Jub2RlLWludGVyZmFjZS9kZXR1
bmUtbGltaXRpbmctZXhwZWN0ZWQudHh0CmluZGV4IDM5ZjZhZGU1ZmU3ZGNkYTgzMzcxOTZmNjY2
ZDgwMDNiMjA4MDZmZTIuLjkwZjcxZmZiNGI4NjUyNDMwZmU4MWZhYWVhMWJmMzVlOTk2YzIxOGEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL2RldHVu
ZS1saW1pdGluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9k
ZS1pbnRlcmZhY2UvZGV0dW5lLWxpbWl0aW5nLWV4cGVjdGVkLnR4dApAQCAtMTQsMTAgKzE0LDEw
IEBAIFBBU1MgICBGcmFtZSB3aGVyZSBkZXR1bmVkIG9zY2lsbGF0b3IgcmVhY2hlcyBOeXF1aXN0
IGlzIGVxdWFsIHRvIDUuCiBQQVNTICAgb3NjWzA6NF0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29u
dGFpbnMgNCBkaWZmZXJlbnQgdmFsdWVzKS4gCiBGQUlMIFggb3NjWzU6XTogRXhwZWN0ZWQgMCBm
b3IgYWxsIHZhbHVlcyBidXQgZm91bmQgNTUwNiB1bmV4cGVjdGVkIHZhbHVlczogCiAJSW5kZXgJ
QWN0dWFsCi0JWzBdCTAuMDAxMzA5MDAwNjU0MTQ2MDc1MgotCVsxXQkwLjAwMTU3MDgwMjUzMTIw
NTExNzcKLQlbMl0JMC4wMDE4MzI2MTU5MzMzODEwMjEKLQlbM10JMC4wMDIwOTQ0MjkyMTkxNDE2
MDI1CisJWzBdCTAuMDAxOTE3NTAwNzQ3MzY3NzM5NworCVsxXQkwLjAwMjMwMTAxNjM1Njc5NjAy
NjIKKwlbMl0JMC4wMDI2ODQ1MzE5NjYyMjQzMTI4CisJWzNdCTAuMDAzMDY4MDQ3NTc1NjUyNTk5
MwogCS4uLmFuZCA1NTAyIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKIEZBSUwgPCBbZGV0dW5lIGF1dG9tYXRpb25dIDEgb3V0IG9mIDMgYXNzZXJ0aW9u
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBGQUlM
ICMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgb3V0IG9mIDIgdGFza3Mgd2VyZSBmYWls
ZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2Uvb3NjLWJhc2ljLXdhdmVmb3JtLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtb3NjaWxsYXRvcm5vZGUtaW50ZXJmYWNlL29zYy1i
YXNpYy13YXZlZm9ybS1leHBlY3RlZC50eHQKaW5kZXggZmRjZjk2Y2I3YmQxYzliNjFkNGUyY2Y3
NTg4N2IyMWIxZWRmZTk4Yi4uNmVhZGUyNzI0MWY0NTZlODgyNjMwYWNkMjk1ZDZjMWQxNWEwM2Iw
MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1vc2NpbGxhdG9ybm9kZS1pbnRlcmZhY2Uvb3Nj
LWJhc2ljLXdhdmVmb3JtLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW9zY2lsbGF0
b3Jub2RlLWludGVyZmFjZS9vc2MtYmFzaWMtd2F2ZWZvcm0tZXhwZWN0ZWQudHh0CkBAIC0xMCw2
NiArMTAsNjUgQEAgUEFTUyBBdWRpdCByZXBvcnQKIFBBU1MgPiBbVGVzdCAwXSBTaW5lIHdhdmU6
IDEwMCBIeiAKIEZBSUwgWCBTaW5lOiAxMDAgSHogZG9lcyBub3QgZXF1YWwgWzAsMC4wMTQyNDcx
MDM1OTQyNDM1MjYsMC4wMjg0OTEzMTQ1MDA1NzAyOTcsMC4wNDI3Mjk3NDI4MjUwMzEyOCwwLjA1
Njk1OTQ5ODY3MzY3NzQ0NCwwLjA3MTE3NzY5MTIyMTIzNzE4LDAuMDg1MzgxNDMzMzY3NzI5MTks
MC4wOTk1Njc4NDU0NjM3NTI3NSwwLjExMzczNDA0NDEzNDYxNjg1LDAuMTI3ODc3MTYwOTA2Nzkx
NywwLjE0MTk5NDMxMjQwNTU4NjI0LDAuMTU2MDgyNjQ1MDU4NjMxOSwwLjE3MDEzOTI5Nzg0Mjk3
OTQzLDAuMTg0MTYxNDA5NzM1Njc5NjMsMC4xOTgxNDYxNDk1MTYxMDU2NSwwLjIxMjA5MDY1NjE2
MTMwODMuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhy
ZXNob2xkIjowLjAwMDAwMTgwNDUsInJlbGF0aXZlVGhyZXNob2xkIjowfS4KIAlJbmRleAlBY3R1
YWwJCQlFeHBlY3RlZAkJQWJzRXJyb3IJCVJlbEVycm9yCQlUZXN0IHRocmVzaG9sZAotCVsxXQky
LjYxNzY5Njg1ODk0MjUwODdlLTIJMS40MjQ3MTAzNTk0MjQzNTI2ZS0yCTEuMTkyOTg2NDk5NTE4
MTU2MWUtMgk4LjM3MzUzNzA2MDU0NDU0ODBlLTEJMS44MDQ1MDAwMDAwMDAwMDAwZS02Ci0JWzJd
CTUuMjMzNTk4NTAwNDkwMTg4NmUtMgkyLjg0OTEzMTQ1MDA1NzAyOTdlLTIJMi4zODQ0NjcwNTA0
MzMxNTg5ZS0yCTguMzY5MTAxNTc0Mzk1MzQ3OWUtMQkxLjgwNDUwMDAwMDAwMDAwMDBlLTYKLQlb
M10JNy44NDU5MTUxMDg5MTkxNDM3ZS0yCTQuMjcyOTc0MjgyNTAzMTI4MWUtMgkzLjU3Mjk0MDgy
NjQxNjAxNTZlLTIJOC4zNjE3MTg1MzY1Mzg4NDAyZS0xCTEuODA0NTAwMDAwMDAwMDAwMGUtNgot
CVs0XQkxLjA0NTI4NDU2OTI2MzQ1ODNlLTEJNS42OTU5NDk4NjczNjc3NDQ0ZS0yCTQuNzU2ODk1
ODI1MjY2ODM4MWUtMgk4LjM1MTM2NTMzMTU2NTIwMDNlLTEJMS44MDQ1MDAwMDAwMDAwMDAwZS02
Ci0JWzVdCTEuMzA1MjYxODUwMzU3MDU1N2UtMQk3LjExNzc2OTEyMjEyMzcxODNlLTIJNS45MzQ4
NDkzODE0NDY4Mzg0ZS0yCTguMzM4MDc1MTQ2MzI2Mjc4MWUtMQkxLjgwNDUwMDAwMDAwMDAwMDBl
LTYKKwlbMV0JMy44MzQwMTI1MjMyOTM0OTUyZS0yCTEuNDI0NzEwMzU5NDI0MzUyNmUtMgkyLjQw
OTMwMjE2Mzg2OTE0MjVlLTIJMS42OTEwODIwODQxMTA0OTIxZSswCTEuODA0NTAwMDAwMDAwMDAw
MGUtNgorCVsyXQk3LjY2MjM4MjcyMTkwMDkzOTllLTIJMi44NDkxMzE0NTAwNTcwMjk3ZS0yCTQu
ODEzMjUxMjcxODQzOTEwMmUtMgkxLjY4OTM3NDkzOTc3MjQ1NzhlKzAJMS44MDQ1MDAwMDAwMDAw
MDAwZS02CisJWzNdCTEuMTQ3OTQ5NzcwMDkyOTY0MmUtMQk0LjI3Mjk3NDI4MjUwMzEyODFlLTIJ
Ny4yMDY1MjM0MTg0MjY1MTM3ZS0yCTEuNjg2NTM1NjQwNTEwNTQ4M2UrMAkxLjgwNDUwMDAwMDAw
MDAwMDBlLTYKKwlbNF0JMS41Mjc5NzE3NzQzMzk2NzU5ZS0xCTUuNjk1OTQ5ODY3MzY3NzQ0NGUt
Mgk5LjU4Mzc2Nzg3NjAyOTAxNDZlLTIJMS42ODI1NTgzMjYzODgxMzkwZSswCTEuODA0NTAwMDAw
MDAwMDAwMGUtNgorCVs1XQkxLjkwNTc0ODI0ODEwMDI4MDhlLTEJNy4xMTc3NjkxMjIxMjM3MTgz
ZS0yCTEuMTkzOTcxMzM1ODg3OTA4OWUtMQkxLjY3NzQ1MTYyMTk5MzEzNTdlKzAJMS44MDQ1MDAw
MDAwMDAwMDAwZS02CiAJLi4uYW5kIDI1MCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2Yg
MS42MzQ3NTM4ODI4ODQ5NzkyZSswIGF0IGluZGV4IG9mIDE2NS4KLQlbMTY1XQktOS4yMzg3OTI2
NTc4NTIxNzI5ZS0xCTcuMTA4NzQ2MTcwOTk3NjE5NmUtMQkxLjYzNDc1Mzg4Mjg4NDk3OTJlKzAJ
Mi4yOTk2Mzc0Mzc1NDc2NzIwZSswCTEuODA0NTAwMDAwMDAwMDAwMGUtNgotCU1heCBSZWxFcnJv
ciBvZiA3LjExODc5MzMyODUwNDQxMTBlKzEgYXQgaW5kZXggb2YgMjIwLgotCVsyMjBdCS01LjAw
MDAwMDU5NjA0NjQ0NzhlLTEJNy4xMjM3MzI0NzM3MDEyMzg2ZS0zCTUuMDcxMjM3OTIwNzgzNDYw
MWUtMQk3LjExODc5MzMyODUwNDQxMTBlKzEJMS44MDQ1MDAwMDAwMDAwMDAwZS02CisJTWF4IEFi
c0Vycm9yIG9mIDEuOTg1Njk1ODM4OTI4MjIyN2UrMCBhdCBpbmRleCBvZiAxMjEuCisJWzEyMV0J
LTkuOTc0MDIxMzE1NTc0NjQ2MGUtMQk5Ljg4MjkzNzA3MzcwNzU4MDZlLTEJMS45ODU2OTU4Mzg5
MjgyMjI3ZSswCTIuMDA5MjE2MzEzMDQ0MTY0M2UrMAkxLjgwNDUwMDAwMDAwMDAwMDBlLTYKKwlN
YXggUmVsRXJyb3Igb2YgMS4xNjE5NDU4NzM3OTc3ODM3ZSsyIGF0IGluZGV4IG9mIDIyMC4KKwlb
MjIwXQk4LjM0ODYyODg3ODU5MzQ0NDhlLTEJNy4xMjM3MzI0NzM3MDEyMzg2ZS0zCTguMjc3Mzkx
NTUzODU2NDMyNGUtMQkxLjE2MTk0NTg3Mzc5Nzc4MzdlKzIJMS44MDQ1MDAwMDAwMDAwMDAwZS02
CiAgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggU2luZTogU05S
IChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTguOTEuIEdvdCAtMi42MjA0
Mzc2MzI4MjE0My4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFgg
U2luZTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTguOTEuIEdv
dCAtMy41NTIzOTc3NDUyMzQwNzYzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKIEZBSUwgPCBbVGVzdCAwXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtUZXN0IDFdIFNpbmUg
d2F2ZTogLTEwMCBIeiAKIEZBSUwgWCBTaW5lOiAtMTAwIEh6IGRvZXMgbm90IGVxdWFsIFswLC0w
LjAxNDI0NzEwMzU5NDI0MzUyNiwtMC4wMjg0OTEzMTQ1MDA1NzAyOTcsLTAuMDQyNzI5NzQyODI1
MDMxMjgsLTAuMDU2OTU5NDk4NjczNjc3NDQ0LC0wLjA3MTE3NzY5MTIyMTIzNzE4LC0wLjA4NTM4
MTQzMzM2NzcyOTE5LC0wLjA5OTU2Nzg0NTQ2Mzc1Mjc1LC0wLjExMzczNDA0NDEzNDYxNjg1LC0w
LjEyNzg3NzE2MDkwNjc5MTcsLTAuMTQxOTk0MzEyNDA1NTg2MjQsLTAuMTU2MDgyNjQ1MDU4NjMx
OSwtMC4xNzAxMzkyOTc4NDI5Nzk0MywtMC4xODQxNjE0MDk3MzU2Nzk2MywtMC4xOTgxNDYxNDk1
MTYxMDU2NSwtMC4yMTIwOTA2NTYxNjEzMDgzLi4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xl
cmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6NC43Njg0ZS03LCJyZWxhdGl2ZVRocmVzaG9s
ZCI6MH0uCiAJSW5kZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVz
dCB0aHJlc2hvbGQKLQlbMV0JLTIuNjE3Njk2ODU4OTQyNTA4N2UtMgktMS40MjQ3MTAzNTk0MjQz
NTI2ZS0yCTEuMTkyOTg2NDk5NTE4MTU2MWUtMgk4LjM3MzUzNzA2MDU0NDU0ODBlLTEJNC43Njgz
OTk5OTk5OTk5OTk3ZS03Ci0JWzJdCS01LjIzMzU5MzY1NzYxMjgwMDZlLTIJLTIuODQ5MTMxNDUw
MDU3MDI5N2UtMgkyLjM4NDQ2MjIwNzU1NTc3MDllLTIJOC4zNjkwODQ1NzY2NjI5NzYyZS0xCTQu
NzY4Mzk5OTk5OTk5OTk5N2UtNwotCVszXQktNy44NDU4OTM1MDIyMzU0MTI2ZS0yCS00LjI3Mjk3
NDI4MjUwMzEyODFlLTIJMy41NzI5MTkyMTk3MzIyODQ1ZS0yCTguMzYxNjY3OTcwNjI3ODMxOGUt
MQk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKLQlbNF0JLTEuMDQ1MjgzMjI4MTU4OTUwOGUtMQktNS42
OTU5NDk4NjczNjc3NDQ0ZS0yCTQuNzU2ODgyNDE0MjIxNzYzNmUtMgk4LjM1MTM0MTc4NjY4NjE0
MjhlLTEJNC43NjgzOTk5OTk5OTk5OTk3ZS03Ci0JWzVdCS0xLjMwNTI2MDIxMTIyOTMyNDNlLTEJ
LTcuMTE3NzY5MTIyMTIzNzE4M2UtMgk1LjkzNDgzMjk5MDE2OTUyNTFlLTIJOC4zMzgwNTIxMTc2
NTM5MDU3ZS0xCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNworCVsxXQktMy44MzQwMDg3OTgwMDMxOTY3
ZS0yCS0xLjQyNDcxMDM1OTQyNDM1MjZlLTIJMi40MDkyOTg0Mzg1Nzg4NDQxZS0yCTEuNjkxMDc5
NDY5MzQwMjE2OWUrMAk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKKwlbMl0JLTcuNjYyMzkzODk3Nzcx
ODM1M2UtMgktMi44NDkxMzE0NTAwNTcwMjk3ZS0yCTQuODEzMjYyNDQ3NzE0ODA1NmUtMgkxLjY4
OTM3ODg2MjMyNjA4MjFlKzAJNC43NjgzOTk5OTk5OTk5OTk3ZS03CisJWzNdCS0xLjE0Nzk0ODQy
ODk4ODQ1NjdlLTEJLTQuMjcyOTc0MjgyNTAzMTI4MWUtMgk3LjIwNjUxMDAwNzM4MTQzOTJlLTIJ
MS42ODY1MzI1MDE5MzY3NjE2ZSswCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNworCVs0XQktMS41Mjc5
NzEwMjkyODE2MTYyZS0xCS01LjY5NTk0OTg2NzM2Nzc0NDRlLTIJOS41ODM3NjA0MjU0NDg0MTc3
ZS0yCTEuNjgyNTU3MDE4MzM5MzAyNmUrMAk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKKwlbNV0JLTEu
OTA1NzQ3ODAxMDY1NDQ0OWUtMQktNy4xMTc3NjkxMjIxMjM3MTgzZS0yCTEuMTkzOTcwODg4ODUz
MDczMWUtMQkxLjY3NzQ1MDk5MzkzODQzNDhlKzAJNC43NjgzOTk5OTk5OTk5OTk3ZS03CiAJLi4u
YW5kIDI1MCBtb3JlIGVycm9ycy4KLQlNYXggQWJzRXJyb3Igb2YgMS42MzQ3NTQxMjEzMDM1NTgz
ZSswIGF0IGluZGV4IG9mIDE2NS4KLQlbMTY1XQk5LjIzODc5NTA0MjAzNzk2MzllLTEJLTcuMTA4
NzQ2MTcwOTk3NjE5NmUtMQkxLjYzNDc1NDEyMTMwMzU1ODNlKzAJMi4yOTk2Mzc3NzI5MzUzMzkw
ZSswCTQuNzY4Mzk5OTk5OTk5OTk5N2UtNwotCU1heCBSZWxFcnJvciBvZiA3LjExODc5NTAwMTkx
NDk0NDBlKzEgYXQgaW5kZXggb2YgMjIwLgotCVsyMjBdCTUuMDAwMDAxNzg4MTM5MzQzM2UtMQkt
Ny4xMjM3MzI0NzM3MDEyMzg2ZS0zCTUuMDcxMjM5MTEyODc2MzU1NmUtMQk3LjExODc5NTAwMTkx
NDk0NDBlKzEJNC43NjgzOTk5OTk5OTk5OTk3ZS03CisJTWF4IEFic0Vycm9yIG9mIDEuOTg1Njk1
ODM4OTI4MjIyN2UrMCBhdCBpbmRleCBvZiAxMjEuCisJWzEyMV0JOS45NzQwMjEzMTU1NzQ2NDYw
ZS0xCS05Ljg4MjkzNzA3MzcwNzU4MDZlLTEJMS45ODU2OTU4Mzg5MjgyMjI3ZSswCTIuMDA5MjE2
MzEzMDQ0MTY0M2UrMAk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKKwlNYXggUmVsRXJyb3Igb2YgMS4x
NjE5NDU3MDY0NTY3MzA0ZSsyIGF0IGluZGV4IG9mIDIyMC4KKwlbMjIwXQktOC4zNDg2Mjc2ODY1
MDA1NDkzZS0xCS03LjEyMzczMjQ3MzcwMTIzODZlLTMJOC4yNzczOTAzNjE3NjM1MzY5ZS0xCTEu
MTYxOTQ1NzA2NDU2NzMwNGUrMgk0Ljc2ODM5OTk5OTk5OTk5OTdlLTcKICBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTaW5lOiBTTlIgKGRiKSBpcyBub3QgZ3Jl
YXRlciB0aGFuIG9yIGVxdWFsIHRvIDEzMC45NS4gR290IC0yLjYyMDQzNzUyNzAzODEzMzUuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIFNpbmU6IFNOUiAoZGIp
IGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTMwLjk1LiBHb3QgLTMuNTUyMzk3NzQx
MTI4MTY4LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbVGVz
dCAxXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtUZXN0IDJdIFNpbmUgd2F2ZTogMiBIeiAKIEZB
SUwgWCBTaW5lOiAyIEh6IGRvZXMgbm90IGVxdWFsIFswLDAuMDAwMjg0OTUxNzA0MDg4NTk4NSww
LjAwMDU2OTkwMzQwODE3NzE5NywwLjAwMDg1NDg1NTA1NDA1ODEzNDYsMC4wMDExMzk4MDY1ODM1
MjM3NTAzLDAuMDAxNDI0NzU4MTEyOTg5MzY2LDAuMDAxNzA5NzA5NDA5NjI0MzM4MiwwLjAwMTk5
NDY2MDU4OTg0Mzk4ODQsMC4wMDIyNzk2MTE3NzAwNjM2Mzg3LDAuMDAyNTY0NTYyNzE3NDUyNjQ1
MywwLjAwMjg0OTUxMzE5OTE4MDM2NDYsMC4wMDMxMzQ0NjM2ODA5MDgwODQsMC4wMDM0MTk0MTM5
Mjk4MDUxNTk2LDAuMDAzNzA0MzYzNzEzMDQwOTQ4LDAuMDAzOTg5MzEzMjYzNDQ2MDkzLDAuMDA0
Mjc0MjYyNTgxMDIwNTk0Li4uXSB3aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJh
YnNvbHV0ZVRocmVzaG9sZCI6MS40NTE2ZS03LCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCiAJSW5k
ZXgJQWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQK
LQlbMV0JNS4yMzYwMDI2MTY1ODQzMDEwZS00CTIuODQ5NTE3MDQwODg1OTg0OWUtNAkyLjM4NjQ4
NTU3NTY5ODMxNjFlLTQJOC4zNzUwNTI4Mjk4NTE4MjM0ZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUt
NwotCVsyXQkxLjA0NzIwMDUyMzMxNjg2MDJlLTMJNS42OTkwMzQwODE3NzE5Njk4ZS00CTQuNzcy
OTcxMTUxMzk2NjMyMmUtNAk4LjM3NTA1MjgyOTg1MTgyMzRlLTEJMS40NTE2MDAwMDAwMDAwMDAx
ZS03Ci0JWzNdCTEuNTcwODAyNTMxMjA1MTE3N2UtMwk4LjU0ODU1MDU0MDU4MTM0NTZlLTQJNy4x
NTk0NzQ3NzE0Njk4MzE1ZS00CTguMzc1MDc0NTA4MjI1Mjg2NGUtMQkxLjQ1MTYwMDAwMDAwMDAw
MDFlLTcKLQlbNF0JMi4wOTQ0MjkyMTkxNDE2MDI1ZS0zCTEuMTM5ODA2NTgzNTIzNzUwM2UtMwk5
LjU0NjIyNjM1NjE3ODUyMjFlLTQJOC4zNzUzMDM3NTI1NTk1Mjg2ZS0xCTEuNDUxNjAwMDAwMDAw
MDAwMWUtNwotCVs1XQkyLjYxODA1NjAyMzQ5MzQwOTJlLTMJMS40MjQ3NTgxMTI5ODkzNjYxZS0z
CTEuMTkzMjk3OTEwNTA0MDQzMWUtMwk4LjM3NTQ0MjExNjI3ODM2ODhlLTEJMS40NTE2MDAwMDAw
MDAwMDAxZS03CisJWzFdCTcuNjY5OTI1Njg5Njk3MjY1NmUtNAkyLjg0OTUxNzA0MDg4NTk4NDll
LTQJNC44MjA0MDg2NDg4MTEyODA3ZS00CTEuNjkxNjU4MTIyOTg5MzI1MWUrMAkxLjQ1MTYwMDAw
MDAwMDAwMDFlLTcKKwlbMl0JMS41MzM5ODUxMzc5Mzk0NTMxZS0zCTUuNjk5MDM0MDgxNzcxOTY5
OGUtNAk5LjY0MDgxNzI5NzYyMjU2MTVlLTQJMS42OTE2NTgxMjI5ODkzMjUxZSswCTEuNDUxNjAw
MDAwMDAwMDAwMWUtNworCVszXQkyLjMwMTAxNjM1Njc5NjAyNjJlLTMJOC41NDg1NTA1NDA1ODEz
NDU2ZS00CTEuNDQ2MTYxMzAyNzM3ODkxN2UtMwkxLjY5MTcwMzUxODQ3Njg4MjNlKzAJMS40NTE2
MDAwMDAwMDAwMDAxZS03CisJWzRdCTMuMDY4MDQ3NTc1NjUyNTk5M2UtMwkxLjEzOTgwNjU4MzUy
Mzc1MDNlLTMJMS45MjgyNDA5OTIxMjg4NDkwZS0zCTEuNjkxNzI2NDkxMTQ1MjE0NmUrMAkxLjQ1
MTYwMDAwMDAwMDAwMDFlLTcKKwlbNV0JMy44MzUwMDYzODQxNzg5OTYxZS0zCTEuNDI0NzU4MTEy
OTg5MzY2MWUtMwkyLjQxMDI0ODI3MTE4OTYzMDBlLTMJMS42OTE2ODk0NTE4NTU0ODEwZSswCTEu
NDUxNjAwMDAwMDAwMDAwMWUtNwogCS4uLmFuZCAyNTAgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vy
cm9yIG9mIDYuMDUyMjQ3NDM0ODU0NTA3NGUtMiBhdCBpbmRleCBvZiAyNTUuCi0JWzI1NV0JMS4z
MzEyMTIzNzE1ODc3NTMzZS0xCTcuMjU5ODc2MjgxMDIzMDI1NWUtMgk2LjA1MjI0NzQzNDg1NDUw
NzRlLTIJOC4zMzY1NzEwMzg2NDgxMzQwZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUtNwotCU1heCBS
ZWxFcnJvciBvZiA4LjM3NTQ5MzI4MzEyNDE1NDZlLTEgYXQgaW5kZXggb2YgNi4KLQlbNl0JMy4x
NDE2NzUzNzcyNjQ2MTg5ZS0zCTEuNzA5NzA5NDA5NjI0MzM4MmUtMwkxLjQzMTk2NTk2NzY0MDI4
MDdlLTMJOC4zNzU0OTMyODMxMjQxNTQ2ZS0xCTEuNDUxNjAwMDAwMDAwMDAwMWUtNworCU1heCBB
YnNFcnJvciBvZiAxLjIxNzM5MjAxMjQ3NjkyMTFlLTEgYXQgaW5kZXggb2YgMjU1LgorCVsyNTVd
CTEuOTQzMzc5NjQwNTc5MjIzNmUtMQk3LjI1OTg3NjI4MTAyMzAyNTVlLTIJMS4yMTczOTIwMTI0
NzY5MjExZS0xCTEuNjc2ODc3MDc4MDAwODAwN2UrMAkxLjQ1MTYwMDAwMDAwMDAwMDFlLTcKKwlN
YXggUmVsRXJyb3Igb2YgMS42OTE3MjY0OTExNDUyMTQ2ZSswIGF0IGluZGV4IG9mIDQuCiAgYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggU2luZTogU05SIChkYikg
aXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAxMTkuOTMuIEdvdCAxLjU2NDMyODU4NzQw
NTEzMjUuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIFNpbmU6
IFNOUiAoZGIpIGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMTE5LjkzLiBHb3QgLTQu
NTIwNDE2OTczNTQ1MDg1LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZB
SUwgPCBbVGVzdCAyXSAyIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtUZXN0IDNdIFNpbmUgd2F2ZTog
MSBIeiAKIEZBSUwgWCBTaW5lOiAxIEh6IGRvZXMgbm90IGVxdWFsIFswLDAuMDAwMTQyNDc1ODUy
MDQ0Mjk5MjQsMC4wMDAyODQ5NTE3MDQwODg1OTg1LDAuMDAwNDI3NDI3NTU2MTMyODk3NzMsMC4w
MDA1Njk5MDM0MDgxNzcxOTcsMC4wMDA3MTIzNzkyMzExMTc2NjU4LDAuMDAwODU0ODU1MDU0MDU4
MTM0NiwwLjAwMDk5NzMzMDg3Njk5ODYwMzMsMC4wMDExMzk4MDY1ODM1MjM3NTAzLDAuMDAxMjgy
MjgyNDA2NDY0MjE5LDAuMDAxNDI0NzU4MTEyOTg5MzY2LDAuMDAxNTY3MjMzODE5NTE0NTEzLDAu
MDAxNzA5NzA5NDA5NjI0MzM4MiwwLjAwMTg1MjE4NTExNjE0OTQ4NTEsMC4wMDE5OTQ2NjA1ODk4
NDM5ODg0LDAuMDAyMTM3MTM2MTc5OTUzODEzNi4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjEuNDE1N2UtNywicmVsYXRpdmVUaHJlc2hv
bGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRl
c3QgdGhyZXNob2xkCi0JWzFdCTIuNjE4MDAxMzA4MjkyMTUwNWUtNAkxLjQyNDc1ODUyMDQ0Mjk5
MjRlLTQJMS4xOTMyNDI3ODc4NDkxNTgwZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkxLjQxNTY5
OTk5OTk5OTk5OTllLTcKLQlbMl0JNS4yMzYwMDI2MTY1ODQzMDEwZS00CTIuODQ5NTE3MDQwODg1
OTg0OWUtNAkyLjM4NjQ4NTU3NTY5ODMxNjFlLTQJOC4zNzUwNTI4Mjk4NTE4MjM0ZS0xCTEuNDE1
Njk5OTk5OTk5OTk5OWUtNwotCVszXQk3Ljg1NDAwMzM0Mjc5OTg0MjRlLTQJNC4yNzQyNzU1NjEz
Mjg5NzczZS00CTMuNTc5NzI3NzgxNDcwODY1MGUtNAk4LjM3NTA1MTQ2ODAzODMzOTJlLTEJMS40
MTU2OTk5OTk5OTk5OTk5ZS03Ci0JWzRdCTEuMDQ3MjAwNTIzMzE2ODYwMmUtMwk1LjY5OTAzNDA4
MTc3MTk2OThlLTQJNC43NzI5NzExNTEzOTY2MzIyZS00CTguMzc1MDUyODI5ODUxODIzNGUtMQkx
LjQxNTY5OTk5OTk5OTk5OTllLTcKLQlbNV0JMS4zMDkwMDA2NTQxNDYwNzUyZS0zCTcuMTIzNzky
MzExMTc2NjU3N2UtNAk1Ljk2NjIxNDIzMDI4NDA5NDhlLTQJOC4zNzUwNTM1ODA1NTM2OTUyZS0x
CTEuNDE1Njk5OTk5OTk5OTk5OWUtNworCVsxXQkzLjgzNDk2Mjg0NDg0ODYzMjhlLTQJMS40MjQ3
NTg1MjA0NDI5OTI0ZS00CTIuNDEwMjA0MzI0NDA1NjQwNGUtNAkxLjY5MTY1ODEyMjk4OTMyNTFl
KzAJMS40MTU2OTk5OTk5OTk5OTk5ZS03CisJWzJdCTcuNjY5OTI1Njg5Njk3MjY1NmUtNAkyLjg0
OTUxNzA0MDg4NTk4NDllLTQJNC44MjA0MDg2NDg4MTEyODA3ZS00CTEuNjkxNjU4MTIyOTg5MzI1
MWUrMAkxLjQxNTY5OTk5OTk5OTk5OTllLTcKKwlbM10JMS4xNTA0ODg4NTM0NTQ1ODk4ZS0zCTQu
Mjc0Mjc1NTYxMzI4OTc3M2UtNAk3LjIzMDYxMjk3MzIxNjkyMTFlLTQJMS42OTE2NTgxMjI5ODkz
MjUxZSswCTEuNDE1Njk5OTk5OTk5OTk5OWUtNworCVs0XQkxLjUzMzk4NTEzNzkzOTQ1MzFlLTMJ
NS42OTkwMzQwODE3NzE5Njk4ZS00CTkuNjQwODE3Mjk3NjIyNTYxNWUtNAkxLjY5MTY1ODEyMjk4
OTMyNTFlKzAJMS40MTU2OTk5OTk5OTk5OTk5ZS03CisJWzVdCTEuOTE3NTAwNzQ3MzY3NzM5N2Ut
Mwk3LjEyMzc5MjMxMTE3NjY1NzdlLTQJMS4yMDUxMjE1MTYyNTAwNzM5ZS0zCTEuNjkxNjg1MzYw
MjgxMTE3NWUrMAkxLjQxNTY5OTk5OTk5OTk5OTllLTcKIAkuLi5hbmQgMjUwIG1vcmUgZXJyb3Jz
LgotCU1heCBBYnNFcnJvciBvZiAzLjAzODU4NjMwMzU5MTcyODJlLTIgYXQgaW5kZXggb2YgMjU1
LgotCVsyNTVdCTYuNjcwOTIxMjk1ODgxMjcxNGUtMgkzLjYzMjMzNDk5MjI4OTU0MzJlLTIJMy4w
Mzg1ODYzMDM1OTE3MjgyZS0yCTguMzY1MzgwMTQ4MTQ2NjI4M2UtMQkxLjQxNTY5OTk5OTk5OTk5
OTllLTcKLQlNYXggUmVsRXJyb3Igb2YgOC4zNzU0OTMyODMxMjQxNTQ2ZS0xIGF0IGluZGV4IG9m
IDEyLgotCVsxMl0JMy4xNDE2NzUzNzcyNjQ2MTg5ZS0zCTEuNzA5NzA5NDA5NjI0MzM4MmUtMwkx
LjQzMTk2NTk2NzY0MDI4MDdlLTMJOC4zNzU0OTMyODMxMjQxNTQ2ZS0xCTEuNDE1Njk5OTk5OTk5
OTk5OWUtNworCU1heCBBYnNFcnJvciBvZiA2LjEzMTIwOTgwNTYwNzc5NTdlLTIgYXQgaW5kZXgg
b2YgMjU1LgorCVsyNTVdCTkuNzYzNTQ0Nzk3ODk3MzM4OWUtMgkzLjYzMjMzNDk5MjI4OTU0MzJl
LTIJNi4xMzEyMDk4MDU2MDc3OTU3ZS0yCTEuNjg3OTUyNzQwNzYzOTExNGUrMAkxLjQxNTY5OTk5
OTk5OTk5OTllLTcKKwlNYXggUmVsRXJyb3Igb2YgMS42OTE3MjY0OTExNDUyMTQ2ZSswIGF0IGlu
ZGV4IG9mIDguCisJWzhdCTMuMDY4MDQ3NTc1NjUyNTk5M2UtMwkxLjEzOTgwNjU4MzUyMzc1MDNl
LTMJMS45MjgyNDA5OTIxMjg4NDkwZS0zCTEuNjkxNzI2NDkxMTQ1MjE0NmUrMAkxLjQxNTY5OTk5
OTk5OTk5OTllLTcKICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwg
WCBTaW5lOiBTTlIgKGRiKSBpcyBub3QgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDExMi4yMi4g
R290IDEuNTQ2MzA5MTgzODA4ODI1NC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitGQUlMIFggU2luZTogU05SIChkYikgaXMgbm90IGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0
byAxMTIuMjIuIEdvdCAtNC41NTQ3NzA2NTc4OTUzOTEuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQogRkFJTCA8IFtUZXN0IDNdIDIgb3V0IG9mIDIgYXNzZXJ0aW9ucyB3ZXJl
IGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW1Rl
c3QgNF0gQ3VzdG9tIHdhdmU6IDEwMCBIeiAKIFBBU1MgICBDdXN0b206IDEwMCBIeiBlcXVhbHMg
WzEsMS4wMTQxNDU2MTI3MTY2NzQ4LDEuMDI4MDg1MzUwOTkwMjk1NCwxLjA0MTgxNjM1Mzc5Nzkx
MjYsMS4wNTUzMzU5OTg1MzUxNTYyLDEuMDY4NjQxMzA0OTY5Nzg3NiwxLjA4MTcyOTc2OTcwNjcy
NiwxLjA5NDU5ODY1MDkzMjMxMiwxLjEwNzI0NTMyNjA0MjE3NTMsMS4xMTk2NjcxNzI0MzE5NDU4
LDEuMTMxODYxODA1OTE1ODMyNSwxLjE0MzgyNjYwMzg4OTQ2NTMsMS4xNTU1NTkzMDEzNzYzNDI4
LDEuMTY3MDU3Mzk0OTgxMzg0MywxLjE3ODMxODYxOTcyODA4ODQsMS4xODkzNDA1OTE0MzA2NjQu
Li5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xk
IjowLjAwMDAwMTg0NzgsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hhbmdlcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL2F1dG9tYXRpb24tY2hh
bmdlcy1leHBlY3RlZC50eHQKaW5kZXggYzM5Y2E5ODY3ZTUzNmNmOWFkYmJlODk5YjIwOWQ3MGYy
MmQzMzYzNi4uZGQ2YTlhODE0M2MzYWM0MjhkMjE2Y2NkZDRmZjRmN2U5YTVkNjFjZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRp
by90aGUtYXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9hdXRvbWF0aW9uLWNoYW5n
ZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtcGFubmVybm9kZS1pbnRlcmZhY2Uv
YXV0b21hdGlvbi1jaGFuZ2VzLWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDMgQEAKLUNPTlNPTEUg
TUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBJbnZhbGlkU3RhdGVFcnJvcjog
VGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgotQ09OU09MRSBNRVNTQUdFOiBVbmhh
bmRsZWQgUHJvbWlzZSBSZWplY3Rpb246IEludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlz
IGluIGFuIGludmFsaWQgc3RhdGUuCi0KLUhhcm5lc3MgRXJyb3IgKEZBSUwpLCBtZXNzYWdlID0g
VW5oYW5kbGVkIHJlamVjdGlvbjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLgog
CiBQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCiBQQVNTIEV4ZWN1dGluZyAiU2V0
IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZSIgCkBAIC05LDIzICs1LDMzIEBAIFBBU1MgRXhlY3V0
aW5nICJMaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWUiCiBQQVNTIEV4ZWN1dGluZyAiTGlzdGVu
ZXIuc2V0UG9zaXRpb24iIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW1NldCBMaXN0ZW5l
ci5wb3NpdGlvblgudmFsdWVdICAKLVBBU1MgICBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1ZTogb3V0
cHV0MFswOjUxMV0gZXF1YWxzIFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLi4uXSB3
aXRoIGFuIGVsZW1lbnQtd2lzZSB0b2xlcmFuY2Ugb2YgeyJhYnNvbHV0ZVRocmVzaG9sZCI6MWUt
MTYsInJlbGF0aXZlVGhyZXNob2xkIjowfS4gCi1QQVNTICAgbGlzdGVuci5wb3NpdGlvblgudmFs
dWU6IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDUxMSBkaWZm
ZXJlbnQgdmFsdWVzKS4gCi1QQVNTICAgbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDBb
NTEyOl0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgMTUzNiBkaWZmZXJlbnQgdmFsdWVz
KS4gCi1GQUlMIFggbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDFbNTEyOl0gZG9lcyBu
b3QgZXF1YWwgWy0xLjkxMzcwMjM2NDkxMjI1MzNlLTE3LC0xLjk1MTQ5NzIzOTcxNjUzNjJlLTE3
LC0xLjk4MjgyMTA4MDU4ODgxNjhlLTE3LC0yLjAwNzU2Nzg0Mjk3NDU2NTdlLTE3LC0yLjAyNTY1
ODI4Mjk3MTEwMDRlLTE3LC0yLjAzNzAyOTUzNDg1MTg2N2UtMTcsLTIuMDQxNjQ2MDI5ODUwNTI1
M2UtMTcsLTIuMDM5NDkxNTU1MjI3MDY5N2UtMTcsLTIuMDMwNTczMzkwMTcwODkwNWUtMTcsLTIu
MDE0OTIxNDc4NjIwMTYyZS0xNywtMS45OTI1ODY2MDk0NjQ0OTUzZS0xNywtMS45NjM2NDQwNTYx
Mzk2MzI0ZS0xNywtMS45MjgxODg3Nzg5Nzk4OTQ1ZS0xNywtMS44ODYzMzk1NjExMjEyNDQyZS0x
NywtMS44MzgyMzM4Nzk5ODE0ODc4ZS0xNywtMS43ODQwMzMwMzU3ODAwNzMyZS0xNy4uLl0gd2l0
aCBhbiBlbGVtZW50LXdpc2UgdG9sZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjAsInJl
bGF0aXZlVGhyZXNob2xkIjowfS4KK0ZBSUwgWCBsaXN0ZW5yLnBvc2l0aW9uWC52YWx1ZTogb3V0
cHV0MFswOjUxMV0gZG9lcyBub3QgZXF1YWwgWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNo
b2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUluZGV4CUFjdHVhbAkJCUV4cGVj
dGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xkCi0JWzBdCS0zLjEyNTMxMzIy
MjQwODI5NDdlLTEJLTEuOTEzNzAyMzY0OTEyMjUzM2UtMTcJMy4xMjUzMTMyMjI0MDgyOTQ3ZS0x
CTEuNjMzMTIzOTc5ODM2NjQzMGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzFdCS0zLjE4
NzAzNzExMDMyODY3NDNlLTEJLTEuOTUxNDk3MjM5NzE2NTM2MmUtMTcJMy4xODcwMzcxMTAzMjg2
NzQzZS0xCTEuNjMzMTI0MDY3NzQ5OTUyOGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzJd
CS0zLjIzODE5MjQ5ODY4MzkyOTRlLTEJLTEuOTgyODIxMDgwNTg4ODE2OGUtMTcJMy4yMzgxOTI0
OTg2ODM5Mjk0ZS0xCTEuNjMzMTIzOTAxMjg2MzAyMGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
Ci0JWzNdCS0zLjI3ODYwNzEzMDA1MDY1OTJlLTEJLTIuMDA3NTY3ODQyOTc0NTY1N2UtMTcJMy4y
Nzg2MDcxMzAwNTA2NTkyZS0xCTEuNjMzMTIzOTUyMjExMTYxNGUrMTYJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCi0JWzRdCS0zLjMwODE1MTA2NjMwMzI1MzJlLTEJLTIuMDI1NjU4MjgyOTcxMTAwNGUt
MTcJMy4zMDgxNTEwNjYzMDMyNTMyZS0xCTEuNjMzMTIzOTU0ODcxMTQzNGUrMTYJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCi0JLi4uYW5kIDE1MzEgbW9yZSBlcnJvcnMuCi0JTWF4IEFic0Vycm9yIG9m
IDMuMzM0NDQ0NzYxMjc2MjQ1MWUtMSBhdCBpbmRleCBvZiAzODguCi0JWzM4OF0JMy4zMzQ0NDQ3
NjEyNzYyNDUxZS0xCTIuMDQxNzU4NjkxODQ5OTU1MWUtMTcJMy4zMzQ0NDQ3NjEyNzYyNDUxZS0x
CTEuNjMzMTIzODIzMzkxMjE1NGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JTWF4IFJlbEVy
cm9yIG9mIDEuNjMzMTI0MTQ1Nzc0MTE0NmUrMTYgYXQgaW5kZXggb2YgMTIyLgotCVsxMjJdCS0z
LjA4NzI2NTQ5MTQ4NTU5NTdlLTEJLTEuODkwNDA0NjU3NTIzNTc0OGUtMTcJMy4wODcyNjU0OTE0
ODU1OTU3ZS0xCTEuNjMzMTI0MTQ1Nzc0MTE0NmUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJ
WzBdCS0yLjcyMjk2OTUxMTUyMzg0MjhlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTIuNzIyOTY5
NTExNTIzODQyOGUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzFdCS01LjYw
NDc1NjI5NzU0MzY0NDllLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTUuNjA0NzU2Mjk3NTQzNjQ0
OWUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzJdCS04LjYxOTY5MTk0Mzc0
OTc4NTRlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTguNjE5NjkxOTQzNzQ5Nzg1NGUtNAlJbmZp
bml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzNdCS0xLjE3NDA0NDkxMTc0OTY2MTBlLTMJ
MC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMTc0MDQ0OTExNzQ5NjYxMGUtMwlJbmZpbml0eQk5Ljk5
OTk5OTk5OTk5OTk5OThlLTE3CisJWzRdCS0xLjQ5MzgyMjA4NDczOTgwNDNlLTMJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCTEuNDkzODIyMDg0NzM5ODA0M2UtMwlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5
OTk5OThlLTE3CisJLi4uYW5kIDUwNyBtb3JlIGVycm9ycy4KKwlNYXggQWJzRXJyb3Igb2YgMy4w
NDUyMDkzNDgyMDE3NTE3ZS0xIGF0IGluZGV4IG9mIDQ5OC4KKwlbNDk4XQkzLjA0NTIwOTM0ODIw
MTc1MTdlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTMuMDQ1MjA5MzQ4MjAxNzUxN2UtMQlJbmZp
bml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJTWF4IFJlbEVycm9yIG9mIEluZmluaXR5IGF0
IGluZGV4IG9mIDAuCisgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNT
ICAgbGlzdGVuci5wb3NpdGlvblgudmFsdWU6IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBjb25zdGFu
dGx5IDAgKGNvbnRhaW5zIDUxMiBkaWZmZXJlbnQgdmFsdWVzKS4gCitQQVNTICAgbGlzdGVuci5w
b3NpdGlvblgudmFsdWU6IG91dHB1dDBbNTEyOl0gaXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFp
bnMgMTAyNCBkaWZmZXJlbnQgdmFsdWVzKS4gCitGQUlMIFggbGlzdGVuci5wb3NpdGlvblgudmFs
dWU6IG91dHB1dDFbNTEyOl0gZG9lcyBub3QgZXF1YWwgWzAuMjA0MDc1MTI3ODQwMDQyMTEsMC4x
OTA0NDQ4NDE5ODA5MzQxNCwwLjE3NjEzNDk0Mzk2MjA5NzE3LDAuMTYxMTkwOTQxOTI5ODE3Miww
LjE0NTY2MDY4MzUxMjY4NzY4LDAuMTI5NTk0MDcyNjk5NTQ2ODEsMC4xMTMwNDI5NDMxNzk2MDcz
OSwwLjA5NjA2MTAyODU0MDEzNDQzLDAuMDc4NzAzNjc5MTQ0MzgyNDgsMC4wNjEwMjc0NDg2MjQz
NzI0OCwwLjA0MzA5MDU4MTg5MzkyMDksMC4wMjQ5NTE5NDU5OTAzMjQwMiwwLjAwNjY3MTUzODU3
NjQ4MzcyNjUsLTAuMDExNjkwMTgzNTQyNjY4ODIsLTAuMDMwMDcyMDE0Nzc4ODUyNDYzLC0wLjA0
ODQxMjc1MTQwNjQzMTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCisJSW5kZXgJQWN0dWFs
CQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKKwlbMF0JNS4z
NTYwNDc3NDk1MTkzNDgxZS0xCTIuMDQwNzUxMjc4NDAwNDIxMWUtMQkzLjMxNTI5NjQ3MTExODky
NzBlLTEJMS42MjQ1NDcwNTA5ODQ4MzA1ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCVsxXQk0
Ljk5MDIxNTU5OTUzNjg5NThlLTEJMS45MDQ0NDg0MTk4MDkzNDE0ZS0xCTMuMDg1NzY3MTc5NzI3
NTU0M2UtMQkxLjYyMDI5NDQzNjc2NzQwNjZlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSswCisJWzJd
CTQuNjA3NzkzOTg2Nzk3MzMyOGUtMQkxLjc2MTM0OTQzOTYyMDk3MTdlLTEJMi44NDY0NDQ1NDcx
NzYzNjExZS0xCTEuNjE2MDU4OTYyMDM1ODg4M2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBlKzAKKwlb
M10JNC4yMTAwNTAxMDYwNDg1ODQwZS0xCTEuNjExOTA5NDE5Mjk4MTcyMGUtMQkyLjU5ODE0MDY4
Njc1MDQxMjBlLTEJMS42MTE4NDAzNzc0MDg4MjkwZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAor
CVs0XQkzLjc5ODMwNDQ5ODE5NTY0ODJlLTEJMS40NTY2MDY4MzUxMjY4NzY4ZS0xCTIuMzQxNjk3
NjYzMDY4NzcxNGUtMQkxLjYwNzYzODc5OTAyMDczODZlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CisJLi4uYW5kIDEwMTkgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDQuODgwNjg0OTEy
MjA0NzQyNGUtMSBhdCBpbmRleCBvZiAzOS4KKwlbMzldCS04LjE5OTc4Mjk2NzU2NzQ0MzhlLTEJ
LTMuMzE5MDk4MDU1MzYyNzAxNGUtMQk0Ljg4MDY4NDkxMjIwNDc0MjRlLTEJMS40NzA0ODUzMDM3
NzY3MjAwZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCU1heCBSZWxFcnJvciBvZiAxLjYyNDU0
NzA1MDk4NDgzMDVlKzAgYXQgaW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgPCBbU2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0gMSBvdXQg
b2YgNCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKK0ZBSUwgPCBbU2V0IExpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZV0gMiBvdXQgb2Yg
NCBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKIFBBU1MgPiBbTGlzdGVuZXIucG9zaXRpb25YLnNldFZhbHVlXSAgCiBQQVNTICAgbGlz
dGVuZXIucG9zaXRpb25YLnNldFZhbHVlQVRUaW1lOiBvdXRwdXQwWzA6NTExXSBlcXVhbHMgWzAs
MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRv
bGVyYW5jZSBvZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQi
OjB9LiAKIFBBU1MgICBsaXN0ZW5lci5wb3NpdGlvblguc2V0VmFsdWVBVFRpbWU6IG91dHB1dDFb
MDo1MTFdIGlzIG5vdCBjb25zdGFudGx5IDAgKGNvbnRhaW5zIDUxMSBkaWZmZXJlbnQgdmFsdWVz
KS4gCkBAIC00NCwyMiArNTAsMzIgQEAgRkFJTCBYIGxpc3RlbmVyLnBvc2l0aW9uWC5zZXRWYWx1
ZUFUVGltZTogb3V0cHV0MVs1MTI6XSBkb2VzIG5vdCBlcXVhbCBbLTAuMDAwMjcKICBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIEZBSUwgPCBbTGlzdGVuZXIucG9zaXRpb25Y
LnNldFZhbHVlXSAxIG91dCBvZiA0IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVl
OiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtMaXN0ZW5lci5zZXRQb3NpdGlvbl0g
IAotUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDBbMDo1MTFdIGVxdWFscyBbMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC4uLl0gd2l0aCBhbiBlbGVtZW50LXdpc2UgdG9s
ZXJhbmNlIG9mIHsiYWJzb2x1dGVUaHJlc2hvbGQiOjFlLTE2LCJyZWxhdGl2ZVRocmVzaG9sZCI6
MH0uIAotUEFTUyAgIGxpc3RlbmVyLnNldFBvc3Rpb246IG91dHB1dDFbMDo1MTFdIGlzIG5vdCBj
b25zdGFudGx5IDAgKGNvbnRhaW5zIDUxMSBkaWZmZXJlbnQgdmFsdWVzKS4gCi1QQVNTICAgbGlz
dGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MFs1MTI6XSBpcyBub3QgY29uc3RhbnRseSAwIChjb250
YWlucyAxNTM2IGRpZmZlcmVudCB2YWx1ZXMpLiAKLUZBSUwgWCBsaXN0ZW5lci5zZXRQb3N0aW9u
OiBvdXRwdXQxWzUxMjpdIGRvZXMgbm90IGVxdWFsIFstMS45MTM3MDIzNjQ5MTIyNTMzZS0xNywt
MS45NTE0OTcyMzk3MTY1MzYyZS0xNywtMS45ODI4MjEwODA1ODg4MTY4ZS0xNywtMi4wMDc1Njc4
NDI5NzQ1NjU3ZS0xNywtMi4wMjU2NTgyODI5NzExMDA0ZS0xNywtMi4wMzcwMjk1MzQ4NTE4Njdl
LTE3LC0yLjA0MTY0NjAyOTg1MDUyNTNlLTE3LC0yLjAzOTQ5MTU1NTIyNzA2OTdlLTE3LC0yLjAz
MDU3MzM5MDE3MDg5MDVlLTE3LC0yLjAxNDkyMTQ3ODYyMDE2MmUtMTcsLTEuOTkyNTg2NjA5NDY0
NDk1M2UtMTcsLTEuOTYzNjQ0MDU2MTM5NjMyNGUtMTcsLTEuOTI4MTg4Nzc4OTc5ODk0NWUtMTcs
LTEuODg2MzM5NTYxMTIxMjQ0MmUtMTcsLTEuODM4MjMzODc5OTgxNDg3OGUtMTcsLTEuNzg0MDMz
MDM1NzgwMDczMmUtMTcuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBvZiB7ImFi
c29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCitGQUlMIFggbGlzdGVu
ZXIuc2V0UG9zdGlvbjogb3V0cHV0MFswOjUxMV0gZG9lcyBub3QgZXF1YWwgWzAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjoxZS0xNiwicmVsYXRpdmVUaHJlc2hvbGQiOjB9LgogCUlu
ZGV4CUFjdHVhbAkJCUV4cGVjdGVkCQlBYnNFcnJvcgkJUmVsRXJyb3IJCVRlc3QgdGhyZXNob2xk
Ci0JWzBdCS0zLjEyNTMxMzIyMjQwODI5NDdlLTEJLTEuOTEzNzAyMzY0OTEyMjUzM2UtMTcJMy4x
MjUzMTMyMjI0MDgyOTQ3ZS0xCTEuNjMzMTIzOTc5ODM2NjQzMGUrMTYJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCi0JWzFdCS0zLjE4NzAzNzExMDMyODY3NDNlLTEJLTEuOTUxNDk3MjM5NzE2NTM2MmUt
MTcJMy4xODcwMzcxMTAzMjg2NzQzZS0xCTEuNjMzMTI0MDY3NzQ5OTUyOGUrMTYJMC4wMDAwMDAw
MDAwMDAwMDAwZSswCi0JWzJdCS0zLjIzODE5MjQ5ODY4MzkyOTRlLTEJLTEuOTgyODIxMDgwNTg4
ODE2OGUtMTcJMy4yMzgxOTI0OTg2ODM5Mjk0ZS0xCTEuNjMzMTIzOTAxMjg2MzAyMGUrMTYJMC4w
MDAwMDAwMDAwMDAwMDAwZSswCi0JWzNdCS0zLjI3ODYwNzEzMDA1MDY1OTJlLTEJLTIuMDA3NTY3
ODQyOTc0NTY1N2UtMTcJMy4yNzg2MDcxMzAwNTA2NTkyZS0xCTEuNjMzMTIzOTUyMjExMTYxNGUr
MTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JWzRdCS0zLjMwODE1MTA2NjMwMzI1MzJlLTEJLTIu
MDI1NjU4MjgyOTcxMTAwNGUtMTcJMy4zMDgxNTEwNjYzMDMyNTMyZS0xCTEuNjMzMTIzOTU0ODcx
MTQzNGUrMTYJMC4wMDAwMDAwMDAwMDAwMDAwZSswCi0JLi4uYW5kIDE1MzEgbW9yZSBlcnJvcnMu
Ci0JTWF4IEFic0Vycm9yIG9mIDMuMzM0NDQ0NzYxMjc2MjQ1MWUtMSBhdCBpbmRleCBvZiAzODgu
Ci0JWzM4OF0JMy4zMzQ0NDQ3NjEyNzYyNDUxZS0xCTIuMDQxNzU4NjkxODQ5OTU1MWUtMTcJMy4z
MzQ0NDQ3NjEyNzYyNDUxZS0xCTEuNjMzMTIzODIzMzkxMjE1NGUrMTYJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCi0JTWF4IFJlbEVycm9yIG9mIDEuNjMzMTI0MTQ1Nzc0MTE0NmUrMTYgYXQgaW5kZXgg
b2YgMTIyLgotCVsxMjJdCS0zLjA4NzI2NTQ5MTQ4NTU5NTdlLTEJLTEuODkwNDA0NjU3NTIzNTc0
OGUtMTcJMy4wODcyNjU0OTE0ODU1OTU3ZS0xCTEuNjMzMTI0MTQ1Nzc0MTE0NmUrMTYJMC4wMDAw
MDAwMDAwMDAwMDAwZSswCisJWzBdCS0yLjcyMjk2OTUxMTUyMzg0MjhlLTQJMC4wMDAwMDAwMDAw
MDAwMDAwZSswCTIuNzIyOTY5NTExNTIzODQyOGUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5
OThlLTE3CisJWzFdCS01LjYwNDc1NjI5NzU0MzY0NDllLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CTUuNjA0NzU2Mjk3NTQzNjQ0OWUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJ
WzJdCS04LjYxOTY5MTk0Mzc0OTc4NTRlLTQJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTguNjE5Njkx
OTQzNzQ5Nzg1NGUtNAlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzNdCS0xLjE3
NDA0NDkxMTc0OTY2MTBlLTMJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuMTc0MDQ0OTExNzQ5NjYx
MGUtMwlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJWzRdCS0xLjQ5MzgyMjA4NDcz
OTgwNDNlLTMJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTEuNDkzODIyMDg0NzM5ODA0M2UtMwlJbmZp
bml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJLi4uYW5kIDUwNyBtb3JlIGVycm9ycy4KKwlN
YXggQWJzRXJyb3Igb2YgMy4wNDUyMDkzNDgyMDE3NTE3ZS0xIGF0IGluZGV4IG9mIDQ5OC4KKwlb
NDk4XQkzLjA0NTIwOTM0ODIwMTc1MTdlLTEJMC4wMDAwMDAwMDAwMDAwMDAwZSswCTMuMDQ1MjA5
MzQ4MjAxNzUxN2UtMQlJbmZpbml0eQk5Ljk5OTk5OTk5OTk5OTk5OThlLTE3CisJTWF4IFJlbEVy
cm9yIG9mIEluZmluaXR5IGF0IGluZGV4IG9mIDAuCisgYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRy
dWUgZ290IGZhbHNlCitQQVNTICAgbGlzdGVuZXIuc2V0UG9zdGlvbjogb3V0cHV0MVswOjUxMV0g
aXMgbm90IGNvbnN0YW50bHkgMCAoY29udGFpbnMgNTEyIGRpZmZlcmVudCB2YWx1ZXMpLiAKK1BB
U1MgICBsaXN0ZW5lci5zZXRQb3N0aW9uOiBvdXRwdXQwWzUxMjpdIGlzIG5vdCBjb25zdGFudGx5
IDAgKGNvbnRhaW5zIDEwMjQgZGlmZmVyZW50IHZhbHVlcykuIAorRkFJTCBYIGxpc3RlbmVyLnNl
dFBvc3Rpb246IG91dHB1dDFbNTEyOl0gZG9lcyBub3QgZXF1YWwgWzAuMjA0MDc1MTI3ODQwMDQy
MTEsMC4xOTA0NDQ4NDE5ODA5MzQxNCwwLjE3NjEzNDk0Mzk2MjA5NzE3LDAuMTYxMTkwOTQxOTI5
ODE3MiwwLjE0NTY2MDY4MzUxMjY4NzY4LDAuMTI5NTk0MDcyNjk5NTQ2ODEsMC4xMTMwNDI5NDMx
Nzk2MDczOSwwLjA5NjA2MTAyODU0MDEzNDQzLDAuMDc4NzAzNjc5MTQ0MzgyNDgsMC4wNjEwMjc0
NDg2MjQzNzI0OCwwLjA0MzA5MDU4MTg5MzkyMDksMC4wMjQ5NTE5NDU5OTAzMjQwMiwwLjAwNjY3
MTUzODU3NjQ4MzcyNjUsLTAuMDExNjkwMTgzNTQyNjY4ODIsLTAuMDMwMDcyMDE0Nzc4ODUyNDYz
LC0wLjA0ODQxMjc1MTQwNjQzMTIuLi5dIHdpdGggYW4gZWxlbWVudC13aXNlIHRvbGVyYW5jZSBv
ZiB7ImFic29sdXRlVGhyZXNob2xkIjowLCJyZWxhdGl2ZVRocmVzaG9sZCI6MH0uCisJSW5kZXgJ
QWN0dWFsCQkJRXhwZWN0ZWQJCUFic0Vycm9yCQlSZWxFcnJvcgkJVGVzdCB0aHJlc2hvbGQKKwlb
MF0JNS4zNTYwNDc3NDk1MTkzNDgxZS0xCTIuMDQwNzUxMjc4NDAwNDIxMWUtMQkzLjMxNTI5NjQ3
MTExODkyNzBlLTEJMS42MjQ1NDcwNTA5ODQ4MzA1ZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAor
CVsxXQk0Ljk5MDIxNTU5OTUzNjg5NThlLTEJMS45MDQ0NDg0MTk4MDkzNDE0ZS0xCTMuMDg1NzY3
MTc5NzI3NTU0M2UtMQkxLjYyMDI5NDQzNjc2NzQwNjZlKzAJMC4wMDAwMDAwMDAwMDAwMDAwZSsw
CisJWzJdCTQuNjA3NzkzOTg2Nzk3MzMyOGUtMQkxLjc2MTM0OTQzOTYyMDk3MTdlLTEJMi44NDY0
NDQ1NDcxNzYzNjExZS0xCTEuNjE2MDU4OTYyMDM1ODg4M2UrMAkwLjAwMDAwMDAwMDAwMDAwMDBl
KzAKKwlbM10JNC4yMTAwNTAxMDYwNDg1ODQwZS0xCTEuNjExOTA5NDE5Mjk4MTcyMGUtMQkyLjU5
ODE0MDY4Njc1MDQxMjBlLTEJMS42MTE4NDAzNzc0MDg4MjkwZSswCTAuMDAwMDAwMDAwMDAwMDAw
MGUrMAorCVs0XQkzLjc5ODMwNDQ5ODE5NTY0ODJlLTEJMS40NTY2MDY4MzUxMjY4NzY4ZS0xCTIu
MzQxNjk3NjYzMDY4NzcxNGUtMQkxLjYwNzYzODc5OTAyMDczODZlKzAJMC4wMDAwMDAwMDAwMDAw
MDAwZSswCisJLi4uYW5kIDEwMTkgbW9yZSBlcnJvcnMuCisJTWF4IEFic0Vycm9yIG9mIDQuODgw
Njg0OTEyMjA0NzQyNGUtMSBhdCBpbmRleCBvZiAzOS4KKwlbMzldCS04LjE5OTc4Mjk2NzU2NzQ0
MzhlLTEJLTMuMzE5MDk4MDU1MzYyNzAxNGUtMQk0Ljg4MDY4NDkxMjIwNDc0MjRlLTEJMS40NzA0
ODUzMDM3NzY3MjAwZSswCTAuMDAwMDAwMDAwMDAwMDAwMGUrMAorCU1heCBSZWxFcnJvciBvZiAx
LjYyNDU0NzA1MDk4NDgzMDVlKzAgYXQgaW5kZXggb2YgMC4KICBhc3NlcnRfdHJ1ZTogZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbTGlzdGVuZXIuc2V0UG9zaXRpb25dIDEgb3V0IG9m
IDQgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCitGQUlMIDwgW0xpc3RlbmVyLnNldFBvc2l0aW9uXSAyIG91dCBvZiA0IGFzc2VydGlv
bnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogRkFJ
TCAjIEFVRElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAzIG91dCBvZiAzIHRhc2tzIHdlcmUgZmFp
bGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1wYW5uZXJub2RlLWludGVyZmFjZS9wYW5uZXItYXV0b21hdGlvbi1iYXNp
Yy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5l
ci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dAppbmRleCA5NDZlZTUzMDNhZTNiMDViMTEw
ZTNjYzMwYThiYzY0ZGZjYWJjMTU3Li5mNTEyZTdkZjlhZGI0ZTA1YzkxNGNhODAxM2E0Y2Q3MTcy
MjM4ZGIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bh
bm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBh
bm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5lci1hdXRvbWF0aW9uLWJhc2ljLWV4cGVjdGVkLnR4dApA
QCAtMSw2ICsxLDQgQEAKIAotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBVbmhhbmRs
ZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCi0KIFBBU1Mg
IyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJTdGVyZW8gcGFu
bmVyLnBvc2l0aW9uWCIgCiBQQVNTIEV4ZWN1dGluZyAiTW9ubyBwYW5uZXIucG9zaXRpb25YIiAK
QEAgLTIwLDEzMiArMTgsMjUyIEBAIFBBU1MgRXhlY3V0aW5nICJmb3J3YXJkIHNldHRlciIKIFBB
U1MgRXhlY3V0aW5nICJ1cCBzZXR0ZXIiIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW1N0
ZXJlbyBwYW5uZXIucG9zaXRpb25YXSAgCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblgu
dmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50
IDYuMTIzMjM0MjYyOTI1ODM5ZS0xNy4gCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblgu
dmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50
IDMuIAotUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFsxMjgsIDI1
NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDYuMTIzMjM0MjYyOTI1ODM5
ZS0xNy4gCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblgudmFsdWUgZnJhbWUgWzEyOCwg
MjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMy4gCi1GQUlMIFggU3Rl
cmVvIHBhbm5lci5wb3NpdGlvblg6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3Vs
ZCBub3QgYmUgZXF1YWwgdG8gNi4xMjMyMzQyNjI5MjU4MzllLTE3LiBHb3QgNi4xMjMyMzQyNjI5
MjU4MzllLTE3LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBT
dGVyZW8gcGFubmVyLnBvc2l0aW9uWDogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgc2hv
dWxkIG5vdCBiZSBlcXVhbCB0byAzLiBHb3QgMy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCi1GQUlMIDwgW1N0ZXJlbyBwYW5uZXIucG9zaXRpb25YXSAyIG91dCBvZiA2IGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNo
YW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCA2LjEyMzIzMzk2ODg4ODk4MWUtMjEu
IAorUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNo
YW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjAwMDI5OTk5OTk4NTE0NTQwNDkz
LiAKK1BBU1MgICBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYp
IGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBTdGVyZW8g
cGFubmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlu
cyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWDog
T3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgaXMgbm90IGVxdWFsIHRvIDYuMTIzMjMzOTY4
ODg4OTgxZS0yMS4gCitQQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblg6IE91dHB1dCBhdCBm
cmFtZSAxMjggY2hhbm5lbCAxIGlzIG5vdCBlcXVhbCB0byAwLjAwMDI5OTk5OTk4NTE0NTQwNDkz
LiAKK1BBU1MgPCBbU3RlcmVvIHBhbm5lci5wb3NpdGlvblhdIEFsbCBhc3NlcnRpb25zIHBhc3Nl
ZC4gKHRvdGFsIDYgYXNzZXJ0aW9ucykgCiBQQVNTID4gW01vbm8gcGFubmVyLnBvc2l0aW9uWF0g
IAotUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFu
bmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgNi4xMjMyMzQyNjI5MjU4MzllLTE3LiAK
LVBBU1MgICBNb25vIHBhbm5lci5wb3NpdGlvblgudmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5l
bCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuIAotUEFTUyAgIE1vbm8gcGFubmVyLnBv
c2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRo
ZSBjb25zdGFudCA2LjEyMzIzNDI2MjkyNTgzOWUtMTcuIAotUEFTUyAgIE1vbm8gcGFubmVyLnBv
c2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRo
ZSBjb25zdGFudCAxLiAKLUZBSUwgWCBNb25vIHBhbm5lci5wb3NpdGlvblg6IE91dHB1dCBhdCBm
cmFtZSAxMjggY2hhbm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gNi4xMjMyMzQyNjI5MjU4
MzllLTE3LiBHb3QgNi4xMjMyMzQyNjI5MjU4MzllLTE3LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBNb25vIHBhbm5lci5wb3NpdGlvblg6IE91dHB1dCBhdCBm
cmFtZSAxMjggY2hhbm5lbCAxIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMS4gR290IDEuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCA8IFtNb25vIHBhbm5lci5wb3Np
dGlvblhdIDIgb3V0IG9mIDYgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgTW9ubyBwYW5uZXIucG9zaXRpb25YLnZhbHVl
IGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCA2LjEy
MzIzMzk2ODg4ODk4MWUtMjEuIAorUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWC52YWx1ZSBm
cmFtZSBbMCwgMTI4KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4wMDAw
OTk5OTk5OTc0NzM3ODc1Mi4gCitQQVNTICAgTW9ubyBwYW5uZXIucG9zaXRpb25YLnZhbHVlIGZy
YW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAor
UEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5u
ZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBNb25vIHBhbm5lci5w
b3NpdGlvblg6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIGlzIG5vdCBlcXVhbCB0byA2
LjEyMzIzMzk2ODg4ODk4MWUtMjEuIAorUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWDogT3V0
cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90IGVxdWFsIHRvIDAuMDAwMDk5OTk5OTk3
NDczNzg3NTIuIAorUEFTUyA8IFtNb25vIHBhbm5lci5wb3NpdGlvblhdIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDYgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1N0ZXJlbyBwYW5uZXIucG9z
aXRpb25ZXSAgCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzAs
IDEyOCkgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuMDAwMDAwMTE5MjA5
Mjg5Ni4gCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzAsIDEy
OCkgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDIuIAotUEFTUyAgIFN0ZXJl
byBwYW5uZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRh
aW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuMDAwMDAwMTE5MjA5Mjg5Ni4gCi1QQVNTICAgU3RlcmVv
IHBhbm5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFp
bnMgb25seSB0aGUgY29uc3RhbnQgMi4gCi1GQUlMIFggU3RlcmVvIHBhbm5lci5wb3NpdGlvblk6
IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMS4w
MDAwMDAxMTkyMDkyODk2LiBHb3QgMS4wMDAwMDAxMTkyMDkyODk2LiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWTogT3V0
cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAyLiBHb3Qg
Mi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1N0ZXJlbyBw
YW5uZXIucG9zaXRpb25ZXSAyIG91dCBvZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2Vy
dF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9z
aXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAwLjAwMDEwMDAwMDAxMjAyNTcwMjc0LiAKK1BBU1MgICBTdGVyZW8gcGFubmVyLnBv
c2l0aW9uWS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUg
Y29uc3RhbnQgMC4wMDAxOTk5OTk5OTQ5NDc1NzUwMy4gCitQQVNTICAgU3RlcmVvIHBhbm5lci5w
b3NpdGlvblkudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0
aGUgY29uc3RhbnQgMC4gCitQQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblkudmFsdWUgZnJh
bWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQ
QVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvblk6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5l
bCAwIGlzIG5vdCBlcXVhbCB0byAwLjAwMDEwMDAwMDAxMjAyNTcwMjc0LiAKK1BBU1MgICBTdGVy
ZW8gcGFubmVyLnBvc2l0aW9uWTogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90
IGVxdWFsIHRvIDAuMDAwMTk5OTk5OTk0OTQ3NTc1MDMuIAorUEFTUyA8IFtTdGVyZW8gcGFubmVy
LnBvc2l0aW9uWV0gQWxsIGFzc2VydGlvbnMgcGFzc2VkLiAodG90YWwgNiBhc3NlcnRpb25zKSAK
IFBBU1MgPiBbTW9ubyBwYW5uZXIucG9zaXRpb25ZXSAgCi1QQVNTICAgTW9ubyBwYW5uZXIucG9z
aXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAwLjcwNzEwNjc2OTA4NDkzMDQuIAotUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9u
WS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3Rh
bnQgMC43MDcxMDY3NjkwODQ5MzA0LiAKLVBBU1MgICBNb25vIHBhbm5lci5wb3NpdGlvblkudmFs
dWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQg
MC43MDcxMDY3NjkwODQ5MzA0LiAKLVBBU1MgICBNb25vIHBhbm5lci5wb3NpdGlvblkudmFsdWUg
ZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC43
MDcxMDY3NjkwODQ5MzA0LiAKLUZBSUwgWCBNb25vIHBhbm5lci5wb3NpdGlvblk6IE91dHB1dCBh
dCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMC43MDcxMDY3Njkw
ODQ5MzA0LiBHb3QgMC43MDcxMDY3NjkwODQ5MzA0LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgWCBNb25vIHBhbm5lci5wb3NpdGlvblk6IE91dHB1dCBhdCBmcmFt
ZSAxMjggY2hhbm5lbCAxIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMC43MDcxMDY3NjkwODQ5MzA0
LiBHb3QgMC43MDcxMDY3NjkwODQ5MzA0LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgPCBbTW9ubyBwYW5uZXIucG9zaXRpb25ZXSAyIG91dCBvZiA2IGFzc2VydGlv
bnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFT
UyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDAg
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4wMDAwNzA3MTA2NzM3NTM2Mzc4Mi4gCitQQVNT
ICAgTW9ubyBwYW5uZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBj
b250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjAwMDA3MDcxMDY3Mzc1MzYzNzgyLiAKK1BBU1Mg
ICBNb25vIHBhbm5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAg
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgTW9ubyBwYW5uZXIucG9zaXRp
b25ZLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNv
bnN0YW50IDAuIAorUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWTogT3V0cHV0IGF0IGZyYW1l
IDEyOCBjaGFubmVsIDAgaXMgbm90IGVxdWFsIHRvIDAuMDAwMDcwNzEwNjczNzUzNjM3ODIuIAor
UEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWTogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVs
IDEgaXMgbm90IGVxdWFsIHRvIDAuMDAwMDcwNzEwNjczNzUzNjM3ODIuIAorUEFTUyA8IFtNb25v
IHBhbm5lci5wb3NpdGlvblldIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDYgYXNzZXJ0
aW9ucykgCiBQQVNTID4gW1N0ZXJlbyBwYW5uZXIucG9zaXRpb25aXSAgCi1QQVNTICAgU3RlcmVv
IHBhbm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwIGNvbnRhaW5z
IG9ubHkgdGhlIGNvbnN0YW50IDEuMDAwMDAwMTE5MjA5Mjg5Ni4gCi1QQVNTICAgU3RlcmVvIHBh
bm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAxIGNvbnRhaW5zIG9u
bHkgdGhlIGNvbnN0YW50IDIuIAotUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9zaXRpb25aLnZhbHVl
IGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEu
MDAwMDAwMTE5MjA5Mjg5Ni4gCi1QQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvbloudmFsdWUg
ZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMi4g
Ci1GQUlMIFggU3RlcmVvIHBhbm5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hh
bm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMS4wMDAwMDAxMTkyMDkyODk2LiBHb3QgMS4w
MDAwMDAxMTkyMDkyODk2LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZB
SUwgWCBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWjogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVs
IDEgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAyLiBHb3QgMi4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCi1GQUlMIDwgW1N0ZXJlbyBwYW5uZXIucG9zaXRpb25aXSAyIG91dCBv
ZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorUEFTUyAgIFN0ZXJlbyBwYW5uZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAx
MjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjAwMDEwMDAwMDAxMjAy
NTcwMjc0LiAKK1BBU1MgICBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWi52YWx1ZSBmcmFtZSBbMCwg
MTI4KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4wMDAxOTk5OTk5OTQ5
NDc1NzUwMy4gCitQQVNTICAgU3RlcmVvIHBhbm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzEy
OCwgMjU2KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAg
U3RlcmVvIHBhbm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEg
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgU3RlcmVvIHBhbm5lci5wb3Np
dGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIGlzIG5vdCBlcXVhbCB0byAwLjAw
MDEwMDAwMDAxMjAyNTcwMjc0LiAKK1BBU1MgICBTdGVyZW8gcGFubmVyLnBvc2l0aW9uWjogT3V0
cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90IGVxdWFsIHRvIDAuMDAwMTk5OTk5OTk0
OTQ3NTc1MDMuIAorUEFTUyA8IFtTdGVyZW8gcGFubmVyLnBvc2l0aW9uWl0gQWxsIGFzc2VydGlv
bnMgcGFzc2VkLiAodG90YWwgNiBhc3NlcnRpb25zKSAKIFBBU1MgPiBbTW9ubyBwYW5uZXIucG9z
aXRpb25aXSAgCi1QQVNTICAgTW9ubyBwYW5uZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAx
MjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjcwNzEwNjc2OTA4NDkz
MDQuIAotUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9uWi52YWx1ZSBmcmFtZSBbMCwgMTI4KSBj
aGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC43MDcxMDY3NjkwODQ5MzA0LiAK
LVBBU1MgICBNb25vIHBhbm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFu
bmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC43MDcxMDY3NjkwODQ5MzA0LiAKLVBB
U1MgICBNb25vIHBhbm5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVs
IDEgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC43MDcxMDY3NjkwODQ5MzA0LiAKLUZBSUwg
WCBNb25vIHBhbm5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNo
b3VsZCBub3QgYmUgZXF1YWwgdG8gMC43MDcxMDY3NjkwODQ5MzA0LiBHb3QgMC43MDcxMDY3Njkw
ODQ5MzA0LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBNb25v
IHBhbm5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAxIHNob3VsZCBu
b3QgYmUgZXF1YWwgdG8gMC43MDcxMDY3NjkwODQ5MzA0LiBHb3QgMC43MDcxMDY3NjkwODQ5MzA0
LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgPCBbTW9ubyBwYW5u
ZXIucG9zaXRpb25aXSAyIG91dCBvZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0aW9u
Wi52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3Rh
bnQgMC4wMDAwNzA3MTA2NzM3NTM2Mzc4Mi4gCitQQVNTICAgTW9ubyBwYW5uZXIucG9zaXRpb25a
LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFu
dCAwLjAwMDA3MDcxMDY3Mzc1MzYzNzgyLiAKK1BBU1MgICBNb25vIHBhbm5lci5wb3NpdGlvblou
dmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3Rh
bnQgMC4gCitQQVNTICAgTW9ubyBwYW5uZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFsxMjgsIDI1
NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorUEFTUyAgIE1vbm8g
cGFubmVyLnBvc2l0aW9uWjogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgaXMgbm90IGVx
dWFsIHRvIDAuMDAwMDcwNzEwNjczNzUzNjM3ODIuIAorUEFTUyAgIE1vbm8gcGFubmVyLnBvc2l0
aW9uWjogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90IGVxdWFsIHRvIDAuMDAw
MDcwNzEwNjczNzUzNjM3ODIuIAorUEFTUyA8IFtNb25vIHBhbm5lci5wb3NpdGlvblpdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDYgYXNzZXJ0aW9ucykgCiBQQVNTID4gW1N0ZXJlbyBs
aXN0ZW5lci5wb3NpdGlvblhdICAKLVBBU1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25YLnZh
bHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAx
LjAwMDAwMDExOTIwOTI4OTYuIAotUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblgudmFs
dWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDIu
IAotUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblgudmFsdWUgZnJhbWUgWzEyOCwgMjU2
KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMS4wMDAwMDAxMTkyMDkyODk2
LiAKLVBBU1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFsxMjgsIDI1
NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDIuIAotRkFJTCBYIFN0ZXJl
byBsaXN0ZW5lci5wb3NpdGlvblg6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3Vs
ZCBub3QgYmUgZXF1YWwgdG8gMS4wMDAwMDAxMTkyMDkyODk2LiBHb3QgMS4wMDAwMDAxMTkyMDky
ODk2LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTdGVyZW8g
bGlzdGVuZXIucG9zaXRpb25YOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBzaG91bGQg
bm90IGJlIGVxdWFsIHRvIDIuIEdvdCAyLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK0ZBSUwgWCBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFswLCAx
MjgpIGNoYW5uZWwgMDogRXhwZWN0ZWQgMC4wMDAxMDAwOTMzNDA3MzQwMTk4OCBmb3IgYWxsIHZh
bHVlcyBidXQgZm91bmQgMTI3IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlb
MV0JMC4wMDAxMDAxNzY2Mjg2MjA4Mjk0MworCVsyXQkwLjAwMDEwMDI1OTg4MDEyNzg1MDkyCisJ
WzNdCTAuMDAwMTAwMzQzMDk1MjU1MDg0MzQKKwlbNF0JMC4wMDAxMDA0MjYyODg1NTQ0NDQ5MQor
CS4uLmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQorRkFJTCBYIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblgudmFsdWUgZnJhbWUgWzAsIDEy
OCkgY2hhbm5lbCAxOiBFeHBlY3RlZCAwLjAwMDE5OTkzNjY3OTU2NDQxNjQgZm9yIGFsbCB2YWx1
ZXMgYnV0IGZvdW5kIDEyNyB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzFd
CTAuMDAwMTk5ODUzMzk4OTUzNTY0NDcKKwlbMl0JMC4wMDAxOTk3NzAxMzI4OTQ2Mjc3NQorCVsz
XQkwLjAwMDE5OTY4NjkxMDQ5MTQzNjcyCisJWzRdCTAuMDAwMTk5NjAzNzMxNzQzOTkxMzcKKwku
Li5hbmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK1BBU1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFsxMjgsIDI1
NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorUEFTUyAgIFN0ZXJl
byBsaXN0ZW5lci5wb3NpdGlvblgudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29u
dGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgU3RlcmVvIGxpc3RlbmVyLnBvc2l0
aW9uWDogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgaXMgbm90IGVxdWFsIHRvIDAuMDAw
MTAwMDkzMzQwNzM0MDE5ODguIAorUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblg6IE91
dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAxIGlzIG5vdCBlcXVhbCB0byAwLjAwMDE5OTkzNjY3
OTU2NDQxNjQuIAogRkFJTCA8IFtTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25YXSAyIG91dCBvZiA2
IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQogUEFTUyA+IFtNb25vIGxpc3RlbmVyLnBvc2l0aW9uWF0gIAotUEFTUyAgIE1vbm8gbGlz
dGVuZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBv
bmx5IHRoZSBjb25zdGFudCAwLjcwNzEwNjc2OTA4NDkzMDQuIAotUEFTUyAgIE1vbm8gbGlzdGVu
ZXIucG9zaXRpb25YLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5
IHRoZSBjb25zdGFudCAwLjcwNzEwNjc2OTA4NDkzMDQuIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIu
cG9zaXRpb25YLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkg
dGhlIGNvbnN0YW50IDAuNzA3MTA2NzY5MDg0OTMwNC4gCi1QQVNTICAgTW9ubyBsaXN0ZW5lci5w
b3NpdGlvblgudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0
aGUgY29uc3RhbnQgMC43MDcxMDY3NjkwODQ5MzA0LiAKLUZBSUwgWCBNb25vIGxpc3RlbmVyLnBv
c2l0aW9uWDogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgc2hvdWxkIG5vdCBiZSBlcXVh
bCB0byAwLjcwNzEwNjc2OTA4NDkzMDQuIEdvdCAwLjcwNzEwNjc2OTA4NDkzMDQuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIE1vbm8gbGlzdGVuZXIucG9zaXRp
b25YOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBzaG91bGQgbm90IGJlIGVxdWFsIHRv
IDAuNzA3MTA2NzY5MDg0OTMwNC4gR290IDAuNzA3MTA2NzY5MDg0OTMwNC4gYXNzZXJ0X3RydWU6
IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggTW9ubyBsaXN0ZW5lci5wb3NpdGlvblgu
dmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwOiBFeHBlY3RlZCAwLjAwMDA3MDcyOTk1NTA0
MTMxNTQgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNyB1bmV4cGVjdGVkIHZhbHVlczogCisJ
SW5kZXgJQWN0dWFsCisJWzFdCTAuMDAwMDcwNzQyMTU2ODIyMjM0MzkKKwlbMl0JMC4wMDAwNzA3
NTQzNDQwNTEyMzgxNQorCVszXQkwLjAwMDA3MDc2NjUzMTI4MDI0MTkKKwlbNF0JMC4wMDAwNzA3
Nzg3MTEyMzMyODgwNQorCS4uLmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIE1vbm8gbGlzdGVuZXIucG9zaXRpb25YLnZhbHVl
IGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMTogRXhwZWN0ZWQgMC4wMDAwNzA2ODgyOTI5MDgwMTY1
OSBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgMTI3IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRl
eAlBY3R1YWwKKwlbMV0JMC4wMDAwNzA2NTg4Mzk4MzE1OTQzOAorCVsyXQkwLjAwMDA3MDYyOTQw
ODU4MzA0NQorCVszXQkwLjAwMDA3MDU5OTk4NDYxMDQ1MzI1CisJWzRdCTAuMDAwMDcwNTcwNTc1
MTg5Nzc2NzIKKwkuLi5hbmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFt
ZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BB
U1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWC52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5u
ZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBNb25vIGxpc3RlbmVy
LnBvc2l0aW9uWDogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgaXMgbm90IGVxdWFsIHRv
IDAuMDAwMDcwNzI5OTU1MDQxMzE1NC4gCitQQVNTICAgTW9ubyBsaXN0ZW5lci5wb3NpdGlvblg6
IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAxIGlzIG5vdCBlcXVhbCB0byAwLjAwMDA3MDY4
ODI5MjkwODAxNjU5LiAKIEZBSUwgPCBbTW9ubyBsaXN0ZW5lci5wb3NpdGlvblhdIDIgb3V0IG9m
IDYgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCiBQQVNTID4gW1N0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblldICAKLVBBU1MgICBTdGVy
ZW8gbGlzdGVuZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjQwODI0ODI3NTUxODQxNzM2LiAKLVBBU1MgICBTdGVy
ZW8gbGlzdGVuZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLjU2Mjk0ODgyMjk3NTE1ODcuIAotUEFTUyAgIFN0ZXJl
byBsaXN0ZW5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAgY29u
dGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC40MDgyNDgyNzU1MTg0MTczNi4gCi1QQVNTICAgU3Rl
cmVvIGxpc3RlbmVyLnBvc2l0aW9uWS52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBj
b250YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLjU2Mjk0ODgyMjk3NTE1ODcuIAotRkFJTCBYIFN0
ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblk6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNo
b3VsZCBub3QgYmUgZXF1YWwgdG8gMC40MDgyNDgyNzU1MTg0MTczNi4gR290IDAuNDA4MjQ4Mjc1
NTE4NDE3MzYuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIFN0
ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblk6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAxIHNo
b3VsZCBub3QgYmUgZXF1YWwgdG8gMS41NjI5NDg4MjI5NzUxNTg3LiBHb3QgMS41NjI5NDg4MjI5
NzUxNTg3LiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBTdGVy
ZW8gbGlzdGVuZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMDogRXhw
ZWN0ZWQgMC40MDYyMDc0MTI0ODEzMDggZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNyB1bmV4
cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzFdCTAuNDA0MTc2NzEyMDM2MTMyOAor
CVsyXQkwLjQwMjE1NjIwMzk4NTIxNDIzCisJWzNdCTAuNDAwMTQ1NzY5MTE5MjYyNworCVs0XQkw
LjM5ODE0NTM3NzYzNTk1NTgKKwkuLi5hbmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwgWCBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25Z
LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMTogRXhwZWN0ZWQgMS41NTUxMzU0ODg1MTAx
MzE4IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUlu
ZGV4CUFjdHVhbAorCVsxXQkxLjU0NzM2MTEzNTQ4Mjc4OAorCVsyXQkxLjUzOTYyNTc2Mzg5MzEy
NzQKKwlbM10JMS41MzE5Mjg4OTY5MDM5OTE3CisJWzRdCTEuNTI0MjcwNjUzNzI0NjcwNAorCS4u
LmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblkudmFsdWUgZnJhbWUgWzEyOCwgMjU2
KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgU3RlcmVv
IGxpc3RlbmVyLnBvc2l0aW9uWS52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRp
b25ZOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMCBpcyBub3QgZXF1YWwgdG8gMC40MDYy
MDc0MTI0ODEzMDguIAorUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblk6IE91dHB1dCBh
dCBmcmFtZSAxMjggY2hhbm5lbCAxIGlzIG5vdCBlcXVhbCB0byAxLjU1NTEzNTQ4ODUxMDEzMTgu
IAogRkFJTCA8IFtTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25ZXSAyIG91dCBvZiA2IGFzc2VydGlv
bnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFT
UyA+IFtNb25vIGxpc3RlbmVyLnBvc2l0aW9uWV0gIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIucG9z
aXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAwLjIyMDk0MjM5Mjk0NTI4OTYuIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIucG9zaXRp
b25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25z
dGFudCAwLjUzMzQwMjA4NTMwNDI2MDMuIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIucG9zaXRpb25Z
LnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0
YW50IDAuMjIwOTQyMzkyOTQ1Mjg5Ni4gCi1QQVNTICAgTW9ubyBsaXN0ZW5lci5wb3NpdGlvblku
dmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29uc3Rh
bnQgMC41MzM0MDIwODUzMDQyNjAzLiAKLUZBSUwgWCBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWTog
T3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAwLjIy
MDk0MjM5Mjk0NTI4OTYuIEdvdCAwLjIyMDk0MjM5Mjk0NTI4OTYuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBYIE1vbm8gbGlzdGVuZXIucG9zaXRpb25ZOiBPdXRw
dXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBzaG91bGQgbm90IGJlIGVxdWFsIHRvIDAuNTMzNDAy
MDg1MzA0MjYwMy4gR290IDAuNTMzNDAyMDg1MzA0MjYwMy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitGQUlMIFggTW9ubyBsaXN0ZW5lci5wb3NpdGlvblkudmFsdWUgZnJh
bWUgWzAsIDEyOCkgY2hhbm5lbCAwOiBFeHBlY3RlZCAwLjIxOTgzNzg3NDE3NDExODA0IGZvciBh
bGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVh
bAorCVsxXQkwLjIxODczODg4MzczMzc0OTQKKwlbMl0JMC4yMTc2NDUzOTE4MjE4NjEyNworCVsz
XQkwLjIxNjU1NzMzODgzMzgwODkKKwlbNF0JMC4yMTU0NzQ3Mzk2NzA3NTM0OAorCS4uLmFuZCAx
MjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJ
TCBYIE1vbm8gbGlzdGVuZXIucG9zaXRpb25ZLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwg
MTogRXhwZWN0ZWQgMC41MzA3MzU1NTIzMTA5NDM2IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAx
MjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQkwLjUyODA4MjMxMTE1
MzQxMTkKKwlbMl0JMC41MjU0NDI0MjE0MzYzMDk4CisJWzNdCTAuNTIyODE1NjQ0NzQxMDU4Mwor
CVs0XQkwLjUyMDIwMTk4MTA2NzY1NzUKKwkuLi5hbmQgMTIzIG1vcmUgZXJyb3JzLiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBNb25vIGxpc3RlbmVyLnBvc2l0
aW9uWS52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBj
b25zdGFudCAwLiAKK1BBU1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWS52YWx1ZSBmcmFtZSBb
MTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1Mg
ICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWTogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAg
aXMgbm90IGVxdWFsIHRvIDAuMjE5ODM3ODc0MTc0MTE4MDQuIAorUEFTUyAgIE1vbm8gbGlzdGVu
ZXIucG9zaXRpb25ZOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBpcyBub3QgZXF1YWwg
dG8gMC41MzA3MzU1NTIzMTA5NDM2LiAKIEZBSUwgPCBbTW9ubyBsaXN0ZW5lci5wb3NpdGlvblld
IDIgb3V0IG9mIDYgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCiBQQVNTID4gW1N0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblpdICAKLVBB
U1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5u
ZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCA2LjEyMzIzNDI2MjkyNTgzOWUtMTcuIAot
UEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hh
bm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDMuIAotUEFTUyAgIFN0ZXJlbyBsaXN0
ZW5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDAgY29udGFpbnMg
b25seSB0aGUgY29uc3RhbnQgNi4xMjMyMzQyNjI5MjU4MzllLTE3LiAKLVBBU1MgICBTdGVyZW8g
bGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAxIGNvbnRh
aW5zIG9ubHkgdGhlIGNvbnN0YW50IDMuIAotRkFJTCBYIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlv
blo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8g
Ni4xMjMyMzQyNjI5MjU4MzllLTE3LiBHb3QgNi4xMjMyMzQyNjI5MjU4MzllLTE3LiBhc3NlcnRf
dHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBTdGVyZW8gbGlzdGVuZXIucG9z
aXRpb25aOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBzaG91bGQgbm90IGJlIGVxdWFs
IHRvIDMuIEdvdCAzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZBSUwg
WCBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwg
MDogRXhwZWN0ZWQgNC4xNjYyMTUxMDYyMzgyNjllLTggZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5k
IDEyNyB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzFdCTguMzMwNjk1MDY3
MTE1ODEyZS04CisJWzJdCTEuMjQ5MzQ0MDIzNzkwMzk5N2UtNworCVszXQkxLjY2NTQ0NTA5NzM4
NzQxOWUtNworCVs0XQkyLjA4MTM3Mjc5ODU1NjkxM2UtNworCS4uLmFuZCAxMjMgbW9yZSBlcnJv
cnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIFN0ZXJlbyBs
aXN0ZW5lci5wb3NpdGlvbloudmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAxOiBFeHBlY3Rl
ZCAwLjAwMDI5OTk4ODM0MzYxMzIyMjI0IGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjcgdW5l
eHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQkwLjAwMDI5OTk0NjcyNTEzNTY2
OTEKKwlbMl0JMC4wMDAyOTk5MDUwNzc1NTQyODU1CisJWzNdCTAuMDAwMjk5ODYzNDg4MTgwNTYy
ODUKKwlbNF0JMC4wMDAyOTk4MjE4OTg4MDY4NDAyCisJLi4uYW5kIDEyMyBtb3JlIGVycm9ycy4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTICAgU3RlcmVvIGxpc3Rl
bmVyLnBvc2l0aW9uWi52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBv
bmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBTdGVyZW8gbGlzdGVuZXIucG9zaXRpb25aLnZh
bHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50
IDAuIAorUEFTUyAgIFN0ZXJlbyBsaXN0ZW5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAx
MjggY2hhbm5lbCAwIGlzIG5vdCBlcXVhbCB0byA0LjE2NjIxNTEwNjIzODI2OWUtOC4gCitQQVNT
ICAgU3RlcmVvIGxpc3RlbmVyLnBvc2l0aW9uWjogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVs
IDEgaXMgbm90IGVxdWFsIHRvIDAuMDAwMjk5OTg4MzQzNjEzMjIyMjQuIAogRkFJTCA8IFtTdGVy
ZW8gbGlzdGVuZXIucG9zaXRpb25aXSAyIG91dCBvZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFtNb25vIGxpc3Rl
bmVyLnBvc2l0aW9uWl0gIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZy
YW1lIFswLCAxMjgpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCA2LjEyMzIz
NDI2MjkyNTgzOWUtMTcuIAotUEFTUyAgIE1vbm8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZy
YW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiAKLVBB
U1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWi52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5u
ZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCA2LjEyMzIzNDI2MjkyNTgzOWUtMTcuIAot
UEFTUyAgIE1vbm8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hh
bm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuIAotRkFJTCBYIE1vbm8gbGlzdGVu
ZXIucG9zaXRpb25aOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMCBzaG91bGQgbm90IGJl
IGVxdWFsIHRvIDYuMTIzMjM0MjYyOTI1ODM5ZS0xNy4gR290IDYuMTIzMjM0MjYyOTI1ODM5ZS0x
Ny4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggTW9ubyBsaXN0
ZW5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAxIHNob3VsZCBub3Qg
YmUgZXF1YWwgdG8gMS4gR290IDEuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQorRkFJTCBYIE1vbm8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNo
YW5uZWwgMDogRXhwZWN0ZWQgMi45NDU4MTE3NzIyOTI0NzI2ZS04IGZvciBhbGwgdmFsdWVzIGJ1
dCBmb3VuZCAxMjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQk1Ljg5
MDM5NjQzNzI4MDI4NzVlLTgKKwlbMl0JOC44MzM3NTQzNTAyMzQ4MTNlLTgKKwlbM10JMS4xNzc1
ODg2NTc2OTcwMTUyZS03CisJWzRdCTEuNDcxNjc5MjQwNjk0MzU2OGUtNworCS4uLmFuZCAxMjMg
bW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBY
IE1vbm8gbGlzdGVuZXIucG9zaXRpb25aLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMTog
RXhwZWN0ZWQgMC4wMDAwOTk5OTc4MDAxMzQ1ODgwMyBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQg
MTI3IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMV0JMC4wMDAwOTk5ODU2
MDU2Mjk2MjY2NgorCVsyXQkwLjAwMDA5OTk3MzQxMTEyNDY2NTI5CisJWzNdCTAuMDAwMDk5OTYx
MjMxMTcxNjE5MTUKKwlbNF0JMC4wMDAwOTk5NDkwNTEyMTg1NzMKKwkuLi5hbmQgMTIzIG1vcmUg
ZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgICBNb25v
IGxpc3RlbmVyLnBvc2l0aW9uWi52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250
YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9u
Wi52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25z
dGFudCAwLiAKK1BBU1MgICBNb25vIGxpc3RlbmVyLnBvc2l0aW9uWjogT3V0cHV0IGF0IGZyYW1l
IDEyOCBjaGFubmVsIDAgaXMgbm90IGVxdWFsIHRvIDIuOTQ1ODExNzcyMjkyNDcyNmUtOC4gCitQ
QVNTICAgTW9ubyBsaXN0ZW5lci5wb3NpdGlvblo6IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5l
bCAxIGlzIG5vdCBlcXVhbCB0byAwLjAwMDA5OTk5NzgwMDEzNDU4ODAzLiAKIEZBSUwgPCBbTW9u
byBsaXN0ZW5lci5wb3NpdGlvblpdIDIgb3V0IG9mIDYgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4g
YXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCiBQQVNTID4gW3NldFBvc2l0aW9u
XSAgCi1QQVNTICAgc2V0UG9zaXRpb24udmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwIGNv
bnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuNDA4MjQ4Mjc1NTE4NDE3MzYuIAotUEFTUyAgIHNl
dFBvc2l0aW9uLnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRo
ZSBjb25zdGFudCAxLjU2Mjk0ODgyMjk3NTE1ODcuIAotUEFTUyAgIHNldFBvc2l0aW9uLnZhbHVl
IGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAu
NDA4MjQ4Mjc1NTE4NDE3MzYuIAotUEFTUyAgIHNldFBvc2l0aW9uLnZhbHVlIGZyYW1lIFsxMjgs
IDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDEuNTYyOTQ4ODIyOTc1
MTU4Ny4gCi1GQUlMIFggc2V0UG9zaXRpb246IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAw
IHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMC40MDgyNDgyNzU1MTg0MTczNi4gR290IDAuNDA4MjQ4
Mjc1NTE4NDE3MzYuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBY
IHNldFBvc2l0aW9uOiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMSBzaG91bGQgbm90IGJl
IGVxdWFsIHRvIDEuNTYyOTQ4ODIyOTc1MTU4Ny4gR290IDEuNTYyOTQ4ODIyOTc1MTU4Ny4gYXNz
ZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggc2V0UG9zaXRpb24udmFs
dWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwOiBFeHBlY3RlZCAxLjM4NjU0NjYxMTc4NTg4ODcg
Zm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNyB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJ
QWN0dWFsCisJWzFdCTEuMzc5Mjg0ODU4NzAzNjEzMworCVsyXQkxLjM3MjA2MTEzMzM4NDcwNDYK
KwlbM10JMS4zNjQ4NzUwNzgyMDEyOTQKKwlbNF0JMS4zNTc3MjY5MzE1NzE5NjA0CisJLi4uYW5k
IDEyMyBtb3JlIGVycm9ycy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitG
QUlMIFggc2V0UG9zaXRpb24udmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAxOiBFeHBlY3Rl
ZCAwLjgxMjU1NTA3NDY5MTc3MjUgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNyB1bmV4cGVj
dGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzFdCTAuODA4NjMyNjEyMjI4MzkzNgorCVsy
XQkwLjgwNDcyODk4NDgzMjc2MzcKKwlbM10JMC44MDA4NDQwNzMyOTU1OTMzCisJWzRdCTAuNzk2
OTc3ODc3NjE2ODgyMworCS4uLmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBl
Y3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIHNldFBvc2l0aW9uLnZhbHVlIGZyYW1lIFsxMjgs
IDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorUEFTUyAgIHNl
dFBvc2l0aW9uLnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkg
dGhlIGNvbnN0YW50IDAuIAorUEFTUyAgIHNldFBvc2l0aW9uOiBPdXRwdXQgYXQgZnJhbWUgMTI4
IGNoYW5uZWwgMCBpcyBub3QgZXF1YWwgdG8gMS4zODY1NDY2MTE3ODU4ODg3LiAKK1BBU1MgICBz
ZXRQb3NpdGlvbjogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90IGVxdWFsIHRv
IDAuODEyNTU1MDc0NjkxNzcyNS4gCiBGQUlMIDwgW3NldFBvc2l0aW9uXSAyIG91dCBvZiA2IGFz
c2VydGlvbnMgd2VyZSBmYWlsZWQuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxz
ZQogUEFTUyA+IFtvcmllbnRhdGlvbiBzZXR0ZXJdICAKLVBBU1MgICBwYW5uZXIub3JpZW50YXRp
b257WFlafS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUg
Y29uc3RhbnQgMC41MDA1MDAwODI5Njk2NjU1LiAKLVBBU1MgICBwYW5uZXIub3JpZW50YXRpb257
WFlafS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29u
c3RhbnQgMS4wMDEwMDAwNDY3MzAwNDE1LiAKLVBBU1MgICBwYW5uZXIub3JpZW50YXRpb257WFla
fS52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25z
dGFudCAwLjUwMDUwMDA4Mjk2OTY2NTUuIAotUEFTUyAgIHBhbm5lci5vcmllbnRhdGlvbntYWVp9
LnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0
YW50IDEuMDAxMDAwMDQ2NzMwMDQxNS4gCi1GQUlMIFggcGFubmVyLm9yaWVudGF0aW9ue1hZWn06
IE91dHB1dCBhdCBmcmFtZSAxMjggY2hhbm5lbCAwIHNob3VsZCBub3QgYmUgZXF1YWwgdG8gMC41
MDA1MDAwODI5Njk2NjU1LiBHb3QgMC41MDA1MDAwODI5Njk2NjU1LiBhc3NlcnRfdHJ1ZTogZXhw
ZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgWCBwYW5uZXIub3JpZW50YXRpb257WFlafTogT3V0
cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAxLjAwMTAw
MDA0NjczMDA0MTUuIEdvdCAxLjAwMTAwMDA0NjczMDA0MTUuIGFzc2VydF90cnVlOiBleHBlY3Rl
ZCB0cnVlIGdvdCBmYWxzZQorRkFJTCBYIHBhbm5lci5vcmllbnRhdGlvbntYWVp9LnZhbHVlIGZy
YW1lIFswLCAxMjgpIGNoYW5uZWwgMDogRXhwZWN0ZWQgMC40OTgzOTI1NTIxMzczNzQ5IGZvciBh
bGwgdmFsdWVzIGJ1dCBmb3VuZCAxMjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVh
bAorCVsxXQkwLjQ5NjI5NTU3MTMyNzIwOTUKKwlbMl0JMC40OTQyMDkwODA5MzQ1MjQ1NAorCVsz
XQkwLjQ5MjEzMzAyMTM1NDY3NTMKKwlbNF0JMC40OTAwNjczMzI5ODMwMTY5NworCS4uLmFuZCAx
MjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJ
TCBYIHBhbm5lci5vcmllbnRhdGlvbntYWVp9LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwg
MTogRXhwZWN0ZWQgMC45OTY3ODQ5ODUwNjU0NjAyIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAx
MjcgdW5leHBlY3RlZCB2YWx1ZXM6IAorCUluZGV4CUFjdHVhbAorCVsxXQkwLjk5MjU5MTAyMzQ0
NTEyOTQKKwlbMl0JMC45ODg0MTgwNDI2NTk3NTk1CisJWzNdCTAuOTg0MjY1OTIzNTAwMDYxCisJ
WzRdCTAuOTgwMTM0NTQ2NzU2NzQ0NAorCS4uLmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90
cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIHBhbm5lci5vcmllbnRhdGlvbntY
WVp9LnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhlIGNv
bnN0YW50IDAuIAorUEFTUyAgIHBhbm5lci5vcmllbnRhdGlvbntYWVp9LnZhbHVlIGZyYW1lIFsx
MjgsIDI1NikgY2hhbm5lbCAxIGNvbnRhaW5zIG9ubHkgdGhlIGNvbnN0YW50IDAuIAorUEFTUyAg
IHBhbm5lci5vcmllbnRhdGlvbntYWVp9OiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMCBp
cyBub3QgZXF1YWwgdG8gMC40OTgzOTI1NTIxMzczNzQ5LiAKK1BBU1MgICBwYW5uZXIub3JpZW50
YXRpb257WFlafTogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMgbm90IGVxdWFsIHRv
IDAuOTk2Nzg0OTg1MDY1NDYwMi4gCiBGQUlMIDwgW29yaWVudGF0aW9uIHNldHRlcl0gMiBvdXQg
b2YgNiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBn
b3QgZmFsc2UKIFBBU1MgPiBbZm9yd2FyZCBzZXR0ZXJdICAKLVBBU1MgICBsaXN0ZW5lci5mb3J3
YXJke1hZWn0udmFsdWUgZnJhbWUgWzAsIDEyOCkgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkgdGhl
IGNvbnN0YW50IDAuNTAwNTAwMDgyOTY5NjY1NS4gCi1QQVNTICAgbGlzdGVuZXIuZm9yd2FyZHtY
WVp9LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25z
dGFudCAxLjAwMTAwMDA0NjczMDA0MTUuIAotUEFTUyAgIGxpc3RlbmVyLmZvcndhcmR7WFlafS52
YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFu
dCAwLjUwMDUwMDA4Mjk2OTY2NTUuIAotUEFTUyAgIGxpc3RlbmVyLmZvcndhcmR7WFlafS52YWx1
ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAx
LjAwMTAwMDA0NjczMDA0MTUuIAotRkFJTCBYIGxpc3RlbmVyLmZvcndhcmR7WFlafTogT3V0cHV0
IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAwLjUwMDUwMDA4
Mjk2OTY2NTUuIEdvdCAwLjUwMDUwMDA4Mjk2OTY2NTUuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQotRkFJTCBYIGxpc3RlbmVyLmZvcndhcmR7WFlafTogT3V0cHV0IGF0IGZy
YW1lIDEyOCBjaGFubmVsIDEgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAxLjAwMTAwMDA0NjczMDA0
MTUuIEdvdCAxLjAwMTAwMDA0NjczMDA0MTUuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdv
dCBmYWxzZQorRkFJTCBYIGxpc3RlbmVyLmZvcndhcmR7WFlafS52YWx1ZSBmcmFtZSBbMCwgMTI4
KSBjaGFubmVsIDA6IEV4cGVjdGVkIDAuNTAwNTA1NDQ3Mzg3Njk1MyBmb3IgYWxsIHZhbHVlcyBi
dXQgZm91bmQgMTI3IHVuZXhwZWN0ZWQgdmFsdWVzOiAKKwlJbmRleAlBY3R1YWwKKwlbMV0JMC41
MDA1MTA4MTE4MDU3MjUxCisJWzJdCTAuNTAwNTE2MTc2MjIzNzU0OQorCVszXQkwLjUwMDUyMTU0
MDY0MTc4NDcKKwlbNF0JMC41MDA1MjY5MDUwNTk4MTQ1CisJLi4uYW5kIDEyMyBtb3JlIGVycm9y
cy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggbGlzdGVuZXIu
Zm9yd2FyZHtYWVp9LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMTogRXhwZWN0ZWQgMS4w
MDA5OTk5Mjc1MjA3NTIgZm9yIGFsbCB2YWx1ZXMgYnV0IGZvdW5kIDEyNCB1bmV4cGVjdGVkIHZh
bHVlczogCisJSW5kZXgJQWN0dWFsCisJWzRdCTEuMDAwOTk5ODA4MzExNDYyNAorCVs1XQkxLjAw
MDk5OTgwODMxMTQ2MjQKKwlbNl0JMS4wMDA5OTk4MDgzMTE0NjI0CisJWzddCTEuMDAwOTk5Njg5
MTAyMTcyOQorCS4uLmFuZCAxMjAgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0
cnVlIGdvdCBmYWxzZQorUEFTUyAgIGxpc3RlbmVyLmZvcndhcmR7WFlafS52YWx1ZSBmcmFtZSBb
MTI4LCAyNTYpIGNoYW5uZWwgMCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK1BBU1Mg
ICBsaXN0ZW5lci5mb3J3YXJke1hZWn0udmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEg
Y29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgbGlzdGVuZXIuZm9yd2FyZHtY
WVp9OiBPdXRwdXQgYXQgZnJhbWUgMTI4IGNoYW5uZWwgMCBpcyBub3QgZXF1YWwgdG8gMC41MDA1
MDU0NDczODc2OTUzLiAKK1BBU1MgICBsaXN0ZW5lci5mb3J3YXJke1hZWn06IE91dHB1dCBhdCBm
cmFtZSAxMjggY2hhbm5lbCAxIGlzIG5vdCBlcXVhbCB0byAxLjAwMDk5OTkyNzUyMDc1Mi4gCiBG
QUlMIDwgW2ZvcndhcmQgc2V0dGVyXSAyIG91dCBvZiA2IGFzc2VydGlvbnMgd2VyZSBmYWlsZWQu
IGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQogUEFTUyA+IFt1cCBzZXR0ZXJd
ICAKLVBBU1MgICBsaXN0ZW5lci51cHtYWVp9LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwg
MCBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLjEyNTM3NTAwMjYyMjYwNDM3LiAKLVBBU1Mg
ICBsaXN0ZW5lci51cHtYWVp9LnZhbHVlIGZyYW1lIFswLCAxMjgpIGNoYW5uZWwgMSBjb250YWlu
cyBvbmx5IHRoZSBjb25zdGFudCAwLjQ3OTk4OTExMTQyMzQ5MjQzLiAKLVBBU1MgICBsaXN0ZW5l
ci51cHtYWVp9LnZhbHVlIGZyYW1lIFsxMjgsIDI1NikgY2hhbm5lbCAwIGNvbnRhaW5zIG9ubHkg
dGhlIGNvbnN0YW50IDAuMTI1Mzc1MDAyNjIyNjA0MzcuIAotUEFTUyAgIGxpc3RlbmVyLnVwe1hZ
Wn0udmFsdWUgZnJhbWUgWzEyOCwgMjU2KSBjaGFubmVsIDEgY29udGFpbnMgb25seSB0aGUgY29u
c3RhbnQgMC40Nzk5ODkxMTE0MjM0OTI0My4gCi1GQUlMIFggbGlzdGVuZXIudXB7WFlafTogT3V0
cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDAgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAwLjEyNTM3
NTAwMjYyMjYwNDM3LiBHb3QgMC4xMjUzNzUwMDI2MjI2MDQzNy4gYXNzZXJ0X3RydWU6IGV4cGVj
dGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIFggbGlzdGVuZXIudXB7WFlafTogT3V0cHV0IGF0IGZy
YW1lIDEyOCBjaGFubmVsIDEgc2hvdWxkIG5vdCBiZSBlcXVhbCB0byAwLjQ3OTk4OTExMTQyMzQ5
MjQzLiBHb3QgMC40Nzk5ODkxMTE0MjM0OTI0My4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUg
Z290IGZhbHNlCitGQUlMIFggbGlzdGVuZXIudXB7WFlafS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBj
aGFubmVsIDA6IEV4cGVjdGVkIDAuMTI1MzgzMDc5MDUxOTcxNDQgZm9yIGFsbCB2YWx1ZXMgYnV0
IGZvdW5kIDEyNyB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzFdCTAuMTI1
MzkxMTU1NDgxMzM4NQorCVsyXQkwLjEyNTM5OTIzMTkxMDcwNTU3CisJWzNdCTAuMTI1NDA3Mjkz
NDM4OTExNDQKKwlbNF0JMC4xMjU0MTUzNjk4NjgyNzg1CisJLi4uYW5kIDEyMyBtb3JlIGVycm9y
cy4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitGQUlMIFggbGlzdGVuZXIu
dXB7WFlafS52YWx1ZSBmcmFtZSBbMCwgMTI4KSBjaGFubmVsIDE6IEV4cGVjdGVkIDAuNDc5OTc5
NTE1MDc1NjgzNiBmb3IgYWxsIHZhbHVlcyBidXQgZm91bmQgMTI3IHVuZXhwZWN0ZWQgdmFsdWVz
OiAKKwlJbmRleAlBY3R1YWwKKwlbMV0JMC40Nzk5Njk5NDg1MzAxOTcxNAorCVsyXQkwLjQ3OTk2
MDM1MjE4MjM4ODMKKwlbM10JMC40Nzk5NTA3ODU2MzY5MDE4NgorCVs0XQkwLjQ3OTk0MTE4OTI4
OTA5MworCS4uLmFuZCAxMjMgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQorUEFTUyAgIGxpc3RlbmVyLnVwe1hZWn0udmFsdWUgZnJhbWUgWzEyOCwgMjU2
KSBjaGFubmVsIDAgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitQQVNTICAgbGlzdGVu
ZXIudXB7WFlafS52YWx1ZSBmcmFtZSBbMTI4LCAyNTYpIGNoYW5uZWwgMSBjb250YWlucyBvbmx5
IHRoZSBjb25zdGFudCAwLiAKK1BBU1MgICBsaXN0ZW5lci51cHtYWVp9OiBPdXRwdXQgYXQgZnJh
bWUgMTI4IGNoYW5uZWwgMCBpcyBub3QgZXF1YWwgdG8gMC4xMjUzODMwNzkwNTE5NzE0NC4gCitQ
QVNTICAgbGlzdGVuZXIudXB7WFlafTogT3V0cHV0IGF0IGZyYW1lIDEyOCBjaGFubmVsIDEgaXMg
bm90IGVxdWFsIHRvIDAuNDc5OTc5NTE1MDc1NjgzNi4gCiBGQUlMIDwgW3VwIHNldHRlcl0gMiBv
dXQgb2YgNiBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTYgb3V0IG9m
IDE2IHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFs
c2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMTAgb3V0IG9mIDE2IHRhc2tz
IHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVybm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBl
ci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtd2F2ZXNoYXBlcm5vZGUt
aW50ZXJmYWNlL3dhdmVzaGFwZXItY29weS1jdXJ2ZS1leHBlY3RlZC50eHQKaW5kZXggMmFiNGUz
YmYwNGQ4ZDA5YTViZmRiZDNkZTBhMzQ0NTU4NWMxZDM0MC4uNzY5YmJhMTVmNmNjMTM0M2EyNzQ5
ZjMyYTdkZTIwNDkxZGRiZTM3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS13YXZlc2hhcGVy
bm9kZS1pbnRlcmZhY2Uvd2F2ZXNoYXBlci1jb3B5LWN1cnZlLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLXdhdmVzaGFwZXJub2RlLWludGVyZmFjZS93YXZlc2hhcGVyLWNvcHktY3Vy
dmUtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDE2IEBACi1DT05TT0xFIE1FU1NBR0U6IFVuaGFu
ZGxlZCBQcm9taXNlIFJlamVjdGlvbjogSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4KLQotSGFybmVzcyBFcnJvciAoRkFJTCksIG1lc3NhZ2UgPSBV
bmhhbmRsZWQgcmVqZWN0aW9uOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuCiAK
IFBBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAKIFBBU1MgRXhlY3V0aW5nICJ0ZXN0
IGNvcHlpbmciIAogUEFTUyBBdWRpdCByZXBvcnQgCiBQQVNTID4gW3Rlc3QgY29weWluZ10gTW9k
aWZ5aW5nIGN1cnZlIHNob3VsZCBub3QgbW9kaWZ5IFdhdmVTaGFwZXIgCi1QQVNTICAgT3V0cHV0
IG9mIFdhdmVTaGFwZXIgd2l0aCBtb2RpZmllZCBjdXJ2ZSBpcyBpZGVudGljYWwgdG8gdGhlIGFy
cmF5IFswLC0wLjAzNjA2NjE3NDUwNzE0MTExLC0wLjEwNzQwNDgyODA3MTU5NDI0LC0wLjEzMDg0
NTE4OTA5NDU0MzQ2LC0wLjE4ODMyNTA0NzQ5Mjk4MDk2LC0wLjIzMzkxNDAxNzY3NzMwNzEzLC0w
LjI4NTgzMjA0NzQ2MjQ2MzQsLTAuMzEwNTIzODY3NjA3MTE2NywtMC4zOTQ1ODk3ODE3NjExNjk0
MywtMC40MDU0MTEwMDUwMjAxNDE2LC0wLjQ2NTM5MzU0MzI0MzQwODIsLTAuNTI5NTU0NDg2Mjc0
NzE5MiwtMC41NDA3Mzg1ODI2MTEwODQsLTAuNjE1NDUyNzY2NDE4NDU3LC0wLjY1Nzk5MTQwOTMw
MTc1NzgsLTAuNjk4NDQzNzcwNDA4NjMwNC4uLl0uIAotUEFTUyA8IFt0ZXN0IGNvcHlpbmddIEFs
bCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCi1QQVNTICMgQVVESVQg
VEFTSyBSVU5ORVIgRklOSVNIRUQ6IDEgdGFza3MgcmFuIHN1Y2Nlc3NmdWxseS4gCitQQVNTICAg
TW9kaWZ5aW5nIGN1cnZlIGFycmF5IGF0IHRpbWUgMC4wMTYgZGlkIG5vdCB0aHJvdyBhbiBleGNl
cHRpb24uIAorRkFJTCBYIE91dHB1dCBvZiBXYXZlU2hhcGVyIHdpdGggbW9kaWZpZWQgY3VydmUg
ZXhwZWN0ZWQgdG8gYmUgZXF1YWwgdG8gdGhlIGFycmF5IFstMC4wNzU2NTIzNjA5MTYxMzc3LC0w
LjExNjU5MTIxNTEzMzY2Njk5LC0wLjE1NTgzOTIwNDc4ODIwOCwtMC4yMDg2Njc1MTY3MDgzNzQw
MiwtMC4yNjA2MTcyNTYxNjQ1NTA4LC0wLjI5NDQ4Mzc4MDg2MDkwMDksLTAuMzQ1NDIwMzYwNTY1
MTg1NTUsLTAuNDExNTg0NDk2NDk4MTA3OSwtMC40MTQ1NDE2MDIxMzQ3MDQ2LC0wLjUxMTc0NTY5
MTI5OTQzODUsLTAuNTI0NTIwMjc3OTc2OTg5NywtMC41Nzc4NTI0ODc1NjQwODY5LC0wLjYzMTI2
NjM1NTUxNDUyNjQsLTAuNjg5NTQwNjI0NjE4NTMwMywtMC42Nzk2NDM4Njk0MDAwMjQ0LC0wLjgy
MjQ5MTc2NTAyMjI3NzguLi5dIGJ1dCBkaWZmZXJzIGluIDc2OCBwbGFjZXM6CisJSW5kZXgJQWN0
dWFsCQkJRXhwZWN0ZWQKKwlbMF0JMS43MjI4MjcyNTU3MjU4NjA2ZS0xCS03LjU2NTIzNjA5MTYx
Mzc2OTVlLTIKKwlbMV0JMS45Nzg2OTUwOTQ1ODU0MTg3ZS0xCS0xLjE2NTkxMjE1MTMzNjY2OTll
LTEKKwlbMl0JMi4yMjM5OTUwMjk5MjYzMDAwZS0xCS0xLjU1ODM5MjA0Nzg4MjA4MDFlLTEKKwlb
M10JMi41NTQxNzE5Nzk0MjczMzc2ZS0xCS0yLjA4NjY3NTE2NzA4Mzc0MDJlLTEKKwkuLi5hbmQg
NzY0IG1vcmUgZXJyb3JzLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK0ZB
SUwgPCBbdGVzdCBjb3B5aW5nXSAxIG91dCBvZiAyIGFzc2VydGlvbnMgd2VyZSBmYWlsZWQuIGFz
c2VydF90cnVlOiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorRkFJTCAjIEFVRElUIFRBU0sgUlVO
TkVSIEZJTklTSEVEOiAxIG91dCBvZiAxIHRhc2tzIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTog
ZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1l
LWJhc2ljLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZWFkYzVhNGRiNjY2N2FiNzI0M2QyMzc3
OWYzODE4MzZlOGY5NDU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
b2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwzNCBAQAorCitQQVNTICMgQVVESVQgVEFTSyBSVU5ORVIgU1RBUlRFRC4gCitQQVNT
IEV4ZWN1dGluZyAic3VzcGVuZC1pbnZhbGlkLWFyZ3VtZW50IiAKK1BBU1MgRXhlY3V0aW5nICJz
dXNwZW5kLWluLXRoZS1wYXN0IiAKK1BBU1MgRXhlY3V0aW5nICJzdXNwZW5kLWFmdGVyLXJlbmRl
ci1jb21wbGV0aW9uIiAKK1BBU1MgRXhlY3V0aW5nICJpZGVudGljYWwtc3VzcGVuZC10aW1lIiAK
K1BBU1MgRXhlY3V0aW5nICJyZXN1bWUtYmVmb3JlLXN1c3BlbmQiIAorUEFTUyBFeGVjdXRpbmcg
InJlc3VtZS13aXRob3V0LXN1c3BlbmQiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3N1
c3BlbmQtaW52YWxpZC1hcmd1bWVudF0gIAorUEFTUyAgIGNvbnRleHQuc3VzcGVuZCgpIHJlamVj
dGVkIGNvcnJlY3RseSB3aXRoIFR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMuIAorUEFT
UyAgIGNvbnRleHQuc3VzcGVuZCgtMS4wKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlk
U3RhdGVFcnJvcjogc3VzcGVuZFRpbWUgY2Fubm90IGJlIG5lZ2F0aXZlLiAKK1BBU1MgICBjb250
ZXh0LnN1c3BlbmQoMi4wKSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJv
cjogc3VzcGVuZFRpbWUgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiB0b3RhbCByZW5kZXJpbmcgZHVy
YXRpb24uIAorUEFTUyA8IFtzdXNwZW5kLWludmFsaWQtYXJndW1lbnRdIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDMgYXNzZXJ0aW9ucykgCitQQVNTID4gW3N1c3BlbmQtaW4tdGhlLXBh
c3RdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEgc3VzcGVuZCBpbiB0aGUgcGFzdCByZWplY3RlZCBj
b3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVFcnJvcjogU3VzcGVuc2lvbiBmcmFtZSBpcyBlYXJs
aWVyIHRoYW4gY3VycmVudCBmcmFtZS4gCitQQVNTICAgUHJvbWlzZSByZXNvbHZlZCBjb3JyZWN0
bHkuIAorUEFTUyA8IFtzdXNwZW5kLWluLXRoZS1wYXN0XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQu
ICh0b3RhbCAyIGFzc2VydGlvbnMpIAorUEFTUyA+IFtzdXNwZW5kLWFmdGVyLXJlbmRlci1jb21w
bGV0aW9uXSAgCitQQVNTICAgU2NoZWR1bGluZyBhIHN1c3BlbmQgYWZ0ZXIgdGhlIHJlbmRlciBj
b21wbGV0aW9uIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNw
ZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4g
CitQQVNTIDwgW3N1c3BlbmQtYWZ0ZXItcmVuZGVyLWNvbXBsZXRpb25dIEFsbCBhc3NlcnRpb25z
IHBhc3NlZC4gKHRvdGFsIDEgYXNzZXJ0aW9ucykgCitQQVNTID4gW2lkZW50aWNhbC1zdXNwZW5k
LXRpbWVdICAKK1BBU1MgICBTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCBmcmFtZSAxNjAgZGlkIG5v
dCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgYW5vdGhlciBzdXNwZW5k
IGF0IHRoZSBzYW1lIHJlbmRlcmluZyBxdWFudHVtIHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIElu
dmFsaWRTdGF0ZUVycm9yOiBUaGVyZSBpcyBhbHJlYWR5IGEgcGVuZGluZyBzdXNwZW5kIHJlcXVl
c3QgYXQgdGhpcyBmcmFtZS4gCitQQVNTIDwgW2lkZW50aWNhbC1zdXNwZW5kLXRpbWVdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNTID4gW3Jlc3VtZS1i
ZWZvcmUtc3VzcGVuZF0gIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBzdXNwZW5kIGF0IDQuNSBzZWNv
bmRzIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBSZXN1bWluZyBhIHJ1bm5p
bmcgY29udGV4dCByZXNvbHZlZCBjb3JyZWN0bHkuIAorUEFTUyA8IFtyZXN1bWUtYmVmb3JlLXN1
c3BlbmRdIEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDIgYXNzZXJ0aW9ucykgCitQQVNT
ID4gW3Jlc3VtZS13aXRob3V0LXN1c3BlbmRdICAKK1BBU1MgICBSZXN1bWluZyBhIGNvbnRleHQg
d2l0aG91dCBzdGFydGluZyBpdCByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBJbnZhbGlkU3RhdGVF
cnJvcjogQ2Fubm90IHJlc3VtZSBhbiBvZmZsaW5lIGF1ZGlvIGNvbnRleHQgdGhhdCBoYXMgbm90
IHN0YXJ0ZWQuIAorUEFTUyA8IFtyZXN1bWUtd2l0aG91dC1zdXNwZW5kXSBBbGwgYXNzZXJ0aW9u
cyBwYXNzZWQuICh0b3RhbCAxIGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVS
IEZJTklTSEVEOiA2IHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWJhc2lj
Lmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQt
cmVzdW1lLWJhc2ljLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOThkN2Q2M2JiODljZjU0Y2IwMzg5MTcyNmZi
NzBhOTE5NzZiY2MxNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29m
ZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtYmFzaWMuaHRtbApAQCAtMCwwICsxLDE1
MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPgorICAg
ICAgb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1iYXNpYy5odG1sCisgICAgPC90
aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIu
Li9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9
InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAg
PHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgc2FtcGxlUmF0ZSA9IDQ0
MTAwOworICAgICAgbGV0IHJlbmRlckR1cmF0aW9uID0gMTsKKyAgICAgIGxldCByZW5kZXJRdWFu
dHVtID0gMTI4OworCisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7
CisKKyAgICAgIC8vIFRhc2s6IENhbGxpbmcgc3VzcGVuZCB3aXRoIG5vIGFyZ3VtZW50LCBuZWdh
dGl2ZSB0aW1lIG9yIHRoZSB0aW1lCisgICAgICAvLyBiZXlvbmQgdGhlIG1heGltdW0gcmVuZGVy
IGR1cmF0aW9uIHJlamVjdCB0aGUgcHJvbWlzZS4KKyAgICAgIGF1ZGl0LmRlZmluZSgnc3VzcGVu
ZC1pbnZhbGlkLWFyZ3VtZW50JywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29u
dGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRl
ICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgIHNob3VsZChjb250ZXh0
LnN1c3BlbmQoKSwgJ2NvbnRleHQuc3VzcGVuZCgpJykuYmVSZWplY3RlZCgpOworICAgICAgICBz
aG91bGQoY29udGV4dC5zdXNwZW5kKC0xLjApLCAnY29udGV4dC5zdXNwZW5kKC0xLjApJykuYmVS
ZWplY3RlZCgpOworICAgICAgICBzaG91bGQoY29udGV4dC5zdXNwZW5kKDIuMCksICdjb250ZXh0
LnN1c3BlbmQoMi4wKScpLmJlUmVqZWN0ZWQoKTsKKworICAgICAgICBjb250ZXh0LnN0YXJ0UmVu
ZGVyaW5nKCkudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7CisgICAgICB9KTsKKworICAgICAgLy8g
VGFzazogU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4gdGhlIHBhc3Qgc2hvdWxkIGJlIHJlamVjdGVk
LgorICAgICAgYXVkaXQuZGVmaW5lKCdzdXNwZW5kLWluLXRoZS1wYXN0JywgKHRhc2ssIHNob3Vs
ZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1
ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOwor
CisgICAgICAgIGNvbnRleHQuc3VzcGVuZCgwLjUpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgc2hvdWxkKAorICAgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoY29udGV4dC5jdXJyZW50
VGltZSAtIDAuMSksCisgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBpbiB0aGUg
cGFzdCcpCisgICAgICAgICAgICAgIC5iZVJlamVjdGVkKCk7CisKKyAgICAgICAgICBzaG91bGQo
Y29udGV4dAorICAgICAgICAgICAgICAgICAgICAgLnN1c3BlbmQoCisgICAgICAgICAgICAgICAg
ICAgICAgICAgY29udGV4dC5jdXJyZW50VGltZSArIDAuMSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAnU2NoZWR1bGluZyBhIHN1c3BlbmQgaW4gdGhlIGZ1dHVyZScpCisgICAgICAgICAgICAg
ICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgY29udGV4
dC5yZXN1bWUoKTsKKyAgICAgICAgICAgICAgICAgICAgIH0pKQorICAgICAgICAgICAgICAuYmVS
ZXNvbHZlZCgpOworCisgICAgICAgICAgY29udGV4dC5yZXN1bWUoKTsKKyAgICAgICAgfSk7CisK
KyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkp
OworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IHN1c3BlbmRpbmcgYWZ0ZXIgcmVuZGVyaW5n
IGlzIGZpbmlzaGVkIG11c3QgYmUgcmVqZWN0ZWQgd2l0aCB0aGUKKyAgICAgIC8vIHByb3Blcmx5
IGNsYW1wZWQgZnJhbWUvdGltZSBpbmZvcm1hdGlvbi4KKyAgICAgIGF1ZGl0LmRlZmluZSgnc3Vz
cGVuZC1hZnRlci1yZW5kZXItY29tcGxldGlvbicsICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAg
ICAgbGV0IGNvbnRleHQgPQorICAgICAgICAgICAgbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwg
c2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKyAgICAgICAgY29udGV4
dC5zdGFydFJlbmRlcmluZygpCisgICAgICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAg
ICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgY29udGV4dC5zdXNwZW5kKHJlbmRl
ckR1cmF0aW9uKSwKKyAgICAgICAgICAgICAgICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhZnRl
ciB0aGUgcmVuZGVyIGNvbXBsZXRpb24nKQorICAgICAgICAgICAgICAgICAgLmJlUmVqZWN0ZWQo
KTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAgICAudGhlbigoKSA9PiB0YXNrLmRvbmUoKSk7
CisgICAgICB9KTsKKworICAgICAgLy8gVGFzazogQ2FsbGluZyBtdWx0aXBsZSBzdXNwZW5kcyBh
dCB0aGUgc2FtZSByZW5kZXJpbmcgcXVhbnR1bSBzaG91bGQKKyAgICAgIC8vIHJlamVjdCB0aGUg
cHJvbWlzZS4KKyAgICAgIGF1ZGl0LmRlZmluZSgnaWRlbnRpY2FsLXN1c3BlbmQtdGltZScsICh0
YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgbGV0IGNvbnRleHQgPQorICAgICAgICAgICAgbmV3
IE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgc2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1w
bGVSYXRlKTsKKworICAgICAgICAvLyB8c3VzcGVuZFRpbWUxfCBhbmQgfHN1c3BlbmRUaW1lMnwg
YXJlIGlkZW50aWNhbCB3aGVuIHF1YW50aXplZCB0byB0aGUKKyAgICAgICAgLy8gcmVuZGVyIHF1
YW50dW0gc2l6ZS4gIFRoZSBmYWN0b3JzIGFyZSBhcmJpdHJhcnkgZXhjZXB0IHRoZXkgc2hvdWxk
IGJlCisgICAgICAgIC8vIGJldHdlZW4gMSAoZXhjbHVzaXZlKSBhbmQgMiAoaW5jbHVzaXZlKS4g
IFVzaW5nIGEgZmFjdG9yIG9mIDIgYWxzbworICAgICAgICAvLyB0ZXN0cyB0aGF0IHRpbWVzIGFy
ZSByb3VuZGVkIHVwLgorICAgICAgICBsZXQgc3VzcGVuZFRpbWUxID0gMS4yNSAqIHJlbmRlclF1
YW50dW0gLyBzYW1wbGVSYXRlOworICAgICAgICBsZXQgc3VzcGVuZFRpbWUyID0gMiAqIHJlbmRl
clF1YW50dW0gLyBzYW1wbGVSYXRlOworCisgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICgp
ID0+IGNvbnRleHQuc3VzcGVuZChzdXNwZW5kVGltZTEpLnRoZW4oKCkgPT4gY29udGV4dC5yZXN1
bWUoKSksCisgICAgICAgICAgICAnU2NoZWR1bGluZyBhIHN1c3BlbmQgYXQgZnJhbWUgJyArIHN1
c3BlbmRUaW1lMSAqIHNhbXBsZVJhdGUpCisgICAgICAgICAgICAubm90VGhyb3coKTsKKworICAg
ICAgICBzaG91bGQoCisgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoc3VzcGVuZFRpbWUyKS50
aGVuKCgpID0+IGNvbnRleHQucmVzdW1lKCkpLAorICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYW5v
dGhlciBzdXNwZW5kIGF0IHRoZSBzYW1lIHJlbmRlcmluZyBxdWFudHVtJykKKyAgICAgICAgICAg
IC5iZVJlamVjdGVkKCk7CisKKyAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpLnRoZW4o
KCkgPT4gdGFzay5kb25lKCkpOworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IFJlc3VtaW5n
IGEgcnVubmluZyBjb250ZXh0IHNob3VsZCBiZSByZXNvbHZlZC4KKyAgICAgIGF1ZGl0LmRlZmlu
ZSgncmVzdW1lLWJlZm9yZS1zdXNwZW5kJywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICAv
LyBNYWtlIHRoZSByZW5kZXIgbGVuZ3RoIDUgdGltZXMgbG9uZ2VyIHRvIG1pbmltaXplIHRoZSBm
bGFraW5lc3MuCisgICAgICAgIGxldCBsb25nUmVuZGVyRHVyYXRpb24gPSByZW5kZXJEdXJhdGlv
biAqIDU7CisgICAgICAgIGxldCBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoCisg
ICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogbG9uZ1JlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRl
KTsKKworICAgICAgICAvLyBDcmVhdGUgZHVtbXkgYXVkaW8gZ3JhcGggdG8gc2xvdyB0aGUgcmVu
ZGVyaW5nLgorICAgICAgICBsZXQgb3NjID0gY29udGV4dC5jcmVhdGVPc2NpbGxhdG9yKCk7Cisg
ICAgICAgIGxldCBscGYgPSBjb250ZXh0LmNyZWF0ZUJpcXVhZEZpbHRlcigpOworICAgICAgICBv
c2MudHlwZSA9ICdzYXd0b290aCc7CisgICAgICAgIG9zYy5mcmVxdWVuY3kuc2V0VmFsdWVBdFRp
bWUoMC4xLCAwLjApOworICAgICAgICBvc2MuZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRU
aW1lKDEwMDAsIGxvbmdSZW5kZXJEdXJhdGlvbiAqIDAuNSk7CisgICAgICAgIG9zYy5mcmVxdWVu
Y3kubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMC4xLCBsb25nUmVuZGVyRHVyYXRpb24pOworICAg
ICAgICBscGYuZnJlcXVlbmN5LnNldFZhbHVlQXRUaW1lKDAuMSwgMC4wKTsKKyAgICAgICAgbHBm
LmZyZXF1ZW5jeS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgxMDAwLCBsb25nUmVuZGVyRHVyYXRp
b24gKiAwLjUpOworICAgICAgICBscGYuZnJlcXVlbmN5LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1l
KDAuMSwgbG9uZ1JlbmRlckR1cmF0aW9uKTsKKyAgICAgICAgb3NjLmNvbm5lY3QobHBmKTsKKyAg
ICAgICAgbHBmLmNvbm5lY3QoY29udGV4dC5kZXN0aW5hdGlvbik7CisgICAgICAgIG9zYy5zdGFy
dCgpOworCisgICAgICAgIC8vIEEgc3VzcGVuZCBpcyBzY2hlZHVsZWQgYXQgdGhlIDkwJSBvZiB0
aGUgcmVuZGVyIGR1cmF0aW9uLgorICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAoKSA9PiB7
CisgICAgICAgICAgICAgIC8vIFRlc3QgaXMgZmluaXNoZWQgd2hlbiB0aGlzIHN1c3BlbmQgcmVz
b2x2ZXMuCisgICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChsb25nUmVuZGVyRHVyYXRpb24g
KiAwLjkpLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgICAgICAgfSwKKyAgICAgICAg
ICAgICdTY2hlZHVsaW5nIGEgc3VzcGVuZCBhdCAnICsgbG9uZ1JlbmRlckR1cmF0aW9uICogMC45
ICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgIC8vIFdl
IGhhdmUgdG8gc3RhcnQgcmVuZGVyaW5nIHRvIGdldCB0aGUgdGltZSBydW5uaW5nLgorICAgICAg
ICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCk7CisKKyAgICAgICAgLy8gVGhlbiBjYWxsIHJlc3Vt
ZSgpIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSByZW5kZXJpbmcgc3RhcnRzLiBSZXN1bWluZworICAg
ICAgICAvLyBhIGNvbnRleHQgdGhhdCBpcyBhbHJlYWR5IHJ1bm5pbmcgc2hvdWxkIGJlIHJlc29s
dmVkLgorICAgICAgICBzaG91bGQoY29udGV4dC5yZXN1bWUoKSwgJ1Jlc3VtaW5nIGEgcnVubmlu
ZyBjb250ZXh0JykuYmVSZXNvbHZlZCgpOworICAgICAgfSk7CisKKyAgICAgIC8vIFRhc2s6IENh
bGxpbmcgcmVzdW1lIG9uIGEgY29udGV4dCB0aGF0IGlzIG5vdCBzdGFydGVkIHNob3VsZCByZWpl
Y3QgdGhlCisgICAgICAvLyBwcm9taXNlLgorICAgICAgYXVkaXQuZGVmaW5lKCdyZXN1bWUtd2l0
aG91dC1zdXNwZW5kJywgKHRhc2ssIHNob3VsZCkgPT4geworICAgICAgICBsZXQgY29udGV4dCA9
CisgICAgICAgICAgICBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBzYW1wbGVSYXRlICogcmVu
ZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgIHNob3VsZChjb250ZXh0LnJlc3Vt
ZSgpLCAnUmVzdW1pbmcgYSBjb250ZXh0IHdpdGhvdXQgc3RhcnRpbmcgaXQnKQorICAgICAgICAg
ICAgLmJlUmVqZWN0ZWQoKQorICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOwor
ICAgICAgfSk7CisKKyAgICAgIGF1ZGl0LnJ1bigpOworICAgIDwvc2NyaXB0PgorICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9j
b250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFuZGxlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWV2ZW50aGFu
ZGxlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWYxNzI3NDBhMzcyMDQ0MzUwNjMyNGRkNDNi
NmFhZGQ2Y2NhZTZjMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29m
ZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZXZlbnRoYW5kbGVyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDI2IEBACisKK1BBU1MgIyBBVURJVCBUQVNLIFJVTk5FUiBTVEFSVEVELiAK
K1BBU1MgRXhlY3V0aW5nICJ0ZXN0IiAKK1BBU1MgQXVkaXQgcmVwb3J0IAorUEFTUyA+IFt0ZXN0
XSBUZXN0IGV2ZW50IGhhbmRsZXIgZnJvbSByZXN1bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFTUyAg
IEEgbmV3IHN1c3BlbmQgaGFzIGJlZW4gc2NoZWR1bGVkIGF0IDAgc2Vjb25kKHMpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50IGhhbmRsZXI6
IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDAgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNj
aGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwLjI1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFu
IGV4Y2VwdGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0
IGlzIHN1c3BlbmRlZCBhdCAwLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVs
aW5nIGEgbmV3IHN1c3BlbmQgYXQgMC41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2Vw
dGlvbi4gCitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1
c3BlbmRlZCBhdCAwLjUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBu
ZXcgc3VzcGVuZCBhdCAwLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4g
CitQQVNTICAgb25zdGF0ZWNoYW5nZSBldmVudCBoYW5kbGVyOiBjb250ZXh0IGlzIHN1c3BlbmRl
ZCBhdCAwLjc1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1
c3BlbmQgYXQgMSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAg
IG9uc3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgMSBz
ZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEu
MjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRl
Y2hhbmdlIGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuMjUgc2Vjb25k
KHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxLjUgc2Vj
b25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdl
IGV2ZW50IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuNSBzZWNvbmQocykgaXMg
dHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDEuNzUgc2Vjb25kKHMp
IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBvbnN0YXRlY2hhbmdlIGV2ZW50
IGhhbmRsZXI6IGNvbnRleHQgaXMgc3VzcGVuZGVkIGF0IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUu
IAorUEFTUyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNvbmRzIHJlamVjdGVkIGNvcnJlY3RseSB3aXRo
IEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRv
dGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNTICAgb25jb21wbGV0ZSBldmVudCBoYW5kbGVy
OiBjb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRvIGNsb3NlZC4gCitQQVNTIDwgW3Rlc3RdIEFsbCBh
c3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDE4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFVRElUIFRB
U0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVz
dW1lLWV2ZW50aGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlv
Y29udGV4dC1zdXNwZW5kLXJlc3VtZS1ldmVudGhhbmRsZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZDhm
MmJhOTM1NDMwM2U3NGMxNGY4NzY2NTQ2NTIyZjNjYTgxNmJiCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1l
dmVudGhhbmRsZXIuaHRtbApAQCAtMCwwICsxLDk2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3Bl
bmQtcmVzdW1lLWV2ZW50aGFuZGxlci5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNy
Yz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5l
c3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5l
c3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQt
dXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRl
c3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisK
KyAgICAgIGxldCBjb250ZXh0OworICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisKKyAg
ICAgIC8vIFRoZSBzYW1wbGUgcmF0ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVyaW5nIHF1YW50
dW0sIHNvIHN1c3BlbnNpb24KKyAgICAgIC8vIHRpbWVzIGluIHRoZSB0ZXN0IHdpbGwgZmFsbCBv
biB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnkuIEFsdGhvdWdoCisgICAgICAvLyB0aGlzIGlz
IG5vdCBuZWNlc3NhcnksIGl0IGlzIGVhc2llciB0byB1bmRlcnN0YW5kIHRoZSB0ZXN0LgorICAg
ICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworCisgICAgICBsZXQgcmVu
ZGVyRHVyYXRpb24gPSAyOworICAgICAgbGV0IHNjaGVkdWxlZFN1c3BlbmRUaW1lID0gMDsKKwor
ICAgICAgLy8gV2l0aCB0aGUgc2FtcGxlIHJhdGUgc2V0dGluZyBhYm92ZSwgdGhpcyBlbnN1cmVz
IHN1c3BlbnNpb24gdGltZSBmYWxsCisgICAgICAvLyBpbiB0byB0aGUgcmVuZGVyIHF1YW50dW0g
Ym91bmRhcnkuCisgICAgICBsZXQgc3VzcGVuZEludGVydmFsID0gMC4yNTsKKworICAgICAgYXVk
aXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVsOiAndGVzdCcsCisgICAg
ICAgICAgICBkZXNjcmlwdGlvbjogJ1Rlc3QgZXZlbnQgaGFuZGxlciBmcm9tIHJlc3VtZSgpIGFu
ZCBzdXNwZW5kKCknCisgICAgICAgICAgfSwKKyAgICAgICAgICAodGFzaywgc2hvdWxkKSA9PiB7
CisgICAgICAgICAgICBjb250ZXh0ID0gbmV3IE9mZmxpbmVBdWRpb0NvbnRleHQoCisgICAgICAg
ICAgICAgICAgMSwgc2FtcGxlUmF0ZSAqIHJlbmRlckR1cmF0aW9uLCBzYW1wbGVSYXRlKTsKKwor
ICAgICAgICAgICAgY29udGV4dC5vbnN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICAgIGlmIChjb250ZXh0LnN0YXRlID09PSAnc3VzcGVuZGVkJyAmJgorICAgICAgICAgICAg
ICAgICAgY29udGV4dC5jdXJyZW50VGltZSA9PT0gc2NoZWR1bGVkU3VzcGVuZFRpbWUpIHsKKyAg
ICAgICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuc3RhdGUg
PT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmN1cnJl
bnRUaW1lID09PSBzY2hlZHVsZWRTdXNwZW5kVGltZSwKKyAgICAgICAgICAgICAgICAgICAgJ29u
c3RhdGVjaGFuZ2UgZXZlbnQgaGFuZGxlcjogY29udGV4dCBpcyBzdXNwZW5kZWQgYXQgJyArCisg
ICAgICAgICAgICAgICAgICAgICAgICBzY2hlZHVsZWRTdXNwZW5kVGltZSArICcgc2Vjb25kKHMp
JykKKyAgICAgICAgICAgICAgICAgICAgLmJlVHJ1ZSgpOworICAgICAgICAgICAgICAgIHNjaGVk
dWxlZFN1c3BlbmRUaW1lID0gY29udGV4dC5jdXJyZW50VGltZSArIHN1c3BlbmRJbnRlcnZhbDsK
KworICAgICAgICAgICAgICAgIC8vIFNjaGVkdWxpbmcgYSBzdXNwZW5kIGJlZm9yZSB0aGUgcmVu
ZGVyIGR1cmF0aW9uIHNob3VsZCBwYXNzLgorICAgICAgICAgICAgICAgIGlmIChzY2hlZHVsZWRT
dXNwZW5kVGltZSA8IHJlbmRlckR1cmF0aW9uKSB7CisgICAgICAgICAgICAgICAgICBzaG91bGQo
CisgICAgICAgICAgICAgICAgICAgICAgKCkgPT4gY29udGV4dC5zdXNwZW5kKHNjaGVkdWxlZFN1
c3BlbmRUaW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAnU2NoZWR1bGluZyBhIG5ldyBzdXNw
ZW5kIGF0ICcgKyBzY2hlZHVsZWRTdXNwZW5kVGltZSArCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICcgc2Vjb25kKHMpJykKKyAgICAgICAgICAgICAgICAgICAgICAubm90VGhyb3coKTsKKyAg
ICAgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAv
LyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBleGFjdGx5IGF0IHRoZSByZW5kZXIgZHVyYXRpb24gc2hv
dWxkIGJlCisgICAgICAgICAgICAgICAgLy8gcmVqZWN0ZWQuCisgICAgICAgICAgICAgICAgaWYg
KHNjaGVkdWxlZFN1c3BlbmRUaW1lID09PSByZW5kZXJEdXJhdGlvbikgeworICAgICAgICAgICAg
ICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQuc3VzcGVuZChzY2hl
ZHVsZWRTdXNwZW5kVGltZSksCisgICAgICAgICAgICAgICAgICAgICAgJ1NjaGVkdWxpbmcgYXQg
JyArIHJlbmRlckR1cmF0aW9uICsgJyBzZWNvbmRzJykKKyAgICAgICAgICAgICAgICAgICAgICAu
YmVSZWplY3RlZCgpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGNvbnRl
eHQucmVzdW1lKCk7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH07CisKKyAgICAgICAg
ICAgIC8vIFRoaXMgdGVzdCBpcyBmb3IgdmVyaWZ5aW5nIGFsbCB0aGUgZXZlbnQgaGFuZGxlcnMg
b24gT0FDIGFuZCB0aGF0CisgICAgICAgICAgICAvLyBpcyB3aHkgJ29uY29tcGxldGUnIGlzIHVz
ZWQgaGVyZS4KKyAgICAgICAgICAgIGNvbnRleHQub25jb21wbGV0ZSA9IGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgICBzaG91bGQoY29udGV4dC5zdGF0ZSwgJ29uY29tcGxldGUgZXZlbnQgaGFu
ZGxlcjogY29udGV4dC5zdGF0ZScpCisgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9z
ZWQnKTsKKyAgICAgICAgICAgICAgdGFzay5kb25lKCk7CisgICAgICAgICAgICB9OworCisgICAg
ICAgICAgICAvLyBTY2hlZHVsZSB0aGUgZmlyc3Qgc3VzcGVuc2lvbi4KKyAgICAgICAgICAgIHNo
b3VsZCgKKyAgICAgICAgICAgICAgICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3Vz
cGVuZFRpbWUpLAorICAgICAgICAgICAgICAgICdBIG5ldyBzdXNwZW5kIGhhcyBiZWVuIHNjaGVk
dWxlZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUgKworICAgICAgICAgICAgICAgICAgICAn
IHNlY29uZChzKScpCisgICAgICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICAgICAgICA7
CisKKyAgICAgICAgICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKTsKKyAgICAgICAgICB9KTsK
KworICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3Vz
cGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtZ3JhcGgtbWFuaXB1
bGF0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YmJkZGRhYTJjNTE0YmU0NzdiZDJkOTM4
YzIyYTMwYTcyMTVkZDAzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
b2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1ncmFwaC1tYW5pcHVsYXRpb24tZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNU
QVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNT
ID4gW3Rlc3RdIFN5bmNocm9ub3VzIGdyYXBoIG1hbmlwdWxhdGlvbiB3aXRoIHN1c3BlbmQoKSBh
bmQgcmVzdW1lKCkgCitQQVNTICAgRnJhbWUgYXQgd2hpY2ggY29udGV4dCBpcyBzdXNwZW5kZWQg
aXMgZXF1YWwgdG8gMTI4MDAuIAorUEFTUyAgIENvbm5lY3RpbmcgYSBjb25zdGFudCBidWZmZXIg
dG8gZGVzdGluYXRpb24gYW5kIHN0YXJ0aW5nIGF0IDEyODAwIGZyYW1lIGRpZCBub3QgdGhyb3cg
YW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IGlzIHN1c3BlbmRlZCBpcyBlcXVhbCB0byAy
NTYwMC4gCitQQVNTICAgRGlzY29ubmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciBhdCAyNTYwMCBm
cmFtZSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQnVmZmVyIGZyYW1lIFsw
LCAxMjgwMCkgY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgMC4gCitGQUlMIFggQnVmZmVyIGZy
YW1lIFsxMjgwMCwgMjU2MDApOiBFeHBlY3RlZCAxIGZvciBhbGwgdmFsdWVzIGJ1dCBmb3VuZCAx
MjgwMCB1bmV4cGVjdGVkIHZhbHVlczogCisJSW5kZXgJQWN0dWFsCisJWzBdCTAKKwlbMV0JMAor
CVsyXQkwCisJWzNdCTAKKwkuLi5hbmQgMTI3OTYgbW9yZSBlcnJvcnMuIGFzc2VydF90cnVlOiBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyAgIEJ1ZmZlciBmcmFtZSBbMjU2MDAsIDM4NDAw
KSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAwLiAKK0ZBSUwgPCBbdGVzdF0gMSBvdXQgb2Yg
NyBhc3NlcnRpb25zIHdlcmUgZmFpbGVkLiBhc3NlcnRfdHJ1ZTogZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKK0ZBSUwgIyBBVURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSBvdXQgb2YgMSB0YXNr
cyB3ZXJlIGZhaWxlZC4gYXNzZXJ0X3RydWU6IGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtZ3JhcGgtbWFuaXB1bGF0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9v
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjAzYzk4ZGM0MWU5MWFmYTcwODFkNzljYWY5YmNkMTgyNzgzMmExNjAKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0
LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1sCkBAIC0wLDAgKzEsMTIyIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8dGl0bGU+CisgICAgICBv
ZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLWdyYXBoLW1hbmlwdWxhdGlvbi5odG1s
CisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+PC9zY3JpcHQ+CisgICAgPHNj
cmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJv
ZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+CisgICAgICBsZXQgYXVkaXQg
PSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisKKyAgICAgIGxldCBjb250ZXh0OworICAgICAg
bGV0IHJlbmRlclF1YW50dW0gPSAxMjg7CisgICAgICBsZXQgcmVuZGVyRHVyYXRpb24gPSAzOwor
CisgICAgICAvLyBUaGUgc2FtcGxlIHJhdGUgaXMgbXVsdGlwbGUgb2YgdGhlIHJlbmRlcmluZyBx
dWFudHVtLCBzbyBzdXNwZW5zaW9uCisgICAgICAvLyB0aW1lcyBmYWxsIGluIHRvIHRoZSByZW5k
ZXIgcXVhbnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCBzYW1wbGVSYXRlID0gcmVuZGVyUXVhbnR1
bSAqIDEwMDsKKworICAgICAgLy8gU3VzcGVuZCBhdCAxIHNlY29uZCBhbmQgYWN0aXZhdGUgdGhl
IHNvdXJjZSBub2RlLiBUaGUgYXVkaW8gb3V0cHV0CisgICAgICAvLyBzaG91bGQgYmUgMS4wIGZy
b20gfHN1c3BlbmRUaW1lMXwgdG8gdGhlIG5leHQgc3VzcGVuc2lvbi4KKyAgICAgIGxldCBzdXNw
ZW5kVGltZTEgPSAxOworCisgICAgICAvLyBTdXNwZW5kIGF0IDIgc2Vjb25kcyBhbmQgZGlzY29u
bmVjdCB0aGUgbm9kZS4gVGhlIGF1ZGlvIG91dHB1dCBzaG91bGQKKyAgICAgIC8vIGJlIDAuMCBm
cm9tIHxzdXNwZW5kVGltZTJ8IHRvIHRoZSBlbmQuCisgICAgICBsZXQgc3VzcGVuZFRpbWUyID0g
MjsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAgICAgIGxhYmVs
OiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjoKKyAgICAgICAgICAgICAgICAnU3lu
Y2hyb25vdXMgZ3JhcGggbWFuaXB1bGF0aW9uIHdpdGggc3VzcGVuZCgpIGFuZCByZXN1bWUoKScK
KyAgICAgICAgICB9LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAg
IGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBz
YW1wbGVSYXRlICogcmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICAv
LyBDcmVhdGUgYSBjb25zdGFudCBidWZmZXIgb2YgMS4wLgorICAgICAgICAgICAgbGV0IGNvbnN0
YW50QnVmZmVyID0gY3JlYXRlQ29uc3RhbnRCdWZmZXIoY29udGV4dCwgMSwgMS4wKTsKKyAgICAg
ICAgICAgIGxldCBjb25zdGFudFNvdXJjZSA9IGNvbnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCk7
CisgICAgICAgICAgICBjb25zdGFudFNvdXJjZS5idWZmZXIgPSBjb25zdGFudEJ1ZmZlcjsKKyAg
ICAgICAgICAgIGNvbnN0YW50U291cmNlLmxvb3AgPSB0cnVlOworCisgICAgICAgICAgICAvLyBU
aGUgYXVkaW8gb3V0cHV0IGZyb20gdGhlIGJlZ2lubmluZyAoMC4wIHNlY29uZCkgdG8gdGhlIGZp
cnN0CisgICAgICAgICAgICAvLyBzdXNwZW5kIHRpbWUgc2hvdWxkIGJlIDAuMCBiZWNhdXNlIHRo
ZXJlIGlzIG5vIGNvbm5lY3Rpb24gdG8gdGhlCisgICAgICAgICAgICAvLyBkZXN0aW5hdGlvbi4K
KworICAgICAgICAgICAgY29udGV4dC5zdXNwZW5kKHN1c3BlbmRUaW1lMSkudGhlbihmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgICAgaWYgKGNvbnRleHQuY3VycmVudFRpbWUgPT09IHN1c3BlbmRU
aW1lMSkgeworICAgICAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICAgICAgY29u
dGV4dC5jdXJyZW50VGltZSAqIHNhbXBsZVJhdGUsCisgICAgICAgICAgICAgICAgICAgICdGcmFt
ZSBhdCB3aGljaCBjb250ZXh0IGlzIHN1c3BlbmRlZCcpCisgICAgICAgICAgICAgICAgICAgIC5i
ZUVxdWFsVG8oc3VzcGVuZFRpbWUxICogc2FtcGxlUmF0ZSkKKyAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICBzaG91bGQoCisgICAgICAgICAgICAgICAgICAoKSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIGNvbnN0YW50U291cmNlLmNvbm5lY3QoY29udGV4dC5kZXN0aW5hdGlvbik7Cisg
ICAgICAgICAgICAgICAgICAgIGNvbnN0YW50U291cmNlLnN0YXJ0KCkKKyAgICAgICAgICAgICAg
ICAgIH0sCisgICAgICAgICAgICAgICAgICAnQ29ubmVjdGluZyBhIGNvbnN0YW50IGJ1ZmZlciB0
byBkZXN0aW5hdGlvbiBhbmQgc3RhcnRpbmcgYXQgJyArCisgICAgICAgICAgICAgICAgICAgICAg
c3VzcGVuZFRpbWUxICogc2FtcGxlUmF0ZSArICcgZnJhbWUnKQorICAgICAgICAgICAgICAgICAg
Lm5vdFRocm93KCk7CisgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgICAgY29udGV4dC5yZXN1
bWUoKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICBjb250ZXh0LnN1c3BlbmQoc3Vz
cGVuZFRpbWUyKS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICBpZiAoY29udGV4dC5j
dXJyZW50VGltZSA9PT0gc3VzcGVuZFRpbWUyKSB7CisgICAgICAgICAgICAgICAgc2hvdWxkKGNv
bnRleHQuY3VycmVudFRpbWUgKiBzYW1wbGVSYXRlLCAnQ29udGV4dCBpcyBzdXNwZW5kZWQnKQor
ICAgICAgICAgICAgICAgICAgICAuYmVFcXVhbFRvKHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGUp
OworICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAg
ICAgICgpID0+IGNvbnN0YW50U291cmNlLmRpc2Nvbm5lY3QoKSwKKyAgICAgICAgICAgICAgICAg
ICdEaXNjb25uZWN0aW5nIGEgY29uc3RhbnQgYnVmZmVyIGF0ICcgKworICAgICAgICAgICAgICAg
ICAgICAgIHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGUgKyAnIGZyYW1lJykKKyAgICAgICAgICAg
ICAgICAgIC5ub3RUaHJvdygpOworCisgICAgICAgICAgICAgIGNvbnRleHQucmVzdW1lKCk7Cisg
ICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgY29udGV4dC5zdGFydFJlbmRlcmluZygpCisg
ICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24oYnVmZmVyKSB7CisgICAgICAgICAgICAgICAg
ICB2ZXJpZnlSZXN1bHQoc2hvdWxkLCBidWZmZXIpOworICAgICAgICAgICAgICAgIH0pCisgICAg
ICAgICAgICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworICAgICAgICAgIH0pOworCisg
ICAgICBmdW5jdGlvbiB2ZXJpZnlSZXN1bHQoc2hvdWxkLCBidWZmZXIpIHsKKyAgICAgICAgbGV0
IGRhdGEgPSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgICAgICAgbGV0IHN1c3BlbmRJ
bmRleDEgPSBzdXNwZW5kVGltZTEgKiBzYW1wbGVSYXRlOworICAgICAgICBsZXQgc3VzcGVuZElu
ZGV4MiA9IHN1c3BlbmRUaW1lMiAqIHNhbXBsZVJhdGU7CisgICAgICAgIGxldCBlbmRJbmRleCA9
IHJlbmRlckR1cmF0aW9uICogc2FtcGxlUmF0ZTsKKworICAgICAgICAvLyBTcGxpdCB0aGUgcmVu
ZGVyZWQgYnVmZmVyIGludG8gMyBzZWdtZW50czoKKyAgICAgICAgLy8gWzAsIHN1c3BlbmRJbmRl
eDEpLCBbc3VzcGVuZEluZGV4MSwgc3VzcGVuZEluZGV4MiksIFtzdXNwZW5kSW5kZXgyLAorICAg
ICAgICAvLyBlbmRJbmRleCkuCisgICAgICAgIGxldCBzdWJhcnJheTAgPSBkYXRhLnN1YmFycmF5
KDAsIHN1c3BlbmRJbmRleDEpOworICAgICAgICBsZXQgc3ViYXJyYXkxID0gZGF0YS5zdWJhcnJh
eShzdXNwZW5kSW5kZXgxLCBzdXNwZW5kSW5kZXgyKTsKKyAgICAgICAgbGV0IHN1YmFycmF5MiA9
IGRhdGEuc3ViYXJyYXkoc3VzcGVuZEluZGV4MiwgZW5kSW5kZXgpOworCisgICAgICAgIC8vIEVh
Y2ggc2VnbWVudCBzaG91bGQgY29udGFpbiBhIGNvbnN0YW50IHZhbHVlIG9mIDAsIDEgYW5kIDAK
KyAgICAgICAgLy8gcmVzcGVjdGl2ZWx5LgorICAgICAgICBzaG91bGQoc3ViYXJyYXkwLCAnQnVm
ZmVyIGZyYW1lIFswLCAnICsgc3VzcGVuZEluZGV4MSArICcpJykKKyAgICAgICAgICAgIC5iZUNv
bnN0YW50VmFsdWVPZigwKTsKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgc3ViYXJyYXkx
LAorICAgICAgICAgICAgJ0J1ZmZlciBmcmFtZSBbJyArIHN1c3BlbmRJbmRleDEgKyAnLCAnICsg
c3VzcGVuZEluZGV4MiArICcpJykKKyAgICAgICAgICAgIC5iZUNvbnN0YW50VmFsdWVPZigxKTsK
KyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgc3ViYXJyYXkyLCAnQnVmZmVyIGZyYW1lIFsn
ICsgc3VzcGVuZEluZGV4MiArICcsICcgKyBlbmRJbmRleCArICcpJykKKyAgICAgICAgICAgIC5i
ZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgIH0KKworICAgICAgYXVkaXQucnVuKCk7CisgICAg
PC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dl
YmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQt
cmVzdW1lLXByb21pc2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkYTkwMmUxNTFhZTFlYjNm
YjllZGU0OTMyNzI0YjA1NTUyNGVlNjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21pc2UtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMjYgQEAKKworUEFTUyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJU
RUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAorUEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4g
W3Rlc3RdIFByb21pc2UgcmVzb2x1dGlvbiBvZiByZXN1bWUoKSBhbmQgc3VzcGVuZCgpIAorUEFT
UyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAwIHNlY29uZChzKSBkaWQgbm90IHRocm93
IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMCBzZWNvbmQocykg
aXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5kIGF0IDAuMjUgc2Vjb25k
KHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBDb250ZXh0IHN1c3BlbmRl
ZCBhdCAwLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1
c3BlbmQgYXQgMC41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNT
ICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMC41IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBT
Y2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMC43NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBh
biBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0IDAuNzUgc2Vjb25kKHMp
IGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAxIHNlY29uZChz
KSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQg
YXQgMSBzZWNvbmQocykgaXMgdHJ1ZS4gCitQQVNTICAgU2NoZWR1bGluZyBhIG5ldyBzdXNwZW5k
IGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBD
b250ZXh0IHN1c3BlbmRlZCBhdCAxLjI1IHNlY29uZChzKSBpcyB0cnVlLiAKK1BBU1MgICBTY2hl
ZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS41IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4
Y2VwdGlvbi4gCitQQVNTICAgQ29udGV4dCBzdXNwZW5kZWQgYXQgMS41IHNlY29uZChzKSBpcyB0
cnVlLiAKK1BBU1MgICBTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgMS43NSBzZWNvbmQocykg
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIENvbnRleHQgc3VzcGVuZGVkIGF0
IDEuNzUgc2Vjb25kKHMpIGlzIHRydWUuIAorUEFTUyAgIFNjaGVkdWxpbmcgYXQgMiBzZWNvbmRz
IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoIEludmFsaWRTdGF0ZUVycm9yOiBzdXNwZW5kVGltZSBj
YW5ub3QgYmUgZ3JlYXRlciB0aGFuIHRvdGFsIHJlbmRlcmluZyBkdXJhdGlvbi4gCitQQVNTICAg
UHJvbWlzZSBjb250ZXh0LnN0YXRlIGlzIGVxdWFsIHRvIGNsb3NlZC4gCitQQVNTIDwgW3Rlc3Rd
IEFsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsIDE4IGFzc2VydGlvbnMpIAorUEFTUyAjIEFV
RElUIFRBU0sgUlVOTkVSIEZJTklTSEVEOiAxIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuIAorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3Bl
bmQtcmVzdW1lLXByb21pc2UuaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRp
b2NvbnRleHQtc3VzcGVuZC1yZXN1bWUtcHJvbWlzZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkzY2I3NjM4
OTNkYzhlYWNhMjlhYzY3OTRhNDZiMGEwZDQ3MTU0ZDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXByb21p
c2UuaHRtbApAQCAtMCwwICsxLDkxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVh
ZD4KKyAgICA8dGl0bGU+CisgICAgICBvZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1l
LXByb21pc2UuaHRtbAorICAgIDwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Ii4uL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2F1ZGl0LXV0aWwuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQuanMiPjwvc2NyaXB0PgorICA8
L2hlYWQ+CisgIDxib2R5PgorICAgIDxzY3JpcHQgaWQ9ImxheW91dC10ZXN0LWNvZGUiPgorICAg
ICAgbGV0IGF1ZGl0ID0gQXVkaXQuY3JlYXRlVGFza1J1bm5lcigpOworICAgICAgbGV0IGNvbnRl
eHQ7CisKKyAgICAgIC8vIFRoZSBzYW1wbGUgcmF0ZSBpcyBtdWx0aXBsZSBvZiB0aGUgcmVuZGVy
aW5nIHF1YW50dW0sIHNvIHN1c3BlbnNpb24KKyAgICAgIC8vIHRpbWVzIGZhbGwgaW4gdG8gdGhl
IHJlbmRlciBxdWFudHVtIGJvdW5kYXJ5LgorICAgICAgbGV0IHJlbmRlclF1YW50dW0gPSAxMjg7
CisKKyAgICAgIGxldCBzYW1wbGVSYXRlID0gcmVuZGVyUXVhbnR1bSAqIDEwMDsKKyAgICAgIGxl
dCByZW5kZXJEdXJhdGlvbiA9IDI7CisgICAgICBsZXQgc2NoZWR1bGVkU3VzcGVuZFRpbWUgPSAw
OworCisgICAgICAvLyBXaXRoIHRoZSBzYW1wbGUgcmF0ZSBzZXR0aW5nIGFib3ZlLCB0aGlzIGVu
c3VyZXMgc3VzcGVuc2lvbiB0aW1lIGZhbGwKKyAgICAgIC8vIGluIHRvIHRoZSByZW5kZXIgcXVh
bnR1bSBib3VuZGFyeS4KKyAgICAgIGxldCBzdXNwZW5kSW50ZXJ2YWwgPSAwLjI1OworCisgICAg
ICBmdW5jdGlvbiBvblN1c3BlbmRlZChzaG91bGQpIHsKKyAgICAgICAgaWYgKGNvbnRleHQuc3Rh
dGUgPT09ICdzdXNwZW5kZWQnICYmCisgICAgICAgICAgICBjb250ZXh0LmN1cnJlbnRUaW1lID09
PSBzY2hlZHVsZWRTdXNwZW5kVGltZSkgeworICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAg
ICAgY29udGV4dC5zdGF0ZSA9PT0gJ3N1c3BlbmRlZCcgJiYKKyAgICAgICAgICAgICAgICAgIGNv
bnRleHQuY3VycmVudFRpbWUgPT09IHNjaGVkdWxlZFN1c3BlbmRUaW1lLAorICAgICAgICAgICAg
ICAnQ29udGV4dCBzdXNwZW5kZWQgYXQgJyArIHNjaGVkdWxlZFN1c3BlbmRUaW1lICsgJyBzZWNv
bmQocyknKQorICAgICAgICAgICAgICAuYmVUcnVlKCk7CisKKyAgICAgICAgICBzY2hlZHVsZWRT
dXNwZW5kVGltZSA9IGNvbnRleHQuY3VycmVudFRpbWUgKyBzdXNwZW5kSW50ZXJ2YWw7CisKKyAg
ICAgICAgICAvLyBTY2hlZHVsaW5nIGEgc3VzcGVuZCBiZWZvcmUgdGhlIHJlbmRlciBkdXJhdGlv
biBzaG91bGQgcGFzcy4KKyAgICAgICAgICBpZiAoc2NoZWR1bGVkU3VzcGVuZFRpbWUgPCByZW5k
ZXJEdXJhdGlvbikgeworICAgICAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgICAgICgpID0+
IGNvbnRleHQuc3VzcGVuZChzY2hlZHVsZWRTdXNwZW5kVGltZSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgLnRoZW4oKCkgPT4gb25TdXNwZW5kZWQoc2hvdWxkKSksCisgICAgICAgICAgICAg
ICAgJ1NjaGVkdWxpbmcgYSBuZXcgc3VzcGVuZCBhdCAnICsgc2NoZWR1bGVkU3VzcGVuZFRpbWUg
KworICAgICAgICAgICAgICAgICAgICAnIHNlY29uZChzKScpCisgICAgICAgICAgICAgICAgLm5v
dFRocm93KCk7CisgICAgICAgICAgfQorCisgICAgICAgICAgLy8gU2NoZWR1bGluZyBhIHN1c3Bl
bmQgZXhhY3RseSBhdCB0aGUgcmVuZGVyIGR1cmF0aW9uIHNob3VsZCBiZQorICAgICAgICAgIC8v
IHJlamVjdGVkLgorICAgICAgICAgIGlmIChzY2hlZHVsZWRTdXNwZW5kVGltZSA9PT0gcmVuZGVy
RHVyYXRpb24pIHsKKyAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAgICBjb250ZXh0
LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpLAorICAgICAgICAgICAgICAgICdTY2hlZHVs
aW5nIGF0ICcgKyByZW5kZXJEdXJhdGlvbiArICcgc2Vjb25kcycpCisgICAgICAgICAgICAgICAg
LmJlUmVqZWN0ZWQoKTsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBjb250ZXh0LnJlc3VtZSgp
OworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIGF1ZGl0LmRlZmluZSgKKyAgICAgICAgICB7
CisgICAgICAgICAgICBsYWJlbDogJ3Rlc3QnLAorICAgICAgICAgICAgZGVzY3JpcHRpb246ICdQ
cm9taXNlIHJlc29sdXRpb24gb2YgcmVzdW1lKCkgYW5kIHN1c3BlbmQoKScKKyAgICAgICAgICB9
LAorICAgICAgICAgICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBu
ZXcgT2ZmbGluZUF1ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICog
cmVuZGVyRHVyYXRpb24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICAvLyBTY2hlZHVsZSB0
aGUgZmlyc3Qgc3VzcGVuc2lvbi4KKyAgICAgICAgICAgIHNob3VsZCgKKyAgICAgICAgICAgICAg
ICAoKSA9PiBjb250ZXh0LnN1c3BlbmQoc2NoZWR1bGVkU3VzcGVuZFRpbWUpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IG9uU3VzcGVuZGVkKHNob3VsZCkpLAorICAgICAg
ICAgICAgICAgICdTY2hlZHVsaW5nIGEgbmV3IHN1c3BlbmQgYXQgJyArIHNjaGVkdWxlZFN1c3Bl
bmRUaW1lICsKKyAgICAgICAgICAgICAgICAgICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAg
ICAgIC5ub3RUaHJvdygpOworCisgICAgICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkK
KyAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgIHNo
b3VsZChjb250ZXh0LnN0YXRlLCAnUHJvbWlzZSBjb250ZXh0LnN0YXRlJykKKyAgICAgICAgICAg
ICAgICAgICAgICAuYmVFcXVhbFRvKCdjbG9zZWQnKTsKKyAgICAgICAgICAgICAgICB9KQorICAg
ICAgICAgICAgICAgIC50aGVuKCgpID0+IHRhc2suZG9uZSgpKTsKKyAgICAgICAgICB9KTsKKwor
ICAgICAgYXVkaXQucnVuKCk7CisgICAgPC9zY3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3VzcGVu
ZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2Zm
bGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYmVjYWM3M2Y1ZjJiMTkxN2UxZmVhOGJhYWZlMWQ5MzQ3ZmNkNWRiNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL29mZmxpbmVhdWRpb2NvbnRleHQtc3Vz
cGVuZC1yZXN1bWUtc2VxdWVuY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjIgQEAKKworUEFT
UyAjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuIAorUEFTUyBFeGVjdXRpbmcgInRlc3QiIAor
UEFTUyBBdWRpdCByZXBvcnQgCitQQVNTID4gW3Rlc3RdIHJlc3VtZSgpIGFuZCBzdXNwZW5kKCkg
d2l0aCB0aW1lZCBzZXF1ZW5jZSAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzAgYXQgMC4y
NSBzZWNvbmQocykgZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxp
bmcgc3VzcGVuZCAjMSBhdCAwLjc1IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlv
bi4gCitQQVNTICAgU2NoZWR1bGluZyBzdXNwZW5kICMyIGF0IDEgc2Vjb25kKHMpIGRpZCBub3Qg
dGhyb3cgYW4gZXhjZXB0aW9uLiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzMgYXQgMC41
IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgU2NoZWR1bGlu
ZyBzdXNwZW5kICM0IGF0IDEuMjUgc2Vjb25kKHMpIGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
LiAKK1BBU1MgICBTY2hlZHVsaW5nIHN1c3BlbmQgIzUgYXQgMCBzZWNvbmQocykgZGlkIG5vdCB0
aHJvdyBhbiBleGNlcHRpb24uIAorUEFTUyAgIFNjaGVkdWxpbmcgc3VzcGVuZCAjNiBhdCAxLjc1
IHNlY29uZChzKSBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4gCitQQVNTICAgVGhlIHJlc29s
dXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjNSBpcyAwIGF0IDAuMDAgc2Vjb25kKHMpIGlzIGVxdWFs
IHRvIDAuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9mIHN1c3BlbmQgIzAgaXMgMSBh
dCAwLjI1IHNlY29uZChzKSBpcyBlcXVhbCB0byAxLiAKK1BBU1MgICBUaGUgcmVzb2x1dGlvbiBv
cmRlciBvZiBzdXNwZW5kICMzIGlzIDIgYXQgMC41MCBzZWNvbmQocykgaXMgZXF1YWwgdG8gMi4g
CitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVuZCAjMSBpcyAzIGF0IDAuNzUg
c2Vjb25kKHMpIGlzIGVxdWFsIHRvIDMuIAorUEFTUyAgIFRoZSByZXNvbHV0aW9uIG9yZGVyIG9m
IHN1c3BlbmQgIzIgaXMgNCBhdCAxLjAwIHNlY29uZChzKSBpcyBlcXVhbCB0byA0LiAKK1BBU1Mg
ICBUaGUgcmVzb2x1dGlvbiBvcmRlciBvZiBzdXNwZW5kICM0IGlzIDUgYXQgMS4yNSBzZWNvbmQo
cykgaXMgZXF1YWwgdG8gNS4gCitQQVNTICAgVGhlIHJlc29sdXRpb24gb3JkZXIgb2Ygc3VzcGVu
ZCAjNiBpcyA2IGF0IDEuNzUgc2Vjb25kKHMpIGlzIGVxdWFsIHRvIDYuIAorUEFTUyA8IFt0ZXN0
XSBBbGwgYXNzZXJ0aW9ucyBwYXNzZWQuICh0b3RhbCAxNCBhc3NlcnRpb25zKSAKK1BBU1MgIyBB
VURJVCBUQVNLIFJVTk5FUiBGSU5JU0hFRDogMSB0YXNrcyByYW4gc3VjY2Vzc2Z1bGx5LiAKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNw
ZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vb2ZmbGluZWF1
ZGlvY29udGV4dC1zdXNwZW5kLXJlc3VtZS1zZXF1ZW5jZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFlOWIz
NWIzNDQ1ODY5Y2E0NGI2NDhiNjc1YWZmMGE5N2M4NWFlMTQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy93ZWJhdWRpby9vZmZsaW5lYXVkaW9jb250ZXh0LXN1c3BlbmQtcmVzdW1lLXNl
cXVlbmNlLmh0bWwKQEAgLTAsMCArMSw5MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPgorICAgICAgb2ZmbGluZWF1ZGlvY29udGV4dC1zdXNwZW5kLXJl
c3VtZS1zZXF1ZW5jZS5odG1sCisgICAgPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvYXVkaXQtdXRpbC5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9hdWRpdC5qcyI+PC9zY3JpcHQ+
CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHNjcmlwdCBpZD0ibGF5b3V0LXRlc3QtY29kZSI+
CisgICAgICBsZXQgYXVkaXQgPSBBdWRpdC5jcmVhdGVUYXNrUnVubmVyKCk7CisgICAgICBsZXQg
Y29udGV4dDsKKworICAgICAgLy8gVGhlIHNhbXBsZSByYXRlIGlzIG11bHRpcGxlIG9mIHRoZSBy
ZW5kZXJpbmcgcXVhbnR1bSwgc28gc3VzcGVuc2lvbgorICAgICAgLy8gdGltZXMgZmFsbCBpbiB0
byB0aGUgcmVuZGVyIHF1YW50dW0gYm91bmRhcnkuCisgICAgICBsZXQgcmVuZGVyUXVhbnR1bSA9
IDEyODsKKworICAgICAgbGV0IHNhbXBsZVJhdGUgPSByZW5kZXJRdWFudHVtICogMTAwOworICAg
ICAgbGV0IHJlbmRlckR1cmF0aW9uID0gMjsKKworICAgICAgLy8gVGhlc2UgbnVtYmVycyBhcmUg
aW4gYW4gYXJiaXRyYXJ5IG9yZGVyLCBidXQgbm90IHJhbmRvbWx5IGdlbmVyYXRlZCBpbgorICAg
ICAgLy8gcnVudGltZSB0byBhdm9pZCBtb3ZpbmcgcGllY2VzLiBIb3dldmVyLCBpdCBpcyBzYWZl
IHRvIGFycmFuZ2UgdGhlbQorICAgICAgLy8gaW4gYSByYW5kb20gb3JkZXIgaW4gcnVudGltZS4K
KyAgICAgIC8vCisgICAgICAvLyBBbHNvIHRoZXNlIG51bWJlcnMgYXJlIG11bHRpcGxlIG9mIDAu
MjUsIHNvIHRoZXkgYXJlIHN1cHBvc2VkIHRvIGZhbGwKKyAgICAgIC8vIGluIHRoZSByZW5kZXIg
cXVhbnR1bSBib3VuZGFyeSBmb3IgZWFzaWVyIGFuZCBtb3JlIGludHVpdGl2ZQorICAgICAgLy8g
dmVyaWZpY2F0aW9uLgorICAgICAgbGV0IHN1c3BlbmRUaW1lcyA9IFswLjI1LCAwLjc1LCAxLjAs
IDAuNSwgMS4yNSwgMC4wLCAxLjc1XTsKKworICAgICAgLy8gU29ydGVkIGFzY2VuZGluZyBzdXNw
ZW5kIHRpbWUgaXMgb3VyIGV4cGVjdGVkIHJlc3VsdC4KKyAgICAgIGxldCBleHBlY3RlZFN1c3Bl
bmRUaW1lcyA9IHN1c3BlbmRUaW1lcy5zbGljZSgwKS5zb3J0KGZ1bmN0aW9uKGEsIGIpIHsKKyAg
ICAgICAgcmV0dXJuIGEgLSBiOworICAgICAgfSk7CisKKyAgICAgIGxldCBhY3R1YWxTdXNwZW5k
VGltZXMgPSBbXTsKKworICAgICAgYXVkaXQuZGVmaW5lKAorICAgICAgICAgIHsKKyAgICAgICAg
ICAgIGxhYmVsOiAndGVzdCcsCisgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ3Jlc3VtZSgpIGFu
ZCBzdXNwZW5kKCkgd2l0aCB0aW1lZCBzZXF1ZW5jZScKKyAgICAgICAgICB9LAorICAgICAgICAg
ICh0YXNrLCBzaG91bGQpID0+IHsKKyAgICAgICAgICAgIGNvbnRleHQgPSBuZXcgT2ZmbGluZUF1
ZGlvQ29udGV4dCgKKyAgICAgICAgICAgICAgICAxLCBzYW1wbGVSYXRlICogcmVuZGVyRHVyYXRp
b24sIHNhbXBsZVJhdGUpOworCisgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN1c3Bl
bmRUaW1lcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgICAvLyBTY2hlZHVsZSBzdXNwZW5k
cyBpbiBhIHJhbmRvbSB0aW1lIG9yZGVyLCBidXQgdGhlIGFjdHVhbAorICAgICAgICAgICAgICAv
LyBzdXNwZW5kIG11c3QgaGFwcGVuIGluIGFzY2VuZGluZyB0aW1lIG9yZGVyLgorICAgICAgICAg
ICAgICBzY2hlZHVsZVN1c3BlbmQoaSwgc3VzcGVuZFRpbWVzW2ldLCBzaG91bGQpOworICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVyaW5nKCkKKyAgICAgICAg
ICAgICAgICAudGhlbihidWZmZXIgPT4gdmVyaWZ5UmVzdWx0KHNob3VsZCkpCisgICAgICAgICAg
ICAgICAgLnRoZW4oKCkgPT4gdGFzay5kb25lKCkpOworCisgICAgICAgICAgfSk7CisKKyAgICAg
IGF1ZGl0LnJ1bigpOworCisgICAgICBmdW5jdGlvbiBzY2hlZHVsZVN1c3BlbmQoaW5kZXgsIHN1
c3BlbmRUaW1lLCBzaG91bGQpIHsKKyAgICAgICAgc2hvdWxkKAorICAgICAgICAgICAgKCkgPT4g
Y29udGV4dC5zdXNwZW5kKHN1c3BlbmRUaW1lKS50aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAg
YWN0dWFsU3VzcGVuZFRpbWVzLnB1c2goc3VzcGVuZFRpbWUpOworICAgICAgICAgICAgICBjb250
ZXh0LnJlc3VtZSgpOworICAgICAgICAgICAgfSksCisgICAgICAgICAgICAnU2NoZWR1bGluZyBz
dXNwZW5kICMnICsgaW5kZXggKyAnIGF0ICcgKyBzdXNwZW5kVGltZSArCisgICAgICAgICAgICAg
ICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAgLm5vdFRocm93KCk7CisgICAgICB9CisKKyAg
ICAgIGZ1bmN0aW9uIHZlcmlmeVJlc3VsdChzaG91bGQpIHsKKyAgICAgICAgZm9yIChsZXQgaSA9
IDA7IGkgPCBhY3R1YWxTdXNwZW5kVGltZXMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICBsZXQg
c2NoZWR1bGVkT3JkZXIgPSBzdXNwZW5kVGltZXMuaW5kZXhPZihhY3R1YWxTdXNwZW5kVGltZXNb
aV0pOworICAgICAgICAgIGxldCBleHBlY3RlZE9yZGVyID0KKyAgICAgICAgICAgICAgZXhwZWN0
ZWRTdXNwZW5kVGltZXMuaW5kZXhPZihhY3R1YWxTdXNwZW5kVGltZXNbaV0pOworCisgICAgICAg
ICAgc2hvdWxkKAorICAgICAgICAgICAgICBpLAorICAgICAgICAgICAgICAnVGhlIHJlc29sdXRp
b24gb3JkZXIgb2Ygc3VzcGVuZCAjJyArIHNjaGVkdWxlZE9yZGVyICsgJyBpcyAnICsKKyAgICAg
ICAgICAgICAgICAgIGkgKyAnIGF0ICcgKyBzdXNwZW5kVGltZXNbc2NoZWR1bGVkT3JkZXJdLnRv
Rml4ZWQoMikgKworICAgICAgICAgICAgICAgICAgJyBzZWNvbmQocyknKQorICAgICAgICAgICAg
ICAuYmVFcXVhbFRvKGV4cGVjdGVkT3JkZXIpOworICAgICAgICB9CisgICAgICB9CisgICAgPC9z
Y3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL3Jlc291cmNlcy9hdWRpdC11dGlsLmpzIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3Vy
Y2VzL2F1ZGl0LXV0aWwuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDIxM2ZkYTUwOWJmYjczMDQ0ZjFjNzdlMTkx
OWY1OGM5NTIwYTU0ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jl
c291cmNlcy9hdWRpdC11dGlsLmpzCkBAIC0wLDAgKzEsMTk1IEBACisvLyBDb3B5cmlnaHQgMjAx
NiBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0
aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBj
YW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKworLyoqCisgKiBAZmlsZU92
ZXJ2aWV3ICBUaGlzIGZpbGUgaW5jbHVkZXMgbGVnYWN5IHV0aWxpdHkgZnVuY3Rpb25zIGZvciB0
aGUgbGF5b3V0CisgKiAgICAgICAgICAgICAgICB0ZXN0LgorICovCisKKy8vIEhvdyBtYW55IGZy
YW1lcyBpbiBhIFdlYkF1ZGlvIHJlbmRlciBxdWFudHVtLgorbGV0IFJFTkRFUl9RVUFOVFVNX0ZS
QU1FUyA9IDEyODsKKworLy8gQ29tcGFyZSB0d28gYXJyYXlzIChjb21tb25seSBleHRyYWN0ZWQg
ZnJvbSBidWZmZXIuZ2V0Q2hhbm5lbERhdGEoKSkgd2l0aAorLy8gY29uc3RyYWludHM6CisvLyAg
IG9wdGlvbnMudGhyZXNob2xkU05SOiBNaW5pbXVtIGFsbG93ZWQgU05SIGJldHdlZW4gdGhlIGFj
dHVhbCBhbmQgZXhwZWN0ZWQKKy8vICAgICBzaWduYWwuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIDEw
MDAwLgorLy8gICBvcHRpb25zLnRocmVzaG9sZERpZmZVTFA6IE1heGltdW0gYWxsb3dlZCBkaWZm
ZXJlbmNlIGJldHdlZW4gdGhlIGFjdHVhbAorLy8gICAgIGFuZCBleHBlY3RlZCBzaWduYWwgaW4g
VUxQKFVuaXQgaW4gdGhlIGxhc3QgcGxhY2UpLiBUaGUgZGVmYXVsdCBpcyAwLgorLy8gICBvcHRp
b25zLnRocmVzaG9sZERpZmZDb3VudDogTWF4aW11bSBhbGxvd2VkIG51bWJlciBvZiBzYW1wbGUg
ZGlmZmVyZW5jZXMKKy8vICAgICB3aGljaCBleGNlZWRzIHRoZSB0aHJlc2hvbGQuIFRoZSBkZWZh
dWx0IGlzIDAuCisvLyAgIG9wdGlvbnMuYml0RGVwdGg6IFRoZSBleHBlY3RlZCByZXN1bHQgaXMg
YXNzdW1lZCB0byBjb21lIGZyb20gYW4gYXVkaW8KKy8vICAgICBmaWxlIHdpdGggdGhpcyBudW1i
ZXIgb2YgYml0cyBvZiBwcmVjaXNpb24uIFRoZSBkZWZhdWx0IGlzIDE2LgorZnVuY3Rpb24gY29t
cGFyZUJ1ZmZlcnNXaXRoQ29uc3RyYWludHMoc2hvdWxkLCBhY3R1YWwsIGV4cGVjdGVkLCBvcHRp
b25zKSB7CisgIGlmICghb3B0aW9ucykKKyAgICBvcHRpb25zID0ge307CisKKyAgLy8gT25seSBw
cmludCBvdXQgdGhlIG1lc3NhZ2UgaWYgdGhlIGxlbmd0aHMgYXJlIGRpZmZlcmVudDsgdGhlCisg
IC8vIGV4cGVjdGF0aW9uIGlzIHRoYXQgdGhleSBhcmUgdGhlIHNhbWUsIHNvIGRvbid0IGNsdXR0
ZXIgdXAgdGhlCisgIC8vIG91dHB1dC4KKyAgaWYgKGFjdHVhbC5sZW5ndGggIT09IGV4cGVjdGVk
Lmxlbmd0aCkgeworICAgIHNob3VsZCgKKyAgICAgICAgYWN0dWFsLmxlbmd0aCA9PT0gZXhwZWN0
ZWQubGVuZ3RoLAorICAgICAgICAnTGVuZ3RoIG9mIGFjdHVhbCBhbmQgZXhwZWN0ZWQgYnVmZmVy
cyBzaG91bGQgbWF0Y2gnKQorICAgICAgICAuYmVUcnVlKCk7CisgIH0KKworICBsZXQgbWF4RXJy
b3IgPSAtMTsKKyAgbGV0IGRpZmZDb3VudCA9IDA7CisgIGxldCBlcnJvclBvc2l0aW9uID0gLTE7
CisgIGxldCB0aHJlc2hvbGRTTlIgPSAob3B0aW9ucy50aHJlc2hvbGRTTlIgfHwgMTAwMDApOwor
CisgIGxldCB0aHJlc2hvbGREaWZmVUxQID0gKG9wdGlvbnMudGhyZXNob2xkRGlmZlVMUCB8fCAw
KTsKKyAgbGV0IHRocmVzaG9sZERpZmZDb3VudCA9IChvcHRpb25zLnRocmVzaG9sZERpZmZDb3Vu
dCB8fCAwKTsKKworICAvLyBCeSBkZWZhdWx0LCB0aGUgYml0IGRlcHRoIGlzIDE2LgorICBsZXQg
Yml0RGVwdGggPSAob3B0aW9ucy5iaXREZXB0aCB8fCAxNik7CisgIGxldCBzY2FsZUZhY3RvciA9
IE1hdGgucG93KDIsIGJpdERlcHRoIC0gMSk7CisKKyAgbGV0IG5vaXNlUG93ZXIgPSAwLCBzaWdu
YWxQb3dlciA9IDA7CisKKyAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY3R1YWwubGVuZ3RoOyBpKysp
IHsKKyAgICBsZXQgZGlmZiA9IGFjdHVhbFtpXSAtIGV4cGVjdGVkW2ldOworICAgIG5vaXNlUG93
ZXIgKz0gZGlmZiAqIGRpZmY7CisgICAgc2lnbmFsUG93ZXIgKz0gZXhwZWN0ZWRbaV0gKiBleHBl
Y3RlZFtpXTsKKworICAgIGlmIChNYXRoLmFicyhkaWZmKSA+IG1heEVycm9yKSB7CisgICAgICBt
YXhFcnJvciA9IE1hdGguYWJzKGRpZmYpOworICAgICAgZXJyb3JQb3NpdGlvbiA9IGk7CisgICAg
fQorCisgICAgLy8gVGhlIHJlZmVyZW5jZSBmaWxlIGlzIGEgMTYtYml0IFdBViBmaWxlLCBzbyB3
ZSB3aWxsIGFsbW9zdCBuZXZlciBnZXQKKyAgICAvLyBhbiBleGFjdCBtYXRjaCBiZXR3ZWVuIGl0
IGFuZCB0aGUgYWN0dWFsIGZsb2F0aW5nLXBvaW50IHJlc3VsdC4KKyAgICBpZiAoTWF0aC5hYnMo
ZGlmZikgPiBzY2FsZUZhY3RvcikKKyAgICAgIGRpZmZDb3VudCsrOworICB9CisKKyAgbGV0IHNu
ciA9IDEwICogTWF0aC5sb2cxMChzaWduYWxQb3dlciAvIG5vaXNlUG93ZXIpOworICBsZXQgbWF4
RXJyb3JVTFAgPSBtYXhFcnJvciAqIHNjYWxlRmFjdG9yOworCisgIHNob3VsZChzbnIsICdTTlIn
KS5iZUdyZWF0ZXJUaGFuT3JFcXVhbFRvKHRocmVzaG9sZFNOUik7CisKKyAgc2hvdWxkKAorICAg
ICAgbWF4RXJyb3JVTFAsCisgICAgICBvcHRpb25zLnByZWZpeCArICc6IE1heGltdW0gZGlmZmVy
ZW5jZSAoaW4gdWxwIHVuaXRzICgnICsgYml0RGVwdGggKworICAgICAgICAgICctYml0cykpJykK
KyAgICAgIC5iZUxlc3NUaGFuT3JFcXVhbFRvKHRocmVzaG9sZERpZmZVTFApOworCisgIHNob3Vs
ZChkaWZmQ291bnQsIG9wdGlvbnMucHJlZml4ICsgJzogTnVtYmVyIG9mIGRpZmZlcmVuY2VzIGJl
dHdlZW4gcmVzdWx0cycpCisgICAgICAuYmVMZXNzVGhhbk9yRXF1YWxUbyh0aHJlc2hvbGREaWZm
Q291bnQpOworfQorCisvLyBDcmVhdGUgYW4gaW1wdWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5ndGgg
c2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0aW9uIGNyZWF0ZUltcHVsc2VCdWZmZXIoY29udGV4dCwg
c2FtcGxlRnJhbWVMZW5ndGgpIHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQu
Y3JlYXRlQnVmZmVyKDEsIHNhbXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0LnNhbXBsZVJhdGUpOwor
ICBsZXQgbiA9IGF1ZGlvQnVmZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFMID0gYXVkaW9CdWZmZXIu
Z2V0Q2hhbm5lbERhdGEoMCk7CisKKyAgZm9yIChsZXQgayA9IDA7IGsgPCBuOyArK2spIHsKKyAg
ICBkYXRhTFtrXSA9IDA7CisgIH0KKyAgZGF0YUxbMF0gPSAxOworCisgIHJldHVybiBhdWRpb0J1
ZmZlcjsKK30KKworLy8gQ3JlYXRlIGEgYnVmZmVyIG9mIHRoZSBnaXZlbiBsZW5ndGggd2l0aCBh
IGxpbmVhciByYW1wIGhhdmluZyB2YWx1ZXMgMCA8PSB4IDwKKy8vIDEuCitmdW5jdGlvbiBjcmVh
dGVMaW5lYXJSYW1wQnVmZmVyKGNvbnRleHQsIHNhbXBsZUZyYW1lTGVuZ3RoKSB7CisgIGxldCBh
dWRpb0J1ZmZlciA9CisgICAgICBjb250ZXh0LmNyZWF0ZUJ1ZmZlcigxLCBzYW1wbGVGcmFtZUxl
bmd0aCwgY29udGV4dC5zYW1wbGVSYXRlKTsKKyAgbGV0IG4gPSBhdWRpb0J1ZmZlci5sZW5ndGg7
CisgIGxldCBkYXRhTCA9IGF1ZGlvQnVmZmVyLmdldENoYW5uZWxEYXRhKDApOworCisgIGZvciAo
bGV0IGkgPSAwOyBpIDwgbjsgKytpKQorICAgIGRhdGFMW2ldID0gaSAvIG47CisKKyAgcmV0dXJu
IGF1ZGlvQnVmZmVyOworfQorCisvLyBDcmVhdGUgYW4gQXVkaW9CdWZmZXIgb2YgbGVuZ3RoIHxz
YW1wbGVGcmFtZUxlbmd0aHwgaGF2aW5nIGEgY29uc3RhbnQgdmFsdWUKKy8vIHxjb25zdGFudFZh
bHVlfC4gSWYgfGNvbnN0YW50VmFsdWV8IGlzIGEgbnVtYmVyLCB0aGUgYnVmZmVyIGhhcyBvbmUg
Y2hhbm5lbAorLy8gZmlsbGVkIHdpdGggdGhhdCB2YWx1ZS4gSWYgfGNvbnN0YW50VmFsdWV8IGlz
IGFuIGFycmF5LCB0aGUgYnVmZmVyIGlzIGNyZWF0ZWQKKy8vIHdpdCBhIG51bWJlciBvZiBjaGFu
bmVscyBlcXVhbCB0byB0aGUgbGVuZ3RoIG9mIHRoZSBhcnJheSwgYW5kIGNoYW5uZWwgayBpcwor
Ly8gZmlsbGVkIHdpdGggdGhlIGsndGggZWxlbWVudCBvZiB0aGUgfGNvbnN0YW50VmFsdWV8IGFy
cmF5LgorZnVuY3Rpb24gY3JlYXRlQ29uc3RhbnRCdWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVM
ZW5ndGgsIGNvbnN0YW50VmFsdWUpIHsKKyAgbGV0IGNoYW5uZWxzOworICBsZXQgdmFsdWVzOwor
CisgIGlmICh0eXBlb2YgY29uc3RhbnRWYWx1ZSA9PT0gJ251bWJlcicpIHsKKyAgICBjaGFubmVs
cyA9IDE7CisgICAgdmFsdWVzID0gW2NvbnN0YW50VmFsdWVdOworICB9IGVsc2UgeworICAgIGNo
YW5uZWxzID0gY29uc3RhbnRWYWx1ZS5sZW5ndGg7CisgICAgdmFsdWVzID0gY29uc3RhbnRWYWx1
ZTsKKyAgfQorCisgIGxldCBhdWRpb0J1ZmZlciA9CisgICAgICBjb250ZXh0LmNyZWF0ZUJ1ZmZl
cihjaGFubmVscywgc2FtcGxlRnJhbWVMZW5ndGgsIGNvbnRleHQuc2FtcGxlUmF0ZSk7CisgIGxl
dCBuID0gYXVkaW9CdWZmZXIubGVuZ3RoOworCisgIGZvciAobGV0IGMgPSAwOyBjIDwgY2hhbm5l
bHM7ICsrYykgeworICAgIGxldCBkYXRhID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoYyk7
CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyArK2kpCisgICAgICBkYXRhW2ldID0gdmFsdWVz
W2NdOworICB9CisKKyAgcmV0dXJuIGF1ZGlvQnVmZmVyOworfQorCisvLyBDcmVhdGUgYSBzdGVy
ZW8gaW1wdWxzZSBpbiBhIGJ1ZmZlciBvZiBsZW5ndGggc2FtcGxlRnJhbWVMZW5ndGgKK2Z1bmN0
aW9uIGNyZWF0ZVN0ZXJlb0ltcHVsc2VCdWZmZXIoY29udGV4dCwgc2FtcGxlRnJhbWVMZW5ndGgp
IHsKKyAgbGV0IGF1ZGlvQnVmZmVyID0KKyAgICAgIGNvbnRleHQuY3JlYXRlQnVmZmVyKDIsIHNh
bXBsZUZyYW1lTGVuZ3RoLCBjb250ZXh0LnNhbXBsZVJhdGUpOworICBsZXQgbiA9IGF1ZGlvQnVm
ZmVyLmxlbmd0aDsKKyAgbGV0IGRhdGFMID0gYXVkaW9CdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCk7
CisgIGxldCBkYXRhUiA9IGF1ZGlvQnVmZmVyLmdldENoYW5uZWxEYXRhKDEpOworCisgIGZvciAo
bGV0IGsgPSAwOyBrIDwgbjsgKytrKSB7CisgICAgZGF0YUxba10gPSAwOworICAgIGRhdGFSW2td
ID0gMDsKKyAgfQorICBkYXRhTFswXSA9IDE7CisgIGRhdGFSWzBdID0gMTsKKworICByZXR1cm4g
YXVkaW9CdWZmZXI7Cit9CisKKy8vIENvbnZlcnQgdGltZSAoaW4gc2Vjb25kcykgdG8gc2FtcGxl
IGZyYW1lcy4KK2Z1bmN0aW9uIHRpbWVUb1NhbXBsZUZyYW1lKHRpbWUsIHNhbXBsZVJhdGUpIHsK
KyAgcmV0dXJuIE1hdGguZmxvb3IoMC41ICsgdGltZSAqIHNhbXBsZVJhdGUpOworfQorCisvLyBD
b21wdXRlIHRoZSBudW1iZXIgb2Ygc2FtcGxlIGZyYW1lcyBjb25zdW1lZCBieSBub3RlR3JhaW5P
biB3aXRoCisvLyB0aGUgc3BlY2lmaWVkIHxncmFpbk9mZnNldHwsIHxkdXJhdGlvbnwsIGFuZCB8
c2FtcGxlUmF0ZXwuCitmdW5jdGlvbiBncmFpbkxlbmd0aEluU2FtcGxlRnJhbWVzKGdyYWluT2Zm
c2V0LCBkdXJhdGlvbiwgc2FtcGxlUmF0ZSkgeworICBsZXQgc3RhcnRGcmFtZSA9IHRpbWVUb1Nh
bXBsZUZyYW1lKGdyYWluT2Zmc2V0LCBzYW1wbGVSYXRlKTsKKyAgbGV0IGVuZEZyYW1lID0gdGlt
ZVRvU2FtcGxlRnJhbWUoZ3JhaW5PZmZzZXQgKyBkdXJhdGlvbiwgc2FtcGxlUmF0ZSk7CisKKyAg
cmV0dXJuIGVuZEZyYW1lIC0gc3RhcnRGcmFtZTsKK30KKworLy8gVHJ1ZSBpZiB0aGUgbnVtYmVy
IGlzIG5vdCBhbiBpbmZpbml0eSBvciBOYU4KK2Z1bmN0aW9uIGlzVmFsaWROdW1iZXIoeCkgewor
ICByZXR1cm4gIWlzTmFOKHgpICYmICh4ICE9IEluZmluaXR5KSAmJiAoeCAhPSAtSW5maW5pdHkp
OworfQorCisvLyBDb21wdXRlIHRoZSAobGluZWFyKSBzaWduYWwtdG8tbm9pc2UgcmF0aW8gYmV0
d2VlbiB8YWN0dWFsfCBhbmQKKy8vIHxleHBlY3RlZHwuICBUaGUgcmVzdWx0IGlzIE5PVCBpbiBk
QiEgIElmIHRoZSB8YWN0dWFsfCBhbmQKKy8vIHxleHBlY3RlZHwgaGF2ZSBkaWZmZXJlbnQgbGVu
Z3RocywgdGhlIHNob3J0ZXIgbGVuZ3RoIGlzIHVzZWQuCitmdW5jdGlvbiBjb21wdXRlU05SKGFj
dHVhbCwgZXhwZWN0ZWQpIHsKKyAgbGV0IHNpZ25hbFBvd2VyID0gMDsKKyAgbGV0IG5vaXNlUG93
ZXIgPSAwOworCisgIGxldCBsZW5ndGggPSBNYXRoLm1pbihhY3R1YWwubGVuZ3RoLCBleHBlY3Rl
ZC5sZW5ndGgpOworCisgIGZvciAobGV0IGsgPSAwOyBrIDwgbGVuZ3RoOyArK2spIHsKKyAgICBs
ZXQgZGlmZiA9IGFjdHVhbFtrXSAtIGV4cGVjdGVkW2tdOworICAgIHNpZ25hbFBvd2VyICs9IGV4
cGVjdGVkW2tdICogZXhwZWN0ZWRba107CisgICAgbm9pc2VQb3dlciArPSBkaWZmICogZGlmZjsK
KyAgfQorCisgIHJldHVybiBzaWduYWxQb3dlciAvIG5vaXNlUG93ZXI7Cit9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanMgYi9MYXlvdXRUZXN0cy93
ZWJhdWRpby9yZXNvdXJjZXMvYXVkaXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk2YjlkNWJhZGI1YzIzOWVl
YzVlNzQ2NDZiNGJmMjJhYTU4MzVmOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dl
YmF1ZGlvL3Jlc291cmNlcy9hdWRpdC5qcwpAQCAtMCwwICsxLDE0NDIgQEAKKy8vIENvcHlyaWdo
dCAyMDE2IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNl
IG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0
aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gU2VlIGh0dHBz
Oi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L2lzc3Vlcy8xMjc4MSBmb3IgaW5m
b3JtYXRpb24gb24KKy8vIHRoZSBwdXJwb3NlIG9mIGF1ZGl0LmpzLCBhbmQgd2h5IHRlc3RoYXJu
ZXNzLmpzIGRvZXMgbm90IHN1ZmZpY2UuCisKKy8qKgorICogQGZpbGVPdmVydmlldyAgV2ViQXVk
aW8gbGF5b3V0IHRlc3QgdXRpbGl0eSBsaWJyYXJ5LiBCdWlsdCBhcm91bmQgVzNDJ3MKKyAqICAg
ICAgICAgICAgICAgIHRlc3RoYXJuZXNzLmpzLiBJbmNsdWRlcyBhc3luY2hyb25vdXMgdGVzdCB0
YXNrIG1hbmFnZXIsCisgKiAgICAgICAgICAgICAgICBhc3NlcnRpb24gdXRpbGl0aWVzLgorICog
QGRlcGVuZGVuY3kgICAgdGVzdGhhcm5lc3MuanMKKyAqLworCisKKyhmdW5jdGlvbigpIHsKKwor
ICAndXNlIHN0cmljdCc7CisKKyAgLy8gU2VsZWN0ZWQgbWV0aG9kcyBmcm9tIHRlc3RoYXJuZXNz
LmpzLgorICBsZXQgdGVzdGhhcm5lc3NQcm9wZXJ0aWVzID0gWworICAgICd0ZXN0JywgJ2FzeW5j
X3Rlc3QnLCAncHJvbWlzZV90ZXN0JywgJ3Byb21pc2VfcmVqZWN0c19qcycsICdnZW5lcmF0ZV90
ZXN0cycsCisgICAgJ3NldHVwJywgJ2RvbmUnLCAnYXNzZXJ0X3RydWUnLCAnYXNzZXJ0X2ZhbHNl
JworICBdOworCisgIC8vIENoZWNrIGlmIHRlc3RoYXJuZXNzLmpzIGlzIHByb3Blcmx5IGxvYWRl
ZC4gVGhyb3cgb3RoZXJ3aXNlLgorICBmb3IgKGxldCBuYW1lIGluIHRlc3RoYXJuZXNzUHJvcGVy
dGllcykgeworICAgIGlmICghc2VsZi5oYXNPd25Qcm9wZXJ0eSh0ZXN0aGFybmVzc1Byb3BlcnRp
ZXNbbmFtZV0pKQorICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcHJvY2VlZC4gdGVzdGhh
cm5lc3MuanMgaXMgbm90IGxvYWRlZC4nKTsKKyAgfQorfSkoKTsKKworCit3aW5kb3cuQXVkaXQg
PSAoZnVuY3Rpb24oKSB7CisKKyAgJ3VzZSBzdHJpY3QnOworCisgIC8vIE5PVEU6IE1vdmluZyB0
aGlzIG1ldGhvZCAob3IgYW55IG90aGVyIGNvZGUgYWJvdmUpIHdpbGwgY2hhbmdlIHRoZSBsb2Nh
dGlvbgorICAvLyBvZiAnQ09OU09MRSBFUlJPUi4uLicgbWVzc2FnZSBpbiB0aGUgZXhwZWN0ZWQg
dGV4dCBmaWxlcy4KKyAgZnVuY3Rpb24gX2xvZ0Vycm9yKG1lc3NhZ2UpIHsKKyAgICBjb25zb2xl
LmVycm9yKCdbYXVkaXQuanNdICcgKyBtZXNzYWdlKTsKKyAgfQorCisgIGZ1bmN0aW9uIF9sb2dQ
YXNzZWQobWVzc2FnZSkgeworICAgIHRlc3QoZnVuY3Rpb24oYXJnKSB7CisgICAgICBhc3NlcnRf
dHJ1ZSh0cnVlKTsKKyAgICB9LCBtZXNzYWdlKTsKKyAgfQorCisgIGZ1bmN0aW9uIF9sb2dGYWls
ZWQobWVzc2FnZSwgZGV0YWlsKSB7CisgICAgdGVzdChmdW5jdGlvbigpIHsKKyAgICAgIGFzc2Vy
dF90cnVlKGZhbHNlLCBkZXRhaWwpOworICAgIH0sIG1lc3NhZ2UpOworICB9CisKKyAgZnVuY3Rp
b24gX3Rocm93RXhjZXB0aW9uKG1lc3NhZ2UpIHsKKyAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2Fn
ZSk7CisgIH0KKworICAvLyBUT0RPKGhvbmdjaGFuKTogcmVtb3ZlIHRoaXMgaGFjayBhZnRlciBj
b25maXJtaW5nIGFsbCB0aGUgdGVzdHMgYXJlCisgIC8vIGZpbmlzaGVkIGNvcnJlY3RseS4gKGNy
YnVnLmNvbS83MDg4MTcpCisgIGNvbnN0IF90ZXN0aGFybmVzc0RvbmUgPSB3aW5kb3cuZG9uZTsK
KyAgd2luZG93LmRvbmUgPSAoKSA9PiB7CisgICAgX3Rocm93RXhjZXB0aW9uKCdEbyBOT1QgY2Fs
bCBkb25lKCkgbWV0aG9kIGZyb20gdGhlIHRlc3QgY29kZS4nKTsKKyAgfTsKKworICAvLyBHZW5l
cmF0ZSBhIGRlc2NyaXB0aXZlIHN0cmluZyBmcm9tIGEgdGFyZ2V0IHZhbHVlIGluIHZhcmlvdXMg
dHlwZXMuCisgIGZ1bmN0aW9uIF9nZW5lcmF0ZURlc2NyaXB0aW9uKHRhcmdldCwgb3B0aW9ucykg
eworICAgIGxldCB0YXJnZXRTdHJpbmc7CisKKyAgICBzd2l0Y2ggKHR5cGVvZiB0YXJnZXQpIHsK
KyAgICAgIGNhc2UgJ29iamVjdCc6CisgICAgICAgIC8vIEhhbmRsZSBBcnJheXMuCisgICAgICAg
IGlmICh0YXJnZXQgaW5zdGFuY2VvZiBBcnJheSB8fCB0YXJnZXQgaW5zdGFuY2VvZiBGbG9hdDMy
QXJyYXkgfHwKKyAgICAgICAgICAgIHRhcmdldCBpbnN0YW5jZW9mIEZsb2F0NjRBcnJheSB8fCB0
YXJnZXQgaW5zdGFuY2VvZiBVaW50OEFycmF5KSB7CisgICAgICAgICAgbGV0IGFycmF5RWxlbWVu
dHMgPSB0YXJnZXQubGVuZ3RoIDwgb3B0aW9ucy5udW1iZXJPZkFycmF5RWxlbWVudHMgPworICAg
ICAgICAgICAgICBTdHJpbmcodGFyZ2V0KSA6CisgICAgICAgICAgICAgIFN0cmluZyh0YXJnZXQu
c2xpY2UoMCwgb3B0aW9ucy5udW1iZXJPZkFycmF5RWxlbWVudHMpKSArICcuLi4nOworICAgICAg
ICAgIHRhcmdldFN0cmluZyA9ICdbJyArIGFycmF5RWxlbWVudHMgKyAnXSc7CisgICAgICAgIH0g
ZWxzZSBpZiAodGFyZ2V0ID09PSBudWxsKSB7CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0gU3Ry
aW5nKHRhcmdldCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFyZ2V0U3RyaW5nID0g
JycgKyBTdHJpbmcodGFyZ2V0KS5zcGxpdCgvW1xzXF1dLylbMV07CisgICAgICAgIH0KKyAgICAg
ICAgYnJlYWs7CisgICAgICBjYXNlICdmdW5jdGlvbic6CisgICAgICAgIGlmIChFcnJvci5pc1By
b3RvdHlwZU9mKHRhcmdldCkpIHsKKyAgICAgICAgICB0YXJnZXRTdHJpbmcgPSAiRWNtYVNjcmlw
dCBlcnJvciAiICsgdGFyZ2V0Lm5hbWU7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFy
Z2V0U3RyaW5nID0gU3RyaW5nKHRhcmdldCk7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7Cisg
ICAgICBkZWZhdWx0OgorICAgICAgICB0YXJnZXRTdHJpbmcgPSBTdHJpbmcodGFyZ2V0KTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIHRhcmdldFN0cmluZzsKKyAgfQorCisg
IC8vIFJldHVybiBhIHN0cmluZyBzdWl0YWJsZSBmb3IgcHJpbnRpbmcgb25lIGZhaWxlZCBlbGVt
ZW50IGluCisgIC8vIHxiZUNsb3NlVG9BcnJheXwuCisgIGZ1bmN0aW9uIF9mb3JtYXRGYWlsdXJl
RW50cnkoaW5kZXgsIGFjdHVhbCwgZXhwZWN0ZWQsIGFic2VyciwgdGhyZXNob2xkKSB7CisgICAg
cmV0dXJuICdcdFsnICsgaW5kZXggKyAnXVx0JyArIGFjdHVhbC50b0V4cG9uZW50aWFsKDE2KSAr
ICdcdCcgKworICAgICAgICBleHBlY3RlZC50b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKyBhYnNl
cnIudG9FeHBvbmVudGlhbCgxNikgKyAnXHQnICsKKyAgICAgICAgKGFic2VyciAvIE1hdGguYWJz
KGV4cGVjdGVkKSkudG9FeHBvbmVudGlhbCgxNikgKyAnXHQnICsKKyAgICAgICAgdGhyZXNob2xk
LnRvRXhwb25lbnRpYWwoMTYpOworICB9CisKKyAgLy8gQ29tcHV0ZSB0aGUgZXJyb3IgdGhyZXNo
b2xkIGNyaXRlcmlvbiBmb3IgfGJlQ2xvc2VUb0FycmF5fAorICBmdW5jdGlvbiBfY2xvc2VUb1Ro
cmVzaG9sZChhYnNlcnIsIHJlbGVyciwgZXhwZWN0ZWQpIHsKKyAgICByZXR1cm4gTWF0aC5tYXgo
YWJzZXJyLCByZWxlcnIgKiBNYXRoLmFicyhleHBlY3RlZCkpOworICB9CisKKyAgLyoqCisgICAq
IEBjbGFzcyBTaG91bGQKKyAgICogQGRlc2NyaXB0aW9uIEFzc2VydGlvbiBzdWJ0YXNrIGZvciB0
aGUgQXVkaXQgdGFzay4KKyAgICogQHBhcmFtIHtUYXNrfSBwYXJlbnRUYXNrICAgICAgICAgICBB
c3NvY2lhdGVkIFRhc2sgb2JqZWN0LgorICAgKiBAcGFyYW0ge0FueX0gYWN0dWFsICAgICAgICAg
ICAgICAgIFRhcmdldCB2YWx1ZSB0byBiZSB0ZXN0ZWQuCisgICAqIEBwYXJhbSB7U3RyaW5nfSBh
Y3R1YWxEZXNjcmlwdGlvbiAgU3RyaW5nIGRlc2NyaXB0aW9uIG9mIHRoZSB0ZXN0IHRhcmdldC4K
KyAgICovCisgIGNsYXNzIFNob3VsZCB7CisgICAgY29uc3RydWN0b3IocGFyZW50VGFzaywgYWN0
dWFsLCBhY3R1YWxEZXNjcmlwdGlvbikgeworICAgICAgdGhpcy5fdGFzayA9IHBhcmVudFRhc2s7
CisKKyAgICAgIHRoaXMuX2FjdHVhbCA9IGFjdHVhbDsKKyAgICAgIHRoaXMuX2FjdHVhbERlc2Ny
aXB0aW9uID0gKGFjdHVhbERlc2NyaXB0aW9uIHx8IG51bGwpOworICAgICAgdGhpcy5fZXhwZWN0
ZWQgPSBudWxsOworICAgICAgdGhpcy5fZXhwZWN0ZWREZXNjcmlwdGlvbiA9IG51bGw7CisKKyAg
ICAgIHRoaXMuX2RldGFpbCA9ICcnOworICAgICAgLy8gSWYgdHJ1ZSBhbmQgdGhlIHRlc3QgZmFp
bGVkLCBwcmludCB0aGUgYWN0dWFsIHZhbHVlIGF0IHRoZQorICAgICAgLy8gZW5kIG9mIHRoZSBt
ZXNzYWdlLgorICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gdHJ1ZTsKKworICAg
ICAgdGhpcy5fcmVzdWx0ID0gbnVsbDsKKworICAgICAgLyoqCisgICAgICAgKiBAcGFyYW0ge051
bWJlcn0gbnVtYmVyT2ZFcnJvcnMgICBOdW1iZXIgb2YgZXJyb3JzIHRvIGJlIHByaW50ZWQuCisg
ICAgICAgKiBAcGFyYW0ge051bWJlcn0gbnVtYmVyT2ZBcnJheUVsZW1lbnRzICBOdW1iZXIgb2Yg
YXJyYXkgZWxlbWVudHMgdG8gYmUKKyAgICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHByaW50ZWQgaW4gdGhlIHRlc3QgbG9nLgorICAgICAgICogQHBhcmFtIHtC
b29sZWFufSB2ZXJib3NlICAgICAgICAgVmVyYm9zZSBvdXRwdXQgZnJvbSB0aGUgYXNzZXJ0aW9u
LgorICAgICAgICovCisgICAgICB0aGlzLl9vcHRpb25zID0geworICAgICAgICBudW1iZXJPZkVy
cm9yczogNCwKKyAgICAgICAgbnVtYmVyT2ZBcnJheUVsZW1lbnRzOiAxNiwKKyAgICAgICAgdmVy
Ym9zZTogZmFsc2UKKyAgICAgIH07CisgICAgfQorCisgICAgX3Byb2Nlc3NBcmd1bWVudHMoYXJn
cykgeworICAgICAgaWYgKGFyZ3MubGVuZ3RoID09PSAwKQorICAgICAgICByZXR1cm47CisKKyAg
ICAgIGlmIChhcmdzLmxlbmd0aCA+IDApCisgICAgICAgIHRoaXMuX2V4cGVjdGVkID0gYXJnc1sw
XTsKKworICAgICAgaWYgKHR5cGVvZiBhcmdzWzFdID09PSAnc3RyaW5nJykgeworICAgICAgICAv
LyBjYXNlIDE6IChleHBlY3RlZCwgZGVzY3JpcHRpb24sIG9wdGlvbnMpCisgICAgICAgIHRoaXMu
X2V4cGVjdGVkRGVzY3JpcHRpb24gPSBhcmdzWzFdOworICAgICAgICBPYmplY3QuYXNzaWduKHRo
aXMuX29wdGlvbnMsIGFyZ3NbMl0pOworICAgICAgfSBlbHNlIGlmICh0eXBlb2YgYXJnc1sxXSA9
PT0gJ29iamVjdCcpIHsKKyAgICAgICAgLy8gY2FzZSAyOiAoZXhwZWN0ZWQsIG9wdGlvbnMpCisg
ICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fb3B0aW9ucywgYXJnc1sxXSk7CisgICAgICB9Cisg
ICAgfQorCisgICAgX2J1aWxkUmVzdWx0VGV4dCgpIHsKKyAgICAgIGlmICh0aGlzLl9yZXN1bHQg
PT09IG51bGwpCisgICAgICAgIF90aHJvd0V4Y2VwdGlvbignSWxsZWdhbCBpbnZvY2F0aW9uOiB0
aGUgYXNzZXJ0aW9uIGlzIG5vdCBmaW5pc2hlZC4nKTsKKworICAgICAgbGV0IGFjdHVhbFN0cmlu
ZyA9IF9nZW5lcmF0ZURlc2NyaXB0aW9uKHRoaXMuX2FjdHVhbCwgdGhpcy5fb3B0aW9ucyk7CisK
KyAgICAgIC8vIFVzZSBnZW5lcmF0ZWQgdGV4dCB3aGVuIHRoZSBkZXNjcmlwdGlvbiBpcyBub3Qg
cHJvdmlkZWQuCisgICAgICBpZiAoIXRoaXMuX2FjdHVhbERlc2NyaXB0aW9uKQorICAgICAgICB0
aGlzLl9hY3R1YWxEZXNjcmlwdGlvbiA9IGFjdHVhbFN0cmluZzsKKworICAgICAgaWYgKCF0aGlz
Ll9leHBlY3RlZERlc2NyaXB0aW9uKSB7CisgICAgICAgIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRp
b24gPQorICAgICAgICAgICAgX2dlbmVyYXRlRGVzY3JpcHRpb24odGhpcy5fZXhwZWN0ZWQsIHRo
aXMuX29wdGlvbnMpOworICAgICAgfQorCisgICAgICAvLyBGb3IgdGhlIGFzc2VydGlvbiB3aXRo
IGEgc2luZ2xlIG9wZXJhbmQuCisgICAgICB0aGlzLl9kZXRhaWwgPQorICAgICAgICAgIHRoaXMu
X2RldGFpbC5yZXBsYWNlKC9cJFx7YWN0dWFsXH0vZywgdGhpcy5fYWN0dWFsRGVzY3JpcHRpb24p
OworCisgICAgICAvLyBJZiB0aGVyZSBpcyBhIHNlY29uZCBvcGVyYW5kIChpLmUuIGV4cGVjdGVk
IHZhbHVlKSwgd2UgaGF2ZSB0byBidWlsZAorICAgICAgLy8gdGhlIHN0cmluZyBmb3IgaXQgYXMg
d2VsbC4KKyAgICAgIHRoaXMuX2RldGFpbCA9CisgICAgICAgICAgdGhpcy5fZGV0YWlsLnJlcGxh
Y2UoL1wkXHtleHBlY3RlZFx9L2csIHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24pOworCisgICAg
ICAvLyBJZiB0aGVyZSBpcyBhbnkgcHJvcGVydHkgaW4gfF9vcHRpb25zfCwgcmVwbGFjZSB0aGUg
cHJvcGVydHkgbmFtZQorICAgICAgLy8gd2l0aCB0aGUgdmFsdWUuCisgICAgICBmb3IgKGxldCBu
YW1lIGluIHRoaXMuX29wdGlvbnMpIHsKKyAgICAgICAgaWYgKG5hbWUgPT09ICdudW1iZXJPZkVy
cm9ycycgfHwgbmFtZSA9PT0gJ251bWJlck9mQXJyYXlFbGVtZW50cycgfHwKKyAgICAgICAgICAg
IG5hbWUgPT09ICd2ZXJib3NlJykgeworICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisK
KyAgICAgICAgLy8gVGhlIFJlZ0V4cCBrZXkgc3RyaW5nIGNvbnRhaW5zIHNwZWNpYWwgY2hhcmFj
dGVyLiBUYWtlIGNhcmUgb2YgaXQuCisgICAgICAgIGxldCByZSA9ICdcJFx7JyArIG5hbWUgKyAn
XH0nOworICAgICAgICByZSA9IHJlLnJlcGxhY2UoLyhbLiorP149IToke30oKXxcW1xdXC9cXF0p
L2csICdcXCQxJyk7CisgICAgICAgIHRoaXMuX2RldGFpbCA9IHRoaXMuX2RldGFpbC5yZXBsYWNl
KAorICAgICAgICAgICAgbmV3IFJlZ0V4cChyZSwgJ2cnKSwgX2dlbmVyYXRlRGVzY3JpcHRpb24o
dGhpcy5fb3B0aW9uc1tuYW1lXSkpOworICAgICAgfQorCisgICAgICAvLyBJZiB0aGUgdGVzdCBm
YWlsZWQsIGFkZCB0aGUgYWN0dWFsIHZhbHVlIGF0IHRoZSBlbmQuCisgICAgICBpZiAodGhpcy5f
cmVzdWx0ID09PSBmYWxzZSAmJiB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPT09IHRydWUp
IHsKKyAgICAgICAgdGhpcy5fZGV0YWlsICs9ICcgR290ICcgKyBhY3R1YWxTdHJpbmcgKyAnLic7
CisgICAgICB9CisgICAgfQorCisgICAgX2ZpbmFsaXplKCkgeworICAgICAgaWYgKHRoaXMuX3Jl
c3VsdCkgeworICAgICAgICBfbG9nUGFzc2VkKCcgICcgKyB0aGlzLl9kZXRhaWwpOworICAgICAg
fSBlbHNlIHsKKyAgICAgICAgX2xvZ0ZhaWxlZCgnWCAnICsgdGhpcy5fZGV0YWlsKTsKKyAgICAg
IH0KKworICAgICAgLy8gVGhpcyBhc3NlcnRpb24gaXMgZmluaXNoZWQsIHNvIHVwZGF0ZSB0aGUg
cGFyZW50IHRhc2sgYWNjb3JkaW5nbHkuCisgICAgICB0aGlzLl90YXNrLnVwZGF0ZSh0aGlzKTsK
KworICAgICAgLy8gVE9ETyhob25nY2hhbik6IGNvbmZpZ3VyYWJsZSAnZGV0YWlsJyBtZXNzYWdl
LgorICAgIH0KKworICAgIF9hc3NlcnQoY29uZGl0aW9uLCBwYXNzRGV0YWlsLCBmYWlsRGV0YWls
KSB7CisgICAgICB0aGlzLl9yZXN1bHQgPSBCb29sZWFuKGNvbmRpdGlvbik7CisgICAgICB0aGlz
Ll9kZXRhaWwgPSB0aGlzLl9yZXN1bHQgPyBwYXNzRGV0YWlsIDogZmFpbERldGFpbDsKKyAgICAg
IHRoaXMuX2J1aWxkUmVzdWx0VGV4dCgpOworICAgICAgdGhpcy5fZmluYWxpemUoKTsKKworICAg
ICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAg
ICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAgICB9CisKKyAgICBnZXQgZGV0YWlsKCkgeworICAg
ICAgcmV0dXJuIHRoaXMuX2RldGFpbDsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBzaG91bGQo
KSBhc3NlcnRpb25zLgorICAgICAqCisgICAgICogQGV4YW1wbGUgQWxsIHRoZSBhc3NlcnRpb25z
IGNhbiBoYXZlIDEsIDIgb3IgMyBhcmd1bWVudHM6CisgICAgICogICBzaG91bGQoKS5kb0Fzc2Vy
dChleHBlY3RlZCk7CisgICAgICogICBzaG91bGQoKS5kb0Fzc2VydChleHBlY3RlZCwgb3B0aW9u
cyk7CisgICAgICogICBzaG91bGQoKS5kb0Fzc2VydChleHBlY3RlZCwgZXhwZWN0ZWREZXNjcmlw
dGlvbiwgb3B0aW9ucyk7CisgICAgICoKKyAgICAgKiBAcGFyYW0ge0FueX0gZXhwZWN0ZWQgICAg
ICAgICAgICAgICAgICBFeHBlY3RlZCB2YWx1ZSBvZiB0aGUgYXNzZXJ0aW9uLgorICAgICAqIEBw
YXJhbSB7U3RyaW5nfSBleHBlY3RlZERlc2NyaXB0aW9uICAgIERlc2NyaXB0aW9uIG9mIGV4cGVj
dGVkIHZhbHVlLgorICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zICAgICAgICAgICAgICAg
IE9wdGlvbnMgZm9yIGFzc2VydGlvbi4KKyAgICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5u
dW1iZXJPZkVycm9ycyBOdW1iZXIgb2YgZXJyb3JzIHRvIGJlIHByaW50ZWQuCisgICAgICogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGFwcGxpY2FibGUpCisgICAg
ICogQHBhcmFtIHtOdW1iZXJ9IG9wdGlvbnMubnVtYmVyT2ZBcnJheUVsZW1lbnRzICBOdW1iZXIg
b2YgYXJyYXkgZWxlbWVudHMKKyAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRvIGJlIHByaW50ZWQuIChpZgorICAgICAqICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYWJsZSkKKyAgICAgKiBAbm90
ZXMgU29tZSBhc3NlcnRpb25zIGNhbiBoYXZlIGFkZGl0aW9uYWwgb3B0aW9ucyBmb3IgdGhlaXIg
c3BlY2lmaWMKKyAgICAgKiAgICAgICAgdGVzdGluZy4KKyAgICAgKi8KKworICAgIC8qKgorICAg
ICAqIENoZWNrIGlmIHxhY3R1YWx8IGV4aXN0cy4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisg
ICAgICogICBzaG91bGQoe30sICdBbiBlbXB0eSBvYmplY3QnKS5leGlzdCgpOworICAgICAqIEBy
ZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQW4gZW1wdHkgb2JqZWN0IGRvZXMgZXhpc3QuIgorICAg
ICAqLworICAgIGV4aXN0KCkgeworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAg
ICB0aGlzLl9hY3R1YWwgIT09IG51bGwgJiYgdGhpcy5fYWN0dWFsICE9PSB1bmRlZmluZWQsCisg
ICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIGV4aXN0LicsICcke2FjdHVhbH0gZG9lcyBub3QgZXhp
c3QuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgb3BlcmF0
aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiB0aHJvd3MgYW4gZXhjZXB0aW9uCisgICAgICogd2l0
aCBhIGV4cGVjdGVkIGVycm9yIHR5cGUgY29ycmVjdGx5LiB8ZXhwZWN0ZWR8IGlzIG9wdGlvbmFs
LiBJZiBpdCBpcyBhbgorICAgICAqIGluc3RhbmNlIG9mIERPTUV4Y2VwdGlvbiwgdGhlbiB0aGUg
ZGVzY3JpcHRpb24gKHNlY29uZCBhcmd1bWVudCkgY2FuIGJlCisgICAgICogcHJvdmlkZWQgdG8g
YmUgbW9yZSBzdHJpY3QgYWJvdXQgdGhlIGV4cGVjdGVkIGV4Y2VwdGlvbiB0eXBlLiB8ZXhwZWN0
ZWR8CisgICAgICogYWxzbyBjYW4gYmUgb3RoZXIgZ2VuZXJpYyBlcnJvciB0eXBlcyBzdWNoIGFz
IFR5cGVFcnJvciwgUmFuZ2VFcnJvciBvcgorICAgICAqIGV0Yy4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQoKCkgPT4geyBsZXQgYSA9IGI7IH0sICdBIGJhZCBjb2Rl
JykudGhyb3coKTsKKyAgICAgKiAgIHNob3VsZCgoKSA9PiB7IG5ldyBTb21lQ29uc3RydWN0b3Io
KTsgfSwgJ0EgYmFkIGNvbnN0cnVjdGlvbicpCisgICAgICogICAgICAgLnRocm93KERPTUV4Y2Vw
dGlvbiwgJ05vdFN1cHBvcnRlZEVycm9yJyk7CisgICAgICogICBzaG91bGQoKCkgPT4geyBsZXQg
YyA9IGQ7IH0sICdBc3NpZ25pbmcgZCB0byBjJykKKyAgICAgKiAgICAgICAudGhyb3coUmVmZXJl
bmNlRXJyb3IpOworICAgICAqICAgc2hvdWxkKCgpID0+IHsgbGV0IGUgPSBmOyB9LCAnQXNzaWdu
aW5nIGUgdG8gZicpCisgICAgICogICAgICAgLnRocm93KFJlZmVyZW5jZUVycm9yLCB7IG9taXRF
cnJvck1lc3NhZ2U6IHRydWUgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAi
UEFTUyAgIEEgYmFkIGNvZGUgdGhyZXcgYW4gZXhjZXB0aW9uIG9mIFJlZmVyZW5jZUVycm9yOiBi
IGlzIG5vdAorICAgICAqICAgICAgIGRlZmluZWQuIgorICAgICAqICAgIlBBU1MgICBBIGJhZCBj
b25zdHJ1Y3Rpb24gdGhyZXcgRE9NRXhjZXB0aW9uOk5vdFN1cHBvcnRlZEVycm9yLiIKKyAgICAg
KiAgICJQQVNTICAgQXNzaWduaW5nIGQgdG8gYyB0aHJldyBSZWZlcmVuY2VFcnJvcjogZCBpcyBu
b3QgZGVmaW5lZC4iCisgICAgICogICAiUEFTUyAgIEFzc2lnbmluZyBlIHRvIGYgdGhyZXcgUmVm
ZXJlbmNlRXJyb3I6IFtlcnJvciBtZXNzYWdlCisgICAgICogICAgICAgb21pdHRlZF0uIgorICAg
ICAqLworICAgIHRocm93KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVu
dHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAgICAg
IGxldCBkaWRUaHJvd0NvcnJlY3RseSA9IGZhbHNlOworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZh
aWxEZXRhaWw7CisKKyAgICAgIHRyeSB7CisgICAgICAgIC8vIFRoaXMgc2hvdWxkIHRocm93Lgor
ICAgICAgICB0aGlzLl9hY3R1YWwoKTsKKyAgICAgICAgLy8gQ2F0Y2ggZGlkIG5vdCBoYXBwZW4s
IHNvIHRoZSB0ZXN0IGlzIGZhaWxlZC4KKyAgICAgICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0g
ZGlkIG5vdCB0aHJvdyBhbiBleGNlcHRpb24uJzsKKyAgICAgIH0gY2F0Y2ggKGVycm9yKSB7Cisg
ICAgICAgIGxldCBlcnJvck1lc3NhZ2UgPSB0aGlzLl9vcHRpb25zLm9taXRFcnJvck1lc3NhZ2Ug
PworICAgICAgICAgICAgJzogW2Vycm9yIG1lc3NhZ2Ugb21pdHRlZF0nIDoKKyAgICAgICAgICAg
ICc6ICInICsgZXJyb3IubWVzc2FnZSArICciJzsKKyAgICAgICAgaWYgKHRoaXMuX2V4cGVjdGVk
ID09PSBudWxsIHx8IHRoaXMuX2V4cGVjdGVkID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAv
LyBUaGUgZXhwZWN0ZWQgZXJyb3IgdHlwZSB3YXMgbm90IGdpdmVuLgorICAgICAgICAgIGRpZFRo
cm93Q29ycmVjdGx5ID0gdHJ1ZTsKKyAgICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSB0
aHJldyAnICsgZXJyb3IubmFtZSArIGVycm9yTWVzc2FnZSArICcuJzsKKyAgICAgICAgfSBlbHNl
IGlmICh0aGlzLl9leHBlY3RlZCA9PT0gRE9NRXhjZXB0aW9uICYmCisgICAgICAgICAgICAgICAg
ICAgKHRoaXMuX2V4cGVjdGVkRGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fAorICAgICAgICAg
ICAgICAgICAgICB0aGlzLl9leHBlY3RlZERlc2NyaXB0aW9uID09PSBlcnJvci5uYW1lKSkgewor
ICAgICAgICAgIC8vIEhhbmRsZXMgRE9NRXhjZXB0aW9uIHdpdGggdGhlIGFzc29jaWF0ZWQgbmFt
ZS4KKyAgICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAgICAgICAgcGFzc0Rl
dGFpbCA9ICcke2FjdHVhbH0gdGhyZXcgJHtleHBlY3RlZH0nICsgZXJyb3JNZXNzYWdlICsgJy4n
OworICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2V4cGVjdGVkID09IGVycm9yLmNvbnN0cnVjdG9y
KSB7CisgICAgICAgICAgLy8gSGFuZGxlciBvdGhlciBlcnJvciB0eXBlcy4KKyAgICAgICAgICBk
aWRUaHJvd0NvcnJlY3RseSA9IHRydWU7CisgICAgICAgICAgcGFzc0RldGFpbCA9ICcke2FjdHVh
bH0gdGhyZXcgJyArIGVycm9yLm5hbWUgKyBlcnJvck1lc3NhZ2UgKyAnLic7CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgZGlkVGhyb3dDb3JyZWN0bHkgPSBmYWxzZTsKKyAgICAgICAgICBm
YWlsRGV0YWlsID0KKyAgICAgICAgICAgICAgJyR7YWN0dWFsfSB0aHJldyAiJyArIGVycm9yLm5h
bWUgKyAnIiBpbnN0ZWFkIG9mICR7ZXhwZWN0ZWR9Lic7CisgICAgICAgIH0KKyAgICAgIH0KKwor
ICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChkaWRUaHJvd0NvcnJlY3RseSwgcGFzc0RldGFpbCwg
ZmFpbERldGFpbCk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwg
b3BlcmF0aW9uIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiBkb2VzIG5vdCB0aHJvd3MgYW4KKyAgICAg
KiBleGNlcHRpb24gY29ycmVjdGx5LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAg
IHNob3VsZCgoKSA9PiB7IGxldCBmb28gPSAnYmFyJzsgfSwgJ2xldCBmb28gPSAiYmFyIicpLm5v
dFRocm93KCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIGxldCBm
b28gPSAiYmFyIiBkaWQgbm90IHRocm93IGFuIGV4Y2VwdGlvbi4iCisgICAgICovCisgICAgbm90
VGhyb3coKSB7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZhaWx1cmUgPSBmYWxzZTsKKwor
ICAgICAgbGV0IGRpZFRocm93Q29ycmVjdGx5ID0gZmFsc2U7CisgICAgICBsZXQgcGFzc0RldGFp
bCwgZmFpbERldGFpbDsKKworICAgICAgdHJ5IHsKKyAgICAgICAgdGhpcy5fYWN0dWFsKCk7Cisg
ICAgICAgIHBhc3NEZXRhaWwgPSAnJHthY3R1YWx9IGRpZCBub3QgdGhyb3cgYW4gZXhjZXB0aW9u
Lic7CisgICAgICB9IGNhdGNoIChlcnJvcikgeworICAgICAgICBkaWRUaHJvd0NvcnJlY3RseSA9
IHRydWU7CisgICAgICAgIGZhaWxEZXRhaWwgPSAnJHthY3R1YWx9IGluY29ycmVjdGx5IHRocmV3
ICcgKyBlcnJvci5uYW1lICsgJzogIicgKworICAgICAgICAgICAgZXJyb3IubWVzc2FnZSArICci
Lic7CisgICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoIWRpZFRocm93Q29ycmVj
dGx5LCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBD
aGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJlc29sdmVkIGNvcnJlY3RseS4gTm90ZSB0aGF0
IHRoZSByZXR1cm5lZAorICAgICAqIHJlc3VsdCBmcm9tIHByb21pc2Ugb2JqZWN0IHdpbGwgYmUg
cGFzc2VkIHRvIHRoZSBmb2xsb3dpbmcgdGhlbigpCisgICAgICogZnVuY3Rpb24uCisgICAgICoK
KyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKCdNeSBwcm9taXNlJywgcHJvbWlzZSku
YmVSZXNvbHZlKCkudGhlbigocmVzdWx0KSA9PiB7CisgICAgICogICAgIGxvZyhyZXN1bHQpOwor
ICAgICAqICAgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIE15
IHByb21pc2UgcmVzb2x2ZWQgY29ycmVjdGx5LiIKKyAgICAgKiAgICJGQUlMIFggTXkgcHJvbWlz
ZSByZWplY3RlZCAqSU5DT1JSRUNUTFkqIHdpdGggX0VSUk9SXy4iCisgICAgICovCisgICAgYmVS
ZXNvbHZlZCgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBm
dW5jdGlvbihyZXN1bHQpIHsKKyAgICAgICAgICAgIHRoaXMuX2Fzc2VydCh0cnVlLCAnJHthY3R1
YWx9IHJlc29sdmVkIGNvcnJlY3RseS4nLCBudWxsKTsKKyAgICAgICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgICAgICAgfS5iaW5kKHRoaXMpLAorICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7
CisgICAgICAgICAgICB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgICAgICAgZmFsc2UsIG51bGws
CisgICAgICAgICAgICAgICAgJyR7YWN0dWFsfSByZWplY3RlZCBpbmNvcnJlY3RseSB3aXRoICcg
KyBlcnJvciArICcuJyk7CisgICAgICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBwcm9taXNlIGlzIHJlamVjdGVkIGNvcnJlY3Rs
eS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoJ015IHByb21pc2Un
LCBwcm9taXNlKS5iZVJlamVjdGVkKCkudGhlbihuZXh0U3R1ZmYpOworICAgICAqCisgICAgICog
QHJlc3VsdAorICAgICAqICAgIlBBU1MgICBNeSBwcm9taXNlIHJlamVjdGVkIGNvcnJlY3RseSAo
d2l0aCBfRVJST1JfKS4iCisgICAgICogICAiRkFJTCBYIE15IHByb21pc2UgcmVzb2x2ZWQgKklO
Q09SUkVDVExZKi4iCisgICAgICovCisgICAgYmVSZWplY3RlZCgpIHsKKyAgICAgIHJldHVybiB0
aGlzLl9hY3R1YWwudGhlbigKKyAgICAgICAgICBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHRo
aXMuX2Fzc2VydChmYWxzZSwgbnVsbCwgJyR7YWN0dWFsfSByZXNvbHZlZCBpbmNvcnJlY3RseS4n
KTsKKyAgICAgICAgICB9LmJpbmQodGhpcyksCisgICAgICAgICAgZnVuY3Rpb24oZXJyb3IpIHsK
KyAgICAgICAgICAgIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAgICAgICB0cnVlLCAnJHthY3R1
YWx9IHJlamVjdGVkIGNvcnJlY3RseSB3aXRoICcgKyBlcnJvciArICcuJywgbnVsbCk7CisgICAg
ICAgICAgfS5iaW5kKHRoaXMpKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8
YWN0dWFsfCBwcm9taXNlIGlzIHJlamVjdGVkIGNvcnJlY3RseS4KKyAgICAgKgorICAgICAqIEBl
eGFtcGxlCisgICAgICogICBzaG91bGQocHJvbWlzZSwgJ015IHByb21pc2UnKS5iZVJlamVjdGVk
V2l0aCgnX0VSUk9SXycpLnRoZW4oKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAg
ICJQQVNTICAgTXkgcHJvbWlzZSByZWplY3RlZCBjb3JyZWN0bHkgd2l0aCBfRVJST1JfLiIKKyAg
ICAgKiAgICJGQUlMIFggTXkgcHJvbWlzZSByZWplY3RlZCBjb3JyZWN0bHkgYnV0IGdvdCBfQUNU
VUFMX0VSUk9SIGluc3RlYWQgb2YKKyAgICAgKiAgICAgICAgICAgX0VYUEVDVEVEX0VSUk9SXy4i
CisgICAgICogICAiRkFJTCBYIE15IHByb21pc2UgcmVzb2x2ZWQgaW5jb3JyZWN0bHkuIgorICAg
ICAqLworICAgIGJlUmVqZWN0ZWRXaXRoKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50
cyhhcmd1bWVudHMpOworCisgICAgICByZXR1cm4gdGhpcy5fYWN0dWFsLnRoZW4oCisgICAgICAg
ICAgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICB0aGlzLl9hc3NlcnQoZmFsc2UsIG51bGwsICck
e2FjdHVhbH0gcmVzb2x2ZWQgaW5jb3JyZWN0bHkuJyk7CisgICAgICAgICAgfS5iaW5kKHRoaXMp
LAorICAgICAgICAgIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgICAgICAgICBpZiAodGhpcy5fZXhw
ZWN0ZWQgIT09IGVycm9yLm5hbWUpIHsKKyAgICAgICAgICAgICAgdGhpcy5fYXNzZXJ0KAorICAg
ICAgICAgICAgICAgICAgZmFsc2UsIG51bGwsCisgICAgICAgICAgICAgICAgICAnJHthY3R1YWx9
IHJlamVjdGVkIGNvcnJlY3RseSBidXQgZ290ICcgKyBlcnJvci5uYW1lICsKKyAgICAgICAgICAg
ICAgICAgICAgICAnIGluc3RlYWQgb2YgJyArIHRoaXMuX2V4cGVjdGVkICsgJy4nKTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgIHRoaXMuX2Fzc2VydCgKKyAgICAgICAgICAg
ICAgICAgIHRydWUsCisgICAgICAgICAgICAgICAgICAnJHthY3R1YWx9IHJlamVjdGVkIGNvcnJl
Y3RseSB3aXRoICcgKyB0aGlzLl9leHBlY3RlZCArICcuJywKKyAgICAgICAgICAgICAgICAgIG51
bGwpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0uYmluZCh0aGlzKSk7CisgICAgfQorCisg
ICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgYSBib29sZWFuIHRydWUuCisgICAg
ICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDMgPCA1LCAnMyA8IDUnKS5iZVRy
dWUoKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMyA8IDUgaXMg
dHJ1ZS4iCisgICAgICovCisgICAgYmVUcnVlKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2Vy
dCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPT09IHRydWUsICcke2FjdHVhbH0gaXMgdHJ1ZS4n
LAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IHRydWUuJyk7CisgICAgfQorCisgICAgLyoq
CisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgYSBib29sZWFuIGZhbHNlLgorICAgICAqCisg
ICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgzID4gNSwgJzMgPiA1JykuYmVGYWxzZSgp
OworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAzID4gNSBpcyBmYWxz
ZS4iCisgICAgICovCisgICAgYmVGYWxzZSgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQo
CisgICAgICAgICAgdGhpcy5fYWN0dWFsID09PSBmYWxzZSwgJyR7YWN0dWFsfSBpcyBmYWxzZS4n
LAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGZhbHNlLicpOworICAgIH0KKworICAgIC8q
KgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlzIHN0cmljdGx5IGVxdWFsIHRvIHxleHBlY3Rl
ZHwuIChubyB0eXBlIGNvZXJjaW9uKQorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAg
IHNob3VsZCgxKS5iZUVxdWFsVG8oMSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICog
ICAiUEFTUyAgIDEgaXMgZXF1YWwgdG8gMS4iCisgICAgICovCisgICAgYmVFcXVhbFRvKCkgewor
ICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRo
aXMuX2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPT09IHRoaXMuX2V4cGVjdGVkLCAn
JHthY3R1YWx9IGlzIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFs
fSBpcyBub3QgZXF1YWwgdG8gJHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAg
ICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMgbm90IGVxdWFsIHRvIHxleHBlY3RlZHwuCisgICAgICoK
KyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDEpLm5vdEJlRXF1YWxUbygyKTsKKyAg
ICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgMSBpcyBub3QgZXF1YWwgdG8g
Mi4iCisgICAgICovCisgICAgbm90QmVFcXVhbFRvKCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0Fy
Z3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydCgKKyAgICAgICAg
ICB0aGlzLl9hY3R1YWwgIT09IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0g
aXMgbm90IGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBzaG91
bGQgbm90IGJlIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAg
ICAqIGNoZWNrIGlmIHxhY3R1YWx8IGlzIE5hTgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAg
ICAgKiAgIHNob3VsZChOYU4pLmJlTmFOKCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAg
ICogICAiUEFTUyAgIE5hTiBpcyBOYU4iCisgICAgICoKKyAgICAgKi8KKyAgICBiZU5hTigpIHsK
KyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0
aGlzLl9hc3NlcnQoCisgICAgICAgICAgaXNOYU4odGhpcy5fYWN0dWFsKSwKKyAgICAgICAgICAn
JHthY3R1YWx9IGlzIE5hTi4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IE5hTiBidXQg
c2hvdWxkIGJlLicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIGNoZWNrIGlmIHxhY3R1YWx8
IGlzIE5PVCBOYU4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoNDIp
Lm5vdEJlTmFOKCk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIDQy
IGlzIG5vdCBOYU4iCisgICAgICoKKyAgICAgKi8KKyAgICBub3RCZU5hTigpIHsKKyAgICAgIHRo
aXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3Nl
cnQoCisgICAgICAgICAgIWlzTmFOKHRoaXMuX2FjdHVhbCksCisgICAgICAgICAgJyR7YWN0dWFs
fSBpcyBub3QgTmFOLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBOYU4gYnV0IHNob3VsZCBu
b3QgYmUuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVhbHwgaXMg
Z3JlYXRlciB0aGFuIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAq
ICAgc2hvdWxkKDIpLmJlR3JlYXRlclRoYW5PckVxdWFsVG8oMik7CisgICAgICoKKyAgICAgKiBA
cmVzdWx0CisgICAgICogICAiUEFTUyAgIDIgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDIu
IgorICAgICAqLworICAgIGJlR3JlYXRlclRoYW4oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJn
dW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAg
IHRoaXMuX2FjdHVhbCA+IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMg
Z3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3Qg
Z3JlYXRlciB0aGFuICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byB8ZXhwZWN0ZWR8Lgor
ICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNob3VsZCgyKS5iZUdyZWF0ZXJUaGFu
KDEpOworICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlBBU1MgICAyIGlzIGdyZWF0
ZXIgdGhhbiAxLiIKKyAgICAgKi8KKyAgICBiZUdyZWF0ZXJUaGFuT3JFcXVhbFRvKCkgeworICAg
ICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwgPj0gdGhpcy5fZXhwZWN0ZWQsCisgICAg
ICAgICAgJyR7YWN0dWFsfSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJHtleHBlY3RlZH0u
JywKKyAgICAgICAgICAnJHthY3R1YWx9IGlzIG5vdCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8g
JHtleHBlY3RlZH0uJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICogQ2hlY2sgaWYgfGFjdHVh
bHwgaXMgbGVzcyB0aGFuIHxleHBlY3RlZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAg
ICAqICAgc2hvdWxkKDEpLmJlTGVzc1RoYW4oMik7CisgICAgICoKKyAgICAgKiBAcmVzdWx0Cisg
ICAgICogICAiUEFTUyAgIDEgaXMgbGVzcyB0aGFuIDIuIgorICAgICAqLworICAgIGJlTGVzc1Ro
YW4oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICBy
ZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHRoaXMuX2FjdHVhbCA8IHRoaXMuX2V4cGVj
dGVkLCAnJHthY3R1YWx9IGlzIGxlc3MgdGhhbiAke2V4cGVjdGVkfS4nLAorICAgICAgICAgICck
e2FjdHVhbH0gaXMgbm90IGxlc3MgdGhhbiAke2V4cGVjdGVkfS4nKTsKKyAgICB9CisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiB8YWN0dWFsfCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gfGV4
cGVjdGVkfC4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoMSkuYmVM
ZXNzVGhhbk9yRXF1YWxUbygxKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQ
QVNTICAgMSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMS4iCisgICAgICovCisgICAgYmVMZXNz
VGhhbk9yRXF1YWxUbygpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRz
KTsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFsIDw9
IHRoaXMuX2V4cGVjdGVkLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbGVzcyB0aGFuIG9yIGVx
dWFsIHRvICR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgJyR7YWN0dWFsfSBpcyBub3QgbGVzcyB0
aGFuIG9yIGVxdWFsIHRvICR7ZXhwZWN0ZWR9LicpOworICAgIH0KKworICAgIC8qKgorICAgICAq
IENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIGZpbGxlZCB3aXRoIGEgY29uc3RhbnQgfGV4cGVj
dGVkfCB2YWx1ZS4KKyAgICAgKgorICAgICAqIEBleGFtcGxlCisgICAgICogICBzaG91bGQoWzEs
IDEsIDFdKS5iZUNvbnN0YW50VmFsdWVPZigxKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAg
ICAgKiAgICJQQVNTICAgWzEsMSwxXSBjb250YWlucyBvbmx5IHRoZSBjb25zdGFudCAxLiIKKyAg
ICAgKi8KKyAgICBiZUNvbnN0YW50VmFsdWVPZigpIHsKKyAgICAgIHRoaXMuX3Byb2Nlc3NBcmd1
bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50QWN0dWFsRm9yRmFpbHVyZSA9IGZh
bHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIGxldCBwYXNzRGV0YWlsLCBm
YWlsRGV0YWlsOworICAgICAgbGV0IGVycm9ycyA9IHt9OworCisgICAgICBsZXQgYWN0dWFsID0g
dGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5fZXhwZWN0ZWQ7CisgICAg
ICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0aDsgKytpbmRleCkgewor
ICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWQpCisgICAgICAgICAgZXJyb3Jz
W2luZGV4XSA9IGFjdHVhbFtpbmRleF07CisgICAgICB9CisKKyAgICAgIGxldCBudW1iZXJPZkVy
cm9ycyA9IE9iamVjdC5rZXlzKGVycm9ycykubGVuZ3RoOworICAgICAgcGFzc2VkID0gbnVtYmVy
T2ZFcnJvcnMgPT09IDA7CisKKyAgICAgIGlmIChwYXNzZWQpIHsKKyAgICAgICAgcGFzc0RldGFp
bCA9ICcke2FjdHVhbH0gY29udGFpbnMgb25seSB0aGUgY29uc3RhbnQgJHtleHBlY3RlZH0uJzsK
KyAgICAgIH0gZWxzZSB7CisgICAgICAgIGxldCBjb3VudGVyID0gMDsKKyAgICAgICAgZmFpbERl
dGFpbCA9CisgICAgICAgICAgICAnJHthY3R1YWx9OiBFeHBlY3RlZCAke2V4cGVjdGVkfSBmb3Ig
YWxsIHZhbHVlcyBidXQgZm91bmQgJyArCisgICAgICAgICAgICBudW1iZXJPZkVycm9ycyArICcg
dW5leHBlY3RlZCB2YWx1ZXM6ICc7CisgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1xuXHRJbmRleFx0
QWN0dWFsJzsKKyAgICAgICAgZm9yIChsZXQgZXJyb3JJbmRleCBpbiBlcnJvcnMpIHsKKyAgICAg
ICAgICBmYWlsRGV0YWlsICs9ICdcblx0WycgKyBlcnJvckluZGV4ICsgJ10nICsKKyAgICAgICAg
ICAgICAgJ1x0JyArIGVycm9yc1tlcnJvckluZGV4XTsKKyAgICAgICAgICBpZiAoKytjb3VudGVy
ID49IHRoaXMuX29wdGlvbnMubnVtYmVyT2ZFcnJvcnMpIHsKKyAgICAgICAgICAgIGZhaWxEZXRh
aWwgKz0KKyAgICAgICAgICAgICAgICAnXG5cdC4uLmFuZCAnICsgKG51bWJlck9mRXJyb3JzIC0g
Y291bnRlcikgKyAnIG1vcmUgZXJyb3JzLic7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICB9CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNz
ZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENo
ZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIG5vdCBmaWxsZWQgd2l0aCBhIGNvbnN0YW50IHxleHBl
Y3RlZHwgdmFsdWUuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKFsx
LCAwLCAxXSkubm90QmVDb25zdGFudFZhbHVlT2YoMSk7CisgICAgICogICBzaG91bGQoWzAsIDAs
IDBdKS5ub3RCZUNvbnN0YW50VmFsdWVPZigwKTsKKyAgICAgKgorICAgICAqIEByZXN1bHQKKyAg
ICAgKiAgICJQQVNTICAgWzEsMCwxXSBpcyBub3QgY29uc3RhbnRseSAxIChjb250YWlucyAxIGRp
ZmZlcmVudCB2YWx1ZSkuIgorICAgICAqICAgIkZBSUwgWCBbMCwwLDBdIHNob3VsZCBoYXZlIGNv
bnRhaW4gYXQgbGVhc3Qgb25lIHZhbHVlIGRpZmZlcmVudAorICAgICAqICAgICBmcm9tIDAuIgor
ICAgICAqLworICAgIG5vdEJlQ29uc3RhbnRWYWx1ZU9mKCkgeworICAgICAgdGhpcy5fcHJvY2Vz
c0FyZ3VtZW50cyhhcmd1bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJl
ID0gZmFsc2U7CisKKyAgICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRh
aWw7CisgICAgICBsZXQgZmFpbERldGFpbDsKKyAgICAgIGxldCBkaWZmZXJlbmNlcyA9IHt9Owor
CisgICAgICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0g
dGhpcy5fZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFs
Lmxlbmd0aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0
ZWQpCisgICAgICAgICAgZGlmZmVyZW5jZXNbaW5kZXhdID0gYWN0dWFsW2luZGV4XTsKKyAgICAg
IH0KKworICAgICAgbGV0IG51bWJlck9mRGlmZmVyZW5jZXMgPSBPYmplY3Qua2V5cyhkaWZmZXJl
bmNlcykubGVuZ3RoOworICAgICAgcGFzc2VkID0gbnVtYmVyT2ZEaWZmZXJlbmNlcyA+IDA7CisK
KyAgICAgIGlmIChwYXNzZWQpIHsKKyAgICAgICAgbGV0IHZhbHVlU3RyaW5nID0gbnVtYmVyT2ZE
aWZmZXJlbmNlcyA+IDEgPyAndmFsdWVzJyA6ICd2YWx1ZSc7CisgICAgICAgIHBhc3NEZXRhaWwg
PSAnJHthY3R1YWx9IGlzIG5vdCBjb25zdGFudGx5ICR7ZXhwZWN0ZWR9IChjb250YWlucyAnICsK
KyAgICAgICAgICAgIG51bWJlck9mRGlmZmVyZW5jZXMgKyAnIGRpZmZlcmVudCAnICsgdmFsdWVT
dHJpbmcgKyAnKS4nOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZmFpbERldGFpbCA9ICcke2Fj
dHVhbH0gc2hvdWxkIGhhdmUgY29udGFpbiBhdCBsZWFzdCBvbmUgdmFsdWUgJyArCisgICAgICAg
ICAgICAnZGlmZmVyZW50IGZyb20gJHtleHBlY3RlZH0uJzsKKyAgICAgIH0KKworICAgICAgcmV0
dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0K
KworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGlzIGlkZW50aWNhbCB0
byB8ZXhwZWN0ZWR8IGFycmF5IGVsZW1lbnQtd2lzZS4KKyAgICAgKgorICAgICAqIEBleGFtcGxl
CisgICAgICogICBzaG91bGQoWzEsIDIsIDNdKS5iZUVxdWFsVG9BcnJheShbMSwgMiwgM10pOwor
ICAgICAqCisgICAgICogQHJlc3VsdAorICAgICAqICAgIlsxLDIsM10gaXMgaWRlbnRpY2FsIHRv
IHRoZSBhcnJheSBbMSwyLDNdLiIKKyAgICAgKi8KKyAgICBiZUVxdWFsVG9BcnJheSgpIHsKKyAg
ICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKyAgICAgIHRoaXMuX3ByaW50
QWN0dWFsRm9yRmFpbHVyZSA9IGZhbHNlOworCisgICAgICBsZXQgcGFzc2VkID0gdHJ1ZTsKKyAg
ICAgIGxldCBwYXNzRGV0YWlsLCBmYWlsRGV0YWlsOworICAgICAgbGV0IGVycm9ySW5kaWNlcyA9
IFtdOworCisgICAgICBpZiAodGhpcy5fYWN0dWFsLmxlbmd0aCAhPT0gdGhpcy5fZXhwZWN0ZWQu
bGVuZ3RoKSB7CisgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICBmYWlsRGV0YWlsID0g
J1RoZSBhcnJheSBsZW5ndGggZG9lcyBub3QgbWF0Y2guJzsKKyAgICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgICAgfQorCisgICAg
ICBsZXQgYWN0dWFsID0gdGhpcy5fYWN0dWFsOworICAgICAgbGV0IGV4cGVjdGVkID0gdGhpcy5f
ZXhwZWN0ZWQ7CisgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYWN0dWFsLmxlbmd0
aDsgKytpbmRleCkgeworICAgICAgICBpZiAoYWN0dWFsW2luZGV4XSAhPT0gZXhwZWN0ZWRbaW5k
ZXhdKQorICAgICAgICAgIGVycm9ySW5kaWNlcy5wdXNoKGluZGV4KTsKKyAgICAgIH0KKworICAg
ICAgcGFzc2VkID0gZXJyb3JJbmRpY2VzLmxlbmd0aCA9PT0gMDsKKworICAgICAgaWYgKHBhc3Nl
ZCkgeworICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSBpcyBpZGVudGljYWwgdG8gdGhl
IGFycmF5ICR7ZXhwZWN0ZWR9Lic7CisgICAgICB9IGVsc2UgeworICAgICAgICBsZXQgY291bnRl
ciA9IDA7CisgICAgICAgIGZhaWxEZXRhaWwgPQorICAgICAgICAgICAgJyR7YWN0dWFsfSBleHBl
Y3RlZCB0byBiZSBlcXVhbCB0byB0aGUgYXJyYXkgJHtleHBlY3RlZH0gJyArCisgICAgICAgICAg
ICAnYnV0IGRpZmZlcnMgaW4gJyArIGVycm9ySW5kaWNlcy5sZW5ndGggKyAnIHBsYWNlczonICsK
KyAgICAgICAgICAgICdcblx0SW5kZXhcdEFjdHVhbFx0XHRcdEV4cGVjdGVkJzsKKyAgICAgICAg
Zm9yIChsZXQgaW5kZXggb2YgZXJyb3JJbmRpY2VzKSB7CisgICAgICAgICAgZmFpbERldGFpbCAr
PSAnXG5cdFsnICsgaW5kZXggKyAnXScgKworICAgICAgICAgICAgICAnXHQnICsgdGhpcy5fYWN0
dWFsW2luZGV4XS50b0V4cG9uZW50aWFsKDE2KSArICdcdCcgKworICAgICAgICAgICAgICB0aGlz
Ll9leHBlY3RlZFtpbmRleF0udG9FeHBvbmVudGlhbCgxNik7CisgICAgICAgICAgaWYgKCsrY291
bnRlciA+PSB0aGlzLl9vcHRpb25zLm51bWJlck9mRXJyb3JzKSB7CisgICAgICAgICAgICBmYWls
RGV0YWlsICs9ICdcblx0Li4uYW5kICcgKyAoZXJyb3JJbmRpY2VzLmxlbmd0aCAtIGNvdW50ZXIp
ICsKKyAgICAgICAgICAgICAgICAnIG1vcmUgZXJyb3JzLic7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRoaXMuX2Fz
c2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOworICAgIH0KKworICAgIC8qKgor
ICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFycmF5IGNvbnRhaW5zIG9ubHkgdGhlIHZhbHVlcyBp
biB8ZXhwZWN0ZWR8IGluIHRoZQorICAgICAqIG9yZGVyIG9mIHZhbHVlcyBpbiB8ZXhwZWN0ZWR8
LgorICAgICAqCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIFNob3VsZChbMSwgMSwgMywgMywg
Ml0sICdNeSByYW5kb20gYXJyYXknKS5jb250YWluVmFsdWVzKFsxLCAzLCAyXSk7CisgICAgICoK
KyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFsxLDEsMywzLDJdIGNvbnRhaW5zIGFs
bCB0aGUgZXhwZWN0ZWQgdmFsdWVzIGluIHRoZSBjb3JyZWN0CisgICAgICogICAgICAgICAgIG9y
ZGVyOiBbMSwzLDJdLgorICAgICAqLworICAgIGNvbnRhaW5WYWx1ZXMoKSB7CisgICAgICB0aGlz
Ll9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZv
ckZhaWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQg
aW5kZXhlZEFjdHVhbCA9IFtdOworICAgICAgbGV0IGZpcnN0RXJyb3JJbmRleCA9IG51bGw7CisK
KyAgICAgIC8vIENvbGxlY3QgdGhlIHVuaXF1ZSB2YWx1ZSBzZXF1ZW5jZSBmcm9tIHRoZSBhY3R1
YWwuCisgICAgICBmb3IgKGxldCBpID0gMCwgcHJldiA9IG51bGw7IGkgPCB0aGlzLl9hY3R1YWwu
bGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKHRoaXMuX2FjdHVhbFtpXSAhPT0gcHJldikgewor
ICAgICAgICAgIGluZGV4ZWRBY3R1YWwucHVzaCh7aW5kZXg6IGksIHZhbHVlOiB0aGlzLl9hY3R1
YWxbaV19KTsKKyAgICAgICAgICBwcmV2ID0gdGhpcy5fYWN0dWFsW2ldOworICAgICAgICB9Cisg
ICAgICB9CisKKyAgICAgIC8vIENvbXBhcmUgYWdhaW5zdCB0aGUgZXhwZWN0ZWQgc2VxdWVuY2Uu
CisgICAgICBsZXQgZmFpbE1lc3NhZ2UgPQorICAgICAgICAgICcke2FjdHVhbH0gZXhwZWN0ZWQg
dG8gaGF2ZSB0aGUgdmFsdWUgc2VxdWVuY2Ugb2YgJHtleHBlY3RlZH0gYnV0ICcgKworICAgICAg
ICAgICdnb3QgJzsKKyAgICAgIGlmICh0aGlzLl9leHBlY3RlZC5sZW5ndGggPT09IGluZGV4ZWRB
Y3R1YWwubGVuZ3RoKSB7CisgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdGhpcy5fZXhwZWN0
ZWQubGVuZ3RoOyBqKyspIHsKKyAgICAgICAgICBpZiAodGhpcy5fZXhwZWN0ZWRbal0gIT09IGlu
ZGV4ZWRBY3R1YWxbal0udmFsdWUpIHsKKyAgICAgICAgICAgIGZpcnN0RXJyb3JJbmRleCA9IGlu
ZGV4ZWRBY3R1YWxbal0uaW5kZXg7CisgICAgICAgICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAg
ICAgICAgIGZhaWxNZXNzYWdlICs9IHRoaXMuX2FjdHVhbFtmaXJzdEVycm9ySW5kZXhdICsgJyBh
dCBpbmRleCAnICsKKyAgICAgICAgICAgICAgICBmaXJzdEVycm9ySW5kZXggKyAnLic7CisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0gZWxzZSB7Cisg
ICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAgICAgICBsZXQgaW5kZXhlZFZhbHVlcyA9IGluZGV4
ZWRBY3R1YWwubWFwKHggPT4geC52YWx1ZSk7CisgICAgICAgIGZhaWxNZXNzYWdlICs9IGAke2lu
ZGV4ZWRBY3R1YWwubGVuZ3RofSB2YWx1ZXMsIFskeworICAgICAgICAgICAgaW5kZXhlZFZhbHVl
c31dLCBpbnN0ZWFkIG9mICR7dGhpcy5fZXhwZWN0ZWQubGVuZ3RofS5gOworICAgICAgfQorCisg
ICAgICByZXR1cm4gdGhpcy5fYXNzZXJ0KAorICAgICAgICAgIHBhc3NlZCwKKyAgICAgICAgICAn
JHthY3R1YWx9IGNvbnRhaW5zIGFsbCB0aGUgZXhwZWN0ZWQgdmFsdWVzIGluIHRoZSBjb3JyZWN0
IG9yZGVyOiAnICsKKyAgICAgICAgICAgICAgJyR7ZXhwZWN0ZWR9LicsCisgICAgICAgICAgZmFp
bE1lc3NhZ2UpOworICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGFy
cmF5IGRvZXMgbm90IGhhdmUgYW55IGdsaXRjaGVzLiBOb3RlIHRoYXQgfHRocmVzaG9sZHwKKyAg
ICAgKiBpcyBub3Qgb3B0aW9uYWwgYW5kIGlzIHRvIGRlZmluZSB0aGUgZGVzaXJlZCB0aHJlc2hv
bGQgdmFsdWUuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKFswLjUs
IDAuNSwgMC41NSwgMC41LCAwLjQ1LCAwLjVdKS5ub3RHbGl0Y2goMC4wNik7CisgICAgICoKKyAg
ICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFswLjUsMC41LDAuNTUsMC41LDAuNDUsMC41
XSBoYXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJlc2hvbGQKKyAgICAgKiAgICAgICAgICAgb2Yg
MC4wNi4iCisgICAgICoKKyAgICAgKi8KKyAgICBub3RHbGl0Y2goKSB7CisgICAgICB0aGlzLl9w
cm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisgICAgICB0aGlzLl9wcmludEFjdHVhbEZvckZh
aWx1cmUgPSBmYWxzZTsKKworICAgICAgbGV0IHBhc3NlZCA9IHRydWU7CisgICAgICBsZXQgcGFz
c0RldGFpbCwgZmFpbERldGFpbDsKKworICAgICAgbGV0IGFjdHVhbCA9IHRoaXMuX2FjdHVhbDsK
KyAgICAgIGxldCBleHBlY3RlZCA9IHRoaXMuX2V4cGVjdGVkOworICAgICAgZm9yIChsZXQgaW5k
ZXggPSAwOyBpbmRleCA8IGFjdHVhbC5sZW5ndGg7ICsraW5kZXgpIHsKKyAgICAgICAgbGV0IGRp
ZmYgPSBNYXRoLmFicyhhY3R1YWxbaW5kZXggLSAxXSAtIGFjdHVhbFtpbmRleF0pOworICAgICAg
ICBpZiAoZGlmZiA+PSBleHBlY3RlZCkgeworICAgICAgICAgIHBhc3NlZCA9IGZhbHNlOworICAg
ICAgICAgIGZhaWxEZXRhaWwgPSAnJHthY3R1YWx9IGhhcyBhIGdsaXRjaCBhdCBpbmRleCAnICsg
aW5kZXggKworICAgICAgICAgICAgICAnIG9mIHNpemUgJyArIGRpZmYgKyAnLic7CisgICAgICAg
IH0KKyAgICAgIH0KKworICAgICAgcGFzc0RldGFpbCA9CisgICAgICAgICAgJyR7YWN0dWFsfSBo
YXMgbm8gZ2xpdGNoIGFib3ZlIHRoZSB0aHJlc2hvbGQgb2YgJHtleHBlY3RlZH0uJzsKKworICAg
ICAgcmV0dXJuIHRoaXMuX2Fzc2VydChwYXNzZWQsIHBhc3NEZXRhaWwsIGZhaWxEZXRhaWwpOwor
ICAgIH0KKworICAgIC8qKgorICAgICAqIENoZWNrIGlmIHxhY3R1YWx8IGlzIGNsb3NlIHRvIHxl
eHBlY3RlZHwgdXNpbmcgdGhlIGdpdmVuIHJlbGF0aXZlIGVycm9yCisgICAgICogfHRocmVzaG9s
ZHwuCisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKDIuMykuYmVDbG9z
ZVRvKDIsIHsgdGhyZXNob2xkOiAwLjMgfSk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAg
ICogICAiUEFTUyAgICAyLjMgaXMgMiB3aXRoaW4gYW4gZXJyb3Igb2YgMC4zLiIKKyAgICAgKiBA
cGFyYW0ge09iamVjdH0gb3B0aW9ucyAgICAgICAgICAgICAgT3B0aW9ucyBmb3IgYXNzZXJ0aW9u
LgorICAgICAqIEBwYXJhbSB7TnVtYmVyfSBvcHRpb25zLnRocmVzaG9sZCAgICBUaHJlc2hvbGQg
dmFsdWUgZm9yIHRoZSBjb21wYXJpc29uLgorICAgICAqLworICAgIGJlQ2xvc2VUbygpIHsKKyAg
ICAgIHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAgICAgLy8gVGhlIHRo
cmVzaG9sZCBpcyByZWxhdGl2ZSBleGNlcHQgd2hlbiB8ZXhwZWN0ZWR8IGlzIHplcm8sIGluIHdo
aWNoIGNhc2UKKyAgICAgIC8vIGl0IGlzIGFic29sdXRlLgorICAgICAgbGV0IGFic0V4cGVjdGVk
ID0gdGhpcy5fZXhwZWN0ZWQgPyBNYXRoLmFicyh0aGlzLl9leHBlY3RlZCkgOiAxOworICAgICAg
bGV0IGVycm9yID0gTWF0aC5hYnModGhpcy5fYWN0dWFsIC0gdGhpcy5fZXhwZWN0ZWQpIC8gYWJz
RXhwZWN0ZWQ7CisKKyAgICAgIC8vIGRlYnVnZ2VyOworCisgICAgICByZXR1cm4gdGhpcy5fYXNz
ZXJ0KAorICAgICAgICAgIGVycm9yIDw9IHRoaXMuX29wdGlvbnMudGhyZXNob2xkLAorICAgICAg
ICAgICcke2FjdHVhbH0gaXMgJHtleHBlY3RlZH0gd2l0aGluIGFuIGVycm9yIG9mICR7dGhyZXNo
b2xkfS4nLAorICAgICAgICAgICcke2FjdHVhbH0gaXMgbm90IGNsb3NlIHRvICR7ZXhwZWN0ZWR9
IHdpdGhpbiBhIHJlbGF0aXZlIGVycm9yIG9mICcgKworICAgICAgICAgICAgICAnJHt0aHJlc2hv
bGR9IChSZWxFcnI9JyArIGVycm9yICsgJykuJyk7CisgICAgfQorCisgICAgLyoqCisgICAgICog
Q2hlY2sgaWYgfHRhcmdldHwgYXJyYXkgaXMgY2xvc2UgdG8gfGV4cGVjdGVkfCBhcnJheSBlbGVt
ZW50LXdpc2Ugd2l0aGluCisgICAgICogYSBjZXJ0YWluIGVycm9yIGJvdW5kIGdpdmVuIGJ5IHRo
ZSB8b3B0aW9uc3wuCisgICAgICoKKyAgICAgKiBUaGUgZXJyb3IgY3JpdGVyaW9uIGlzOgorICAg
ICAqICAgYWJzKGFjdHVhbFtrXSAtIGV4cGVjdGVkW2tdKSA8IG1heChhYnNFcnIsIHJlbEVyciAq
IGFicyhleHBlY3RlZCkpCisgICAgICoKKyAgICAgKiBJZiBub3RoaW5nIGlzIGdpdmVuIGZvciB8
b3B0aW9uc3wsIHRoZW4gYWJzRXJyID0gcmVsRXJyID0gMC4gSWYKKyAgICAgKiBhYnNFcnIgPSAw
LCB0aGVuIHRoZSBlcnJvciBjcml0ZXJpb24gaXMgYSByZWxhdGl2ZSBlcnJvci4gQSBub24temVy
bworICAgICAqIGFic0VyciB2YWx1ZSBwcm9kdWNlcyBhIG1peCBpbnRlbmRlZCB0byBoYW5kbGUg
dGhlIGNhc2Ugd2hlcmUgdGhlCisgICAgICogZXhwZWN0ZWQgdmFsdWUgaXMgMCwgYWxsb3dpbmcg
dGhlIHRhcmdldCB2YWx1ZSB0byBkaWZmZXIgYnkgYWJzRXJyIGZyb20KKyAgICAgKiB0aGUgZXhw
ZWN0ZWQuCisgICAgICoKKyAgICAgKiBAcGFyYW0ge051bWJlcn0gb3B0aW9ucy5hYnNvbHV0ZVRo
cmVzaG9sZCAgICBBYnNvbHV0ZSB0aHJlc2hvbGQuCisgICAgICogQHBhcmFtIHtOdW1iZXJ9IG9w
dGlvbnMucmVsYXRpdmVUaHJlc2hvbGQgICAgUmVsYXRpdmUgdGhyZXNob2xkLgorICAgICAqLwor
ICAgIGJlQ2xvc2VUb0FycmF5KCkgeworICAgICAgdGhpcy5fcHJvY2Vzc0FyZ3VtZW50cyhhcmd1
bWVudHMpOworICAgICAgdGhpcy5fcHJpbnRBY3R1YWxGb3JGYWlsdXJlID0gZmFsc2U7CisKKyAg
ICAgIGxldCBwYXNzZWQgPSB0cnVlOworICAgICAgbGV0IHBhc3NEZXRhaWwsIGZhaWxEZXRhaWw7
CisKKyAgICAgIC8vIFBhcnNpbmcgb3B0aW9ucy4KKyAgICAgIGxldCBhYnNFcnJvclRocmVzaG9s
ZCA9ICh0aGlzLl9vcHRpb25zLmFic29sdXRlVGhyZXNob2xkIHx8IDApOworICAgICAgbGV0IHJl
bEVycm9yVGhyZXNob2xkID0gKHRoaXMuX29wdGlvbnMucmVsYXRpdmVUaHJlc2hvbGQgfHwgMCk7
CisKKyAgICAgIC8vIEEgY29sbGVjdGlvbiBvZiBhbGwgb2YgdGhlIHZhbHVlcyB0aGF0IHNhdGlz
ZnkgdGhlIGVycm9yIGNyaXRlcmlvbi4KKyAgICAgIC8vIFRoaXMgaG9sZHMgdGhlIGFic29sdXRl
IGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgdGFyZ2V0IGVsZW1lbnQgYW5kIHRoZQorICAgICAgLy8g
ZXhwZWN0ZWQgZWxlbWVudC4KKyAgICAgIGxldCBlcnJvcnMgPSB7fTsKKworICAgICAgLy8gS2Vl
cCB0cmFjayBvZiB0aGUgbWF4IGFic29sdXRlIGVycm9yIGZvdW5kLgorICAgICAgbGV0IG1heEFi
c0Vycm9yID0gLUluZmluaXR5LCBtYXhBYnNFcnJvckluZGV4ID0gLTE7CisKKyAgICAgIC8vIEtl
ZXAgdHJhY2sgb2YgdGhlIG1heCByZWxhdGl2ZSBlcnJvciBmb3VuZCwgaWdub3JpbmcgY2FzZXMg
d2hlcmUgdGhlCisgICAgICAvLyByZWxhdGl2ZSBlcnJvciBpcyBJbmZpbml0eSBiZWNhdXNlIHRo
ZSBleHBlY3RlZCB2YWx1ZSBpcyAwLgorICAgICAgbGV0IG1heFJlbEVycm9yID0gLUluZmluaXR5
LCBtYXhSZWxFcnJvckluZGV4ID0gLTE7CisKKyAgICAgIGxldCBhY3R1YWwgPSB0aGlzLl9hY3R1
YWw7CisgICAgICBsZXQgZXhwZWN0ZWQgPSB0aGlzLl9leHBlY3RlZDsKKworICAgICAgZm9yIChs
ZXQgaW5kZXggPSAwOyBpbmRleCA8IGV4cGVjdGVkLmxlbmd0aDsgKytpbmRleCkgeworICAgICAg
ICBsZXQgZGlmZiA9IE1hdGguYWJzKGFjdHVhbFtpbmRleF0gLSBleHBlY3RlZFtpbmRleF0pOwor
ICAgICAgICBsZXQgYWJzRXhwZWN0ZWQgPSBNYXRoLmFicyhleHBlY3RlZFtpbmRleF0pOworICAg
ICAgICBsZXQgcmVsRXJyb3IgPSBkaWZmIC8gYWJzRXhwZWN0ZWQ7CisKKyAgICAgICAgaWYgKGRp
ZmYgPgorICAgICAgICAgICAgTWF0aC5tYXgoYWJzRXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhy
ZXNob2xkICogYWJzRXhwZWN0ZWQpKSB7CisgICAgICAgICAgaWYgKGRpZmYgPiBtYXhBYnNFcnJv
cikgeworICAgICAgICAgICAgbWF4QWJzRXJyb3JJbmRleCA9IGluZGV4OworICAgICAgICAgICAg
bWF4QWJzRXJyb3IgPSBkaWZmOworICAgICAgICAgIH0KKworICAgICAgICAgIGlmICghaXNOYU4o
cmVsRXJyb3IpICYmIHJlbEVycm9yID4gbWF4UmVsRXJyb3IpIHsKKyAgICAgICAgICAgIG1heFJl
bEVycm9ySW5kZXggPSBpbmRleDsKKyAgICAgICAgICAgIG1heFJlbEVycm9yID0gcmVsRXJyb3I7
CisgICAgICAgICAgfQorCisgICAgICAgICAgZXJyb3JzW2luZGV4XSA9IGRpZmY7CisgICAgICAg
IH0KKyAgICAgIH0KKworICAgICAgbGV0IG51bWJlck9mRXJyb3JzID0gT2JqZWN0LmtleXMoZXJy
b3JzKS5sZW5ndGg7CisgICAgICBsZXQgbWF4QWxsb3dlZEVycm9yRGV0YWlsID0gSlNPTi5zdHJp
bmdpZnkoeworICAgICAgICBhYnNvbHV0ZVRocmVzaG9sZDogYWJzRXJyb3JUaHJlc2hvbGQsCisg
ICAgICAgIHJlbGF0aXZlVGhyZXNob2xkOiByZWxFcnJvclRocmVzaG9sZAorICAgICAgfSk7CisK
KyAgICAgIGlmIChudW1iZXJPZkVycm9ycyA9PT0gMCkgeworICAgICAgICAvLyBUaGUgYXNzZXJ0
aW9uIHdhcyBzdWNjZXNzZnVsLgorICAgICAgICBwYXNzRGV0YWlsID0gJyR7YWN0dWFsfSBlcXVh
bHMgJHtleHBlY3RlZH0gd2l0aCBhbiBlbGVtZW50LXdpc2UgJyArCisgICAgICAgICAgICAndG9s
ZXJhbmNlIG9mICcgKyBtYXhBbGxvd2VkRXJyb3JEZXRhaWwgKyAnLic7CisgICAgICB9IGVsc2Ug
eworICAgICAgICAvLyBGYWlsZWQuIFByZXBhcmUgdGhlIGRldGFpbGVkIGZhaWx1cmUgbG9nLgor
ICAgICAgICBwYXNzZWQgPSBmYWxzZTsKKyAgICAgICAgZmFpbERldGFpbCA9ICcke2FjdHVhbH0g
ZG9lcyBub3QgZXF1YWwgJHtleHBlY3RlZH0gd2l0aCBhbiAnICsKKyAgICAgICAgICAgICdlbGVt
ZW50LXdpc2UgdG9sZXJhbmNlIG9mICcgKyBtYXhBbGxvd2VkRXJyb3JEZXRhaWwgKyAnLlxuJzsK
KworICAgICAgICAvLyBQcmludCBvdXQgYWN0dWFsLCBleHBlY3RlZCwgYWJzb2x1dGUgZXJyb3Is
IGFuZCByZWxhdGl2ZSBlcnJvci4KKyAgICAgICAgbGV0IGNvdW50ZXIgPSAwOworICAgICAgICBm
YWlsRGV0YWlsICs9ICdcdEluZGV4XHRBY3R1YWxcdFx0XHRFeHBlY3RlZFx0XHRBYnNFcnJvcicg
KworICAgICAgICAgICAgJ1x0XHRSZWxFcnJvclx0XHRUZXN0IHRocmVzaG9sZCc7CisgICAgICAg
IGxldCBwcmludGVkSW5kaWNlcyA9IFtdOworICAgICAgICBmb3IgKGxldCBpbmRleCBpbiBlcnJv
cnMpIHsKKyAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAgICAgICAgICAgICdcbicgKworICAg
ICAgICAgICAgICBfZm9ybWF0RmFpbHVyZUVudHJ5KAorICAgICAgICAgICAgICAgICAgaW5kZXgs
IGFjdHVhbFtpbmRleF0sIGV4cGVjdGVkW2luZGV4XSwgZXJyb3JzW2luZGV4XSwKKyAgICAgICAg
ICAgICAgICAgIF9jbG9zZVRvVGhyZXNob2xkKAorICAgICAgICAgICAgICAgICAgICAgIGFic0Vy
cm9yVGhyZXNob2xkLCByZWxFcnJvclRocmVzaG9sZCwgZXhwZWN0ZWRbaW5kZXhdKSk7CisKKyAg
ICAgICAgICBwcmludGVkSW5kaWNlcy5wdXNoKGluZGV4KTsKKyAgICAgICAgICBpZiAoKytjb3Vu
dGVyID4gdGhpcy5fb3B0aW9ucy5udW1iZXJPZkVycm9ycykgeworICAgICAgICAgICAgZmFpbERl
dGFpbCArPQorICAgICAgICAgICAgICAgICdcblx0Li4uYW5kICcgKyAobnVtYmVyT2ZFcnJvcnMg
LSBjb3VudGVyKSArICcgbW9yZSBlcnJvcnMuJzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8vIEZpbmFsaXplIHRoZSBlcnJvciBsb2c6IHBy
aW50IG91dCB0aGUgbG9jYXRpb24gb2YgYm90aCB0aGUgbWF4QWJzCisgICAgICAgIC8vIGVycm9y
IGFuZCB0aGUgbWF4UmVsIGVycm9yIHNvIHdlIGNhbiBhZGp1c3QgdGhyZXNob2xkcyBhcHByb3By
aWF0ZWx5CisgICAgICAgIC8vIGluIHRoZSB0ZXN0LgorICAgICAgICBmYWlsRGV0YWlsICs9ICdc
bicgKworICAgICAgICAgICAgJ1x0TWF4IEFic0Vycm9yIG9mICcgKyBtYXhBYnNFcnJvci50b0V4
cG9uZW50aWFsKDE2KSArCisgICAgICAgICAgICAnIGF0IGluZGV4IG9mICcgKyBtYXhBYnNFcnJv
ckluZGV4ICsgJy5cbic7CisgICAgICAgIGlmIChwcmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQg
PT4geworICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudCA9PSBtYXhBYnNFcnJvckluZGV4Owor
ICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5lZCkgeworICAgICAgICAgIC8vIFByaW50IGFuIGVu
dHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhhdmVuJ3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWls
RGV0YWlsICs9CisgICAgICAgICAgICAgIF9mb3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAg
ICAgICAgICBtYXhBYnNFcnJvckluZGV4LCBhY3R1YWxbbWF4QWJzRXJyb3JJbmRleF0sCisgICAg
ICAgICAgICAgICAgICBleHBlY3RlZFttYXhBYnNFcnJvckluZGV4XSwgZXJyb3JzW21heEFic0Vy
cm9ySW5kZXhdLAorICAgICAgICAgICAgICAgICAgX2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAg
ICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJlc2hvbGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAg
ICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkW21heEFic0Vycm9ySW5kZXhdKSkgKworICAgICAg
ICAgICAgICAnXG4nOworICAgICAgICB9CisgICAgICAgIGZhaWxEZXRhaWwgKz0gJ1x0TWF4IFJl
bEVycm9yIG9mICcgKyBtYXhSZWxFcnJvci50b0V4cG9uZW50aWFsKDE2KSArCisgICAgICAgICAg
ICAnIGF0IGluZGV4IG9mICcgKyBtYXhSZWxFcnJvckluZGV4ICsgJy5cbic7CisgICAgICAgIGlm
IChwcmludGVkSW5kaWNlcy5maW5kKGVsZW1lbnQgPT4geworICAgICAgICAgICAgICByZXR1cm4g
ZWxlbWVudCA9PSBtYXhSZWxFcnJvckluZGV4OworICAgICAgICAgICAgfSkgPT09IHVuZGVmaW5l
ZCkgeworICAgICAgICAgIC8vIFByaW50IGFuIGVudHJ5IGZvciB0aGlzIGluZGV4IGlmIHdlIGhh
dmVuJ3QgYWxyZWFkeS4KKyAgICAgICAgICBmYWlsRGV0YWlsICs9CisgICAgICAgICAgICAgIF9m
b3JtYXRGYWlsdXJlRW50cnkoCisgICAgICAgICAgICAgICAgICBtYXhSZWxFcnJvckluZGV4LCBh
Y3R1YWxbbWF4UmVsRXJyb3JJbmRleF0sCisgICAgICAgICAgICAgICAgICBleHBlY3RlZFttYXhS
ZWxFcnJvckluZGV4XSwgZXJyb3JzW21heFJlbEVycm9ySW5kZXhdLAorICAgICAgICAgICAgICAg
ICAgX2Nsb3NlVG9UaHJlc2hvbGQoCisgICAgICAgICAgICAgICAgICAgICAgYWJzRXJyb3JUaHJl
c2hvbGQsIHJlbEVycm9yVGhyZXNob2xkLAorICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVk
W21heFJlbEVycm9ySW5kZXhdKSkgKworICAgICAgICAgICAgICAnXG4nOworICAgICAgICB9Cisg
ICAgICB9CisKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQocGFzc2VkLCBwYXNzRGV0YWlsLCBm
YWlsRGV0YWlsKTsKKyAgICB9CisKKyAgICAvKioKKyAgICAgKiBBIHRlbXBvcmFyeSBlc2NhcGUg
aGF0IGZvciBwcmludGluZyBhbiBpbi10YXNrIG1lc3NhZ2UuIFRoZSBkZXNjcmlwdGlvbgorICAg
ICAqIGZvciB0aGUgfGFjdHVhbHwgaXMgcmVxdWlyZWQgdG8gZ2V0IHRoZSBtZXNzYWdlIHByaW50
ZWQgcHJvcGVybHkuCisgICAgICoKKyAgICAgKiBUT0RPKGhvbmdjaGFuKTogcmVtb3ZlIHRoaXMg
bWV0aG9kIHdoZW4gdGhlIHRyYW5zaXRpb24gZnJvbSB0aGUgb2xkIEF1ZGl0CisgICAgICogdG8g
dGhlIG5ldyBBdWRpdCBpcyBjb21wbGV0ZWQuCisgICAgICogQGV4YW1wbGUKKyAgICAgKiAgIHNo
b3VsZCh0cnVlLCAnVGhlIG1lc3NhZ2UgaXMnKS5tZXNzYWdlKCd0cnV0aGZ1bCEnLCAnZmFsc2Uh
Jyk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIFRoZSBtZXNzYWdl
IGlzIHRydXRoZnVsISIKKyAgICAgKi8KKyAgICBtZXNzYWdlKHBhc3NEZXRhaWwsIGZhaWxEZXRh
aWwpIHsKKyAgICAgIHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgdGhpcy5fYWN0dWFs
LCAnJHthY3R1YWx9ICcgKyBwYXNzRGV0YWlsLCAnJHthY3R1YWx9ICcgKyBmYWlsRGV0YWlsKTsK
KyAgICB9CisKKyAgICAvKioKKyAgICAgKiBDaGVjayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlz
IHRydWx5IG93bmVkIGJ5IHxhY3R1YWx8IG9iamVjdC4KKyAgICAgKgorICAgICAqIEBleGFtcGxl
CisgICAgICogICBzaG91bGQoQmFzZUF1ZGlvQ29udGV4dC5wcm90b3R5cGUsCisgICAgICogICAg
ICAgICAgJ0Jhc2VBdWRpb0NvbnRleHQucHJvdG90eXBlJykuaGF2ZU93blByb3BlcnR5KCdjcmVh
dGVHYWluJyk7CisgICAgICoKKyAgICAgKiBAcmVzdWx0CisgICAgICogICAiUEFTUyAgIEJhc2VB
dWRpb0NvbnRleHQucHJvdG90eXBlIGhhcyBhbiBvd24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAg
ICAnY3JlYXRlR2FpbicuIgorICAgICAqLworICAgIGhhdmVPd25Qcm9wZXJ0eSgpIHsKKyAgICAg
IHRoaXMuX3Byb2Nlc3NBcmd1bWVudHMoYXJndW1lbnRzKTsKKworICAgICAgcmV0dXJuIHRoaXMu
X2Fzc2VydCgKKyAgICAgICAgICB0aGlzLl9hY3R1YWwuaGFzT3duUHJvcGVydHkodGhpcy5fZXhw
ZWN0ZWQpLAorICAgICAgICAgICcke2FjdHVhbH0gaGFzIGFuIG93biBwcm9wZXJ0eSBvZiAiJHtl
eHBlY3RlZH0iLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIG5vdCBvd24gdGhlIHByb3Bl
cnR5IG9mICIke2V4cGVjdGVkfSIuJyk7CisgICAgfQorCisKKyAgICAvKioKKyAgICAgKiBDaGVj
ayBpZiB8ZXhwZWN0ZWR8IHByb3BlcnR5IGlzIG5vdCBvd25lZCBieSB8YWN0dWFsfCBvYmplY3Qu
CisgICAgICoKKyAgICAgKiBAZXhhbXBsZQorICAgICAqICAgc2hvdWxkKEJhc2VBdWRpb0NvbnRl
eHQucHJvdG90eXBlLAorICAgICAqICAgICAgICAgICdCYXNlQXVkaW9Db250ZXh0LnByb3RvdHlw
ZScpCisgICAgICogICAgICAgLm5vdEhhdmVPd25Qcm9wZXJ0eSgnc3RhcnRSZW5kZXJpbmcnKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQmFzZUF1ZGlvQ29udGV4
dC5wcm90b3R5cGUgZG9lcyBub3QgaGF2ZSBhbiBvd24gcHJvcGVydHkgb2YKKyAgICAgKiAgICAg
ICAnc3RhcnRSZW5kZXJpbmcnLiIKKyAgICAgKi8KKyAgICBub3RIYXZlT3duUHJvcGVydHkoKSB7
CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3VtZW50cyk7CisKKyAgICAgIHJldHVy
biB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgIXRoaXMuX2FjdHVhbC5oYXNPd25Qcm9wZXJ0eSh0
aGlzLl9leHBlY3RlZCksCisgICAgICAgICAgJyR7YWN0dWFsfSBkb2VzIG5vdCBoYXZlIGFuIG93
biBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLicsCisgICAgICAgICAgJyR7YWN0dWFsfSBoYXMg
YW4gb3duIHRoZSBwcm9wZXJ0eSBvZiAiJHtleHBlY3RlZH0iLicpCisgICAgfQorCisKKyAgICAv
KioKKyAgICAgKiBDaGVjayBpZiBhbiBvYmplY3QgaXMgaW5oZXJpdGVkIGZyb20gYSBjbGFzcy4g
VGhpcyBsb29rcyB1cCB0aGUgZW50aXJlCisgICAgICogcHJvdG90eXBlIGNoYWluIG9mIGEgZ2l2
ZW4gb2JqZWN0IGFuZCB0cmllcyB0byBmaW5kIGEgbWF0Y2guCisgICAgICoKKyAgICAgKiBAZXhh
bXBsZQorICAgICAqICAgc2hvdWxkKHNvdXJjZU5vZGUsICdBIGJ1ZmZlciBzb3VyY2Ugbm9kZScp
CisgICAgICogICAgICAgLmluaGVyaXRGcm9tKCdBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUnKTsK
KyAgICAgKgorICAgICAqIEByZXN1bHQKKyAgICAgKiAgICJQQVNTICAgQSBidWZmZXIgc291cmNl
IG5vZGUgaW5oZXJpdHMgZnJvbSAnQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlJy4iCisgICAgICov
CisgICAgaW5oZXJpdEZyb20oKSB7CisgICAgICB0aGlzLl9wcm9jZXNzQXJndW1lbnRzKGFyZ3Vt
ZW50cyk7CisKKyAgICAgIGxldCBwcm90b3R5cGVzID0gW107CisgICAgICBsZXQgY3VycmVudFBy
b3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzLl9hY3R1YWwpOworICAgICAgd2hp
bGUgKGN1cnJlbnRQcm90b3R5cGUpIHsKKyAgICAgICAgcHJvdG90eXBlcy5wdXNoKGN1cnJlbnRQ
cm90b3R5cGUuY29uc3RydWN0b3IubmFtZSk7CisgICAgICAgIGN1cnJlbnRQcm90b3R5cGUgPSBP
YmplY3QuZ2V0UHJvdG90eXBlT2YoY3VycmVudFByb3RvdHlwZSk7CisgICAgICB9CisKKyAgICAg
IHJldHVybiB0aGlzLl9hc3NlcnQoCisgICAgICAgICAgcHJvdG90eXBlcy5pbmNsdWRlcyh0aGlz
Ll9leHBlY3RlZCksCisgICAgICAgICAgJyR7YWN0dWFsfSBpbmhlcml0cyBmcm9tICIke2V4cGVj
dGVkfSIuJywKKyAgICAgICAgICAnJHthY3R1YWx9IGRvZXMgbm90IGluaGVyaXQgZnJvbSAiJHtl
eHBlY3RlZH0iLicpOworICAgIH0KKyAgfQorCisKKyAgLy8gVGFzayBDbGFzcyBzdGF0ZSBlbnVt
LgorICBjb25zdCBUYXNrU3RhdGUgPSB7UEVORElORzogMCwgU1RBUlRFRDogMSwgRklOSVNIRUQ6
IDJ9OworCisKKyAgLyoqCisgICAqIEBjbGFzcyBUYXNrCisgICAqIEBkZXNjcmlwdGlvbiBXZWJB
dWRpbyB0ZXN0aW5nIHRhc2suIE1hbmFnZWQgYnkgVGFza1J1bm5lci4KKyAgICovCisgIGNsYXNz
IFRhc2sgeworICAgIC8qKgorICAgICAqIFRhc2sgY29uc3RydWN0b3IuCisgICAgICogQHBhcmFt
ICB7T2JqZWN0fSB0YXNrUnVubmVyIFJlZmVyZW5jZSBvZiBhc3NvY2lhdGVkIHRhc2sgcnVubmVy
LgorICAgICAqIEBwYXJhbSAge1N0cmluZ3x8T2JqZWN0fSB0YXNrTGFiZWwgVGFzayBsYWJlbCBp
ZiBhIHN0cmluZyBpcyBnaXZlbi4gVGhpcworICAgICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcGFyYW1ldGVyIGNhbiBiZSBhIGRpY3Rpb25hcnkgd2l0aCB0aGUKKyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbGxvd2luZyBmaWVsZHMuCisg
ICAgICogQHBhcmFtICB7U3RyaW5nfSB0YXNrTGFiZWwubGFiZWwgVGFzayBsYWJlbC4KKyAgICAg
KiBAcGFyYW0gIHtTdHJpbmd9IHRhc2tMYWJlbC5kZXNjcmlwdGlvbiBEZXNjcmlwdGlvbiBvZiB0
YXNrLgorICAgICAqIEBwYXJhbSAge0Z1bmN0aW9ufSB0YXNrRnVuY3Rpb24gVGFzayBmdW5jdGlv
biB0byBiZSBwZXJmb3JtZWQuCisgICAgICogQHJldHVybiB7T2JqZWN0fSBUYXNrIG9iamVjdC4K
KyAgICAgKi8KKyAgICBjb25zdHJ1Y3Rvcih0YXNrUnVubmVyLCB0YXNrTGFiZWwsIHRhc2tGdW5j
dGlvbikgeworICAgICAgdGhpcy5fdGFza1J1bm5lciA9IHRhc2tSdW5uZXI7CisgICAgICB0aGlz
Ll90YXNrRnVuY3Rpb24gPSB0YXNrRnVuY3Rpb247CisKKyAgICAgIGlmICh0eXBlb2YgdGFza0xh
YmVsID09PSAnc3RyaW5nJykgeworICAgICAgICB0aGlzLl9sYWJlbCA9IHRhc2tMYWJlbDsKKyAg
ICAgICAgdGhpcy5fZGVzY3JpcHRpb24gPSBudWxsOworICAgICAgfSBlbHNlIGlmICh0eXBlb2Yg
dGFza0xhYmVsID09PSAnb2JqZWN0JykgeworICAgICAgICBpZiAodHlwZW9mIHRhc2tMYWJlbC5s
YWJlbCAhPT0gJ3N0cmluZycpIHsKKyAgICAgICAgICBfdGhyb3dFeGNlcHRpb24oJ1Rhc2suY29u
c3RydWN0b3I6OiB0YXNrIGxhYmVsIG11c3QgYmUgc3RyaW5nLicpOworICAgICAgICB9CisgICAg
ICAgIHRoaXMuX2xhYmVsID0gdGFza0xhYmVsLmxhYmVsOworICAgICAgICB0aGlzLl9kZXNjcmlw
dGlvbiA9ICh0eXBlb2YgdGFza0xhYmVsLmRlc2NyaXB0aW9uID09PSAnc3RyaW5nJykgPworICAg
ICAgICAgICAgdGFza0xhYmVsLmRlc2NyaXB0aW9uIDoKKyAgICAgICAgICAgIG51bGw7CisgICAg
ICB9IGVsc2UgeworICAgICAgICBfdGhyb3dFeGNlcHRpb24oCisgICAgICAgICAgICAnVGFzay5j
b25zdHJ1Y3Rvcjo6IHRhc2sgbGFiZWwgbXVzdCBiZSBhIHN0cmluZyBvciAnICsKKyAgICAgICAg
ICAgICdhIGRpY3Rpb25hcnkuJyk7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFz
a1N0YXRlLlBFTkRJTkc7CisgICAgICB0aGlzLl9yZXN1bHQgPSB0cnVlOworCisgICAgICB0aGlz
Ll90b3RhbEFzc2VydGlvbnMgPSAwOworICAgICAgdGhpcy5fZmFpbGVkQXNzZXJ0aW9ucyA9IDA7
CisgICAgfQorCisgICAgZ2V0IGxhYmVsKCkgeworICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsOwor
ICAgIH0KKworICAgIGdldCBzdGF0ZSgpIHsKKyAgICAgIHJldHVybiB0aGlzLl9zdGF0ZTsKKyAg
ICB9CisKKyAgICBnZXQgcmVzdWx0KCkgeworICAgICAgcmV0dXJuIHRoaXMuX3Jlc3VsdDsKKyAg
ICB9CisKKyAgICAvLyBTdGFydCB0aGUgYXNzZXJ0aW9uIGNoYWluLgorICAgIHNob3VsZChhY3R1
YWwsIGFjdHVhbERlc2NyaXB0aW9uKSB7CisgICAgICAvLyBJZiBubyBhcmd1bWVudCBpcyBnaXZl
biwgd2UgY2Fubm90IHByb2NlZWQuIEhhbHQuCisgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9
PT0gMCkKKyAgICAgICAgX3Rocm93RXhjZXB0aW9uKCdUYXNrLnNob3VsZDo6IHJlcXVpcmVzIGF0
IGxlYXN0IDEgYXJndW1lbnQuJyk7CisKKyAgICAgIHJldHVybiBuZXcgU2hvdWxkKHRoaXMsIGFj
dHVhbCwgYWN0dWFsRGVzY3JpcHRpb24pOworICAgIH0KKworICAgIC8vIFJ1biB0aGlzIHRhc2su
IHx0aGlzfCB0YXNrIHdpbGwgYmUgcGFzc2VkIGludG8gdGhlIHVzZXItc3VwcGxpZWQgdGVzdAor
ICAgIC8vIHRhc2sgZnVuY3Rpb24uCisgICAgcnVuKGhhcm5lc3NUZXN0KSB7CisgICAgICB0aGlz
Ll9zdGF0ZSA9IFRhc2tTdGF0ZS5TVEFSVEVEOworICAgICAgdGhpcy5faGFybmVzc1Rlc3QgPSBo
YXJuZXNzVGVzdDsKKyAgICAgIC8vIFByaW50IG91dCB0aGUgdGFzayBlbnRyeSB3aXRoIGxhYmVs
IGFuZCBkZXNjcmlwdGlvbi4KKyAgICAgIF9sb2dQYXNzZWQoCisgICAgICAgICAgJz4gWycgKyB0
aGlzLl9sYWJlbCArICddICcgKworICAgICAgICAgICh0aGlzLl9kZXNjcmlwdGlvbiA/IHRoaXMu
X2Rlc2NyaXB0aW9uIDogJycpKTsKKworICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZl
LCByZWplY3QpID0+IHsKKyAgICAgICAgdGhpcy5fcmVzb2x2ZSA9IHJlc29sdmU7CisgICAgICAg
IHRoaXMuX3JlamVjdCA9IHJlamVjdDsKKyAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMuX3Rhc2tG
dW5jdGlvbih0aGlzLCB0aGlzLnNob3VsZC5iaW5kKHRoaXMpKTsKKyAgICAgICAgaWYgKHJlc3Vs
dCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJmdW5jdGlvbiIpIHsKKyAgICAgICAgICByZXN1
bHQudGhlbigoKSA9PiB0aGlzLmRvbmUoKSkuY2F0Y2gocmVqZWN0KTsKKyAgICAgICAgfQorICAg
ICAgfSk7CisgICAgfQorCisgICAgLy8gVXBkYXRlIHRoZSB0YXNrIHN1Y2Nlc3MgYmFzZWQgb24g
dGhlIGluZGl2aWR1YWwgYXNzZXJ0aW9uL3Rlc3QgaW5zaWRlLgorICAgIHVwZGF0ZShzdWJUYXNr
KSB7CisgICAgICAvLyBBZnRlciBvbmUgb2YgdGVzdHMgZmFpbHMgd2l0aGluIGEgdGFzaywgdGhl
IHJlc3VsdCBpcyBpcnJldmVyc2libGUuCisgICAgICBpZiAoc3ViVGFzay5yZXN1bHQgPT09IGZh
bHNlKSB7CisgICAgICAgIHRoaXMuX3Jlc3VsdCA9IGZhbHNlOworICAgICAgICB0aGlzLl9mYWls
ZWRBc3NlcnRpb25zKys7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3RvdGFsQXNzZXJ0aW9ucysr
OworICAgIH0KKworICAgIC8vIEZpbmlzaCB0aGUgY3VycmVudCB0YXNrIGFuZCBzdGFydCB0aGUg
bmV4dCBvbmUgaWYgYXZhaWxhYmxlLgorICAgIGRvbmUoKSB7CisgICAgICBhc3NlcnRfZXF1YWxz
KHRoaXMuX3N0YXRlLCBUYXNrU3RhdGUuU1RBUlRFRCkKKyAgICAgIHRoaXMuX3N0YXRlID0gVGFz
a1N0YXRlLkZJTklTSEVEOworCisgICAgICBsZXQgbWVzc2FnZSA9ICc8IFsnICsgdGhpcy5fbGFi
ZWwgKyAnXSAnOworCisgICAgICBpZiAodGhpcy5fcmVzdWx0KSB7CisgICAgICAgIG1lc3NhZ2Ug
Kz0gJ0FsbCBhc3NlcnRpb25zIHBhc3NlZC4gKHRvdGFsICcgKyB0aGlzLl90b3RhbEFzc2VydGlv
bnMgKworICAgICAgICAgICAgJyBhc3NlcnRpb25zKSc7CisgICAgICAgIF9sb2dQYXNzZWQobWVz
c2FnZSk7CisgICAgICB9IGVsc2UgeworICAgICAgICBtZXNzYWdlICs9IHRoaXMuX2ZhaWxlZEFz
c2VydGlvbnMgKyAnIG91dCBvZiAnICsgdGhpcy5fdG90YWxBc3NlcnRpb25zICsKKyAgICAgICAg
ICAgICcgYXNzZXJ0aW9ucyB3ZXJlIGZhaWxlZC4nCisgICAgICAgIF9sb2dGYWlsZWQobWVzc2Fn
ZSk7CisgICAgICB9CisKKyAgICAgIHRoaXMuX3Jlc29sdmUoKTsKKyAgICB9CisKKyAgICAvLyBS
dW5zIHxzdWJUYXNrfCB8dGltZXwgbWlsbGlzZWNvbmRzIGxhdGVyLiB8c2V0VGltZW91dHwgaXMg
bm90IGFsbG93ZWQgaW4KKyAgICAvLyBXUFQgbGludGVyLCBzbyBhIHRoaW4gd3JhcHBlciBhcm91
bmQgdGhlIGhhcm5lc3MncyB8c3RlcF90aW1lb3V0fCBpcworICAgIC8vIHVzZWQgaGVyZS4gIFJl
dHVybnMgYSBQcm9taXNlIHdoaWNoIGlzIHJlc29sdmVkIGFmdGVyIHxzdWJUYXNrfCBydW5zLgor
ICAgIHRpbWVvdXQoc3ViVGFzaywgdGltZSkgeworICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJl
c29sdmUgPT4geworICAgICAgICB0aGlzLl9oYXJuZXNzVGVzdC5zdGVwX3RpbWVvdXQoKCkgPT4g
eworICAgICAgICAgIGxldCByZXN1bHQgPSBzdWJUYXNrKCk7CisgICAgICAgICAgaWYgKHJlc3Vs
dCAmJiB0eXBlb2YgcmVzdWx0LnRoZW4gPT09ICJmdW5jdGlvbiIpIHsKKyAgICAgICAgICAgIC8v
IENoYWluIHJlamVjdGlvbiBkaXJlY3RseSB0byB0aGUgaGFybmVzcyB0ZXN0IFByb21pc2UsIHRv
IHJlcG9ydAorICAgICAgICAgICAgLy8gdGhlIHJlamVjdGlvbiBhZ2FpbnN0IHRoZSBzdWJ0ZXN0
IGV2ZW4gd2hlbiB0aGUgY2FsbGVyIG9mCisgICAgICAgICAgICAvLyB0aW1lb3V0IGRvZXMgbm90
IGhhbmRsZSB0aGUgcmVqZWN0aW9uLgorICAgICAgICAgICAgcmVzdWx0LnRoZW4ocmVzb2x2ZSwg
dGhpcy5fcmVqZWN0KCkpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXNvbHZl
KCk7CisgICAgICAgICAgfQorICAgICAgICB9LCB0aW1lKTsKKyAgICAgIH0pOworICAgIH0KKwor
ICAgIGlzUGFzc2VkKCkgeworICAgICAgcmV0dXJuIHRoaXMuX3N0YXRlID09PSBUYXNrU3RhdGUu
RklOSVNIRUQgJiYgdGhpcy5fcmVzdWx0OworICAgIH0KKworICAgIHRvU3RyaW5nKCkgeworICAg
ICAgcmV0dXJuICciJyArIHRoaXMuX2xhYmVsICsgJyI6ICcgKyB0aGlzLl9kZXNjcmlwdGlvbjsK
KyAgICB9CisgIH0KKworCisgIC8qKgorICAgKiBAY2xhc3MgVGFza1J1bm5lcgorICAgKiBAZGVz
Y3JpcHRpb24gV2ViQXVkaW8gdGVzdGluZyB0YXNrIHJ1bm5lci4gTWFuYWdlcyB0YXNrcy4KKyAg
ICovCisgIGNsYXNzIFRhc2tSdW5uZXIgeworICAgIGNvbnN0cnVjdG9yKCkgeworICAgICAgdGhp
cy5fdGFza3MgPSB7fTsKKyAgICAgIHRoaXMuX3Rhc2tTZXF1ZW5jZSA9IFtdOworCisgICAgICAv
LyBDb25maWd1cmUgdGVzdGhhcm5lc3MuanMgZm9yIHRoZSBhc3luYyBvcGVyYXRpb24uCisgICAg
ICBzZXR1cChuZXcgRnVuY3Rpb24oKSwge2V4cGxpY2l0X2RvbmU6IHRydWV9KTsKKyAgICB9CisK
KyAgICBfZmluaXNoKCkgeworICAgICAgbGV0IG51bWJlck9mRmFpbHVyZXMgPSAwOworICAgICAg
Zm9yIChsZXQgdGFza0luZGV4IGluIHRoaXMuX3Rhc2tTZXF1ZW5jZSkgeworICAgICAgICBsZXQg
dGFzayA9IHRoaXMuX3Rhc2tzW3RoaXMuX3Rhc2tTZXF1ZW5jZVt0YXNrSW5kZXhdXTsKKyAgICAg
ICAgbnVtYmVyT2ZGYWlsdXJlcyArPSB0YXNrLnJlc3VsdCA/IDAgOiAxOworICAgICAgfQorCisg
ICAgICBsZXQgcHJlZml4ID0gJyMgQVVESVQgVEFTSyBSVU5ORVIgRklOSVNIRUQ6ICc7CisgICAg
ICBpZiAobnVtYmVyT2ZGYWlsdXJlcyA+IDApIHsKKyAgICAgICAgX2xvZ0ZhaWxlZCgKKyAgICAg
ICAgICAgIHByZWZpeCArIG51bWJlck9mRmFpbHVyZXMgKyAnIG91dCBvZiAnICsgdGhpcy5fdGFz
a1NlcXVlbmNlLmxlbmd0aCArCisgICAgICAgICAgICAnIHRhc2tzIHdlcmUgZmFpbGVkLicpOwor
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgX2xvZ1Bhc3NlZCgKKyAgICAgICAgICAgIHByZWZpeCAr
IHRoaXMuX3Rhc2tTZXF1ZW5jZS5sZW5ndGggKyAnIHRhc2tzIHJhbiBzdWNjZXNzZnVsbHkuJyk7
CisgICAgICB9CisKKyAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTsKKyAgICB9CisKKyAg
ICAvLyB8dGFza0xhYmVsfCBjYW4gYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGEgZGljdGlvbmFyeS4g
U2VlIFRhc2sgY29uc3RydWN0b3IKKyAgICAvLyBmb3IgdGhlIGRldGFpbC4gIElmIHx0YXNrRnVu
Y3Rpb258IHJldHVybnMgYSB0aGVuYWJsZSwgdGhlbiB0aGUgdGFzaworICAgIC8vIGlzIGNvbnNp
ZGVyZWQgY29tcGxldGUgd2hlbiB0aGUgdGhlbmFibGUgaXMgZnVsZmlsbGVkOyBvdGhlcndpc2Ug
dGhlCisgICAgLy8gdGFzayBtdXN0IGJlIGNvbXBsZXRlZCB3aXRoIGFuIGV4cGxpY2l0IGNhbGwg
dG8gfHRhc2suZG9uZSgpfC4KKyAgICBkZWZpbmUodGFza0xhYmVsLCB0YXNrRnVuY3Rpb24pIHsK
KyAgICAgIGxldCB0YXNrID0gbmV3IFRhc2sodGhpcywgdGFza0xhYmVsLCB0YXNrRnVuY3Rpb24p
OworICAgICAgaWYgKHRoaXMuX3Rhc2tzLmhhc093blByb3BlcnR5KHRhc2subGFiZWwpKSB7Cisg
ICAgICAgIF90aHJvd0V4Y2VwdGlvbignQXVkaXQuZGVmaW5lOjogRHVwbGljYXRlIHRhc2sgZGVm
aW5pdGlvbi4nKTsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQorICAgICAgdGhpcy5fdGFza3Nb
dGFzay5sYWJlbF0gPSB0YXNrOworICAgICAgdGhpcy5fdGFza1NlcXVlbmNlLnB1c2godGFzay5s
YWJlbCk7CisgICAgfQorCisgICAgLy8gU3RhcnQgcnVubmluZyBhbGwgdGhlIHRhc2tzIHNjaGVk
dWxlZC4gTXVsdGlwbGUgdGFzayBuYW1lcyBjYW4gYmUgcGFzc2VkCisgICAgLy8gdG8gZXhlY3V0
ZSB0aGVtIHNlcXVlbnRpYWxseS4gWmVybyBhcmd1bWVudCB3aWxsIHBlcmZvcm0gYWxsIGRlZmlu
ZWQKKyAgICAvLyB0YXNrcyBpbiB0aGUgb3JkZXIgb2YgZGVmaW5pdGlvbi4KKyAgICBydW4oKSB7
CisgICAgICAvLyBEaXNwbGF5IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRlc3Qgc3VpdGUuCisgICAg
ICBfbG9nUGFzc2VkKCcjIEFVRElUIFRBU0sgUlVOTkVSIFNUQVJURUQuJyk7CisKKyAgICAgIC8v
IElmIHRoZSBhcmd1bWVudCBpcyBzcGVjaWZpZWQsIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHRhc2sg
c2VxdWVuY2Ugd2l0aAorICAgICAgLy8gdGhlIHNwZWNpZmllZCBvbmUuCisgICAgICBpZiAoYXJn
dW1lbnRzLmxlbmd0aCA+IDApIHsKKyAgICAgICAgdGhpcy5fdGFza1NlcXVlbmNlID0gW107Cisg
ICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7CisgICAg
ICAgICAgbGV0IHRhc2tMYWJlbCA9IGFyZ3VtZW50c1tpXTsKKyAgICAgICAgICBpZiAoIXRoaXMu
X3Rhc2tzLmhhc093blByb3BlcnR5KHRhc2tMYWJlbCkpIHsKKyAgICAgICAgICAgIF90aHJvd0V4
Y2VwdGlvbignQXVkaXQucnVuOjogdW5kZWZpbmVkIHRhc2suJyk7CisgICAgICAgICAgfSBlbHNl
IGlmICh0aGlzLl90YXNrU2VxdWVuY2UuaW5jbHVkZXModGFza0xhYmVsKSkgeworICAgICAgICAg
ICAgX3Rocm93RXhjZXB0aW9uKCdBdWRpdC5ydW46OiBkdXBsaWNhdGUgdGFzayByZXF1ZXN0Licp
OworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB0aGlzLl90YXNrU2VxdWVuY2UucHVz
aCh0YXNrTGFiZWwpOworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfQorCisgICAgICBp
ZiAodGhpcy5fdGFza1NlcXVlbmNlLmxlbmd0aCA9PT0gMCkgeworICAgICAgICBfdGhyb3dFeGNl
cHRpb24oJ0F1ZGl0LnJ1bjo6IG5vIHRhc2sgdG8gcnVuLicpOworICAgICAgICByZXR1cm47Cisg
ICAgICB9CisKKyAgICAgIGZvciAobGV0IHRhc2tJbmRleCBpbiB0aGlzLl90YXNrU2VxdWVuY2Up
IHsKKyAgICAgICAgbGV0IHRhc2sgPSB0aGlzLl90YXNrc1t0aGlzLl90YXNrU2VxdWVuY2VbdGFz
a0luZGV4XV07CisgICAgICAgIC8vIFNvbWUgdGVzdHMgYXNzdW1lIHRoYXQgdGFza3MgcnVuIGlu
IHNlcXVlbmNlLCB3aGljaCBpcyBwcm92aWRlZCBieQorICAgICAgICAvLyBwcm9taXNlX3Rlc3Qo
KS4KKyAgICAgICAgcHJvbWlzZV90ZXN0KCh0KSA9PiB0YXNrLnJ1bih0KSwgYEV4ZWN1dGluZyAi
JHt0YXNrLmxhYmVsfSJgKTsKKyAgICAgIH0KKworICAgICAgLy8gU2NoZWR1bGUgYSBzdW1tYXJ5
IHJlcG9ydCBvbiBjb21wbGV0aW9uLgorICAgICAgcHJvbWlzZV90ZXN0KCgpID0+IHRoaXMuX2Zp
bmlzaCgpLCAiQXVkaXQgcmVwb3J0Iik7CisKKyAgICAgIC8vIEZyb20gdGVzdGhhcm5lc3MuanMu
IFRoZSBoYXJuZXNzIG5vdyBuZWVkIG5vdCB3YWl0IGZvciBtb3JlIHN1YnRlc3RzCisgICAgICAv
LyB0byBiZSBhZGRlZC4KKyAgICAgIF90ZXN0aGFybmVzc0RvbmUoKTsKKyAgICB9CisgIH0KKwor
ICAvKioKKyAgICogTG9hZCBmaWxlIGZyb20gYSBnaXZlbiBVUkwgYW5kIHBhc3MgQXJyYXlCdWZm
ZXIgdG8gdGhlIGZvbGxvd2luZyBwcm9taXNlLgorICAgKiBAcGFyYW0gIHtTdHJpbmd9IGZpbGVV
cmwgZmlsZSBVUkwuCisgICAqIEByZXR1cm4ge1Byb21pc2V9CisgICAqCisgICAqIEBleGFtcGxl
CisgICAqICAgQXVkaXQubG9hZEZpbGVGcm9tVXJsKCdyZXNvdXJjZXMvbXktc291bmQub2dnJyku
dGhlbigocmVzcG9uc2UpID0+IHsKKyAgICogICAgICAgYXVkaW9Db250ZXh0LmRlY29kZUF1ZGlv
RGF0YShyZXNwb25zZSkudGhlbigoYXVkaW9CdWZmZXIpID0+IHsKKyAgICogICAgICAgICAgIC8v
IERvIHNvbWV0aGluZyB3aXRoIEF1ZGlvQnVmZmVyLgorICAgKiAgICAgICB9KTsKKyAgICogICB9
KTsKKyAgICovCisgIGZ1bmN0aW9uIGxvYWRGaWxlRnJvbVVybChmaWxlVXJsKSB7CisgICAgcmV0
dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgIGxldCB4aHIgPSBu
ZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgICAgIHhoci5vcGVuKCdHRVQnLCBmaWxlVXJsLCB0cnVl
KTsKKyAgICAgIHhoci5yZXNwb25zZVR5cGUgPSAnYXJyYXlidWZmZXInOworCisgICAgICB4aHIu
b25sb2FkID0gKCkgPT4geworICAgICAgICAvLyB8c3RhdHVzID0gMHwgaXMgYSB3b3JrYXJvdW5k
IGZvciB0aGUgcnVuX3dlYl90ZXN0LnB5IHNlcnZlci4gV2UgYXJlCisgICAgICAgIC8vIHNwZWN1
bGF0aW5nIHRoZSBzZXJ2ZXIgcXVpdHMgdGhlIHRyYW5zYWN0aW9uIHByZW1hdHVyZWx5IHdpdGhv
dXQKKyAgICAgICAgLy8gY29tcGxldGluZyB0aGUgcmVxdWVzdC4KKyAgICAgICAgaWYgKHhoci5z
dGF0dXMgPT09IDIwMCB8fCB4aHIuc3RhdHVzID09PSAwKSB7CisgICAgICAgICAgcmVzb2x2ZSh4
aHIucmVzcG9uc2UpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGxldCBlcnJvck1lc3Nh
Z2UgPSAnbG9hZEZpbGU6IFJlcXVlc3QgZmFpbGVkIHdoZW4gbG9hZGluZyAnICsKKyAgICAgICAg
ICAgICAgZmlsZVVybCArICcuICcgKyB4aHIuc3RhdHVzVGV4dCArICcuIChzdGF0dXMgPSAnICsg
eGhyLnN0YXR1cyArCisgICAgICAgICAgICAgICcpJzsKKyAgICAgICAgICBpZiAocmVqZWN0KSB7
CisgICAgICAgICAgICByZWplY3QoZXJyb3JNZXNzYWdlKTsKKyAgICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgbmV3IEVycm9yKGVycm9yTWVzc2FnZSk7CisgICAgICAgICAgfQorICAgICAg
ICB9CisgICAgICB9OworCisgICAgICB4aHIub25lcnJvciA9IChldmVudCkgPT4geworICAgICAg
ICBsZXQgZXJyb3JNZXNzYWdlID0KKyAgICAgICAgICAgICdsb2FkRmlsZTogTmV0d29yayBmYWls
dXJlIHdoZW4gbG9hZGluZyAnICsgZmlsZVVybCArICcuJzsKKyAgICAgICAgaWYgKHJlamVjdCkg
eworICAgICAgICAgIHJlamVjdChlcnJvck1lc3NhZ2UpOworICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgIG5ldyBFcnJvcihlcnJvck1lc3NhZ2UpOworICAgICAgICB9CisgICAgICB9OworCisg
ICAgICB4aHIuc2VuZCgpOworICAgIH0pOworICB9CisKKyAgLyoqCisgICAqIEBjbGFzcyBBdWRp
dAorICAgKiBAZGVzY3JpcHRpb24gQSBXZWJBdWRpbyBsYXlvdXQgdGVzdCB0YXNrIG1hbmFnZXIu
CisgICAqIEBleGFtcGxlCisgICAqICAgbGV0IGF1ZGl0ID0gQXVkaXQuY3JlYXRlVGFza1J1bm5l
cigpOworICAgKiAgIGF1ZGl0LmRlZmluZSgnZmlyc3QtdGFzaycsIGZ1bmN0aW9uICh0YXNrLCBz
aG91bGQpIHsKKyAgICogICAgIHNob3VsZChzb21lVmFsdWUpLmJlRXF1YWxUbyhzb21lVmFsdWUp
OworICAgKiAgICAgdGFzay5kb25lKCk7CisgICAqICAgfSk7CisgICAqICAgYXVkaXQucnVuKCk7
CisgICAqLworICByZXR1cm4geworCisgICAgLyoqCisgICAgICogQ3JlYXRlcyBhbiBpbnN0YW5j
ZSBvZiBBdWRpdCB0YXNrIHJ1bm5lci4KKyAgICAgKiBAcGFyYW0ge09iamVjdH0gIG9wdGlvbnMg
ICAgICAgICAgICAgICAgICAgICBPcHRpb25zIGZvciB0YXNrIHJ1bm5lci4KKyAgICAgKiBAcGFy
YW0ge0Jvb2xlYW59IG9wdGlvbnMucmVxdWlyZVJlc3VsdEZpbGUgICBUcnVlIGlmIHRoZSB0ZXN0
IHN1aXRlCisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcmVxdWlyZXMgZXhwbGljaXQgdGV4dAorICAgICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbXBhcmlzb24gd2l0aCB0aGUgZXhwZWN0ZWQKKyAgICAg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQgZmls
ZS4KKyAgICAgKi8KKyAgICBjcmVhdGVUYXNrUnVubmVyOiBmdW5jdGlvbihvcHRpb25zKSB7Cisg
ICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnJlcXVpcmVSZXN1bHRGaWxlID09IHRydWUpIHsK
KyAgICAgICAgX2xvZ0Vycm9yKAorICAgICAgICAgICAgJ3RoaXMgdGVzdCByZXF1aXJlcyB0aGUg
ZXhwbGljaXQgY29tcGFyaXNvbiB3aXRoIHRoZSAnICsKKyAgICAgICAgICAgICdleHBlY3RlZCBy
ZXN1bHQgd2hlbiBpdCBydW5zIHdpdGggcnVuX3dlYl90ZXN0cy5weS4nKTsKKyAgICAgIH0KKwor
ICAgICAgcmV0dXJuIG5ldyBUYXNrUnVubmVyKCk7CisgICAgfSwKKworICAgIC8qKgorICAgICAq
IExvYWQgZmlsZSBmcm9tIGEgZ2l2ZW4gVVJMIGFuZCBwYXNzIEFycmF5QnVmZmVyIHRvIHRoZSBm
b2xsb3dpbmcgcHJvbWlzZS4KKyAgICAgKiBTZWUgfGxvYWRGaWxlRnJvbVVybHwgbWV0aG9kIGZv
ciB0aGUgZGV0YWlsLgorICAgICAqLworICAgIGxvYWRGaWxlRnJvbVVybDogbG9hZEZpbGVGcm9t
VXJsCisKKyAgfTsKKworfSkoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>